ソフトウェアパッケージバンドルとウェブサーバー脆弱性

# はじめに
オープンソースウェブサーバー、特にApache HTTP Serverは、2017年から脆弱性の数が急増し、現在までも攻撃者による悪用が続いています。攻撃者は様々な脆弱性を悪用してウェブサーバーを攻撃するが、 ソフトウェアパッケージ で設置されたウェブサーバーを狙うときもあります。

今度は**ソフトウェアぱっけじバンドルによって発生するウェブサーバー脆弱性**と**実際に漏えいされているデフォルトページ及び設定ファイルを検知する方法**について書きます。

# Web Server Software Package （ウェブサーバーソフトウェアパッケージ）
**[Apache HTTP](https://www.google.co.jp/search?q=apache+HTTP+%E3%82%B5%E3%83%BC%E3%83%90%E3%83%BC&source=hp&ei=vpFrY7eMLLSK2roPv-uIiA0&iflsig=AJiK0e8AAAAAY2ufzvXNmvrQMDu4ORfvzanAmRMhTN_n&ved=0ahUKEwi345GFgqH7AhU0hVYBHb81AtEQ4dUDCAo&uact=5&oq=apache+HTTP+%E3%82%B5%E3%83%BC%E3%83%90%E3%83%BC&gs_lcp=Cgdnd3Mtd2l6EAMyBAgAEB4yBggAEAgQHlCmAVimAWD9BGgBcAB4AIABdIgBdJIBAzAuMZgBAKABAqABAbABAA&sclient=gws-wiz)** ウェブサーバーは独断（Standalone）に設置するより **[XAMPP](https://www.google.com/search?kgmid=/m/08j4yl&hl=ko-KR&q=XAMPP&kgs=92cb605bc7862abe&shndl=0&source=sh/x/kp/1&entrypoint=sh/x/kp)**、**[Wamp](https://www.google.com/search?kgmid=/g/122k63hs&hl=ko-KR&q=WampServer&kgs=a1a8d37b189ffb7c&shndl=0&source=sh/x/kp/1&entrypoint=sh/x/kp)**、**[LAMP](https://www.google.com/search?q=LAMP+%28%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2%E3%83%90%E3%83%B3%E3%83%89%E3%83%AB%29&hl=ko-KR&ei=_uztY8PiI_uK2roPjsybyAo&ved=0ahUKEwjD2f6r05n9AhV7hVYBHQ7mBqkQ4dUDCA8&uact=5&oq=LAMP+%28%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2%E3%83%90%E3%83%B3%E3%83%89%E3%83%AB%29&gs_lcp=Cgxnd3Mtd2l6LXNlcnAQAzIFCAAQogQyBQgAEKIEMgUIABCiBDIFCAAQogQyBQgAEKIEOgoIABBHENYEELADOgQIABAeOgcIABAeEPEEOgYIABAeEA86DAghEKABEMMEEAoQKjoKCCEQoAEQwwQQCjoECCEQCjoICCEQoAEQwwQ6CQgAEB4QDRDxBEoECEEYAFCtFljjNWCgPGgDcAF4AIABrgGIAYgVkgEEMC4yMZgBAKABAcgBCsABAQ&sclient=gws-wiz-serp)** などのパッケージバンドルの形で設置する場合が多いです。**基本的にAPMはウェブサーバーのアパッチ（Apache）とサーバーサイド言語のPHP、データベース管理システム（DBMS）のMySQL / Maria DBを意味**します。この３つを組み合わせて表記する同じ意味の他の用語としてAMPを使うこともあります。

普段、ウェブサーバーを構築する際に、上記3つのソフトウェアを全部設置しなければいけないので、効率のため使われるものがウェブサーバー設置ソフトウェアパッケージです。
>![ソフトウェアパッケージ_1.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3003594/8b98910b-a3e3-ab17-1ba0-ea0b6f7c8dc8.jpeg)
▲ ウェブサーバー設置ソフトウェアパッケージの１つであるXAMPP

その中でXAMPPは、X（Cross Platform）、A（Apache）、M（Maria DB）、P（PHP）、P（Perl）の略語で、APM以外にもウェブサーバーのための他のプログラムを含めています。地道なアップデートとワードプレス（Wordpress）、メディアウィキ（MediaWiki）など、多くのAdd-ons機能が入っていて、多くの開発者が使います。

# ウェブサーバーソフトウェアパッケージ設定完了ページの外部漏えい
ソフトウェアパッケージで設置されたウェブサーバーを攻撃の対象とする際、攻撃者はウェブサーバーについての情報を探索します。そのとき、悪用されるのが設置完了のデフォルトページです。

デフォルトページが外部インターネットに漏洩されていると、それだけでウェブサーバー脆弱性になりかねません。

# 漏えいされたXAMPPウェブサーバーの検索方法
XAMPPソフトウェアパッケージで設置されたApache HTTPウェブサーバーのデフォルトページは画像のようにHTML Titleで検索できます。
> _**Search Query: [title: "Welcome to XAMPP"](https://www.criminalip.io/ja/asset/search?query=title:%20%22Welcome%20to%20XAMPP%22)**_
![ソフトウェアパッケージ_2.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3003594/f168cb14-5b5b-c1e7-185d-34ce1b1cdfa2.jpeg)
▲ Criminal IP 「IT資産検索」で XAMPPソフトウェアパッケージのデフォルトページを検索した結果


検索された７万２千件のウェブサーバーの中の１つにアクセスすると、下の画面のようなXAMPP設置完了デフォルトページに移動します。右側の上段にはPHPの情報（PHPinfo）、phpMyAdminページにアクセスできるメニューがあります。
> ![ソフトウェアパッケージ_3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3003594/a2ad56c9-ddd8-6863-6e8d-ff27f7d001b7.png)
▲ 漏えいされたXAMPPソフトウェアパッケージ設定完了デフォルトページ画面

**右側の上段にあるPHP Infoをクリックすると、ウェブサーバーのphpinfo()関連の実行結果を確認できます。**

> ![ソフトウェアパッケージ_4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3003594/90634556-12f7-0b1b-5eba-1c2b0096ada1.png)
▲ 漏洩されたXAMPPデフォルトページを通じてアクセスしたPHP Infoページ

また、右側の上段にあるphpMyAdminメニューをクリックすると、管理者としてログインできるログインページが示されます。

> ![ソフトウェアパッケージ_5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3003594/19ec6e6c-4b3a-a313-16e8-30303642e6c3.png)
▲ 漏えいされたXAMPPのデフォルトページを通じてアクセスしたphpMyAdminページ

# 漏えいされたWAMPウェブサーバーの検索方法
このようなデフォルトページが漏洩されるソフトウェアパッケージ設置型のウェブサーバー脆弱性はXAMPPだけに該当するものではありません。WAMPとLAMPも似たやり方で、OSINT検索エンジンを通じて漏洩されたウェブサーバーのデフォルトページを検知できます。
> _**Search Query: [title: "WAMP5 Homepage"](https://www.criminalip.io/asset/search?query=title:%20%E2%80%9CWAMP5%20Homepage%E2%80%9D)**_
> _**Search Query: [title: "WAMPSERVER Homepage"](https://www.criminalip.io/ja/asset/search?query=title:%20%E2%80%9CWAMPSERVER%20Homepage%E2%80%9D)**_
![ソフトウェアパッケージ_6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3003594/0b650eb6-b385-a5fe-d4c0-6fb583172ca3.png)
▲ Criminal IP 「IT資産検索」で検索したWAMPサーバーのデフォルトページ
![ソフトウェアパッケージ_7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3003594/3c1f7d38-78dc-0e90-c1c3-eb1eb3fadef9.png)
▲ 漏えいされたWAMPサーバーのデフォルトページにアクセスした画面

# 漏えいされたLAMPウェブサーバーの検索方法
> _**Search Query: [title: "LAMP stack installation scripts by Teddysun"](https://www.criminalip.io/ja/asset/search?query=title%3A+LAMP+stack+installation+scripts+by+Teddysun)**_
![ソフトウェアパッケージ_8.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3003594/800c651c-e097-2604-6edb-36b66d268132.png)
▲ 漏えいされたLAMPサーバーのデフォルトページにアクセスした画面

# Directory Indexでウェブサーバー設定情報を探索
漏えいされたDirectory Indexで設定ファイルを探して悪用する場合もあります。次の画像は、ソフトウェアパッケージXAMPPで設置されたウェブサーバーの設定ファイルが実際に漏洩された事例です。「httpd-xampp.conf」ファイル名になっている設定ファイルにはXAMPP設置型のhttpdウェブサーバー実行と関わる様々な情報が含まれています。
> ![ソフトウェアパッケージ_9.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3003594/a63d8b0b-7e7f-09fa-b407-5823e0680780.png)
▲ 漏えいされたXAMPPソフトウェアパッケージ設定ウェブサーバーのDirectory Index

「httpd-xampp.conf」ファイルを開くと、画像のようにXAMPPウェブサーバーのSetting内容を閲覧できます。

> ![ソフトウェアパッケージ_10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3003594/4880643e-adad-113f-e902-63a32245f0d0.png)
▲ 漏えいされたDirectory Indexで発見した「httpd-xampp.conf」ファイル、XAMPPウェブサーバーのSetting内容が示される。

# Open Source Software Packageを設置する際の注意事項
このように、攻撃者は様々なOSINT情報を収集してウェブサーバー脆弱性を探索します。なので、**オープンソースウェブサーバーソフトウェアを使用するときは、ウェブサーバーの情報などが含まれているデフォルトページと設定ファイルがあるDirectory Indexページが漏洩されているのではないか必ず点検しなければいけません。**

デフォルトページまたはDirectory IndexページのURLで外部インターネットからアクセスができる状態なら、漏えいされた設定ファイルに対する権限の設定を変更するか、ウェブサーバーの環境設定を変更し措置する必要があります。