Chuyển đến nội dung chính
Trang này được dịch tự động bằng AI. Phiên bản tiếng Anh là bản chính thức.Xem bản tiếng Anh →
Raydium vận hành một chương trình bug bounty hoạt động chỉ bao gồm mã chương trình on-chain — các smart contract Solana tại các program ID được liệt kê trong reference/program-addresses. Chương trình đã hoạt động trên Immunefi kể từ ngày 25 tháng 4 năm 2023. Các khoản thanh toán tăng theo mức độ nghiêm trọng và tác động kinh tế, lên tới $505,000 ở đỉnh của mức độ Critical.SDK, REST API và frontend (raydium.io) không nằm trong phạm vi bounty. Các vấn đề ở đó không được thanh toán, nhưng báo cáo vẫn được chào đón — xem Báo cáo không phải bounty (SDK / API / UI) dưới đây để biết đường dẫn liên hệ.Trang này là nguồn thông tin chính thức về phạm vi bao gồm của bounty, cách báo cáo và những gì bạn có thể mong đợi từ quy trình phản hồi.

Phạm vi

Trong phạm vi bounty (được thanh toán)

Bounty chỉ áp dụng cho mã chương trình on-chain đã triển khai:
  • Các chương trình đã triển khai tại các program ID trong reference/program-addresses:
    • AMM v4 (675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8)
    • CPMM (CPMMoo8L3F4NbTegBCKVNunggL7H1ZpdTHKxQB5qKP1C)
    • CLMM (CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK)
    • Stable AMM (5quBtoiQqxF9Jv6KYKctB59NT3gtJD2Y65kdnB1Uev3h)
    • LaunchLab (LanMV9sAd7wArD4vJFi2qDdfnVhFxYSUg6eADduJ3uj)
    • Farm v3 / v5 / v6
    • LP-Lock / Burn & Earn (LockrWmn6K5twhz3y9w1dQERbmgSaRkfnTeTKbpofwE)
    • AMM Routing
  • Lỗi composability CPI smart-contract nơi một chương trình composing sử dụng đúng cách một chương trình Raydium khiến chính chương trình Raydium đó hoạt động sai.

Không nằm trong phạm vi bounty (được chào đón báo cáo — xem dưới đây)

  • Raydium SDK v2 (@raydium-io/raydium-sdk-v2) trên npm.
  • REST API (mọi host được liệt kê trong tab API Referenceapi-v3.raydium.io, transaction-v1.raydium.io, launch-*-v1.raydium.io, v.v.).
  • Frontend (raydium.io) — bao gồm XSS, CSRF, lỗi auth-flow, wallet-spoofing, trạng thái UI bị hỏng.
  • Off-chain indexer, image / IPFS gateway và bất kỳ cơ sở hạ tầng nào khác phục vụ dữ liệu vào UI.
Những cái này không được thanh toán. Báo cáo vẫn được chào đón và hữu ích — gửi chúng qua kênh không phải bounty dưới đây.

Ngoài phạm vi (không đủ điều kiện)

  • Các chương trình của bên thứ ba kết hợp với Raydium (báo cáo cho các nhóm của họ).
  • Các aggregator của bên thứ ba định tuyến qua Raydium (ví dụ: Jupiter).
  • Off-chain tooling không được duy trì bởi Raydium (SDK cộng đồng bằng Python, bot của bên thứ ba, v.v.).
  • Các cuộc tấn công social-engineering chống lại các thành viên nhóm Raydium.
  • Bất kỳ phát hiện nào yêu cầu sự thông đồng phía validator hoặc các cuộc tấn công stake đa số (đây là lớp Solana, không phải mục tiêu bounty DeFi).
  • DoS thông qua spam các public RPC endpoint.
  • Đầu ra công cụ quét tự động mà không có proof-of-concept hoạt động.
Các loại trừ cụ thể cho chương trình (theo danh sách Immunefi):
  • Phụ thuộc AMM v4 / OpenBook — các lỗi liên quan đến phụ thuộc OpenBook không nằm trong phạm vi. AMM v4 được đặt thành Status 6, vì vậy tính thanh khoản không còn được chia sẻ với các thị trường OpenBook.
  • Các phát hiện đã được gắn cờ trong các đánh giá bảo mật trước đó không đủ điều kiện: đánh giá Ottersec của CLMM và các đánh giá Kudelski, Ottersec và MadShield của chương trình Hybrid AMM. Báo cáo lại một vấn đề đã được công bố không được thanh toán.
  • Lỗi yêu cầu yield CLMM theo thiết kế — CLMM phát hành các token phí giao dịch và yield nông nghiệp cho LP. Nếu một kẻ tấn công làm cạn kiệt vault hoặc token phí, người dùng sẽ không thể yêu cầu yield và các giao dịch sẽ thất bại. Đây là theo thiết kế và không được coi là một lỗ hổng.

Vùng xám — thảo luận trước

  • Lỗi trong các nguyên thủy chống MEV tương tác với cơ sở hạ tầng bên ngoài.
  • Các trường hợp biên Token-2022 integration nơi hành vi “chính xác” là mơ hồ.
  • Các cuộc tấn công kinh tế / game-theoretic không ánh xạ rõ ràng thành lỗi mã.
Khi không chắc chắn, hãy báo cáo.

Mức độ nghiêm trọng và phần thưởng

Báo cáo được phân loại bằng Hệ thống Phân loại Lỗ hổng Immunefi Phiên bản 2.3, theo mô hình Primacy of Rules: các điều khoản trên trang này và danh sách Immunefi điều chỉnh và có ưu tiên hơn phân loại mặc định khi chúng khác nhau. Phần thưởng được tính bằng USD và được thanh toán bởi nhóm Raydium bằng RAY, SOL hoặc USDC. Các mức phần thưởng smart-contract là:
Mức độPhần thưởng
Critical10% của quỹ bị ảnh hưởng trực tiếp, giới hạn ở $505,000, với tối thiểu $50,000
High$5,000–$40,000
MediumCố định $5,000
Không có mức được thanh toán riêng biệt dưới Medium. Mức tối thiểu $50,000 critical tồn tại đặc biệt để ngăn chặn các nhà nghiên cứu giữ lại báo cáo khi quỹ bị ảnh hưởng trực tiếp nhỏ.

Tính toán phần thưởng Critical

Đối với tài sản mainnet, phần thưởng critical là 10% của quỹ bị ảnh hưởng trực tiếp, lên tới tối đa $505,000. Nếu 10% quỹ có nguy hiểm thấp hơn $50,000, báo cáo vẫn được thanh toán tối thiểu $50,000. Giới hạn và cơ sở 10%-of-funds-at-risk áp dụng cho các báo cáo smart-contract critical.

Các tác động trong phạm vi

Bounty sử dụng phân loại tác động chuẩn hóa của Immunefi. Các ví dụ cụ thể Raydium được cung cấp để minh họa cách mỗi tác động ánh xạ vào các chương trình. Critical
  • Trộm trực tiếp bất kỳ quỹ người dùng nào, dù đang yên hay đang chuyển động, ngoại trừ yield chưa được yêu cầu — ví dụ: làm cạn kiệt quỹ LP của người dùng thông qua một lệnh Raydium hợp lệ, hoặc một mint LP token không giới hạn.
  • Đóng băng vĩnh viễn quỹ — ví dụ: làm hỏng kế toán pool để quỹ trở nên không thể khôi phục vĩnh viễn.
  • Các lỗ hổng có thể đóng băng quỹ người dùng vĩnh viễn, hoặc làm cạn kiệt hoặc trộm quỹ mà không có phê duyệt giao dịch người dùng — ví dụ: bỏ qua quyền nâng cấp chương trình, hoặc lỗi steal-all-protocol-fees.
High
  • Trộm yield chưa được yêu cầu — ví dụ: trộm phần thưởng đang chờ xử lý từ farm hoặc vị trí CLMM.
  • Đóng băng vĩnh viễn yield chưa được yêu cầu.
  • Đóng băng tạm thời quỹ trong bất kỳ khoảng thời gian nào — ví dụ: đóng băng vị trí của người dùng để họ không thể đóng nó qua tx độc hại.
  • Các lỗ hổng có thể đóng băng quỹ người dùng tạm thời hoặc cố ý thay đổi giá trị quỹ người dùng — ví dụ: thao túng toán học pool hoặc bỏ qua bảo vệ slippage.
Medium
  • Smart contract không thể hoạt động do thiếu quỹ token.
  • Block stuffing để lợi nhuận.
  • Griefing (không có động cơ lợi nhuận cho kẻ tấn công, nhưng gây hại cho người dùng hoặc giao thức) — ví dụ: DoS có thể griefable nơi tất cả swap trên pool revert.
  • Trộm gas.
  • Tiêu thụ gas không giới hạn.

Đường dẫn liên hệ

Chính: Immunefi

Bug bounty của Raydium được liệt kê trên Immunefi. Báo cáo qua nền tảng Immunefi:
  1. Tạo tài khoản Immunefi.
  2. Điều hướng đến trang bounty Raydium.
  3. Gửi phát hiện với PoC đầy đủ. Proof-of-concept là bắt buộc cho tất cả các mức độ — giải thích và tuyên bố không được chấp nhận, mã hoạt động là bắt buộc. Báo cáo Critical và High cũng nên bao gồm một gợi ý sửa chữa.
  4. Báo cáo được xử lý nhanh chóng — thời gian giải quyết trung bình của chương trình là ~1 ngày.
Thanh toán được xử lý bởi nhóm Raydium trực tiếp, không phải bởi escrow Immunefi — tính bằng USD và thanh toán bằng RAY, SOL hoặc USDC. Không cần KYC cho xử lý thanh toán.

Thay thế: gửi qua email

Các phát hiện trong phạm vi bounty cũng có thể được gửi qua email thay vì (hoặc ngoài) Immunefi:
  • security@raydium.io
  • security@reactorlabs.io
Bao gồm PoC hoạt động đầy đủ, và cho báo cáo Critical / High một gợi ý sửa chữa, giống như trên Immunefi. Mã hóa các chi tiết nhạy cảm bằng khóa PGP của nhóm nếu cần — hỏi trong email và nhóm sẽ trao đổi khóa. Không gửi cùng một phát hiện qua nhiều kênh cùng một lúc (chọn Immunefi hoặc email).

Trực tiếp (cho các phát hiện critical, nhạy cảm về thời gian)

Nếu phát hiện đang bị khai thác hoạt động hoặc sắp xảy ra và bạn không thể chờ triage Immunefi, đường dẫn thứ cấp nhanh nhất là:
  • Email trực tiếp tới security@raydium.io hoặc security@reactorlabs.io — đường dẫn nhanh nhất để tiếp cận nhóm trực tiếp; gắn cờ dòng chủ đề là một exploit hoạt động.
  • Nút khẩn cấp của Immunefi trên trang bounty — leo thang trong vòng vài phút trong giờ làm việc.
  • Liên hệ được mã hóa qua Immunefi — Immunefi có thể chuyển tiếp một tin nhắn được mã hóa end-to-end cho nhóm Raydium.
Tránh các kênh công khai (X / Twitter, Telegram, Discord) cho báo cáo bảo mật — chính việc công bố có thể kích hoạt khai thác. Sử dụng Immunefi hoặc các email bảo mật ở trên cho cả báo cáo và bất kỳ liên hệ tiếp theo nào.

Báo cáo không phải bounty (SDK / API / UI)

Đối với các vấn đề trong các thành phần ngoài bounty — SDK, REST API, frontend raydium.io, hoặc bất kỳ cơ sở hạ tầng off-chain nào — không có thanh toán, nhưng nhóm vẫn muốn nghe về chúng. Sử dụng:
  • Email: security@raydium.io hoặc security@reactorlabs.io cho bất kỳ điều gì có ý nghĩa bảo mật (XSS, CSRF, rò rỉ auth-flow, replay signed-message, wallet spoofing, dữ liệu nhạy cảm được tiếp xúc bởi API, v.v.). Mã hóa bằng khóa PGP của nhóm nếu lỗi nhạy cảm; hỏi trong email và nhóm sẽ trao đổi khóa.
  • GitHub issues: cho các lỗi chức năng không phải bảo mật trong SDK, tài liệu, hoặc bất kỳ repo open-source nào được duy trì bởi Raydium. Mở một issue trên repository liên quan (ví dụ: raydium-io/raydium-sdk-V2).
  • Discord (discord.gg/raydium): tốt cho phản hồi UI / UX tác động thấp không chạm vào bảo mật. Không đăng bất cứ điều gì có thể kích hoạt một exploit nếu được đọc bởi một người lạ.
Những gì bạn nhận được từ báo cáo không phải bounty:
  • Xác nhận trong phản hồi trong vòng vài ngày làm việc.
  • Phối hợp cross-repo nếu bản sửa chữa kéo dài chương trình và SDK.
  • Tín dụng công khai (với sự đồng ý của bạn) trong changelog hoặc release notes liên quan.
  • Những người báo cáo lặp lại các phát hiện thực chất đôi khi được mời tham gia một chương trình đóng góp; đường dẫn đó tách biệt với bounty on-chain và được cung cấp theo quyết định riêng.
Những gì bạn không nhận được:
  • Thanh toán theo tỷ lệ, bất kể mức độ nghiêm trọng. Bounty là cho các phát hiện mã chương trình.
  • Bảo vệ theo chính sách safe-harbor dưới đây — chính sách đó cụ thể đề cập đến nghiên cứu phạm vi bounty. Để kiểm tra SDK / API / UI, hãy tuân theo các quy ước công bố có trách nhiệm thông thường và các điều khoản dịch vụ tiêu chuẩn.

Quy tắc tham gia

Nên làm

  • Chỉ kiểm tra trên một fork cục bộ của mainnet hoặc public testnet. Tất cả công việc proof-of-concept phải được thực hiện trên một fork cục bộ.
  • Bao gồm PoC hoạt động trong báo cáo (bắt buộc cho tất cả các mức độ).
  • Ước tính tác động kinh tế theo hiểu biết tốt nhất của bạn.
  • Đề xuất một bản sửa chữa — bắt buộc cho báo cáo Critical và High.

Không nên làm

  • Kiểm tra trên mainnet hoặc mã được triển khai public testnet. Bất kỳ kiểm tra như vậy đều bị cấm; chỉ sử dụng fork cục bộ.
  • Kiểm tra với các oracle giá hoặc smart contract của bên thứ ba, hoặc với các hệ thống, ứng dụng, tiện ích mở rộng trình duyệt hoặc trang web của bên thứ ba.
  • Công bố công khai lỗ hổng trước khi bản sửa chữa được triển khai (công bố công khai của một lỗi chưa được vá trong một bounty bị cấm là bị cấm).
  • Chạy kiểm tra tự động tạo ra lưu lượng truy cập đáng kể, hoặc bất kỳ cuộc tấn công từ chối dịch vụ nào chống lại tài sản dự án.
  • Cố gắng phishing hoặc các cuộc tấn công social engineering khác chống lại các thành viên nhóm Raydium hoặc người dùng.
  • Gửi cùng một phát hiện qua nhiều hơn một kênh cùng một lúc — chọn Immunefi hoặc email, không phải cả hai, và không bao giờ qua DM công khai.
Những cái này tuân theo Quy tắc Immunefi; vi phạm làm mất hiệu lực bounty.

Dòng thời gian phản hồi

Chương trình có thời gian giải quyết trung bình khoảng 1 ngày (theo danh sách Immunefi công khai). Các giai đoạn dưới đây là chỉ dẫn về cách một báo cáo tiến triển; các SLA chính xác được điều chỉnh bởi danh sách Immunefi và quy trình triage, không phải bởi trang này:
Giai đoạnThời gian chỉ dẫn
Triage ban đầu~1 ngày (trung bình)
Phân loại mức độ nghiêm trọngVài ngày làm việc
Phát triển bản sửa chữaTùy thuộc vào mức độ + độ phức tạp
Triển khai bản sửa chữaTùy thuộc vào timelock chương trình on-chain
Đối với các phát hiện critical, đường dẫn sửa chữa tăng tốc: nhóm triệu tập multisig, soạn thảo bản sửa chữa, gửi để xem xét và xếp hàng triển khai bị khóa thời gian.

Những gì không nên công bố công khai

Cho đến khi bản sửa chữa được triển khai và nhóm Raydium đã phối hợp công bố với bạn:
  • Đừng tweet về phát hiện (thậm chí mơ hồ “Tôi đã tìm thấy cái gì đó lớn”).
  • Đừng mô tả lớp lỗi cho bên thứ ba.
  • Đừng chia sẻ mã PoC với bất kỳ ai ngoài nhóm triage của Raydium.
Sau khi triển khai bản sửa chữa + cửa sổ công bố được phối hợp:
  • Các bài viết công khai được chào đón và khuyến khích.
  • Raydium sẽ cross-promote các bài viết thực chất.
  • Các nhà nghiên cứu đồng ý được đặt tên được ghi công trên Immunefi Whitehat Hall of Fame.

Chính sách safe-harbor

Nghiên cứu được tiến hành trong phạm vi và quy tắc ở trên được ủy quyền rõ ràng. Raydium:
  • Sẽ không theo đuổi hành động pháp lý cho nghiên cứu thiện chí tuân theo chính sách này.
  • Sẽ không can thiệp vào các hoạt động nghiên cứu (ví dụ: danh sách đen ví nhà nghiên cứu).
  • Sẽ hợp tác để hiểu phát hiện.
Nghiên cứu ngoài phạm vi hoặc quy tắc không được bảo vệ bởi safe harbor. Nếu kế hoạch nghiên cứu của bạn là biên giới, hãy hỏi qua kênh “Ask Project” của Immunefi trước khi kiểm tra.

Các công bố đáng chú ý trong quá khứ

Thống kê tổng hợp cho bounty mã chương trình, đã hoạt động trên Immunefi kể từ ngày 25 tháng 4 năm 2023 (số liệu theo danh sách Immunefi công khai):
  • Tổng phần thưởng được thanh toán cho đến nay: ~$3.4M.
  • Thời gian giải quyết trung bình: ~1 ngày.
Immunefi Whitehat Hall of Fame liệt kê các nhà nghiên cứu đồng ý được đặt tên. Báo cáo không phải bounty (SDK / API / UI) được theo dõi riêng biệt và được xác nhận trong release notes của repository liên quan thay vì trên Immunefi.

Các chương trình liên quan

  • Solana Foundation Bug Bounty — bao gồm các lỗi validator client Solana (sealevel, consensus). Báo cáo ở đó cho các vấn đề lớp Solana. solana.com/security.
  • Squads Protocol Bug Bounty — bao gồm chính multisig. squads.so/security.
  • Immunefi — bao gồm nhiều giao thức DeFi bao gồm Raydium. immunefi.com.
Một lỗi kéo dài các lớp (ví dụ: lỗi validator Solana biểu hiện trên Raydium) nên được báo cáo cho tất cả các chương trình áp dụng.

Con trỏ

Nguồn: