封面
《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注入攻击技术的”由本人精心编辑整理内容源于网络仅供学习交流请勿商用。如有侵犯作者权益请留言或者发站内信息联系本人我将尽快删除。谢谢您的阅读与下载
易探云怎么样?易探云香港云服务器比较有优势,他家香港BGP+CN2口碑不错,速度也很稳定。尤其是今年他们动作很大,推出的香港云服务器有4个可用区价格低至18元起,试用过一个月的用户基本会续费,如果年付的话还可以享受8.5折或秒杀价格。今天,云服务器网(yuntue.com)小编推荐一下易探云国内云服务器优惠活动,北京和深圳这二个机房的云服务器2核2G5M带宽低至330.66元/年,还有高配云服务器...
imidc对日本独立服务器在搞特别促销,原价159美元的机器现在只需要88美元,而且给13个独立IPv4,30Mbps直连带宽,不限制流量。注意,本次促销只有一个链接,有2个不同的优惠码,你用不同的优惠码就对应着不同的配置,价格也不一样。88美元的机器,下单后默认不管就给512G SSD,要指定用HDD那就发工单,如果需要多加一个/28(13个)IPv4,每个月32美元...官方网站:https:...
NameCheap商家如今发布促销活动也是有不小套路的,比如会在提前一周+的时间告诉你他们未来的活,比如这次2021年的首次活动就有在一周之前看到,但是这不等到他们中午一点左右的时候才有正式开始,而且我确实是有需要注册域名,等着看看是否有真的折扣,但是实际上.COM域名力度也就一般需要51元左右,其他地方也就55元左右。当然,这次新年的首次活动不管如何肯定是比平时便宜一点点的。有新注册域名、企业域...