总结点:如何使用fiddller跟踪windows进程发送的请求
案例如下:
需求:运维工具提出需求,对每个插件的配置文件,同步到运维中心时先加密,然后传输到运维中心解密,存储到数据库
测试分析:这个需求不仅仅要保证客户端的配置文件和数据库中的一致,并且需要保证中途是经过加密的,因此我们的测试点需要注意两点:
1、配置文件传输时是经过加密的
2、在运维中心将加密的文件正确解密并存储在数据库中
以上第2点比较好校验和测试,关键是第一点如何确定文件传输时是经过加密的,为了获取传输数据,我们需要获取传输的包,那么就需要使用工具来跟中数据,一开始我们选择fiddller,但是发现运维工具是C/S结构,而且需要跟踪的请求是windows服务发出的,fiddller无法捕获到,只好研究wireshark,但是短时间内,面对wireshark抓取的数据库,分析比较困难,太专业了,这块知识还欠缺,最终需找到fiddller如何跟踪windows服务发出的请求的方法,现在总结出来;
测试过程:
1、 在装了fiddler的电脑上的 C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config.目录下找到machine.config 文件;
2、打开machine.config 文件,添加如下代码:
<!-- The following section is to force use of Fiddler for all applications, including those running in service accounts -->
< system.net>
< defaultProxy
enabled = "true"
useDefaultCredentials = "true">
< proxy autoDetect="false" bypassonlocal="false" proxyaddress="http://127.0.0.1:8888" usesystemdefault="false" />
< /defaultProxy>
< /system.net>
3、打开fiddller,注意两点设置,如图
4、修改配置文件(看到版本是“1.0.1.24”,同步时间是2min),等待2min后开始发送数据,然后查看fiddller跟踪记录
5、通过查找(ctrl+f),打开查询框,输入要查找的请求的URL(关键字)
6、在Inspectors下的TextView可以看到发送的配置文件已经被加密,在返回的信息raw中可以看到版本“1.0.1.24”