
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 LaunchDaemonを見つけてください。
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 ;これらのクエリは次のとおりです。
最新のStable Buildsをダウンロードし、リポジトリ情報とインストール手順については、https://osquery.io/downloadsをご覧ください。
xはメジャーバージョンで、yはマイナーで、zはパッチであるシンプルな番号付きバージョンスキームXYZを使用します。マイナーリリースをおおよそ2か月ごとに計画しています。これらのリリースは、マイルストーンページで追跡されます。マイナーリリースで予期せぬバグがある場合、パッチリリースが使用され、すばやくパッチする必要があります。ビルド構成を変更する必要がある場合、まれな「改訂」リリースが使用される場合があります。
メジャー、マイナー、パッチリリースのタグはGitHubでタグ付けされており、リリースページで表示できます。マイナーリリースを準備するときに、新しいリリースチェックリストの問題を開きます。リリースのステータスに興味がある場合は、対応するチェックリストの問題を見つけて、チェックリストが終了したときに問題が閉じられることに注意してください。 Webサイトで新しいダウンロードをホストし、ホストされたリポジトリに追加する期間中に「テスト中のリリース」を検討します。十分なテストが発生した場合、GitHubでリリースを「安定」としてマークします。これには通常2週間かかります。
ソースからオスケリーを構築することをお勧めします!ビルドガイドをご覧ください。また、寄稿ガイドをチェックして、Slackでコミュニティに参加してください。
そこには多くのosquery艦隊マネージャーがいます。 Osqueryプロジェクトは、これらを承認、推奨、またはテストしません。それらは出発点として提供されます
| プロジェクト | ライセンス |
|---|---|
| 艦隊 | オープンコア |
| コリド | コマーシャル |
| osctrl | オープンソース |
| Zentral | オープンソース |
Osqueryに貢献することにより、貢献がライセンスファイルで定義されているとおりにライセンスされることに同意します。
GitHubのタグ付きバージョンリリースノートで、セキュリティアナウンスを追跡します。これらをsecurity.mdにも集計します。
Osqueryドキュメントはオンラインで入手できます。古いリリースのドキュメントは、バージョン番号でも見つけることができます。
Osqueryの詳細については、プロジェクトのバックグラウンドについてLaunchブログ投稿をお読みください。ユーザーガイドをご覧ください。
開発と使用法の議論は、Osquery Slackで行われています。ここから招待状を手に入れましょう!