15. CTF综合靶机渗透(八)
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综合靶机渗透(八)的更多相关文章
- 22. CTF综合靶机渗透(十五)
靶机说明: Game of Thrones Hacking CTF This is a challenge-game to measure your hacking skills. Set in Ga ...
- 21. CTF综合靶机渗透(十四)
靶机说明: I created this machine to help others learn some basic CTF hacking strategies and some tools. ...
- 18. CTF综合靶机渗透(十一)
靶机描述: SkyDog Con CTF 2016 - Catch Me If You Can 难度:初学者/中级 说明:CTF是虚拟机,在虚拟箱中工作效果最好.下载OVA文件打开虚拟框,然后选择文件 ...
- 17. CTF综合靶机渗透(十)
靶机描述:欢迎来到超级马里奥主机!这个虚拟机是对真实世界场景场景的模拟.目标是在VM中找到2个标志.根是不够的(对不起!)VM可以以多种方式开发,但请记住枚举是关键.挑战的程度是中等的.感谢VDBAN ...
- 13. CTF综合靶机渗透(六)
靶机说明 Breach1.0是一个难度为初级到中级的BooT2Root/CTF挑战. VM虚机配置有静态IP地址(192.168.110.140),需要将虚拟机网卡设置为host-only方式组网,并 ...
- 20. CTF综合靶机渗透(十三)
靶机说明: Wellcome to "PwnLab: init", my first Boot2Root virtual machine. Meant to be easy, I ...
- 14. CTF综合靶机渗透(七)
靶机说明 NinevehV0.3.7z是一个难度为初级到中级的BooT2Root/CTF挑战. VM虚机配置有静态IP地址(192.168.0.150) 目标 Boot to root:获得root权 ...
- 25. CTF综合靶机渗透(17)
靶机链接 https://www.vulnhub.com/entry/the-ether-evilscience,212 运行环境 本靶机提供了VMware的镜像,从Vulnhub下载之后解压,运行v ...
- 19. CTF综合靶机渗透(十二)
靶机说明: 靶机主题来自美剧<黑客军团> 本次靶机有三个flag,难度在初级到中级,非常适合新手训练学习,不需要逆向技术,目标就是找到三个key,并且拿到主机root权限. 渗透过程: 本 ...
随机推荐
- Vue mixins extends extend components
mixins 调用方式: mixins: [mixin1, mixin2] 是对父组件的扩充,包括methods.components.directive等... 触发钩子函数时,先调用mixins的 ...
- Nginx/Apache下如何禁止指定目录运行PHP脚本
下面和大家一起分享下如何在Apache和Nginx禁止上传目录里PHP的执行权限. Apache下禁止指定目录运行PHP脚本 在虚拟主机配置文件中增加php_flag engine off指令即可,配 ...
- 代码题(3)— 最小的k个数、数组中的第K个最大元素、前K个高频元素
1.题目:输入n个整数,找出其中最小的K个数. 例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4. 快排思路(掌握): class Solution { public ...
- Java企业微信开发_05_消息推送之被动回复消息
一.本节要点 1.消息的加解密 微信加解密包 下载地址:http://qydev.weixin.qq.com/java.zip ,此包中封装好了AES加解密方法,直接调用方法即可. 其中,解 ...
- JdbcUtils针对事务问题作出的第三次修改
DAO中的事务 其实在DAO中处理事务真的是“小菜一碟” try{ con.commit(); }catch(Exception e){ con.rollback(); } 但是dao层中只能是对账户 ...
- python中类__call__方法与@classmethod
实现了__call__方法的类就变成了一个可调用对象,可以像函数一样调用,callable(obj)就返回True,否则返回False. 参考:https://www.cnblogs.com/supe ...
- JSTL标签提示:"items" does not support runtime expressions
今天在使用JSTL的 c:forEach 标签时,jsp提示:"items" does not support runtime expressions,后来才发现是因为taglib ...
- BZOJ1216:[HNOI2003]操作系统
我对模拟的理解:https://www.cnblogs.com/AKMer/p/9064018.html 题目传送门:https://www.lydsy.com/JudgeOnline/problem ...
- poj 3469 Dual Core CPU——最小割
题目:http://poj.org/problem?id=3469 最小割裸题. 那个限制就是在 i.j 之间连双向边. 根据本题能引出网络流中二元关系的种种. 别忘了写 if ( x==n+1 ) ...
- bzoj 2039 & 洛谷 P1791 人员雇佣 —— 二元关系最小割
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2039 https://www.luogu.org/problemnew/show/P1791 ...