红蓝攻防
点击放大


<h1 align="center">arsenal-ng</h1>
<p align="center">
<img src=" alt="Go ">
<img src=" alt="Platform">
<img src=" alt="License">
<br>
<img src=" alt="Tools Count">
<img src=" alt="Commands Count">
</p>
<p align="center">
<b>🎯 Modern pentest command launcher written in Go!</b>
</p>
<p align="center">
Inspired by <a href=" rewritten from scratch with a focus on simplicity, speed and de experience.
</p>
<p align="center">
<img src="assets/basic-search.gif" alt="Basic Search Demo" width="800">
</p>
---
> Requires Go 1.24.0 Ensure $(go en)/bin is in your $PATH.
Kali Linux ships arsenal-ng in its official repositories. Package tracker
You can create an alias for quick access (e.g., a):
Zsh:
Bash:
---
| Platform | Status | Notes |
|----------|--------|-------|
| Linux | ✅ Fully Supported | Requires kernel 6.2+ configuration for terminal prefill (see Linux Configuration) |
| macOS | ✅ Fully Supported | Works out of the box, no additional configuration needed |
| Windows | ⚠️ WSL Only | Native (CMD/PowerShell) is unsupported. Use via WSL. |
---
arsenal-ng relies on this feature to prefill the terminal buffer. You have two options to enable this functionality, both of which come with security trade-offs.
#### Option 1: Enable TIOCSTI Globally
The TIOCSTI ioctl is disabled by default in newer Linux kernels for security reasons.
#### Option 2: Grant CAP_SYS_ADMIN Capability
Instead of modifying system-wide settings, you can grant the CAP_SYS_ADMIN capability specifically to the arsenal-ng binary.
CAP_SYS_ADMIN is powerful and equi to root access. Use this method only if you fully understand the risks.
---
| Feature | Description |
|---------|-------------|
| ⚡ Instant Startup | Single binary, no dependencies, launches in milliseconds |
| 🔍 Smart Search | Multi-word fuzzy search across tool names, titles, tags, descriptions, and commands |
| 🎨 Syntax Highlighting | Commands are color-coded with syntax highlighting for better readability |
| 🏷️ Colored Tags | Each tag has a consistent, distinct color based on hash for quick identification |
| 📝 Simple YAML Format | Easy to maintain and extend cheatsheets |
| 🔧 Argument System | Support for {{arg}} and {{arg\|default}} placeholders with auto-completion |
| 🌐 Global | Set once, use e - auto-fill in all commands |
| 📊 Tools View | Browse all a tools with command counts in a paginated table |
| 💡 Command Hints | Interacti for special commands (set, unset, , tools) |
| ❓ Built-in Help | Press ? for comprehensive help screen with all shortcuts |
| 🖥️ Terminal Integration | Commands are written to terminal input buffer for easy editing before execution |
---
The selected command will appear in your terminal input buffer, ready to edit and execute.
1. Search for a command: Type keywords (e.g., nmap scan, ffuf)
2. Na results: Use arrow keys to browse matching commands
3. Select command: Press Enter on the desired command
4. Fill arguments: If the command has {{placeholders}}, fill them in
5. Execute: Press Enter to write the command to your terminal
#### Main Search View
| Key | Action |
|-----|--------|
| ↑ / ↓ | Na up/down in the list |
| Ctrl+P / Ctrl+N | Na list () |
| PgUp / PgDown | Jump one page up/down |
| Enter | Select highlighted command or execute special command |
| Esc / Ctrl+C | Exit application |
| ? | Show help screen |
| q | Quit (in some views) |
#### Argument Input View
| Key | Action |
|-----|--------|
| Tab / ↓ | Move to next argument field |
| Shift+Tab / ↑ | Move to previous argument field |
| Enter | Execute command with filled arguments |
| Esc | Go back to search view |
#### Tools View
<p align="center">
<img src="assets/tools-view.gif" alt="Tools View Demo" width="800">
</p>
| Key | Action |
|-----|--------|
| ↑ / ↓ | Na table rows |
| ← / → or h / l | Change page (previous/next) |
| Enter / Esc | Go back to search view |
#### Help Views
<p align="center">
<img src="assets/help-screen.gif" alt="Help Screen Demo" width="800">
</p>
| Key | Action |
|-----|--------|
| Enter / Esc | Go back to search view |
---
Set once and reuse them across all commands in your session. automatically pre-fill argument fields in commands.
| Command | Description |
|---------|-------------|
| set key=value | Set a global (e.g., set ip=10.10.10.10) |
| unset key | Remove a global |
| | List all currently set |
| tools | Show all a tools with command counts |
| help | Display comprehensive help screen |
<p align="center">
<img src="assets/.gif" alt=" Demo" width="800">
</p>
1. Type set ip=10.10.10.10 and press Enter
2. Select any command with {{ip}} placeholder
3. The ip field will be pre-filled automatically with 10.10.10.10
4. You can still edit the pre-filled value if needed
5. persist throughout your session until you exit or unset them
| | Description |
|----------|-------------|
| ip | Target IP address |
| domain | Target domain |
| user | Username |
| pass | Password |
| hash | NTLM hash |
| url | Target URL |
| port | Port number |
| lhost | Local host (your IP) |
| lport | Local port |
| wordlist | Wordlist path |
| output | Output file name |
---
Add your own commands by creating YAML files in internal/loader/cheat-files/:
| Syntax | Description | Example |
|--------|-------------|---------|
| {{arg}} | Required argument (user must fill) | {{ip}} |
| {{arg\|default}} | Argument with default value (can be edited) | {{port\|8080}} |
nmap, ffuf, gobuster)[recon, scan, network]){{placeholders}}---
Or build directly with Go:
1. Create a new YAML file in internal/loader/cheat-files/
2. Follow the format above (see Cheat File Format)
3. Rebuild: make build
After making changes, rebuild and test:
This project is open source and contributions are welcome!
internal/loader/cheat-files/ and submit a PRThe easiest way to contribute is by adding new cheat sheet YAML files:
1. Fork the repository
2. Add your YAML file(s) to internal/loader/cheat-files/
3. Follow the existing format and style
4. Test your changes locally
5. Submit a pull request
See Cheat File Format for details.
---
<p align="center">
Made with ❤️ and <a href=" Tea</a>
</p>
开发语言:Go
Star 数:729
该项目属于红蓝攻防方向的开源资源,代码结构清晰,适合安全研究人员学习参考。项目围绕The classic launcher, evolved. Fast, Go-based command library equipped with 200+ cybersecurity cheat-sheets. Just install and start hacking.展开,提供了可运行的实现,对理解相关安全机制、工具原理与攻防技术具有较高的研究价值。
从技术实现角度看,此类项目的核心在于对底层原理的深入理解与工程化落地。开发者在研究过程中可以结合官方文档与社区讨论,梳理项目的初始化流程、核心模块职责与数据流转,逐步掌握其中的技术细节与设计思路。
1. 下载源码压缩包,解压到本地环境。
2. 根据项目类型准备对应的运行环境与依赖。
3. 按照 README 中的步骤完成配置与部署。
4. 在隔离的测试环境中运行验证,避免影响生产系统。
本资源来源于开源社区,仅供安全研究、技术学习与合法授权范围内的攻防演练使用,请勿用于任何非法或侵害他人权益的用途。使用本项目产生的一切后果由使用者自行承担。
| 资源标题 | arsenal-ng - The classic launcher, evolved. Fast, Go-based comm |
| 所属分类 | 红蓝攻防 |
| 发布作者 | admin |
| 发布时间 | 2026-10-06 00:38:02 |
| 下载权限 | 免费下载 |
| 附件数量 | 2 个下载链接 |
| 浏览次数 | 432 |
| 讨论数量 | 0 |
| 主题状态 | 正常讨论中 |