sslkeylogger-byteman-helper

This project contains a Byteman helper class and a rule providing functionality to log SSL connection keys in a format used by wireshark to decrypt SSL Traffic.

License

License

Categories

Categories

Byteman Application Layer Libs Bytecode Manipulation KeY Data Data Formats Formal Verification
GroupId

GroupId

com.github.mahnkong
ArtifactId

ArtifactId

sslkeylogger-byteman-helper
Last Version

Last Version

1.0.4
Release Date

Release Date

Type

Type

jar
Description

Description

sslkeylogger-byteman-helper
This project contains a Byteman helper class and a rule providing functionality to log SSL connection keys in a format used by wireshark to decrypt SSL Traffic.
Project URL

Project URL

https://github.com/mahnkong/sslkeylogger-byteman-helper
Source Code Management

Source Code Management

https://github.com/mahnkong/sslkeylogger-byteman-helper

Download sslkeylogger-byteman-helper

How to add to project

<!-- https://jarcasting.com/artifacts/com.github.mahnkong/sslkeylogger-byteman-helper/ -->
<dependency>
    <groupId>com.github.mahnkong</groupId>
    <artifactId>sslkeylogger-byteman-helper</artifactId>
    <version>1.0.4</version>
</dependency>
// https://jarcasting.com/artifacts/com.github.mahnkong/sslkeylogger-byteman-helper/
implementation 'com.github.mahnkong:sslkeylogger-byteman-helper:1.0.4'
// https://jarcasting.com/artifacts/com.github.mahnkong/sslkeylogger-byteman-helper/
implementation ("com.github.mahnkong:sslkeylogger-byteman-helper:1.0.4")
'com.github.mahnkong:sslkeylogger-byteman-helper:jar:1.0.4'
<dependency org="com.github.mahnkong" name="sslkeylogger-byteman-helper" rev="1.0.4">
  <artifact name="sslkeylogger-byteman-helper" type="jar" />
</dependency>
@Grapes(
@Grab(group='com.github.mahnkong', module='sslkeylogger-byteman-helper', version='1.0.4')
)
libraryDependencies += "com.github.mahnkong" % "sslkeylogger-byteman-helper" % "1.0.4"
[com.github.mahnkong/sslkeylogger-byteman-helper "1.0.4"]

Dependencies

runtime (2)

Group / Artifact Type Version
org.jboss.byteman : byteman jar 3.0.6
org.slf4j : slf4j-simple jar 1.7.21

Project Modules

There are no modules declared in this project.

Travis build status Download

About

This project contains a Byteman helper class and rule providing functionality to log SSL connection keys in a format used by wireshark to decrypt SSL Traffic. The logfile path can be specified with the environment variable SSL_KEYLOG_PATH. If not specified, the keys will be printed to STDOUT

Usage

The rule is part of the jar file, so in order to use the rule it must be extracted first.

run with log path specified

$ unzip path/to/sslkeylogger-byteman-helper.jar ssl_keylogger.btm
$ SSL_KEYLOG_PATH=/path/to/ssl.log java -Dorg.jboss.byteman.transform.all -javaagent:$BYTEMAN_HOME}/lib/byteman.jar=script:ssl_keylogger.btm,boot:${BYTEMAN_HOME}/lib/byteman.jar,boot:path/to/sslkeylogger-byteman-helper.jar -jar path/to/ssl_client.jar
$ cat $SSL_KEYLOG_PATH
# Sat Nov 26 19:12:11 UTC 2016
CLIENT_RANDOM 5839DE8A73FDA2FAF426A23863B59AFBBD345AEAED77EEE0DE0778BE63E3FE1E CBB90E69A8DE2BDA63FC978548BF90D6136049817806F5E72C035379CF27D5B5C83B71AB70250AEB4CEDE1A297616CC9

run without log path specified

$ unzip path/to/sslkeylogger-byteman-helper.jar ssl_keylogger.btm
$ java -Dorg.jboss.byteman.transform.all -javaagent:$BYTEMAN_HOME}/lib/byteman.jar=script:ssl_keylogger.btm,boot:${BYTEMAN_HOME}/lib/byteman.jar,boot:path/to/sslkeylogger-byteman-helper.jar -jar path/to/ssl_client.jar
CLIENT_RANDOM 5839DE8A73FDA2FAF426A23863B59AFBBD345AEAED77EEE0DE0778BE63E3FE1E CBB90E69A8DE2BDA63FC978548BF90D6136049817806F5E72C035379CF27D5B5C83B71AB70250AEB4CEDE1A297616CC9

another Usage example

See project: sslkeylogger-byteman-helper-example

Build and install into local maven repo

./gradlew install

Versions

Version
1.0.4
1.0.3
1.0.2
1.0.1