
Osquery是SQL驅動的操作系統儀器,監視和分析框架。
可用於Linux,MacOS和Windows。


Osquery將操作系統視為高性能關係數據庫。這使您可以編寫基於SQL的查詢來探索操作系統數據。使用Osquery,SQL表代表抽象概念,例如運行過程,加載內核模塊,開放網絡連接,瀏覽器插件,硬件事件或文件哈希。
SQL表是通過簡單的插件和擴展API實現的。已經存在各種表格,正在編寫更多表:https://osquery.io/schema。為了最好地了解Osquery提供給您的表現力,請考慮以下SQL查詢:
列出users :
SELECT * FROM users;檢查具有刪除的可執行文件的processes :
SELECT * FROM processes WHERE on_disk = 0 ;獲取流程名稱,端口和PID,以獲取所有接口上偵聽的過程:
SELECT DISTINCT processes . name , listening_ports . port , processes . pid
FROM listening_ports JOIN processes USING (pid)
WHERE listening_ports . address = ' 0.0.0.0 ' ;查找每個MacOS啟動Daemon啟動可執行文件並保持其運行:
SELECT name, program || program_arguments AS executable
FROM launchd
WHERE (run_at_load = 1 AND keep_alive = 1 )
AND (program != ' ' OR program_arguments != ' ' );從主機的角度檢查ARP異常:
SELECT address, mac, COUNT (mac) AS mac_count
FROM arp_cache GROUP BY mac
HAVING count (mac) > 1 ;另外,您也可以使用SQL子問題來完成相同的結果:
SELECT address, mac, mac_count
FROM
( SELECT address, mac, COUNT (mac) AS mac_count FROM arp_cache GROUP BY mac)
WHERE mac_count > 1 ;這些查詢可以是:
要下載最新的穩定構建以及用於存儲庫信息和安裝說明,請訪問https://osquery.io/downloads。
我們使用一個簡單的編號版本控制方案XYZ ,其中X是主要版本,Y是未成年人,而Z是一個補丁。我們計劃大約每兩個月發布一次。這些版本在我們的里程碑頁面上進行了跟踪。當我們的次要版本有不可預見的錯誤時,使用補丁發布,我們需要快速修補。如果我們需要更改構建配置,則可以使用罕見的“修訂”版本。
專業,次要和補丁發行版在GitHub上標記,可以在版本頁面上查看。當我們準備次要版本時,我們打開了新的版本清單問題。如果您對發行版的狀態感興趣,請找到相應的清單問題,並註意,當我們完成清單後,該問題將被標記為關閉。在我們的網站上託管新下載並將其添加到我們的託管存儲庫中,我們考慮了“測試中的”版本。當發生足夠的測試時,我們將在GitHub上將釋放標記為“穩定”,這通常需要兩個星期。
鼓勵來源建造Osquery!查看我們的構建指南。還請查看我們的貢獻指南,並加入Slack社區。
那裡有許多Osquery車隊經理。 Osquery項目不認可,推薦或測試這些項目。他們被作為起點
| 專案 | 執照 |
|---|---|
| 艦隊 | 開放核心 |
| KOLIDE | 商業的 |
| OSCTRL | 開源 |
| Zentral | 開源 |
通過向Osquery做出貢獻,您同意您的捐款將被許可在許可證文件中定義。
我們在GitHub上的標記版本發行說明中跟踪安全公告。我們也將它們匯總到Security.md中。
Osquery文檔可在線獲得。舊版本的文檔也可以按版本編號找到。
如果您有興趣了解有關Osquery的更多信息,請閱讀有關該項目背景的啟動博客文章,請訪問用戶指南。
開發和使用討論正在Osquery Slack中進行,請在此處邀請邀請!