ildasm / ilasm - ложное срабатывание Symantec
У меня возникла проблема с разборкой и повторной сборкой исполняемого файла.NET, после которого он выдает ложное срабатывание.
Ошибка, которую я получаю конкретно:
Heur.AdvML.B
На данный момент я больше не редактирую asm до его повторной компиляции. Я буквально декомпилирую его и перекомпилирую, запускаю и получаю сообщение об ошибке. Я знаю, что могу попытаться связаться с сетевым администратором, чтобы удалить папку из списка наблюдения, а также попытаться связаться с Symantec.
Что было бы идеально, если бы кто-то мог помочь мне определить, почему именно это происходит.
Вещи, которые я пробовал:
Полностью удалите все отладочные ссылки из asm. Установите System.Diagnostics.DebuggableAttribute/DebuggingModes с 01 00 02 00 00 00 00, который должен быть декомпилированным индикатором, оптимизированным для выпуска, и перекомпилировать известный рабочий exe, не касаясь его.
Что вызывает этот ложный положительный результат, если оригинал exe
чистый. Нужно ли подписывать exe
? Действительно смущен любая помощь будет оценена.
1 ответ
У меня просто была такая же проблема. При перекомпиляции с помощью ilasm.exe вам нужно передать файл.res, который генерируется ildasm.exe во время декомпиляции. Просто добавьте следующий параметр в аргументы ilasm:
/RESOURCE=file.res