OsqueryはOSをリレーショナルDBMSとして公開します

Facebookはgithubに OSqueryフレームワークを投稿し、OS XおよびLinuxでプロセスの低レベルの監視を実行し、それらをSQLテーブルの形式で保存します。 クエリでは異なるテーブルを組み合わせることができるため、この方法は独自の方法で便利です。



たとえば、すべてのインターフェイスのポートでリッスンするすべてのプロセスの名前、pid、ポートを確認する場合は、リクエストを行います



SELECT DISTINCT process.name, listening.port, process.pid FROM processes AS process JOIN listening_ports AS listening ON process.pid = listening.pid WHERE listening.address = '0.0.0.0';
      
      





または別の要求で、オペレーティングシステムで起動し、その後も実行を継続するすべてのOS Xデーモンのリストを表示します。 デーモンの名前と実行可能ファイルへのパスが返されます。



 SELECT name, program || program_arguments AS executable FROM launchd WHERE (run_at_load = 'true' AND keep_alive = 'true') AND (program != '' OR program_arguments != '');
      
      





このような要求は、実行中のプロセス、ロードされたカーネルモジュール、およびネットワーク接続を追跡します。



OSqueryの新しいSQLテーブルは、自分で簡単に作成できます 。 必要に応じて、テーブル一般的なカタログを補充します。



All Articles