diff --git a/README.md b/README.md index 4dc19cd..33941a5 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@

# friTap -![version](https://img.shields.io/badge/version-1.3.0.0-blue) [![PyPI version](https://d25lcipzij17d.cloudfront.net/badge.svg?id=py&r=r&ts=1683906897&type=6e&v=1.3.0.0&x2=0)](https://badge.fury.io/py/friTap) +![version](https://img.shields.io/badge/version-1.3.0.1-blue) [![PyPI version](https://d25lcipzij17d.cloudfront.net/badge.svg?id=py&r=r&ts=1683906897&type=6e&v=1.3.0.1&x2=0)](https://badge.fury.io/py/friTap) friTap is a powerful tool designed to assist researchers in analyzing network traffic encapsulated in SSL/TLS. With its ability to automate key extraction, friTap is especially valuable when dealing with malware analysis or investigating privacy issues in applications. By simplifying the process of decrypting and inspecting encrypted traffic, friTap empowers researchers to uncover critical insights with ease. diff --git a/agent/android/android_agent.ts b/agent/android/android_agent.ts index 99568d0..9484742 100644 --- a/agent/android/android_agent.ts +++ b/agent/android/android_agent.ts @@ -138,8 +138,8 @@ export function load_android_hooking_agent() { [/.*libs2n.so/, invokeHookingFunction(s2ntls_execute)], [/.*mono-btls.*\.so/, invokeHookingFunction(mono_btls_execute)], [/.*cronet.*\.so/, invokeHookingFunction(cronet_execute)], - [/.*monochrome.*\.so/, invokeHookingFunction(cronet_execute)]];//, - //[/.*libwarp_mobile.*\.so/, invokeHookingFunction(cronet_execute)]]; + [/.*monochrome.*\.so/, invokeHookingFunction(cronet_execute)], + [/.*libwarp_mobile.*\.so/, invokeHookingFunction(cronet_execute)]]; // here the client_random is not working install_java_hooks(); hook_native_Android_SSL_Libs(module_library_mapping, true); diff --git a/agent/android/cronet_android.ts b/agent/android/cronet_android.ts index 98ef9a6..dc70d3a 100644 --- a/agent/android/cronet_android.ts +++ b/agent/android/cronet_android.ts @@ -67,6 +67,10 @@ export class Cronet_Android extends Cronet { // Capture the dumpKeys function with the correct 'this' let dumpKeysFunc = this.dumpKeys.bind(this); + if(this.module_name.includes("libwarp_mobile")){ + console.log("[!] The extracted CLIENT_RANDOM from libwarp_mobile.so is currently not working correctly."); + } + if(hooker.no_hooking_success){ let symbols = Process.getModuleByName(this.module_name).enumerateSymbols().filter(exports => exports.name.toLowerCase().includes("ssl_log")); if(symbols.length > 0){ diff --git a/friTap/_ssl_log.js b/friTap/_ssl_log.js index bfc3097..0dd2808 100644 --- a/friTap/_ssl_log.js +++ b/friTap/_ssl_log.js @@ -1,16 +1,16 @@ 📦 3346 /agent/ssl_log.js.map 4339 /agent/ssl_log.js -4183 /agent/android/android_agent.js.map -5754 /agent/android/android_agent.js +4222 /agent/android/android_agent.js.map +5792 /agent/android/android_agent.js 937 /agent/android/android_java_tls_libs.js.map 1150 /agent/android/android_java_tls_libs.js 4361 /agent/android/bouncycastle.js.map 5111 /agent/android/bouncycastle.js 5309 /agent/android/conscrypt.js.map 8444 /agent/android/conscrypt.js -3221 /agent/android/cronet_android.js.map -4873 /agent/android/cronet_android.js +3327 /agent/android/cronet_android.js.map +5061 /agent/android/cronet_android.js 2274 /agent/android/flutter_android.js.map 3238 /agent/android/flutter_android.js 1392 /agent/android/gnutls_android.js.map @@ -245,7 +245,7 @@ function load_os_specific_agent() { } load_os_specific_agent(); ✄ -{"version":3,"file":"android_agent.js","sourceRoot":"/Users/danielbaier/research/projects/github/issues/2024 fritap issues/friTap/","sources":["agent/android/android_agent.ts"],"names":[],"mappings":"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"} +{"version":3,"file":"android_agent.js","sourceRoot":"/Users/danielbaier/research/projects/github/issues/2024 fritap issues/friTap/","sources":["agent/android/android_agent.ts"],"names":[],"mappings":"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"} ✄ import { module_library_mapping } from "../shared/shared_structures.js"; import { getModuleNames, ssl_library_loader, invokeHookingFunction } from "../shared/shared_functions.js"; @@ -369,9 +369,9 @@ export function load_android_hooking_agent() { [/.*libs2n.so/, invokeHookingFunction(s2ntls_execute)], [/.*mono-btls.*\.so/, invokeHookingFunction(mono_btls_execute)], [/.*cronet.*\.so/, invokeHookingFunction(cronet_execute)], - [/.*monochrome.*\.so/, invokeHookingFunction(cronet_execute)] - ]; //, - //[/.*libwarp_mobile.*\.so/, invokeHookingFunction(cronet_execute)]]; + [/.*monochrome.*\.so/, invokeHookingFunction(cronet_execute)], + [/.*libwarp_mobile.*\.so/, invokeHookingFunction(cronet_execute)] + ]; // here the client_random is not working install_java_hooks(); hook_native_Android_SSL_Libs(module_library_mapping, true); hook_Android_Dynamic_Loader(module_library_mapping, false); @@ -679,7 +679,7 @@ export function execute() { }); } ✄ -{"version":3,"file":"cronet_android.js","sourceRoot":"/Users/danielbaier/research/projects/github/issues/2024 fritap issues/friTap/","sources":["agent/android/cronet_android.ts"],"names":[],"mappings":"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"} +{"version":3,"file":"cronet_android.js","sourceRoot":"/Users/danielbaier/research/projects/github/issues/2024 fritap issues/friTap/","sources":["agent/android/cronet_android.ts"],"names":[],"mappings":"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"} ✄ import { Cronet } from "../ssl_lib/cronet.js"; import { socket_library } from "./android_agent.js"; @@ -734,6 +734,9 @@ export class Cronet_Android extends Cronet { execute_symbol_based_hooking(hooker) { // Capture the dumpKeys function with the correct 'this' let dumpKeysFunc = this.dumpKeys.bind(this); + if (this.module_name.includes("libwarp_mobile")) { + console.log("[!] The extracted CLIENT_RANDOM from libwarp_mobile.so is currently not working correctly."); + } if (hooker.no_hooking_success) { let symbols = Process.getModuleByName(this.module_name).enumerateSymbols().filter(exports => exports.name.toLowerCase().includes("ssl_log")); if (symbols.length > 0) { diff --git a/friTap/about.py b/friTap/about.py index fb2c1bf..e2cbf1c 100644 --- a/friTap/about.py +++ b/friTap/about.py @@ -2,5 +2,5 @@ # -*- coding: utf-8 -*- __author__ = "Daniel Baier, Julian Lengersdorff, Francois Egner, Max Ufer" -__version__ = "1.3.0.0" +__version__ = "1.3.0.1" debug = False # are we running in debug mode? \ No newline at end of file diff --git a/pattern.json b/pattern.json index 95c0761..4846db5 100644 --- a/pattern.json +++ b/pattern.json @@ -26,8 +26,8 @@ }, "arm64": { "Dump-Keys": { - "primary": "3F 23 03 D5 FF C3 01 D1 FD 7B 04 A9 F6 57 05 A9 F4 4F 06 A9 FD 03 01 91 08 34 40 F9 08 1? 41 F9 ?8 0? 00 B4", - "fallback": "3F 23 03 D5 FF 03 02 D1 FD 7B 04 A9 F7 2B 00 F9 F6 57 06 A9 F4 4F 07 A9 FD 03 01 91 08 34 40 F9 08 ?? 41 F9 E8 0F 00 B4" + "primary": "FF 43 02 D1 FD 7B 05 A9 F8 5F 06 A9 F6 57 07 A9 F4 4F 08 A9 FD 43 01 91 58 D0 3B D5 08 17 40 F9 A8 83 1F F8 08 34 40 F9 08 11 41 F9 E8 0D 00 B4", + "fallback": "3F 23 03 D5 FF C3 01 D1 FD 7B 04 A9 F6 57 05 A9 F4 4F 06 A9 FD 03 01 91 08 34 40 F9 08 1? 41 F9 ?8 0? 00 B4" }, "Install-Key-Log-Callback": { "primary": "11 22 33 44 55 66 ...",