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。

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

相关推荐
@insist1238 小时前
信息安全工程师-数据库安全全体系解析与最佳实践
数据库·安全·软考·信息安全工程师·软件水平考试
_ku_ku_9 小时前
数据库系统原理 · 事务管理与恢复 · 自学总结
数据库·oracle
lifewange10 小时前
Redis 集合(Set)运算完全指南
数据库·chrome·redis
TDengine (老段)10 小时前
TDengine RAFT共识协议 — 选举、日志复制、快照与仲裁
android·大数据·数据库·物联网·架构·时序数据库·tdengine
Full Stack Developme11 小时前
Spring Boot 事务管理完整教程
java·数据库·spring boot
m0_7020365313 小时前
mysql如何通过索引减少行锁范围_mysql索引与加锁逻辑
jvm·数据库·python
qxwlcsdn13 小时前
如何用 IndexedDB 存储从 API 获取的超大列表并实现二级索引
jvm·数据库·python
phltxy13 小时前
Redis 主从复制
java·数据库·redis
2301_8092445313 小时前
C#怎么使用协变和逆变 C#泛型中的in和out关键字协变逆变是什么意思怎么用【语法】
jvm·数据库·python
知识汲取者14 小时前
巨量引擎营销 API 完整文档
开发语言·数据库·python