Support TLS key logging
Description
Support TLS key logging, this can be implemented by Proxyman looking for a "SSLKEYLOGFILE" environment variable as is done in other applications or by some other means (UI-wise).
Why this feature/change is important?
I am trying to debug issues that seem to origin in the communicate between Proxyman and the target server, I am using Wireshark to look at the relevant traffic but unfortunately (in this case) it is encrypted (TLS), if the keys could be logged as in other applications, I could then load them to Wireshark and take a look at the unencrypted traffic. Without this, I have no insight into what is happening between Proxyman and the target server.
Thanks for opening the ticket. I might consider to implement this feature if we collect more requests 👍
agreed, I have similar issue, I need to compare request between app to proxyman and proxyman to target server
June 1, 2024. Excuse me, is it supported now?
Any news ? @NghiaTranUIT
@novitae To be honest, I don't know how to implement it. Can you show me the current solution from another app?
@novitae To be honest, I don't know how to implement it. Can you show me the current solution from another app?
I just took a look at how mitmproxy does it, but their backend is python, so it will be different for you.
What crypto backend are you using ? OpenSSL ? If it is, or any other big one, I'm pretty sure it's easy and there are already methods to make it easier. I am willing to do the researches !
@novitae It's what you're looking for?
- mitmproxy does TLSKeyLogging for both way: client -> mitmproxy, and mitmproxy -> servers. Do you need both?
- mitmproxy does TLSKeyLogging for both way: client -> mitmproxy, and mitmproxy -> servers. Do you need both?
Yes usually you have to log both
thanks. I will add it. What do you do with this file? These secrets don't link with certain domains, so It's hard to know which domain SSL is.
thanks. I will add it. What do you do with this file? These secrets don't link with certain domains, so It's hard to know which domain SSL is.
Yes I must admit the way it works I a bit confusing, and I couldn't explain to you how it works to find which key is for which connection, but read this you might understand better:
https://wiki.wireshark.org/TLS#Using%20the%20(Pre)-Master-Secret
@novitae @dabing1022 @swznd @seidnerj Good news: TLS Key Logging is officially supported on this Beta build: https://download.proxyman.io/beta/Proxyman_5.12.2_Support_TLS_Key_Logging.dmg
You can access it in the Tool menu -> TLS Key Logging -> Select your File or Folder.
- I prefer using UI because macOS app can't read your system env
SSLKEYLOGFILE
Thank you ! I just tried it and decrypted with Wireshark, it works perfectly
This is awesome!!! Thank you so much @NghiaTranUIT! 🙏