欢迎来到天天文库
浏览记录
ID:24700708
大小:50.50 KB
页数:4页
时间:2018-11-14
《基于soap的web服务攻击及防范》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、基于SOAP的Web服务攻击及防范摘要:该文讨论了基于SOAP协议的L为基础的协议,在e方法,看看服务器对这些参数是如何响应的。同时我们知道Name参数的数据类型为String,这是很容易遭到参数欺骗攻击的一种数据类型。图2实验1(在name参数中输入“’”以及服务器的响应) 从上面服务器的响应可以看出,e参数没有进行最基本的参数检查。根据服务器返回的FaultString来看,e(Stringname,Stringuid,Stringpassation(StringproductName,Stringuid,Stringpass.Data.OleDb.OleDbExcep
2、tion:语法错误(缺少操作符)inqueryexpression‘productnamelike‘‘’andproviderid=’551-457-4487’,这句话告诉我们内部的SQL查询使用了SQL语句的LIKE表达式,应用程序根据我们给出的用来欺骗的单引号等参数生成最终的SQL查询语句。通过以上分析,我们知道既然ationByName方法,返回参数的类型是String而不是ArrayOfString。这是SOAP协议进行强制的类型和输入输出编码检查的一个方面。 通过实验1和实验2,我们可以得到结论——SQL的Like表达式可以返回一些我们本不能得到的信息。ation
3、ByName方法用户认证的执行过程,实验3中我们还是利用实验1中对name参数采用的方法,将单引号插入uid参数,看看是否会影响用户认证SQL表达式。图4实验3(在用户id参数中加入“’”及服务器返回的结果)在这个实验的想定中,服务器返回的FaultSstring告诉我们程序是如何利用uid和passethingfromsometableethingfromsometablewhereuid=’’or’’=’’andpassword=’’orproviderid=’787-457-1154’。服务将接收我们的SQL,返回我们想窃取的用户信息。图6实验5(用户名及口令欺骗及服务
4、器返回的结果) 3、防范Web服务攻击 保护Web服务不被攻击需要开发人员、系统管理员和管理人员的协作。黑客们会不断地改变他们的攻击方法,所以我们需要一个完善的安全的Web应用。 防范Web服务攻击最有效的方法就是进行输入参数与返回结果的验证和检查。在参数传给服务器之前,任何可能引起不安全因素的字符或字符串都要进行处理。去除引号,反斜线等等还不足够,最好的方法是指定一种拒绝错误的规则来过滤掉不安全的数据,包括语法和逻辑检查等等。 应用程序同样要对返回给用户的数据进行确认。同样包括SOAP中的类型检查,逻辑检查以及确保返回的对象中包含的数据没有不安全的东西。另外,程序还
5、要确保格式的有效性,使用统一的错误报告而不是默认的错误报告,默认的错误报告通常会告诉用户太多的信息。 4、结束语 随着WebServices的越来越流行,WebService的安全性也越来越重要。分析可能产生攻击和欺骗的手段,能更好地使我们及时采取措施来防止此类恶性攻击和欺骗所带来的严重后果。 作者: 侯悦 毛俊 1(空军工程大学电讯工程学院西安710077) 2(解放军报社技术装备部北京100832)
此文档下载收益归作者所有