ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Antivirus Detector v0.1 [Beta] (Delphi Module)
  #1  
Старый 17.02.2010, 16:19
Fliplab
Участник форума
Регистрация: 29.07.2008
Сообщений: 128
Провел на форуме:
225836

Репутация: 34
Отправить сообщение для Fliplab с помощью ICQ
Talking Antivirus Detector v0.1 [Beta] (Delphi Module)

Код:
unit antivir_detect;
{
  Antivirus Detector v0.1 [Beta]
  Author: FlipLab Software© 2006-2009
  E-mail: fliplab@gmail.com, fliplab@ya.ru
  URL: http://www.fls.com/
  About: Вспомогательный модуль для обнаружения установленных
    антивирусных программ, а также фаерволов. В текщей версии
    поддерживаются:
    + ESET SysInspector
    + ESET Nod32 Antivirus
    + ESET Personal Firewall
    + Trend Micro Internet Security
    + Kaspersky Internet Security 2008 & WorkStation
    + Agnitum Outpost Firewall
    + Agnitum Anti-Spyware
    + Agnitum Host Protection
    + Malwarebytes' Anti-Malware
    + Zillya! Антивирус
}

interface

uses
  Windows;

function IsEsetAntivir:     Boolean;
function IsEsetSysInsp:     Boolean;
function IsEsetFire:        Boolean;
function IsTrendMicro:      Boolean;
function IsKIS2008:         Boolean;
function IsOutpostFire:     Boolean;
function IsOutpostAntiSpy:  Boolean;
function IsOutpostHostProt: Boolean;
function IsAntiMalware:     Boolean;
function IsZillya:          Boolean;

implementation

function GetSys: String;
var
  Gsys: array[0..MAX_PATH] of Char;
begin
  GetSystemDirectory(Gsys, MAX_PATH);
  Result := Gsys;
  if Length(Result) > 0 then
    if Result[Length(Result)] <> '\' then
      Result := Result + '\';
end;

function IsRing0(Device: String): Boolean;
var
  hFile: THandle;
begin
  Result := False;
  hFile := CreateFileA(PChar(Device), GENERIC_READ or GENERIC_WRITE, 0, nil, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
  if (hFile <> INVALID_HANDLE_VALUE) then
    begin
      CloseHandle(hFile);
      Result := True;
    end;
end;

function FileExists(const FileName: String): Boolean;
var
  Code: Integer;
begin
  Code := GetFileAttributes(PChar(FileName));
  Result := (Code <> -1) and (FILE_ATTRIBUTE_DIRECTORY and Code = 0);
end;

// ESET SysInspector
function IsEsetSysInsp: Boolean;
begin
  if IsRing0('\\.\ESIASDRV') then
    Result := True
  else
    Result := False;
end;

// ESET Nod32 Antivirus
function IsEsetAntivir: Boolean;
begin
  if (FileExists(GetSys + 'drivers\ehdrv.sys')) or (FileExists(GetSys + 'drivers\eamon.sys')) then
    Result := True
  else
    Result := False;
end;

// ESET Personal Firewall
function IsEsetFire: Boolean;
begin
  if (IsRing0('\\.\EPFWNDIS')) or (IsRing0('\\.\EPFW')) or (FileExists(GetSys + 'drivers\epfwtdi.sys')) then
    Result := True
  else
    Result := False;
end;

// Trend Micro Internet Security
function IsTrendMicro: Boolean;
begin
  if IsRing0('\\.\TMACTMON') then
    Result := True
  else
    Result := False;
end;

// Kaspersky Internet Security 2008 & WorkStation
function IsKIS2008: Boolean;
begin
  if IsRing0('\\.\KLIM5') then
    Result := True
  else
    Result := False;
end;

// Agnitum Outpost Firewall
function IsOutpostFire: Boolean;
begin
  if (FileExists(GetSys + 'drivers\afwcore.sys')) or (FileExists(GetSys + 'drivers\afw.sys')) then
    Result := True
  else
    Result := False;
end;

// Agnitum Anti-Spyware
function IsOutpostAntiSpy: Boolean;
begin
  if FileExists(GetSys + 'filt\aswfilt.dll') then
    Result := True
  else
    Result := False;
end;

// Agnitum Host Protection
function IsOutpostHostProt: Boolean;
begin
  if FileExists(GetSys + 'drivers\sandbox.sys') then
    Result := True
  else
    Result := False;
end;

// Malwarebytes' Anti-Malware
function IsAntiMalware: Boolean;
begin
  if (FileExists(GetSys + 'drivers\mbam.sys')) or (FileExists(GetSys + 'drivers\mbamswissarmy.sys')) then
    Result := True
  else
    Result := False;
end;

//Zillya! Антивирус
function IsZillya: Boolean;
begin
  if FileExists(GetSys + 'drivers\ZFMSYS.sys') then
    Result := True
  else
    Result := False;
end;

end.
http://slil.ru/28697335 - Скачать Antivirus Detector v0.1 [Beta] (Delphi Module)

Написал на досуге, думаю кому-нибудь пригодится. С удовольствием приму помощь в работе над данным модулем.

Последний раз редактировалось Fliplab; 24.02.2010 в 14:42.. Причина: Смена версии
 
Ответить с цитированием

  #2  
Старый 17.02.2010, 22:04
Gar|k
Постоянный
Регистрация: 20.03.2009
Сообщений: 564
Провел на форуме:
991929

Репутация: 395


По умолчанию

Как бы не люблю delphi... тут у тебя не оправданный вызов функции GetSys. Объяви ее как глобальную переменную и перед использованием твоего кода инициализируй. FileExists - очень странная функция...
 
Ответить с цитированием

  #3  
Старый 18.02.2010, 11:27
Fliplab
Участник форума
Регистрация: 29.07.2008
Сообщений: 128
Провел на форуме:
225836

Репутация: 34
Отправить сообщение для Fliplab с помощью ICQ
По умолчанию

Ок,а fileexists Просто вырезал из sysutils
 
Ответить с цитированием

  #4  
Старый 18.02.2010, 13:12
rankor777
Познающий
Регистрация: 11.01.2008
Сообщений: 42
Провел на форуме:
95213

Репутация: 49
Отправить сообщение для rankor777 с помощью ICQ
По умолчанию

Спасибо, полезный сорец. Надо будет на С переписать.
P.S. Для таких вещей лучше все функции самому импортировать из длл, благо, их немного
 
Ответить с цитированием

  #5  
Старый 18.02.2010, 13:16
Fliplab
Участник форума
Регистрация: 29.07.2008
Сообщений: 128
Провел на форуме:
225836

Репутация: 34
Отправить сообщение для Fliplab с помощью ICQ
По умолчанию

Не спорю. Если есть желание перепишите на асм. Сорец пофиксю в ближайшее время и добавлю новые авири. Если не влом,киньте ссылки на авири которые знаете
 
Ответить с цитированием

  #6  
Старый 18.02.2010, 13:18
sn0w
Статус пользователя:
Регистрация: 26.07.2005
Сообщений: 568
Провел на форуме:
1290766

Репутация: 1236


По умолчанию

добавь лучше не проверку сервисов а если найден процесс то хеш его ехе, вдруг так, фейк крутится

а вот список с вирустотала

a-squared
AhnLab-V3
AntiVir
Antiy-AVL
Authentium
Avast
AVG
BitDefender
CAT-QuickHeal
DNAScan
ClamAV
Comodo
DrWeb
eSafe
eTrust-Vet
F-Prot
F-Secure
Fortinet
GData
Ikarus
Jiangmin
K7AntiVirus
Kaspersky
McAfee
McAfee+Artemis
McAfee-GW-Edition
Microsoft
NOD32
Norman
nProtect
Panda
PCTools
Prevx
Rising
Sophos
Sunbelt
Symantec
TheHacker
TrendMicro
VBA32
ViRobot
VirusBuster
__________________


snow white world wide

Последний раз редактировалось sn0w; 18.02.2010 в 13:24..
 
Ответить с цитированием

  #7  
Старый 18.02.2010, 13:21
Fliplab
Участник форума
Регистрация: 29.07.2008
Сообщений: 128
Провел на форуме:
225836

Репутация: 34
Отправить сообщение для Fliplab с помощью ICQ
По умолчанию

Ок.
 
Ответить с цитированием

  #8  
Старый 18.02.2010, 13:39
rankor777
Познающий
Регистрация: 11.01.2008
Сообщений: 42
Провел на форуме:
95213

Репутация: 49
Отправить сообщение для rankor777 с помощью ICQ
По умолчанию

Хэш будет различен в разных версиях антивируса.
 
Ответить с цитированием

  #9  
Старый 18.02.2010, 13:45
Fliplab
Участник форума
Регистрация: 29.07.2008
Сообщений: 128
Провел на форуме:
225836

Репутация: 34
Отправить сообщение для Fliplab с помощью ICQ
По умолчанию

Вот я как раз тоже зашел об этом написатьхотя в принципе таким образом можно детектировать становленную версию,но тогда нужен помощник,который бы за меня собирал хеши
 
Ответить с цитированием

  #10  
Старый 18.02.2010, 13:51
Fliplab
Участник форума
Регистрация: 29.07.2008
Сообщений: 128
Провел на форуме:
225836

Репутация: 34
Отправить сообщение для Fliplab с помощью ICQ
По умолчанию

Да и фейк процесса также можно впринципе запустить при особом желании
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Литература Delphi Sams С/С++, C#, Delphi, .NET, Asm 2 19.03.2010 19:46
Books PSalm69 Избранное 248 27.10.2009 04:52
ArchLinux + xfce4 - иксы стартуют только от рута login999 *nix 5 10.10.2009 14:22
народ помогите с апачем XopoIII Администрирование 5 28.07.2009 10:18
Profense SDK ZUNAMI С/С++, C#, Delphi, .NET, Asm 0 16.05.2009 22:19



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ