PHP代码审计 - SQL注入

SQL注入

复制代码
 正则搜索

(update|select|insert|delete).*?where.*=

示例一:

bluecms源码下载:source-trace/bluecms

以项目打开网站根目录,并以ctrl+shift+f打开全局搜索

(update|select|insert|delete).*?where.*=并开启正则匹配

最快寻找脆弱点的方法:

1、是否有可控的值

2、文件路径和文件名字猜测文件作用

3、有无过滤,或者过滤是否严格

这里就不浪费时间,直接测试ad_js.php文件内的sql注入

发现使用了自定义的getone函数,那么跳转到对应函数声明

查看getone函数

发现这里调用了类里的query函数

发现这里使用mysql_query函数,进行的sql语句,中间没有任何过滤,那么就存在sql注入

$ad_id参数来自于get传参

查看blue_ad内有7个字段

payload:1 union select 1,2,3,4,5,6,user()

发现没有回显,查看源代码

原来回显藏在html注释里面了

示例二:

emlog V6.0.0源码下载:https://soft-10-2.xiaoguaniu.com/soft/202105/Emlog_V6.0.0_XiTongZhiJia.zip?t=1731583487\&ip=112.193.34.227\&sign=25a70a465fbab4f660c316a902907b96

依旧使用正则搜索法寻找定位脆弱点,为了节约时间,直接定位漏洞文件comment.php

这里有调用一个自定义函数,看函数名应该是通过IP删除评论的意思

这里将$sql变量传入了db的query方法

发现这直到sql执行都没有过滤方法,那么存在sql注入

刚刚是通过$CACHE->updateCache(array('sta','comment'));转到执行的,这个代码文件路径:/admin/comment.php

并且要使得$action= 'delbyip'


插入调试代码 echo 'qdy';

构造发包,发现执行了调试代码,但是报错

寻找报错代码

缺少token,登录后台后复制token

发现还需要$ip参数,加入echo 调试

IP取值

构造payload

/admin/comment.php?action=delbyip&token=c0d72b51591583bca22cbc112e85b4ff&ip=127.0.0.1'+and+updatexml(1,concat(0x7e,user(),0x7e),1)--+

成功

mysql监听工具

https://codeload.github.com/cw1997/MySQL-Monitor/zip/refs/heads/master

存中...(img-oyGEHH9H-1731596090466)]

成功

mysql监听工具

https://codeload.github.com/cw1997/MySQL-Monitor/zip/refs/heads/master

相关推荐
小杨不想秃头9 小时前
信息安全工程师考试
学习·网络安全
Seraphina369 小时前
记一次实验:利用路径分隔符进行网页缓存欺骗
经验分享·笔记·安全·网络安全·缓存
达梦产品与服务11 小时前
SQLark 实战 | 高频 SQL 脚本的导入、管理与复用
数据库·sql·数据库开发·数据库运维·脚本管理·sqlark百灵连接·sql脚本
菩提小狗11 小时前
每日安全情报报告 · 2026-08-25
网络安全·漏洞·cve·安全情报·每日安全
MartinYeung512 小时前
[论文学习]小型代码语言模型中的潜伏代理行为研究
学习·语言模型·php
柒和远方12 小时前
V079: Milvus 向量数据库:AI 日记本的三组件部署、集合字段建模与余弦索引
javascript·sql
P1Browser12 小时前
指纹浏览器安全吗?从浏览器环境隔离、数据存储到安全风险解析
网络·tcp/ip·安全·网络安全·github·php
ClouGence13 小时前
数据库 CI/CD 再升级:CloudDM 4.1.0 支持多数据库发布流编排
数据库·sql·ci/cd
阿里云大数据AI技术13 小时前
一套 Spark SQL,打通多种 Catalog:EMR Serverless Spark 统一数据处理实践
人工智能·sql·spark
数据知道14 小时前
PHP 代码审计实战——ThinkPHP、Laravel 历史漏洞模式深度剖析
android·网络·web安全·网络安全·php·laravel