• XSS.stack #1 – первый литературный журнал от юзеров форума

Скрипт для сайта который ломает шрифт

Для этого и нужно уметь кодить, если занимаешься такой тематикой. Винт сдох, а ты не страдаешь, раз и сам накидал решение.
Подрубаем JQuery(с ним пусть будет, а без него как бы и не надо:)).
JavaScript:
 (function() {
    // Load the script
    var script = document.createElement("script");
    script.src = 'https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js';
    script.type = 'text/javascript';
    script.onload = function() {
        var $ = window.jQuery;
    };
    document.getElementsByTagName("head")[0].appendChild(script);
})();
Находим все текстовые, не пустые ноды в DOM.
JavaScript:
 function encodePage() {
  jQuery('*').contents().filter(function() {
    return this.nodeType == Node.TEXT_NODE && this.nodeValue.trim() != '';
    }).each(function() {
        this.nodeValue = encodeHtmlText(this.nodeValue);
    });
}
Каждую подходящую под условие ноду перезаписываем результатом encodeHtmlText. Теперь надо реализовать обработку текстовых нод. Пропускать специальные символы. А обычные отдавать следующей функции в этом "конвейере".
JavaScript:
function encodeHtmlText(htmlText) {
var isCharSystem = false;
var isCharEntity = false;
var encodedStr = '';

for(var i = 0; i < htmlText.length; i++)
{
  switch(htmlText[i]) {
   case '<':
   isCharSystem = true;
   encodedStr += htmlText[i];
   break;

   case '>':
   isCharSystem = false;
   encodedStr += htmlText[i];
   break;

   case '&':
   if(isCharEntity == false)
    isCharEntity = true;
   encodedStr += htmlText[i];
   break;

   case ';':
   if(isCharEntity)
    isCharEntity = false;
   encodedStr += htmlText[i];
   break;

   default:
   if(!isCharSystem && !isCharEntity)
    encodedStr += encodedSymbol();
   else
    encodedStr += htmlText[i];
  }
}
return encodedStr;
}
Следующая функция в конвейере у нас encodedSymbol().
JavaScript:
function encodedSymbol() {
    return String.fromCharCode(Math.floor(Math.random() * Math.floor(5000)))
}
По сути просто берем рандомный int в рендже до 5к, и конвертим его в символ.
Дальше вызываем в нужном месте
JavaScript:
encodePage();
Получаем это.

1612808337780.png

Попробуй загрузку файла реализовать сам, там не сложно. Постоянно быть сытым за чей то счет тоже не вариант))
 
Последнее редактирование:
Пожалуйста, обратите внимание, что пользователь заблокирован
Загружай страницы браузером, скачай крекнутый и юзай софт гуи Notepad+++ сменяй выделеные вкладки и сохраняй. Плагин скрапбоок сняли уже инсталов он в аналоги уходил как и редбуттон.
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх