(c) Павел Беляев

При использовании статей с сайта добавляйте в копирайт © Блог Павла Беляева http://pavelb.ru

воскресенье, 16 января 2011 г.

блокиратор 89153377929 МТС 400 руб

Сегодня на работе столкнулся с вирусом-блокировщиком, который на черном экране выводит всякую дребедень и просит отправить на номер МТС 89153377929 400 рублей в любом терминале, коды разблокировки не подходили, с другой винды вирусов не было (сканировал авастом, доктор вебом, касперским)

Winlocker, это же такая же программа, без всяких вредоносных функций, эта программа заменяет стандартный explorer (проводник - благодаря ему мы видим значки на рабочем столе и меню пуск)

Разработчик этого вируса по видимому не только с головой не дружит но еще и с русским языком, т.к. слово оплата там начиналось с буквы А (.... после аплаты вы получите код).

Очень интересно каким образом после оплаты я должен буду получить код? Позвонить ему на телефон и попросить код или он вычислит плательщика при помощи экстрасенсорных способностей и пришлет почтой код разблокировки?




В общем чтобы удалить этот и подобные заразы делать надо следующее

1. Скачиваем диск hirens boot cd
2. Загружаемся в mini windows xp
3. Запускаем там winpe registry editor
4. Указываем путь до папки с нашей виндой заблокированной

Теперь мы имеем доступ к реестру нашей операционной системы
1. Заходим в раздел HKEY_LOCAL_Machine/software/windowsnt/currentversion/winlogon/
2. в ключе shell смотрим что написано, запоминаем, меняем значение на explorer.exe и перезагружаемся
3. Файл, который был прописан до этого в ключе shell желательно удалить



Каким образом попадает именно эта зараза на компьютер?
Вы просматриваете сайты в вашем любимом Internet Explorer, вылазит реклама в виде бегающего флеш-банера на переднем плане, вы пытаетесь его закрыть нажав крестик, а на этот крестик в банере поставлено хитроумное действие. Загружается файл и сразу выполняется (скорей всего баннер тыкает по ссылке и сам нажимает кнопку ВЫПОЛНИТЬ), вирус хранится во временных файлах ИЕ. После выполнения вирус прописывает себя в реестре вместо проводника и всё.

В качестве идеи для разработчиков
Очень интересная идея - создать разблокировщик, который будет загрузочным диском с доступом к реестру системы, будет возвращать состояние ключа реестра на место и удалять этот файл зловредный.

четверг, 6 января 2011 г.

Поиск по сайту PHP

 Сегодня я покажу вам пример того, как можно сделать поиск по сайту

Если вы делаете что то вроде

SELECT * FROM `products` WHERE  `name` like '%холодильник%';

то вроде как работает, но не совсем корректно

Например мы захотели найти Холодильник STINOL

а у нас товар забит в базе как Холодильник однокамерный STINOL то ни чего не найдет

столкнувшись с этой проблемой, я написал такую функцию


function searchproc ($str)
{
$tmp=""; 
$str=trim($str);
$result = preg_split("/[\s]+/", $str);
$i=0;
while (!empty($result[$i]))
    {
    if ($i>0) {$tmp.= " AND ";}
    $tmp.="( `name` LIKE '%".$result[$i]."%')";
    $i++;
    }
return $tmp;
}



функция делит наш запрос по пробелам и выдает в результате что то вроде
(`name` like '%холодильник%') AND (`name` like '%STINOL%') 
теперь нам остается подставить в строку запроса searchproc ($searchstring) и у нас будет почти хороший поисковик по товарам в каталоге




PS: Данная функция может служить примером, но не стоит её слепо копировать и использовать в своих скриптах, если вписать в строку поиска что то вроде 
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 
то у нас получается достаточно длинный запрос, что может вызвать ошибку, нужно или обрезать входные данные или делать ограничение на количество проходов цикла в функции