Patchstack araştırmacıları, popüler RealHomes WordPress temasını ve Easy Real Estate eklentisini kullanan 23.000’den fazla emlak web sitesinin kritik güvenlik açıklarına maruz kaldığı konusunda uyardı.
Bu güvenlik açıkları, kimliği doğrulanmamış saldırganların ayrıcalıkları yükseltmesine, yönetici hesaplarını ele geçirmesine ve web sitelerinin güvenliğini ihlal etmesine olanak tanır.
Bu güvenlik açıklarının teknik ayrıntılarına ve web sitesi sahiplerinin platformlarını korumak için yapabilecekleri eylemlere bakalım.
1. RealHomes Teması’nda Kimliği Doğrulanmamış Ayrıcalık Artışı
Emlak web siteleri tarafından yaygın olarak kullanılan RealHomes teması, kimliği doğrulanmamış bir ayrıcalık yükseltme kusuru olan CVE-2024-32444’ten muzdariptir.
Bu güvenlik açığı, uygunsuz yetkilendirmeden ve inspiry_ajax_register() işlevindeki tek seferlik doğrulama işleminin eksik olmasından kaynaklanmaktadır.
Investigate Real-World Malicious Links & Phishing Attacks With Threat Intelligence Lookup - Try for Free
Saldırganlar, yalnızca bir dizi kötü amaçlı HTTP isteğiyle yönetici hesapları oluşturmak için bu sorundan yararlanabilir. İşte RealHomes temasındaki güvenlik açığı bulunan koddan bir alıntı:
function inspiry_ajax_register() {
// First check the nonce
check_ajax_referer( 'inspiry-ajax-register-nonce', 'inspiry-secure-register' );
// Assign user role without proper authorization checks
if ( ! empty( $_POST['user_role'] ) ) {
$info['role'] = sanitize_text_field( $_POST['user_role'] );
} else {
$info['role'] = get_option( 'default_role', 'subscriber' );
}
// Register the user
$user_register = wp_insert_user( $info );
if ( is_wp_error( $user_register ) ) {
// Handle errors
} else {
// Send registration success response
echo json_encode( array( 'success' => true ) );
}
die();
}
Sorun, $user_role parametresinin kötü amaçlı girdileri kabul etmesi ve saldırganların kendilerine Yönetici rolü atamasına izin vermesi nedeniyle ortaya çıkıyor.
2. Easy Real Estate Eklentisinde Kimliği Doğrulanmamış Giriş
RealHomes temasına eşlik eden Easy Real Estate eklentisi, CVE-2024-32555 numaralı ere_social_register() işlevinde kullanıcı kimlik bilgilerini doğru şekilde doğrulayamıyor.
Saldırganlar, bilinen bir yönetici e-posta adresini kullanarak kötü amaçlı bir istek oluşturarak, parolaya ihtiyaç duymadan WordPress hesaplarına giriş yapabilir. İşte ere_social_register() fonksiyonunun savunmasız kısmı:
function ere_social_register( $register_cred ) {
$existing_user = get_user_by( 'email', $register_cred['user_email'] );
if ( $existing_user ) {
wp_set_auth_cookie( $existing_user->ID ); // No ownership check
wp_set_current_user( $existing_user->ID );
ere_social_login_redirect();
exit;
}
}
Bu kusur özellikle tehlikelidir çünkü saldırganlara kullanıcının yalnızca e-posta kimliğini bilerek hesaplara tam erişim sağlar.
Patchstack bu güvenlik açıklarını ilk olarak birkaç ay önce RealHomes’un 4.3.3 sürümünde bildirmişti. O zamandan bu yana tema ve eklentide yapılan üç güncellemeye rağmen satıcı bu sorunları çözecek bir yama yayınlamadı.
Etkilenen web sitelerini risk altında bırakan bir çözüm yoktur. Ancak Patchstack müşterileri proaktif güvenlik açığı yönetim sistemi aracılığıyla korunur.
Bir yama yayınlanana kadar web sitesi sahiplerinin acil önlem almaları önemle tavsiye edilir:
- Hem RealHomes Temasını hem de Kolay Emlak Eklentisini Devre Dışı Bırakın
Kötüye kullanım riskini ortadan kaldırmak için web sitenizdeki bu varlıkları geçici olarak devre dışı bırakın. - Şüpheli Davranışlara Karşı Web Sitesi Etkinliğini İzleyin
WordPress kontrol panelinizde yetkisiz kullanıcı hesaplarını veya olağandışı yönetim etkinliklerini kontrol edin. - Eklenti Güvenliği Çözümlerini Uygulayın
Potansiyel güvenlik açıklarını geçici olarak azaltmak için Wordfence veya Patchstack gibi güvenlik eklentilerini kullanın. - Kullanıcı Kaydını Kısıtla
Kullanıcı kaydı etkinse, güvenlik açıkları düzeltilene kadar bunu devre dışı bırakın.
Bu olay güvenli kodlama uygulamalarının önemini vurgulamaktadır. Geliştiriciler, kullanıcı girişini titizlikle doğrulamalı ve uygun kimlik doğrulama mekanizmalarını uygulamalıdır.
wp_set_auth_cookie() ve wp_insert_user() gibi işlevler hiçbir zaman harici kaynaklardan gelen güvenilmeyen girdilere güvenmemelidir. Örneğin, daha sıkı bir rol doğrulamanın dahil edilmesi ayrıcalık yükseltme risklerini azaltabilir:
if ( ! current_user_can( 'administrator' ) ) {
wp_die( 'Unauthorized action.' );
}
RealHomes teması ve Easy Real Estate eklentisindeki güvenlik açıkları, WordPress eklentilerindeki güvenli olmayan kodlama uygulamalarının tehlikelerini vurgulamaktadır.
Web sitesi sahipleri satıcıdan bir yama beklerken, bu bileşenleri devre dışı bırakmak ve hesapları güvenli hale getirmek için derhal harekete geçmek çok önemlidir.
Jenkins & Jira’yı Kullanarak Uygulama Güvenliğini CI/CD İş Akışlarınıza Entegre Etme -> Ücretsiz Web Semineri