A framework based on the Fiddler web debugger to study Exploit Kits, malvertising and malicious traffic in general.
Download and install the latest version of Fiddler
Special instructions for Linux and Mac here:
Enable C# scripting (Windows only)
Launch Fiddler, and go to
Tools -> Options
Scripting tab, change the default (JScript.NET) to C#.
Change default text editor (optional)
In the same
Tools -> Options menu, click on the
Download or clone CustomRules.cs into the appropriate folder based on your operating system:
- Windows (7/10)
Finish up the installation
Start Fiddler to complete the installation of EKFiddle. That’s it, you’re all set!
The added toolbar buttons give you quick shortcuts to some of the main features:
Dumps current web sessions into a SAZ named (QuickSave-“MM-dd-yyyy-HH-mm-ss”.saz) to EKFiddle\Captures.
Toggle between the default column view or extra columns with additional information (includes time stamp, server IP and type, method, etc.).
VPN GUI directly built into Fiddler. It uses the OpenVPN client on Windows and Linux with ovpn files (sigining up with commercial VPN provider may be required). It will open up a new terminal/xterm whenever it connects to a new server via the selected .ovpn config file, killing the previous to ensure only one TAP adapter is used at any given time.
Download and install OpenVPN in default directory
Place your .ovpn files inside OpenVPN’s
- Linux (tested on Ubuntu 16.04)
sudo apt-get install openvpn
Place your .ovpn files in /etc/openvpn.
Allows you to connect to an upstream proxy (HTTP/s or SOCKS).
A shortcut to load SAZ (Fiddler’s native format) or PCAP (i.e. from Wireshark) captures.
View and create your custom regular expressions. Note: a master list is provided with auto-updates via GitHub. Additionally the custom list lets you create your own rules.
Run the master and custom regular expressions against current web sessions.
Clear any comment and colour highlighting in the currently loaded sessions.
The ContextAction menu (accessed by right-clicking on any session(s) allows you to perform additional commands on selected sections. This can be very helpful to do quick lookups, compute hashes or extract IOCs.
Hostname or IP address (Google Search, RiskIQ, URLQuery, RiskIQ)
Query the hostname for the currently selected session.
Create a regular expression from the currently selected URI. This action opens up a regex website and the URI is already in the clipboard, ready to be pasted into the query field.
Open in… Internet Explorer, Chrome, Firefox, Edge
This opens up the URI with the browser you selected.
Decodes the currently selected sessions (from their basic encoding).
Create a regular expression from the currently selected session’s source code. This action opens up a regex website and the URI is already in the clipboard, ready to be pasted into the query field.
Calculate MD5/SHA256 hash
Get the current session’s body and computes its hash.
Hybrid Analysis / VirusTotal lookup
Checks the current session’s body for hash, then look up that hash.
Extract to Disk
Downloads the currently selection session(s)’s body to disk, into the ‘Artifacts’ folder.
Copies into memory basic information from selected sessions so that they can be shared as IOCs.
Allows you to identify the sequence of events between sessions. Right-clik on the session you are interested in retracing your steps to and simply ‘connect the dots’. It will label the sequence of events from 01, to n within the comments column. You can reorder that column to have a condensed view of the sequence.
Load a list of URLs from a text file and let the browser automically visit them. Tools -> Crawler (experimental) -> Start crawler May require some tweaks in your browser’s settings, in particular with regards to crash recovery IE: not needed Firefox: about:config, set -1 value for toolkit.startup.max_resumed_crashes Chrome: not needed Edge: fix already included
This is only an educational purposes only I am not responsible for further activities
Join my forum and learn more ethical hacking and penetration testing
Get me at