`

关于sql注入的理解

阅读更多
mysql> show tables;
+----------------------+
| Tables_in_openlab    |
+----------------------+
| MatchedLogRecDetails | 
| emp_14               | 
| logs                 | 
| logs_day_report      | 
| logs_month_report    | 
| logs_year_report     | 
| s_emp                | 
| s_emp13              | 
| s_emp_14             | 
| s_emp_39             | 
| s_emp_hz100521       | 
| s_emp_jlh            | 
| s_user               | 
| s_user_39            | 
| s_user_hz100521      | 
| s_user_jlh           | 
| student              | 
| student_jlh          | 
| user_14              | 
| xu_users             | 
+----------------------+
20 rows in set (0.01 sec)

mysql> select * from s_user;
+----+----------+----------+
| id | username | password |
+----+----------+----------+
|  0 | jack     | 123456   | 
|  1 | shery    | 123456   | 
|  2 | lianghao | lianghao | 
|  5 | dengtao  | 123456   | 
|  6 | chunzi   | 123456   | 
+----+----------+----------+
5 rows in set (0.01 sec)

mysql> select * from s_user where username='jack' and password='dfsf'or'1'='1';
+----+----------+----------+
| id | username | password |
+----+----------+----------+
|  0 | jack     | 123456   | 
|  1 | shery    | 123456   | 
|  2 | lianghao | lianghao | 
|  5 | dengtao  | 123456   | 
|  6 | chunzi   | 123456   | 
+----+----------+----------+
5 rows in set (0.00 sec)

mysql> select * from s_user where username='jack';
+----+----------+----------+
| id | username | password |
+----+----------+----------+
|  0 | jack     | 123456   | 
+----+----------+----------+
1 row in set (0.00 sec)

mysql> select * from s_user where username='jack' and password='dfsf';
Empty set (0.00 sec)

mysql> edit
    -> ;
//select * from s_user where username='jack' and password='dfs'or'1'='1';
+----+----------+----------+
| id | username | password |
+----+----------+----------+
|  0 | jack     | 123456   | 
|  1 | shery    | 123456   | 
|  2 | lianghao | lianghao | 
|  5 | dengtao  | 123456   | 
|  6 | chunzi   | 123456   | 
+----+----------+----------+
5 rows in set (0.00 sec)

mysql> edit
    -> ;//select * from s_user where username='jack' and password='dfs'and'1'='1';
Empty set (0.00 sec)

引用

总结:jljl'or'1'='1  为固定格式:若关键字为and 那么条件所引用的列为一个值显然不符合
数据库一范式。or在这里表示为或者,同时1=1条件恒为true,但是查询的结果会忽视前面的条件,而返回显示所有记录。说白了sql注入就是用单引号来使sql关键字生效,使用表达式
返回一个true,然而数据库就默认为这个查询的条件为正常且合法的。哎,理解的不是很透彻,以后学的深了在改改。

分享到:
评论

相关推荐

    SQL注入攻击与防御

    SQL注入是Internet上最危险、最有名的安全漏洞之一,《SQL注入攻击与防御》是目前唯一一本专门致力于讲解SQL威胁的图书。《SQL注入攻击与防御》作者均是专门研究SQL注入的安全专家,他们集众家之长,对应用程序的...

    SQL注入天书

    SQL注入的手法相当灵活,在注入的时候会...sql注入的原理分析 非常好的理解sql注入的文档 第一节、SQL注入原理 第二节、判断能否进行SQL注入 第三节、判断数据库类型及注入方法 SQL注入的一般步骤 .....

    SQL注入攻击与防御(安全技术经典译丛)

     1.4 理解SQL注入的产生过程  1.4.1 构造动态字符串  1.4.2 不安全的数据库配置  1.5 本章小结  1.6 快速解决方案  1.7 常见问题解答 第2章 SQL注入测试  2.1 概述  2.2 寻找SQL注入  2.2.1 借助...

    五分钟快速搞懂什么是SQL注入-SQL注入详解(干货满满)

    本文是一篇关于SQL注入的详解,专为初学者设计。文章以通俗易懂的语言和幽默感,介绍了SQL注入的概念、防范方法、实际案例等。通过生动的例子和简单的故事,读者可以快速上手SQL注入,并在实际项目中应用。 ### 适用...

    基于语义分析的SQL注入行为检测方案研究_曹鹏飞.pdf

    该方案包括数据预处理,抽象语法树,语义分析等功能模块,针对漏洞相关语言的编译器,通过对攻击者输入的内容串进行语法语义检查来判断该请求的恶意程度,理解攻击者意图,能实现对SQL注入攻击的精准识别。

    SQL注入快速理解.rar

    SQL注入快速理解

    sql注入资料.zip

    因此,深入理解SQL注入的原理、危害,以及采取有效的防范措施,对于保障数据库安全至关重要。SQL注入攻击的原理在于利用应用程序对用户输入的验证不足或处理不当。当应用程序将用户输入直接拼接到SQL查询语句中时,...

    SQL注入漏洞原理与防御.pdf

    SQL注入漏洞原理与防御 ... SQL注入漏洞有两个关键条件,理解这两个条件可以帮助我们理解并防御SQL注入漏洞: 用户能控制输入的内容 Web应用执行的代码中,拼接了用户输入的内容 漏洞介绍 漏洞分析与防护

    SQL注入练习.rar

    sql-labs,该环境可以用来练习sql注入。是闯关类型的一个靶场环境,从易到难,从简到繁。将每一关都闯过的话,对于sql注入的理解会比较深入。

    本科生SQl注入课堂教案PPT

    SQl注入前期学习掌握数据可结构化查询语言,理解SQl注入的原理

    sql注入基础知识.rar

    sql注入 SQL注入即是指web应用程序对用户输入数据的合法性没有判断或过滤不严,攻击者可以在web应用程序中事先定义好的查询语句的结尾上添加额外的SQL语句,在管理员不知情的情况下实现非法操作,以此来实现欺骗...

    SQL注入技巧2-常用技巧总结(攻击向量)

    个人通过拜读各位前辈们的博文以及大量的ctf题目训练,结合挖洞经验整理的几点sql常用的盲注技巧,结合具体的sql指令加深理解,针对常用的防护技术,总结了几种通用的绕过技巧

    sql注入软件HDSI源代码[pas]

    HDSI,一个sql注入软件的源代码 对于理解sql注入方式比较有帮助 注释还算详细 pascal语言

    sql注入攻击原理及攻防

    sql注入攻击原理及攻防,可以帮助你深入理解sql注入攻击的原理和进阶操作!

    网络渗透测试 XSS和SQL注入

    了解SQL注入的基本原理;掌握PHP脚本访问MySQL数据库的基本方法;掌握程序设计中避免出现SQL注入漏洞的基本方法;掌握网站配置。系统环境:Kali Linux 2、Windows Server网络环境:交换网络结构实验工具: Beef;...

    SQL注入技巧-盲注暴库详细技巧及实例

    个人通过拜读各位前辈们的博文以及大量的ctf题目训练,结合挖洞经验整理的几点sql常用的盲注技巧,结合具体的sql指令加深理解,针对常用的防护技术,总结了几种通用的绕过技巧

    深入理解SQL注入绕过WAF和过滤机制

    0x0 前言 0x1 WAF的常见特征 0x2 绕过WAF的方法 0x3 SQLi Filter的实现及Evasion 0x4 延伸及测试向量示例 0x5 本文小结 0x6 参考资料

Global site tag (gtag.js) - Google Analytics