Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

ROOST 標誌

Osprey

自動處理明確事項,深入調查模糊情況。 Osprey 是一套安全規則引擎與調查介面,可大規模即時處理事件。

平台將事件串流傳送至 Osprey,由人工撰寫的規則在每個事件抵達時進行評估,並自動採取行動、為相關實體套用 Labels,以及將 Verdicts 與自訂 Effects 傳送回平台系統。分析人員接著可以查詢結果、繪製圖表、辨識模式、展開調查,再將發現轉化為新規則。Osprey 最初由 Discord 內部開發,用來對抗平台上的垃圾訊息、濫用、機器人及自動化腳本,後來開放原始碼,協助面對類似挑戰的其他平台。

Query 頁面顯示 post creation 事件的 SML 篩選條件與歷史查詢,旁邊是每 15 分鐘彙整符合條件事件量的時間序列圖

規則使用 Osprey 的結構化規則語言 SML 撰寫,並可用使用者自訂函式 UDFs 擴充。若提供 labels service backend,Osprey 可以在事件之間為實體套用 Labels 來追蹤狀態。以 Postgres 為 backend 的範例請見 labels_service.py

Osprey 適合希望探索、測試並整合至平台事件應變與調查流程的工程師及信任與安全團隊。更多背景請見使用者研究與角色

試用 Osprey

若已安裝支援 Compose v2 的 Docker,可用單一 command 啟動包含範例資料的完整技術堆疊,並在預先填入查詢條件的頁面開啟介面。

./demo.sh

也可以在尚未 clone repository 的情況下執行下列 command。

curl -sSL https://raw.githubusercontent.com/roostorg/osprey/main/demo.sh | bash

安全提醒

直接將網路取得的 script 傳入 shell 前,應先下載並檢查內容及來源版本。正式環境不應使用示範設定或範例憑證。

Getting Started 指南說明 demo 啟動的服務、可在介面中嘗試的操作,以及關閉全部服務的方式。其他文件位於 roostorg.github.io/osprey/latest

採用團隊

目前使用 Osprey 的團隊包括下列組織。

BlueskyDiscordMatrix.org

若正在使用 Osprey,並希望將專案或組織加入清單,可提出 pull request

開發

開發環境與工作流程請見開發指南,其中也列出變更必須通過的 lint、type checking 與 pre-commit hooks。

參與社群

除了撰寫程式碼,也可以審查 pull requests、在 issues 與 discussions 回答問題、提供領域專業意見、教授教學活動或改善文件。

ROOST 的全名是 Robust Open Online Safety Tools。這個非營利組織匯集主要科技公司與慈善組織的專業、資源及投資,為 AI 時代建立可擴充且能互通的安全基礎設施。

徵求意見

Osprey 是可實際運作的系統,仍持續改善。可先在本機試用、連接自己的資料、撰寫規則,再回報使用情境中欠缺的部分。專案目前特別希望了解下列事項。

  • 與既有平台基礎設施整合時遇到的挑戰
  • 在不同事件量與規則複雜度下的效能特性
  • 所需但目前欠缺的偵測能力或回應行動
  • 能讓團隊更容易採用 Osprey 的 API 改善項目

這些意見會直接影響未來的優先順序,協助社群建立更實用的信任與安全工具。

致謝

Discord 使用 Osprey 快速偵測及移除會讓使用者面臨風險的新型態危害。為了減少其他平台從頭建立類似工具的成本,ROOST 與 Discord 和 internet.dev 合作開放 Osprey 原始碼,供有需要的團隊使用。