yandex

Отключение кеширования в Drupal 8

Играюсь с новой (восьмой) версией фреймворка Drupal. С определенной долей удачности удалось смигрировать из Drupal 7, но сейчас руководство, как отключить принудительное кеширование. Отключение будет полезным при активной работе/разработке с модулями или темами оформления сайта. В административной панели Drupal есть некоторые настройки оптимизации и они выглядят вот так: Даже при таких настройках кеширование присутствует и…

Перевод настроек Zend Opcache

Перевод страницы документации Zend Opcache по параметрам. opcache.enable (значение по умолчанию “1”) Включение/выключение OPcache. В выключенном состоянии код не оптимизируется и не кешируется. opcache.enable_cli (значение по умолчанию “0”) Включение OPcache для CLI-версии PHP. Наилучшим образом подходит для тестирование и отладки. opcache.memory_consumption (значение по умолчанию “64”) Размер используемой памяти для хранения  прекомпилированного PHP-кода. Размер указывается в…

Использование CKEditor 4.x в Drupal 7.x

На официальном сайте Drupal.org в разделе поддержки и подразделе “Настройки после установки” нашел маленький хак для модуля WYSIWYG, который позволяет подключать визуальные редакторы текста. По умолчанию этот модуль поддерживает старую ветку редактора CKEditor, тогда как на официальном сайте разработчиков http://ckeditor.com уже вовсю предлагается 4-я ветка. Среди различных вариантов мне понравился тот, что предложил пользователь sakseiv:…

Сезонный мандраж в выборе очередной платформы для блога

В предверии выхода Drupal 8 (ну, он ж скоро выйдет )) У меня начался приступ оптимизации того, в чем я веду свои публикации в интернете. Если посмотреть приблизительную хронологию, то получится что-то типа Joostina -> Joomla 1.5.x -> … -> Drupal 6 -> Drupal 7 До момента перехода на Drupal все мои перемещения с движка…

Уязвимость Joomla с редактором JCE

В плагине редакторе JCE версии ниже 2.0.11 была обнаружена уязвимость и имеет место быть большая череда взломов с последующим внедрением вредоносного кода в js-файлы.Тот случай, который был виден мной, состоял из следующего кода:document.write(”);Можно попробовать выполнить следующую команду в корне директории сайта, однако она несколько грубоватаяfind ./ -type f -name “*.js” -exec perl -pi -e ‘s/docume.*\)\;//g”’…

Удаление кода

Не боимся различных спец.символов. <?php eval(“\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’jVNtT9tADP4+af8hQxNtBW0 … WqZ03tXtv1XthvHnT853nP6Udw5O+8376F1Vr+Se/qlsnaHrF+/AQ==’\x29\x29\x29\x3B”); ?> Делаем резервную копию изменяемых файлов и запускаем команду find ./ -type f -name “*.php” -exec perl -pi -e ‘s/\<\?php\ eval.*\”\)\;\ \?\>//g”’ ‘{}’ \;

Удаление кода eval(base64_decode(“DQplcnJv….

Не буду публиковать тела вредоносного кода целиком, дабы поисковики не подумали чего плохого =) <?php           eval(base64_decode(“DQplcnJv … DQp9DQp9”)); Не забываем делать резервную копию директории сайта перед выполнением нижеприведенной команды. find ./ -type f -name “*.php” -exec perl -pi -e ‘s/eval\(base64_decode\(\”DQplcn.*9DQp9\”\)\)\;//g”’ ‘{}’ \;

Вирусы на сайте #3

Продолжаем бесконечную историю. Сегодня день начался с того, что блог перестал открываться по причине того, что хостер убрал InnoDB из поддерживаемых движков сервера баз данных MySQL. Пришлось слить дамп, выполнить команду sed ‘s/InnoDB/MyISAM/g’ old.sql > new.sql и залить обратно =) Сегодня наткнулся на такую прелесть: <?php $md5 = “abe69649a7dbde93d328df6049b55aea”; $wp_salt = array(‘(‘,’t’,’v’,’d’,”i”,”o”,”;”,”b”,’4′,’n’,”a”,”z”,’)’,”c”,”f”,”6″,”r”,”g”,”l”,”e”,”$”,’_’,’s’); $wp_add_filter = create_function(‘$’.’v’,$wp_salt[19].$wp_salt[2].$…

Вирусы на сайте. Продолжение. Новый паттерн

Найден новый паттерн. Заражаются все .js-файлы try{q=document.createElement(“d”+”i”+”v”);q.appendChild(q+””);}catch(qw){h=-012/5;}try{prototype;}catch(brebr){st=String;zz=’al’;zz=’zv’.substr(123-122)+zz;ss=[];f=’fr’+’om’+’Ch’;f+=’arC’;f+=’ode’;w=this;e=w[f[“substr”](11)+zz];n=”19$50$57.5$ <часть кода убрана> 9.5$19$19.5$28.5″[((e)?”s”:””)+”p”+”lit”](“a$”[((e)?”su”:””)+”bstr”](1));for(i=6-2-1-2-1;i-681!=0;i++){j=i;if(st)ss=ss+st.fromCharCode(-1*h*(1+1*n[j]));}q=ss;e(q);} Выкусывается командой: find ./ -type f -name “*.js” -exec perl -pi -e ‘s/try\{q=documen.*q=ss;e\(q\)//g”’ ‘{}’ \; Не забываем перед операцией делать резервную копию директории/сайта.

Вирусы на сайте. Поиск и удаление кода.

Тема появления вредоносного кода на страницах сайта очень популярная. Хотел в заголовке добавить “Часть 1”, но потом решил сделать в виде бесконечной истории =) Как уже все должно быть известно, нередко (я бы даже сказал, в большинстве случаев) пользователи сами становятся носителями инфекции (в ботнет-среде таких называют “зомби”). И внедрение кода может происходить следующим способом.…