Here is an example of the value of the cs-uri-query field for one of the IIS log entries. surveyID=91+update+usd_ResponseDetails+set+categoryName=REPLACE(cast( --- [SKIPPED] --- ))--
Вы как маленький. Код — proof of concept.
Добавьте utf8 в имена переменных и функций, не вырезайте их регуляркой, спрячьте декодер, обфусцируйте имена переменных, и получите вполне труднодекодируемый код.
Вы как маленький. Код — proof of concept.
Добавьте utf8 в имена переменных и функций, не вырезайте их регуляркой, спрячьте декодер, и получите вполне труднодекодируемый код.
Тем, кто не понимает уровень опасности, немножко объясню.
Ошибка тут не в формате данных mhtml, а в mhtml:// обработчике, а его можно вызвать через <iframe src=mhtml://badlocalpath></iframe> на любой веб странице.
Вся мулька заключается в том, как к вам на диск попадет зловредное содержимое по пути badlocalpath.
В описании к уязвимости на exploit-db используется способ нахождения файла в кеше акробат ридера 9й версии — там файлы попадают в кеш по пути file:////127.0.0.1/c$/Documents and Settings/Administrator/Local Settings/Temp/A9Rxxxx.tmp, где x — hex число.
То есть шаги следующие — вы посещаете некий сайт в уютном интернетике, на котором вставлен зловредный жаваскрипт.
js код засовывает в кеш к акробату(или любым другим способом) зловредный js, который и выполняется в локальной зоне безопасности через mhtml://, имея доступы уже к FileSystemObject, Wscript.Shell.
Фактически опять подвержены опасности пользователи IE и IE-based браузеров.
Вот самый простенький энкодер жаваскрипта на жаваскрипте, с примитивной защитой от модификации тела декодера.
Воткните вместо eval например alert и получите мусор — тело переменной hash изменится, и декодировка сломается.
Дальше можно опираться на значение eval.toString() и отлавливать подмену тела функции eval, что тоже усложнит декодировку.
/*
*
*/
xorStrings : function (str1, str2)
{
var s=new String();
for(var i=0; i < str1.length; i++)
{
var c1=str1[i].charCodeAt(0);
var c2=str2[i % str2.length].charCodeAt(0);
Here is an example of the value of the cs-uri-query field for one of the IIS log entries.
surveyID=91+update+usd_ResponseDetails+set+categoryName=REPLACE(cast( --- [SKIPPED] --- ))--
ddanchev.blogspot.com/2011/03/dissecting-massive-sql-injection-attack.html
Сходи в кинотеатр, сними на нокию фильм, прогони через гугл видео редактор и получи BDRip.
Добавьте utf8 в имена переменных и функций, не вырезайте их регуляркой, спрячьте декодер, обфусцируйте имена переменных, и получите вполне труднодекодируемый код.
Добавьте utf8 в имена переменных и функций, не вырезайте их регуляркой, спрячьте декодер, и получите вполне труднодекодируемый код.
Ошибка тут не в формате данных mhtml, а в mhtml:// обработчике, а его можно вызвать через <iframe src=mhtml://badlocalpath></iframe> на любой веб странице.
Вся мулька заключается в том, как к вам на диск попадет зловредное содержимое по пути badlocalpath.
В описании к уязвимости на exploit-db используется способ нахождения файла в кеше акробат ридера 9й версии — там файлы попадают в кеш по пути file:////127.0.0.1/c$/Documents and Settings/Administrator/Local Settings/Temp/A9Rxxxx.tmp, где x — hex число.
То есть шаги следующие — вы посещаете некий сайт в уютном интернетике, на котором вставлен зловредный жаваскрипт.
js код засовывает в кеш к акробату(или любым другим способом) зловредный js, который и выполняется в локальной зоне безопасности через mhtml://, имея доступы уже к FileSystemObject, Wscript.Shell.
Фактически опять подвержены опасности пользователи IE и IE-based браузеров.
Воткните вместо eval например alert и получите мусор — тело переменной hash изменится, и декодировка сломается.
Дальше можно опираться на значение eval.toString() и отлавливать подмену тела функции eval, что тоже усложнит декодировку.