29、WEB攻防——通用漏洞&SQL注入&增删改查&盲注&延迟&布尔&报错

文章目录

盲注

概念:在注入过程中,获取的数据不能回显至前端页面,此时我们需要利用一些方法进行判断或尝试,这个过程被称为盲注。

解决:常规的联合查询注入不行的情况。

分类:

  • 基于布尔的SQL盲注,逻辑判断。
    /blog/news.php?id=1 and if(1=1,sleep(5),0)
  • 基于时间的SQL盲注,延时判断。
    /blog/news.php?id=1 and length(database())=7
  • 基于报错的SQL盲注,报错回显。
    /blog/news.php?id=1 and lupdatexml(1,concat(0x7e,(select @@version),0x7e),1)
    后端写了die (mysql_error())才会报错。12种报错注入+万能语句

常规的联合查询注入,因为页面有回显,所以可以通过回显来判断SQL语句执行成功了。若没有回显,则只能通过盲注来判断SQL语句是否执行成功(报错、时间、布尔)。

增删改查

  1. 查询方式增删改查四种特性决定,部分不需要进行数据取出和显示,所以此类注入基本上需要采用盲注才能得到结果;(黑盒测试可以根据功能判断注入查询方式)
  2. 查询方式增删改查四种特性决定应用功能点(会员注册、删除新闻、修改文章等)。

假如执行SQL语句的代码在flag.php,而index.php调用了flag.php这一文件,最好通过flag.php进行SQL语句注入,而不是直接构造数据发送给flag.php。

如何判断宽字节注入:报错显示单引号被过滤,可以考虑宽字节注入。

相关推荐
Lee川11 小时前
Milvus 实战:当 RAG 遇上向量数据库,从"玩具 Demo"到"生产可用的"那一步
前端·数据库·人工智能
网管NO.113 小时前
SQL 排序分页精讲!ORDER BY+LIMIT 全套用法,报表分页
数据库·sql
MRSM_0113 小时前
InfluxDB vs TimescaleDB,谁更适合你的场景
数据库
CAE虚拟与现实14 小时前
Redis如何保证存和读的过程中数据的一致性?
数据库·redis·缓存
我爱cope17 小时前
【Agent智能体4 | 智能体AI的应用】
数据库·人工智能·职场和发展
知识分享小能手18 小时前
Flask入门学习教程,从入门到精通,数据库操作 — 知识点详解与案例代码(4)
数据库·学习·flask
我是一颗柠檬18 小时前
【MySQL全面教学】MySQL基础SQL语句Day3(2026年)
数据库·后端·sql·mysql·oracle
XS03010618 小时前
MyBatis动态SQL
数据库·sql·mybatis