Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
osxcollector — OS X向けのフォレンジック証拠収集・分析ツールキット | Kitploit
ツール/GitHubGitHub/yelparchive/osxcollector
ディスクフォレンジックOSINT (オープンソースインテリジェンス)メモリフォレンジックフォレンジックデジタルフォレンジックインシデントレスポンスArchived
GitHubyelparchive/osxcollector

osxcollector

OS X向けのフォレンジック証拠収集・分析ツールキット

リポジトリを見る
1.9k239217年前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有
ウェブサイト

osxcollector

Build Status PyPI

OSXCollector マニュアル

OSXCollector は、OSX 向けのフォレンジック証拠収集・分析ツールキットです。

フォレンジック収集

収集スクリプトは感染の可能性があるマシン上で実行され、対象マシンを記述した JSON ファイルを出力します。OSXCollector は、plist、SQLite データベース、ローカルファイルシステムから情報を収集します。

フォレンジック分析

フォレンジック収集を手に入れたアナリストは、次のような質問に答えることができます:

  • 「このマシンは感染しているか?」
  • 「マルウェアはどうやってそこに侵入したのか?」
  • 「さらなる感染を防ぎ検出するにはどうすればよいか?」

Yelp は、ほとんどの OSXCollector 実行の分析を自動化し、その出力を「怪しいものだけ」の読みやすく実用的なサマリーに変換しています。自動化された OSXCollector 出力分析を最大限に活用する方法については、OSXCollector Output Filters プロジェクト を参照してください。

収集の実行

osxcollector.py は、標準の OSX マシン上で依存関係なしに実行できる単一の Python ファイルです。そのため、brew、pip、設定ファイル、環境変数を気にすることなく、任意のマシンで簡単に収集を実行できます。単一のファイルをマシンにコピーして実行するだけです。

sudo osxcollector.py だけです。

$ sudo osxcollector.py
Wrote 35394 lines.
Output in osxcollect-2014_12_21-08_49_39.tar.gz

GitHub リポジトリをクローンしたばかりの場合、osxcollector.py は osxcollector/ ディレクトリ内にあるため、次のように実行する必要があります:

$ sudo osxcollector/osxcollector.py

重要: Mac OS X マシン上の python コマンドが、システムに付属のデフォルトの Python インタプリタを使用しており、brew でインストールされた Python バージョンなどで上書きされていないことを確認してください。OSXCollector は OS X ライブラリのネイティブ Python バインディングに依存しています。これらは、システムに元々インストールされている Python 以外のバージョンでは利用できない可能性があります。 または、使用する Python バージョンを明示的に指定して osxcollector.py を実行することもできます:

$ sudo /usr/bin/python2.7 osxcollector/osxcollector.py

コレクタの JSON 出力は、システムログなどの便利なファイルとともに、.tar.gz ファイルにまとめられ、アナリストへの引き渡し用にされます。

osxcollector.py には、収集の動作を変更するための便利なオプションが多数あります:

  • -i INCIDENT_PREFIX/--id=INCIDENT_PREFIX: 出力ファイルのプレフィックスとして使用される識別子を設定します。デフォルト値は osxcollect です。

    $ sudo osxcollector.py -i IncontinentSealord
    Wrote 35394 lines.
    Output in IncontinentSealord-2014_12_21-08_49_39.tar.gz
    

    インシデント名は創造的に付けましょう。苦しみを笑い飛ばしやすくなります。

  • -p ROOTPATH/--path=ROOTPATH: 収集を実行するファイルシステムのルートへのパスを設定します。デフォルト値は / です。これはディスクイメージ上で収集を実行するのに最適です。

    $ sudo osxcollector.py -p '/mnt/powned'
    
  • -s SECTION/--section=SECTION: 完全な収集の一部のみを実行します。複数回指定できます。セクションとサブセクションの完全なリストは次のとおりです:

    • version
    • system_info
    • kext
    • startup
      • launch_agents
      • scripting_additions
      • startup_items
      • login_items
    • applications
      • applications
      • install_history
    • quarantines
    • downloads
      • downloads
      • email_downloads
      • old_email_downloads
    • chrome
      • history
      • archived_history
      • cookies
      • login_data
      • top_sites
      • web_data
      • databases
      • local_storage
      • preferences
    • firefox
      • cookies
      • downloads
      • formhistory
      • history
      • signons
      • permissions
      • addons
      • extension
      • content_prefs
      • health_report
      • webapps_store
      • json_files
    • safari
      • downloads
      • history
      • extensions
      • databases
      • localstorage
      • extension_files
    • accounts
      • system_admins
      • system_users
      • social_accounts
      • recent_items
    • mail
    • full_hash
    $ sudo osxcollector.py -s 'startup' -s 'downloads'
    
  • -c/--collect-cookies: クッキーの値を収集します。デフォルトでは、OSXCollector はクッキーの値をダンプしません。これは機密情報(例:セッション ID)を含む可能性があるためです。

  • -l/--collect-local-storage: Web ブラウザのローカルストレージに保存された値を収集します。デフォルトでは、OSXCollector は値をダンプしません。機密情報を含む可能性があるためです。

  • -d/--debug: 詳細出力と Python ブレークポイントを有効にします。OSXCollector に問題がある場合は、これを試してください。

    $ sudo osxcollector.py -d
    

収集の詳細

コレクタは、収集されたすべてのアーティファクトを含む .tar.gz を出力します。アーカイブには、ほとんどの情報を含む JSON ファイルが含まれています。さらに、対象システムのログから有用なログのセットも含まれています。

共通キー

すべてのレコード

JSON ファイルの各行は 1 つの「情報」を記録します。すべての JSON レコードに現れる共通のキーがいくつかあります:

  • osxcollector_incident_id: すべてのレコードで共有される一意の ID。
  • osxcollector_section: このレコードが保持するデータの「セクション」または種類。
  • osxcollector_subsection: このレコードが保持するデータの種類の「サブセクション」またはより詳細な記述子。
ファイルレコード

ファイルを表すレコードには、いくつかの便利なキーがあります:

  • atime: ファイルアクセス時刻。
  • ctime: ファイル作成時刻。
  • mtime: ファイル変更時刻。
  • file_path: ファイルの絶対パス。
  • md5: ファイル内容の MD5 ハッシュ。
  • sha1: ファイル内容の SHA1 ハッシュ。
  • sha2: ファイル内容の SHA2 ハッシュ。

ダウンロードされたファイルを表すレコードの場合:

  • xattr-wherefrom: ダウンロードされたファイルの送信元 URL と参照元 URL を含むリスト。
  • xattr-quarantines: どのアプリケーションがファイルをダウンロードしたかを示す文字列。
SQLite レコード

SQLite データベースの行を表すレコードの場合:

  • osxcollector_table_name: 行の由来となるテーブル名。
  • osxcollector_db_path: SQLite ファイルの絶対パス。

特定のユーザーに関連付けられたデータを表すレコードの場合:

  • osxcollector_username: ユーザー名

タイムスタンプ

OSXCollector は、タイムスタンプを YYYY-mm-dd hh:MM:ss 形式の人間が読みやすい日時文字列に変換しようとします。ヒューリスティックを使用して、さまざまなタイムスタンプを自動的に識別します:

  • エポックからの秒数
  • エポックからのミリ秒数
  • 2001-01-01 からの秒数
  • 1601-01-01 からの秒数

セクション

version セクション

OSXCollector の現在のバージョン。

system_info セクション

システムに関する基本情報を収集します:

  • システム名
  • ノード名
  • リリース
  • バージョン
  • マシン
kext セクション

カーネル拡張機能を以下から収集します:

  • /System/Library/Extensions
  • /Library/Extensions
startup セクション

LaunchAgents、LaunchDaemons、ScriptingAdditions、StartupItems およびその他のログイン項目に関する情報を以下の場所から収集します:

  • /System/Library/LaunchAgents
  • /System/Library/LaunchDaemons
  • /Library/LaunchAgents
  • ~/Library/LaunchAgents
  • /Library/LaunchDaemons
  • /System/Library/ScriptingAdditions
  • /Library/ScriptingAdditions
  • /System/Library/StartupItems
  • /Library/StartupItems
  • ~/Library/Preferences/com.apple.loginitems.plist

Mac OS X の起動に関する詳細はこちらを参照してください: http://www.malicious-streams.com/article/Mac_OSX_Startup.pdf

applications セクション

インストールされたアプリケーションのハッシュを取得し、インストール履歴を以下から収集します:

  • /Applications
  • ~/Applications
  • /Library/Receipts/InstallHistory.plist
quarantines セクション

検疫とは、ユーザーがインターネットからダウンロードしたファイルを開こうとしたときに、「本当にこれを実行しますか?」と表示するために必要な情報です。詳細については、Apple Support の検疫に関する説明を参照してください: http://support.apple.com/kb/HT3662

このセクションでは、検疫ファイルに対する XProtect のハッシュベースのマルウェアチェックからの情報も収集します。plist の場所: /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/XProtect.plist

XProtect はインターネットプラグインの最小バージョンも追加します。その plist の場所: /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/XProtect.meta.plist

downloads セクション

すべてのユーザーのダウンロードファイルのハッシュを以下から取得します:

  • ~/Downloads
  • ~/Library/Mail Downloads
  • ~/Library/Containers/com.apple.mail/Data/Library/Mail Downloads
chrome セクション

Google Chrome ウェブブラウザから以下の情報を収集します:

  • 履歴
  • アーカイブされた履歴
  • クッキー
  • 拡張機能
  • ログインデータ
  • トップサイト
  • Web データ

このデータは ~/Library/Application Support/Google/Chrome/Default から抽出されます。

firefox セクション

Firefox プロファイル内のさまざまな SQLite データベースから情報を収集します:

  • クッキー
  • ダウンロード
  • フォーム履歴
  • 履歴
  • サインオン
  • 権限
  • アドオン
  • 拡張機能
  • コンテンツ設定
  • ヘルスレポート
  • Web Apps ストア

この情報は ~/Library/Application Support/Firefox/Profiles から抽出されます。

Firefox プロファイルフォルダの詳細については、以下を参照してください: http://kb.mozillazine.org/Profile_folder_-_Firefox

safari セクション

Safari プロファイル内のさまざまな plist および SQLite データベースから情報を収集します:

  • ダウンロード
  • 履歴
  • 拡張機能
  • データベース
  • ローカルストレージ
accounts セクション

ユーザーアカウントに関する情報を収集します:

  • システム管理者: /private/var/db/dslocal/nodes/Default/groups/admin.plist
  • システムユーザー: /private/var/db/dslocal/nodes/Default/users
  • ソーシャルアカウント: ~/Library/Accounts/Accounts3.sqlite
  • ユーザーの最近使った項目: ~/Library/Preferences/com.apple.recentitems.plist
mail セクション

メールアプリのディレクトリ内のファイルのハッシュを取得します:

  • ~/Library/Mail
  • ~/Library/Mail Downloads
ツールをダウンロード