тут нет аналогии с авз, просто похоже в чем то.
Заготовленные таблетки - это очень похоже на стандартные скрипты AVZ.
Осталось пробежаться по форуму, собрать какие таблетки подходят для той или иной проблемы и сложить всё это в кучу.
Тогда пользователь будет получать от нас скрипт такого вида:
set CompID={266C72D4-62E8-11D1-AD89-00C04FD8FDFF}
set Timestamp=958905820
call Таблетка074 &:: Запустить какую-то утилиту по восстановлению диска
call Таблетка901 &:: Собрать логи какой-то утилитой и отправить на сервис
call Таблетка281 AngryService &:: Что-то сделать со службой AngryService
Этот скрипт попадает на вход другой утилите:
find /i "set"< IncomingScript.cmd > ScriptId.cmd
find/i "call Таблетка"< IncomingScript.cmd > tablets.cmd
call ScriptId.cmd
find /i "{%CompID%}-%Timestamp%" < LogList.txt && goto :Good
echo Вай, вай, вай, дарагой. Зачем чужое брал, у сэба запускал?
exit /b
:Good
call tablets
del LogList.txt
call Таблетка000 &:: Снова собрать логи и отправить на сервер
IncomingScript.cmd - лечебный скрипт
LogList.txt - файл с ID отправленных на сайт логов.
cmd достаточно гибка и имеет неплохие возможности для работы с инструментом.
Когда у меня была большая локальная сеть я столкнулся с тем, что cmd работает по разному на разных компьютерах. Во-первых интерпретатор командной строки разный в win98, xp и Win7. Во-вторых, сильно зависит от локальных настроек. К примеру, вам захотелось найти по дате в логах строки сделанные сегодня. Не тут-то было, нужно поизвращаться, чтобы получить дату в однозначном (независимым от компьютера) варианте. А определить какое число было 41 день назад ещё в 100 раз сложнее. Поэтому всё пришло к тому, что мои утилиты использовали не интерпретатор командной строки, а php. Выглядело это так, что на флэшке был какой-то универсальный батник (сейчас hta), рядом с которым была папка "exe" c php, wget, sed и т.п. Соответственно этим программам скармливались скрипты, которые выполнялись всегда одинаково не зависимо от ОС.
Это я к тому, что вопрос выбора интерпретатора остаётся открытым. Писать таблетки на cmd не так просто как кажется, одна обработка запретных символов в названиях фалов чего стоит. И для работы со строками cmd не приспособлен.
Альтернативы:
CScript
Плюсы: практически не изменился со времён Win9x. Не нужны дополнительные файлы, т.к. это встроенная возможность операционной системы. Многим знаком, как естественная альтернатива cmd. Легко построить интерфейс на основе HTA. Можно писать на двух языках на VBS и JS. Я склоняюсь в сторону JS. Знания полученные при изучении JS можно применить при разработке сайтов и программ. Раньше был только HTA под Windows, а сейчас на JS можно писать под ChromeOS, FirefoxOS и Ubuntu. Знатоков JS можно переманить в стан вирусоборцев.
Минусы: Зависит от ActiveX, нет нормальных инструментов для работы с датами.
PHP
Плюсы: Достаточно одного файла php.exe. Умеет запускать любые команды ОС и сохранить результат их работы в своих переменных. Мощные инструменты по работе со строками. Понимает любые кодировки. Идеален для генерирования текстовых файлов и отчётов. Есть возможность выносить общие функции в библиотеки.
Минусы вытекают из ОСнезависомости: Ни чего не знает о реестре и многих других вещах связанных напрямую с Windows. Для работы с xml и другими вещами кроме php.exe должны быть папка ext c дополнительными библиотеками и файл php.ini с настройками библиотек. Мало кто из вирусоборцев работает с php.
Python
Плюсы и минусы те же, что и PHP. К плюсам можно добавить простоту и красоту языка, и возможность писать скрипты на русском языке. К минусам то, что я этот вариант ещё не пробовал, поэтому могу не знать о других минусах. Более сложное по сравнению с PHP создание логов и отчётов.
AVZ
Плюсы: Знаком многим вирусоборцам. Имеет справку на русском языке. Имеет собственный редактор. Отлично знает, что-такое реестр и как удалить не удаляемый файл.
Минусы: Ориентирован в основном на работу с самим собой. Значительно меньше возможностей по сравнению с предыдущими вариантами. К примеру я не знаю, как в AVZ можно скачать файл из интернета и разобрать строку регулярными выражениями.
Хотя ни кто не мешает внедрить в утилиту все интерпретаторы сразу и писать таблетки под тот интерпритатор, который лучше всего справляется с конкретной задачей.
P.S. Предложенный мной вариант с таблетками опаснее варианта одной кнопкой. Т.к. если раньше зловреду нужно было переправлять утилиту на сайт имитирующий работу нашего сайта, но дающего ложные скрипты, то теперь достаточно подправить таблетки.
Это какой же популярностью должна обладать утилита, чтобы ею заинтересовались зловреды?
