セキュリティ · 2 min read · Sep 26, 2025

HTTPOXY 脆弱性: ウェブサーバーを保護しテストする方法

最近発見された HTTPOXY 脆弱性は、cgi または cgi に似た環境で実行されるアプリケーションに影響を与える脆弱性です。これは、Apache や Nginx を含むほぼすべてのウェブサーバーや、ほとんどの PHP アプリケーションに影響を与えることを意味します。Apache の mod_php モードも影響を受けます。

このチュートリアルでは、HTTPOXY からウェブサーバーを保護する方法を示します。最も使用される Linux ディストリビューションである CentOS + RHEL、Debian、および Ubuntu のセクションが含まれています。手順は他の Linux ディストリビューションにも適用できますが、設定ファイルへのパスが異なる場合があります。

HTTPOXY 脆弱性の詳細な説明は、こちらのウェブサイト https://httpoxy.org/ で確認できます。

このチュートリアルで説明する手順は、ISPConfig パーフェクトサーバーチュートリアルと互換性があります。

1 HTTPOXY は私のサーバーにどのように影響しますか?

HTTPOXY は、HTTP_PROXY 変数を尊重し、それをプロキシ設定に使用するクライアントや、環境内で HTTP_PROXY を実際またはエミュレートされた変数として使用するサーバーサイドアプリケーションに影響を与えます。攻撃の結果は、ウェブアプリケーションによって攻撃者が選択したターゲットシステムにプロキシされるトラフィックや、アプリケーションが他のシステムへのアウトゴーイング接続を開くことです。この脆弱性はリモートで簡単に悪用でき、サーバーはそれをスキャンできますので、サーバーでそれを閉じるための対策を講じることを強くお勧めします。

1.1 一般的な解決策

現在推奨されている解決策は、HTTP_PROXY ヘッダー変数を解除またはフィルタリングすることです。これは、Apache で mod_headers モジュールを使用して、次の設定文で行います:

RequestHeader unset Proxy early

Nginx では、次の行を使用して HTTP_PROXY 変数を解除できます。

fastcgi_param HTTP_PROXY "";

次の章では、異なる Linux ディストリビューションの詳細な手順を説明します。

2 Debian

この章では、Debian 8 (Jessie) および Debian 7 (Wheezy) サーバーで Apache と Nginx を HTTPOXY から保護するための設定について説明します。次の手順は、シェルで root ユーザーとしてログインしていることを前提としています。別のユーザーでログインしている場合は、su コマンド(または sudo を設定している場合は sudo)を使用して root ユーザーになります。

2.2 Debian 8 (Jessie) の Apache

Apache ヘッダーモジュールを有効にします。

a2enmod headers

グローバル設定ファイル /etc/apache2/conf-available/httpoxy.conf を追加します。ここでは nano エディタを使用します:

nano /etc/apache2/conf-available/httpoxy.conf

次の内容をそのファイルに貼り付けます:


    RequestHeader unset Proxy early

ファイルを保存します。次に、a2enconf コマンドで設定を有効にし、Apache を再起動します。

a2enconf httpoxy  
service apache2 restart

2.2 Debian 7 (Wheezy) の Apache

Apache ヘッダーモジュールを有効にします:

a2enmod headers

グローバル設定ファイル /etc/apache2/conf.d/httpoxy.conf を追加します。ここでは nano エディタを使用します:

nano /etc/apache2/conf.d/httpoxy.conf

次の内容をそのファイルに貼り付けます:


    RequestHeader unset Proxy early

ファイルを保存します。次に、Apache を再起動します。

service apache2 restart

2.3 Debian の Nginx

次のコマンドは、HTTP_PROXY 変数を空の文字列に設定する fastcgi_param を /etc/nginx/fastcgi_params ファイルに追加します。

echo 'fastcgi_param HTTP_PROXY "";' >> /etc/nginx/fastcgi_params

次に、設定変更を適用するために Nginx を再起動します。

service nginx restart

3 Ubuntu

この章では、Ubuntu 14.04 - 16.04 サーバーで Apache と Nginx を HTTPOXY から保護するための設定について説明します。

3.1 Ubuntu の Apache

Apache ヘッダーモジュールを有効にします。

sudo a2enmod headers

グローバル設定ファイル /etc/apache2/conf-available/httpoxy.conf を追加します。ここでは nano エディタを使用します:

sudo nano /etc/apache2/conf-available/httpoxy.conf

次の内容をそのファイルに貼り付けます:


    RequestHeader unset Proxy early

ファイルを保存します。次に、a2enconf コマンドで設定を有効にし、Apache を再起動します。

sudo a2enconf httpoxy  
sudo service apache2 restart

3.2 Ubuntu の Nginx

Ubuntu を HTTPOXY から保護する手順は、Debian の手順と似ています。コマンドを sudo で実行することを確認するだけです。この echo コマンドは、HTTP_PROXY 変数を空の文字列として設定する fastcgi_param 行を追加します。ファイル /etc/nginx/fastcgi_params は、nginx の vhost ファイルのデフォルト @PHP および cgi-bin セクションに含まれており、ISPConfig によって作成される vhosts にも含まれています。カスタム vhosts を追加した場合は、php および他の cgi または fastcgi コネクタの設定セクションに「include /etc/nginx/fastcgi_params;」が含まれていることを確認してください。

空の HTTP_PROXY 変数を追加するために、次のコマンドを実行します。

sudo echo 'fastcgi_param HTTP_PROXY "";' >> /etc/nginx/fastcgi_params

次に、設定変更を適用するために Nginx を再起動します。

sudo service nginx restart

4 CentOS、RHEL および Fedora

この章では、CentOS サーバーで Apache と Nginx を HTTPOXY から保護するための設定について説明します。同じ手順は Fedora サーバーでも機能するはずです。以下のコマンドを実行する前に、シェルで root ユーザーとしてログインしてください。

4.1 Apache

CentOS の Apache (httpd) 設定ファイルは /etc/httpd/conf/httpd.conf です。次のコマンドで httpd.conf ファイルの最後に Apache ヘッダー規則を追加します:

echo "RequestHeader unset Proxy early" >> /etc/httpd/conf/httpd.conf

次に、設定変更を適用するために httpd を再起動します。

service httpd restart

4.2 Nginx

CentOS の Nginx ウェブサーバーは、デフォルトの vhost の PHP および CGI セクションに fastcgi_params を含めているため、そこで空の HTTP_PROXY 変数を設定する規則を追加できます。次のコマンドを実行して、空の HTTP_PROXY 変数を追加します。

echo 'fastcgi_param HTTP_PROXY "";' >> /etc/nginx/fastcgi_params

次に、設定変更を適用するために Nginx を再起動します。

service nginx restart

5 テスト

最後に、サーバーが安全かどうかをテストする必要があります。ルーク・リーマンが開発した素晴らしいオンラインテストツールは、こちらで見つけることができます: https://httpoxy.rehmann.co/

ツールにサーバーまたはウェブサイトの URL を入力し、「テスト」ボタンをクリックします。

HTTPOXY テスト

こちらが howtoforge.com の結果です。ご覧のとおり、私たちのウェブサイトは安全です。

6 リンク

  • HTTPOXY ウェブサイト https://httpoxy.org/
  • Debian 8 レシピを提供してくれたジェシーに感謝します。
Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。