Mulval扩展规则(抗取证数据库)

A LOGIC-BASED NETWORK FORENSIC MODEL FOR EVIDENCE ANALYSIS


下面以一个攻击网络为例,进行分析,攻击网络结构图如下:
在这里插入图片描述
系统内设备的IP和漏洞如下表所示:
在这里插入图片描述
从表中不难看出,攻击者存在三种攻击:利用漏洞CVE-2009-1918访问数据库;通过sql注入攻击(CWE89);XSS跨站脚本攻击。

在这一网络中,安装了入侵检测系统,能够检测一些恶意访问,但是由于snort工具的规则可能不是那么完备,对于某些攻击可能无法检测到,如:
1.未检测到攻击者发送给客户的要求更新客户机密信息的钓鱼url
2.攻击者首先攻破workstation,再利用workstation做跳板,攻击数据库,这种行为在入侵检测系统看来是无害的。攻击者能利用workstation,并且获得根权限,这使得攻击者可以使用反取证技术删除在workstation留下的痕迹

入侵检测系统得到的日志如下图所示:
在这里插入图片描述
对照前面的表,从入侵检测系统的日志中能看出攻击者利用漏洞CVE-2009-1918攻击了workstation;使用跨站脚本攻击XSS攻击Administrator设备;攻击者先攻占webserver2,再通过webserver2向database发动sql注入攻击(CWE89)

利用上述漏洞和设备间的访问关系,可以通过mulval得到该系统的攻击图为:
在这里插入图片描述
图中节点信息如下:

1:execCode(admin,apache)
2:RULE 2 (remote exploit of a server program)
3:netAccess(admin,tcp,80) 
4:RULE 7 (direct network access)
5:hacl(internet,admin,tcp) 
6:attackerLocated(internet) 
7:networkServiceInfo(admin,httpd,tcp,80,apache)
8:vulExists(admin,‘XSS’,httpd,remoteExploit,privEscalation)
9:execCode(workStation1,apache) 
10:RULE 2 (remote exploit of a server program)
11:netAccess(workStation1,tcp,80) 
12:RULE 7 (direct network access)
13:hacl(internet,workStation1,tcp,80)
14:networkServiceInfo(workStation1,httpd,tcp,80,apache)
15:vulExists(workStation1,‘CVE-2009-1918,httpd, remoteExploit,privEscalation)
16:execCode(workStation2,apache) 
17:RULE 2 (remote exploit of a  server program)
18:netAccess(workStation2,tcp,80)
19:RULE 7 (direct network access) 
20:hacl(internet,workStation2,tcp,80)
21:networkServiceInfo(workStation2, httpd,tcp,80,apache)22:vulExists(workStation2,CVE-2009-1918,httpd, remoteExploit,privEscalation)
23:netAccess(dbServer,tcp,3660) 
24: RULE 6 (multi-hop access)
25:hacl(webServer,dbServer,tcp,3660) 
26:execCode(webServer,apache)
27:RULE 2 (remote exploit of a server program)
28:netAccess(webServer,tcp,80) 
29:RULE 7 (direct network access) 
30:hacl(internet,webServer,tcp,80)
31:networkServiceInfo(webServer, httpd,tcp,80,apache) 
32:vulExists(webServer,‘CWE89’, httpd,remoteExploit,privEscalation)

攻击者存在三种攻击方式,最终得到四条攻击路径:
1.攻击者使用跨站点脚本攻击窃取管理员的会话ID并获得管理员的特权,攻击路径为6→4→3→2→1
2.攻击者使用SQL注入攻击(CWE89)。攻击路径为6→29→28→27→26→24→23
3.攻击者使用缓冲区溢出的漏洞CVE-2009-1918。攻击路径为
6→12→11→10→9 和 6→19→18→17→16

对于实现数据库的execcode(dbserver,user),有三种方法:使用跳板机,通过跳板机访问数据库;利用数据库软件的漏洞;通过sql注入获取身份,能合法访问数据库。
从rule节点无法看出是哪一种攻击方式,因此拓展mulval规则,定义了谓词:anti Forensics(Category,Tool, Technique, Windows,Linux,Privilege,Access,Software,Consequence),谓词中的参数如下表所示:
在这里插入图片描述
对一个反取证数据库定义如下图:
在这里插入图片描述

1.anti_Forensics(Category,Tool,Technique,Windows,Linux,Privilege,Access,Program,Consequence).
2. vulHyp(H, vulID,Software,Range,Consequence) :-
/* The following three predicates are from the abductive reasoning result */ 
3. vulExists(Host, vulID,Software,Access,Consequence), 
4. networkServiceInfo(Host,Software,Protocol,Port,Perm), 
5. netAccess(Host,Protocol,Port). 
/* Introduce a hypothetical vulnerability */ 
6. anti Forensics(Category,Tool,Technique,OS,Privilege,Access,Software,Effect). 
7. hostConfigure(Host,OS,Software). 

8. with hypothesis(vulHyp, Post-Condidtion) :
9. cleanState, 
10. assert(vulHyp(H, vulID,Software,Range,Consequence)), 
11. post-Condition.

vulHyp谓词表示攻击者可能用到的脆弱性攻击

利用新构建的规则生成的攻击图如下:
在这里插入图片描述
新得到的攻击图和原图的区别为,
1.原图中的攻击路径(6→19→18→17→16)被移除,在原图中这条攻击路径的目标为workstation2。这是因为workstation2是一台linux机器,而CVE-2009-1918是在windows系统中的漏洞
2.添加了一条新的攻击路径1→42→43,这是利用了administrator的会话id,对应网络钓鱼攻击
3.添加了在跳板机(workstation)和数据库之间的一条攻击路径(27→38→11),这是因为使用反取证数据库,规则系统发现攻击者可以通过workstation访问数据库。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值