漏洞链攻击实战:LFI+任意文件上传实现远程代码执行
在完成OSCP认证后,我决定尝试漏洞赏金计划,因为OSCP培训提升了我的漏洞利用技能。
我将使用lol.com来代表实际应用程序,因为不能披露真实网站名称。
在枚举应用程序时,我获得了一个域,该域基本上是一个图片服务器,负责管理用户上传的图片。在进一步枚举过程中,我发现了一个端点,该端点允许我调用服务器本地文件,如passwd、cron作业和服务器上当前运行的服务。
由于这是一个图片服务器,意味着服务器存储了用户从其个人资料上传的所有图片。
我再次回到lol.com,开始寻找图片上传功能,找到了个人资料照片选项,该选项允许我将照片上传到应用程序,而这些照片最终存储在图片服务器上。
图片上传功能有一个ext参数,用于文件扩展名检查,但由于参数验证不当,我能够篡改值并在服务器上上传任意文件。我尝试上传PHP shell,但由于是图片服务器,它不会执行PHP文件。通过LFI进一步侦察,我了解到可以通过Perl获取shell,因此我上传了一个Perl反向shell来在我的公共IP上获取反向shell。
通过使用LFI调用该文件,我在我的公共IP上成功获得了反向shell。
感谢阅读,希望大家喜欢这篇文章。