封面
《ASP.NET网站中防SQL注入攻击技术的》Word格式可编辑可修改
精心整理放心阅读欢迎下载
文档信息
ASP.NET网站中防SQL注入攻击技术的
目录
一、引言
二、防SQL注入攻击技术的实现
(1)客户端的防SQL注入功能的实现
(2)服务器端的防SQL注入功能的实现
正文
关于什么是及计算机系统及信息系统方面的优秀学术论文范文关于什么是相关论文查重关于网站中防SQL注入攻击技术的相关论文范文素材对写作什么是论文范文课题研究的大学硕士、本科毕业论文开题报告范文和文献综述及职称论文参考文献资料有帮助。
摘要本文主要针对目前网站安全面临的SQL注入攻击来进行分析研究并从客户端和服务器端两个方面来研究如何防范SQL注入攻击
关键字关键词网站安全SQL注入防SQL注入
一、引言
随着时代的发展 网路应用的不断深入互联网上网站数量以惊人的速度增加.尽管如此 网络上环境的复杂性、多变性 以及信息系统
的脆弱性决定了现有的计算机系统还不具备与自身的应用发展规模相对应的安全防护能力大量的网络威胁采用各种隐蔽的方式不断地冲击着网络应用平台.因此对网站相关安全技术进行研究是很有必要的。
二、防SQL注入攻击技术的实现
注入攻击技术简介SQL注入攻击是当前网络攻击的主要手段之一SQL注入技术在国外最早出现在1999年我国在2002年后开始大量出现.目前还没有一个严格的定义来解释什么是SQL注入漏洞但其本质是攻击者能够利用应用程序没有对用户输入的数据进行严格约束和合法性检查等错误在程序中插入并执行自己构造的SQL语句。
这篇论文url
例如在在Web应用程序的登录验证程序中一般有用户名和 两个参数当用户点击提交按钮时服务器端会根据用户提交的用户名和 信息来与数据库中的用户信息表进行比较如果不对用户输入的信息进行任何限制在服务器端也不对用户提交的信息进行任何检查其SQL语句就可以写成:stringstrqry等于"Select*FromT_AdminwhereUserid等于' "+n ame+"'andUs e rPwd等于' "+pwd+"
显然上面这段代码并没有对用户的输入进行任何安全性的检查如果数据库是SQLServer那么恶意用户可以在用户名中输入
admi n’ or1等于1--在 框中输入任何值(如: 111) 这样 SQL脚本解释器中的上述语句就会变为:
Select*FromT_AdminwhereUs erid等于'admin'or1等于1--andUserPwd等于' 111'
由于在SQLServer数据库中“--”表示注释 因此“--”后面的语句都为注释语句这样在两个条件“Userid等于'admin' ”和“1等于
1”中只要任何一个成立该语句就会执行成功而1等于1在逻辑判断上是恒成立的 因此不管T_Admin表中有没有admin这个用户该语句都会执行成功并错误地将权限授予攻击者。
下防范SQL注入攻击策略的实现要防范SQL注入攻击需要对用户输入的数据进行检查检查可以在客户端进行也可以在服务器端进行.在客户端攻击者完全有可能获得网页的源代码修改验证合法性的脚本(或者直
接删除脚本) 然后将非法内容通过修改后的表单提交给服务器.因此要保证验证安全性唯一的办法就是在服务器端也执行验证.但使用客户端验证可以减少页面往返次数以提升性能改进用户体验.因此在实际中往往在客户端和服务器端同时进行检查。
(1)客户端的防SQL注入功能的实现
在客户端可以JavaScr ipt脚本语言来编写用于检查用户输入的函数也可以通过提供的输入输入验证控件来检查用户的输入.其中使用提供的输入验证控件来检查用户的输入是最简单的方法。
在中 RegularExpressionValidator控件是一个强大的工具.他可以检验文本是否和定义的正则表达式中的模式匹配.你只需要简单地配置ValidationExpression属性的正则表达式即可.正则表达式也是一个强大的工具它允许指定复杂的规则该规则指定字符和字符顺序(位置和出现次数) .为防止用户输入一些危险的字符可以利用该正则表达式“^ [0-9A-Za-z_]+$” 该表达式表示的意思是用户只可以输入字母和数字.要运用该正则表达式只需在将其赋值给
RegularExpressionValidator控件的Val idationExpression属性即可。
怎样写什么是毕业论文
播放:22640次评论:4696人
(2)服务器端的防SQL注入功能的实现
由于通过客户端进行验证并不能完全保证安全性 因此为保证安全性最有效的办法是在服务器端进行验证.在服务器端通常的做法有两种一种是构造一个专门的函数来将特殊字符和字符串过滤掉另一种是对SQL语句使用命令参数方式。
过滤函数一般可以表示如下:
PublicstringConvertSql (stringinputStr)inputString等于(inputString等于(inputString等于("等于"inputString等于(i nputString等于("and"inputString等于inputString.省略中并非最有效的方式 因为如果文本确实需要包含这些符号这样就引入了其他麻烦更好的解决办法是使用参数化命令来防止SQL注入攻击.参数化命令是在SQL文本中使用占位符的命令.占位符表示需要动态替换的值它们通过Command对象的Paramete集合来传送.在管理员登陆页面如果使用参数化命令其SQL语句就可以表示为:
Select*FromT_AdminwhereUs erid等于@nameandUs erPwd等于@pwd
在该S QL语句中@name和@pwd是参数的名字所有参数必须以@字符开头.使用参数化命令后 当恶意用户在用户名中输入adm in’ or 1等于1--时应用程序就会从T_Admin表中检索用户名为admi n’ or1等于1--的用户显然这样就不可能得到任何记录 因为没有一个管理员的用户名是admin’ or1等于1--.参数化命令的实现可表示如下。
使用参数化命令申明SQL语句stringmysql等于"Select*FromT_AdminwhereUser id等于
@namean dUs erPwd等于@pwd"
OleDbConnectionconn等于newOleDbConnect ion(contr)
O leDbCommandcmd等于newOl eDbCommand(mys ql conn)
对@n ame参数赋值
("@n ame" nam e)
对@password参数赋值
("@pwd" Password)
参考文献:
[1]DavidLitchfield ' shandbook[M] .Wi leyPublishingInc 2005
[2]陈小兵张汉煜骆力明黄河.SQL注入攻击及其防范检测技术研究[J] .计算机工程与应用 2007 43(11)
[3]BassL ClementsP [M] .北京:清华大学出版社 2003:71-127参考文献推荐
本科工商企业管理课程
工商企业管理专业好吗
行政管理毕业论文选题is09000质量管理体系
管理学论文选题
计算机管理系统毕业论文
财务管理小论文
管理心理学概述
财务管理毕业论文设计
公共管理硕士论文选题
本文doc格式: 网站中防SQL注入攻击技术的【论文】
“A SP.NET网站中防SQL注入攻击技术的”由本人精心编辑整理内容源于网络仅供学习交流请勿商用。如有侵犯作者权益请留言或者发站内信息联系本人我将尽快删除。谢谢您的阅读与下载
ATCLOUD.NET怎么样?ATCLOUD.NET主要提供KVM架构的VPS产品、LXC容器化产品、权威DNS智能解析、域名注册、SSL证书等海外网站建设服务。 其大部分数据中心是由OVH机房提供,其节点包括美国(俄勒冈、弗吉尼亚)、加拿大、英国、法国、德国以及新加坡。 提供超过480Gbps的DDoS高防保护,杜绝DDoS攻击骚扰,比较适合海外建站等业务。官方网站:点击访问ATCLOUD官网活...
2022年春节假期陆续结束,根据惯例在春节之后各大云服务商会继续开始一年的促销活动。今年二月中旬会开启新春采购季的活动,我们已经看到腾讯云商家在春节期间已经有预告活动。当时已经看到有抢先优惠促销活动,目前我们企业和个人可以领取腾讯云代金券满减活动,以及企业用户可以领取域名优惠低至.COM域名1元。 直达链接 - 腾讯云新春采购活动抢先看活动时间:2022年1月20日至2022年2月15日我们可以在...
RAKsmart 商家从原本只有专注于独立服务器后看到产品线比较单薄,后来陆续有增加站群服务器、高防服务器、VPS主机,以及现在也有在新增云服务器、裸机云服务器等等。机房也有增加到拥有洛杉矶、圣何塞、日本、韩国、中国香港等多个机房。在年前也有介绍到RAKsmart商家有提供年付129元的云服务器套餐,年后我们看到居然再次刷新年付云服务器低价格。我们看到云服务器低至年79元,如果有需要便宜云服务器的...