数据来源
应急响应:
保护阶段(护案发现场,断网防止持续渗透,数据备份恢复),分析阶段(找到漏洞),复现阶段(复现攻击过程),修复阶段(修复漏洞),建议阶段(给出安全建议)
目的:分析出攻击时间,攻击操作,攻击后果,安全修复等并给出合理解决方案。
必备知识点:
- 熟悉常见的 WEB 安全攻击技术
- 熟悉相关日志启用及存储查看等(可根据实际情况搜百度查询日志存放位置与打开方式)
- 熟悉日志中记录数据分类及分析等
准备工作:
- 收集目标服务器各类信息
- 部署相关分析软件及平台等
- 整理相关安全渗透工具指纹库
- 针对异常表现第一时间触发思路
从表现预估入侵面及权限面进行排查
有明确信息网站被入侵:
基于时间 基于操作 基于指纹 基于其他
无明确信息网站被入侵:
-
WEB 漏洞-检查源码类别及漏洞情况
-
中间件漏洞-检查对应版本及漏洞情况
-
第三方应用漏洞-检查是否存在漏洞应用
-
操作系统层面漏洞-检查是否存在系统漏洞
-
其他安全问题(口令,后门等)-检查相关应用口令及后门扫描
常见分析方法:
指纹库搜索,日志时间分析,后门追查分析,漏洞检查分析等
演示案例:
- Windows+IIS+Sql-日志,搜索
- Linux+BT_Nginx+tp5-日志,后门
- Linux+Javaweb+st2-日志,后门,时间
- 360 星图日志自动分析工具-演示,展望
案例一:Windows+IIS+Sql-日志,搜索(这里是用IIS演示,其他服务器也是类似的思路)
故事回顾:某小企业反映自己的网站出现异常,请求支援
思路:进入网站服务器,通过配置文件找到网站日志目录,打开日志,搜索分析(iis搭建的靶场,但是好像没有加载MDB数据库)
我这里是在虚拟机部署一个iis的服务器,部署方法:IIS之WEB服务器_iisweb服务器
我这里没有视频中老师演示的案例,就不跟着他来了我就演示个类似的,就知道这个思路就可以了,以后遇到就可以参考这个思路进行排除
1)进入服务器查看服务器日志(我这块就是用他默认的网站并没有改其他东西)
日志的格式:
# 访问日期 时间 站点名称 服务器ip 请求方法 uri-资源 uri-查询 服务器端口 用户名 客户端ip 用户代理 协议状态 协议子状态 win32状态
2023-04-07 08:48:29 W3SVC1 192.168.1.45 GET /iisstart.htm - 80 - 192.168.1.1 Mozilla/5.0+(Windows+NT+10.0;+Win64;+x64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/111.0.0.0+Safari/537.36+Edg/111.0.1661.62 200 0 0
2)在kali使用sqlmap攻击试试
# url改成自己的
sqlmap -u '192.168.1.45:80'
3)查看日志文件
如果要搜索日志内容直接按ctrl+f或放到其他编辑工具内
其他检测方式:
- 通过关键字查询:看url中是否出现了select之类的
- 通过工具的指纹查询:(sqlmap/冰蝎/蚁剑/awvs/xray等的浏览器头部,当然也可能是百度、谷歌的爬虫)
- 这里其实要综合考虑网站的功能,看是否存在文件上传,sql注入等多种漏洞层面
案例二、Linux+BT_Nginx+tp5-日志,后门
故事回顾:某黑X哥哥反映自己的网站出现异常,请求支援
1)首先要做的就是查看服务器日志,先下载到本地(这里以宝塔面板为例)
2)使用360 星图日志自动分析工具对日志进行检测
工具下载:https://pan.baidu.com/s/1tQS1mUelmEh3I68AL7yXGg 提取码:xiao
配置360星图的日志的路径(缺点:只能识别iis,apache,nginx)
点击start.bat运行分析,在result中查看分析结果
其他工具:10个好用的Web日志安全分析工具
其他日志该怎么分析?ELK,Splunk配合使用--ELK,Splunk是蓝队必备工具
因为大型网站的日志非常大,不像自己的网站需要用到大数据进行分析
案例三、Linux+Javaweb+st2-日志,后门,时间
在现实环境中一个服务器的日志文件会有很多个,有些是一天一个有些是一周一个,我们分析日志的时候不可能一个一个的打开查看,所以需要用工具辅助我们分析。
如:客户说2023/4/8发现自己的服务器被攻击了,我们就先查看这个日志文件分析攻击者的ip,然后再根据ip搜索全部文件(因为别人可能很久之前就进行攻击过了,只是今天才被发现)
因为我没有视频中的日志文件所以就随便找两个日志文件演示一下操作,思路都是一样的。
1)分析日志文件寻找可疑的ip地址
2)使用FileSeek进行文件搜索
工具下载链接跟刚才的一样:https://pan.baidu.com/s/1tQS1mUelmEh3I68AL7yXGg 提取码:xiao
包含文件中的: *.* # 意思是匹配所有的文件名与后缀名,这个可以改,比如:*.txt 就是匹配所有文件后缀名为.txt的文件
3)如果知道了黑客上传的后门文件名,还可以搜索这个后门文件看谁访问了这个文件
下面是我刚才使用360星图对日志文件进行分析的报告图,发现有人上传了一些后门文件然后访问了如:shellz.php、php-findsock-shell.php
我们就可以搜索这些后门文件
有了这些信息有啥用?
比如:视频中老师演示的案例是个真实的java项目的案例,后门文件名是caiyun.jsp(“彩云”的拼音),然后他就加入了很多这个中渗透技术交流群他就直接搜索这个名字,还真匹配上了,很可能就是攻击者(这种就是通过社工查询)
我们还是可以根据这些日志信息进行漏洞修复,如:他是通过先上传木马文件进行攻击的那就说明网站存在文件上传漏洞,是通过sql进行攻击的那就说明存在sql注入漏洞
最后再提一句:在渗透测试时一般都是要提前进行信息收集具体如下图:
涉及资源:
https://wangzhan.qianxin.com/activity/xingtu
10个好用的Web日志安全分析工具
10款常见的Webshell检测工具
https://pan.baidu.com/s/1tQS1mUelmEh3I68AL7yXGg 提取码:xiao