三、分析能力
但凡有一点渗透经验的人,对于无论是杀毒软件还是waf\ids 系统都知道使用各种逃避检测的手段。现在我们面对的是有一定反检测能力的攻击者,特别是高级APT攻击通常较为隐蔽不易触发单点的安全策略和检测,需要更多纬度和大视角的数据分析。
美国《2013年财年国防授权法案》:国防部下一代主机安全系统不能再是杀毒软件或任何基于签名的技术传统安全产品单纯依靠特征库的检测模式,效果已大打折扣。黑客工具千变万化,攻击手法层出不穷,但他们的目的不变,行为就是殊途同归的。所以,在原有特征检测技术之外,用行为模型能更好的检测入侵,我们提出以下检测模型:
3.1、单点事件描述数据的行为分析
例如一个进程的启动,进程自身的行为与环境信息。
这里你看到了什么?以下均可作为恶意进程检测规则。
1) 父进程为IE;
2) 进程运行在IE缓存目录;
3) 进程PE信息:加壳,未签名,多个PE头部等
3.2、上下文事件关联分析
例如:一个进程状态的变化,以及父子进程状态的变化。
这是ProFTPD的一个远程缓冲区溢出漏洞攻击后的结果,从pstree可以看到proftpd进程派生了一个bash子进程。正常情况下bash通常只会从系统登录后的sshd\login等进程启动,这可作为一个异常告警逻辑。大家再想想这个场景还会有那些特征?
规则描述
{
"dsc":"Remote code execute",
"cache":{
Socket=1,
cmd!=sshd|logoin
},
"rule":{
ip=cache.ip,
ppid=cache.ip.pid,
cmd=/bin/shell
}
}
3.3、多数据纬度关联分析
例如:NIDS与HIDS的数据联动分析。
IDS上出现来至非正常业务逻辑的文件上传事件,于此几乎同时,HIDS出现一个CGI文件生成事件,可作为可疑webshell上传行为规则。上传漏洞千变万化,导致入侵者能上传webshell的原因也千奇百怪,我们勿需为每一个web漏洞建立检测规则,形成臃肿的规则库,只要符合上述行为特征,就能被发现。
总结上诉架构与分析逻辑,我们得出以下整体架构图。