Lerx从SSRF到GetShell
字数 1169 2025-08-20 18:17:31

Lerx CMS SSRF漏洞分析与利用:从SSRF到GetShell

漏洞概述

Lerx CMS最新版本(v6.3.0)后台在加载模板时存在SSRF(Server-Side Request Forgery)漏洞,攻击者可利用该漏洞通过远程加载恶意模板文件实现GetShell。

漏洞位置

lerx_v6.3.0\WebContent\WEB-INF\views\jsp\templet\portal\remote.jsp

漏洞分析

核心问题

  1. SSRF漏洞:系统在下载模板时未对URL来源进行安全检查,只要URL非空即可请求
  2. 文件操作漏洞:系统会自动解压下载的ZIP文件并将内容写入服务器目录

关键代码分析

漏洞主要存在于lerx_v6.3.0\src\com\lerx\handlers\TempletMainPortalHandler.java文件中:

  1. 模板路径被初始化为:templates/portal
  2. 系统会连接提供的URL下载文件
  3. 对ZIP压缩包进行解压,遍历读取ZIP中的文件并写入templetPortalDir目录
  4. 对写入的文件赋予可读权限

漏洞利用步骤

准备工作

  1. 准备一个包含WebShell的JSP文件(如冰蝎的shell.jsp)
  2. 将shell.jsp打包为ZIP文件
  3. 在攻击者主机上搭建HTTP服务(如使用Python的SimpleHTTPServer)

攻击流程

  1. 使用管理员账号登录后台(默认凭证:lerx/ilovelerx)
  2. 进入模板管理页面
  3. 选择"模板加载"功能
  4. 选择"默认模板"
  5. 点击"获取"按钮
  6. 使用Burp Suite等工具拦截请求
  7. 修改请求中的URL参数为攻击者控制的恶意ZIP文件地址
  8. 释放请求

结果验证

  1. 服务器会下载并解压恶意ZIP文件
  2. WebShell会被写入templates/portal目录
  3. 使用冰蝎等工具连接WebShell验证是否成功

漏洞复现截图

  1. 攻击者HTTP服务接收到请求,证明SSRF存在
  2. 服务器成功上传shell.jsp文件
  3. 冰蝎连接成功并执行命令

安全建议

  1. 输入验证:对模板下载URL进行严格的白名单验证
  2. 文件操作安全
    • 限制可下载的文件类型
    • 对解压操作进行安全检查
    • 限制文件写入的目录
  3. 权限控制
    • 限制模板下载功能的权限
    • 避免赋予不必要的文件系统权限
  4. 网络隔离:限制服务器对外发起请求的能力

技术要点总结

  1. 漏洞利用链:SSRF → 远程文件下载 → 自动解压 → 文件写入 → GetShell
  2. 关键点:未验证的URL输入 + 自动文件操作
  3. 利用条件:需要后台管理员权限(默认凭证或已获取凭证)

防御措施

  1. 更新到最新版本或应用官方补丁
  2. 修改默认管理员密码
  3. 在WAF/IDS中设置规则检测异常的模板下载请求
  4. 监控服务器对外发起的异常网络请求
Lerx CMS SSRF漏洞分析与利用:从SSRF到GetShell 漏洞概述 Lerx CMS最新版本(v6.3.0)后台在加载模板时存在SSRF(Server-Side Request Forgery)漏洞,攻击者可利用该漏洞通过远程加载恶意模板文件实现GetShell。 漏洞位置 lerx_v6.3.0\WebContent\WEB-INF\views\jsp\templet\portal\remote.jsp 漏洞分析 核心问题 SSRF漏洞 :系统在下载模板时未对URL来源进行安全检查,只要URL非空即可请求 文件操作漏洞 :系统会自动解压下载的ZIP文件并将内容写入服务器目录 关键代码分析 漏洞主要存在于 lerx_v6.3.0\src\com\lerx\handlers\TempletMainPortalHandler.java 文件中: 模板路径被初始化为: templates/portal 系统会连接提供的URL下载文件 对ZIP压缩包进行解压,遍历读取ZIP中的文件并写入 templetPortalDir 目录 对写入的文件赋予可读权限 漏洞利用步骤 准备工作 准备一个包含WebShell的JSP文件(如冰蝎的shell.jsp) 将shell.jsp打包为ZIP文件 在攻击者主机上搭建HTTP服务(如使用Python的SimpleHTTPServer) 攻击流程 使用管理员账号登录后台(默认凭证:lerx/ilovelerx) 进入模板管理页面 选择"模板加载"功能 选择"默认模板" 点击"获取"按钮 使用Burp Suite等工具拦截请求 修改请求中的URL参数为攻击者控制的恶意ZIP文件地址 释放请求 结果验证 服务器会下载并解压恶意ZIP文件 WebShell会被写入 templates/portal 目录 使用冰蝎等工具连接WebShell验证是否成功 漏洞复现截图 攻击者HTTP服务接收到请求,证明SSRF存在 服务器成功上传shell.jsp文件 冰蝎连接成功并执行命令 安全建议 输入验证 :对模板下载URL进行严格的白名单验证 文件操作安全 : 限制可下载的文件类型 对解压操作进行安全检查 限制文件写入的目录 权限控制 : 限制模板下载功能的权限 避免赋予不必要的文件系统权限 网络隔离 :限制服务器对外发起请求的能力 技术要点总结 漏洞利用链:SSRF → 远程文件下载 → 自动解压 → 文件写入 → GetShell 关键点:未验证的URL输入 + 自动文件操作 利用条件:需要后台管理员权限(默认凭证或已获取凭证) 防御措施 更新到最新版本或应用官方补丁 修改默认管理员密码 在WAF/IDS中设置规则检测异常的模板下载请求 监控服务器对外发起的异常网络请求