{"id":309,"date":"2016-01-14T08:36:33","date_gmt":"2016-01-14T07:36:33","guid":{"rendered":"http:\/\/oso.com.pl\/?p=309"},"modified":"2016-01-14T08:42:32","modified_gmt":"2016-01-14T07:42:32","slug":"tester-toolbox-101-fiddler","status":"publish","type":"post","link":"https:\/\/oso.com.pl\/?p=309&lang=en","title":{"rendered":"Tester toolbox 101 &#8211; Fiddler"},"content":{"rendered":"<p><a href=\"http:\/\/oso.com.pl\/wp-content\/uploads\/2015\/11\/27windows-live-writer-announcing-the-new-fiddler-logo_efdd-image_3-png-png.png\" rel=\"attachment wp-att-396\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"396\" data-permalink=\"https:\/\/oso.com.pl\/?attachment_id=396\" data-orig-file=\"https:\/\/oso.com.pl\/wp-content\/uploads\/2015\/11\/27windows-live-writer-announcing-the-new-fiddler-logo_efdd-image_3-png-png.png\" data-orig-size=\"640,353\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"27windows-live-writer-announcing-the-new-fiddler-logo_efdd-image_3-png-png\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/oso.com.pl\/wp-content\/uploads\/2015\/11\/27windows-live-writer-announcing-the-new-fiddler-logo_efdd-image_3-png-png.png\" class=\"aligncenter size-full wp-image-396\" src=\"http:\/\/oso.com.pl\/wp-content\/uploads\/2015\/11\/27windows-live-writer-announcing-the-new-fiddler-logo_efdd-image_3-png-png.png\" alt=\"27windows-live-writer-announcing-the-new-fiddler-logo_efdd-image_3-png-png\" width=\"640\" height=\"353\" srcset=\"https:\/\/oso.com.pl\/wp-content\/uploads\/2015\/11\/27windows-live-writer-announcing-the-new-fiddler-logo_efdd-image_3-png-png.png 640w, https:\/\/oso.com.pl\/wp-content\/uploads\/2015\/11\/27windows-live-writer-announcing-the-new-fiddler-logo_efdd-image_3-png-png-300x165.png 300w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px\" \/><\/a><\/p>\n<p><a href=\"http:\/\/www.telerik.com\/fiddler\" target=\"_blank\">Fiddler<\/a>\u00a0is my favorite web debugging proxy.\u00a0It is <a href=\"http:\/\/www.telerik.com\/download\/fiddler\" target=\"_blank\">Windows-only<\/a>, but in my opinion it justifies keeping a Windows VM just to be able to use it. What I do is I have a VMware Fusion or Oracle VM VirtualBox running on my Mac, with one of the Windows VMs dedicated to running Fiddler.<\/p>\n<p>See below for some of typical use cases of this tool.<\/p>\n<p><em>Disclaimer:\u00a0some steps described\u00a0below may affect your computer&#8217;s or network&#8217;s security. So be sure to know what you are doing.<\/em><\/p>\n<h3>Monitor local applications<\/h3>\n<p>This\u00a0happens right out of the box. You may want to enable the HTTPS inspection as one of the first options after starting the tool:<\/p>\n<p><a href=\"http:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0114.png\" rel=\"attachment wp-att-403\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"403\" data-permalink=\"https:\/\/oso.com.pl\/?attachment_id=403\" data-orig-file=\"https:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0114.png\" data-orig-size=\"1106,402\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"2016-01-04_0114\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0114-1024x372.png\" class=\"aligncenter size-large wp-image-403\" src=\"http:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0114-1024x372.png\" alt=\"2016-01-04_0114\" width=\"840\" height=\"305\" srcset=\"https:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0114-1024x372.png 1024w, https:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0114-300x109.png 300w, https:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0114-768x279.png 768w, https:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0114.png 1106w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/a><\/p>\n<p>Fiddler may prompt you to <a href=\"http:\/\/docs.telerik.com\/fiddler\/Configure-Fiddler\/Tasks\/TrustFiddlerRootCert\" target=\"_blank\">trust the certificate<\/a> it generated. It is required for HTTPS inspection.<\/p>\n<p>Fiddler2 requires <a href=\"http:\/\/docs.telerik.com\/fiddler\/Configure-Fiddler\/Tasks\/ConfigureFiddlerForWin8\" target=\"_blank\">additional steps<\/a> to monitor Metro-style apps. But with Fiddler4 all should just work <em>automagically<\/em>.<\/p>\n<h3>Monitor remote\u00a0applications<\/h3>\n<p>To monitor the traffic from other computers (like Mac) you need to allow remote computers to connect in Fiddler&#8217;s options:<\/p>\n<p><a href=\"http:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0116.png\" rel=\"attachment wp-att-405\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"405\" data-permalink=\"https:\/\/oso.com.pl\/?attachment_id=405\" data-orig-file=\"https:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0116.png\" data-orig-size=\"1108,516\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"2016-01-04_0116\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0116-1024x477.png\" class=\"aligncenter size-large wp-image-405\" src=\"http:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0116-1024x477.png\" alt=\"2016-01-04_0116\" width=\"840\" height=\"391\" srcset=\"https:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0116-1024x477.png 1024w, https:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0116-300x140.png 300w, https:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0116-768x358.png 768w, https:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0116.png 1108w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/a><\/p>\n<p>Take a note of the port Fiddler listens on in the same options page (8888 in my case). The only other information you need is the IP address of the system running the proxy.\u00a0Then set the other computer to use this\u00a0IP and port as the proxy. <a href=\"http:\/\/kb.k12usa.com\/Knowledgebase\/Proxy-Settings-on-a-Mac-OS-X\" target=\"_blank\">Here&#8217;s how<\/a> to do it on Mac. At this point you should see all the remote traffic going through Fiddler.<\/p>\n<p>For HTTPS inspection from remote computers, remember to export the Fiddler&#8217;s root certificate and import it as a trusted Root CA on the remote computer. Otherwise you will get security prompts or your applications may refuse to contact their servers.<\/p>\n<p><a href=\"http:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0131.png\" rel=\"attachment wp-att-408\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"408\" data-permalink=\"https:\/\/oso.com.pl\/?attachment_id=408\" data-orig-file=\"https:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0131.png\" data-orig-size=\"1112,748\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"2016-01-04_0131\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0131-1024x689.png\" class=\"aligncenter size-large wp-image-408\" src=\"http:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0131-1024x689.png\" alt=\"2016-01-04_0131\" width=\"840\" height=\"565\" srcset=\"https:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0131-1024x689.png 1024w, https:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0131-300x202.png 300w, https:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0131-768x517.png 768w, https:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0131.png 1112w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/a><\/p>\n<h3>iOS and Android<\/h3>\n<p>The <a href=\"http:\/\/docs.telerik.com\/fiddler\/Configure-Fiddler\/Tasks\/ConfigureForiOS\" target=\"_blank\">setup<\/a> here is similar to\u00a0the monitoring remote applications case &#8211; you need to allow remote computers to connect. Next,\u00a0install\u00a0the <a href=\"http:\/\/www.telerik.com\/fiddler\/add-ons\" target=\"_blank\">CertMaker for iOS and Android<\/a> add-on. After that you have to restart Fiddler. Once it comes back online &#8211; change your mobile device settings to use the Fiddler machine as proxy. Last, visit the\u00a0http:\/\/&lt;Fiddler.machine.ipv4.address&gt;:8888\/ page from your mobile device &#8211; and install the root certificate from this website.<\/p>\n<h3>Modify\u00a0the traffic on the fly<\/h3>\n<p><a href=\"http:\/\/docs.telerik.com\/fiddler\/KnowledgeBase\/FiddlerScript\/ModifyRequestOrResponse\" target=\"_blank\">FiddlerScript<\/a> is very powerful. One useful case might be simulating server errors.<\/p>\n<p>When I wanted to test whether my application handles server outages gracefully, I was adding rules\u00a0to OnBeforeResponse function that would fake service issue:<br \/>\n<code>oSession.oResponse.headers.HTTPResponseCode = 503;<\/code><\/p>\n<h3>Troubleshooting<\/h3>\n<p>The one very common issue I have seen with Fiddler is that it may leave the proxy enabled on the local system, even if it is not running. It may not break some applications (Firefox maintains its own proxy settings, for example) but will affect others (IE, Chrome etc.). So if you see network-related issues when Fiddler is not running, check your Control Panel &gt; Internet Options and disable the proxy if needed.<\/p>\n<p><a href=\"http:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0133.png\" rel=\"attachment wp-att-409\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"409\" data-permalink=\"https:\/\/oso.com.pl\/?attachment_id=409\" data-orig-file=\"https:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0133.png\" data-orig-size=\"1676,874\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"2016-01-04_0133\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0133-1024x534.png\" class=\"aligncenter size-large wp-image-409\" src=\"http:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0133-1024x534.png\" alt=\"2016-01-04_0133\" width=\"840\" height=\"438\" srcset=\"https:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0133-1024x534.png 1024w, https:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0133-300x156.png 300w, https:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0133-768x400.png 768w, https:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0133-1200x626.png 1200w, https:\/\/oso.com.pl\/wp-content\/uploads\/2016\/01\/2016-01-04_0133.png 1676w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/a><\/p>\n<h3>The add-ons<\/h3>\n<p><a href=\"http:\/\/fiddler2.com\/add-ons\" target=\"_blank\">The list<\/a> just keeps going on. My favorites are:<\/p>\n<ul>\n<li>CertMaker for iOS and Android &#8211;\u00a0makes capturing mobile traffic easy<\/li>\n<li>Syntax-Highlighting Add-Ons<\/li>\n<li>Watcher &#8211; a Passive Security Auditor &#8211; generates security report as you click around your web application<\/li>\n<\/ul>\n<h3>The book<\/h3>\n<p>Yes, there is a book. I have not read the &#8222;<a href=\"https:\/\/gumroad.com\/l\/dwf2\/Introsale\" target=\"_blank\">Debugging with Fiddler<\/a>&#8222;, yet. But since <a href=\"https:\/\/twitter.com\/ericlaw\" target=\"_blank\">The Man<\/a> wrote it, looks like recommended position. The <a href=\"http:\/\/docs.telerik.com\/fiddler\/configure-fiddler\/tasks\/configurefiddler\" target=\"_blank\">official documentation<\/a> is also great.<\/p>\n<h3>By the way&#8230;<\/h3>\n<p>Other similar tools I have used, and\u00a0may suit\u00a0your needs better:<\/p>\n<ul>\n<li><a href=\"https:\/\/www.owasp.org\/index.php\/OWASP_Zed_Attack_Proxy_Project\" target=\"_blank\">ZAP<\/a>\u00a0&#8211; by OWASP, and has a <a href=\"https:\/\/wiki.jenkins-ci.org\/display\/JENKINS\/ZAProxy+Plugin\" target=\"_blank\">Jenkins plugin<\/a><\/li>\n<li><a href=\"https:\/\/portswigger.net\/burp\/proxy.html\" target=\"_blank\">Burp<\/a>\u00a0&#8211; has awesome website mapping, and powerful security scanning built-in<\/li>\n<li><a href=\"https:\/\/www.charlesproxy.com\/\" target=\"_blank\">Charles Proxy<\/a>\u00a0&#8211; works on Mac (Yay!), but is not free (Nay)<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Fiddler\u00a0is my favorite web debugging proxy.\u00a0It is Windows-only, but in my opinion it justifies keeping a Windows VM just to be able to use it. What I do is I have a VMware Fusion or Oracle VM VirtualBox running on my Mac, with one of the Windows VMs dedicated to running Fiddler. See below for &hellip; <a href=\"https:\/\/oso.com.pl\/?p=309&#038;lang=en\" class=\"more-link\">Czytaj dalej<span class=\"screen-reader-text\"> \u201eTester toolbox 101 &#8211; Fiddler\u201d<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[20],"tags":[23,24],"class_list":["post-309","post","type-post","status-publish","format-standard","hentry","category-testing","tag-testing","tag-tools"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p217OK-4Z","jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/oso.com.pl\/index.php?rest_route=\/wp\/v2\/posts\/309","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/oso.com.pl\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/oso.com.pl\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/oso.com.pl\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/oso.com.pl\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=309"}],"version-history":[{"count":22,"href":"https:\/\/oso.com.pl\/index.php?rest_route=\/wp\/v2\/posts\/309\/revisions"}],"predecessor-version":[{"id":433,"href":"https:\/\/oso.com.pl\/index.php?rest_route=\/wp\/v2\/posts\/309\/revisions\/433"}],"wp:attachment":[{"href":"https:\/\/oso.com.pl\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=309"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/oso.com.pl\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=309"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/oso.com.pl\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=309"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}