- Updated .goreleaser.yaml to include armv7 builds.
- Added new shellcode payloads for armv7l
- Enhanced build-n-print.sh to support building payloads for armv7l architecture.
- Updated README.md with instructions for compiling payloads on Debian systems.
- Added new shellcode payloads for exec-argv1 and exec-bin-sh for amd64, i386, and aarch64 architectures.
- Introduced a backup feature for the su binary before overwriting it.
- Enhanced README.md with usage instructions and details about affected kernels.
- Added build-n-print.sh script for building and printing payloads in hex format.
- Adds an aarch64 ELF shellcode payload alongside the existing amd64 one,
selected at runtime via runtime.GOARCH. The arm64 ELF is a hand-built
172-byte binary performing the same setuid(0) / execve("/bin/sh") /
exit(0) sequence (syscalls 146, 221, 93). Disassembly for both payloads
is documented inline.
- Replaces the hardcoded /usr/bin/su path with resolveSu(): tries
/usr/bin/su first, then falls back to exec.LookPath("su") so the PoC
works on systems where su lives elsewhere (e.g. /bin/su on Debian
derivatives, or anywhere a non-standard PATH points).