Содержание материала

OpPorts в Win2k и NT4, FPort в Win2k

 

Мы используем NtDeviceIoControlFile с IoControlCode равным 0x00210012,

чтобы определить, что хэндл с типом File и именем \Device\Tcp или \Device\Udp -

это хэндл открытого порта.

 

Во-первых, мы сравним IoControlCode, а затем тип и имя хэндла. Если

он нас все еще интересует, мы проверим длину входного буфера, который должен

быть равным длине структуры TDI_CONNECTION_IN. Ее длина 0x18. Выходной буфер -

TDI_CONNETION_OUT.

 

typedef struct _TDI_CONNETION_IN

{

ULONG UserDataLength,

PVOID UserData,

ULONG OptionsLength,

PVOID Options,

ULONG RemoteAddressLength,

PVOID RemoteAddress

} TDI_CONNETION_IN, *PTDI_CONNETION_IN;

 

typedef struct _TDI_CONNETION_OUT

{

ULONG State,

ULONG Event,

ULONG TransmittedTsdus,

ULONG ReceivedTsdus,

ULONG TransmissionErrors,

ULONG ReceiveErrors,

LARGE_INTEGER Throughput

LARGE_INTEGER Delay,

ULONG SendBufferSize,

ULONG ReceiveBufferSize,

ULONG Unreliable,

ULONG Unknown1[5],

USHORT Unknown2

} TDI_CONNETION_OUT, *PTDI_CONNETION_OUT;

 

 

Конкретная реализация, того как определить то, что хэндл - это хэндл

открытого порта, доступна в исходном коде OpPorts на моем сайте

https://rootkit.host.sk. Сейчас нам необходимо скрыть определенные порты. Мы

уже проверили InputBufferLength и IoControlCode. Теперь мы должны проверить

RemoteAddressLength - для открытого порта всегда 3 или 4. Наконец, мы должны

сравнить поле ReceivedTsdus из OutputBuffer, которое содержит порт в

сетевой форме, со списком портов, которые мы хотим скрыть. Мы можем различать

TCP и UDP в соответствии с именем хэндла. Удалив OutputBuffer, изменив

IoStatusBlock и вернув значение STATUS_INVALID_ADDRESS, мы скроем порт.

 

 

 

Окончание

 

Конкретная реализация описанных техник доступна в исходном коде

Hacker Defender Rootkit версии 1.0.0. 

 

 

Author: Holy_Father holy_father @phreaker.net

Translation: Kerk  kerk_p @yahoo.com

Добавить комментарий

Не использовать не нормативную лексику.

Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.

ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!


Защитный код
Обновить