· [Java论坛][安全论坛][数据库论坛][操作系统论坛]
· [访谈] 网银安全系列访谈之:惊心动魄网银故事
· [热点专题] 网银安全系列 3G上网卡巡礼
· [订阅IT技术周刊][IT资源下载专区][病毒求助专区]
· [热点] 跨站脚本十二问 四步防范Conficker
· [热点] Windows 7 RC版公开下载 憾缺中文版

连载:使用 Firefox攻击Web2.0应用(三)

发布时间:2007.07.23 06:58     来源:赛迪网    作者:Kevin

【原创翻译,版权所有,合作网站如欲转载,请注明原创翻译作者,及文章出处(赛迪网)。谢绝非合作网站转载,违者,赛迪网将保留追究其法律责任的权利!】

3.3调用逻辑的发现

为了剖析客户端上基于Ajax的Web应用,我们需要仔细浏览每个事件,去判断它们的处理逻辑。一种分析处理逻辑的方式是逐行阅读源代码。通常,每个事件调用只处理几个函数。因此,需要使用一种技术,能够在浏览器中单步执行相关的代码。

目前已经开发出有几款JavaScript的调试器,可以达到以上要求,Firebug就是其中之一。在我们的例子里再次使用Firebug来进行单步执行。

让我们以登录过程为例进行说明,页面login.html从浏览器用户那里接收用户名和密码,如图6所示。使用Firebug的“Inspect”功能去确定每个表单的属性。

图6 使用Firebug查看表单属性

图6的例子中,检查表单的属性后,可以清楚的发现一个调用发生在auth()函数中。切换到“Debugger”面板,如图7所示,可以看到这个事件所对应的内部逻辑。

图7 使用Firebug进行单步调试

这个页面使用到的JavaScript脚本的依赖关系都可以从图7中清楚的看到。这个页面使用到了ajaxlib.js和validation.js这两个脚本文件。这两个脚本文件中存在一些函数被登录页面使用到。我们可以在auth()这个函数中设下断点,然后在用户名和密码框内输入用户名和密码,点击“Submit”,开始单步执行。

图8 设置断点控制执行过程

现在,我们来单步执行该程序,点击“Step in”,进入下一步,运行到如图8中高亮显示的部分,JavaScript的执行转到了另外一个位于validation.js文件中的函数userval(),如图9所示。

图9 单步执行到validation.js脚本

前面的图9所示的函数用来验证用户名的合法性。一旦验证通过,会执行下一个函数callGetMethod()。如图10所示。

图10 进行一个Ajax调用

最后,到达执行序列的最后,可以看到通过XHR对象调用后台的Web Services,如图11所示。

图11 Firebug控制台显示调用的Web Service

这里,我们就获得了后台服务器Web Services的资源的位置。

http://example.com/2/auth/ws/login.asmx/getSecurityToken?username=amish&password=amish

上述资源显然是运行在.net框架下的一个Web service。经过分析过可以发现,用户验证可能可以被绕过,这对Web2.0的应用来说无疑是潜在的威胁。

进一步考虑,我们可以通过使用WSDL(Web Services Description Language)文件对这个Web service进行暴力扫描。也可以进行一些注入攻击,例如SQL注入或者XPATH注入,可以使用诸如wsChess等工具,wsChess 是Net-Square公司所推出的基于.NET的Web Services安全工具包。

在这个例子中,该Web Service存在XPATH注入漏洞,对Web Service的安全评估超出了这篇文章的讨论范围。另外,这种单步执行技术,可以帮助识别一些客户端攻击,例如XSS(跨站脚本攻击),操纵DOM的攻击,绕过客户端的安全控制,恶意Ajax代码注入等。

四、结论

SOA(面向服务体系结构)Ajax,RIA(Rich Internet Application)和Web Services是下一代Web应用的重要组成部分。为了跟上这些技术的发展,应对下一代Web应用中的安全挑战,我们需要研究不同的方法,同时开发一些安全工具。评估这些应用安全性的一个高效的手段就是使用浏览器。

本文我们采用了几种技术去评估Web2.0应用的安全性。使用这些方法,可以发现和分离出一些与Ajax相关的安全漏洞。浏览器自动化脚本可以帮助我们在客户端资源中寻找和定位安全漏洞。

下一代Web应用中,JavaScript得到了广泛的应用。方便好用的调试工具是我们用来战胜安全漏洞的利器。这篇文章介绍了使用Firefox浏览器及其插件对Web2.0应用进行安全评估。

参考文献

[1] Ajax security,http://www.securityfocus.com/infocus/1868

[2] XHR Object specification, http://www.w3.org/TR/XMLHttpRequest/

[3] Firebug download, https://addons.mozilla.org/firefox/1843/; Firebug usage,http://www.joehewitt.com/software/firebug/docs.php

[4] Chickenfoot quick start, http://groups.csail.mit.edu/uid/chickenfoot/quickstart.html

[5] Chickenfoot API reference - http://groups.csail.mit.edu/uid/chickenfoot/api.html

[6] Venkman walkthrough, http://www.mozilla.org/projects/venkman/venkman-walkthrough.html

[7] wsChess, http://net-square.com/wschess

(责任编辑:李磊)

【相关文章】

《连载:使用Firefox攻击Web2.0应用(一)》

《连载:使用 Firefox攻击Web2.0应用(二)》


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
· 安全研究人员赚黑心钱 兜售大公司软件漏洞 (07-22) · 安全认知 详尽了解IIS服务漏洞与安全性 (07-20)
· 安全知识回顾由系统389端口看服务器安全 (07-20) · iPhone功能过多加密专家认为其更不安全 (07-20)
· Google开发安全工具 自动查找web软件缺陷 (07-20) · 电子邮件系统远离威胁 (07-19)
· 用Windows Server 2003搭建安全服务器 (07-19) · 连载:使用 Firefox攻击Web2.0应用(二) (07-19)
· 看似平常的上网行为 竟隐藏危险 (07-19) · 只要网络开启 就有危险 (07-19)
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
资讯 通信 IT产品 IT技术 信息化
2009第七届中国电脑商年会直播
·创业投资系列访谈:产业..
·特别策划:视频网站系列..
·专题:网游虚拟货币新规..
专题:6月上市手机新品回顾及7月新机展望
·2009年中国电信业信息化..
·专题:把iPhone 3GS“解..
·WAPI重启国际标准进程 ..
专题:09年中盘点-联想春季打印机新品回顾
·InfoComm 2009 视听与集..
·网游背后的故事 网游服..
·[专题]联想ThinkPad T40..
BizSpark:微软为技术创业企业点燃火花
·社区活动:我的IT求知生..
·访谈:内网安全2009系列..
·安全访谈:网银安全之Sa..