Blog. Just Blog

Быстрый поиск

Введите фрагмент названия статьи для поиска

Обход эвристики Avira AntiVir в JavaScript

08.01.2009 | Категория: Web-мастеру и не только | Автор: ManHunter
Последние несколько дней посетители сайта стали жаловаться, что их антивирус эвристически определяет в HTML-коде страниц сайта вредоносный код. Их объединяло одно: они все пользовались "антивирусом" (в кавычках) под гордым названием Avira AntiVir. После недолгого расследования и тестирования было выяснено, что эта недоделка ругается на скрипт добавления страницы в закладки, а конкретно на его часть, отвечающую за работу в Internet Explorer:
  1. // Internet Explorer
  2. window.external.AddFavorite(urltitle);
Не знаю что надо курить, чтобы додуматься распознавать это действие как опасное, однако факт остается фактом: абсолютно безопасный код распознается этим "антивирусом" как вредоносный. Эвристика ругается на добавление страницы в закладки официально документированными средствами! Отличный пример как НЕ надо писать программы. Чтобы заткнуть Avira достаточно в скрипте чуть-чуть изменить сигнатуру "AddFavorite", а при выполнении привести ее в первоначальный вид:
  1. // Internet Explorer
  2. eval("window.external.AddFa-vorite(url, title)".replace(/-/g,''));
Приношу извинения пользователям за доставленные неудобства. А тупым дрочерам из младших классов, которые писали этот "антивирус", могу только порекомендовать поменьше лазать по порносайтам, тогда и в закладки ничего ставиться не будет. Ну и напоследок: реально вредоносный код на HTML-страницах можно спрятать от Avira AntiVir точно таким же примитивнейшим способом. Выводы о надежности этой поделки, думаю, сделаете сами.

Просмотров: 9751 | Комментариев: 16

Поздравляю с Рождеством Христовым!

07.01.2009 | Категория: Всякая всячина | Автор: ManHunter

Поздравляю с Рождеством Христовым!

Вот наступает Рождество,
Вчера закончились морозы,
А на снегу лежали розы
И, будто бы от них занозы,
Коснулись сердца моего.
Год пролетит - минует век,
Ах, время, как оно не вечно,
Течёт рекою скоротечной,
Каким же был вчера беспечным,
А ныне новый человек.
Журчит заботами своими
Жизнь, протекая, как вода,
То радости, а то беда,
То наступают холода,
Но оттепель грядёт за ними.


Просмотров: 4648 | Комментариев: 1

Новый Год под пальмами

04.01.2009 | Категория: Жизнь в оффлайне | Автор: ManHunter

Новый Год под пальмами

Вот я и вернулся из новогодней поездки в Египет. На этот раз я летал в курортный город Хургаду. Борт отправился рано утром из аэропорта "Внуково" и уже около 12 дня местного времени меня уже встречали в аэропорту представители турагенства. Дальше будет очень много фотографий, так что кто на платном трафике будьте аккуратнее.

Читать статью целиком »
Просмотров: 5562 | Комментариев: 14

Поздравляю с Новым Годом!

27.12.2008 | Категория: Всякая всячина | Автор: ManHunter

Поздравляю с Новым Годом!

Всех гостей моего блога, знакомых и незнакомых, поздравляю с Новым 0x7D9h годом! Старый год позади, он был трудным и напряженным, многое изменилось, что-то прошло, что-то появилось. Пусть новый год принесет только положительные эмоции, пусть сбываются все ваши мечты и исполняются желания. Счастья вам, крепкого здоровья, большой и чистой любви!

А я на Новый Год свалил на неделю в теплые края, буду водить хороводы под пальмами :) Когда вернусь, то выложу подробный фотоотчет о поездке. Не скучайте!

С уважением, -
ManHunter

Просмотров: 3482 | Комментариев: 5

Запрет запуска нескольких копий программы

25.12.2008 | Категория: Образ мышления: Assembler | Автор: ManHunter
Запрет запуска нескольких копий программы бывает полезен если может возникнуть конфликт из-за занятых системных ресурсов, монопольно открытых файлов или если задачи приложения подразумевают наличие только одного его экземпляра. Проверка наличия работающей копии программы реализуется несколькими способами в зависимости от поставленной задачи.

Первый способ основан на том, что в приложении можно определить расшаренную секцию, данные из которой будут доступны для всех его запущенных экземпляров. Достаточно прописать в ней некоторую переменную и присвоить ей уникальное значение. При старте выполняется проверка, и если значение переменной равно начальному, то считается что это старт первой копии, иначе приложение является второй копией и должно завершить свою работу. Поэтому первая копия приложения сразу после запуска и проверки должна заменить значение переменной на другое.
  1. ; Расшаренная секция, общая для всех копий данного приложения
  2. section '.shared' data readable writeable shareable
  3. started  dd  1       ; Флаг первого запуска
  4.  
  5. ; Сегмент кода
  6. section '.code' code readable executable
  7.         cmp     [started],1       ; Уже запущен экземпляр программы?
  8.         jne     already_started   ; Да, на выход
  9.         xor     eax,eax
  10.         ; Префикс LOCK и команда XCHG используются для предотвращения
  11.         ; возможных конфликтов на многопроцессорных машинах
  12.         lock xchg eax,[started]   ; Сбросить флаг
  13.         ; Нормальный запуск программы 
  14.         ...
  15. already_started:
  16.         ; Выход из программы
  17.         ...
Этот способ будет работать только если приложение запускается из одной и той же папки. Если скопировать его в другую папку, то система будет считать что это совершенно другое приложение и разрешит запуск его второй копии. Впрочем, способ с расшаренной секцией вполне имеет место быть, если требуется запретить именно запуск второй копии приложения из одной и той же папки. Для глобального запрета этот способ не подходит.

Читать статью целиком »
Просмотров: 16190 | Комментариев: 7

01 ... 408 409 410 411 412 413 414 ... 422
Наверх
Powered by PCL's Speckled Band Engine 0.2 RC3
© ManHunter / PCL, 2008-2025
При использовании материалов ссылка на сайт обязательна
Время генерации: 0.09 сек. / MySQL: 2 (0.0229 сек.) / Память: 4.5 Mb
Наверх