CTF思路
点击放大


![Downloads]()
![Gem ]()
![Build Status]()
![Maintainability]()
![Code Co]()
![API Docs]()
![MIT License]()
This project is aimed primarily (but not exclusively) at analyzing seccomp sandboxes in CTF pwn challenges.
Some features are CTF-specific, but they're just as useful for analyzing real-world seccomp filters.
A on RubyGems.org!
If compilation fails, try:
then install seccomp-tools again.
Dumps the seccomp BPF from an executable, using the ptrace syscall.
NOTE: the target executable is actually run, so be careful with untrusted binaries.
Disassembles raw seccomp BPF into a readable format.
Assembles seccomp rules into raw bytes.
Useful when you want to write your own seccomp rules.
Supports jump labels and syscall names. See the examples below.
Since v1.6.0 [not released yet], asm has switched to a yacc-based parser, which allows a more flexible and intuiti!
The output of seccomp-tools disasm <file> --asm-able is valid input for asm:
Emulates seccomp given sys_nr, arg0, arg1, etc.
Summarizes a whole filter as a per-action policy: which syscalls end in ALLOW, KILL, ERRNO, etc.,
and under what argument constraints. The input can be a dumped BPF file, an executable (its seccomp is
dumped first, like dump), or a running process via --pid.
A more in example - the 0CTF/TCTF 2023 "Nothing is True" filter, which has separate 32/64-bit
allowlists and argument checks on open, mmap and execve:
Scans a filter for weaknesses and likely escape routes - a missing architecture or x32 guard, a
permissi) default, equi gaps (e.g. execve blocked but execveat not),
an open/read/write chain, or dangerous syscalls reachable as ALLOW - and reports each with a
se. It runs on every supported architecture (architecture-specific quirks like amd64's x32 are
applied only where they exist), and takes the same input as explain (a BPF file, an executable, or--pid).
Auditing a denylist with several escape routes (the TokyoWesterns CTF 2016 "diary" filter):
Use --format json for CI or tooling:
seccomp-tools completion <bash|zsh|fish> prints a completion script for the gi. Load it from your shell's startup file:
To avoid the startup cost of e it every time, write the script to the directory your shell loads completions from instead, e.g. seccomp-tools completion zsh > "${fpath[1]}/_seccomp-tools".
!emu
Pull requests adding support for more architectures are welcome!
I recommend using rbenv to manage your Ruby en.
$ gem install bundler$ git clone && cd seccomp-tools$ bundle install$ bundle exec rake
Any suggestions or feature requests are welcome!
Feel free to file issues or send pull requests.
And if you like this project, consider giving it a star :grimacing:
开发语言:Ruby
Star 数:1141
该项目属于CTF思路方向的开源资源,代码结构清晰,适合安全研究人员学习参考。项目围绕Provide powerful tools for seccomp analysis展开,提供了可运行的实现,对理解相关安全机制、工具原理与攻防技术具有较高的研究价值。
从技术实现角度看,此类项目的核心在于对底层原理的深入理解与工程化落地。开发者在研究过程中可以结合官方文档与社区讨论,梳理项目的初始化流程、核心模块职责与数据流转,逐步掌握其中的技术细节与设计思路。
1. 下载源码压缩包,解压到本地环境。
2. 根据项目类型准备对应的运行环境与依赖。
3. 按照 README 中的步骤完成配置与部署。
4. 在隔离的测试环境中运行验证,避免影响生产系统。
本资源来源于开源社区,仅供安全研究、技术学习与合法授权范围内的攻防演练使用,请勿用于任何非法或侵害他人权益的用途。使用本项目产生的一切后果由使用者自行承担。
| 资源标题 | seccomp-tools - Provide powerful tools for seccomp analysis |
| 所属分类 | CTF思路 |
| 发布作者 | admin |
| 发布时间 | 2026-10-05 23:37:54 |
| 下载权限 | 免费下载 |
| 附件数量 | 2 个下载链接 |
| 浏览次数 | 388 |
| 讨论数量 | 0 |
| 主题状态 | 正常讨论中 |