понедельник, 29 октября 2012 г.

Структура и описание SOA-записи

Запись SOA (Start of Authority)

name        ttl class rr    name-server email-addr  (sn ref ret ex min)

$TTL 2d
$ORIGIN example.com.
@    IN    SOA   ns.example.com. hostmaster.example.com. (
                              2003080800   ; sn = serial number
                              172800           ; ref = refresh = 2d
                              900                 ; ret = update retry = 15m
                              1209600         ; ex = expiry = 2w
                              3600               ; min = minimum = 1h
                              )


$TTL время жизни данных зоны в кэше запросившего их сервера (в секундах)
По достижении установленного времени, кеширующий сервер запрашивает DNS сервер, содержащий доменную зону, информацию о зоне.
Перед запланированными процедурами, первую строку SOA записи следует изменить на значение $TTL    600 , или меньше, после чего изменить serial number и перегрузить зоны, т.е. рестартовать DNS сервер и спокойно идти за чаем в ожидании истечения времени указанного для TTL первоначально. После того как эти данные обновятся, что можно проверить с помощью команды dig, можно начинать производить необходимые процедуры по миграции серверов. Изменение IP адресов произойдет в течении указанного времени.
После того как все процедуры по переезду и миграции будут произведены, значение  TTL можно перевести в большее значение с тем, чтобы снизить нагрузку на DNS сервер и избежать слишком большого сетевого трафика при обновлении зон.

$ORIGIN задает суффикс по умолчанию для файла данных зоны и обязательно заканчивается точкой
$ORIGIN mydomain.ru.
Если эта директива не задана, то BIND определяет ее как имя зоны, заданной в файле named.conf
@ используется для обозначения корня зоны и принимает значение последней директивы $ORIGIN в файле

serial number - серийный номер версии данных (выбор номера произволен, но номер должен увеличиваться для каждой новой модификации), yyyymmddss where yyyy = year, mm = month and dd = day ss = a sequence number in case you update it more than once in the day
refresh - период запроса на обновление данных со стороны вторичного сервера (в секундах), рекомедуется от 1200 (если данные часто изменяются) до 43200 (если изменения очень редки)
retry - период повтора попыток запроса данных вторичным сервером в случае неудачи (в секундах), обычно от 3 до 15 минут или более
expiry - срок годности данных, т.е. время, через которое вторичный сервер прекратит обслуживать запросы, если ему не удастся восстановить связь с первичным сервером (в секундах), рекомендуется знаяения от 1209600 до 2419200 (2-4 недели)
minimum=negative caching - время жизни отрицательного кеширования (в секундах), этот показатель определяет, как долго удаленные DNS-серверы имеют право сохранять информацию об отрицательных ответах, связанных с зоной, т.е. ответах, суть которых заключается в том, что доменное имя или тип данных не существует в конкретном домене. Максимально 3 часа, рекомендуются небольшие значения от 15 минут до двух часов

четверг, 25 октября 2012 г.

Пароли Outlook Express

     
    Пароли всех удостоверений Outlook Express хранятся в реестре. Для этого предназначена ветвь реестра HKEY_CURRENT_USER\Software\Microsoft\Protected Storage System Provider\«идентификатор безопасности вашей учетной записи (SID)»\Data. По умолчанию доступ к ветви системного реестра HKEY_CURRENT_USER\Software\Microsoft\Protected Storage System Provider\«идентификатор безопасности вашей учетной записи (SID)» не определен ни для какой учетной записи. Поэтому если ваша учетная запись принадлежит к группе Администраторы, то необходимо будет еще изменить права доступа к этой ветви реестра, чтобы увидеть ее содержимое (учетные записи, принадлежащие к другим группам, не имеют права изменять права доступа к данной ветви реестра). После того как вы измените права доступа, перед вами появятся два дочерних раздела ветви — Data и Data2. Пароли Outlook Express в зашифрованном виде содержатся в разделе Data, поэтому узнать пароль конкретного пользователя не получится, но можно переименовать раздел Data, например, в раздел 2Data или просто удалить его. После этого все пароли на удостоверения данного пользователя будут удалены и можно будет войти в его удостоверения без пароля. Это может понадобиться в том случае, если пароль на удостоверение утерян или поврежден.
    Идентификатор безопасности SID является числом в специальном формате (например, для учетной записи Администратор этот идентификатор всегда равен S-1-5-21-1645522239-1957994488-839522115-500). Это число идентифицирует данного пользователя во всех операциях доступа к реестру, файловой системе Windows, сети и т.д. Идентификатор безопасности — это уникальное число (за исключением учетной записи Администратор, для которой идентификатор безопасности на всех компьютерах одинаковый), однозначно идентифицирующее учетную запись. Список всех идентификаторов безопасности для учетных записей (существуют также идентификаторы безопасности для групп пользователей) можно просмотреть в ветви реестра HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\ProfileList. Ветвь содержит разделы, названные в честь идентификаторов безопасности. При этом данные разделы хранят параметр строкового типа ProfileImagePath, который определяет путь к папке профиля, используемой данной учетной записью (конечная папка этого пути названа в честь логина учетной записи, поэтому можно определить, какой учетной записи соответствует каждый идентификатор безопасности).
     При входе пользователя в почтовый клиент Outlook Express (после ввода пользователем пароля) в ветви реестра HKEY_CURRENT_USER\Identities создается DWORD-параметр Identity Login. Он определяет так называемый идентификатор данного удостоверения (эти идентификаторы статичны, то есть всегда одинаковы для конкретной учетной записи пользователя, а не удостоверения). Идентификатор существует до выхода пользователя из почтового клиента — во время выхода он удаляется. Все дело в том, что если кто-то узнает значение данного идентификатора для удостоверения, например с помощью сетевого доступа просмотрит ветвь реестра HKEY_CURRENT_USER\Identities удаленного компьютера или просто посмотрит, чему равен идентификатор при своей работе в почтовом клиенте, то он сможет спокойно зайти в удостоверение, которое открывалось последним — почтовый клиент не потребует ввода пароля. Для этого достаточно будет перед открытием почтового клиента просто создать в ветви системного реестра HKEY_CURRENT_USER\Identities параметр Identity Login и присвоить ему значение идентификатора.
    Теперь рассмотрим небольшой пример. Допустим, существует общественный компьютер, на котором используется почтовый клиент Outlook Express. В этом почтовом клиенте существует три удостоверения, при этом одно из них ваше, например, оно будет иметь GUID-номер удостоверения {7FA55060-42B6-4CA4-8925-51F7AE55A20F}, а второе удостоверение, доступ к которому очень нужно получить, имеет GUID-номер {5E92CB22-3FED-493A-9D6F-F7432CF5CD7C}. Если вы думаете, что получить доступ к этому удостоверению невозможно, то вы ошибаетесь — на это понадобится пять минут. Попробуем это сделать. Для начала, конечно, нужно зайти в свое удостоверение и посмотреть значение DWORD-параметра Identity Login ветви реестра HKEY_CURRENT_USER\Identities. После того как вы запомнили значение этого параметра, закрывайте почтовый клиент (внимание, нужно просто закрыть почтовый клиент, а не завершить сеанс работы с удостоверением). Вот, в принципе, и все. Теперь осталось выполнить последний шаг — отредактировать три параметра ветви реестра HKEY_CURRENT_USER\Identities.
1. Identity Login — необходимо создать этот параметр DWORD-типа и присвоить ему значение, которое вы недавно запомнили.
2. Last User ID — нужно присвоить этому параметру строкового типа значение GUID-номера удостоверения, к которому нужно получить доступ. В вашем случае, нужно присвоить значение {5E92CB22-3FED-493A-9D6F-F7432CF5CD7C} (если вы этого не сделаете, то просто войдете без пароля в свое удостоверение).
3. Last Username —необходимо присвоить этому параметру строкового типа значение логина удостоверения, доступ к которому нужно получить (еще не забыли, что его можно посмотреть в значении параметра Username ветви системного реестра HKEY_CURRENT_USER\Identities\{GUID-номер удостоверения почтового клиента, к которому вы хотите получить доступ}?).
Вот теперь точно все — достаточно еще раз открыть почтовый клиент, и вы без знания пароля войдете в удостоверение пользователя, имеющее GUID-номер {5E92CB22-3FED-493A-9D6F-F7432CF5CD7C}.

понедельник, 22 октября 2012 г.

Resetting Root Password via GRUB / Kernel boot options

Иногда возникает необходимость сбросить пароль root в системе Linux. Есть много способов сделать это, включая загрузку с LiveCDs и загрузку в однопользовательский режим. Предположим следующее:

* Пароль root неизвестен
* Учетная запись с достаточными правами для сброса пароля root неизвестна или недоступна.
* Есть доступ для редактирования опций загрузчика GRUB.
* Нормальная загрузка в однопользовательский режим не работает


Чтобы загрузить Linux в минимальную рабочую оболочку:

* В меню GRUB, где сказано “Press Any key to enter the menu”, нажать ESCAPE
* Далее, нажать ‘e‘ для редактирования опций загрузки ядра.

* Добавить в опции загрузки ядра ‘init=/bin/bash‘ (или ‘init=/bin/sh‘ в зависимости от дистрибутива)
* Загрузить систему с указанными опциями

Добавленная опция означает, что в качестве init будет выполнена /bin/sh, вместо нормального /sbin/init. Нормальный процесс init process будет полностью пропущен равно как и монтирование файловой системы через /etc/fstab вместе с опциями в /etc/inittab, защищающими использование однопользовательского режима (~:S:wait:/sbin/sulogin). Будет только смонтирована корневая файловая система, причем в режиме только для чтения.

Т.о., чтобы сбросить пароль root, необходимо:

* Подмонтировать /proc (mount /proc)
* Перемонтировать корневую файловую систему в режиме чтения/записи (mount -n -o remount,rw /)
* Изменить или очистить пароль root можно двумя способами:
- Отредактировать /etc/shadow и либо изменить, либо очистить пароль суперпользвателя

- Подмонтировать раздел /usr  в случае, если он является отдельным и выполнить /usr/bin/passwd для изменения пароля root
* Выполнить команду sync для очистки всех неподтвержденных записей на диск
* Перезагрузить систему вручную (/sbin/shutdown, /sbin/init 0 , и /sbin/reboot работать не будут)



Взято из http://studyhat.blogspot.com/2010/05/resetting-root-password-via-grub-kernel.html