ScriptKiddie
#0 信息收集
Namp 扫描端口,根据端口开放情况切入点应该在5000端口上。
─[sg-vip-1]─[10.10.14.19]─[htb-z4yn@htb-2t3aamavbq]─[~]
└──╼ [★]$ nmap 10.10.10.226 -p-
Starting Nmap 7.80 ( https://nmap.org ) at 2021-04-20 02:13 UTC
Nmap scan report for 10.10.10.226
Host is up (0.0024s latency).
Not shown: 65533 closed ports
PORT STATE SERVICE
22/tcp open ssh
5000/tcp open upnp
Nmap done: 1 IP address (1 host up) scanned in 5.23 seconds
─[sg-vip-1]─[10.10.14.19]─[htb-z4yn@htb-2t3aamavbq]─[~]
└──╼ [★]$ nmap 10.10.10.226 -p22,5000 -A
Starting Nmap 7.80 ( https://nmap.org ) at 2021-04-20 02:14 UTC
Nmap scan report for 10.10.10.226
Host is up (0.0024s latency).
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 8.2p1 Ubuntu 4ubuntu0.1 (Ubuntu Linux; protocol 2.0)
5000/tcp open http Werkzeug httpd 0.16.1 (Python 3.8.5)
|_http-server-header: Werkzeug/0.16.1 Python/3.8.5
|_http-title: k1d'5 h4ck3r t00l5
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 6.83 seconds
5000端口上搭建的是一个工具页面,集成了Namp、msfvenom、searchlsploit。根据nmap扫描结果显示用的是python的Werkzeug
库,搜索后发现没符合的漏洞。后面试了下服务器端模板注入也并没有效果。
#1 漏洞利用 CVE-2020-7384
接下来在exploit-db上搜索到venom有个对应的命令执行漏洞。查看相关的信息,刚好页面有个上传功能。
利用exploit-db上的exp修改payload,生成apk时并不成功,试了好久可能是环境有问题。
接着根据CVE编号在attackerKB上找到了一个msf的模块,链接贴在文章末尾。
wget 下载下来导入到msf中
配置相关参数,生成apk文件
把msf生成的apk上传上去,然后再攻击机上起监听,便能成功弹回Shell。
#2 提权
查找对提权有用的信息。在passwd中看到还有另一个用户pwn。
在pwn家目录下有个scanlosers.sh脚本,查看一下内容。
大概是到kid的家目录下读取logs/hackers的“ip”来执行nmap扫描。可控变量为{ip},cut、sort等命令可以现查一下。
构造payload,这是最终的payload。之前自己前面忘记加空格,请教了大佬才顿悟。
成功弹回pwn的Shell,直接现sudo -l查看权限。
有个msfconsole免密码运行的。
直接sudo执行命令,可以在msf中执行命令(开始还有点懵。。。)
参考
msf模块:https://github.com/rapid7/metasploit-framework/blob/master/modules/exploits/unix/fileformat/metasploit_msfvenom_apk_template_cmd_injection.rb