2015_лекции / Лекция №5_2015
.pdfРеестр
Куст реестра |
Имена файлов |
|
|
HKEY_LOCAL_MACHINE\SAM |
Sam и Sam.log |
|
|
HKEY_LOCAL_MACHINE\SECURITY |
Security и Security.log |
|
|
HKEY_LOCAL_MACHINE\SOFTWARE |
Software и Software.log |
|
|
HKEY_LOCAL_MACHINE\SYSTEM |
System и System.log |
|
|
HKEY_CURRENT_CONFIG |
System и System.log |
|
|
HKEY_CURRENT_USER |
Ntuser.dat и Ntuser.dat.log |
|
|
HKEY_USERS\.DEFAULT |
Default и Default.log |
|
|
Реестр
Основные функции работы с реестром
RegOpenKeyEx открывает реестр для записи и чтения.(хотя есть функции, которые дают возможность работать с реестром, не открывая его, но большая часть вредоносных программ используют именно функцию RegOpenKeyEx)
RegSetValueEx добавляет новое значение в реестр.
RegGetValue возвращает значение записи в реестре по ключу.
.reg файлы
Реестр
Работа с сетью
WinSock API
интерфейс ПО для реализации приложений в сети на основе протокола TCP/IP.
основан на API модели сокетов Беркли
ws2_32.dll
WSAStartup – инициализация системы сокетов
Windows
WinINet API
высоко уровневый интерфейс работы с протоколами HTTP, FTP на уровне приложений.
Wininet.dll
Component Object Model (COM) API
Работа с сетью
WinSock API
Socket (1) |
Создает сокет |
bind (2) (серверная часть) |
связывает сокет с определенным портом, вызывается перед |
|
вызовом функции accept |
|
|
listen (3) |
указывает, что сокет будет слушать входящие подключения. |
|
|
accept (4) |
открывает соединение с удаленным сокетом и разрешает |
|
подключение к нему. |
|
|
connect (2) (клиентская часть) |
открывает соединение к удаленному сокету, удаленный сокет |
|
должен ожидать подключения. |
|
|
recv |
получает данные от удаленного сокета |
|
|
send |
отправляет данные удаленному сокету. |
|
|
Работа с сетью
WinSock API |
WinINet API |
COM interface |
WSAStartup |
InternetOpen |
URLDownloadToFile |
|
|
|
getaddrinfo |
InternetConnect |
CoInitialize |
|
|
|
socket |
InternetOpenURL |
CoCreateInstance |
|
|
|
connect |
InternetReadFile |
Navigate |
|
|
|
send |
InternetWriteFile |
|
recv |
HTTPOpenRequest |
|
|
|
|
WSAGetLastError |
HTTPQueryInfo |
|
HTTPSendRequest |
|
|
|
|
|
Отслеживание запущенного
ВрПО
Динамически подключаемые библиотеки
Службы
Процессы
Потоки
Мьютексы
Отслеживание запущенного
ВрПО
Использование DLL
Для хранения вредоносного кода.
Использование системных Windows DLL
Использование сторонних библиотек
Службы Windows
приложения, автоматически (если настроено) запускаемые системой при запуске Windows и выполняющиеся вне зависимости от статуса пользователя.
Имеет общие черты с концепцией демонов в Unix.
HKLM\SYSTEM\CurrentControlSet\Services
Преимущества использования сервисов
Обычно сервисы имеют достаточно высокий уровень привилегий (например, System)
Обеспечивают «выживаемость» в системе, поскольку запускаются автоматически при старте ОС, часто не отображаются в Менеджере задач как отдельные процессы.
Службы Windows
Основные типы служб Windows
Тип |
Описание |
|
|
Adapter |
Служба для устройства, требующего собственного драйвера. |
|
|
FileSystemDriver |
Драйвер файловой системы, который является и драйвером |
|
устройства ядра. |
|
|
InteractiveProcess |
Служба, взаимодействующая с рабочим столом. |
|
|
KernelDriver |
Драйвер устройства ядра, например, жесткого диска, или другой |
|
драйвер устройства нижнего уровня. Запускается в режиме |
|
ядра. |
RecognizerDriver |
Драйвер файловой системы, используемый при запуске системы |
|
для определения ее файловых систем. |
|
|
Win32OwnProcess |
Программа Win32, которая запускается контролером служб и |
|
подчиняется протоколу управления службами. Этот тип службы |
|
Win32 запускается самостоятельно. Код хранится в .exe файле, |
|
создается отдельный процесс под службу |
Win32ShareProcess |
Служба Win32, которая может работать совместно с другими |
|
службами Win32. Код хранится в dll, обычно работает в одном |
|
процессе с несколькими службами. В менеджере задач ему |
|
соответствует процесс svchost.exe, |