воскресенье, 7 сентября 2008 г.

Про ntdll.dll

Стоит 32-разрядная Windows XP Pro SP3 и процессор семейства x86. В данном случае имеет место такое разбиение виртуального адресного пространства каждого процесса (оно составляет 4 Гб) на разделы:
  • Для выявления нулевых указателей (64 Кб). Диапазон адресов: 0x0000000-0x0000FFFF.
  • Для кода и данных пользовательского режима. Диапазон адресов:0x00010000-0x7FFEFFFF.
  • Закрытый (64 Кб). Диапазон адресов:0x7FFF0000-0x7FFFFFFF.
  • Для кода и данных режима ядра. Диапазон адресов: 0x800000000-0xFFFFFFFF.
Первый и третий разделы зарезервированы операционной системой и любая попытка чтения или записи в них вызывает нарушение доступа, в результате чего процесс завершается. Во втором разделе содержится основной объем данных, принадлежащих процессу. Сюда загружаются все exe- и  dll-модули, которые можно просмотреть с помощью, например, утилиты Listdlls и увидеть  их базовые адреса и отображаемый размер.
Наконец, в четвертом разделе содержится код операционной системы, драйверы   устройств и код низкоуровневого управления потоками, памятью, файловой системой, сетевой поддержкой, a так же драйвера программ специального назначения (например, антивирус). Последние, как-бы имитируя драйвер устройства, получают доступ к таким системным сервисам, которые не доступны через Windows API. Модули, загруженные в этот раздел, можно увидеть с помощью AVZ, выбрав из "Сервиса" "Модули пространства ядра".
Тут меня заинтересовал ntdll.dll —один из основных системных файлов Windows, реализующий внутренние функции поддержки и интерфейсы диспетчера системных сервисом с функциями исполнительной системы. Если к его базовому  адресу 0x7C900000 формально прибавить его размер в памяти 0xB0000, то получим адрес 0x7C9B0000, который находится ниже (или левее :) ) адреса 0x80000000, т.е. получается, что ntdll.dll загружен в третий раздел. Но это и не удивительно, т.к. он имеется в списке, отображаемом Listdlls.
Его так же можно увидеть в списке dll-файлов, отображаемом Process Explorer. Тогда непонятно почему он имеется в списке "Модули пространства ядра".

Font Manager 3.5

Хочу немного рассказать про эту программу (http://www.styopkin.com/font_manager.html).Это очень удобный и простой в использовании менеджер  шрифтов. Позволят просматривать их и выдает 
информацию о каждом. И самое главное —деинсталляция ненужных шрифтов. Именно деинсталляция, потому что они перемещаются в папку С:\Program Files\Font Manager\Uninstalled Fonts (по умолчанию), и могут быть восстановлены( заново проинсталлированы ) из вкладки "Browser" программы. Так же Font Manager не позволяет деинсталлировать системные шрифты Windows XP. 

пятница, 5 сентября 2008 г.

Google Chrome 0.2.149.27 Beta

Несколько дней назад вышел новый браузер от компании Google —Google Chrome. Очень понравился. 

Первое, что привлекает —это красивый интерфейс и его неперегруженность. В браузере имеется все необходимое. Весьма порадовала скорость.
Так же большим плюсом можно считать поддержку мультипроцессного режима, когда каждая вкладка в одном окне является отдельным процессом. Бывало,например, когда заходил на euronews через Mozilla Firefox 3.0.1 при загрузке на странице некоторых роликов зависал весь браузер и его приходилось закрывать со всеми открытыми вкладками, что было крайне неприятно. А сейчас в Google Chrome зависает только одна вкладка, где открыт euronews. В результате ее можно закрыть и далее спокойно работать с остальными вкладками. Еще надо сказать, что браузер очень хорошо интегрируется с различными сервисами Google.  


Direct Folders 3.32

Долго искал бесплатную программу такого рода и вот случайно нашел( через ссылку на другую прогу в блоге Хоттабыч Online  ). То для чего она ясно из названия. Иначе говоря, программа позволяет осуществить быстрый доступ к папкам. При этом это очень удобно реализовано: двойной клик левой кнопкой мыши по Desktop-y или по пустому месту в окне какой-либо папки и появляется то, что показано слева. Кроме того в меню можно добавлять файлы и создавать новые подменю( если, конечно, в этом есть необходимость ). Все это можно сделать  во вкладке "Organize Favorites" . В вкладке "Options" имеются настройки программы, а в "Places Bar" есть возможность добавить папки к папкам слева в диалоговых окнах "Сохранить файл" и "Открыть".

Так же прогой можно упр
авлять из трея (она там сидит). 

Я пользуюсь только быстрым доступом к папкам и файлам.

На официальном сайте можно сделать upgrade to pro версии, но зачем? Можно и прямо скачать бесплатную для некоммерческого использования версию.

среда, 3 сентября 2008 г.

Зашифрованные данные в реестре.


Интересно, что в реестре есть параметры с зашифрованными именами. Таковые имеются в разделе  \Explorer\UserAssist\{75048700-EF1F-11D0-9888-006097DEACF9}\Count.
Обнаружил их случайно, когда чистил реестр с помощью утилиты Registry Fix 6.3.

Вначале я не знал как их расшифровать. Прошло некоторое время и , порывшись в интернете, узнал, что имеет место кодировка rot-13. Иначе говоря, если перенумеровать английский алфавит, то буква с номером n  заменяется на букву с номером                         
  • n+13, если n<=13
  • n-13, если n>13
Так, например, выражение P:\Cebtenz Svyrf\Tbqyvxr Qrirybcref\JvaGbbyf.arg
 Hygvzngr\jvagbbyfivfgn.rkr расшифровывается как  С:\Program Files\Godlike Developers\wintoolsvista.exe. 

Так можно дешифровать вручную. Но зачем? Для автоматической шифровки и дешифровки в данном случае можно использовать сайт http://www.rot13.com/
Так же есть бесплатная утилита UserAssist, которая прямо выдает дешифрованные данные из ключей 
  • HKCU\Software\Windows\СurrentVersion\Explorer\UserAssist\{5E6AB780-7743-11CF-A12B-00AA004AE837}\Count
  • HKCU\Software\Windows\СurrentVersion\Explorer\UserAssist\{75048700-EF1F-11D0-9888-006097DEACF9}\Count
Просмотрев  записи в них, можно увидеть, что там 
содержится большое количество неверных ссылок на файлы, т.е. ссылок на несуществующие файлы. Иначе говоря, мусор.

Дело в том , что когда мы запускаем какое-нибудь приложение в этих ключах (в основном во втором) прописывается путь к exe-файлу и путь к ярлыку (если  он есть) приложения.






В случае GUI-приложения его ярлык появляется в нижней четверти меню "Пуск". При этом количество элементов в этом списке остается фиксрованным, т.е. один ярлык сменяется другим. Если удалить вышенаписанные ключи, то эта часть меню "Пуск" просто окажется пустой. Больше вроде ничего не происходит. :)