一、安全事件分析-web攻击
攻击者意图分析:通过手动或者脚本,漏洞扫描工具等探测web页面,通过返回的信息寻找薄弱点进行漏洞的利用。
常见的告警类型:sql注入、webshell上传、webshell上传访问,跨站脚本攻击,中间件攻击、反序列化漏洞、weblogic反序列化漏洞、java反序列化、框架漏洞、扫描行为、代码执行等等
威胁告警的分析思路:
1、优先排查告警成功且安全等级高的告警
2、优先查询请求响应成功的
3、以源地址或目的地址作为筛选条件,若短时间内某短地址发起大量攻击行为,多为异常安全事件
4、查看攻击的详细页面,通过请求内容判断是否为攻击行为,通过返回内容字段进行分析研判是否成功。
5、内到外的攻击,可能是内网主机成了肉鸡,在对外发起攻击
二、web攻击-sql注入
判断是否为攻击行为:
1、在请求数据中判断是否包含认为构造的sql语句
2、判断请求数据中的sql语句是否为业务常用语句
3、若攻击里类型为布尔盲注,在请求数据中会存在试探数据库类型、数据库长度的特征。例如盲注可能用到的函数 sleep substr length等
4、若攻击类型为联合注入,在请求中会出现 union select 的联合查询特征
5、若攻击类型为报错注入:在请求数据中会出现 rand floor group by 等
判断是否攻击成功:
1、查看响应数据中返回的响应状态以及响应内容,与网页正常访问时的返回数据包做对比,分析是否泄露数据库数据
2、对攻击者的攻击语句进行分析,对告警量最大的sql语句重点关注,可在授权的情况下使用sqlmap对参数进行测试。
误报情况:
有时间规律的,高频的触发安全告警且攻击数据流方向 无内到内的无敏感sql攻击字段的日志多为误报
三、web攻击-webshell上传:
判断是否为攻击行为:
1、请求数据中多数会存在filename 、xx.txt.php。着重检查文件上传行为。文件名是否包含非允许的格式。
2、结合请求内容,分析写入文件的内容是否含有webshell代码特征。
php:
<?php eval($_POST['w'])?>
<?php passthru($_GET['cmd'])?>
asp:
Execute(request
execute(request
eval request(
aspx:
<%@ import Namespace=""%>
<%@ Assembly Name=""%>
判断是否成功:
1、看返回状态码是否为200,是否返回路径
2、响应内容长度:比较上传前和上传后的响应内容长度,如果长度发生了变化,可能是因为成功上传了webshell文件
3、响应内容特征:查看响应内容中是否包含了webshell文件名或者webshell的标识信息,可以根据已知的webshell特征进行匹配
4、访问日志:查看服务器的访问日志,检查是否有与上传向相关的文件访问记录,如果有上传的文件路径或文件名出现在访问日志中,可能是上传成功了
5、文件系统的变化:检查服务器上的文件系统变化,比较上传前后的文件列表,如果出现了新的文件或者文件被修改,可能是因为上传了webshell文件
安全事件分析-僵木蠕/挖矿
攻击者意图分析:利用服务器后门植入非法程序用于挖矿,内网横向,勒索等
常见的告警类型:挖矿程序,远控木马,勒索病毒
分析方法:
1、查询受害主机请求的域名或IP的威胁情报,判断是否为任意域名或恶意IP
2、分析请求报文是否含有挖矿病毒或勒索病毒通讯特征
3、观察主机的异常行为周期是否疑似感染病毒
4、根据威胁情报查找病毒家族,获取更多病毒信息
安全事件分析-暴力破解
攻击者意图分析:攻击者通过密码字典或随机组合密码的方式尝试登录服务器,利用服务认证缺陷,使用登录口令字典库进行高频率尝试从而获取服务权限
常见告警:
ssh暴力破解、Windows账号暴力破解,ftp暴力破解、web账号破解、smb账号暴力破解、mysql账号暴力破解
攻击行为判断:
短时间内是否存在大量尝试登录的行为
判断是否登录成功:
查看近期登录日志,判断是否登录成功
注意事项:
1、ssh、rdp、smb协议认证是通过加密传输的,因此这一类判断是否攻击成功,需要结合查看系统登录日志来判断
2、关注攻击源是内部还是外部,如果是外部攻击内部,建议在服务器段查看系统日志,有没有异常登录情况,提醒用户注意密码强度,及时更换密码,如果是内部攻击内部或外部,需要考虑是否有主机感染病毒失陷的情况
3、针对暴力破解成功的告警首要工作验证用户破解的账户真实性,若验证成功且却认为非授权访问则进行下阶段告警处置操作。