靶机BlackMarket
工具:nmap、dirbuster、dirb、sqlmap、cewl、crunch、hydra
涉及的漏洞:弱口令
垂直越权
SQL注入
CVE-2016-5195脏牛提权(内核竞争提权漏洞)
flag1
这个靶机有六个flag,五个常规的flag和一个root权限下的flag。
寻找靶机IP地址
nmap -sP 192.168.1.*
发现主机,靶机IP地址192.168.1.9
nmap -p- -sS -v -sV 192.168.1.9
扫描靶机开放的端口。开放了ftp服务、Web服务。

访问80端口拿到一个登陆界面。查看源码在最后面拿到第一个flag。Web登录页面没有验证码,ftp也可以访问,但是需要账号密码,这里保留对两处爆破的想法。

base64解密得到的结果是CIA - Operation Treadstone,google了一下这好像是一部影片
flag1{Q0lBIC0gT3BlcmF0aW9uIFRyZWFkc3RvbmU=}
flag2
从WP来看能搜索到一个介绍CIA - Operation Treadstone的网站https://bourne.fandom.com/wiki/Operation_Treadstone
利用cewl爬取网站生成关联词字典。
cewl https://bourne.fandom.com/wiki/Operation_Treadstone -d 1 -w BlackMarket_dic.txt
拿生成的字典对账号密码利用hydra进行爆破。爆破ftp
因为cewl太给力,爬了几千条数据,账号密码结合爆破产生了二十多万条数据,后面自己删成一百多条进行爆破,还好可以爆破,不然还真不知道得等多久。

拿到ftp的账号密码登录。在ftp里面拿到第二个flag.
flag2{Q29uZ3JhdHMgUHJvY2VlZCBGdXJ0aGVy}
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!
如果有人阅读了此消息,则意味着您处在正确的轨道上,但是我对CIA黑市车辆工作坊一无所知。
您必须找出并破解它!
flag3
这提示跟没有似的,没懂什么意思。在渗透测试中如果遇到阻碍,那就继续进行信息搜集。
扫目录:

访问这个302可以跳转到另一个登录界面。

看到了Squirrelmail的版本号, 搜一波Squirrelmail远程代码执行漏洞(CVE-2017-7692),但是这个漏洞的前提是有一个可以登录的邮箱账号和密码,那先放在这吧。
其实自己做到这里思路断了,不知道用什么方法去拿到Web服务下的账号密码。其实这里是利用了弱口令。/supplier这个目录会302重定向到Web登录界面,账号密码就是supplier/supplier。自己还是嫩了点。登录到网站的后台。之后就是一个垂直越权漏洞,在扫目录的时候还扫到了/user和/admin目录。我们可以从/supplier目录越权到/admin。

成功越权到admin用户。因为校验session的时候没有与一起目录进行校验,导致垂直越权。
接着在编辑用户资料的时候发现了url存在id参数

加个单引号报错,再加个单引号恢复正常,存在sql注入。尝试SQLMap注入:
sqlmap -r post.txt --level 5 --dbs --batch
获取库名

sqlmap -r post.txt --level 5 -D BlackMarket --tables --batch
获取表名

sqlmap -r post.txt --level 5 -D BlackMarket -T flag --column --batch
获取列名。

拿到flag3,意思是查找Jason Bourne电子邮件访问权限

flag4
拿到flag4是利用了平行越权漏洞,漏洞点还是在修改用户信息处,没创建一个新的用户,都会相应的产生一个新的id,不同的id对应不同的用户,将id修改成1,密码改成123,用户名改成hel10.成功的覆盖了admin的密账号,现在hel10这个账号对应的id为1,也就是对应到了管理员权限。

然后用hel10/123登录,拿到flag4,告诉我们Jason Bourne邮箱的密码是?????

flag5
一开始我们就拿到了一个邮箱的登录界面,开始的想法是利用已知的漏洞去攻击,但是现在可以不用了,我们知道了密码。用户名应该和Jason Bourne有关,试了一下,用户名是Jbourne。用Jbourne/????登录。
在邮箱里面拿到flag5,意思是他拿到一段信息不会解密。

啥也不说,没见过(置换密码(古典密码))。解密平台https://www.quipqiup.com/

告诉我们/kgbbackdoor,目录下他留了一个后门,后门是一张叫PassPass.jpg的图片,但是没有路径。前面目录爆破也没有。前面我们暴数据库的时候有一个eworkshop的库。

利用crunch生成字典进行爆破。

利用dirb爆破路径拿到路径。

访问http://192.168.1.9/vworkshop/kgbbackdoor/PassPass.jpg拿到图片、

拉到winhex。拿到后门密码

但是缺少后门路径,这个地方靠直觉了,没爆破出来。存在backdoor.php。那么后门路径就是
http://192.168.1.9/vworkshop/kgbbackdoor/backdoor.php
有一个隐藏的密码输入框看网页源码可以发现,将我们从后门图片拿到的密码输入进入,但是不对,这里需要转进制,密码是十进制的,转成十六进制再转成ascii为HailKGB。直接输入发现并没有发应,这里需要用POST传pass=HailKGB。从flag.txt拿到flag6,base64解密是Root time。

Root flag-提权
接着开始提权,先在kali监听6666端口
nc -lvnp 6666
然后利用后门的网络连接工具连接到kali的6666端口。

成功的连接到kali,利用python构建一个交互式的shell。查看系统内核。linux系统,内核版本4.4.0-31-generic。google一下可以知道这个版本可以利用CVE-2016-5195脏牛提权。这是一个内核竞争提权漏洞。

搜索脏牛漏洞的exp。我们利用第三个竞争提权的exp。

将exp复制到kali上面来,用python -m SimpleHTTPServer 8848,开启一个简单的服务,靶机用wget将exp从kali下载过去(记得下载到/tmp目录,这个目录有写入权限)。然后编译执行

拿到root权限

总结
做这个靶机花了两天的时间,中间经历了不少的挑战,但是都解决了。现在清点一下自己是怎么做的吧。cewl爬取的数据太多导致爆破时间超长。cewl一下子就爬了几千个数据,结合爆破产生了大量的数据,后面自己手动缩减了数据,只留下了一百多条,但是居然暴出来了。运气好吧。
再就是第一次用到了越权漏洞。在爆破目录的时候发现了/supplier目录和/admin目录,登录到/supplier目录下后,抓包修改可以越权到/admin目录,真的是惊喜。之后会对靶机中使用的工具和漏洞做深入的学习。包括工具的原理、漏洞成因和修补方法。
参考链接:
https://www.anquanke.com/post/id/106855
https://www.jianshu.com/p/f41e467f29d0
靶机BlackMarket的更多相关文章
- 15. CTF综合靶机渗透(八)
VM Name: BlackMarket VM Description: BlackMarket VM presented at Brisbane SecTalks BNE0x1B (28th Ses ...
- CTF线下防御战 — 让你的靶机变成“铜墙铁壁”
本文首发安全客,未经允许禁止转载.原文链接 一. 前言 随着CTF的普及,比赛的形式也有了越来越多的花样,对于线下赛来说,开始出现了安全加固或者防御战之类的环节,亦或者因为拿下靶机后不希望其他攻击者进 ...
- Ms17-010进行WEB提权之实践下某培训靶机服务器
前言:该机器为某个其他培训机构的靶机,说实话在这里没炫耀啥,只是给各位学习Ms17010的同学指一条路,我原先也折腾这玩意儿好久,但是就是不行,最近才找到了出路,所以多写两篇文章,把各种需要注意的地方 ...
- metasploit利用漏洞渗透攻击靶机
1.网络测试环境构建 首先需要先配置好一个渗透测试用的网络环境,包括如图1所示的运行Kali Linux系统的计算机,如图2所示的老师给的Windows Server 2000系统的计算机.这两台计算 ...
- web 攻击靶机解题过程
sql注入靶机攻击过程请参考 https://pentesterlab.com/exercises/from_sqli_to_shell/course http://www.sohu.com/a/12 ...
- Fowsniff: 1靶机入侵
一.信息收集 1.存活主机扫描 arp-scan -l 发现192.168.1.13是目标靶机的IP地址 2.端口扫描 接下来用nmap神器来扫描目标IP地址,命令如下: root@kali2018 ...
- digitalworld.local: MERCY靶机入侵
0x01 前言 MERCY是一个致力于PWK课程安全的靶机系统.MERCY是一款游戏名称,与易受攻击的靶机名称无关.本次实验是攻击目标靶机获取root权限并读系统目录中的proof.txt信息 靶机的 ...
- Moonraker:1靶机入侵
0x01 前言 攻击Moonraker系统并且找出存在最大的威胁漏洞,通过最大威胁漏洞攻击目标靶机系统并进行提权获取系统中root目录下的flag信息. Moonraker: 1镜像下载地址: h ...
- FourAndSix: 2.01靶机入侵
0x01 前言 FourAndSix2是易受攻击的一个靶机,主要任务是通过入侵进入到目标靶机系统然后提权,并在root目录中并读取flag.tx信息 FourAndSix2.镜像下载地址: htt ...
随机推荐
- 痞子衡嵌入式:在串口波特率识别实例里逐步展示i.MXRT上提升代码执行性能的十八般武艺
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是在串口波特率识别实例里逐步展示i.MXRT上提升代码执行性能的十八般武艺. 恩智浦 MCU SE 团队近期一直在加班加点赶 SBL 项目 ...
- 21、linux系统grup和bios加密
21.1.grup加密(加密单用户模式): 1.使用加密算法对grup密码进行加密: 2.修改grup.conf配置文件: 21.2.bios加密(因为救援模式可以破解grup加密,所以使用bios加 ...
- 9.5、zabbix高级操作(2)
4.zabbix的分布式监控: 使用zabbix-proxy主动方式(被动也可),使用zabbix-agent的主动方式(被动也可): Zabbix Server <- Zabbix Proxy ...
- layui tabs选项卡 响应试不显示问题
添加: var element = layui.element; //Tab的切换功能,切换事件监听等,需要依赖element模块 element.init();
- 线程中的join()
http://blog.itpub.net/31555134/viewspace-2221319/ 一直对join()方法不是很理解,在A线程中, B线程调用了join()方法,然后在内部实际是wai ...
- GKCTF X DASCTF 2021_babycat复现学习
17解的一道题,涉及到了java反序列化的知识,学习了. 看了下积分榜,如果做出来可能能进前20了哈哈哈,加油吧,这次就搞了两个misc签到,菜的扣脚. 打开后是个登录框,sign up提示不让注册, ...
- gitlab配置邮箱服务
目录 1. SMTP服务 2. 服务端配置 3. 更新配置 4. 邮件测试 当需要进行 账号注册,创建项目,或合并分支等操作时,可通过邮件通知.邮件验证的方式实现. 1. SMTP服务 用于配置在服务 ...
- python使用笔记24--面向对象编程2
类方法 类里面自带的方法,不用实例化就可以调用,想象,模型上自带的功能 类方法是公共的,在实例方法里面可以随意调用 但是在类方法里不能调用实例方法,不能使用实例变量,但是他可以调用其他的类方法 1 @ ...
- Git错误:unable to access 'https://git.voicegu.com/qa/qa.git/': SSL certificate problem: unable to get local issuer certificate
fatal: unable to access 'https://git.voicegu.com/qa/qa.git/': SSL certificate problem: unable to get ...
- JDK环境配置: javac is not recognized as an internal or external command, operable program or batch file
相信大家在配置TestNG的时候,首先都会去确认JDK的安装是否正确,两个命令缺一不可. 打开'cmd' --> 1. 输入'java -version', 返回java home当前路径. j ...