f0rw4rd/sthenos-embedded-toolkit

GitHub: f0rw4rd/sthenos-embedded-toolkit

Stars: 13 | Forks: 3

# Sthenos Embedded Toolkit ``` ) \ / ( /|\ ) \___/ ( /|\ / | \ ( /\ /\ ) / | \ / | \ \ x | O / / | \ +----/-----|-----O------\ | /----O------|------\--------+ | '^` V '^` | | STHENOS EMBEDDED TOOLKIT | | | | Static Binaries for All Architectures | +---------------------------------------------------------+ l /\ / \\ \ /\ l l / \ / )) \ / \ l I/ V // V \I V ``` 快速、可靠的流水线,用于为 50 多种架构的嵌入式系统构建静态调试和分析工具。支持 musl 和 glibc 工具链,提供用于运行时操作的 LD_PRELOAD 共享库。 ## 下载预编译二进制文件 - **带校验和的每架构 tarball:**[GitHub Releases](https://github.com/f0rw4rd/sthenos-embedded-toolkit/releases) - **浏览单个二进制文件:**[release-artifacts 分支](https://github.com/f0rw4rd/sthenos-embedded-toolkit/tree/release-artifacts/output) 选择你的架构 → 下载你需要的工具。 ## 从源代码构建 ``` # 为所有架构构建所有工具 ./build # 或者为特定架构构建特定工具 ./build strace --arch arm32v5le # 为特定架构构建所有工具 ./build --arch arm32v5le # 查看所有可用选项 ./build --help ``` ### 常用选项 - `--arch ARCH` - 为特定架构构建(或 `--arch all` 表示全部) - `-d, --debug` - 启用详细输出的调试模式 - `-f, --force` - 强制重建(忽略现有二进制文件) - `-i, --interactive` - 在构建容器中启动交互式 Shell - `--shell CMD` - 在带有构建环境的容器中运行命令 - `--clean` - 清理输出和日志目录 - `--download` - 仅下载源码和工具链 ## 可用工具 **分析与调试**:strace、ltrace、ply、gdbserver、tcpdump、nmap **网络工具**:socat、ncat、dropbear(SSH)、can-utils、curl、microsocks **系统工具**:bash、busybox、Shell 工具 **LD_PRELOAD 库**:libdesock、Shell 工具、tls-noverify ## 支持的架构 **50+ 架构**,包括: - **ARM**:aarch64、arm32v5le、arm32v7le、armeb、armv6、armv7m、armv7r 等 - **x86**:x86_64、i486、ix86le - **MIPS**:mips32be/le、mips64、mipsn32,带软浮点变体 - **PowerPC**:ppc32be、ppc64le、powerpc64,带软浮点变体 - **RISC-V**:riscv32、riscv64 - **其他**:m68k、microblaze、or1k、s390x、sh2/4、sparc64 ## 系统要求 - Docker - 20GB 以上可用磁盘空间 - 网络连接 ### 查找你的架构 在你的目标系统上运行以下命令以检测架构: ``` echo "$(uname -m)-$(uname -m | grep -q '64' && echo 64 || echo 32)-$(echo -n I | hexdump -c 2>/dev/null | grep -q I && echo le || echo be)-$(grep -qE 'FPU.*yes|vfp|neon' /proc/cpuinfo 2>/dev/null && echo hf || echo sf)-$(ldd --version 2>&1 | grep -q musl && echo musl || echo glibc)" ``` 示例输出: - `mips-32-be-sf-musl` → 使用 `output/mips32v2besf/` - `arm-32-le-hf-glibc` → 使用 `output/arm32v7lehf/` - `x86_-64-le-hf-glibc` → 使用 `output/x86_64/` 然后从匹配的目录下载工具。 ``` # 测试二进制文件是否适用于目标 ./custom # Should display banner if correct ``` ## 从源代码构建 ``` # 为所有架构构建所有工具 ./build # 为特定架构构建特定工具 ./build strace --arch arm32v5le ``` 构建的二进制文件位于 `output//` —— 全部为静态链接。 ## 文档 [架构指南](docs/Architecture-Guide.md) | [故障排除](docs/Troubleshooting.md) ## 关于 Sthenos 为嵌入式系统提供静态编译的调试和分析工具,适用于系统分析、网络调试以及跨多种架构的嵌入式开发。 ## 贡献与支持 欢迎提交修复 Bug、新工具和架构支持的拉取请求。欢迎捐赠以购买更多硬件用于测试。 ☕ **[在 Ko-fi 上支持我们](https://ko-fi.com/f0rw4rd)**
标签:GitHub Releases, glibc, JA3, LD_PRELOAD, musl, SEO: 多架构构建, SEO: 嵌入式工具包, SEO: 调试工具, SEO: 静态链接, 交叉编译, 共享库, 分析工具, 可移植性, 多架构支持, 嵌入式系统, 嵌入式调试, 技术栈: Shell 脚本, 技术栈: 容器化构建, 技术栈: 构建工具, 构建系统, 校验和, 源码构建, 网络工具, 静态二进制, 静态链接, 预编译二进制