まずは問題を知る
今回、セキュリティ設定を施すhttpdのバージョンおよびOSリリースは以下の通りです。
1 2 3 4 5 |
# dnf list installed | grep httpd centos-logos-httpd.noarch 80.5-2.el8 @AppStream httpd.x86_64 2.4.37-16.module_el8.1.0+256+ae790463 @AppStream httpd-filesystem.noarch 2.4.37-16.module_el8.1.0+256+ae790463 @AppStream httpd-tools.x86_64 2.4.37-16.module_el8.1.0+256+ae790463 @AppStream |
1 2 |
# cat /etc/redhat-release CentOS Linux release 8.1.1911 (Core) |
OWASP ZAPでセキュリティの問題点を探す
手始めに、構築したWebサーバの問題点を探しましょう。
自身が構築したWebサーバやWebアプリケーションの脆弱性(問題点)を探すのに、
OWASP ZAPを利用するのが良いでしょう。
ご利用環境のインストーラーをダウンロードして、各自インストールしてください。
なお、OWASP ZAPのインストール手順については解説しているサイトもあるので、
適宜調べてもらえたら助かります。
また、注意していただきたいのですが、
このツールを利用して全ての問題が見つかるというものでなく、
あくまで「設定の綻び」といった簡易的な問題が出ると思った方がよいです。
Webサーバの弱点を探してみる
OWASP ZAPの準備ができたら、早速サーバを調査します。

調査や攻撃をするのは絶対にしないでください。
法律で禁止されている行為であり、違反すると服役することになります。
このサイトなどを参考にして、自分でも調べてみることをお勧めします。
法律に関わる部分を理解したら、自分の管理下にある
いつでも調査を実施していいサーバを稼働させましょう。
1 2 3 4 |
# systemctl start httpd # ss -ant | grep LISTEN LISTEN 0 128 0.0.0.0:22 0.0.0.0:* LISTEN 0 128 *:80 *:* |
今回は 192.168.1.122 というアドレスがサーバのIPアドレスになります。
OWASP ZAPにて調査を行う
OWASP ZAPを起動
OWASP ZAPを起動したら、このような画面になると思うので、
標準の設定のまま「開始」を押下します。

OSX版の画像となります。ご了承ください。
OWASP ZAPのプロキシ設定を変更
次に、プロキシの設定を変更します。
既存のプロキシサーバやローカルホストで動作するアプリケーションと重複する可能性があるので、あえて以下の情報に変更しています。
ポート : 50080
[ツール -> オプション -> ローカル・プロキシ]にある情報を上記の値に変更します。
ポート番号は任意のもので構いませんが、わかりやすく使われにくいものを今回選びました。
システム側のプロキシ設定を変更
OWASP ZAPの設定が完了したら、パソコン(システム)側の設定も変更します。
システムの設定方法はOSによって違いますが、今回はOSXの設定方法で説明します。
[システム環境設定 -> ネットワーク]を開き、接続済のインタフェースを選択します。
画像の右下にある「詳細」ボタンを押下して、「プロキシ」を選択します。
画像にあるように、「Webプロキシ(HTTP)」と
「保護されたWebプロキシ(HTTPS)」にチェックを入れて、
先ほどOWASP ZAPに設定した値を入力します。
完了したら、「OK」を押下して「適用」します。
これでネットワーク周りの設定は完了しました。
調査対象にアクセスする下準備
httpdは標準で写真のようなページが存在しますが、
果たしてOWASP ZAPではどのように判定されるのでしょうか。
まずは、写真のように「Manual Explore」を選択します。
[URL to Explore]部分に対象のURLを入力します。
そして、「Launch Browser」を押下します。
この記事ではトップページのみを対象に調査を行いますが、
実際のアプリケーションではできる限り全ての遷移を行った方が
問題も見つけやすいです。
ブラウザが立ち上がったら、OWASP ZAPにURLが記録されるのでブラウザを閉じます。
今回の調査対象である「http://192.168.1.122」を右クリックし、
「コンテキストに含める -> 既定コンテキスト」を押下します。
コンテキストに追加されたら写真のようになっているはずです。
実際にアクセスしてみる
コンテキストに追加できたら、ようやく調査をできるようになります。
まずは、写真の左上を「プロテクトモード」に変更します。
その後、調査対象のURLをもう一度右クリックし、
「攻撃 -> 動的スキャン」を押下します。
この画面が出てきたら、「スキャンを開始」を押下して自動調査を開始しましょう。
今回は、インストール直後ということもあり、ほとんど問題が見つかりませんでした。
ただし、ログイン画面だとかデータを送信して確定する処理などは問題が見つかりやすいですので、
管理下にあるサーバであれば調査をお勧めします。