VM Name:

BlackMarket

VM Description:

BlackMarket VM presented at Brisbane SecTalks BNE0x1B (28th Session) which is focused on students and other InfoSec Professional. This VM has total 6 flag and one r00t flag. Each Flag leads to another Flag and flag format is flag{blahblah}.

Shoutout to @RobertWinkel and @dooktwit for hosting at SecTalk Brisbane

If you get stuck in rabbit hole and need hints hit me up on twitter. Have fun!

VM Difficulty Level:

Beginner/Intermediate

What will you learn?

Learn about how to enumerate your target and join dots in order to pwn this VM.

VM Tested:

VMware Player VirtualBox

Networking:

DHCP Enabled

Author:

AcEb0mb3R Twitter: @Acebomber911

信息收集

  • ip发现

  • 首先攻击机kali本机的IP为 192.168.0.104

启动BlackMarket虚拟机,虚机网络设置为dhcp,使用Nmap扫描,即可找到虚机IP,命令:

nmap -sP 192.168.0.0/24

获得靶机ip 192.168.0.130

端口和服务识别

使用nmap扫描1-65535全端口,并做服务识别和深度扫描(加-A参数),命令:

nmap -T4 -A -v 192.168.0.130 -p 0-10000

端口开得有点多

我们看具体信息

发现了几个敏感端口:

21端口  ---> ftp服务

22端口  ---> ssh服务

80端口  ---> Apache服务

我们访问靶机主页:

发现是个寻常登陆框,我们从web入手,也就是查看/robots.txt,查看源代码等

额...不慌,我们查看源代码

WTF??? surprise!!!!  我们得到了flag,不过这个flag的内容....有点像base64...,解码看看

CIA - Operation Treadstone

这个东西...完全没有一点思路好吧...Google一把

.....什么鬼

接下来,我们用kali自带的工具cewl来爬行网站获取关键信息创建一个密码字典,命令:

cewl -d 1 -w out.txt http://bourne.wikia.com/wiki/Operation_Treadstone

参数解释:-m:最小单词长度
                     
-d:爬网深度
                      -c:每个单词出现的次数

生成字典 out.txt :

根据前面端口扫描,我们发现他开启了ftp的21端口,使用kali自带的hydra进行爆破:

(hydra用法详解:https://blog.csdn.net/zhaohongjuan/article/details/53838405

经过一大段时间的尝试...

终于得到用户名跟密码  :   nicky/CIA

迫不及待登陆一下ftp:

打开是一个目录,一层一层拨开...

得到第二个flag,但是还有其他内容

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黑市车辆车间一无所知。你必须找出并破解它!

看来还没有结束...

我们用御剑或者kali自带工具dirb来扫一波目录:

302跳转,403禁止访问,能访问的也就是一个登陆页面...

看来还是kali比较先进...我们尝试访问

经过一波尝试,我们除了我们最初看到的登陆页面,也只有/squirrelmail,/supplier

这两个目录可以正常访问...其他基本都是403,404...

我们分别分析:

访问一下/supplier目录:

mmp!又回到了最初的index登陆页面,

看来要尝试登陆....经过很长时间的尝试,各种弱口令,万能密码

竟然发现,登录名跟密码是  supplier/supplier

果然是意想不到,竟然是这个目录名,登陆:

感觉好像是,后台...应为可以修改,删除商品信息

我们赶快访问那些403页面,有/user,/admin

果然是商品出售的网页,我们访问/admin,我们就是以普通用户的身份登入系统:

添加用户,跟发布商品都不算什么

现在我们的目的就是拿到超级管理员admin的密码来登陆...进而拿到flag

这时就要查看这个网站有没有什么漏洞

当我们尝试编辑用户时发现:

发现当我们编辑不同的用户时,用户的id参数不同,这就存在平行越权,我们来证明一下:

创建一个测试用户,用户名123 / 密码123

创建成功

我们发现此时id参数为7

还记得我们id=5的用户为 Dimitri Volkof

我们尝试修改一下参数id的值

点击确定,来更新参数id=5的用户信息

发现如我们所料,通过修改id的值,可以修改其他用户信息,存在平行越权

这样的话,我们创建用户admin,只要把id设为1,密码随意,就可以得到flag

也许有的人会问为什么id=1就代表admin...这个我只能说是经验吧...

我们创建用户admin,并修改参数id=1

然后重新登陆:

我们得到flag

经过测验我们发现

商品发布处也有id操控,同样存在平行越权:

同时我们发现有个文件上传的地方,多次实验无果,如果哪位小伙伴测出来了,麻烦留个言给我,谢谢

另外在burp抓的包中,我们发现提交方式为POST,id可控,怀疑存在POST型SQL注入:

我们用sqlmap来跑一波:

我们继续深入爆表:

我们爆出flag这个表的内容:

我们继续深入:

怎么感觉这个称不上是flag,Information的内容是:

Find Jason Bourne Email access

Jason Bourne这个好像在user出现过,我们尝试sqlmap来获得用户Jason Bourne的密码:

sqlmap完全解不出来...

但是起码我们可以得到用户名为 jbourne

结合刚刚的得到的flag,

密码就是 ?????

我们访问目录 /squirrelmail

结合刚刚的得到的用户名跟密码    jbourne/?????

登陆成功:

在INBOX.Trash也就是回收站的地方得到flag

看着像base64加密,解密看看  :   Everything is encrypted...

额.我们来分析一下两个人的对话部分

HELLO Friend,

I have intercept the message from Russian's some how we are working on the same
direction, however, I couldn't able to decode the message.

//我拦截了来自俄罗斯人的信息,一些我们是如何工作的。 然而,我无法解码这个消息。
<Message Begins> 

Sr Wrnrgir
Ru blf ziv ivzwrmt gsrh R nrtsg yv mlg zorev. R szev kozxv z yzxpwlli rm Yozxpnzipvg
dliphslk blf nfhg szev gl KzhhKzhh.qkt rm liwvi gl szxp rm rg. </end>

我也无法解码...这个消息

后来参照别人的,才知道这是一个置换密码(古典加密)

通过https://www.quipqiup.com/ 解密得到:

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 PassPass.jpg in order to hack in it.

通过以上信息得知/kgbbackdoor目录下有个后门,这个后门是一张名为PassPass.jpg的图片,但是得想办法找到上一级目录

ctf果然不能忽视任何一个小细节,还记得我们用sqlmap跑出来两个数据库,一个叫 BlackMarket ,一个叫 eworkshop

现在问题就在这  eworkshop 上,我们使用crunch来生成字典:

我们用dirb来跑这个字典

最后发现 /vworkshop 这个目录,我们结合提示,加上字段访问:

是一张写着Backdoor的后门图片,一看就不简单,用vim打开

密码为:Pass = 5215565757312090656

我们既然得到一个新目录 /vworkshop/kgbbackdoor ,下面应该好有好东西吧,我们dirb扫一下

额,什么也扫不出来,那也只有猜了,会不会存在backdoor.php,谁让他叫后门呢...

返回值是200,你给我玩这个...估计是敏感信息隐藏

查看源代码;

呵呵,有点东西....

结合我们得到的密码....发现总是错误...

其实那个是密码的十进制,需要转换:

十进制:5215565757312090656

十六进制:4861696c4b474400

ASCii: HailKGD

密码为:HailKGD

成功登陆后门shell,拿到flag:

下一步提权就比较简单了, 在有权限的目录下上传提权EXP,反弹一个shell,执行该EXP即可。
本菜这次提权使用的脏牛,提权成功!

大家也可以使用其他EXP提权

15. CTF综合靶机渗透(八)的更多相关文章

  1. 22. CTF综合靶机渗透(十五)

    靶机说明: Game of Thrones Hacking CTF This is a challenge-game to measure your hacking skills. Set in Ga ...

  2. 21. CTF综合靶机渗透(十四)

    靶机说明: I created this machine to help others learn some basic CTF hacking strategies and some tools. ...

  3. 18. CTF综合靶机渗透(十一)

    靶机描述: SkyDog Con CTF 2016 - Catch Me If You Can 难度:初学者/中级 说明:CTF是虚拟机,在虚拟箱中工作效果最好.下载OVA文件打开虚拟框,然后选择文件 ...

  4. 17. CTF综合靶机渗透(十)

    靶机描述:欢迎来到超级马里奥主机!这个虚拟机是对真实世界场景场景的模拟.目标是在VM中找到2个标志.根是不够的(对不起!)VM可以以多种方式开发,但请记住枚举是关键.挑战的程度是中等的.感谢VDBAN ...

  5. 13. CTF综合靶机渗透(六)

    靶机说明 Breach1.0是一个难度为初级到中级的BooT2Root/CTF挑战. VM虚机配置有静态IP地址(192.168.110.140),需要将虚拟机网卡设置为host-only方式组网,并 ...

  6. 20. CTF综合靶机渗透(十三)

    靶机说明: Wellcome to "PwnLab: init", my first Boot2Root virtual machine. Meant to be easy, I ...

  7. 14. CTF综合靶机渗透(七)

    靶机说明 NinevehV0.3.7z是一个难度为初级到中级的BooT2Root/CTF挑战. VM虚机配置有静态IP地址(192.168.0.150) 目标 Boot to root:获得root权 ...

  8. 25. CTF综合靶机渗透(17)

    靶机链接 https://www.vulnhub.com/entry/the-ether-evilscience,212 运行环境 本靶机提供了VMware的镜像,从Vulnhub下载之后解压,运行v ...

  9. 19. CTF综合靶机渗透(十二)

    靶机说明: 靶机主题来自美剧<黑客军团> 本次靶机有三个flag,难度在初级到中级,非常适合新手训练学习,不需要逆向技术,目标就是找到三个key,并且拿到主机root权限. 渗透过程: 本 ...

随机推荐

  1. HDU 之 I Hate It

                                                                                    I Hate It Time Limit ...

  2. 剑指offer之 二叉搜索树与双向链表

    class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) ...

  3. 百度编辑器 Ueditor 如何增加字体 ?

    在百度编辑器 Ueditor 如何增加字体 ? 要修改两个文件: 第一个文件:editor-config.js: ,'fontfamily':[             { label:'',name ...

  4. Web Worker浅学

    Web Workers 是 HTML5 提供的一个javascript多线程解决方案,我们可以将一些大计算量的代码交由web Worker运行而不冻结用户界面.它独立于其他脚本,不会影响页面的性能.您 ...

  5. python3字符串属性(二)

    1.S.isdecimal() -> bool    Return True if there are only decimal characters in S, False otherwise ...

  6. Java企业微信开发_02_通讯录同步

    一.本节要点 1.获取通讯录密钥 获取方式: 登录企业微信—>管理工具—>通讯录同步助手—>开启“API接口同步”  ; 开启后,即可看到通讯录密钥,也可设置通讯录API的权限:读取 ...

  7. 如何更好的理解js中的this,分享2段有意思的代码

    关于js中this的浅析,大家可以点击[彻底理解js中this的指向,不必硬背]这篇博客了解. 今天遇到2段比较有意思的代码. ----------------第一段----------------- ...

  8. SQL关联查询中on与where

    微信公众号:刺刺刺猬的优雅 前段时间,做一个查询,打算用left join查询存在于A表但不存在于B表记录,但怎么查都不对,原因是把所有filter全部放在了where语句中,因此回头看了资料,记录一 ...

  9. Struts2 - 通过 ActionContext 访问 Web 资源

    public String execute(){ //0. 获取 ActionContext 对象 //ActionContext 是 Action 的上下文对象. 可以从中获取到当往 Action ...

  10. hdu 4372 Count the Buildings —— 思路+第一类斯特林数

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=4372 首先,最高的会被看见: 然后考虑剩下 \( x+y-2 \) 个被看见的,每个带了一群被它挡住的楼, ...