「作者主页」:士别三日wyx
「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者
2022护网日记
今年HW总共15天,7月25号开始,到8月8号结束。
总的来说,人坐在电脑前的时候,风平浪静,时不时蹦出几个告警。
可一到换班或去厕所的时候,就会突然冒出几百条告警。
我一度怀疑我们的摄像头是不是已经被入侵了,一看到我人离开就开始攻击。
如果你问我,今年HW最大的收获是什么,我一定会说:我收获了一个强大的膀胱!!!
一、监控设备
首先是设备,(本人)这次HW使用的安全产品主要有两个:天眼和椒图。
产品全称天眼奇安信天眼威胁检测与分析系统椒图奇安信网神云锁服务器安全管理系统
天眼负责流量分析,部署在旁路,对交换机镜像过来的流量进行监测、分析和溯源。
椒图负责服务器的系统防护,通过在服务器上安装的客户端,将收集到的主机信息发送到控制中心集中分析。
二、工作内容
防守方主要分为三个组:安全监控组、事件研判组、应急处置组。
1)监控组分析安全设备的告警,确定是攻击就提交给处置组封禁IP;分析不出来就提交给研判组分析。
2)研判组负责分析监控组提交的告警是否为攻击,必要时可以访问受害网站复现攻击,或者联系受害网站的负责人验证是不是正常业务/人为操作。
3)处置组主要负责封禁IP,如果是webshell这种攻击,还需要联系受害网站的负责人,协助修复漏洞或者加固网站。
三个组通过指挥调度管理系统进行协作防护:
大家上班第一件事就是登录管理系统,监控组向管理系统提交告警的攻击/受害IP、告警类型以及payload,处置组/研判组看到管理系统上有新的告警了就封禁IP/分析告警事件。
原则上来说,我一个安全监控组,只需要盯着安全设备,简单分析一下然后提交告警就可以了。
由于公司就来了我一个,只要是我们产品相关的事,都会把我喊过去。
因此,除了设备监控外,我的工作还包括但不限于:分析webshell文件、分析病毒木马文件、升级/加固安全产品、对失陷主机进行后门扫描和病毒查杀、以及协助失陷网站修整加固。。。
三、安全事件
好了,撇开厕所不谈,下面分享几个印象比较深的攻击事件吧:
1)失陷主机排查
青藤云的蜜罐检查到,有个用户电脑访问了蜜罐的80端口,用户断网以后用360和火绒查杀了三个毒以后,重新上线,结果又踩了蜜罐,用户又用360和火绒扫了一遍,啥也没扫出来,就喊我过去处理。
当时我就一脸懵逼:这是我一个安全监控该干的事吗?
但架不住一群人直勾勾的盯着我,只能硬着头皮去干
先是用椒图扫了一遍webshell和后门文件。
确认没有后门以后,用专杀工具全盘扫描,扫出来7个病毒。
扔到ti威胁情报中心鉴定,确定就是高危病毒。
然后提交到二线做病毒分析,确认是远控木马类病毒,与触发蜜罐的告警有相关性。
最后删掉病毒,重新上线,没有再出现异常现象。
2)后门网站修复
椒图检测到一个服务器上存在webshell,通知用户紧急下线网站,开始排查和加固。
一群人围在哪里分析了半天,然后理所应当的把这事扔给了我:“你们家的设备,当然要你去处理呀~”
老规矩,先用椒图扫一下webshell和后门,在Temp目录下扫出来一个webshell。
跟用户的开发核实后,确认不是业务文件,是被人上传了文件。
于是删掉webshell,取消了Temp目录的所有用户权限,在椒图上吧这台服务器的防护全部开启(默认只检测不拦截)。
开发也临时关闭了上传的功能,然后准备重新上线。
结果上线后,网站访问不了。。。
在重新部署了n遍项目,外加换了两台备用服务器后,时间已经来到了凌晨六点,距离规定的上线时间还差三个小时。
“实在不行,咱们就写个静态主页跳404吧,点啥功能都给跳到404,最起码,他们一时半会儿不会怀疑是我们的问题,咱们也能多点时间排查问题。”
开发的嘴角慢慢上扬,空洞的眼神里重新亮起了光。
不幸的是,这话被项目经理偷听到了,在经理的谴责声中,我看到,开发的眼神,竟慢慢的黯淡下来,直到剩下两个黑黑的眼眶。
兴许是一晚上没去厕所的原因,在换到第三台备用服务器的时候,网站终于恢复了。
事后,我问开发:“你们的运维咋没过来呢?”
“我就是运维。”
“那,开发呢?”
“开发也是我。”
“???,那,你们项目组。。。”
“只有我自己~”
四、告警流量分析
平均下来,一天得有三千多条告警,但其中大部分都是误报,接下来分享一些简单的告警流量特征。
1)信息泄露
看访问路径中是否存在特殊文件或路径。
比如,访问备份文件
.zip
访问默认文件
或者特殊类型的文件
客户授权的话,可以访问该路径,查看返回结果中是否包含敏感信息,以判断是否攻击成功。
2)SQL注入
看请求参数、请求头或请求体中是否包含SQL语句或关键字。
比如,GET请求中包含SQL语句(联合查询注入):
请求头中包含SQL语句:
POST请求体中包含SQL语句:
为了方便绕过,还会改变SQL关键字的大小写或编码。
比如:大小写绕过:
编码绕过:
客户授权的话,可以复现payload,根据页面的返回结果、响应时间来判断是否注入成功。
3)文件上传
看请求体中是否包含代码内容:
如果响应体中有
success
等上传成功的字样,或者有该文件的访问记录,则说明webshell上传成功。
4)XSS(跨站脚本)
看请求参数或请求体中是否包含JavaScript代码:
将响应体的数据复制到文件中执行,如果弹窗,就说明攻击成功。
如果没弹窗,就
Ctrl+F
搜JS代码,常见的有:
5)代码执行
看请求参数、请求头、请求体中是否包含恶意代码。
比如,请求体中包含PHP代码:
Dedecms V5.7后台任意代码执行:
Fastjson反序列化漏洞攻击:
ThinkPHP 5.0.x—5.1 远程代码执行:
版权归原作者 士别三日wyx 所有, 如有侵权,请联系我们删除。