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. JAVA事件监听机制与实现

    事件监听机制的实现:参考图:事件模型_ActionEvent 为了节省资源,系统无法对某个事件进行实时的监听.故实现的机制是当发生某个事件后,处理代码将被自动运行,类似钩子一般.(回调函数) 事件有许 ...

  2. UOJ171 【WC2016】挑战NPC

    本文版权归ljh2000和博客园共有,欢迎转载,但须保留此声明,并给出原文链接,谢谢合作. 本文作者:ljh2000 作者博客:http://www.cnblogs.com/ljh2000-jump/ ...

  3. java:类集回顾

    1.类集设置的主要目的:动态的对象数组 2.类集中有以下几个接口: Collection:是存放单值的最大父接口 |- List接口:里面的内容是允许重复的 |- ArrayList, Vector, ...

  4. Python基础-MD5加密

    import hashlibm = hashlib.md5()#构造一个md5 m.update(b"Hello")#加密前必须转化成二进制字节类型print(m.hexdiges ...

  5. Java_异常_06_ Unsupported major.minor version 52.0

    二.参考资料 1.如何解决Unsupported major.minor version 52.0问题? 2.Unsupported major.minor version 52.0 3. Unsup ...

  6. 计算机_网络_01_配置IE代理

    一.配置代理 1.打开代理设置 打开chrome浏览器设置->高级设置->系统->打开代理设置 2.打开局域网设置 Internet属性->连接->局域网设置 3.配置代 ...

  7. 数学建模--matlab基础知识

    虽然python也能做数据分析,不过参加数学建模,咱还是用专业的 1. Matlab-入门篇:Hello world! 程序员入门第一式: disp(‘hello world!’) 2. 基本运算 先 ...

  8. JavaWEB - JSP及隐含对象

    ---------------------------------------------------------------------------------------------------- ...

  9. 【leetcode刷题笔记】Longest Consecutive Sequence

    Given an unsorted array of integers, find the length of the longest consecutive elements sequence. F ...

  10. freeMarker(四)——模板开发指南之模板

    学习笔记,选自freeMarker中文文档,译自 Email: ddekany at users.sourceforge.net 模板开发指南之模板 1. 总体结构 实际上用程序语言编写的程序就是模板 ...