セキュリティ診断用デフォルト認証情報コレクションツールの実装解説

概要と活用目的

このツールは、ペネトレーションテストやレッドチーム演習の実施時における、既知の製品デフォルト認証情報の参照を支援するために設計されています。多数のベンダーに関するユーザー名およびパスワードの組み合わせを包括的に収集しており、ブルーチームが組織内のインフラ資産を保護し、OWASP ガイド(WSTG-ATHN-02)に基づいて潜在的な脆弱性を特定・軽減するプロセスにおいて重要なリソースとなります。

データセット構成統計

現在、収集されたデータの規模と多様性は以下の通りです。

指標 製品/ベンダー数 一意なユーザー名 一意なパスワード
総件数 3536 件 3536 件 3536 件
重複を除く 1244 1102 1636
頻出上位 Oracle - -
最大頻度 235 回 725 回 463 回

情報源の参照先

  • 公開された既定パスワードリスト(betterdefaultpasslist など)
  • セキュリティ調査用スクリプト集(Changeme, Routersploit)
  • 一般共有リスト(Seclists)
  • 産業制御システム向けリスト(ics-default-passwords)
  • 各ベンダーの公式ドキュメントおよび技術ブログ

導入方法と環境構築

本ツールは Python パッケージとして pypi を通じて配布されており、主要な OS 環境で動作確認済みです。

パッケージマネージャによるインストール

# 仮想環境へのインストール推奨
$ python3 -m pip install defaultcreds-cheat-sheet

# 初期検索コマンドの実行例
$ creds search juniper
対応プラットフォーム 動作検証状況
Linux (Kali, Ubuntu, Lubuntu) ✅ 確認済み
Windows (10, 11) ✅ 確認済み
macOS ⚠️ 未検証

手動ビルド手順

ソースコードから直接環境を整備する場合は、以下のように処理します。

git clone https://github.com/ihebski/DefaultCreds-cheat-sheet
cd DefaultCreds-cheat-sheet
pip3 install -r requirements.txt
sudo cp creds /usr/local/bin/
sudo chmod +x /usr/local/bin/creds

基本機能と操作方法

creds スクリプトを使用することで、製品別情報の検索やデータベースの更新、結果のエクスポートが可能です。

検索とエクスポート機能

# 指定製品の認証情報をテーブル形式で表示
➜ creds search apache-web
+----------------------------+-----------+------------+
| Product                    | username  | password   |
+----------------------------+-----------+------------+
| Apache Tomcat (Web UI)     | tomcat    | tomcat     |
| Apache Tomcat (Web UI)     | admin     | admin      |
...
+----------------------------+-----------+------------+

# データベースの最新状態に同期
➜ creds update
Checking for repository updates...
[+] Fetching latest dataset...
Update completed successfully.

# 検索結果をテキストファイルへ出力
➜ creds search mysql-server export
[+] Credentials exported to /tmp/mysql-users.txt , /tmp/mysql-passes.txt

プロキシ環境の設定

バージョン 0.5.2 以降では、外部ネットワーク接続時に HTTP プロキシを経由させるオプションが追加されています。

# プロキシ経由での製品検索
➜ creds search fortinet --proxy=http://gateway.local:3128

# プロキシを通じたデータベース更新
➜ creds update --proxy=http://gateway.local:3128

# エクスポート処理も同様に適用可能
➜ creds search fortinet --proxy=http://gateway.local:3128 export

周辺ツールの活用

より高度な検索条件(正規表現、フィールド指定)や出力形式(JSON, YAML)が必要な場合、同じデータベースを利用可能な Pass Station という CLI ライブラリが併用可能です。これは CSV データベースに対してクエリを実行するためのサードパーティ製拡張機能として提供されています。

貢献と免責事項

特定製品の情報が不足している場合は、プルリクエストを送信してデータセットへの追記を行うことが歓迎されます。

免責事項: 本ツールの情報は教育的用途およびセキュリティ診断の補助を目的として提供されています。法的または倫理的なガイドラインを遵守した上でご自身自身の責任において使用してください。

タグ: pentesting default-credentials security-audit python-script cli-tool

6月11日 23:14 投稿