SQL注入一:注入原理

Sql注入是一种通过操作sql语句进行攻击目的的技术。

sql注入分类:

1

数据库类型注入

Access,MSsql,mysql等数据库注入攻击

2

提交方式注入

get,post,cookie,http等提交注入攻击

3

参数类型注入

数字,字符,搜索等注入攻击

4

其他复杂性注入

加解密小技巧注入

5

报错延时盲注

手工注入加强版

6

防注入及绕过

WAF及常见过滤分析及绕过

7

注入漏洞拓展

注入函数,注入挖掘等

登录案例:

登录SQL语句:select * from admin where username='用户输入的用户名' and password='用户输入的密码'

用户输入的内容可由用户自行控制,例如可有输入 ' or 1=1 -- 空格

 SQL语句:select * from admin where username=''  or 1=1 -- 'and password='用户输入的密码' 

其中or 1=1永远为真,--注释后面的内容不再执行,因此SQL语句执行会返回admin表中的所有内容

CMS案例:

index.php首页展示内容,具有文章列表(链接具有文章id),articles.php文章详细页,URL中article.php?id=文章id读取id文章

SQL注入验证:

1、单引号'

2、and 1=1

3、and 1=2

如果页面中Mysql报错,证明该页面存在SQL注入漏洞。

原文地址:https://www.cnblogs.com/crystal1126/p/12168232.html