Что нового

Борьба с антивирусом

musicstashall

Знающий
Сообщения
322
Репутация
7
Всем привет.

Сделал на AutoIt установщик, всё замечательно, но как оказалось, антивирус его считает страшным трояном и удаляет без согласования. Что делать?? Антивирус стандартный виндовый, на других не эксперементировал.
Онлайн проверка дает такое:

Вначале файлы компилировал в EXE инсталлятора как есть и думал, что антивирус видит их по названиям, потом я стал переименовывать компилируемые файлы в коды CLSID и без расширения (может и глупость). В результате, на какое-то время антивирус удалось обмануть, но потом снова началась прежняя война. Что посоветуете?

Для компиляции спользую функцию
Код:
FileInstall()
 

Prog

Продвинутый
Сообщения
593
Репутация
73
musicstashall [?]
Сделал на AutoIt установщик, всё замечательно, но как оказалось, антивирус его считает страшным трояном
Инсталлятор устанавливает майнер на комп? Тогда не удивительно.
 
Автор
M

musicstashall

Знающий
Сообщения
322
Репутация
7
Да никакой не майнер!! Всё чисто, никаких вирусов. Проверьте сами у себя, скомпилируйте exe и dll в свой скрипт и сделайте анализ.
 

InnI

AutoIT Гуру
Сообщения
4,950
Репутация
1,445
musicstashall [?]
Всё чисто, никаких вирусов.
Что же вы тогда переживаете? Наплюйте.
Или переписывайте на другом ЯП или сообщайте в службу поддержки антивируса.
Обсуждалось не раз и здесь и на официальном форуме.
 

joiner

Модератор
Локальный модератор
Сообщения
3,557
Репутация
628
смотря какое dll и что там еще за файлы в инсталяторе.
в своем проекте я тоже использую fileinstall, но каспер не ругается. тоже есть dll и экзешники в основном файле программы
одно время аваст ругался, так я писал разрабам и предоставил для анализа файлы программы. они поставили её в исключения.
Сайт ВирусТотал не показатель, используются консольные версии антивирей, которые часто работают в параноидальном режиме
в моей проге библиотека 7z.dll и экзешники, которые написаны мной.
ниже скрин проверки моей программы
 

Вложения

  • av.jpg
    av.jpg
    39.3 КБ · Просмотры: 15
Автор
M

musicstashall

Знающий
Сообщения
322
Репутация
7
Вот скрипт, который открывает окно выбора иконки и передает сообщения в главный скрипт:

Код:
#NoTrayIcon
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Outfile=x32\chooseico.exe
#AutoIt3Wrapper_Outfile_x64=x64\chooseico.exe
#AutoIt3Wrapper_Compression=4
#AutoIt3Wrapper_UseX64=n
#AutoIt3Wrapper_Res_Description=Host Process Message Open Icon
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****

#include <WinAPI.au3>
#include <GUIConstantsEx.au3>
#include <WinAPISys.au3>
#include <WinAPIFiles.au3>
#include <IconChooser.au3>
#include <Array.au3>

$MESSAGE = _WinAPI_RegisterWindowMessage("MESSAGE")
Local $hWND = 0
Local $wParam, $lParam, $str, $int, $StructFile, $Title = 'BlackWindowManager'
If IsArray($CmdLine) Then
	If $CmdLine[0] > 0 Then
		Local $MapFile = _WinAPI_OpenFileMapping('DataExchangeFile')
		If Not $MapFile Then
			Local $MapFile = _WinAPI_CreateFileMapping(-1, 4096, 'DataExchangeFile')
		EndIf
		Local $PosFile = _WinAPI_MapViewOfFile($MapFile)
		$StructFile = DllStructCreate('wchar string[512];int id[10]', $PosFile)
		$str = StringStripWS(DllStructGetData($StructFile, 'string'), 3)
		$int = DllStructGetData($StructFile, 'id')
		DllStructSetData($StructFile, 1, '')
		DllStructSetData($StructFile, 2, 0)
		If $Str = '' Then
			Local $Ico[2] = ['shell32.dll', 23]
		Else
			$Str = StringSplit($str, ',')
			If $Str[0] > 1 Then
				Local $Ico[2] = [$Str[1], $Str[$Str[0]]]
			ElseIf $Str[0] = 1 Then
				Local $Ico[2] = [$Str[1], 0]
			EndIf
		EndIf
		If $CmdLine[0] > 1 Then $hWND = $CmdLine[2]
	EndIf
EndIf

If WinExists($Title) And $CmdLine[0] > 0 Then
	WinSetState($Title, '', @SW_DISABLE)
	Local $Data = _IconChooserDialog($Ico[0], $Ico[1], 32, -1, WinGetHandle($Title))
	WinSetState($Title, '', @SW_ENABLE)
	WinActivate($Title)
Else
	;If @OSArch = 'x64' Then _WinAPI_Wow64EnableWow64FsRedirection(False)
	Local $Data = _IconChooserDialog('shell32.dll', 23, 32, -1)
EndIf
If IsArray($Data) And $CmdLine[0] > 0 Then
	DllStructSetData($StructFile, 'string', $Data[0] & ',' & $Data[1])
	DllStructSetData($StructFile, 'id', -(1 + $Data[1]))
	$wParam = StringToBinary($CmdLine[1])
	$lParam = -(1 + $Data[1])
	_WinAPI_PostMessage($hWND, $MESSAGE, $wParam, $lParam)
ElseIf IsArray($Data) And $CmdLine[0] = 0 Then
	ClipPut($Data[0] & ',' & $Data[1])
EndIf


Скрипт использует библиотеку IconChooser.au3, можете найти ее здесь, на этом форуме. Скомпилируйте и проведите анализ.У меня вот такое получилось:
d32f169eb6940d4a6338482d7af1ad53.png
 

Prog

Продвинутый
Сообщения
593
Репутация
73
Это малоизвестные антивирусы и не думаю что многие ими пользуются. Можно не обращать внимание.
 

joiner

Модератор
Локальный модератор
Сообщения
3,557
Репутация
628
тут такая мысль возникла.
Враппер добавляет файлы и описание в уже созданную программу, как работает компиляция, если использовать не враппер, а директивы компилятора - #pragma?
возможно, действие одно и то же, но все-таки.
во всяком случае, сам автоит уже стоит в черных списках у некоторых антивирей.
антивирей куча, часть из них написана неизвестно кем и с какими мотивами
 
Автор
M

musicstashall

Знающий
Сообщения
322
Репутация
7
Тут такая статья, кароче... прочитайте: https://habrahabr.ru/post/124054/

Смысл такой: если пожарного мотивировать деньгами, то скоро он станет поджигателем...
 

joiner

Модератор
Локальный модератор
Сообщения
3,557
Репутация
628
musicstashall
вот видишь как оно там у них в закулисье, у писателей антивирей. ты пишешь бесплатный продукт, значит забей. если платный, то тогда может и стоить порвать "ж" для "обеления" своего продукта. но, как ты понял по статье, успеха это может совсем не принести.
повторюсь, что у меня был опыт общения с авастом. ответили в течении нескольких часов. я авастом не пользуюсь и вообще антивирями, но их службу поддержки я зауважал.
пробовал писать остальным, но сложности перевода иностранных сайтов и недоступность техподдержки отбили охоту. я плюнул на это дело.
мой проект работает, им пользуются уже более двух лет много народу в инете. мне этого достаточно
 
Верх