In this major new release of FiddlerCore, we’ve focused on helping you build your first FiddlerCore application with ease.
Single NuGet package for .NET Framework & .NET Standard
No matter what application or OS you target, you can just add the new FiddlerCore NuGet package and you’re good to go, as it includes the .NET 4.0, .NET 4.5, and .NET Standard 2.0 flavors.
You can use the packages directly from the Telerik NuGet server (authentication with your Telerik account required), or setup a private feed with the provided *.nupkg files.
With the wide popularity of Fiddler, it’s default SAZ (Session Archive Zip) format for saving web session information is becoming increasingly standard, so we decided to incorporate functionality for saving and loading .SAZ files. This was possible in the past, but only with custom implementation of ISAZProvider, ISAZReader, and ISAZWriter interfaces. Now a default SAZ provider is built-in, so you can directly use Utilities.WriteSessionArchive and Utilities.ReadSessionArchive methods to export and import SAZ files.
Modern Built-in Certificate Provider
HTTPS is everywhere today, and FiddlerCore needs a trusted certificate to execute its “man-in-the-middle attack” and decrypt session content. With this version the default certificate provider is updated and is now based on Bouncy Castle’s C# Cryptography API.
An important part of the FiddlerCore functionality is the ability to alter the system proxy settings – this covers important scenarios, for example sniffing all traffic on the machine. While there is built-in functionality to manipulate the proxy settings even now, e.g. starting FiddlerApplication with FiddlerCoreStartupSettings where RegisterAsSystemProxy is true, the included implementation cannot handle all possible combinations of different network connections (anyone using tethering on dial-up modem?) and target OSes.
Because of this we decided to abstract the network connections modification logic and provide API for easier extensibility. The functionality is separated in the Telerik.NetworkConnections assembly, which includes some built-in implementations for Windows, Mac, and Linux, and also contains the INetworkConnectionsDetector interface and NetworkConnection base class which can be used to implement modification logic for more exotic connection types.
Documentation, API Reference, and Knowledge Base
We created a place where you can find useful information about how to use FiddlerCore, and a set of quick how-to knowledge base articles to help you tackle the most common problems you’ll be facing. get you started with the product. The API has extensive XML documentation, so the API Reference could be useful as well.
Don’t forget that all our documentation is open source, and you can always fix that spelling error that bugs you, or help your future self by making a code snippet clearer. You can always use the ‘Improve this article’ button next to the content to open a quick pull request, or at least tell us whether the article was helpful using the green bar at the bottom.
We plan to add more articles and expand the current ones with the next releases, so tell us what’s important for your scenario, and what you need more information on.
Some of us don’t like to read the docs and prefer learning by doing. If this is your case, head straight to the FiddlerCore demos on GitHub. This repo contains a useful example demonstrating one of the most common use cases, which, naturally, is what Fiddler does. The scenario includes collecting all system traffic by modifying system’s proxy settings, decrypting HTTPS by installing a trusted certificate, and ability to save and load SAZ files containing archived web session information. For head-start, the app is in both .NET Core and .NET Framework flavors.
We plan to add more demos showcasing the most important usage scenarios with the next releases, so don’t hesitate to suggest improvements and use cases to cover.
Public Feedback Portal
Your feedback is super important factor when we decide how to develop the product further, so if you have a feature request in mind or bug report is affecting you, head on over to the FiddlerCore Feedback Portal and let us know. We’re listening.
Аfter talking with a lot of customers, we understood that they had no license suitable for testing FiddlerCore before deciding whether to bet on it for their apps. So, we decided to discontinue the Educational license in favor of the Trial license. With dedicated technical support for the whole 30-day period, you’ll get help directly from the same team who builds the product.
All existing users of Personal & Educational license may continue to use their copy of the product based on its license agreement.
This is a new beginning for FiddlerCore and if you want to be a part of it, start your free 30-day trial now.
Feel free to leave a comment below about the most useful FiddlerCore feature in this release, or what you want to see in the future.