Есть вопрос?
Зайди на форум

Поиск:

Denix: русификация Ubuntu и кодеки :: RSS:: Скачать книги Колисниченко в PDF

Англо-русский словарь компьютерных терминов (Д. Колисниченко)

A  B  C  D  E  F  G  H  I  K  L  M  N  O  P  Q  R  S  T  V  W  X  Y  Z 

укрпочта отслеживание посылок перевод денег график отключения света в Кировограде график отключения счета в Киеве график отключения света в Одессе (zip)

Книга Д. Колисниченко Rootkits под Windows. Теория и практика программирования “шапок-невидимок“, позволяющих скрывать от системы данные, процессы, сетевые соединения.

20.2. Определение версии Windows

Как уже было отмечено, для DKOM-руткита жизненно важно правильно определить версию Windows. Это можно сделать различными способами, о которых мы сейчас и поговорим.

20.2.1. Пользовательская API-функция GetVersionEx

Очень легко определить версию Windows с помощью API-функции GetVersionEx(). Проще всего продемонстрировать работу этой функции на следующем примере:

void GetWindowsVersion()

{

OSVERSIONINFOEX osv;

// не забываем установить размер структуры, иначе получим неправильный результат

osv.dwOSVersionInfoSize = sizeof(OSVERSIONINFOEX);

if (GetVersionEx((OSVERSIONINFO *)&osv))

{

    if osv.dwPlatformId == VER_PLATFORM_WIN32_NT {

    // Windows NT, 2000, XP, 2003

    if (osv.dwMajorVersion==4 && osv.dwMinorVersion==0) printf("Win NT 4.0");

    if (osv.dwMajorVersion==5)

     switch (osv.dwMinorVersion)

     {

 

     case 0: { printf("Widows 2000"); break; }

     case 1: { printf("Windows XP");

               if (osv.wServicePackMajor == 2) printf(" SP2");

               break; }

     case 2: { printf("Windows 2003"); break;}   

     } // switch

 

     } // if

   else

   {

    // Windows 9x

    if (osv.dwMajorVersion==4)

    switch (osv.dwMinorVersion)

    {  case 0:  { printf("Windows 95");  break; }

       case 10: { printf("Windows 98");  break; }

       case 90: { printf("Windows ME");  break; }

    } // switch

   } // else

} if

} void

Данную функцию вы можете легко модифицировать или даже написать собственную функцию, если будете знать назначение членов структуры OSVERSIONINFOEX:

typedef struct _OSVERSIONINFOEX {

 DWORD dwOSVersionInfoSize;        // размер структуры

 DWORD dwMajorVersion;             // основная версия ОС

 DWORD dwMinorVersion;             // дополнительная версия

 DWORD dwBuildNumber;              // build-номер (номер сборки)

 DWORD dwPlatformId;               // ID платформы

 TCHAR szCSDVersion[128];          // название сервис-пака, напр,

// Service Pack 1

 WORD wServicePackMajor;           // основной номер версии сервис-пака

 WORD wServicePackMinor;           // доп. номер версии сервис-пака

 WORD wSuiteMask;

 BYTE wProductType;                // тип продукта

 BYTE wReserved;                   // зарезервирован

} OSVERSIONINFOEX, *POSVERSIONINFOEX, *LPOSVERSIONINFOEX;

20.2.2. Определение версии ОС в режиме ядра

Использование функции GetVersionEX далеко не единственный способ определения версии Windows. Ядро содержит функции для определения версии ОС. В более старых версиях Windows используется функция PsGetVersion, возвращающая основную и дополнительную версию Windows, номер сборки (build-номер), а также UNICODE-строку, содержащую информацию о сервис-паке. Прототип этой функции следующий:

BOOLEAN PsGetVersion(PULONG MajorVersion OPTIONAL,

                     PULONG MinorVersion OPTIONAL,

                     PULONG BuildNumber OPTIONAL,

                     PUNICODE_STRING CSDVersion OPTIONAL

);

В более новых версиях Windows (XP, 2003) доступна API-функция RtlGetVersion. Ей нужно передать указатель на структуру OSVERSIONINFOW или OSVERSIONINFOEXW (эти структуры подобны структуре OSVERSIONINFOEX). Прототип функции следующий:

NTSTATUS RtlGetVersion(IN OUT RTL_OSVERSIONINFOW lpVersionInformation);

20.2.3. Определение версии с помощью реестра

Существует еще один способ определить версию Windows. Версия Windows конечно же будет записана в реестре. Нам просто нужно прочитать нужную информацию (см. рис. 20.2)

Рис. 20.2. Информация о версии ОС в реестре

(На рисунке я стер номер своей лицензионной версии Windows)

Для нас интересны следующие ключи реестра:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\CurrentVersion - содержит основную и дополнительную версию Windows, разделенные точкой

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\CSDVersion - содержит строку, описывающую сервис-пак

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\CurrentBuildNumber - содержит номер сборки

Работая на пользовательском уровне, вы можете прочитать значения этих ключей с помощью функций RegQueryValue или RegQueryVakueEx. На уровне ядра нужно действовать иначе. Следующий код позволяет определить версию ОС, используя реестр (при условии, что мы работаем на уровне ядра):

RTL_QUERY_REGISTRY_TABLE params[3];

UNICODESTRING CSD;

UNICODESTRING version;

 

RtlZeroMemory(params, sizeof(params));

RtlZeroMemory(&version, sizeof(version));

RtlZeroMemory(&CSD, sizeof(CSD));

params[0].Flags = RTL_QUERY_REGISTRY_DIRECT;

params[0].Name = L"CurrentVersion";

params[0].EntryContext = &version;

params[0].DefaultType = REG_SZ;

params[0].DefaultData = &version;

params[0]. DefaultLength = sizeof(version);

params[1].Flags = RTL_QUERY_REGISTRY_DIRECT;

params[1].Name = L"CSDVersion";

params[1].EntryContext = &CSD;

params[1].DefaultType = REG_SZ;

params[1].DefaultData = &version;

params[1]. DefaultLength = sizeof(CSD);

RtlQueryRegistryValues(RTL_REGISTRY_WINDOWS_NT, NULL, params, NULL, NULL);

// после вызова функции RtlQueryRegistryValues мы можем работать

// с полученными значениями

// освобождаем память, выделенную под UNICODE-строку:

RtlFreeUnicodeString(&version);

RtlFreeUnicodeString(&CSD);

На главную

Мне нравится!

Сегодня: 19/01

Поздравлять сегодня некого

Последние посты форума

Интересная картинка

Samsung Galaxy J2 Prime (SM-G532F)

дааа

Обучение PHP-программированию

Новый дизайн сайта

Возвращение на динамическую страницу сайта

С Новым Годом!

Бесплатный хостинг, SSL сертификат, не ограниченно

капец погода в ноябре у нас

Посоветуйте хостинг

флэшмобы

вот люди где живут... экстрим

авто-дилеры

Программы для Linux

книга Командная строка Linux и автоматизация рутинных задач

Совет:

Книги Д. Колисниченко:

Linux

Командная строка Linux и автоматизация рутинных задач. 2-е изд. Командная строка Linux и автоматизация рутинных задач. 2-е изд.
Рассмотрены команды Linux, основы работы в командной строке, а также настройка системы с помощью программ, обладающих только текстовым интерфейсом. Работа с системой выполняется только в режиме консоли, что требует определенной квалификации пользоват                                                   

99 советов по Linux99 советов по Linux
Даны ответы на актуальные вопросы по использованию операционной системы Linux на домашнем или офисном компьютере. В данный момент книга устарела. Думаю, в скором времени реанимирую                                                                                                                         

Linux. От новичка к профессионалу, 5-е изд.Linux. От новичка к профессионалу, 5-е изд.
Даны ответы на все вопросы, возникающие при работе с Linux: от установки и настройки этой ОС до настройки сервера на базе Linux. Материал книги максимально охватывает все сферы применения Linux                                                                                                            

PHP

Профессиональное программирование на PHPПрофессиональное программирование на PHP
Книга рассчитана на программистов, уже освоивших азы программирования на PHP. Приводятся сведения об отладке, анализе и оптимизации кода                                                                                                                                                                     

Самоучитель PHP 4/5Самоучитель PHP 4/5
Моя первая книга по PHP, на базе которой была написана книга Самоучитель PHP5 (НиТ). Давно распродана и не поддерживается                                                                                                                                                                                    

Самоучитель PHP 5. Книга + CDСамоучитель PHP 5. Книга + CD
Долгожданное новое издание PHP5 с CD, на котором вы найдете листинги из книги и дополнительное программное обеспечение (Apache, PHP, MySQL, редакторы кода). Книга не поддерживается, устарела                                                                                                               

Интернет/CMS

Поисковые системы и продвижение сайтов в ИнтернетеПоисковые системы и продвижение сайтов в Интернете
В книге подробно описаны алгоритмы работы и методы использования наиболее популярных сегодня поисковых машин Интернета — Google, Yandex и Rambler.                                                                                                                                                           

IRC, IRC-каналы, IRC-боты: как пользоваться и как сделать самому. Избранные технологии ИнтернетаIRC, IRC-каналы, IRC-боты: как пользоваться и как сделать самому. Избранные технологии Интернета
Эта книга целиком посвящена IRC – технологии, позволяющей создавать каналы многопользовательского общения                                                                                                                                                                                                    

Движок для вашего сайта. CMS Joomla!, Slaed, PHP-NukeДвижок для вашего сайта. CMS Joomla!, Slaed, PHP-Nuke
Книга ориентирована как на обычных пользователей Интернета, которым нужно в кратчайшие сроки создать свой сайт, так и на разработчиков, которые заинтересованы в построении собственной системы управления сайтом.                                                                                           

Компьютер/Windows

Microsoft Windows 8 для пользователейMicrosoft Windows 8 для пользователей
Описаны нововведения Windows 8, особое внимание уделено использованию системы на планшете. Рассмотрена установка системы как на физический компьютер (стационарный, ноутбук, нетбук, планшет)                                                                                                                

Компьютер На Флешке. Работающие Windows, Linux, офис и 150 самых полезных программКомпьютер На Флешке. Работающие Windows, Linux, офис и 150 самых полезных программ
В этой книге вы найдете уникальную полезную информацию о том, как установить на флешку Windows XP и Windows Vista...                                                                                                                                                                                         

Windows 8. Настройка, работа, администрированиеWindows 8. Настройка, работа, администрирование
Книга предназначена всем пользователям, желающим начать работу с новой версией операционной системы компании Microsoft - Windows 8. Подробно описаны особенности установки, настройки и восстановления системы, а также методы повышения ее производительн                                                   

Сети

Беспроводная сеть дома и в офисеБеспроводная сеть дома и в офисе
Книга поможет начинающему администратору домашней или офисной сети в кратчайшие сроки развернуть, настроить или модернизировать беспроводную сеть. Отличный выбор для построения сети SOHO                                                                                                                   

Самоучитель системного администратора. 4-е изд.Самоучитель системного администратора. 4-е изд.
Изложены основные задачи системного администрирования, описаны базовые протоколы, даны рекомендации по выбору оборудования и проведению ежедневных рутинных операций. Подробно раскрыты технологии, используемые при построении информационных систем, опи                                                   

Сделай сам компьютерную сеть. Монтаж, настройка, обслуживание. Изд. 2.Сделай сам компьютерную сеть. Монтаж, настройка, обслуживание. Изд. 2.
Книга о настройке сети в Windows (98,NT,XP) и Linux. Является превосходным практическим руководством по созданию и обслуживанию компьютерных сетей.                                                                                                                                                          

Безопасность

Rootkits под Windows. Теория и практика программирования “шапок-невидимок“, позволяющих скрывать от системы данные, процессы, сетевые соединения.Rootkits под Windows. Теория и практика программирования “шапок-невидимок“, позволяющих скрывать от системы данные, процессы, сетевые соединения.
-                                                                                                                                                                                                                                                                                                            

Анонимность и безопасность в Интернете. От Анонимность и безопасность в Интернете. От "чайника" к пользователю
Простым и понятным языком рассказано, как скрыть свое местонахождение и IP-адрес, используя анонимные сети Tor и I2P, посетить заблокированные администратором сайты, защитить личную переписку от посторонних глаз                                                                                          

Автомобили

Что делать, чтобы не надули в автосервисе. Советы и рекомендацииЧто делать, чтобы не надули в автосервисе. Советы и рекомендации
Вы недавно приобрели автомобиль или уже имеете водительский стаж, но при этом особо не вникаете в устройство автомобиля?                                                                                                                                                                                     

Контраварийное вождение. Советы - Best. Советует и рекомендует президент клуба BMWКонтраварийное вождение. Советы - Best. Советует и рекомендует президент клуба BMW
Ценность этой книги в том, что впервые советы по контраварийному вождению вам будет давать проверенный профи...                                                                                                                                                                                              

Перед покупкой авто. Все, что необходимо знать покупателюПеред покупкой авто. Все, что необходимо знать покупателю
Книга отвечает на все вопросы, которые нужно прояснить для себя перед...                                                                                                                                                                                                                                     

Переводные книги

Переводные книгиПереводные книги
Данные книги были переведены мною на русский язык (с английского и чешского). Надеюсь качество перевода вам понравится!                                                                                                                                                                                      

Android

Планшет и смартфон на базе Android для ваших родителейПланшет и смартфон на базе Android для ваших родителей
Книга рассчитана на людей среднего и старшего возраста. Она поможет освоить современный «карманный компьютер» на базе Android, в котором все новое и "не так, как в Windows". Доступным языком описывается, как включить и выключить смартфон и т.д.                                                         

Безопасный Android: защищаем свои деньги и данные от кражиБезопасный Android: защищаем свои деньги и данные от кражи
Рассмотрены различные способы обеспечения безопасности Android-устройств: шифрование персональной информации, хранящейся на устройстве, шифрование передаваемых данных, VPN-соединения, анонимизация трафика                                                                                             

Планшет и смартфон на базе Android для ваших родителей, 2-е изд.Планшет и смартфон на базе Android для ваших родителей, 2-е изд.
Книга знакомит читателя с мобильными устройствами на базе Android. Она написана простым и понятным языком для людей среднего и старшего возраста                                                                                                                                                             

Статьи

Rambler's Top100