VulnHub之Blackmarket测试


vulnhub


测试前准备

  实验环境
攻击IP 靶机IP
192.168.198.133 192.168.198.134
172.17.135.135.17 172.17.135.52

更换环境原因:个人PC同时开启两台虚拟机电脑无法承载,最后在内网上搭建了一个靶场,进行测试

使用命令查看IP
KALI系统

ifconfig

clipboard.png-827.6kB

Windows系统

ipconfig/all

clipboard1.png-9.6kB


测试流程

Flag1

内网渗透首先进行了信息收集,使用的系统是KALI渗透测试系统方便前期的信息收集和一些必要的暴力破解
首先使用工具fping查看同一网段存活的主机
使用命令:

fping -a -g 192.168.198.1 192.168.198.254

clipboard2.png-415.2kB

(同时fping命令比ping更方便的功能是fping可以同时ping多个主机)

存活主机:

IP
192.168.198.2 物理机IP
192.168.198.133 kali虚拟机IP
192.168.198.134 Blackmarket靶机

获取IP后对于靶机进行端口扫描:本人使用namp对靶机进行端口扫描

*附nmap常用参数释义:
-A: 全面扫描
-sP: ping扫描
-P0: 无ping扫描
-PS: TCP SYN Ping扫描
-sV: 版本探测
-O: 对操作系统探测,但有时会有误差
-sU UDP扫描,但UDP扫描是不可靠的
-sA 这项高级的扫描方法通常用来穿过防火墙的规则集
-sV 探测端口服务版本
-Pn 扫描之前不需要用ping命令,有些防火墙禁止ping命令。可以使用此选项进行扫描
-v 显示扫描过程,推荐使用
-h 帮助选项,是最清楚的帮助文档
-p 指定端口,如“1-8800、2333、135、22、80”等
-oN/-oX/-oG 将报告写入文件,分别是正常、XML、grepable 三种格式
-T4 针对TCP端口禁止动态扫描延迟超过10ms
-iL 读取主机列表,例如,“-iL C:\ip.txt”

此次扫描使用命令:

nmap -T4 -A -v 192.168.198.134

clipboard3.png-1134.6kB
扫描结果整理:

端口 是否开启 服务
21/tcp open ftp
22/tcp open ssh
80/tcp open http
110/tcp open pop3
143/tcp open imap
993/tcp open imaps
995/tcp open pop3s

端口扫描之后初步分析:
1.ftp端口开放,可以使用工具进行用户密码爆破
2.http端口开放,可以通过浏览器进行访问查看是否存在漏洞

首先使用浏览器访问80端口
360截图20190103191256848.jpg-29.5kB
首先F12查看控制台及源码,观察是否存在注释的hints
clipboard4.png-61.3kB
发现了第一个flag,同时发现flag部分是base64编码,获取flag并对主体部分进行解码

<!-- flag1{Q0lBIC0gT3BlcmF0aW9uIFRyZWFkc3RvbmU=} -->

解码内容为

“`CIA – Operation Treadstone“`

猜测是下一个flaghints


Flag2

利用刚才信息收集的结果,Google解码后的信息,发现是一个电影,同时搜索TOP1是一个神秘的网站,所以猜想既然是进行FTP用户密码爆破,是否是使用此网站的内容生成字典进行爆破。
http://bourne.wikia.com/wiki/Operation_Treadstone
clipboard5.png-251.5kB
使用工具cewl进行收集并生成字典

*附cewl常用参数释义:
–help, -h: 显示帮助
–keep, -k: 保存下载的文件
–depth x, -d x:网站爬取深度,默认为2,建议不要太大
–min_word_length, -m: 字典的最小单词长度,如果小于此不收入字典
–offsite, -o: 让爬虫爬取其他站点,针对外链的
–write, -w file: 爬取的内容输出到文件
–ua, -u user-agent: 使用useragent,防止有些网站对于爬虫进行防御
–no-words, -n: 不要输出字典
–meta, -a 包含网页中的meta数据
–meta_file file: 为meta数据输出个文件
–email, -e:包含email地址
–email_file file: 输出email地址
–count, -c: 展示发现的每个单词的数量

本次爬取使用命令:

cewl -d 2 -m 2 -w /root/Desktop/misc.txt http://bourne.wikia.com/wiki/Operation_Treadstone
# 将爬取的数据生成misc字典,爬取深度为2,字典单词最小长度为2

clipboard6.png-1248.7kB
查看生成的字典

cat misc.txt

clipboard7.png-353.7kB

之后利用字典以及工具hydra对靶机的ftp端口的用户名和密码进行爆破

*附hydra常用参数释义:
hydra <参数> <IP地址> <服务名>
hydra的参数是区分大小写的.
hydra支持的服务有:telnet ftp ssh mysql mssql vnc pcanywhere RDP(3389)等.
-R 继续从上一次的进度开始爆破
-s 指定端口
-l 指定登录的用户名
-L 指定用户名字典
-p 指定密码
-t 设置线程数,线程默认16
-P 指定密码字典
-v 显示详细过程
-f:成功立即停止
-o:输出文件
-e ns 进行空密码试探 并使用指定账户和密码试探

本次测试使用的命令:

hydra -L misc.txt -P misc.txt -e ns -f -v 192.168.198.134 ftp
# 显示了爆破FTP用户密码的详细过程

clipboard8.png-488.9kB
最后成功获得用户名和密码

username=nicky
password=CIA

clipboard9.png-90.4kB
使用爆破的结果进行登陆
clipboard10.png-77kB
发现第二个flaghints

flag2{Q29uZ3JhdHMgUHJvY2VlZCBGdXJ0aGVy}
#base64解码后Congrats Proceed Further
If anyone reading this message it means you are on the right track however I do not have any idea about the CIA blackmarket Vehical workshop. You must find out and hack it!

Flag4

在获取flag1之后对80端口的后台目录进行扫描,以获取更多的信息,同时对80端口的登陆用户密码做初步测试:
首先尝试是否可以通过万能密码登陆
其次采用admin/adminadmin/adminpassword弱口令等进行测试
这里使用KALI自带工具dirb进行扫描,windows系统下采用了御剑进行扫描
kali自带字典目录:/usr/share/wordlists/
dirb常用字典

big.txt #大的字典
small.txt #小的字典
catala.txt #项目配置字典
common.txt #公共字典
euskera.txt #数据目录字典
extensions_common.txt #常用文件扩展名字典
indexes.txt #首页字典
mutations_common.txt #备份扩展名
spanish.txt #方法名或库目录
others #扩展目录,默认用户名等
stress #压力测试
vulns #漏洞测试

*附dirb常用释义:
dirb http://xxx.com #默认不选择目录,会加载默认的字典,也可以自己指定字典
dirb http://seofangfa.com (-f) /usr/share/dirb/wordlists/indexes.txt #制定字典进行爆破

本次未使用kali自带字典,用的是自己总结的字典进行爆破使用命令:

dirb http://192.168.198.134 -f mima

clipboard11.png-537.5kB
扫描过程中发现的后台目录,发现supplieradminsquirrelmail等可疑目录,结合登陆用户的初步测试,再次对80端口的登陆页面进行弱口令测试:

user/user
vendor/vendor
squirrelmail/squirrelmail
supplier/supplier

经测试发现使用使用supplier/supplier登陆成功,并获得供货商权限
image.png-5.7kB
clipboard12.png-54.7kB
发现可以修改商品信息等权限,之后常识/admin目录,测试供货商是否有权限进入后台,发现可以登入
image.png-538.1kB
下一步自然是尝试是否可以获取最高权限,测试时发现供货商可以添加或修改用户的信息,使用burp抓包进一步查看区别
image.png-90.8kB
在抓包过程中发现不同的用户id是不同变化的,所以尝试更改id数测试能否达到提权的目的,因为发现supplier用户的id值比user用户的id值小,猜测admin用户的id值可能为0或1,通过更改用户的id值进行测试
clipboard13.png-50.3kB
使用www/www进行登陆
登录成功,弹出flaghints
image.png-14.1kB
发现第四个flag

flag4{bm90aGluZyBpcyBoZXJl}
#base64解码得到nothing is here
同时发现可疑点:Jason Bourne Email access ?????
Login Success, Welcome BigBOSS! here is your flag4{bm90aGluZyBpcyBoZXJl} Jason Bourne Email access ?????

Flag3

根据flag4hints猜想应该和邮件管理系统有关,在初步扫描后台中发现/squirrelmail后台,访问发现依然需要用户名和密码,猜想应该是通过数据库挖掘用户密码,回归/admin后台,查找注入漏洞,在商品更改页面发现注入漏洞
利用burpsqlmap结合进行注入

*附sqlmap常用释义:
POST注入:
sqlmap .py -u ” www.xxx.com” –data “user=&&password=” -dbs #列出数据库名称
sqlmap.py -u ” www.xxx.com ” –data “user=&&password=” –tables -D “dbname” #列出数据库表名
sqlmap.py -u “www.xxx.com” –data “user=&&password=” –columns -T “tablename” -D “dbname” #列出数据库列名
sqlmap.py -u ” www.xxx.com” –data “user=&&password=” –dump -C “columnsname” -T “tablename” -D “dbname” #列出列名中数据
url注入:
sqlmap .py -u ” www.xxx.com” -dbs #列出数据库名称
sqlmap.py -u ” www.xxx.com ” –tables -D “dbname” #列出数据库表名
sqlmap.py -u “www.xxx.com” –columns -T “tablename” -D “dbname” #列出数据库列名
sqlmap.py -u ” www.xxx.com” –dump -C “columnsname” -T “tablename” -D “dbname” #列出列名中数据
txt注入:
sqlmap .py -r 1.txt -dbs #列出数据库名称
sqlmap.py -r 1.txt –tables -D “dbname” #列出数据库表名
sqlmap.py -r 1.txt –columns -T “tablename” -D “dbname” #列出数据库列名
sqlmap.py -r 1.txt –dump -C “columnsname” -T “tablename” -D “dbname” #列出列名中数据

txt注入:将burp抓包获取的信息保存至sqlmap目录下,使用sqlmap进行注入
image.png-96.1kB
使用sqlmap进行注入测试:
获取数据库:

sqlmap.py -r di.txt --dbs

image.png-22.7kB
获取BlackMarket数据库中的表

sqlmap.py -r di.txt --tables -D BlackMarket

clipboard15.png-9.4kB
发现flag数据表,列出flag列名

sqlmap.py -r di.txt --columns -T flag -D BlackMarket

image.png-11.6kB
获取fiag内容

sqlmap.py -r di.txt --dump -C FlagId,Information,name -T flag -D BlackMarket

clipboard16.png-7.4kB
获取到第三个flag以及hints

flag3{Find Jason Bourne Email access}

Flag5

根据flag3flag4的信息可以得到,下一步需进入邮件管理系统
目前的hints提供了jbourne/?????猜测是否为用户登陆的账户和密码
访问/suppliermail
360截图20190104113844207.jpg-36.1kB
image.png-97.9kB
发现成功登陆,在邮件中寻找信息
image.png-27.3kB
发现了第五个flag以及hints

Flag5{RXZlcnl0aGluZyBpcyBlbmNyeXB0ZWQ=}
# base64解码后得到Everything is encrypted
Sr Wrnrgir
Ru blf ziv ivzwrmt gsrh R nrtsg yv mlg zorev. R szev kozxv z yzxpwlli rm Yozxpnzipvg
dliphslk fmwvi /ptyyzxpwlli ulowvi blf nfhg szev gl fhv
KzhhKzhh.qkt rm liwvi gl tvg zxxvhh.

Flag6

Sr Wrnrgir
Ru blf ziv ivzwrmt gsrh R nrtsg yv mlg zorev. R szev kozxv z yzxpwlli rm Yozxpnzipvg
dliphslk fmwvi /ptyyzxpwlli ulowvi blf nfhg szev gl fhv
KzhhKzhh.qkt rm liwvi gl tvg zxxvhh.

结合在某春秋CTF大本营的misc联系,以及flag5的hints猜想这段话应该是古典密码
找到在线解码的网站https://www.quipqiup.com/
进行解码:
image.png-78kB
获取hints

    Hi Dimitri If you are reading this I might be not alive. I have place a backdoor in Blackmarket workshop under /kgbbackdoor folder you must have to use PassPass.jpg in order to get access.

大意就是网站存在后门,我们需要在/kgbbackdoor目录下找到PassPass.jpg再进行下一步的内容
直接访问:为了防止出现控制台隐藏的hints,F12进行查看未发现异常
image.png-82.7kB
到这里就是信息收集以及提取的结果了
结合五个flag的信息和hints
hints中都出现了workshop,在注入过程中同样出现了eworksop
猜测是否存在workshop目录或eworkshop目录
image.png-75kB
经测试都未发现存在路径,之后猜想,是否是更改了前缀名存在目录

If anyone reading this message it means you are on the right track however I do not have any idea about the CIA blackmarket Vehical workshop. You must find out and hack it!

根据flag2的hints猜测前缀名目录为:
Cworkshop/cworkshop
Bworkshop/bworkshop
Vworkshop/vworkshop

经测试在vworkshop目录下发现
image.png-1166.6kB
下载照片到本地,图片隐写,使用Notepad++打开
clipboard17.png-21.2kB
发现pass=5215565757312090656应是后门的密码
下一步就是寻找后门,使用御剑扫描一下vworkshop/kgbbackdoor
image.png-42.1kB
发现存在backdoor.php,访问打开
image.png-59.1kB
发现报错页面和普通的不一样,在控制台程序发现异常:
image.png-56.3kB
需要将pass使用POST传入后台
使用火狐hackbar传参
image.png-15.4kB
发现没反应,发现pass的可疑,使用在线转换
将十进制数转换为ASCII
pass=HailKGB
image.png-12.4kB
进入后台,发现flag6
clipboard20.png-31.9kB

flag6{Um9vdCB0aW1l} 
#base64解码得到Root time

自此六个flag都已经得到


木马连接

将自己的小马上传,上传位置:/var/www/html
clipboard21.png-56.6kB
url访问555.php发现未报错证明上传成功
clipboard66.png-13.1kB
使用蚁剑连接,成功!
clipboard88.png-92.4kB


作者 @Pdsdt
2018 年 01月 04日

发表评论

电子邮件地址不会被公开。 必填项已用*标注