Я искал какое-то время, но я не нашел подходящего ответа на этот вопрос. Я заметил, что мой антивирус начал обнаруживать мое приложение в качестве трояна. Мой антивирус - это Kaspersky 2013, и это тип обнаруженного трояна. http://www.securelist.com/en/descriptions/HEUR:Trojan.Win32.Generic
Мое приложение выполняет только 3 вещи:
-
проверьте, подключен ли ключ ключа к компьютеру.
-
Расшифровывает dll (то есть библиотеку классов wpf с пользовательской точкой входа) с ключом ключа
-
Запускает dll через пользовательскую точку ввода.
Проблема в том, что аналогичный код работает в аналогичном приложении, но в этом случае мой антивирус обнаруживает его как трояна. Я заметил, что часть кода, которая имеет проблему, такова:
public static void ExecuteAssembly(byte[] Bytes)
{
Assembly a = Assembly.Load(Bytes);
foreach (Type type in a.GetTypes())
{
try
{
MethodInfo main = type.GetMethod("Main");
if (main != null)
main.Invoke(type, new object[] { });
}
catch { }
}
}
Что я могу сделать, чтобы избежать этой проблемы? Я не занимаюсь трояном, и я не могу избежать использования этой части кода для запуска моей dll. Поэтому я не думаю, что код является проблемой. Спасибо заранее.
Маттиа
ИЗМЕНИТЬ:
Я загрузил файл на сайт, который мне сказал Егор. Это результат. https://www.virustotal.com/en/file/7ee30172ffda51f4b99700d10df2816403cbdc8f17bfe90f7deef81a88639da3/analysis/1369058630/
Какой совет вы можете мне дать? Чтобы отправить файл как ложный или какой-то другой, как изменение кода? Я новичок в таких проблемах, поэтому не знаю, как действовать. Еще раз спасибо!