前言

Fiddler Everywhere 是一款跨平台的抓包软件。

它由 Electron + dotNet 编写而成。

于是破解需要修改 Electron 与 dotNet 两部分。

破解

修改 Electron 的js代码

打开 main.xxxx.js
搜索 updateUserLicense ,在函数内部开头加入:

 xe.licenseInfo.currentLicense = "Pro"
 xe.licenseInfo.hasExpiredTrial = false
 xe.licenseInfo.isTrialAvailable = false
 xe.licenseInfo.hasValidLicense = true

修改 dotNet 的代码

1. 使用 ildasm 将 FiddlerBackendSDK.dll转成 il
2. 定位到 FiddlerBackendSDK.User.UserClient::GetBestAccount
删除 IL_000d – IL_0020 对应 if 语句
删除 IL_003f – IL_0040 对应 `return null;` 语句
3. 定位到 <>c__DisplayClass18_0′::’b__0
删除 IL_0000 – IL_0019 , 在 IL_001e 前插入 `ldc.i4.1`

代码对比

GetBestAccount:

public AccountDTO GetBestAccount(UserWithBestAccountDTO user)
{
	UserClient.u003cu003ec__DisplayClass18_0 variable = null;
	if (!user.get_BestEverywhereAccountId().get_HasValue())
	{
		return null;
	}
	return Enumerable.FirstOrDefault(user.get_Accounts(), new Func<UserAccountDTO, bool>(variable, (UserAccountDTO x) => x.get_Id() == this.user.get_BestEverywhereAccountId().get_Value()));
}

public AccountDTO GetBestAccount(UserWithBestAccountDTO user)
{
	UserClient.u003cu003ec__DisplayClass18_0 variable = null;
	return Enumerable.FirstOrDefault(user.get_Accounts(), new Func<UserAccountDTO, bool>(variable, (UserAccountDTO x) => true));
}

最后

使用 ilasm 将 il 文件 转成 dll

https://github.com/msojocs/fiddler-everywhere-crack


ESWINK , 版权所有丨如未注明 , 均为原创

原文标题:[全平台]破解抓包软件FiddlerEverywhere 3.3.0 cracked

Eswink原创声明