Cơ sở tri thức • Độ tin cậy • Kiến trúc kỹ thuật

Câu hỏi thường gặp

Giải đáp trực tiếp, kỹ thuật và minh bạch về quét tự động, tích hợp với công cụ lập trình AI, quyền riêng tư của mã nguồn, cam kết không huấn luyện AI, độ chính xác, bản vá khắc phục và giá theo LOC được bảo vệ.

Danh mục 01

Giới thiệu Cyfendo

Định vị cốt lõi, tầm nhìn và cách Cyfendo so với các công cụ phân tích tĩnh truyền thống.

Cyfendo là nền tảng bảo mật ứng dụng tự động, liên tục quét mã nguồn để tìm lỗ hổng và tạo các bản sửa sẵn sàng để xem xét. Nền tảng được thiết kế để giảm khối lượng công việc AppSec thủ công mà các nhóm bảo mật và kỹ thuật phải làm bằng cách tự động hóa việc phát hiện, phân loại và tổng hợp bản vá.

Cyfendo hỗ trợ cả các đợt kiểm tra do đám mây quản lý lẫn chế độ Cyfendo Private Scan—cho phép các nhóm doanh nghiệp chạy quá trình phân tích cục bộ trên máy của riêng họ mà không gửi mã nguồn tới Cyfendo, bằng tài khoản LLM của họ hoặc mô hình tại chỗ (Ollama/vLLM).

Các công cụ SAST truyền thống dựa trên các mẫu cú pháp cứng nhắc và đòi hỏi tinh chỉnh quy tắc thủ công nhiều, dẫn đến tỷ lệ dương tính giả cao và tình trạng mệt mỏi vì cảnh báo. Cyfendo được thiết kế xoay quanh việc thực thi tự động: nó phân tích ngữ cảnh mã theo ngữ nghĩa và khả năng tiếp cận luồng điều khiển để lọc bỏ nhiễu từ những đoạn không thể tiếp cận, cung cấp các phát hiện có thể hành động kèm các bản vá diff thống nhất tùy chọn, sẵn sàng để xem xét.

Không. Cyfendo tự động hóa các tác vụ AppSec lặp đi lặp lại như quét định kỳ, phân loại ban đầu, giảm nhiễu và soạn thảo bản sửa. Các trưởng nhóm bảo mật và đội ngũ kỹ thuật vẫn hoàn toàn kiểm soát kiến trúc bảo mật, chính sách rủi ro và việc phê duyệt mã cuối cùng.

Không. Cyfendo dùng được ngay mà không cần cấu hình phức tạp hay ngôn ngữ truy vấn tùy chỉnh. Nhà phát triển và đội ngũ kỹ thuật có thể kết nối kho của mình và bắt đầu bảo vệ mã ngay mà không cần chuyên môn bảo mật từ trước.

Có. Cyfendo hoạt động không xâm lấn và có thể được đánh giá song song với các công cụ hiện có như Snyk, Semgrep, Checkmarx, Veracode, SonarQube hoặc công cụ bảo mật nội bộ riêng mà không cần thay đổi thiết lập CI/CD hiện tại của bạn.

Danh mục 03

Quét & phạm vi hỗ trợ

Cơ chế phân tích mã, phạm vi lỗ hổng, ngôn ngữ được hỗ trợ và các điều kiện kích hoạt quét.

Cyfendo thực hiện phân tích tĩnh theo ngữ nghĩa chuyên sâu và phân tích khả năng tiếp cận luồng dữ liệu trên mã nguồn ứng dụng và các tệp cấu hình. Nó tập trung vào việc nhận diện các điểm yếu ở tầng ứng dụng, cách dùng API không an toàn, lỗi kiểm tra đầu vào và cấu hình mật mã sai.

Mỗi bản quét đầy đủ cũng kiểm tra các gói bên thứ ba của bạn với các cảnh báo bảo mật đã công bố. Các kết quả đó được tách riêng khỏi các phát hiện trong chính mã của bạn.

Cyfendo phát hiện nhiều loại lỗ hổng tầng ứng dụng trong OWASP Top 10, CWE Top 25 Most Dangerous Software Weaknesses và các tiêu chuẩn bảo mật đám mây/di động chuyên biệt. Bằng cách kết hợp theo dõi taint AST liên thủ tục, phân tích khả năng tiếp cận luồng dữ liệu và xác thực sandbox hai tiêu chí (dual-oracle), Cyfendo gắn cờ các lỗi có độ tin cậy cao trong sáu miền lỗ hổng chính:

  • Lỗi Injection & thực thi mã động: SQL Injection (CWE-89, CWE-564, CWE-943 trên SQL thuần, lời gọi cursor và API NoSQL), OS Command Injection (CWE-78, CWE-77, CWE-88), Dynamic Code Execution & Unsafe Eval (CWE-94, CWE-95, CWE-96), Cross-Site Scripting / XSS (CWE-79, CWE-80, React dangerouslySetInnerHTML), Server-Side Template Injection / SSTI (CWE-1336 trên Jinja2, Mako, Tornado, EJS, Handlebars, Pug, Nunjucks, Velocity), XPath Injection (CWE-643), LDAP Injection (CWE-90) và XML External Entity / XXE (CWE-611, CWE-827).
  • Bảo mật hệ thống tệp, tải lên & tệp nén: Path & Directory Traversal (CWE-22, CWE-23, CWE-36, CWE-73), Insecure Archive Extraction / Zip Slip (CWE-29 qua giải nén tệp nén không được kiểm tra) và Unrestricted File Uploads (CWE-434).
  • Logic ứng dụng & điểm yếu của framework hiện đại: Server-Side Request Forgery / SSRF (CWE-918), Insecure Deserialization (CWE-502 trên Python pickle/PyYAML, PHP unserialize, Java ObjectInputStream), Prototype Pollution (CWE-1321), Unsafe Mass Assignment & Entity Over-Posting (CWE-915), Cross-Site Request Forgery / CSRF (CWE-352), Open URL Redirection (CWE-601) và Trust Boundary Violations (CWE-501).
  • Xác thực, phân quyền & quản lý secret: Broken Authentication & Missing Authorization (CWE-287, CWE-306, CWE-862, CWE-863 / BOLA / IDOR), Insecure JWT Verification & Signature Flaws (CWE-347, CWE-345 với thuật toán none hoặc thiếu kiểm tra chữ ký), Hardcoded Secrets & C2 Bot Tokens (CWE-798) và Insecure Cookie Configurations (CWE-614, CWE-1004).
  • Mật mã, TLS & bảo vệ dữ liệu: Broken Ciphers & Insecure Modes (CWE-327, như chế độ ECB, DES, RC4), Static / Hardcoded Cryptographic IVs & Nonce Reuse (CWE-329), Broken/Weak Cryptographic Hashes (CWE-328, CWE-326 với MD5, SHA-1), Insecure Randomness & Weak PRNG (CWE-330, CWE-338) và Insecure TLS / Disabled Certificate Verification (CWE-295).
  • Bảo mật di động & bytecode Android (tệp Dalvik .dex từ APK đã giải nén): Malicious Dynamic Droppers & Arbitrary Code Loading (CWE-506, CWE-494 qua DexClassLoader / PathClassLoader), Android FileProvider Root Path Exposures (CWE-22), Network Traffic Interception (CWE-250 qua VpnService) và Cleartext Storage of Sensitive Information (CWE-312, CWE-922).

Mọi lỗ hổng đã được xác nhận đều được trình bày trong một hồ sơ phát hiện tương tác với đầy đủ dấu vết taint từ nguồn tới sink, định nghĩa CWE, điểm CVSS và các diff bản vá tùy chọn, sẵn sàng để xem xét.

Ma trận phạm vi hỗ trợ của Cyfendo là nguồn thông tin duy nhất chính thức của chúng tôi, theo 5 khía cạnh vận hành và nhiều bậc ngôn ngữ:

  • Hỗ trợ ở mức production (10 họ ngôn ngữ chính): Phân tích taint giữa các tệp toàn diện, xác thực khai thác trong sandbox tạm thời và tạo bản vá sẵn sàng để xem xét cho Python, Java, JavaScript/TypeScript, Go, C/C++, Rust, PHP, Ruby, Shell/Bash và Kotlin / Android.
  • Hỗ trợ Beta & lộ trình (3 ngôn ngữ): Đã có phân tích cú pháp truy cập sớm và quét lỗ hổng cơ bản cho C#, Swift và Scala (theo dõi taint giữa các tệp nâng cao và tổng hợp bản vá tự động nằm trong lộ trình đang thực hiện).
  • 5 khía cạnh khả năng vận hành:
    • 1) Quét cơ bản: Phân tích cú pháp AST và đối sánh mẫu từ vựng trong từng tệp.
    • 2) Phân tích taint giữa các tệp ở mức production: Theo dõi luồng dữ liệu liên thủ tục trên toàn codebase từ đầu vào không tin cậy tới các sink nhạy cảm.
    • 3) Xác thực khai thác trong sandbox tạm thời: Xác minh khả năng tiếp cận động theo hai tiêu chí (dual-oracle) bằng payload kích hoạt và đường cơ sở chức năng vô hại.
    • 4) Tạo bản vá sẵn sàng để xem xét: Các diff thống nhất theo ngữ cảnh, sẵn sàng để nhà phát triển xem xét và hợp nhất.
    • 5) Hỗ trợ Beta / lộ trình: Phân tích cú pháp bản xem trước và mở rộng engine đang tiếp tục.

Phần phân tích chi tiết được ghi trong Ma trận ngôn ngữ được hỗ trợ của chúng tôi.

Có. Mỗi bản quét đầy đủ cũng liệt kê các gói phần mềm mà dự án của bạn phụ thuộc vào và các lỗ hổng đã được công bố ảnh hưởng đến chúng. Cyfendo đọc lockfile của bạn trước, rồi đến manifest ở những nơi không có lockfile nào bao phủ, cho npm, PyPI, Go, Maven/Gradle, NuGet, Cargo, Composer, RubyGems, Hex, Pub và Swift.

Các cảnh báo bảo mật đến từ OSV.dev (gồm GitHub Advisory Database và các gói độc hại đã biết), cùng với danh mục CISA Known Exploited Vulnerabilities và điểm khai thác FIRST EPSS.

Mở trang Dependencies của bất kỳ bản quét đám mây nào, hoặc chạy cyfendo deps chỉ để kiểm tra riêng phần này, không dùng mô hình AI và không tải lên. Phần này không dùng thêm tín dụng quét nào, và lockfile không bao giờ được tính là LOC được bảo vệ. Xem hướng dẫn kiểm tra thư viện phụ thuộc.

Một phát hiện là điểm yếu mà Cyfendo tìm thấy trong chính mã của bạn và đã thử chứng minh bằng một cuộc tấn công thử trong sandbox. Một cảnh báo bảo mật về thư viện phụ thuộc là lỗ hổng do người khác công bố cho một phiên bản gói mà bạn dùng. Cyfendo không kiểm thử nó trên ứng dụng của bạn, nên không biết liệu mã của bạn có đi tới phần có lỗ hổng của gói hay không.

Đó là lý do chúng được tách riêng. Các cảnh báo bảo mật không bao giờ làm thay đổi số lượng phát hiện, điểm rủi ro, cổng --fail-on hay SARIF phát hiện của bạn. Để chặn một bản build dựa trên chúng, hãy dùng --deps-fail-on, lệnh này cũng thoát với mã 1 khi việc tra cứu cảnh báo bảo mật không hoàn tất; để thêm chúng vào tệp SARIF, hãy dùng --sarif-include-deps.

Mức độ nghiêm trọng là xếp hạng do cảnh báo bảo mật công bố. Mức ưu tiên là thứ tự cần sửa trước do Cyfendo xác định:

  • P1: một gói độc hại đã biết, hoặc một lỗ hổng nằm trong danh sách của CISA về các lỗ hổng bị khai thác trong thực tế.
  • P2: mức độ nghiêm trọng cao hoặc nghiêm trọng ở một gói mà ứng dụng của bạn phát hành, hoặc điểm EPSS từ 10% trở lên.
  • P3: mức độ nghiêm trọng thấp hơn hoặc chưa được xếp hạng, hoặc một cảnh báo mức cao hoặc nghiêm trọng ở một gói trực tiếp mà mã của bạn dường như không import.
  • P4: chỉ các gói phát triển hoặc kiểm thử.

Cyfendo kiểm tra xem mã của bạn có import một gói hay không chỉ để xếp hạng cảnh báo. Cyfendo không bao giờ ẩn cảnh báo nào, vì một gói không được import vẫn có thể được nạp bởi một plugin, một công cụ hoặc cấu hình.

Không tự động. Mỗi cảnh báo bảo mật liệt kê phiên bản đầu tiên đã được sửa, nên cách sửa thường là một lần nâng cấp do bạn tự thực hiện. Cyfendo không tạo hay kiểm thử bản vá cho các thư viện phụ thuộc. Nếu một gói được biết là độc hại, hãy gỡ nó và đổi mọi secret mà quá trình build hay ứng dụng có thể truy cập được.

Có, với các bản quét đám mây. Mỗi ngày Cyfendo kiểm tra lại các gói của bản quét đám mây mới nhất của từng dự án với OSV.dev. Các cảnh báo bảo mật mới xuất hiện trên trang Dependencies của bản quét đó và trong thông báo của bạn, và chủ sở hữu không gian làm việc nhận một email (các cảnh báo chỉ ảnh hưởng đến gói phát triển thì có thông báo chứ không có email).

Bạn có thể tắt việc này cho một dự án trên trang Dependencies. Các Private Scan không được giám sát, vì danh sách gói của chúng không bao giờ đến được Cyfendo.

Có, ở định dạng CycloneDX 1.6, liệt kê các gói và cảnh báo bảo mật của chúng. Với bản quét đám mây, hãy chọn Export Report → SBOM (CycloneDX 1.6) trên trang bản quét. Trong CLI, thêm --sbom sbom.cdx.json vào cyfendo scan hoặc cyfendo deps. Một Private Scan cũng lưu một tệp như vậy vào .cyfendo/sbom.cdx.json.

Tên và phiên bản gói, không bao giờ gửi mã nguồn, đường dẫn tệp hay tên dự án:

  • Tên và phiên bản được gửi tới OSV.dev, và các CVE ID tìm được được gửi tới FIRST EPSS. Danh mục CISA được tải xuống, nên CISA không nhận được gì về dự án của bạn.
  • Khi không có lockfile nào bao phủ một gói, tên và phiên bản của nó cũng được gửi tới deps.dev, và một khoảng phiên bản đã khai báo sẽ được tra trên npm registry hoặc PyPI.
  • Các gói workspace, gói theo đường dẫn và gói git, cũng như các gói gắn với một registry riêng tư, không bao giờ được gửi.

Trong Private Scan, các yêu cầu này đi trực tiếp từ máy của bạn, không có thông tin nào về thư viện phụ thuộc của bạn đến được Cyfendo, và --no-deps tắt chúng. Trong bản quét đám mây, chúng đến từ các worker của Cyfendo, và danh sách gói của bản quét mới nhất được giữ lại để giám sát.

Kiểm thử xâm nhập ứng dụng hiện đang ở giai đoạn Beta riêng tư, chỉ dành cho một số doanh nghiệp chọn lọc. Dịch vụ này có phạm vi riêng và được cung cấp theo thỏa thuận (không nằm trong các gói tự phục vụ). Các tổ chức có thể liên hệ bộ phận kinh doanh để trao đổi yêu cầu đánh giá và tiến độ.

Không. Cyfendo dùng được ngay với các mô hình ngữ nghĩa tích hợp sẵn và định nghĩa lỗ hổng theo chuẩn ngành. Bạn không cần viết quy tắc tùy chỉnh hay tinh chỉnh bộ lọc regex để bắt đầu.

Có. Cyfendo lập chỉ mục toàn bộ codebase để xây dựng đồ thị lời gọi liên thủ tục toàn diện và lần theo luồng dữ liệu giữa các mô-đun. Với các pull request và commit tăng dần tiếp theo, nó thực hiện phân tích chênh lệch nhanh trên các đường dẫn đã sửa đổi và nơi gọi chúng.

Có. Thông qua GitHub App và các tích hợp CI/CD, Cyfendo có thể tự động kích hoạt các bản quét chênh lệch trên pull request và commit, trả về bình luận trực tiếp và kiểm tra trạng thái bảo mật trước khi mã được hợp nhất.

Mọi gói của Cyfendo đều có hạn mức quét bảo mật hằng tháng dễ dự đoán, phù hợp cho pipeline CI/CD (5 lượt quét/tháng với Free, 10/tháng với Starter, 30/tháng với Growth và 100/tháng với Scale). Các lần quét lại giống hệt trên ảnh chụp không thay đổi tốn 0 tín dụng quét, cho phép nhà phát triển xác minh lại trạng thái mà không tiêu hao tín dụng quét.

Không. Cyfendo phân tích trực tiếp mã nguồn bằng cây cú pháp trừu tượng (AST) và bảng ký hiệu ngữ nghĩa mà không cần môi trường build đầy đủ, tệp nhị phân đã biên dịch hay container image từ khách hàng.

Danh mục 04

Độ chính xác & phát hiện

Các số liệu thực tế, đánh giá benchmark, cách xử lý dương tính giả và hồ sơ phát hiện.

Không có công cụ quét bảo mật tự động nào đạt được sự hoàn hảo tuyệt đối trên mọi mẫu mã tùy ý. Cyfendo được thiết kế để kết hợp khả năng phát hiện lỗ hổng rộng với precision cao bằng cách xác minh khả năng tiếp cận luồng dữ liệu từ nguồn không tin cậy tới các sink nhạy cảm trước khi báo cáo một vấn đề.

Có, dương tính giả có thể xảy ra với bất kỳ công cụ bảo mật tự động nào. Cyfendo được thiết kế để giảm thiểu chúng bằng cách xác thực khả năng tiếp cận theo ngữ nghĩa và ngữ cảnh thực thi. Mỗi phát hiện đều có bằng chứng đầy đủ và đồ thị dấu vết để nhà phát triển nhanh chóng đánh giá tính hợp lệ.

Có. Quét bảo mật tự động không thể bảo đảm rằng mọi lỗ hổng hay lỗi logic nghiệp vụ phức tạp đều sẽ được phát hiện. Nên dùng Cyfendo như một thành phần quan trọng của chương trình bảo mật phòng thủ nhiều lớp toàn diện, cùng với xem xét mã an toàn và kiểm thử.

Mỗi phát hiện gồm loại lỗ hổng và CWE ID, phân loại mức độ nghiêm trọng, tệp và số dòng bị ảnh hưởng, dấu vết luồng dữ liệu đầy đủ từ nguồn tới sink, phần giải thích về khả năng khai thác, lời khuyên khắc phục có thể hành động và bản vá diff thống nhất sẵn sàng để xem xét khi áp dụng được.

OWASP Benchmark là bộ kiểm thử chuẩn hóa để đo hiệu năng phát hiện lỗ hổng trên 2,740 bài kiểm tra. Kết quả Cyfendo công bố thể hiện hiệu năng trên benchmark đó và không nên được hiểu là bảo đảm đạt tỷ lệ phát hiện tương đương trên mọi ứng dụng thực tế.

Độ nhạy (recall) đo số bài benchmark có lỗ hổng đã biết mà Cyfendo nhận diện đúng (1,331 trên 1,415 bài kiểm tra lỗ hổng thật). Đây là thước đo mức độ đầy đủ của việc phát hiện lỗ hổng, không phải precision hay độ chính xác tổng thể trong thực tế.

Chỉ số Youden (J = Độ nhạy + Độ đặc hiệu - 1) kết hợp độ nhạy và độ đặc hiệu thành một thước đo tổng hợp duy nhất, phạt dương tính giả và âm tính giả ngang nhau. Điểm 0.90 cho thấy khả năng phân biệt tốt giữa các đường dẫn mã có lỗ hổng và không có lỗ hổng.

Có. Chúng tôi công bố đầy đủ phương pháp luận, cấu hình kiểm thử và điểm số theo từng nhóm trong Sách trắng OWASP Benchmark công khai của chúng tôi.

Loại bỏ trùng lặp gom các dấu vết lỗ hổng thô có cùng nguyên nhân gốc hoặc luồng thực thi để các nhóm kỹ thuật không bị ngập trong các cảnh báo dư thừa. Cyfendo hỗ trợ ba phạm vi loại bỏ trùng lặp có thể cấu hình:

  • Nguyên nhân gốc (mặc định): Gom nhóm đồ thị lời gọi AST đa yếu tố trên các hàm và route. Hợp nhất các cảnh báo trùng lặp thành các phát hiện theo nguyên nhân gốc đơn lẻ.
  • Cô lập theo từng tệp (file): Giới hạn việc loại bỏ trùng lặp trong từng tệp riêng lẻ. Các phát hiện ở những tệp khác nhau không bao giờ bị gộp.
  • Dấu vết thô (none): Tắt hoàn toàn việc gom nhóm và xuất từng dấu vết ứng viên đã được xác minh một cách riêng lẻ.

Benchmark Mode được tối ưu riêng để chạy các bộ đánh giá lỗ hổng tổng hợp (như OWASP Benchmark, Juliet Test Suite, SecBench hoặc các bộ kiểm thử nội bộ).

Khi được bật bằng nút chuyển trên giao diện web hoặc cờ CLI (--benchmark-mode), Cyfendo tự động khóa việc loại trùng ở chế độ Per-File Isolation (để các ca kiểm thử tổng hợp nằm ở những tệp riêng không bị gộp lại và tạo ra các trường hợp bỏ sót giả) và bỏ qua bước tổng hợp bản vá bằng AI ban đầu, nhằm đạt thông lượng đánh giá tối đa và so sánh trực tiếp với đáp án chuẩn (groundtruth).

Danh mục 05

Bản vá & khắc phục

Cách tạo bản sửa, quyền phê duyệt của lập trình viên, định dạng bản vá và việc kiểm chứng.

Cyfendo có thể tạo các thay đổi mã được đề xuất (bản vá khắc phục) cho những phát hiện được hỗ trợ. Lập trình viên vẫn chịu trách nhiệm xem xét, kiểm thử và chấp nhận các thay đổi đó trước khi merge.

Không. Việc tạo bản vá là tùy chọn. Bạn có thể chỉ dùng Cyfendo để phát hiện lỗ hổng, phân loại và nhận hướng dẫn khắc phục thủ công.

Không. Việc tạo bản vá đã nằm trong tất cả các gói trả phí, không tính thêm phí, và bạn có thể bật hoặc tắt bất cứ lúc nào.

Có. Một số bản sửa bảo mật cần thay đổi phối hợp ở nhiều tệp (ví dụ cập nhật cả câu truy vấn cơ sở dữ liệu và hàm gọi nó), và một bản vá được tạo ra có thể gồm tất cả các sửa đổi cần thiết.

Bản vá được cung cấp dưới dạng unified diff tiêu chuẩn (định dạng `.patch`). Bạn có thể xem trực quan trong Cyfendo Web IDE, tải xuống, hoặc áp dụng cục bộ bằng công cụ Git tiêu chuẩn (`git apply`).

Không. Cyfendo không bao giờ tự động merge mã vào kho mã nguồn của bạn. Lập trình viên giữ 100% quyền và trách nhiệm đối với mọi việc phê duyệt và merge mã.

Các bản vá được tạo ra trải qua bước phân tích cú pháp và quét lại tự động trong một sandbox cô lập, để xác nhận đường truyền dữ liệu bị nhiễm (taint path) đã bị cắt và lỗ hổng đã được xử lý, rồi mới trình bản sửa cho lập trình viên.

Không nên coi bất kỳ thay đổi mã tự động nào là được đảm bảo. Cyfendo được thiết kế để tạo ra các bản sửa chất lượng cao, sẵn sàng để xem xét, đồng thời để lập trình viên nắm quyền kiểm thử cuối cùng và phê duyệt merge.

Chế độ Fast PoC (mặc định): Thực hiện phân tích cú pháp AST theo ngữ nghĩa, lan truyền taint liên thủ tục và xác thực khai thác động trong sandbox gVisor, không phải chờ LLM tổng hợp mã. Bản quét hoàn tất trong vài giây, kèm các PoC đã được xác minh.

Chế độ khắc phục bằng AI: Ngoài phát hiện và xác minh PoC, chế độ này tổng hợp các diff mã chính xác và kiểm chứng chúng trong sandbox dual-oracle để xác nhận lỗ hổng đã được giảm thiểu mà không làm hỏng các unit test.

Có. Nếu bạn chạy bản quét nhanh (hoặc bản quét benchmark đã bỏ qua bản vá), bạn có thể mở bất kỳ phát hiện nào trong Interactive Vulnerability IDE và bấm “Synthesize Dual-Oracle Patch”. Cyfendo sẽ tạo, kiểm chứng trong sandbox và trình bày một unified diff chính xác cho riêng phát hiện đó theo yêu cầu.

Danh mục 08

Kho mã nguồn & quy trình phát triển

Quyền SCM, tích hợp CI/CD, cách dùng CLI và bảo vệ nhánh.

Bạn có thể kết nối mã qua tích hợp GitHub App chính thức, bằng cách tải lên tệp ZIP hoặc thư mục trực tiếp trong bảng điều khiển web, hoặc bằng cách chạy Cyfendo CLI (cyfendo scan .) trong terminal cục bộ hoặc pipeline CI của bạn.

Cài CLI từ PyPI bằng pipx install cyfendo hoặc pip install --upgrade cyfendo (Python 3.9 trở lên, trên macOS, Linux và Windows). Trình cài đặt một dòng, curl -sSL https://cyfendo.com/install.sh | bash, cũng làm điều đó cho bạn. Cyfendo không còn phân phối tệp nhị phân độc lập. Nếu bạn đã cài bản đó trước đây, hãy chạy lại trình cài đặt, hoặc xóa ~/.local/bin/cyfendo rồi cài từ PyPI.

Cyfendo tuân theo nguyên tắc đặc quyền tối thiểu. Quyền truy cập kho mã nguồn chỉ đọc là đủ để quét. Quyền ghi chỉ được yêu cầu nếu bạn chủ động bật tính năng tự động tạo pull request cho các diff khắc phục.

Có. Khi cấu hình tích hợp GitHub, bạn có thể cấp quyền truy cập cho các kho mã nguồn được chọn thay vì toàn bộ tổ chức của bạn.

Bạn có thể quét GitLab, Bitbucket, Azure DevOps hoặc các kho Git cục bộ bằng CLI độc lập của chúng tôi (cyfendo scan .) hoặc bằng cách tải các kho lưu trữ dự án lên qua bảng điều khiển web.

Có. Hệ thống SCM hoặc CI hiện có của bạn checkout mã vào một không gian làm việc, và Cyfendo CLI quét trực tiếp cây mã nguồn thu được.

Có. Cyfendo CLI có thể được tích hợp vào GitHub Actions, GitLab CI, Jenkins, CircleCI hoặc các pipeline build tùy chỉnh để áp dụng các cổng kiểm soát bảo mật và xuất báo cáo SARIF.

Có. Lập trình viên có thể chạy cyfendo scan . từ terminal để quét các nhánh cục bộ và xem xét các phát hiện trước khi đẩy mã lên kho mã nguồn gốc.

Cyfendo CLI chấp nhận các tùy chọn chi tiết tương ứng với mọi điều khiển cấu hình trên giao diện web:

  • --dedup-scope=root_cause|file|none: Chọn giữa gom cụm theo đồ thị gọi hàm, cách ly theo từng tệp, hoặc các vết ứng viên thô.
  • --generate-patch: Bật tính năng tự động tổng hợp bản vá khắc phục bằng AI trong lúc quét.
  • --no-patch: Bỏ qua rõ ràng việc tạo bản vá để quét PoC nhanh.
  • --benchmark-mode: Chạy ở chế độ đánh giá benchmark (khóa việc loại trùng ở chế độ cách ly theo từng tệp và bỏ qua việc tạo bản vá).
  • --patch-bundle=<path>: Xuất tất cả bản sửa được tạo ra thành một gói .patch unified diff tổng hợp.

Bạn có thể gắn lịch quét định kỳ tự động cho bất kỳ dự án Git đã kết nối nào ngay từ bảng điều khiển (hoặc qua REST API). Chọn giữa các tần suất Hằng ngày (mỗi 24 giờ), Hằng tuần (mỗi 7 ngày) hoặc Hằng tháng (mỗi 30 ngày).

Khi đã lên lịch, Cyfendo chạy ngầm, lấy các commit mới, kiểm tra khả năng tiếp cận của mã, tổng hợp các bản sửa chính xác, và gửi thông báo hoàn tất đến hộp thư trong ứng dụng và địa chỉ email của bạn.

Khi một bản quét định kỳ được kích hoạt, Cyfendo thực hiện một bước kiểm tra nhẹ, trước khi bắt đầu, đối với SHA của commit HEAD trên nhánh từ xa bằng git ls-remote trước khi clone mã. Nếu không có commit mới nào kể từ bản quét hoàn tất trước đó, bộ lập lịch kết thúc ngay với trạng thái skipped_unchanged.

Trừ 0 lượt quét, và không tiêu tốn tài nguyên tính toán hay hạn mức LOC, giữ nguyên toàn bộ ngân sách quét hằng tháng của bạn cho những thay đổi thực sự của mã nguồn.

Có. Cyfendo hỗ trợ đầy đủ kiến trúc monorepo. Trong cả bản quét thủ công và bản quét theo lịch, bạn có thể chỉ định một thư mục con tương đối (tùy chọn) (ví dụ apps/api, services/billing hoặc packages/core).

Cyfendo chỉ tách riêng và đóng gói các tệp nằm trong thư mục con đó. Việc tính Protected LOC và phân loại lỗ hổng bảo mật của bạn sẽ chỉ phản ánh dịch vụ cụ thể đó.

Personal Access Token cho các kho mã nguồn riêng tư được mã hóa khi lưu trữ bằng mật mã xác thực AES-256 (Fernet).

Token chỉ được giải mã trong bộ nhớ, đúng trong các thao tác tải về của sandbox tạm thời, không bao giờ được ghi ra đĩa dưới dạng văn bản thuần, và bị che trong mọi phản hồi API. Mọi tiến trình con của Git đều áp dụng cách ly sandbox -c credential.helper= để không thể truy cập thông tin xác thực cục bộ sẵn có của hệ điều hành.

Có. Cyfendo cách ly nghiêm ngặt thông tin xác thực Git theo từng dự án (project_id). Khi bạn cấu hình hoặc cập nhật token Git trong cửa sổ lịch quét của dự án, token đó chỉ có phạm vi áp dụng cho đúng kho mã nguồn ấy.

Điều này cho phép bạn tạo các token chi tiết, giới hạn theo kho mã nguồn, tuân theo đặc quyền tối thiểu. Việc cập nhật hoặc xoay vòng thông tin xác thực của một kho mã nguồn sẽ không bao giờ lan sang hay kích hoạt bản quét trên các kho mã nguồn khác trong không gian làm việc của bạn.

Danh mục 09

Quy mô & hiệu năng

Lập chỉ mục kho mã nguồn lớn, thời lượng quét và hiệu năng quét chênh lệch.

Cyfendo được thiết kế để làm việc với các codebase sản xuất lớn, kể cả các kho mã nguồn hàng triệu dòng, sử dụng lập chỉ mục dưới tuyến tính và phân tích AST phân tán.

Thời lượng quét phụ thuộc vào kích thước codebase, độ phức tạp của ngôn ngữ và việc quét chênh lệch có được bật hay không. Các kho mã nguồn nhỏ đến vừa thường hoàn tất trong chưa đầy 2 phút, còn các kho mã nguồn doanh nghiệp lớn hoàn tất trong 5 đến 15 phút trong các đợt kiểm tra đầy đủ theo lịch.

Không. Với pull request và các commit gia tăng, Cyfendo thực hiện phân tích chênh lệch nhanh trên các tệp đã sửa đổi và đồ thị gọi hàm phụ thuộc của chúng, dành các đợt kiểm tra toàn bộ codebase cho lần đưa vào ban đầu và các lần chạy theo lịch.

Mỗi gói Cyfendo đều có hạn mức quét bảo mật hằng tháng dễ dự đoán (5/tháng ở gói Free, 10/tháng ở Starter, 30/tháng ở Growth, 100/tháng ở Scale). Quét lại một bản chụp codebase không thay đổi tiêu tốn 0 lượt quét.

Giá của Cyfendo dễ dự đoán, dựa trên kích thước codebase được bảo vệ đang hoạt động và hạn mức quét hằng tháng cố định. Quét lại các bản chụp không thay đổi tốn thêm 0 LOC và 0 lượt quét. Nếu bạn cần khối lượng quét cao hơn hoặc dung lượng codebase lớn hơn, có sẵn các add-on dạng mô-đun và các gói nâng cấp.

Danh mục 11

Giá & thanh toán

Cấu trúc giá theo Protected LOC, hạn mức quét hằng tháng, các bậc gói và add-on mã nguồn.

Nếu chỉ tính phí theo từng bản quét sẽ tạo ra động cơ phản tác dụng: các nhóm kỹ thuật quét ít đi để tiết kiệm ngân sách, khiến các lỗ hổng nghiêm trọng không được phát hiện cho đến cuối chu kỳ phát hành.

Cam kết thương mại của Cyfendo là: Giá dễ dự đoán, dựa trên mã bạn bảo vệ. Bằng cách kết hợp dung lượng codebase được bảo vệ với hạn mức quét hằng tháng dồi dào và việc quét lại mã không thay đổi tốn 0 lượt quét, lập trình viên của bạn có thể duy trì độ phủ bảo mật liên tục mà không gặp các khoản chi phát sinh bất ngờ.

Protected LOC là mức dung lượng thường trực đang được sử dụng (giống như dung lượng ổ đĩa hay RAM của máy chủ), còn hạn mức quét hằng tháng (Monthly Scan) của bạn là ngân sách tiêu hao được nạp lại mỗi tháng:

  • Dung lượng thường trực (Protected LOC): Chừng nào một kho mã nguồn còn đang được bảo vệ trong Cyfendo, nó vẫn liên tục chiếm số LOC của mình trong hạn mức của gói (ví dụ đang bảo vệ một kho 80K LOC trên gói Starter 100K thì còn lại 20K LOC). Bạn không được cộng thêm 100K mới vào số dư của tháng sau để bảo vệ thêm nhiều kho mã nguồn cùng lúc.
  • Cập nhật liên tục là miễn phí (0 LOC tính thêm): Cập nhật, chỉnh sửa, tái cấu trúc và sửa mã trong dự án đang hoạt động của bạn tốn 0 LOC tính thêm.
  • Ngân sách quét được nạp lại: Hạn mức quét bảo mật hằng tháng của bạn (ví dụ 10 lượt quét ở Starter, 30 ở Growth, 100 ở Scale) tự động đặt lại vào đầu mỗi chu kỳ thanh toán 30 ngày.

Xóa một dự án sẽ dừng việc quét ngay lập tức. Để duy trì giới hạn dung lượng hằng tháng công bằng và ngăn việc lạm dụng cách xóa rồi đổi (ví dụ xóa kho A để quét kho B trong cùng hạn mức tháng), dung lượng được tính trong suốt kỳ hạn mức hằng tháng của bạn.

Toàn bộ hạn mức của bạn được đặt lại vào đầu chu kỳ thanh toán hằng tháng tiếp theo. Khi bạn cập nhật một dự án hiện có theo thời gian, các lần cập nhật phiên bản và tái cấu trúc thông thường được theo dõi như các phiên bản liên tiếp của cùng một dự án.

Mỗi gói Cyfendo đều có hạn mức quét hằng tháng dồi dào, được thiết kế cho việc bảo mật liên tục và các pipeline CI/CD, kèm số lượng người dùng không giới hạn:

  • Gói Free: Tối đa 10K Protected LOC, 5 bản quét bảo mật / tháng (1 kho mã nguồn được bảo vệ).
  • Gói Starter ($99/tháng): Tối đa 100K Protected LOC, 10 bản quét bảo mật / tháng (số kho mã nguồn không giới hạn).
  • Gói Growth ($299/tháng): Tối đa 500K Protected LOC, 30 bản quét bảo mật / tháng (số kho mã nguồn không giới hạn & hàng đợi quét ưu tiên).
  • Gói Scale ($799/tháng): Tối đa 2M Protected LOC, 100 bản quét bảo mật / tháng (có thể mở rộng bằng các add-on dạng mô-đun).

Quét lại giống hệt (0 lượt quét): Quét một commit hoặc bản chụp giống hệt, trong đó không có mã nào thay đổi, không tiêu tốn lượt quét. Hạn mức quét tự động làm mới vào đầu mỗi chu kỳ thanh toán 30 ngày.

Cyfendo dùng mô hình Period Peak (High-Water Mark) cho mỗi chu kỳ thanh toán 30 ngày để đảm bảo lập trình viên không bao giờ bị phạt vì quét thường xuyên hoặc tái cấu trúc:

  • Quét lại liên tục & sửa lỗi (0 LOC tính thêm): Khi bạn chỉnh sửa, tái cấu trúc hoặc sửa mã trong dự án và kích thước codebase tổng thể vẫn nằm trong mức đỉnh hằng tháng hiện tại, Delta LOC là 0. Quét lại và các kiểm tra PR tự động không tốn thêm gì.
  • Codebase phát triển & mở rộng tính năng (+Delta LOC): Khi dự án của bạn tăng kích thước (ví dụ từ 10,000 LOC lên 13,000 LOC), bạn chỉ bị tính phần tăng thêm ròng (+3,000 LOC Delta), chứ không phải toàn bộ codebase 13,000 LOC tính lại từ đầu.
  • Giảm mã / dọn dẹp (0 LOC tính thêm): Nếu bạn xóa mã không dùng và dự án thu nhỏ từ 10,000 LOC xuống 8,500 LOC, Delta LOC là 0. Mức đỉnh đã ghi nhận trước đó (10,000 LOC) được giữ lại trong chu kỳ 30 ngày hiện tại và đặt lại vào kỳ gia hạn thanh toán tiếp theo.
  • Phân tích tính liên tục của mã nguồn tự động: Cyfendo đối chiếu một cách xác định dòng phiên bản giữa các lần tải lên (xử lý việc đổi tên thư mục, di chuyển tệp và chỉnh sửa gia tăng). Chỉ những codebase hoàn toàn không liên quan (chồng lấp <20%) mới được coi là phân bổ dự án mới, nhằm ngăn việc lách chỗ (slot laundering).

Cyfendo chỉ đếm mã nguồn ứng dụng thực sự do chính bạn viết (first-party).

  • Chú thích & dòng trống: Tự động bị loại bỏ và không tính trên mọi ngôn ngữ được hỗ trợ (Python, Java, JS/TS, Go, C/C++, Rust, v.v.).
  • Gói vendored & thư viện phụ thuộc: Các thư mục như node_modules/, vendor/, third_party/ và các tệp khóa (package-lock.json, poetry.lock) hoàn toàn bị loại khỏi phép tính Protected LOC.
  • Sản phẩm build & tệp nhị phân: dist/, build/, các tệp nhị phân đã biên dịch, hình ảnh và phông chữ được tự động bỏ qua.
  • Mã đã minify & mã dày đặc: Được phát hiện tự động; mã thông thường dễ đọc được đếm bình thường, còn các tệp một dòng dày đặc hoặc đã minify dùng một ngưỡng mật độ hiệu dụng để tránh làm sai lệch hạn mức.

Cyfendo tự động cung cấp thời gian gia hạn 14 ngày mỗi khi mã được bảo vệ đang hoạt động vượt hạn mức của gói. Trong thời gian gia hạn này, các bản quét và pipeline CI/CD đang chạy vẫn tiếp tục không gián đoạn, nên quy trình làm việc của nhóm bạn không bao giờ bị chặn giữa một sprint.

Bạn có thể dễ dàng nâng cấp bậc gói hoặc điều chỉnh các dự án được bảo vệ ngay trong phần cài đặt Gói & thanh toán. Bạn không bao giờ bị tự động tính phí hay nâng cấp ngầm nếu chưa xác nhận rõ ràng.

Các đơn vị dung lượng 1M LOC bổ sung (+$200/tháng hoặc $2,000/năm cho mỗi 1M LOC và +500 lượt quét/tháng) chỉ có dưới dạng mở rộng dung lượng theo mô-đun trên bậc Scale (cho các codebase vượt quá 2M LOC).

Với codebase dưới 2M LOC, nâng cấp giữa các bậc gói tiêu chuẩn (Starter 100K LOC, Growth 500K LOC, Scale 2M LOC) cho chi phí thấp nhất trên mỗi dòng và đảm bảo truy cập mọi tính năng nền tảng tương ứng.

Danh mục 12

Enterprise & hỗ trợ

Triển khai tùy chỉnh, SLA, rà soát mua sắm, các bậc hỗ trợ và báo cáo lỗ hổng.

Enterprise được thiết kế cho các tổ chức có codebase vượt quá 2M LOC, có yêu cầu triển khai VPC riêng đặc thù, tích hợp SSO/SAML, chính sách lưu giữ dữ liệu tùy chỉnh, hoặc SLA hợp đồng riêng.

Hãy liên hệ với chúng tôi nếu bạn có yêu cầu triển khai riêng. Chúng tôi làm việc với các khách hàng Enterprise đủ điều kiện để đánh giá việc triển khai các tác tử worker riêng tự lưu trữ bên trong VPC của AWS, Azure hoặc GCP.

Có. Cyfendo có sẵn Google Workspace Single Sign-On (SSO) và Kiểm soát truy cập dựa trên vai trò (RBAC) chi tiết (Workspace Owner, Run & View, View-Only) trên mọi tài khoản Business và Enterprise. Chủ sở hữu không gian làm việc có thể mời cộng tác viên, gán vai trò và áp dụng nguyên tắc quét với đặc quyền tối thiểu từ Team Dashboard tập trung. Tích hợp SAML 2.0 / Okta riêng được hỗ trợ trong các hợp đồng enterprise tùy chỉnh.

Có. Các thỏa thuận Enterprise hỗ trợ lịch lưu giữ dữ liệu tùy chỉnh, chính sách không lưu trữ phát hiện (zero-storage) và xuất nhật ký kiểm tra riêng.

Có. Các hợp đồng Enterprise bao gồm SLA về thời gian hoạt động (lên đến 99.9%) và cam kết thời gian phản hồi hỗ trợ kỹ thuật ưu tiên.

Có. Cyfendo có thể cung cấp các tài liệu bảo mật hiện có và làm việc với các khách hàng đủ điều kiện trong quá trình rà soát nhà cung cấp và bảo mật.

Lập trình viên có thể đánh dấu các phát hiện trực tiếp trong bảng điều khiển là “False Positive” hoặc “Accept Risk” kèm ghi chú tùy chọn. Phản hồi này giúp tinh chỉnh phân tích khả năng tiếp cận ở các bản quét tiếp theo.

Đừng merge nó. Lập trình viên vẫn nắm quyền kiểm soát. Hãy báo cáo bản vá qua sản phẩm hoặc kênh hỗ trợ để đội ngũ kỹ thuật của chúng tôi điều tra.

Chúng tôi duy trì chính sách công bố thông tin bảo mật theo RFC 9116. Vui lòng gửi email chi tiết lỗ hổng đến contact@cyfendo.com. Thông tin liên hệ bảo mật đầy đủ có tại /.well-known/security.txt.

Người dùng Free có quyền truy cập tài liệu kỹ thuật và hỗ trợ qua email tiêu chuẩn. Các gói trả phí bao gồm hệ thống phiếu hỗ trợ ưu tiên, và các gói Scale/Enterprise bao gồm quản lý tài khoản kỹ thuật riêng cùng các kênh Slack/Teams.

Đưa bảo mật ứng dụng của bạn vào chế độ tự động

Bắt đầu với tối đa 10K Protected LOC và 5 bản quét mỗi tháng. Không cần thẻ tín dụng.

Bắt đầu miễn phí