Hello there, ('ω')ノ
1. .git ディレクトリが公開されている場合の危険性
- 通常、Gitの履歴情報は開発環境だけに存在するべきですが、誤ってサーバー上にアップロードされてしまうことがあります。
もし
.gitに直接アクセスできると、以下のような情報が得られる可能性があります:- コミット履歴(変更内容や開発メモ)
- 過去のコード断片
- ハードコードされたパスワードやAPIキー
- アプリケーションの内部構造や機能のヒント
2. アクセス方法
- 直接アクセスの確認
https://example.com/.git/
ブラウザでアクセスしてディレクトリリストやファイルが見えたら危険信号。
- ダウンロードツールの利用
手動で
.gitの中身を1つずつ取得するのは非効率なので、wgetやGitToolsのようなツールで一括ダウンロードします。
wget -r https://example.com/.git/
- ローカルで解析 ダウンロード後、Gitコマンドで履歴を確認:
git log
git diff <commit-id>
3. 得られる情報の例
コードの一部
- バージョン間の差分(diff)から、関数やSQLクエリなどを直接確認可能
設定ファイル
.envやconfig.phpなどが履歴に含まれていることがある
資格情報
- APIキー、データベースパスワード、管理者アカウント情報など
4. 防止策
- 本番環境には
.gitディレクトリを絶対にアップロードしない - Webサーバーの設定で
.gitや.svnなどの隠しディレクトリへのアクセスを禁止 - デプロイ時に不要なファイルを除外する設定(例:
.gitignoreやCI/CD設定)を利用
Best regards, (^^ゞ