Shannon: công cụ kiểm thử xâm nhập AI hộp trắng với 41.4K Star

🤖 Shannon: công cụ kiểm thử xâm nhập AI hộp trắng 41.4K Star, No PoC No Report
Shannon là một công cụ kiểm thử xâm nhập AI hộp trắng hoạt động tự trị, nhắm vào ứng dụng web và API:
- 41.4K GitHub Stars: một trong những dự án mã nguồn mở hot nhất lĩnh vực bảo mật
- No PoC No Report: không có PoC thì không đưa vào báo cáo, zero false positive
- 96,15% benchmark XBOW: tỷ lệ khai thác lỗ hổng thành công áp đảo các công cụ thương mại
- $50/lần: chi phí cho một lần kiểm thử, báo cáo ra sau 1–1,5 giờ
- Kiểm thử hộp trắng: cần truy cập mã nguồn, kết hợp phân tích mã nguồn và tấn công động
Đây là tầng xác minh động trong chuỗi công cụ bảo mật, lấp đầy khoảng trống của kiểm thử xâm nhập truyền thống.
🔍 Tại sao Shannon tồn tại?
Vấn đề khoảng trống bảo mật
Nhóm của bạn dùng công cụ lập trình AI triển khai code mỗi ngày, nhưng kiểm thử xâm nhập thì một năm chỉ làm một lần —— giữa khoảng đó là 364 ngày trống bảo mật, ai sẽ lấp?
- Máy quét truyền thống: báo cả đống lỗ hổng "có thể tồn tại", kỹ sư bảo mật phải xác minh từng cái
- Kiểm thử xâm nhập thủ công: kéo dài nhiều tuần, tốn hàng chục nghìn đô la
- Khoảng trống bảo mật: trong 364 ngày còn lại, có thể đang triển khai lỗ hổng lên môi trường production
Câu trả lời của Shannon
Shannon đưa ra câu trả lời là: một Agent hoàn toàn tự chủ có thể đọc mã nguồn, tự vận hành trình duyệt để phát động tấn công, và không báo cáo nếu không xâm nhập được.
⚠️ Không phải máy quét: No Exploit, No Report
Bước đầu tiên để hiểu Shannon
Để hiểu Shannon, bước đầu tiên là xác định rõ những điều mà nó không phải là:
- Không phải DAST: không phải công cụ kiểm thử an ninh ứng dụng động
- Không phải SAST: không phải công cụ kiểm thử an ninh ứng dụng tĩnh
- Không phải so khớp mẫu: không quét theo các mẫu nguy hiểm đã biết
Về bản chất, công cụ truyền thống chỉ là so khớp mẫu —— quét các mẫu nguy hiểm đã biết trong code hoặc phản hồi HTTP, rồi xuất ra một danh sách "lỗ hổng khả nghi".
Nguyên tắc thiết kế cốt lõi của Shannon
Nguyên tắc thiết kế cốt lõi của Shannon có thể tóm gọn trong một câu:"POC or it didn't happen" (không có PoC nghĩa là chưa từng xảy ra):
| Đặc điểm | Mô tả |
|---|---|
| Phát động tấn công thực sự | Qua tự động hóa trình duyệt, tiêm SQL, dựng payload XSS, gửi request SSRF |
| Chỉ báo cáo khi khai thác thành công | Chỉ những lỗ hổng được khai thác thành công mới được đưa vào báo cáo cuối cùng |
| Kèm PoC copy-paste được ngay | Mỗi phát hiện đều kèm mã PoC có thể copy-paste trực tiếp |
| False positive không vào báo cáo | Lỗ hổng không thể khai thác bị đánh dấu là "false positive" hoặc "tiềm ẩn", không đưa vào báo cáo |
Điều này có nghĩa là những gì đội bảo mật nhận được, mỗi phát hiện đều đã được xác minh và tái hiện được.
Kiểm thử trên OWASP Juice Shop
Trong báo cáo kiểm thử trên OWASP Juice Shop chính thức, Shannon đã phát hiện hơn 20 lỗ hổng:
- SQL injection vượt qua xác thực (Critical)
- UNION injection trích xuất dữ liệu (Critical)
- SSRF (High)
- XSS (High)
- Nhiều hình thức vượt qua phân quyền (High)
Đáng chú ý, trên hai mục tiêu kiểm thử khác, khả năng phát hiện XSS của Shannon đạt zero false positive —— nó nhận ra chính xác rằng các ứng dụng này có cơ chế phòng thủ XSS vững chắc, không hề báo động giả.
🔬 Kiến trúc pipeline năm giai đoạn
Pipeline năm giai đoạn + nhiều Agent chạy song song
Kiến trúc kỹ thuật của Shannon có hai từ khóa:pipeline năm giai đoạn và nhiều Agent song song:
| Giai đoạn | Tên | Mô tả |
|---|---|---|
| Giai đoạn 1 | Pre-Recon | Quét từ bên ngoài + phân tích mã nguồn (Nmap, Subfinder, WhatWeb) |
| Giai đoạn 2 | Recon | Cầu nối giữa phân tích tĩnh và phân tích động, xác minh endpoint, ánh xạ luồng xác thực |
| Giai đoạn 3 | Vulnerability Analysis | 5 Agent song song, mỗi Agent phụ trách một loại lỗ hổng |
| Giai đoạn 4 | Exploitation | 5 Agent song song, thực hiện tấn công thật |
| Giai đoạn 5 | Reporting | Tạo báo cáo ở cấp độ kiểm thử xâm nhập chuyên nghiệp |
Công cụ suy luận nền tảng
Shannon được xây dựng trên Anthropic Claude Agent SDK, sử dụng cấu hình mô hình ba tầng:
- Claude Haiku 4.5: tóm tắt
- Claude Sonnet 4.6: phân tích bảo mật
- Claude Opus 4.6: suy luận chuyên sâu
📊 5 Agent song song cho 5 loại lỗ hổng
5 Agent phân tích độc lập
Shannon khởi chạy đồng thời 5 Agent phân tích độc lập, mỗi Agent phụ trách một loại lỗ hổng:
| Agent | Phương pháp | Lỗ hổng bao phủ |
|---|---|---|
| Injection | Truy vết taint Source→Sink | SQL / lệnh / tệp / template / deserialization injection |
| XSS | Truy vết taint Sink→Source | Cross-site scripting trong ngữ cảnh render HTML |
| SSRF | Truy vết taint Sink→Source | HTTP client, socket thô, URL opener |
| Auth | Xác minh qua Guard | Thiếu các biện pháp kiểm soát bảo mật (rate limiting, quản lý phiên...) |
| Authz | Xác minh qua Guard | Thiếu kiểm tra phân quyền (ngang / dọc / theo ngữ cảnh) |
5 Agent chạy đồng thời, không chặn lẫn nhau. Ngay khi mỗi Agent phân tích hoàn tất, Agent khai thác tương ứng lập tức được khởi động.
Trạng thái phân loại lỗ hổng
Agent khai thác phân loại từng phát hiện thành ba trạng thái:
- EXPLOITED (đã khai thác): đưa vào báo cáo cuối cùng
- POTENTIAL (tiềm ẩn): không đưa vào báo cáo
- FALSE POSITIVE (báo động giả): không đưa vào báo cáo
Chỉ có EXPLOITED mới được đưa vào báo cáo cuối cùng.
🔥 96,15% trên benchmark XBOW
Benchmark XBOW
Trên benchmark XBOW, Shannon đã đạt được 96.15% tỷ lệ khai thác lỗ hổng thành công (100/104):
| Loại lỗ hổng | Tổng số | Thành công | Tỷ lệ thành công |
|---|---|---|---|
| Broken Authorization | 25 | 25 | 100% |
| SQL Injection | 7 | 7 | 100% |
| Blind SQL Injection | 3 | 3 | 100% |
| SSRF / Misconfiguration | 22 | 21 | 95.45% |
| XSS | 23 | 22 | 95.65% |
| Server-Side Template Injection | 13 | 12 | 92.31% |
| Command Injection | 11 | 10 | 90.91% |
| Tổng cộng | 104 | 100 | 96.15% |
Ghi chú điều kiện kiểm thử
- Benchmark XBOW: 104 ứng dụng được cố tình cài đặt lỗ hổng
- Phiên bản đã làm sạch: đã loại bỏ tên biến, chú thích và gợi ý đường dẫn tệp
- Chế độ hộp trắng: Shannon có thể truy cập mã nguồn của ứng dụng
So sánh với công cụ thương mại
- Shannon: 96,15% (chế độ hộp trắng)
- KinoSec: 92,3% (chế độ hộp đen)
- Xfenser AI: 88,5%
- Nền tảng thương mại XBOW: khoảng 85% (hộp đen)
💰 Chi phí và cách bắt đầu
Chi phí
Một lần quét hoàn chỉnh:
- Thời gian: 1–1,5 giờ
- Chi phí API: khoảng $50 USD (dựa trên Claude Sonnet 4.6)
- Khoảng dao động: $40–55, tùy theo giá mô hình và độ phức tạp của ứng dụng
So sánhKiểm thử xâm nhập thủ công truyền thống: một lần tốn hàng chục nghìn đô la, kéo dài nhiều tuần.
Cách bắt đầu
Chế độ npx (khuyến nghị, không cần cài đặt):
# 一次性配置 npx @keygraph/shannon setup # 运行渗透测试 npx @keygraph/shannon start -u https://your-app.com -r /path/to/repo
Chế độ cục bộ (build đầy đủ):
# 克隆仓库 git clone https://github.com/KeygraphHQ/shannon.git cd shannon # 配置 API Key echo "ANTHROPIC_API_KEY=your-key" > .env # 安装和构建 pnpm install && pnpm build # 运行 ./shannon start -u https://your-app.com -r /path/to/repo
Điều kiện tiên quyết
- Docker: môi trường chạy container
- Node.js 18+: môi trường thực thi
- Anthropic API Key: khuyến nghị
- Truy cập mã nguồn: cần thiết với công cụ hộp trắng
🤝 Shannon Lite vs Shannon Pro
Hai phiên bản
| Phiên bản | Giấy phép | Định vị |
|---|---|---|
| Shannon Lite | AGPL-3.0 | Kiểm thử cục bộ trên ứng dụng của chính bạn |
| Shannon Pro | Thương mại | Nền tảng AppSec cấp tổ chức (SAST + SCA + Pentest) |
Tính năng Shannon Pro
Shannon Pro là nền tảng an ninh ứng dụng đầy đủ tính năng:
- Code Property Graph: công cụ phân tích tĩnh
- Kiểm thử bảo mật logic nghiệp vụ: tự động khám phá bất biến (invariant)
- Phân tích khả năng tới được của SCA: truy vết khả năng tới được của CVE
- Phát hiện secret: phát hiện bằng regex + LLM
- Liên kết tĩnh–động: kết quả phân tích tĩnh được tự động đưa vào kiểm thử xâm nhập động
- Tích hợp CI/CD: quét PR trên GitHub
⚠️ Những điều cần lưu ý khi sử dụng
Cảnh báo quan trọng
- Tuyệt đối không sử dụng trên hệ thống chưa được cấp phép: Shannon thực hiện tấn công thực sự, quét không phép là vi phạm pháp luật
- Không khuyến nghị chạy trên môi trường production: hành vi tấn công có thể gây ra hậu quả phá hủy
- Kho mã nguồn có thể bị prompt injection nhắm vào AI: đây là rủi ro bảo mật được chính thức nêu rõ
- Shannon Lite là công cụ hộp trắng: cần truy cập kho mã nguồn
Rủi ro ảo giác (hallucination) của LLM
Tuyên bố miễn trừ chính thức: LLM vẫn có thể bị ảo giác, cần con người xác minh tính hợp pháp và mức độ nghiêm trọng của mọi phát hiện.
📝 Tổng kết
Shannon đại diện cho một mô hình công cụ bảo mật đang dần định hình:
- No PoC No Report: chỉ khai thác thành công mới đưa vào báo cáo
- 41.4K Stars: dự án mã nguồn mở hot nhất lĩnh vực bảo mật
- 96,15% benchmark XBOW: tỷ lệ thành công hộp trắng áp đảo công cụ thương mại
- Pipeline năm giai đoạn: Pre-Recon → Recon → Vuln → Exploit → Report
- 5 Agent song song cho 5 loại: Injection, XSS, SSRF, Auth, Authz
- $50/lần, 1–1,5 giờ: chi phí thấp hơn nhiều so với kiểm thử xâm nhập thủ công
- Công cụ hộp trắng: cần truy cập mã nguồn
Không có PoC thì không báo cáo — Shannon biến kiểm thử xâm nhập thành chỉ một câu lệnh.
GitHub: https://github.com/KeygraphHQ/shannon
Trang chủ: https://keygraph.io