2010-02-08 56 views
3

是否有方法检查编译为SWF文件的Flex应用程序中的HTTPS流量?检查SWF文件中的HTTPS流量

我试图使用Fiddler这一点,增加了DO_NOT_TRUST_FiddlerRoot受信任的根证书颁发机构所以我的IE浏览器现在可以访问通常会抱怨不受信任的证书其它的HTML网站。但是,来自SWF文件的HTTPS流量仍然不会出现在Fiddler中,事实上,Flex应用程序将无法工作(我相信Flex应用程序不支持使用自签名证书的HTTPS)。有没有办法解决它?

更新:为清楚起见,我对运行在Flash Player下的SWF文件和服务器之间的通信感兴趣(通常,HTTPService等Flex组件将用于此目的)。 SWF文件本身可以通过HTTP或HTTPS提供,这并不重要。

澄清2:不要假定源代码可用于SWF文件。如果是的话,可以使用Flash Builder 4的网络监视器。

(我评估可能的安全风险为我的客户只是要清楚我的意图。)

回答

6

尝试Charles Proxy它与HTTPS和AMF。有一些免费版本有一些小麻烦。为了使它与ssl一起工作,你需要进入Proxy-> Proxy Settings-> SSL并添加你想要监控的流量的域。

----从评论----

如果您有原始凭证,你可以将它设置在的Proxy-> SSL证书,它将由查尔斯,这应该引起被UED没有更多的错误(因为代理将拥有适当的证书)。

+0

Charles实际上看起来像一个比Fiddler功能更强大的工具,而且我最终遇到了同样的问题 - SWF文件无法正常工作(如果HTTPS证书不是来自受信任的权威机构,这是正常的),并且代理无法显示任何网络流量。 – Borek 2010-02-08 16:28:37

+0

我不确定你的问题到底是什么,但我得到的警告是“这个网站的安全证书有问题”。一旦我点击“继续浏览本网站(不推荐)”。我显示了所有的HTTPS流量。您是否启用了SSL代理? – 2010-02-08 16:55:43

+0

当您尝试访问HTML包装器时,您会收到安全警告,但我对服务器和Flex应用程序本身(通过HTTPService等组件)之间的流量感兴趣。在这种情况下,您将不会看到浏览器警告,代理也不会透露任何有用的信息,因为证书似乎被Flash Player本身拒绝。所以不幸的是查尔斯不是一个答案。 – Borek 2010-02-08 22:04:45

1

Adob​​e的Flash Builder 4 Beta内置网络监视器。

更多在这里学习:Flash Builder 4 beta

根据该文件:(Support for HTTPS protocol

The Network Monitor supports monitoring HTTPS calls to a server certified by a certificate 
authority (CA) or that has a self-signed certificate. 

To monitor calls over the HTTPS protocol, modify the default preference for the Network Monitor 
to ignore SSL security checks. Open the Preferences dialog and navigate to Flash Builder > 
Network Monitor. 
+0

假想的攻击者没有源代码,所以FB的网络监视器不适合他。 – Borek 2010-02-08 22:07:37

+0

@Borek - 由于您的意图是评估风险,因此您应该记住SWF文件可以反编译。这会让攻击者访问源代码。我从来没有这样做过,但我已经听到别人提过几次。 – invertedSpear 2010-02-08 22:46:23

+0

我们尝试了几个SWF混淆工具,并意识到他们可以/不可以做什么。攻击者的另一种可能性是检查交通本身,我们有更难评估的时间 - 我还不确定是否可以完成或不能完成。 – Borek 2010-02-09 00:01:06

2

有趣的是,提琴手开始显示HT​​TPS请求的今天。 Flex应用程序的行为类似于无法访问服务器端(这可能是因为来自Fiddler的响应使用Flash Player正确识别为与目标站点证书不同的自签名证书进行签名),但HTTP请求仍然存在已经发送并且通过Fiddler可见。

此外,罗伯特·朴建议查尔斯代理服务器可以使用目标站点的证书我猜会是迄今为止最好的方法(我没有尝试它作为小提琴手实验已经证明了足以让我们)。