Chào mừng trở lại với series GitHub Deep Dive! Hôm nay chúng ta sẽ khám phá Shannon — một AI pentester mã nguồn mở, hoàn toàn tự động do nhóm Keygraph phát triển.
Sứ mệnh của Shannon ngắn gọn: phá vỡ ứng dụng của bạn trước khi hacker làm điều đó. Nó không tạo ra một danh sách cảnh báo dài lê thê về các lỗ hổng tiềm năng — nó thực sự khai thác chúng và chỉ báo cáo những gì nó có thể chứng minh bằng bằng chứng thực tế.
Với tỷ lệ thành công 96.15% trên benchmark XBOW, Shannon đang đặt ra một tiêu chuẩn mới cho công cụ bảo mật tự động.
Hãy cùng phân tích qua mô hình tư duy của chúng ta.
Phần 1: Nền Tảng (Mental Model)
Các công cụ bảo mật truyền thống giống như máy phát hiện khói — chúng cảnh báo khi phát hiện một pattern trông có vẻ nguy hiểm. Chúng quét chữ ký đã biết, cấu hình sai, và fingerprint. Chúng tạo ra danh sách dài “các vấn đề tiềm năng.” Sau đó con người phải tự phân loại cái nào thực sự quan trọng.
Shannon giống như một đội red team theo yêu cầu. Nó tư duy như một pen tester con người:
- Lập bản đồ bề mặt tấn công bằng cách đọc source code và crawl live app.
- Đặt giả thuyết về những code path nào có thể bị khai thác (injection sink, auth bypass vector, SSRF trigger).
- Chứng minh bằng thực tế — thực sự bắn payload vào instance đang chạy thông qua browser tích hợp và công cụ CLI.
- Chỉ báo cáo những gì đã được xác nhận kèm Proof-of-Concept copy-paste được.
Điểm mấu chốt: “No Exploit, No Report.” Nếu Shannon không thể chứng minh lỗ hổng có thể khai thác được, nó loại bỏ nó. Điều này loại bỏ lượng false-positive khổng lồ mà các scanner truyền thống tạo ra.
Mental Model: Shannon = Phân tích code (White-box) + Khai thác thực tế bằng browser (Black-box) + Chính sách “Không Có Khai Thác, Không Có Báo Cáo”.
Phần 2: Cuộc Điều Tra
Tại Sao Shannon Ra Đời?
Vấn đề cốt lõi mà Shannon giải quyết được gọi là “khoảng trống bảo mật thời vibe-coding.”
Nhờ các công cụ như Claude Code và Cursor, dev team hiện đại ship tính năng với tốc độ chóng mặt. Nhưng bài kiểm tra xâm nhập hàng năm của họ? Chỉ là một snapshot tại một thời điểm. Trong 364 ngày còn lại, mỗi tính năng mới, mỗi refactor, mỗi cập nhật dependency là một bề mặt tấn công chưa được kiểm tra đang đi thẳng lên production.
Shannon được thiết kế để là đội red team liên tục, chạy song song với continuous delivery của bạn.
Pipeline 4 Giai Đoạn Đa Tác Nhân
Kiến trúc của Shannon mô phỏng chính xác những gì một pen tester con người thực sự làm, chia thành bốn giai đoạn riêng biệt:
| |
Giai đoạn 1 — Reconnaissance (Trinh sát): Shannon đọc source code của bạn kết hợp với các công cụ như Nmap và Subfinder, xây dựng bản đồ bề mặt tấn công đầy đủ: mọi endpoint, API route, luồng xác thực, và fingerprint công nghệ.
Giai đoạn 2 — Phân Tích Lỗ Hổng (Song song): Các agent chuyên biệt cho từng danh mục OWASP chạy đồng thời. Agent Injection thực hiện phân tích luồng dữ liệu có cấu trúc — theo dõi input người dùng từ điểm vào đến các sink nguy hiểm (truy vấn database, lệnh shell, HTTP redirect). Kết quả là một danh sách các “hypothesized exploitable paths” được xếp hạng.
Giai đoạn 3 — Khai Thác (Song song): Các exploit agent chuyên biệt nhận các giả thuyết và cố gắng chứng minh chúng bằng thực tế. Chúng dùng browser automation, công cụ CLI, và script khai thác tùy chỉnh. Chỉ những khai thác thành công mới tồn tại.
Giai đoạn 4 — Báo Cáo: Agent cuối cùng tổng hợp chỉ những phát hiện đã được xác nhận vào một báo cáo chuyên nghiệp, có thể hành động được — đã được làm sạch khỏi mọi hallucination — kèm PoC có thể reproduce được.
Được Hỗ Trợ Bởi Công Cụ Bảo Mật Thực Sự
Shannon không phát minh lại bánh xe. Nó tích hợp các công cụ bảo mật đã được kiểm chứng vào pipeline trinh sát:
| Công Cụ | Vai Trò |
|---|---|
| Nmap | Quét cổng mạng & fingerprint dịch vụ |
| Subfinder | Liệt kê subdomain |
| WhatWeb | Nhận dạng technology stack |
| Schemathesis | Fuzzing dựa trên API schema |
Phần 3: Chẩn Đoán Chuyên Sâu
Shannon Thực Sự Tìm Thấy Gì?
Coverage hiện tại của Shannon Lite tập trung vào các lớp lỗ hổng có tác động cao nhất và có thể chứng minh được:
- Injection (SQL Injection, Command Injection, Server-Side Template Injection)
- Broken Authentication & Authorization (auth bypass, leo thang đặc quyền, IDOR, tấn công JWT)
- Cross-Site Scripting (Reflected, Stored, DOM-based)
- Server-Side Request Forgery (SSRF)
Kết quả với các ứng dụng cố tình có lỗ hổng theo tiêu chuẩn ngành:
OWASP Juice Shop: 20+ lỗ hổng nghiêm trọng, bao gồm:
- Bypass xác thực hoàn toàn + exfil toàn bộ database người dùng qua SQL Injection
- Leo thang đặc quyền lên admin thông qua bypass workflow đăng ký
- IDOR exposing dữ liệu cá nhân của bất kỳ người dùng nào
- SSRF cho phép trinh sát mạng nội bộ
c{api}tal API (Checkmarx): ~15 lỗ hổng nghiêm trọng, bao gồm:
- Command injection ở cấp root thông qua endpoint debug ẩn
- Auth bypass nhắm vào API v1 legacy chưa được vá
- Mass Assignment leo thang người dùng bình thường lên admin
OWASP crAPI: 15+ lỗ hổng bao gồm tấn công JWT nâng cao (Algorithm Confusion, alg:none, weak kid injection).
Kiểm Tra Với Xác Thực và 2FA
Một điểm mạnh thực tế của Shannon là khả năng xử lý các lần chạy thử có xác thực. Bạn có thể cung cấp credentials (bao gồm cả TOTP secret cho 2FA) trong file config yaml, và AI sẽ tự xử lý login flow — kể cả OAuth “Sign in with Google”.
| |
Cực kỳ hữu ích cho môi trường staging nơi ứng dụng nằm sau một cổng đăng nhập.
Khả Năng Tiếp Tục Từ Điểm Dừng
Shannon hỗ trợ workspaces có tên checkpoint tiến trình qua git commits. Nếu một lần chạy bị gián đoạn giữa chừng trong quá trình khai thác, bạn có thể tiếp tục từ giai đoạn thành công cuối cùng mà không cần chạy lại hàng giờ trinh sát:
| |
Phần 4: Cách Triển Khai
Cài đặt Shannon rất đơn giản — hoàn toàn dựa trên Docker, không có dependency nào ở cấp hệ thống cần quản lý.
Hướng Dẫn Từng Bước
1. Clone và cấu hình:
| |
2. Thiết lập API key:
| |
3. Chạy pentest:
| |
4. Theo dõi tiến trình:
| |
5. Tìm báo cáo của bạn:
Kết quả được lưu tại ./audit-logs/{hostname}_{sessionId}/deliverables/comprehensive_security_assessment_report.md — một báo cáo chuyên nghiệp, cấp pentest với chỉ những phát hiện đã được xác minh.
Những Điều Cần Lưu Ý
- Thời gian & Chi phí: Một lần chạy đầy đủ mất khoảng 1–1.5 giờ và tốn khoảng $50 USD trong API credit Claude Sonnet.
- Chỉ dùng cho staging: Shannon thực hiện các cuộc tấn công thực sự. Nó sẽ tạo user, sửa đổi dữ liệu, và trigger database queries. Tuyệt đối không dùng trên production.
- Chỉ whitebox: Shannon Lite yêu cầu quyền truy cập vào source code. Nó dùng phân tích code để hướng dẫn tấn công thông minh — không phải fuzzing mù quáng.
Mental Model Cuối Cùng
| Loại Công Cụ | Cách Tiếp Cận | Điểm Mạnh |
|---|---|---|
| Scanner Truyền Thống | Dựa trên chữ ký | Nhanh, rẻ, nhiều false positive |
| Công cụ kiểu PentAGI | Đa tác nhân, nhiều công cụ | Toàn diện, không phụ thuộc vào model |
| Shannon | Phân tích code + Khai thác thực tế | Ít false positive, chỉ khai thác đã được chứng minh |
Shannon đại diện cho một danh mục mới: AI pentester liên tục tự động. Bằng cách kết hợp việc hiểu source code với thực thi khai thác thực tế và thực thi hợp đồng “không có khai thác, không có báo cáo,” nó mang lại kiểm tra bảo mật cấp doanh nghiệp cho mọi nhóm ship code liên tục.
Nếu bạn là developer đang xây dựng bất cứ thứ gì liên quan đến dữ liệu người dùng, xác thực, hoặc API bên ngoài, Shannon xứng đáng có một vị trí trong staging pipeline của bạn.
