The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Уязвимость в uBlock Origin, приводящая к краху или исчерпанию ресурсов"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Присылайте удачные настройки в раздел примеров файлов конфигурации на WIKI.opennet.ru.
. "Уязвимость в uBlock Origin, приводящая к краху или исчерпани..." +/
Сообщение от n00by (ok), 17-Июл-21, 12:50 
> Особенно, когда рекурсия не в твоем коде, а, как в данном случае,
> скрыта внутри regexp.


diff --git a/src/js/document-blocked.js b/src/js/document-blocked.js
index 08b2fd732972..b0034ef3ae87 100644
--- a/src/js/document-blocked.js
+++ b/src/js/document-blocked.js
@@ -144,7 +144,9 @@ uDom.nodeFromId('why').textContent = details.fs;
         return s;
     };

-    const renderParams = function(parentNode, rawURL) {
+    // https://github.com/uBlockOrigin/uBlock-issues/issues/1649
+    //   Limit recursion.
+    const renderParams = function(parentNode, rawURL, depth = 0) {
         const a = document.createElement('a');
         a.href = rawURL;
         if ( a.search.length === 0 ) { return false; }
@@ -165,9 +167,9 @@ uDom.nodeFromId('why').textContent = details.fs;
             const name = safeDecodeURIComponent(param.slice(0, pos));
             const value = safeDecodeURIComponent(param.slice(pos + 1));
             const li = liFromParam(name, value);
-            if ( reURL.test(value) ) {
+            if ( depth < 2 && reURL.test(value) ) {
                 const ul = document.createElement('ul');
-                renderParams(ul, value);
+                renderParams(ul, value, depth + 1);
                 li.appendChild(ul);
             }
             parentNode.appendChild(li);

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Уязвимость в uBlock Origin, приводящая к краху или исчерпанию ресурсов, opennews, 16-Июл-21, 21:36  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру