熊海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

结语

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

相关推荐
jllllyuz1 小时前
基于ThinkPHP实现动态ZIP压缩包的生成
android
百***92024 小时前
【MySQL】MySQL库的操作
android·数据库·mysql
2501_916008896 小时前
没有源码如何加密 IPA 实战流程与多工具组合落地指南
android·ios·小程序·https·uni-app·iphone·webview
2501_940094026 小时前
PS1模拟器 DuckStation更新最新版整合 下载即玩 附PS1Bios/游戏/金手指 安卓版+电脑版
android·游戏·电脑
q***51897 小时前
离线安装 Nginx
运维·数据库·nginx
Csxyzj8 小时前
nginx
服务器·nginx
m0_738120728 小时前
网络安全编程——基于Python实现的SSH通信(Windows执行)
python·tcp/ip·安全·web安全·网络安全·ssh
橙武低代码8 小时前
业务流低代码平台:从理念到实战
android·低代码·ai编程
云盾安全防护9 小时前
WAF防护:应用层安全的核心堡垒
安全