Создание поведенческого блокиратора
В основе лежит поведенческий блокиратор всех фунциклирующих процессов. От этого момента задача делится на 2:
1) регистрация действия процесса
2) анализ поведения
Поиск по п.1 привел к необходимости перехвата вызовов API путем загрузки dll в удаленный поток целевого процесса. В общем, частично задача решена, только что в SYSTEM не могу пока подгружать…и жесткие тормоза и т.п.))) Т.е. в общем случае это – что-то наподобе filemon,regmon, API Monitor.
Поиск по п.2 привел к фэйлу. Сама идея как бы и понятна и непонятна. Я не нашел ни 1 методического описания построения цепочек подозрительных действий и т.д. . Только что на некоторых сайтах есть обобщенные описания действий. Кроме того, существует 1000 и 1 способ сделать 1 и тоже.
Вопросы:
1)Насчет п2. Имеет ли смысл разрабатывать эту тему? Че и как делать – не очень понятно. Хотелось бы развернутого ответа)
2)Если п1==true, правильно ли выбран метод слежения? Я не использую хуки, так как они не позволяют перехватить взаимодействия с файлами.
Скорее всего, я что-то упустил, но все же жду от вас понимания, сочувствия, комментариев по пунктам, вопросам. Заранее СПС.
Подумайю составь список.
Например:
1. Запись в автозгрузку
2. Запись в реестр.
3. Запуск одним приложением другого.
начни с этого. потом попытайся продумать в каких случаях эти действия - нормальны. Например, запущен Windows Installer.. ну и т.д.
можно регистрировать только запуск процесса, не внедряя в него свою dll. а дальше уже статический анализ исполняемого файла. анализировать стандартные штуки, например, если идет вызов функции копирования файла себя в system32 - это не гут. перед этим он должен получить свое местоположение, либо оно должно быть зашито в программе. так, например, анализ Nod32 работал. давал вызывать GetCommandLine, но не давал копировать файл, если строка пути к нему не изменялась. еще пример - запись в ветку AppInit_DLLs, тоже подозрительно. стоит выделить ключевые места системы, куда нормальным программам доступ не нужен и добавить правила для них.
Откройте для себя ETW
Вы можете кратце описать использование и полноту инфы, которую можно извлечь этой трассировкой? И обходится ли эта штука