TryHackMe - Include
使用服务器利用技能来控制 Web 应用程序。
1.SSRF(服务器端请求伪造) SSRF(Server-Side Request Forgery)是一种网络攻击方式,攻击者利用应用程序的功能直接向服务器发起请求。此类攻击通常通过欺骗应用程序去访问内部或外部资源,从而获取敏感信息或影响服务器行为。
2.本地文件包含(LFI) 攻击者构造请求来访问本地文件。这种类型的攻击被称为本地文件包含(LFI,Local File Inclusion)。通过LFI,攻击者可以读取服务器上的敏感文件,获取环境变量,用户凭证等。
3.远程代码执行(RCE) 如果攻击者成功利用LFI,并且应用程序允许特定文件(如PHP文件、日志文件)被执行,攻击者可能还会进一步实现远程代码执行(RCE,Remote Code Execution)。这意味着攻击者可以在服务器上运行任意代码,从而完全控制目标系统。
外部主动信息收集
nmap
循例nmap
Web枚举
4000端口 - 目录扫描
feroxbuster扫
50000端口 - 目录扫描
feroxbuster扫
4000端口 - 越权
可以通过直接修改url的id访问到其它用户信息
不过这并没有提供更多信息,但有一个引人注目的字段属性isAdmin
但很遗憾我们已知的三个用户都不是admin
经过id枚举也依然没有枚举出更多用户
在profile的最下面有一个表单,随便输点东西并提交它,发现可以新增字段,并且可以修改原有的字段
那么接下来就是常规操作,直接修改guest的isAdmin
字段为true,看看权限是否发生变化
当我们刷新页面后,我们的页面右上角将会出现我们期待的东西
SSRF
有个开在内网的api
在setting中可以看到可以设置url,服务端将访问url下载image
随手开个nc,没有问题
给个.php文件,发现它把文件内容读了出来,并且进行base64
那么思路也很显而易见了,直接访问internal api获取administrator的密码
有了它我们能够访问50000端口的sysmon,同时拿到第一个flag
LFI -> RCE
burp logger可以看到profile.png图片是通过文件包含出来的
但这里有过滤,不过只是简单的进行了两次的../
replace,进行三次../
就能绕过去
但没有日志
RCE
在最初的端口扫描中,存在smtp、pop3、imap那一堆服务,并且在最开始我尝试用户枚举但并没有什么结果
现在我们可以尝试读smtp的日志文件/var/log/mail.log
没有问题,接下来就是常规的登录恶意用户名达到控制log文件内容从而实现rce
php代码能够被解析
直接读flag下机
原文始发于微信公众号(APT250):SSRF到本地文件包含,再到RCE - Include
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论