【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋

本文原创作者:D0g,本文属i春秋原创奖励计划,未经许可禁止转载!

前言

去年2月份在做完一套靶场后写的,感觉靶场漏洞内容涵盖挺全的,一直放在电脑里,现在放出来分享。

测试背景:一个线上靶场模拟渗透测试,官方给了,通过连接进入靶场。

任务描述:在本次测试中一共有20关即20个flag分布在不同的地方,分别找出来并提交。

第一关题目: http://172.16.1.110 针对入口点 IP 地址进行端口扫描,将其所开放的端口号(仅需扫描小于 1000 的端口)从小到大排列后得到的字符串算其 32 位小写 MD5 哈希得到 Flag01

思路: 看到提示端口扫描,我就想到用nmap进行扫描,打开kali进入,终端输入 nmap -vv -Pn -p 1-1000 172.16.1.110 即可扫描出来开放的1000以下端口号,然后按照题目要求即可得到flag01为7d812c5bf9eba265c3d017e9416c12a8
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第1张图片
其中-vv参数表示输出详细报告结果,-p指定端口号范围,-Pn为扫描前不进行ping操作,像我们学校的官网就禁止了ping,如果扫描时不加Pn是扫不出开放端口的
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第2张图片

第二关题目:根据扫描发现的端口信息,寻找sync中可能存在的漏洞。找到flag02

思路:扫描出来的几个端口里有rsync,再根据题目,发现rsync是存在未授权访问漏洞的,这里给出一篇肉肉学姐在乌云提交的一个关于rsync的漏洞案例,http://wooyun.org/bugs/wooyun-2010-061561【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第3张图片
rsync 172.16.1.110::    /*rsync连接
rsync 172.16.1.110::www/   /*列出这个目录下的文件
rsync 172.16.1.110::www/flag02  /*把flag02下载保存到本地root目录
然后我也顺便把wwwbackup.zip一起下载下来了,估计就是网站的备份源码,然后cat flag02读出flag02并提交

第三关题目:对之前得到的www.backup压缩文件进行解密,拿到最终 Flag03

思路感觉这关有点坑,那个下载下来的压缩文件有密码,但是没有对密码做任何提示。。。请教了下搞定的大牛,结果密码为纯小写四位字母test。。。。
过程如图,用的是kali下的fcrackzip
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第4张图片
其中 -b参数指定暴力枚举,-v参数显示破解信息,-u参数进行解压测试以排除错误密码,-c指定字符集,-c a指定字符集为纯小写字母,-l指定密码长度

第四关题目:寻找数据库链接信息,拿到最终 Flag04

思路:解压文件后,到config里找到config_ucenter.php这个文件,打开就看到flag04了
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第5张图片【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第6张图片【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第7张图片

第五关题目:提取uckey,进行菜刀连接,拿到webshell,寻找flag05

思路:uckey在第四关的时候就获得了,就在flag04的下面
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第8张图片
打开目标网站看看,是个discuz的网站
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第9张图片
Discuz X1.5 X2.5 X3存在漏洞可以利用泄漏的uc_key来get webshell,
利用python写的exp直接拿下,过程如下
菜刀连接成功
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第10张图片
但是在default目录下没找到flag05,权限低只能浏览default目录下的文件,而且无法执行命令
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第11张图片
于是传了个大马上去,但也无法直接跳转到default的上级目录,于是执行命令ls  /home/wwwroot  找到了flag05

第六关题目:通过信息收集的过程查看操作系统版本得到 Flag06

思路:在大马里面执行uname -a 看系统信息,也没发现什么
在执行一下cat etc/issue ,发现了flag06
/etc/issue文件实际上就是当系统的版本信息,而uname则是系统内核信息

第七关题目:进行数据库连接,拿到最终 Flag07

思路:因为已经有了webshell,直接到数据库配置文件里找数据库的帐号和密码,如图
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第12张图片
然后直接用菜刀连接数据库
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第13张图片
连接成功后即可在dztest数据库pre_flag!!!表里找到flag,如图
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第14张图片

第八关题目:查看所有临时目录,拿到最终 Flag08

思路:因为网站服务器为linux系统,临时目录有/tmp 和/var/tmp,然后在/tmp下没发现什么,最后在/var/tmp里发现了一个lcx.py文件,打开就看到flag08了
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第15张图片

第九关题目:找到内网主机,进行端口转发,寻找内网主机web上的 Flag09

思路:进行端口转发的工具已经有了,就是在上一关得到的lcx.py,然后就是扫描内网了,先看下内网的ip地址,执行ifconfig发现有个eth1网卡对应的ip为10.0.0.1
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第16张图片
然后上传一个扫描脚本hostscan.php进行扫描,扫描得到的结果如图
发现了一个内网主机10.0.0.2开放了21、80和3306
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第17张图片【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第18张图片
然后执行python /var/tmp/lcx.py -l 0.0.0.0 -p 20021 -r 10.0.0.2 -P 21
python  /var/tmp/lcx.py -l 0.0.0.0 -p 20080 -r 10.0.0.2 -P 80
分别把内网主机的21、80端口转发到172.16.1.110的20021和20080端口,题目要求在内网主机的web上找flag,于是访问http://172.16.1.110:20080就是内网的web服务了,即可只看到flag09
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第19张图片

第十关题目:刺探发现的FTP服务版本,拿到最终 Flag10

思路:因为已经转发了内网主机的21端口,于是直接在浏览器上访问,但是除了要你输入帐号和密码外什么都没有
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第20张图片
于是用命令行连接看看,已连接ftp就发现了flag10
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第21张图片

第十一关题目:对FTP服务进行暴力枚举,拿到最终 Flag11

思路:其实我直接就猜到了弱口令是admin和admin,但本着学习的态度,还是利用hydra来暴力破解ftp,如图
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第22张图片
然后尝试进行登录,但是却无法列出文件,究其原因是因为我们是转发内网出来的端口,但是ftp下载文件是需要其它端口的,而我又没有转发端口。于是准备到webshell上curl一下ftp
执行命令curl ftp://admin:[email protected]
成功访问内网ftp,然后就发现了flag11和下一关的hint

第十二关题目:根据之前得到的信息,对发现的编码进行解码,拿到最终 Flag12

思路:查看上一关发现的hint,发现是一堆编码
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第23张图片
以前在了解jsfuck编码的时候,就了解了另外一种编码jjencode也就是这一关hint的编码方式,还有另外一种aaencode编码,这三种编码都是同一个日本人发明出来的,具体介绍看这个人的网站http://utf-8.jp/
但是他网站上没有提供对jjencode的解码方法,网上找了下,在github上找到了解密的脚本
https://github.com/jacobsoo/Decoder-JJEncode/blob/master/decoder.html
复制下来保存为html,输入密文即可解密
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第24张图片
解密后又是一段eval加密,继续解密eval即可得到flag和下一关的提示

第十三关题目:文件包含,根据之前得到的信息,对目录进行暴力枚举,猜到目录后,拿到最终 Flag13

思路:题目提示文件包含,在根据上关得到的消息,访问http://172.16.1.110:20080/includefile/ 结果如图
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第25张图片
那文件包含应该是像这样的 /?page=
察看源码发现提示,也就是要找到flag文件
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第26张图片
通过一个报错信息可以发现内网主机是windows系统
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第27张图片
文件包含可以利用windows的一个安全漏洞,比如当输入i<<的时候可以包含index.php,有这个i开头的问件就会返回正确
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第28张图片
如果输入k<<报错,就说明没有k开头的文件
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第29张图片
利用这个就可以暴力枚举目录
先用burp跑一下第一个字符有哪些存在
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第30张图片
发现只有h和i有反应,i可能就是index,,于是用python写了个脚本,把第一个爆破的字母改为h,很快就枚举出了flag文件
[Python]  纯文本查看  复制代码
?
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
#coding=utf-8
import requests
import re
 
admindir = ""
needrunning = 1
checklst = "h0123456789qwertyuiopasdfgjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM"
url = "http://172.16.1.110:20080/includefile/?page="
while needrunning:
         for i in list (checklst):
                 checkurl = url + admindir + i + "<<"
                 print "[%s] checking %s           \r" % (admindir, admindir + i),
                 html = requests.get(checkurl).content
                 if not re.search( "not exists" , html):
                         admindir + = i
访问http://172.16.1.110:20080/includefile/?page=h4cKtHepl4nET/ 是正确的但是没有flag,于是直接访问
http://172.16.1.110:20080/includefile/h4cKtHepl4nET/
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第31张图片
就有了flag和下一关的提示

第十四关题目:根据之前得到的信息,发现短路径漏洞,拿到最终 Flag14

思路:以前看暗月教程的时候了解过短路径漏洞,就是因为在windows下文件名过长,只显示前6位+~1+后缀名,可以用来猜目录、文件,经过测试,当访问http://172.16.1.110:20080/hellon~1/时就行了
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第32张图片

第十五关题目:数据库目录,根据之前得到的信息,下载网站源码,分析漏洞,拿到最终 Flag15

思路:访问http://172.16.1.110:20080/exploitweb/,发现网站显示效果不好,因为这是通过转发内网的端口。
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第33张图片
于是设置下socks5代理,上传一个socks5代理的python脚本并运行,再在浏览器里设置好socks5代理,再来访问就好了
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第34张图片【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第35张图片
访问发现是稻草人cms,根据提示下载一个网站源码,发现数据库目录为data,于是直接发问data就找到flag和网站漏洞提示

第十六关题目:根据之前得到的信息,下载数据库,拿到最终的flag16

思路:用扫描器扫了一下,没扫到数据库,然后本地搭建环境安装网站时得到了数据库地址,默认为sqlite数据库,如图
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第36张图片
然后把数据库下载下来
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第37张图片
接着用kali下的hexorbase里的sqlite直接打开这个数据库,在dcr_qy_admin表里发现了flag
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第38张图片

第十七关题目:根据之前得到的信息,猜想可以插入我们的恶意代码得到一句话后门。通过菜刀连接,找到flag17

思路:因为有了后台帐号密码,就想登录后台看看,可是找不到后台,
于是只有按题目说的去插如恶意代码,根据在十五关得到的提示,在结合本地安装程序代码审计可以看出,他应该是修改了代码,把安全过滤的删除了
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第39张图片
然后就在测试网站上面找到了一个提交在线订单的地方
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第40张图片
全部写一句话,然后菜刀连接数据库地址,就得到了webshell
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第41张图片
然后就找flag文件,懒得一个一个目录去翻,就在虚拟终端执行命令,先CD到C盘根目录,然后dir /s  flag* >  c:\1.txt  ,查找当前目录下所有包含flag的文件名
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第42张图片
可以发现不仅把flag17找出来了,还顺便把flag18也找出来了,分别打开对应文件就是flag了

第十八关题目:垃圾筒,通过获取到的 Web Shell,读取到 Flag17 与关于 Final Flag 的提示,找到flag18

思路:上一关就找到了,也没啥可说的了,直接打开

第十九关题目:通过一番发掘,得到 C:\$Recyle.Bin 目录下的 Flag18 与同目录的 shadow.bak,联想 Flag17 给出的提示找到flag19

思路:在flag18的同目录下有个shadow.bak,已看就知道是linux的帐号密码文件,先确认下
根据17关那里得到的要求是FinalFlag格式为md5(user:password),
要先对密码哈希进行破解,用john很快就破解出来了
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第43张图片
然后对其进行md5加密就得到了flag

第二十关题目:(没有题目,自己找答案)

思路:最终在C:/user/boss目录下发现一张图片,下载下来对其进行各种隐写分析无果,最后在偶然发现,其实答案就在图片右上角摆着呢,只是不太容易看见,考眼力
【入门】一次线上靶场writeup http://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=16009&fromuid=195551 (出处: i春秋_第44张图片

总结:这些有题目有些是自己做出来的,有些是请教了别人,做完后感觉收获还是蛮大的。

你可能感兴趣的:(渗透学习)