【应急响应】知攻善防实验室Linux(2)靶机

前言

靶机地址

链接:百度网盘 请输入提取码 提取码:mapi --来自百度网盘超级会员V5的分享

前景需要:看监控的时候发现webshell告警,领导让你上机检查你可以救救安服仔吗!!
1,提交攻击者IP
2,提交攻击者修改的管理员密码(明文)
3,提交第一次Webshell的连接URL([http://xxx.xxx.xxx.xx/abcdefg?abcdefg只需要提交abcdefg?abcdefg](http://xxx.xxx.xxx.xx/abcdefg?abcdefg%E5%8F%AA%E9%9C%80%E8%A6%81%E6%8F%90%E4%BA%A4abcdefg?abcdefg))
3,提交Webshell连接密码
4,提交数据包的flag1
5,提交攻击者使用的后续上传的木马文件名称
6,提交攻击者隐藏的flag2
7,提交攻击者隐藏的flag3

相关账户密码:root/Inch@957821.

学习过程

一、提交攻击者ip

  1. 打开虚拟机后先登录

  2. ip a查询靶机ip得到

  3. xshell连接靶机
    2026-09-07-17-13-36-image
    2026-09-07-17-13-55-image

  4. 对靶机操作

    题目是“发现 webshell 告警”,webshell 属于 Web 层攻击,所以第一步要找到 Web 服务。

    netstat -anlpt
    #netstat:Network Statistics,网络统计工具。
    
    -a (all):显示所有连接(包括正在监听的端口和已经建立的连接),不省略任何状态。
    
    -n (numeric):以纯数字形式显示 IP 地址和端口号(比如直接显示 192.168.20.1:80)。如果不加这个参数,系统会去尝试反向解析域名(比如把 IP 解析成 www.baidu.com),既慢又容易产生干扰。
    
    -l (listening):只显示正在监听(即开放等待别人连接)的端口。这对找后门非常有用。
    
    -p (process):显示对应的进程 PID 和程序名称(比如显示是 nginx、sshd 还是 python3 占用)。
    
    -t (tcp):只显示 TCP 协议的连接(常用的 Web、SSH、数据库都是基于 TCP 的。如果是 UDP 则用 -u)
    

    得到

    发现有nginx服务和进程号1276

  5. 使用lsof -p命令查询进程号为1276的进程打开了哪些文件

    lsof -p 1276 | grep log #查看nginx的目录
    lsof:系统监视工具
    
    COMMAND:进程的名称
    PID:进程标识符
    USER:进程所有者
    FD:文件描述符,应用程序通过文件描述符识别该文件。如cwd、txt等
    TYPE:文件类型,如DIR、REG等
    DEVICE:指定磁盘的名称
    SIZE:文件的大小
    NODE:索引节点(文件在磁盘上的标识)
    NAME:打开文件的确切名称
    
    指令的用法如下:
    lsof abc.txt  # 显示开启文件abc.txt的进程
    lsof 目录名   # 查找谁在使用文件目录系统
    lsof -i :22   # 知道22端口被哪个进程占用
    lsof -c abc   # 显示abc进程现在打开的文件
    lsof -g gid   # 显示归属gid的进程情况
    lsof -n  # 不将IP转换为hostname,缺省是不加上-n参数
    lsof -p 12    # 看进程号为12的进程打开了哪些文件
    lsof -u username  # 查看用户打开哪些文件
    lsof -i @192.168.1.111  # 查看远程已打开的网络连接(连接到192.168.1.111)
    lsof -i  # 用以显示符合条件的进程情况
    

  6. 查看nginx的access目录 在/www/wwwlogs下

    access.log 是记录所有HTTP请求(攻击流量)的进出记录

    cd /www/wwwlogs
    ls -laS #将文件按照大小排序
    

  7. 用cat命令查看access.log的内容

cat access.log

发现好多127.0.0.1地址的日志,我们过滤掉再查看

cat access.log | grep -v "127.0.0.1"

现在全是192.168.20.1的了,没有发现攻击行为

  1. 再看127.0.0.1.log

    cat 127.0.0.1.log | grep -v "127.0.0.1"
    

    我有这么多日志要看

    哇,找到了疑似攻击行为

  2. 提交攻击ip

二、提交攻击者修改的管理员密码

  1. 提示我们查看历史命令

    提示我们注意宝塔面板

    我们输入宝塔面板修改密码

    bt #进入宝塔面板
    5
    1.787878 
    #|-用户名: uysycv5w
    #|-新密码: 1.787878
    
  2. 重启宝塔面板服务

    bt default #让其报错,获取后台地址
    

  3. 复制内网面板地址往里进

    各种密码往里找并记录

    kaishi

    5Sx8mK5ieyLPb84m

    往里进往里进

    注意到表不止一页,注意到password是md5加密

    注意到md5解密网站

    www.somd5.com

三、提交第一次Webshell的连接URL

  1. 要分析流量包,我用xshell打开文件管理器,将流量包下载下来

  2. 用wireshark打开流量包后筛选http字段

    发现关键字flag1,右键点击该条流量,追踪流

    得到一个flag?

  3. 提示我们ip.addr == 192.168.20.1 and http.request.uri

    这里对uri有疑问

    URI :Uniform Resource Identifier,统一资源标识符;

    URL:Uniform Resource Locator,统一资源定位符;

    URN:Uniform Resource Name,统一资源名称。

    随机找一个post包追踪流都能看出很明显的蚁剑的流量特征

    常见流量特征 - 顾旺辉 - 博客园

    得到post头的url

    index.php?user-app-register

    当前进度

    192.168.20.1
    Network@2020
    index.php?user-app-register
    

提取webshell连接密码

Network2020

四、提交数据包中的flag1

flag1{Network@_2020_Hack}

五、提交攻击者使用的后续上传的木马文件名称

  1. o.O

  2. O.o

  3. o.o

    cat 127.0.0.1.log | grep "192.168.20.1" | cut -d ' ' -f 6,7 | uniq -c | grep -C 10 version2.php
    
  4. 当前进度

    192.168.20.1
    Network@2020
    index.php?user-app-register
    flag1{Network@_2020_Hack}
    version2.php
    

六、找flag2

  1. 查看历史命令中进行编辑文件的操作

    history | grep vi
    

  2. 依次寻找上述提到过的文件/文件夹

    在.api中cat到flag

  3. 当前进度

  4. 192.168.20.1
    Network@2020
    index.php?user-app-register
    flag1{Network@_2020_Hack}
    version2.php
    flag2 = "flag{bL5Frin6JVwVw7tJBdqXlHCMVpAenXI9In9}
    

七、找flag3

  1. 之前history命令中看到过好多遍

    flag3

  2. 当前进度

    192.168.20.1
    Network@2020
    index.php?user-app-register
    flag1{Network@_2020_Hack}
    version2.php
    flag2 = "flag{bL5Frin6JVwVw7tJBdqXlHCMVpAenXI9In9}
    flag3{5LourqoFt5d2zyOVUoVPJbOmeVmoKgcy6OZ}
    

通关知攻善防linux(2)靶场,day1完结撒花

总结

这个靶场的思路可以概括为:

  1. 找 Web 服务:netstat、lsof

  2. 找日志目录:/www/wwwlogs

  3. 分析访问日志,过滤本地 IP,找攻击者 IP

  4. 看宝塔面板、数据库,找被改的管理员密码

  5. 分析流量包,找 Webshell URL、连接密码、flag1

  6. 查日志找后续上传木马 version2.php

  7. 查历史命令、隐藏文件,找 flag2、flag3

posted @ 2026-09-11 17:02  痕心  阅读(11)  评论(0)    收藏  举报