vulnhub靶机tomato记录

https://www.vulnhub.com/entry/tomato-1,557/

过程

用nmap对目标主机做全端口扫描,dirb做目录扫描,结果如下:


8888端口开放一个web服务,存在Basic认证,试了爆破无果,sun-answerbook是一个在线文档系统,但不知道具体版本,测了未授权访问的历史漏洞,发现不存在。

进入antibot_image路径下,找到info.php文件,访问发现是phpinfo信息,在注释中找到了文件包含的命令。但根据phpinfo,allow_url_include是Off,不能进行远程文件包含。

Basic认证爆破

basic认证,即在请求的Header中添加一个请求头,内容为"用户名:密码"的base64的值。

爆破也容易,把payload设置为字典,添加两个预处理,第一个时添加前缀可以为用户名+冒号例如:"admin:",第二个预处理为base64编码。

SSH写日志getshell

22端口关闭,但2211端口上运行的也是ssh服务。ssh日志记录在/var/log/auth.log,例如我们使用用户名123尝试登录,登录失败后,用户名将被记录在日志中。

那么使用登录命令:ssh '<?php @eval($_POST["a"]); ?>'@192.168.6.174 -p 2211就可以将一句话木马写入该日志文件,从而getshell。

PHP过滤器无文件RCE

PHP过滤器(PHP Filter)原是PHP中验证和过滤数据的工具,例如我们可以使用php://filter/string.rot13/resource=对字符串执行ROT13转换。无文件RCE的原理是利用php过滤器中的convert.iconv.UTF8.CSISO2022KR会始终将\x1b$)C添加到待转字符串之前,而convert.base64-decode会忽略掉任何无效的base64字符串。

因此可以利用一些字符串编码的转换,对\x1b$)C进行转换,使得只有我们想要的字符在整段字符串中是"有效"的,再利用base64的编码与解码,将"无效"的删除掉。最初的博文是做了BASE64可见字符的转换表,php_filter_chain_generator在此基础上,做了更多可见字符的转换表。


SESSION_UPLOAD_PROGRESS getshell

根据phpinfo,拿到session保存的位置:/var/lib/php/sessions。且session.auto

不过这里的session.auto_start的值为Off,不会自动化初始Session。到这里我想,既然可以读到php文件了,那是否可以去找有初始化session的文件来利用呢?

很遗憾没有找到。但为了验证猜想,在获得root权限后,新写入一个test文件,这个文件什么内容都没有,只有一句session_start();

本地写一个html文件,内容为:

随便上传一个文件,主要是为了让php生成session。

设置空payload,但数量大,不断发包,维持恶意session文件的存储。此时若结合条件竞争,上传一个不死马,并不断访问,即可getshell。

提权

这个提权没什么好说的,内核提权找payload。searchsploit linux 4.4.0用的内核提权最终找到: CVE-2017-16995 (45010)。靶机上没有gcc,在kali上编译后下载到靶机上执行。gcc 45010.c -o pwn -static

总结

  1. 本地文件包含对策:SESSION_UPLOAD_PROGRESS getshell、PHP过滤器链RCE、日志写shell
  2. 利用SESSION_UPLOAD_PROGRESS写恶意session时只需要php启用session即可,不需要该文件session有意义。
相关推荐
你怎么睡得着的!2 小时前
【护网行动-红蓝攻防】第一章-红蓝对抗基础 认识红蓝紫
网络·安全·web安全·网络安全
anddddoooo6 小时前
域内证书维权
服务器·网络·网络协议·安全·网络安全·https·ssl
顾比魁12 小时前
pikachu之CSRF防御:给你的请求加上“网络身份证”
前端·网络·网络安全·csrf
廾匸070512 小时前
《95015网络安全应急响应分析报告(2024)》
网络安全·行业报告·应急响应
仇辉攻防12 小时前
【云安全】云原生- K8S 污点横移
web安全·网络安全·云原生·容器·kubernetes·k8s·安全威胁分析
渗透测试老鸟-九青16 小时前
HW面试经验分享 | 北京蓝中研判岗
网络·经验分享·安全·网络安全·面试·渗透·代码审计
火绒终端安全管理系统1 天前
火绒终端安全管理系统V2.0【系统防御功能】
网络·安全·网络安全·火绒安全·火绒
H轨迹H1 天前
BUUCTF-Web方向16-20wp
网络安全·渗透测试·ctf·buuctf
D-river2 天前
【如何基于Debian构建Kali Linux】
linux·网络·安全·网络安全
donglxd2 天前
防御黑客系列-第一集-电脑登录记录提示和登录远程推送
windows·网络安全·电脑·系统安全