silverlight软件安全测试研究

本文介绍了一种针对使用WCF服务的Silverlight应用程序的安全测试方法,包括如何反编译Silverlight应用、调用WCF服务及使用WCF-Binary-Message-Inspector插件进行数据包的捕获和修改。
摘要由CSDN通过智能技术生成

最近研究了一下WCF的程序,学到了很多东西,比如silverlight的开发,WCF(Windows Communication Foundation)服务端和客户端的开发和配置,WPF(Windows Presentation Foundation)的开发,fiddler inspector插件的开发等等,虽然细节知识已经忘却,但是知识框架已然在心里已经形成了,拿到代码或者开发文档就可以研究了。


事件的起因是要对一个silverlight客户端软件进行黑盒安全测试。下载xap文件,将扩展名改为zip,解压得到程序运行文件(dll文件),用Reflector反编译程序主文件dll,得到silverlight的界面resources文件(xaml文件),对照着界面文件和反编译出来的代码可以对这个软件的框架和实现进行还原。


万幸这个silverlight采用的WCF服务是公开的,我用vs引用了WCF服务,通过重写silverlight客户端的调用方法和配置成功调用了服务端方法。至此WCF提供给silverlight的方法调用我都可以用自建的vs项目重写出来了,几乎包括所有功能(用户管理,业务单据,配置管理。。。。,好大一个漏洞)。然而这并不是测试的全部,为了进一步测试该软件功能细节,我需要对它进行截包(因为有些测试要修改request或者response)。


此采用了WCF和服务端进行通信,消息采用binary进行了编码,所以代理软件抓到的http包是乱码的。


我到telerik官网下载了WCF-Binary-Message-Inspector插件,这个插件比较厉害,可以将binary数据转化为xml数据,修改xml数据之后还可以转为binary数据继续发送给服务端。但是有点缺陷(1.切换tab之后,修改的内容会消失;2.response过来的包无法进行修改),我修改了这两个问题,在我这里使用的很ok,在这里分享给大家。

http://pan.baidu.com/s/1kU8Qsjd,可以在参照README进行配置,这是vs2010源码项目,如果有特殊需求可以自行修改。


先写到这里,如有问题,欢迎讨论。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值