什么是SQLi
前端构造的SQL语句片段拼接到后台SQL语句中,后台缺乏正确识别和过滤,造成与其外的数据库查询结果。
SQLi的危害
- 从技术上来说:未授权、非法增删改查数据库内容,包括窃取信息、删除数据库、读写系统文件、执行命令等等;
- 从影响上来说:客户数据丢失、系统交易数据被篡改、网站首页被篡改。
SQLi分类
按照后台处理前端提交参数的类型来分,分两类:数字型注入和字符型注入。
按照请求方式分:GET、POST
按照其他分类方法,还有一些常见数据库注入类型:报错注入、盲注、延时注入、宽字节注入、二次注入、堆叠注入。
如何发现SQLi
确认是否是动态网站
找到可能与后台数据库产生交互的位置,测试是否是注入点。
SQLi的利用步骤
联合查询>报错>布尔盲注>延时盲注
宽字节注入、二次注入(代码审计)