機密ファイル検索

1. 目標

機密ファイルがウェブサイトのパスに存在するかどうかを検索

  • ログファイル

  • 環境変数ファイル

  • バックアップファイル

2. 説明

  • sensitive_files.txt ファイルから正規式を読み込み、指定された文書ルート ディレクトリ内でマッチングされるファイルを検索します。 これにより、より柔軟に機密性の高いファイルをチェックできます。

  • sensitive_files.txtファイルにより多くの正規式を追加することで、検出を高めることができます。

3. コード

vi check_sensitive_files.sh

#!/bin/bash

# 使い方案内関数
usage() {
    echo "Usage: $0 <DOCUMENT_ROOT>"
    exit 1
}

# コマンドライン引数確認
if [ "$#" -ne 1 ]; then
    usage
fi

# ウェブ サーバーのドキュメント ルート ディレクトリ
DOCUMENT_ROOT="$1"

# 機密ファイルリストファイル
SENSITIVE_FILES_LIST="sensitive_files.txt"

# 機密ファイルのリストを読み込む
if [ ! -f "$SENSITIVE_FILES_LIST" ]; then
    echo "Error: Sensitive files list file not found: $SENSITIVE_FILES_LIST"
    exit 1
fi

# 関数:ファイルにアクセス可能かどうかを確認
check_file() {
    local file_pattern="$1"
    local matched_files=($(find "$DOCUMENT_ROOT" -type f -regex "$file_pattern"))
    
    if [ ${#matched_files[@]} -gt 0 ]; then
        for file in "${matched_files[@]}"; do
            echo "[露出] 敏感なファイルを発見: $file"
        done
    else
        echo "[安全] 敏感なファイルなし: $file_pattern"
    fi
}

echo "機密ファイルへのアクセスを確認中..."

# 機密ファイルのリストを読んで関数呼び出し
while IFS= read -r file_pattern; do
    check_file "$file_pattern"
done < "$SENSITIVE_FILES_LIST"

ログファイル検出

ログ ファイルはアプリケーションとサーバーの動作を記録するため、機密情報が含まれる場合があります。

環境変数露出探知

環境変数ファイルには、データベースのパスワード、API キーなどの機密情報が含まれる場合があります。

バックアップファイル検出

バックアップ ファイルには、データベース全体またはファイル システムのスナップショットが含まれる可能性があり、露出時に大きなリスクとなります。

デバッグ情報露出(DEBUG INFO EXPOSURE)ファイル探知

デバッグ用途で使用されるファイルは、内部システムの構成情報や環境設定などを露出することができ、外部に露出される場合、大きなセキュリティリスクをもたらすことがあります。

vi sensitive_files.txt

4. 実行

  • スクリプトの実行時にウェブ サーバーのドキュメント ルート ディレクトリを引数に転送します:

Last updated