帆软报表安全漏洞分析与getshell技巧

0 下载量 79 浏览量 更新于2024-08-03 收藏 819KB PDF 举报
"帆软报表绕过各种限制getshell.pdf" 这篇文档主要讲述了如何利用帆软报表系统中的漏洞来实现远程代码执行(getshell)的过程。帆软报表是一款广泛使用的报表设计和数据分析工具,但可能存在一些未修复的安全漏洞。以下是详细的知识点解析: 1. **URL编码绕过**: - 当尝试访问`https://xxxx/ReportServer`时,系统可能对某些参数进行了限制。通过将`fs_load`参数修改为`fsa_load`或者将其URL编码为`%66%73%5f%6c%6f%61%64`,可以绕过部分限制,成功访问登录页面。 2. **WAF(Web应用防火墙)绕过**: - 使用特定的payload(如`/ReportServer?op=chart&cmd=get_geo_json&resourcepath=privilege.xml`)尝试读取敏感文件`privilege.xml`,但被WAF拦截。通过在GET请求和路径之间插入大量空格,成功规避了WAF的检测。 3. **任意文件读取与解密**: - 成功读取到账号和加密的密码,这表明系统存在任意文件读取漏洞。通过解密这些信息,攻击者可以获取登录凭据。 4. **上传插件并移动到Web根目录**: - 制作一个包含恶意代码的插件并上传到系统,随后将该插件移动到Web根目录,为执行远程代码做准备。 5. **目录遍历漏洞利用**: - 由于访问shell路径返回404错误,攻击者利用目录遍历漏洞(例如`/xxx/ReportServer/..;/test/1.jsp`)尝试查找并确认shell的位置。 6. **URL路径限制绕过**: - 发现只有URL以`/xxx/ReportServer`开头的请求才会被转发到后端服务器。通过构造特定的URL,如`/xxx/ReportServer/..;/test/1.jsp`,可以绕过访问限制,访问到被隐藏的shell。 这些步骤揭示了网络安全中常见的攻击手段,包括但不限于URL编码绕过、WAF规避、任意文件读取、密码解密、上传后门以及路径遍历。同时,这也提醒系统管理员需要定期更新和修补软件,以防止类似的漏洞被利用。对于企业来说,实施严格的安全策略,包括安装和维护WAF,限制不必要的文件访问,以及监控异常行为,是防止此类攻击的关键。