ssl_key_file_log.js 783 B

12345678910111213141516171819
  1. function startTLSKeyLogger(SSL_CTX_new, SSL_CTX_set_keylog_callback) {
  2. console.log("start----")
  3. function keyLogger(ssl, line) {
  4. console.log(new NativePointer(line).readCString());
  5. }
  6. const keyLogCallback = new NativeCallback(keyLogger, 'void', ['pointer', 'pointer']);
  7. Interceptor.attach(SSL_CTX_new, {
  8. onLeave: function (retval) {
  9. const ssl = new NativePointer(retval);
  10. const SSL_CTX_set_keylog_callbackFn = new NativeFunction(SSL_CTX_set_keylog_callback, 'void', ['pointer', 'pointer']);
  11. SSL_CTX_set_keylog_callbackFn(ssl, keyLogCallback);
  12. }
  13. });
  14. }
  15. startTLSKeyLogger(
  16. Module.findExportByName('libssl.so', 'SSL_CTX_new'),
  17. Module.findExportByName('libssl.so', 'SSL_CTX_set_keylog_callback')
  18. )