Skip to content

Instantly share code, notes, and snippets.

@spvkgn
Last active October 20, 2024 08:20
Show Gist options
  • Save spvkgn/82b396ff3f9ba0c19d1536a1e5c4777c to your computer and use it in GitHub Desktop.
Save spvkgn/82b396ff3f9ba0c19d1536a1e5c4777c to your computer and use it in GitHub Desktop.
Capture TLS Client Hello
#!/bin/sh
if [ -z "$1" ]; then
echo "Usage: $0 example.com"
exit 1
fi
CURL=curl
DOMAIN="$1"
BIN_FILE="tls_clienthello_$(echo $DOMAIN | sed 's/\./_/g').bin"
OUTPUT_DIR=''
[ ! -d "$OUTPUT_DIR" ] && OUTPUT_DIR=$(pwd)
BIN_FILE="${OUTPUT_DIR}/${BIN_FILE}"
PORT=4343
(nc -l -p $PORT > "$BIN_FILE") &
NC_PID=$!
$CURL -Isk "https://$DOMAIN" --connect-to ::127.0.0.1:$PORT -m 1
if [ -s "$BIN_FILE" ]; then
echo "TLS Client Hello saved to $BIN_FILE"
else
echo "Nothing was captured"
rm -f "$BIN_FILE"
kill $NC_PID
fi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment