SQL注入攻击与防御学习笔记一
1、不同数据库的简单识别方法:
(1)oracle和postgresql数据库,向web服务器发送如下请求:
http://www.victim.com/showproducts.php?category=bikes(原始) 测试:bi ' || ' kes
(2)microsoft sql server数据库,向web服务器发送如下请求:
http://www.victim.com/showproducts.php?category=bikes(原始) 测试:bi ' + ' kes
(3)mysql数据库,向web服务器发送如下请求:
http://www.victim.com/showproducts.php?category=bikes(原始) 测试:bi ' ' kes
2、用户请求触发数据库错误时,web构造返回的场景:
(1)将SQL错误显示在页面上,它对web浏览器用户可见。
(2)将SQL错误隐藏在web页面的源代码中以便于调试。
(3)检测到错误时跳转到另一个页面。
(4)返回HTTP错误代码500(内部服务器错误)或HTTP重定向代码302.
(5)应用适当地处理但不显示结果,可能会显示一个通用的错误页面。
3、使用一些技术来检索嵌入在数据库返回错误中的信息,第一种是通过将字符串转换到整数来产生错误。
例如:index.php?id=1 and 1=0/@@version(或者0/user);-- 产生错误syntax error converting the nvarchar value 'microsoft sql server 2000-8.00.760....' to a column of data type int.
第二种 having 1=1技术(原理:group by要求select语句选择的字段是某个聚合函数的结果或者包含在group by字句中。如果该条件不满足,那么数据库会返回一个错误,显示出现该问题的第一列。
index.php?id=bike' having '1'='1 产生错误columns 'products.productid' is invalid in the select list because it is not contained in an aggregate function and there is no group by clause.
可以使用该技术和group by 来枚举select语句中所有的列:
SQL注入攻击与防御学习笔记一相关推荐
- SQL注入攻击及防御 手动注入+sqlmap自动化注入实战(网络安全学习12)
CONTENTS 1 项目实验环境 2 SQL注入概述 2.1 SQL注入简介 2.2 SQL注入的危害 3 SQL基础回顾 3.1 联合查询union 3.2 information_schema数 ...
- 渗透测试笔记(三)——SQL注入攻击及防御(1)
SQL注入危害 程序没有细致的过滤用户输入的数据,致使非法数据侵入系统. 1.对于Web应用程序而言,用户核心数据存储在数据库中,例如MySQL.SQL Server.Oracle等: 2.通过SQL ...
- 《Web安全渗透全套教程(40集)》学习笔记 | SQL注入攻击及防御
学习视频来源:B站<Web安全渗透全套教程(40集)> 个人在学习的同时,也验证了视频中的实验部分,现将授课笔记和实验笔记整理下来. SQL注入危害 SQL基础回顾 连接数据库 查看数据库 ...
- sql注入攻击与防御第二版读书笔记二——SQL盲注利用
寻找并确认SQL盲注 强制产生通用错误 注入带副作用的查询 如 mssql waitfor delay '0:0:5' mysql sleep() 拆分与平衡 5 -> 7-2 常见SQL盲注场 ...
- SQL注入攻击分为几类?如何防御?
网络安全攻击方式有很多种,其中较为常见的有:SQL注入攻击.XSS攻击.DDoS攻击.URL篡改等.本篇文章重点为大家介绍一下SQL注入攻击,那么你知道什么是SQL注入攻击吗?SQL注入攻击分为哪几类 ...
- 2017-2018-2 20179216 《网络攻防与实践》 SQL注入攻击
1. SQL语言 结构化查询语言(Structured Query Language)简称SQL:是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询.更新和管理关系数据库系 ...
- 初探PHP的SQL注入攻击的技术实现以及预防措施
SQL 攻击(SQL injection,台湾称作SQL资料隐码攻击),简称注入攻击,是发生于应用程序之数据库层的安全漏洞.简而言之,是在输入的字符串之中注入SQL指 令,在设计不良的程序当中忽略了检 ...
- ASP.NET 4学习笔记(1) SQL注入攻击及解决方案.
一, 定义:所谓SQL注入攻击是应用程序开发人员未预期地把SQL代码传入到应用程序的过程,只有那些直接使用用户提供的值构造SQL语句的应用程序才会受影响. 例如原SQL代码为: select Orde ...
- 防止SQL注入攻击-学习笔记
所谓SQL注入,就是通过把SQL命令插入到web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令. 具体来说,它是利用现有应有程序,将(恶意的)SQL命令注入到后台数据 ...
- Spring MVC防御CSRF、XSS和SQL注入攻击
本文说一下SpringMVC如何防御CSRF(Cross-site request forgery跨站请求伪造)和XSS(Cross site script跨站脚本攻击). 说说CSRF 对CSRF来 ...
最新文章
- 天气情况(思维,dp思想)
- Java洛谷P5461 赦免战俘讲解
- C#模拟最简单的交通信号灯
- HTTP权威指南阅读笔记一:HTTP概述
- Python 中如何解决 asyncio 文件描述符最大数量限制问题
- UE3名称结构(Name)
- 搭建私有云盘 cloudreve
- java retainall_java 取交集方法retainAll
- oracle数据库提示ORA-01033
- 计算机考研作息时间表,985学长强力推荐考研作息时间表!
- 【高级操作系统-陈渝】Architecture-计算机架构
- 获取wifi 的ssid出现unknown ssid
- CentOS 6忘记密码解决方法(三分钟超快o)
- 高老师架构设计思考短句集(2)
- IOT漏洞挖掘学习笔记(一)——堆基础及相关数据结构
- 镜头分辨率的计算和理解
- python微信小程序抢购_Python实现微信小程序支付功能!Python确实强的一批!
- 文件删了回收站清空了怎么恢复?文档内容误删怎么恢复
- 最优化方法及其实现(Optimization-Algorithm)C语言
- Python 编码规范(pep8)