DF-5629 / analyze.sh
#!/bin/sh # DF-5629 analyzer: pull every "ELF interpreter ... not found" line out of the # captured tty transcript and report any bytes that follow our 1024-byte # marker payload ('DF5629LEAKMARK' + 'A'*1010). awk ' /ELF interpreter .* not found/ { line = $0 sub(/^ELF interpreter /, "", line) sub(/ not found$/, "", line) # our payload is exactly 1024 chars: marker + As payload = substr(line, 1, 1024) tail = substr(line, 1025) printf "payload_len=%d tail_len=%d tail_hex=", length(line), length(tail) for (i = 1; i <= length(tail); i++) printf "%02x%s", substr(tail, i, 1) == "" ? 0 : index("\x01\x02\x03\x04\x05\x06\x07\x08", substr(tail,i,1)), "" # hex above is useless in POSIX awk; print raw too printf "\ntail_raw=[%s]\n", tail }' "$1" |