Replies: 2 comments 2 replies
-
Hey, @x1mus! I'm here to help you with any bugs, questions, or contributions you have. Let's dive into this issue and work on resolving it together. To improve the detection of OpenSSL/BoringSSL versions on Android in the
Overall, your approach helps in maintaining the correct version detection logic by using the Android version as a fallback only when necessary. This should improve the accuracy of the BPF file selection process on Android devices. To continue talking to Dosu, mention @dosu. Help Dosu learn! Give it feedback: Great Response | Irrelevant Answer | Incorrect Sources | Too Verbose | Hallucination | Bug Report | Other |
Beta Was this translation helpful? Give feedback.
-
In the Android operating system, the BoringSSL class library is used by default, so by default (that is, no If you are an Android expert, you will probably use the So, I think this is a suitable solution. Or, do you have any better ideas? |
Beta Was this translation helpful? Give feedback.
-
Hi,
I was playing a bit with
ecapture
and figured out that whenever we are on android. The library would always be detected as BoringSSL even if the preceding detection returns the correct OpenSSL version.Android natively provides BoringSSL (if I'm not mistaking) but apps could ship OpenSSL directly within their build process. Therefore providing an openssl library with --libssl=openssl-path.so on android will prevent the decryption from working if we do not provide a specific libssl version because we overwrite this value afterwards.
Detection is performed here:
ecapture/user/module/probe_openssl.go
Line 204 in ff16186
Then if we are on android, we overwrite the detected value by our own (ie: "boringssl_a_<android_ver>"):
ecapture/user/module/probe_openssl.go
Line 252 in ff16186
Here's the modification I did on my side to patch the detection in my case. However, I did not do so much further testing so this might not be a good solution:
Beta Was this translation helpful? Give feedback.
All reactions