熊海CMS v1.0代码审计实战

环境搭建

源码下载地址:https://down.chinaz.com/soft/36930.htm

这里我是用宝塔搭建的,php版本使用的是5.6

代码审计

先拿工具跑一遍

1.文件包含

index.php文件包含

参数r通过GET方法接收到文件名后先检查是否为空或者为index文件,是则返回flase。然后就传给include包含,默认是包含files文件夹内的文件。

这里在files下创建了个内容为phpinfo的php文件,然后利用文件包含

接下来看admin/index.php,发现和上面那个index.php内容一样

2.xss

(1)files/content.phpSQL语句报错引起的反射型XSS

参数cid拼接入SQL语句,如果有错误会显示在页面。将cid参数值写成XSS语句,SQL语句执行错误,将xss语句一并输出显示在页面,造成反射型XSS

复制代码
/index.php?r=content&cid=3"><script>alert(1);</script>

(2)file/contact.php反射型XSS

这里从用户端接收到的page参数会显示在页面上

虽然这里有adsdslashes函数过滤(转义一些预定义字符,主要用于防御SQL注入),但这并不能防止XSS

复制代码
/index.php?r=contact&page=3<script>alert(1)</script>

(3)files/list.php中page参数也是一样的问题这里不意义列举了

3.sql注入

(1)files/content.php数字型注入

这里没有对$id变量(接收cid参数值)做引号保护,这里也没有其他的过滤,可以直接数字型注入

这里用的报错注入

复制代码
/?r=content&cid=1%20and%20extractvalue(1,concat(0x7e,(select%20user()),0x7e))

(2)files/software.php数字型注入

这里和上面那个基本类似

(3)管理员登录SQL注入引起的登录绕过 /admin/files/login.php

user、password参数没有经过任何过滤。这里校验用户名然后再校验密码

后台的sql注入还是挺多的,我这里就不一一看了

4.越权或未授权

inc/cheklongin.php是对用户是否登录状态的验证作用

可以看到user=admin,根据cheaklongin.php的验证逻辑,我们只要每次访问后台带上user=admin即可越权成为管理员

复制代码
cna=pUvtID6imjICAWd0SAykNrgF; language=English; SMS_GATEWAY=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJpYXQiOjE3NTYzNjkzODgsImp0aSI6ImN2bTRqa3E5am5qY29hdjVobDNpMmRnNnAwIiwiaXNzIjoiIiwibmJmIjoxNzU2MzY5Mzg4LCJleHAiOjE3NjE1NTMzODgsImRhdGEiOiJ1c2VySUR8aToxO2VtYWlsfHM6MTc6XCIyODM2ODkyNzY2QHFxLmNvbVwiO25hbWV8czo1OlwiYWRtaW5cIjtpc0FkbWlufGI6MTt0aW1lWm9uZXxzOjE0OlwiUGFjaWZpYy9NaWR3YXlcIjtMQVNUX0FDVElWSVRZfGk6MTc1NjM2OTM4ODsifQ.zvu9oE7Y-GikB-pHtKrVuAOCbxX87HjUWMKx06g-kf44bJ-JJeRc87DZqOMi7AKxuaFXFTQcDR8VmK1s1pPksg; 5801d584ec3fc8b2305ef89f1ccd0ce1_ssl=3dbddfaf-1d9a-4b92-90a5-d8bfe6471975.qoCuhoUTACRddC-ndWyL6bQy73c; isg=BAwM20I9iU2pTpxFSxW5a9LF3Wo-RbDvS9KsN2bMJLda8a77jlOxf11ClXlJouhH; tfstk=gI2xIg0QUabDNzT2DPflsAaj8AslK_qVnrrBIVAshzKSycpX5lGfF7niccgjGlZ6Xlkj_S0ioVHTbyIl-9X30okZdwbhKjwqgrDEcI9scG6SxAnfMkE8rokZCabhK9q40rciUUHsCgHSbcisCjg12YiEPKi6hcT52cuSCdGjGYMSvcL65da_VgnZPVMsCPM52cuS5AMsn7_tPngMBSo7s0DXhfv6C8nxNbqjPuZljmlAGo0yC0y-DNgQc4p6C2FzdTZ8mZpUqxrTJD4cFKULAlwEnRjwNqy-vrhTEGA-qWqz1m25bI0uuuwmN-sMx0P_zRHmph6b2x3xO-GJcizQ2lNnw8jCLxHjl5D4jHQ02-U008EMfQMxn7hLHv6elVVuvRnTQNW8JkZ_Lx2GbQg4ecsyHy4ptcTnJcAf2gdw_jiydbdL634IDWm--iB9_ClP403h2gdw_jir22jAkCRZag5..; PHPSESSID=aivcf6h4n4ke1c8vtpgal92e53; BLUE[user_id]=2; BLUE[user_name]=ooii; BLUE[user_pwd]=036d5952911a2ebe21d26b85be4d7ffb; user=admin

结语

这套源码拿来练手是极好的,可以试着审计审计

相关推荐
银空飞羽17 分钟前
让Trae SOLO全自主学习开发近期爆出的React RCE漏洞靶场并自主利用验证(CVE-2025-55182)
前端·人工智能·安全
汤愈韬1 小时前
知识点3:动态目的NAT的配置总结
网络·网络协议·网络安全·security·huawei
YJlio1 小时前
SDelete 学习笔记(9.18):安全删除、空闲清理与介质回收实战
笔记·学习·安全
享哥。2 小时前
android MVP模式代码示例
android
CNRio2 小时前
第8章 网络安全应急响应
网络·安全·web安全
漏洞文库-Web安全3 小时前
Linux逆向学习记录
linux·运维·学习·安全·web安全·网络安全·逆向
qq_717410013 小时前
删除设置-流量使用情况、更多
android
wanhengidc3 小时前
云手机 数字生活中新的可能
运维·服务器·科技·安全·智能手机·生活
QuantumLeap丶4 小时前
《Flutter全栈开发实战指南:从零到高级》- 23 -混合开发与WebView
android·flutter·ios
_李小白5 小时前
【Android FrameWork】延伸阅读:ViewRootImpl如何管理整个view世界
android