Криптор .NET Framework 4.*

  • Автор темы Автор темы kovalyoff
  • Дата начала Дата начала

kovalyoff

One Level
29.08.2023
7
15
Написал небольшой криптор .NET приложений. Но не понимаю, стоит ли доверять вирустоталу в этом вопросе? Там 4-5 движков всегда ругаются на что-то. Причем на что - непонятно. Срабатывание какое-то общее.
1752074463451.webp


Причем неважно, криптую я файл с вредоносными сигнатурами или нет. Срабатывание есть всегда.
 
Но не понимаю, стоит ли доверять вирустоталу в этом вопросе
только статистически) Если процент срабатываний высокий, скорее всего это вирус.
Отдельно стоит обращать внимание на "именитые" бренды Kaspersky, AVG, DrWeb и далее по списку.
А формировать итоговое мнение уже нужно на основе всех данных.

Ну и самое главное, заливать своё ПО даже криптованное на VT так себе идея - они же делятся инфой с производителями антивирусов, то есть ваш алгоритм будет занесён в базу и довольно быстро будет распознаваться
 
Отдельно стоит обращать внимание на "именитые" бренды Kaspersky, AVG, DrWeb и далее по списку.
То есть, если срабатывают какие-то непонятные ребята то это можно и проигнорировать? Как, например, на скрине.


заливать своё ПО даже криптованное на VT так себе идея - они же делятся инфой с производителями антивирусов
Это-то понятно. А как еще проверить, что антивирусы не будут срабатывать на закриптованный файл?
 
То есть, если срабатывают какие-то непонятные ребята то это можно и проигнорировать? Как, например, на скрине.



Это-то понятно. А как еще проверить, что антивирусы не будут срабатывать на закриптованный файл?

Что делать вместо VirusTotal для тестирования?

Альтернативы:

Локальное тестирование:​

  • Инсталируй десяток антивирусов в изолированной VM-среде.
    • Microsoft Defender
    • Kaspersky
    • BitDefender
    • Avast
    • Dr.Web
    • ESET
  • Обнови базы, отключи сеть.
  • Смотри реакцию в реальном времени (RTS и on-demand scan).
  • Используй PE-sieve для просмотра инъекций и модификаций памяти.

Emulated VirusTotal (анонимный):​

  • InQuest Labs — можно грузить частично и анализировать.
  • Joe Sandbox (ограничено).
  • AnyRun — в интерактивной песочнице видно, что делает файл, какие вызовы, и что детектится (можно вручную обфусцировать поведение).
  • Self-hosted Cuckoo Sandbox — для продвинутых.

Что значат ложные срабатывания 4-5 AV?

Если ты не шифруешь вредоносный payload, но получаешь 4–5 срабатываний — это значит:
  • Твой криптор уже обладает подозрительными признаками:
    • Обфускация IL-кода или runtime сборка
    • Рефлексия (Assembly.Load, Invoke)
    • Сжатие, шифрование, использование byte[] и MemoryStream без явного назначения
    • Подмена EntryPoint и переинициализация AppDomain
Даже если у тебя чистый payload, сам криптор может быть классифицирован как потенциально вредоносный загрузчик (loader).
Некоторые AV (особенно Qihoo, Jiangmin, VBA32, MaxSecure) — рутинговые и выдают ложные срабатывания даже на HelloWorld.exe, если он обфусцирован. Такие можно игнорировать, если не срабатывают топовые:
Microsoft Defender
Kaspersky
BitDefender
ESET
Sophos
SentinelOne

Как добиться AV-safe уровня
  1. Изолировать stub и payload.
    • Stub — не должен содержать вредоносной логики.
    • Payload — загружается поздно, по запросу.
  2. Убрать reflection, AppDomain.Load, Assembly.Load(byte[]) в .NET.
    • Это почти всегда флагуется.
    • Вместо этого — C++ loader (или Native stub), а .NET грузить через COM/interop.
  3. Вариативность stub'а:
    • Интегрируй полиморфизм (junk-код в IL, разные методы загрузки).
    • Избегай однотипных IL-конструкций.
  4. Не использовать компрессоры типа ConfuserEx без модификаций.
    • AV давно на них тренированы.
  5. Ротация ключей, salt, и конфигурации.
    • Один и тот же криптор, даже без вирусного payload'а, начнут детектировать после пары-тройки заливов, если ты не меняешь шифрование.
VirusTotal ≠ тестовая среда. Используй локальное тестирование и песочницы.
Срабатывание 4-5 noname движков можно игнорировать только если топовые молчат.
Никогда не заливай свой stub/payload — это гарантированное палево.
Делай много stub-вариаций, не используй сырой Assembly.Load.
Протестируй свой билд в отключённой среде с Defender'ом и Kaspersky как минимум.
 

Что делать вместо VirusTotal для тестирования?

Альтернативы:

Локальное тестирование:​

  • Инсталируй десяток антивирусов в изолированной VM-среде.
    • Microsoft Defender
    • Kaspersky
    • BitDefender
    • Avast
    • Dr.Web
    • ESET
  • Обнови базы, отключи сеть.
  • Смотри реакцию в реальном времени (RTS и on-demand scan).
  • Используй PE-sieve для просмотра инъекций и модификаций памяти.

Emulated VirusTotal (анонимный):​

  • InQuest Labs — можно грузить частично и анализировать.
  • Joe Sandbox (ограничено).
  • AnyRun — в интерактивной песочнице видно, что делает файл, какие вызовы, и что детектится (можно вручную обфусцировать поведение).
  • Self-hosted Cuckoo Sandbox — для продвинутых.

Что значат ложные срабатывания 4-5 AV?

Если ты не шифруешь вредоносный payload, но получаешь 4–5 срабатываний — это значит:
  • Твой криптор уже обладает подозрительными признаками:
    • Обфускация IL-кода или runtime сборка
    • Рефлексия (Assembly.Load, Invoke)
    • Сжатие, шифрование, использование byte[] и MemoryStream без явного назначения
    • Подмена EntryPoint и переинициализация AppDomain

Некоторые AV (особенно Qihoo, Jiangmin, VBA32, MaxSecure) — рутинговые и выдают ложные срабатывания даже на HelloWorld.exe, если он обфусцирован. Такие можно игнорировать, если не срабатывают топовые:
Microsoft Defender
Kaspersky
BitDefender
ESET
Sophos
SentinelOne

Как добиться AV-safe уровня
  1. Изолировать stub и payload.
    • Stub — не должен содержать вредоносной логики.
    • Payload — загружается поздно, по запросу.
  2. Убрать reflection, AppDomain.Load, Assembly.Load(byte[]) в .NET.
    • Это почти всегда флагуется.
    • Вместо этого — C++ loader (или Native stub), а .NET грузить через COM/interop.
  3. Вариативность stub'а:
    • Интегрируй полиморфизм (junk-код в IL, разные методы загрузки).
    • Избегай однотипных IL-конструкций.
  4. Не использовать компрессоры типа ConfuserEx без модификаций.
    • AV давно на них тренированы.
  5. Ротация ключей, salt, и конфигурации.
    • Один и тот же криптор, даже без вирусного payload'а, начнут детектировать после пары-тройки заливов, если ты не меняешь шифрование.
VirusTotal ≠ тестовая среда. Используй локальное тестирование и песочницы.
Срабатывание 4-5 noname движков можно игнорировать только если топовые молчат.
Никогда не заливай свой stub/payload — это гарантированное палево.
Делай много stub-вариаций, не используй сырой Assembly.Load.
Протестируй свой билд в отключённой среде с Defender'ом и Kaspersky как минимум.
Понял, спасибо за ответ
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

Похожие темы