«Лаборатория Касперского», российский разработчик систем защиты от
вирусов, хакерских атак и спама, сообщает о регистрации первой вредоносной программы, поражающей систему «1С:Предприятие».
Данный вирус, получивший название Virus.1C.Tanga.a, был создан в исследовательских целях. Создатель программы сам направил ее экспертам «Лаборатории Касперского» для изучения. Автор Tanga минимизировал время анализа кода и ущерб от его возможного распространения лишил вирускаких-либо деструктивных функций и снабдил развернутым описанием на русском языке.
Tanga распространяется в системе «1С:Предприятие7.7» посредством заражения пользовательских файлов, отвечающих за внешние отчеты и имеющих расширение .ERT. Одним из встроенных в такой файл-отчет макромодулей и является вредоносная программа. Метод размещения Tanga в инфицированных файлах во многом соответствует макро-вирусам, заражающим документы и таблицы пакета программ Microsoft Office. Зловредные модули располагаются в специальном блоке данных и активизируются при открытии файла-отчета. Подобно макросам
Microsoft Office, они могут иметь автоматические именные идентификаторы, срабатывающие при различных действиях с файлом, например, при его открытии.
Для своего распространения Tanga использует язык
модулей «1С». Он позволяет вирусу обращаться к другим дисковым файлам,
включая и файлы-отчеты, подобные зараженным, и таким образом размножаться. Данный вредоносный код является первой полноценной программой-инфектором, созданной для платформы «1С:Предприятие7.7» и записывающей свой код в служебные файлы системы формата .ERT.
Для работы вирус использует специальную библиотеку Compound.dll. В случае, если данный файл отсутствует в системе, вирус выполняться не будет. Механизм действия Tanga достаточно прост: при запуске зараженного ert-файла вирус проверяет наличие в системе файла Compound.dll, затем последовательно сканирует все каталоги текущего диска в поиске файлов с расширением .ERT. В найденных файлах проверяется наличие строки Tango.ERT.2622. Если она найдена, то файл уже был заражен ранее, и повторной записи зловредного кода
не происходит. В противном случае вирус создает в файле модуль с именем «1C Programm text», в который записывает свой код.