Skip to content
July 11, 2025
  • Linkedin
  • Twitter
  • Facebook
  • Youtube

Daily CyberSecurity

Primary Menu
  • Home
  • Cyber Criminals
  • Cyber Security
  • Data Leak
  • Linux
  • Malware
  • Vulnerability
  • Submit Press Release
  • Vulnerability Report
  • Home
  • Technique
  • Advanced Web Debugging with Fiddler
  • Technique

Advanced Web Debugging with Fiddler

Ddos June 10, 2017
Web Debugging Fiddler

On this post, I will introduce a penetration of the web test development industry. It is more popular a web traffic capture package analysis tool. Fiddler’s function here is not to say, a simple summary is to capture the package, change the package, replay. The focus of this article is not to introduce the basic usage of Fiddler, but to introduce how to build their own custom programming Fiddler. Most of the contents of this article from the Internet, such as the contents of the old can be self-bypass, all when the personal inquiries, can be sprayed.

Modify the rules file CustomRules.js

CustomRules.js is written in Jscript.NET and has a syntax similar to C #. By modifying the CustomRules.js can modify the http request and response, without interrupting the program, you can also do a special treatment for different url.

CustomRules.js file location

Fiddler Tools Menu Bar:

rules->CustomRules

Local computer disk storage address:
C:\Documents and Settings\[your user]\MyDocuments\Fiddler2\Scripts\CustomRules.js

Common content

First share a common content:

static function OnBeforeRequest(oSession: Session) {

// oSession.oRequest.headers.Remove("Cookie");
// oSession.oRequest.headers.Add("Cookie", "username=admin;");
// oSession.oRequest["Referer"]="http://securityonline.info";
// if (oSession.HTTPMethodIs("POST")){ //POST修改为GET
// oSession.RequestMethod="GET";
// }
// var strBody=oSession.GetRequestBodyAsString();
// // // strBody=strBody.replace("111","222");
// strBody="11111111111111111111111111111111111"+strBody;
// // // strBody=strBody.ToUpper();
// // // strBody=strBody.ToLower();
// oSession.utilSetRequestBody(strBody);
}

As shown above, modify the code under the OnBeforeRequest function to automatically modify some of the parameters in the request packet before sending the request. Such as can be added to change the cookie, headers header parameters, you can modify the type of request package, the main role is to achieve a specific role in the penetration test, such as bypassing the firewall.

Common function

Http request function: that is, modify the contents of the function, you can send http request packet before modifying some parameters.

static function OnBeforeRequest(oSession: Session)

Http response function: that is, modify the contents of the function, you can receive http response packet before modifying some parameters

static function OnBeforeResponse(oSession: Session)

The method properties in the function

Filter an url

if (oSession.host.indexOf("thief.one") > -1) {}

Modify the display style in the session

oSession["ui-color"] = "orange";

Remove a field from the http header

oSession.oRequest.headers.Remove("");

Modify the contents of a field in the http header

oSession.oRequest["Referer"] = "http://securityonline.info";

Modify host

oSession.host = "securityonline.info";

Modify the Origin field

oSession.oRequest["Origin"] = "http://securityonline.info";

Delete all cookies

oSession.oRequest.headers.Remove("Cookie");

Create a new cookie

oSession.oRequest.headers.Add("Cookie", "username=ddos;");

Gets the body string in the Request

var strBody=oSession.GetRequestBodyAsString();

Use regular expressions or replace methods to modify string

strBody=strBody.replace("security","ddos");

Play a dialog box to check the modified body

FiddlerObject.alert(strBody);

Will modify the body, re-write back to the Request

oSession.utilSetRequestBody(strBody);

Modify request url

For example: Replace the http protocol in the request URI with the https protocol.

oSession.fullUrl = "https" + oSession.fullUrl.Substring(oSession.fullUrl.IndexOf(':'));

Network speed limit

1000/download speed = time to be delayed (milliseconds), such as 20kB/s delay50 milliseconds to receive data.

if (m_SimulateModem) {

// Delay sends by 300ms per KB uploaded.
oSession["request-trickle-delay"] = "300";
// Delay receives by 150ms per KB downloaded.
oSession["response-trickle-delay"] = "150";
}

Fiddler can customize a lot of features, these are usually some of the usual content, such as you want to know more usage please refer to the official documents: Fiddler document

Rate this post
Tags: Fiddler

Continue Reading

Previous: What is DDos attack?
Next: Ubuntu 17.10 replace the LightDM login manager with the GNOME Display Manager (GDM)

Search

Our Websites
  • Penetration Testing Tools
  • The Daily Information Technology
  • 🎯 Supporter Goal

    We need 30 contributors every month to keep this site up and running.

    7 / 30 supporters

    Contribute Now

    Daily CyberSecurity

    • About SecurityOnline.info
    • Advertise with us
    • Announcement
    • Contact
    • Contributor Register
    • Login
    • About SecurityOnline.info
    • Advertise on SecurityOnline.info
    • Contact

    When you purchase through links on our site, we may earn an affiliate commission. Here’s how it works

    • Disclaimer
    • Privacy Policy
    • DMCA NOTICE
    • Linkedin
    • Twitter
    • Facebook
    • Youtube
    Copyright Daily CyberSecurity © All rights reserved. | MoreNews by AF themes.