PHP审计-SQL注入技巧

简介: PHP审计-SQL注入技巧

技巧方法:

关键字  $_GET  $_POST

功能点  上传 更新 删除

断点调试

SQL监控  https://github.com/cw1997/MySQL-Monitor

工具:

phpstome

seay审计系统

sql监控

bluecms关键字案例(无过滤)

搜索get 请求方法

判断参数是否为空 替换空格 不为空执行sql 为空则报error 定位getone函数

640.png

640.png

函数里调用query  执行函数 再次追踪  执行语句

构造url

http://192.168.137.126/bluecms/ad_js.php?ad_id=1
启动sqlmap 去测试

QQ业务系统SQL监控案例

访问主界面

开启sql监控 上面附链接了

或者seay审计插件里的mysql监控也可以

查询select * from   看到只有一个$ip 是可控制的

640.png

其他的都固定写法 所以是无法注入的

全局定位ywdd函数

函数里引用getip 函数 再次追踪  有基础的人一看就知道 这是数据包里的xff参数  大概可以想到 xff注入 抓包检测

原先是本机ip  抓包更改后 是成功的 所以xff可以控制 构造exp

骑士CMS功能点查找(有过滤)

访问首页 查看sql数值

640.png

查看include 目录里的配置文件 发现都被过滤了,单引号,sql 关键字等

php中addslashes函数 会把’ 转义 变成\' 但转移后,还是会把单引号保存到数据库中

select * from user where id = 1'

回想之前学sql注入的时候,很符合二次注入。

查找网站功能点,创建简历 第四步填写学校,注入payload

相关文章
|
11天前
|
SQL 关系型数据库 MySQL
怎么通过第三方库实现标准库`database/sql`的驱动注入?
在Go语言中,数据库驱动通过注入`database/sql`标准库实现,允许统一接口操作不同数据库。本文聚焦于`github.com/go-sql-driver/mysql`如何实现MySQL驱动。`database/sql`提供通用接口和驱动注册机制,全局变量管理驱动注册,`Register`函数负责添加驱动,而MySQL驱动在`init`函数中注册自身。通过这个机制,开发者能以一致的方式处理多种数据库。
|
17天前
|
SQL 安全 关系型数据库
SQL 注入神器:SQLMap 简单使用
SQL 注入神器:SQLMap 简单使用
|
25天前
|
SQL 存储 Java
如何避免SQL注入攻击?
如何避免SQL注入攻击?
|
1月前
|
SQL 安全
jeecg-boot sql注入漏洞解决
jeecg-boot sql注入漏洞解决
106 0
|
21小时前
|
SQL 安全 Java
Spring Boot中的跨站点脚本攻击(XSS)与SQL注入防护
【6月更文挑战第15天】在现代Web应用程序开发中,安全性是一个至关重要的课题。跨站点脚本攻击(XSS)和SQL注入是最常见的两种攻击类型,它们可以严重威胁到应用程序的安全。
6 0
|
12天前
|
SQL 监控 安全
sql注入取数据库
SQL注入是一种攻击技术,用于在SQL查询中注入恶意代码,从而绕过安全措施,获取、修改或删除数据库中的数据。这种行为是非法的,并且严重违反了网络安全和隐私原则。我不能提供关于如何进行SQL注入的指导或
|
14天前
|
SQL 数据库 关系型数据库
【SQL注入】 注入神器sqlmap的使用
数据库 SQL注入漏洞 sqlmap
51 2
|
16天前
|
SQL XML 安全
Pikachu SQL 注入通关解析
Pikachu SQL 注入通关解析
|
16天前
|
SQL 安全 关系型数据库
SQL注入常用姿势
该内容介绍了SQL注入攻击和防御的一些基本概念,以及MySQL中的几个函数:`MID()`用于提取文本字段的字符,`LIMIT()`用于限制查询结果的数量,`COUNT()`计算元组数量。它还详细讲解了两种SQL注入方法:基于布尔盲注和基于时间盲注,包括如何猜解数据库、表和字段信息。此外,还提到了SQL注入工具Sqlmap的使用方法和一些绕过过滤策略。
26 0
SQL注入常用姿势
|
16天前
|
SQL 机器学习/深度学习 人工智能
Web LLM 实验:利用 LLM API 实现 SQL 注入
Web LLM 实验:利用 LLM API 实现 SQL 注入