Chuyển đến nội dung chính
Một “rug-pull” là một MCP server thay đổi các định nghĩa tool của nó sau khi bạn đã chấp thuận nó — định nghĩa lại một tool tin cậy để làm điều gì đó mới, hoặc lặng lẽ thêm một cái. OrcaRouter bắt điều này ở lớp schema: nó lập baseline tập tool được quảng bá của mỗi server và kiểm tra lại nó ở mỗi lần nạp, nên trôi dạt fail closed thay vì lặng lẽ phục vụ các tool đã thay đổi. Trang này là tham chiếu cho schema status theo từng server và mỗi trạng thái nghĩa là gì đối với lưu lượng.

1. Dấu vân tay baseline

Khi tiếp xúc đầu tiên, gateway tính một canonical hash của tập tool được quảng bá của server và lưu nó như baseline đã chấp thuận:
  • Hash bao trùm name, description, và input JSON schema của mỗi tool — đúng cái bề mặt mà một rug-pull sẽ thay đổi (một tool thêm một argument exfiltration, hoặc một description bị vũ khí hóa cho prompt injection làm lật hash).
  • độc lập thứ tự: một server sắp xếp lại danh sách tool của nó, hoặc sắp xếp lại các key bên trong một schema, không trông giống một thay đổi. Chỉ một thay đổi định nghĩa thật mới làm dịch chuyển hash.
Trên mỗi probe sau, gateway hash lại các tool live và so sánh chúng với baseline đã lưu. Đây là một kiểm tra theo từng server — nó không phụ thuộc vào bất kỳ quy tắc nào bạn soạn.

2. Vòng đời schema status

Mỗi server đã đăng ký mang theo một schema_status. Các trạng thái và cách chúng ảnh hưởng đến việc các tool của server có được phục vụ hay không:
StatusÝ nghĩaTool được phục vụ?
(chưa lập baseline)Lần dùng đầu tiên — chưa có baseline nào được ghi.Tư thế discovery: Có (trust-on-first-use — schema hiện tại được chụp làm baseline). Tư thế strict: Không — xem pending bên dưới.
verifiedSchema live khớp baseline đã chấp thuận.
changedPhát hiện trôi dạt — schema live khác baseline.Không — fail closed
pendingMột server chưa lập baseline dưới một tư thế strict (không trust-on-first-use) — đang chờ chấp thuận.Không — fail closed
quarantinedMột admin đã giữ server.Không — fail closed
Ba trạng thái closed — changed, pending, quarantined — đều ngừng các tool của server khỏi được phục vụ qua gateway. verified luôn phục vụ; một server chưa lập baseline chỉ phục vụ dưới tư thế discovery (trust-on-first-use) và bị giữ là pending dưới tư thế strict. Trôi dạt không bao giờ lặng lẽ đi qua.

3. Điều gì xảy ra khi trôi dạt

Khi một kiểm tra lại phát hiện schema live không còn khớp baseline:
1

Status lật sang changed

schema_status của server trở thành changed và dấu thời gian trôi dạt được ghi lại.
2

Các tool ngừng được phục vụ

Gateway fail closed: các tool của server đó bị giữ lại khỏi bề mặt MCP hợp nhất, nên một agent không thể gọi các định nghĩa đã thay đổi.
3

Console hiện nó ra

Trôi dạt hiện lên để xem xét để một admin có thể so sánh tập tool mới với tập đã chấp thuận.
4

Lập baseline lại hoặc quarantine

Một admin chấp thuận schema mới (lập baseline lại — tập tool hiện tại trở thành baseline verified mới) hoặc quarantine server. Cho đến khi một trong số đó xảy ra, server vẫn closed.

4. Chấp thuận lại một server đã trôi dạt

Lập baseline lại là một cuộc gọi đơn (hoặc hành động console):
POST /api/workspace/firewall/mcp_servers/:id/approve_schema
Yêu cầu vai trò Developer. Nó ghi lại tập tool live làm baseline đã chấp thuận mới và đưa server trở lại verified. (Quarantine một server là một hành động riêng biệt, cho khi bạn quyết định thay đổi là thù địch — approve_schema chỉ lập baseline lại về verified.) Hành động được ghi vào audit trail.
Chỉ chấp thuận lại sau khi bạn đã xem xét diff. Việc chấp thuận một schema đã trôi dạt mà không kiểm tra nó đánh bại biện pháp kiểm soát — nó nói với OrcaRouter rằng các định nghĩa tool mới (có thể độc hại) là tin cậy.

5. Nơi điều này phù hợp

Phát hiện trôi dạt schema là nửa lớp-schema của phòng vệ rug-pull; nửa kia là đánh giá theo từng cuộc gọi trên bề mặt mcp (mọi tools/call được kiểm tra đối với chính sách của bạn lúc dispatch). Cùng nhau chúng bao trùm cả “các định nghĩa đã thay đổi” lẫn “cuộc gọi cụ thể này nguy hiểm”.

Phòng vệ rug-pull

Bức tranh rug-pull đầy đủ — baseline schema cộng với đánh giá theo từng cuộc gọi.

Tổng quan bảo mật MCP

MCP gateway, các skill, và credential.

Đầu độc tool MCP

Mối đe dọa mà máy trạng thái này phòng vệ chống lại.

Các sự kiện audit MCP

Giám sát các thay đổi schema và các quyết định của gateway.