This repository has been archived on 2024-01-23. You can view files and clone it, but cannot push or open issues or pull requests.
wireguard-tools/contrib/extract-handshakes
Jason A. Donenfeld 1ad6b17c35 extract-{handshakes,keys}: rework for upstream kernel
Now that WireGuard has been upstreamed and the repos split, we have to
look elsewhere for these headers.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-02-01 00:53:30 +01:00
..
.gitignore contrib: add extract-handshakes kprobe example 2018-03-04 18:50:25 +01:00
Makefile extract-{handshakes,keys}: rework for upstream kernel 2020-02-01 00:53:30 +01:00
README contrib: add extract-handshakes kprobe example 2018-03-04 18:50:25 +01:00
extract-handshakes.sh global: bump copyright 2020-01-02 19:52:25 +01:00
offset-finder.c extract-{handshakes,keys}: rework for upstream kernel 2020-02-01 00:53:30 +01:00

README

Handshake Extractor
===================

This will extract private keys from outgoing handshake sessions, prior
to them being sent, via kprobes. It exports the bare minimum to be
able to then decrypt all packets in the handshake and in the subsequent
transport data session.

Build:

    $ make

Run (as root):

    # ./extract-handshakes.sh
    New handshake session:
      LOCAL_STATIC_PRIVATE_KEY = QChaGDXeH3eQsbFAhueUNWFdq9KfpF3yl+eITjZbXEk=
      REMOTE_STATIC_PUBLIC_KEY = HzgTY6aWXtuSyW/PUquZtg8LB/DyMwEXGkPiEmdSsUU=
      LOCAL_EPHEMERAL_PRIVATE_KEY = UNGdRHuKDeqbFvmiV5FD4wP7a8PqI6v3Xnnz6Jc6NXQ=
      PRESHARED_KEY = AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=