工具: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的更多相关文章

  1. 15. CTF综合靶机渗透(八)

    VM Name: BlackMarket VM Description: BlackMarket VM presented at Brisbane SecTalks BNE0x1B (28th Ses ...

  2. CTF线下防御战 — 让你的靶机变成“铜墙铁壁”

    本文首发安全客,未经允许禁止转载.原文链接 一. 前言 随着CTF的普及,比赛的形式也有了越来越多的花样,对于线下赛来说,开始出现了安全加固或者防御战之类的环节,亦或者因为拿下靶机后不希望其他攻击者进 ...

  3. Ms17-010进行WEB提权之实践下某培训靶机服务器

    前言:该机器为某个其他培训机构的靶机,说实话在这里没炫耀啥,只是给各位学习Ms17010的同学指一条路,我原先也折腾这玩意儿好久,但是就是不行,最近才找到了出路,所以多写两篇文章,把各种需要注意的地方 ...

  4. metasploit利用漏洞渗透攻击靶机

    1.网络测试环境构建 首先需要先配置好一个渗透测试用的网络环境,包括如图1所示的运行Kali Linux系统的计算机,如图2所示的老师给的Windows Server 2000系统的计算机.这两台计算 ...

  5. web 攻击靶机解题过程

    sql注入靶机攻击过程请参考 https://pentesterlab.com/exercises/from_sqli_to_shell/course http://www.sohu.com/a/12 ...

  6. Fowsniff: 1靶机入侵

    一.信息收集 1.存活主机扫描 arp-scan  -l 发现192.168.1.13是目标靶机的IP地址 2.端口扫描 接下来用nmap神器来扫描目标IP地址,命令如下: root@kali2018 ...

  7. digitalworld.local: MERCY靶机入侵

    0x01 前言 MERCY是一个致力于PWK课程安全的靶机系统.MERCY是一款游戏名称,与易受攻击的靶机名称无关.本次实验是攻击目标靶机获取root权限并读系统目录中的proof.txt信息 靶机的 ...

  8. Moonraker:1靶机入侵

      0x01 前言 攻击Moonraker系统并且找出存在最大的威胁漏洞,通过最大威胁漏洞攻击目标靶机系统并进行提权获取系统中root目录下的flag信息. Moonraker: 1镜像下载地址: h ...

  9. FourAndSix: 2.01靶机入侵

      0x01 前言 FourAndSix2是易受攻击的一个靶机,主要任务是通过入侵进入到目标靶机系统然后提权,并在root目录中并读取flag.tx信息 FourAndSix2.镜像下载地址: htt ...

随机推荐

  1. python读取json文件制作股票价格走势

  2. Pytest学习笔记9-失败重跑

    前言 在进行自动化测试的过程中,我们一定会有这样的需求:希望失败的用例可以自动重跑 在pytest中,提供了pytest-rerunfailures插件可以实现自动重跑的效果 插件安装 pip命令安装 ...

  3. 26、mysqlsla慢查询日志分析工具

    1.介绍: mysqlsla是hackmysql.com推出的一款MySQL的日志分析工具,可以分析mysql的慢查询日志.分析慢查询非常好用,能针 对库分析慢查询语句的执行频率.扫描的数据量.消耗时 ...

  4. 一、.Net Core 依赖注入详解及Autofac使用

    .NET中的依赖注入实际上帮助我们解耦了我们的代码,是控制反转和依赖反转原则的具体实现. .Net Core的依赖注入的好处: 1. application 更稳定,容易维护和演化: 2. 实现细节的 ...

  5. InterlliJ Debug启动提示:Method breakpoints may dramatically slow down debugging

  6. python二进制读写及特殊码同步

    python对二进制文件的操作需要使用bytes类,直接写入整数是不行的,如果试图使用f.write(123)向文件中以二进制写入123,结果提示参数不是bytes类型. import os impo ...

  7. svn创建新分支报错:svn: E155015: Aborting commit: XXX remains in conflict

    用diea在对svn创建新分支的时候报错,错误为 svn: E155015: Aborting commit: XXX remains in conflict 百度和查阅资料后得知,此错误为分支被拉取 ...

  8. 在docker的镜像中安装vim

    在使用docker容器时,有时候里边没有安装vim,敲vim命令时提示说:vim: command not found,这个时候就需要安装vim,可是当你敲apt-get install vim命令时 ...

  9. 『与善仁』Appium基础 — 2、常用Android模拟器的安装

    目录 1.Android Virtual Devices模拟器 2.Genymotion模拟器 (1)Genymotion模拟器下载 (2)模拟器Genymotion安装 (3)Genymotion模 ...

  10. Python3 MySQL 数据库连接 - PyMySQL 驱动

    什么是 PyMySQL? PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2中则使用mysqldb. PyMySQL 遵循 Python 数据库 AP ...