SQL概述及在网络安全中的应用

语文然

语文然

2016-01-29 16:37

SQL概述及在网络安全中的应用,SQL概述及在网络安全中的应用
 

  1.网络应用和SQL注射

  1.1概述

  有些网络数据库没有过滤客户提供的数据中可能有害的字符,SQL注射就是利用插入有害字符进行攻击的技术。尽管非常容易防范,但因特网上仍然有惊人数量的存储系统容易受到这种攻击。这篇文章的目的是指导专业安全组织了解这种技术,并告诉他们正确的,用来防范SQL注射的办法,以及处理各种常见的,由于非法输入引起的问题.

  1.2背景

  在读这篇文章之前,你应该对数据库如何工作,以及SQL如何被用来访问数据库有一些基础的了解。我建议您阅读eXtropia.com的文章“Introduction to Databases for WebDevelopers”。

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/sqlserver/)

  (网址:http://www.extropia.com/tutorials/sql/toc.html)

  1.3字符编码

  在大多数的网络浏览器中,标点符号和许多其它符号在用于一个网络请求前需要把URL编码,以便被适当地编译(interpret)。在本文中的例子和截图中我使用了固定的ASCII字符以保证最大的可读性。然而,在实际应用中,你需要在HTTP请求中用%25来代替百分号(%),用%2B来代替加号(+)等等。

  1.网络应用和SQL注射

  1.1概述

  有些网络数据库没有过滤客户提供的数据中可能有害的字符,SQL注射就是利用插入有害字符进行攻击的技术。尽管非常容易防范,但因特网上仍然有惊人数量的存储系统容易受到这种攻击。这篇文章的目的是指导专业安全组织了解这种技术,并告诉他们正确的,用来防范SQL注射的办法,以及处理各种常见的,由于非法输入引起的问题.

  1.2背景

  在读这篇文章之前,你应该对数据库如何工作,以及SQL如何被用来访问数据库有一些基础的了解。我建议您阅读eXtropia.com的文章“Introduction to Databases for WebDevelopers”。

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/sqlserver/)

  (网址:http://www.extropia.com/tutorials/sql/toc.html)

  1.3字符编码

  在大多数的网络浏览器中,标点符号和许多其它符号在用于一个网络请求前需要把URL编码,以便被适当地编译(interpret)。在本文中的例子和截图中我使用了固定的ASCII字符以保证最大的可读性。然而,在实际应用中,你需要在HTTP请求中用%25来代替百分号(%),用%2B来代替加号(+)等等。。。

  1.网络应用和SQL注射

  1.1概述

  有些网络数据库没有过滤客户提供的数据中可能有害的字符,SQL注射就是利用插入有害字符进行攻击的技术。尽管非常容易防范,但因特网上仍然有惊人数量的存储系统容易受到这种攻击。这篇文章的目的是指导专业安全组织了解这种技术,并告诉他们正确的,用来防范SQL注射的办法,以及处理各种常见的,由于非法输入引起的问题.

  1.2背景

  在读这篇文章之前,你应该对数据库如何工作,以及SQL如何被用来访问数据库有一些基础的了解。我建议您阅读eXtropia.com的文章“Introduction to Databases for WebDevelopers”。

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/sqlserver/)

  (网址:http://www.extropia.com/tutorials/sql/toc.html)

  1.3字符编码

  在大多数的网络浏览器中,标点符号和许多其它符号在用于一个网络请求前需要把URL编码,以便被适当地编译(interpret)。在本文中的例子和截图中我使用了固定的ASCII字符以保证最大的可读性。然而,在实际应用中,你需要在HTTP请求中用%25来代替百分号(%),用%2B来代替加号(+)等等。。。

  3.2.5 LIKE语句查询

  另一个大的灾难是陷入一个LIKE子句的陷阱.(Seeing the LIKE keyword or percent signs cited in an error message are indications of this situation.)大多数的web搜索程序使用LIKE子句来查询数据库,比如下面这个:

  SQLString = "SELECT FirstName, LastName, Title FROM Employees WHERE LastName LIKE '%" & strLastNameSearch & "%'"

  这里面的%是通配符,在这个例子里,WHERE子句会返回TRUE,只要LASTNAME里有字符串含有strLastNameSearch.为了阻止SQL SERVER返回预计中的记录,你构造的SQL语句里必须含有LASTNAME里没有的字符串.web搜索程序搜索的字符串来自于用户的输入.通常有一个'和一个%在输入的字符串之前,因此我们构造字符串时,需要在WHERE子句中匹配它们.如果你提交了NULL作为搜索字符串,那么LIKE的参数会变成"%%",这是一个全匹配,会返回所有的记录.


  3.2.6 “死胡同”

  大部分的时候sql injection都要伴随着大量失败的实践,如果你发现你无论如何都不能插入相关的语句,并且无论你怎么做都不对,这个时候你就要判断自己是否掉进了一个死胡同,很多时候遇到这种情况你很可能是在一个多重嵌套的WHERE和SELECT子句的语句中,或者一些更加复杂的多重嵌套,连使用“;--”都没有用,所以自己要小心和避免在这种地方停留。

3.2.7 列的数目不匹配问题

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/sqlserver/)

  如图所示,我们可以从几次错误中得到很多有用的信息,并且加以调整自己的请求语句,这种信息多了,那就意味着我们离成功不远了。在猜列名时,如图所示,我们提交语句后会碰

展开更多 50%)
分享

猜你喜欢

SQL概述及在网络安全中的应用

SQLServer
SQL概述及在网络安全中的应用

SQL概述及在网络安全中的应用(下)

SQLServer
SQL概述及在网络安全中的应用(下)

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

SQL概述及在网络安全中的应用(上)

SQLServer
SQL概述及在网络安全中的应用(上)

网闸在网络安全中的应用

电脑网络
网闸在网络安全中的应用

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

MySQL在网络安全方面采取的主要措施

MySQL mysql数据库
MySQL在网络安全方面采取的主要措施

MySQL数据库在网络安全方面的功能

MySQL mysql数据库
MySQL数据库在网络安全方面的功能

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

防火墙的技术与应用-选购和应用(18)

防火墙的技术与应用-选购和应用(18)

善用 SELECT INTO 功能

善用 SELECT INTO 功能
下拉加载更多内容 ↓