Читаем Kingpin полностью

Тим Спенсер и многие из «Голодных Программистов» приехали в Вашингтон, чтобы увидеть как их «трудный ребенок» женится. Родители Макса, его сестра, семья Кими, множество друзей и родственников показались на церемонии. Макс носил смокинг и улыбку до ушей, Кими сияла в белом свадебном платье и фате. Окруженные семьей и любимыми друзьями они были идеальной парой начинающей совместную жизнь.

Отец Кими – гордо стоявший военный в униформе и ее мама в традиционном ханбуке стояли снаружи. Макс, окруженный своими родителями, улыбнулся в камеру, в то время как над головой собирались тучи в небе Pacific Northwest.

Прошло почти три года с момента как Макс вышел из тюрьмы. Сейчас он имел всё – преданную жену, обещающую карьеру whitehat-хакера и прекрасный дом. Буквально через несколько недель он выкинет это всё.

Глава 5. «Кибервойна!»

По возвращению домой в Сан-Франциско Макса ждало искушение в виде следующей строки кода:

bcopy (fname, anbuf, alen = (char *)*cpp — fname);

Это была одна из 9 тысяч строк в исходниках Berkeley Internet Name Domain (BIND) – старая балка в инфраструктуре интернета, такая же важная как любой роутер или оптоволоконный кабель. Разработанный в начале 80х на грант DARPA (Defense Advanced Research Projects Agency — агентство передовых оборонных исследовательских проектов), BIND реализовывал масштабируемую систему доменных имен (Domain Name System — DNS), которая подобно распределенному телефонному справочнику переводит понятные человеку строки типа Yahoo.com в числовые адреса, которыми оперирует сеть. Без BIND или его аналогов, мы бы читали онлайн-новости на 157.166.226.25 вместо CNN.com и заходили бы на 74.125.67.100, чтобы воспользоваться Google-поиском.

BIND был одной из инноваций, что сделали возможным бурный рост интернета. Он заменил незрелый механизм, который не позволял интернету расширяться. Но в 90х BIND был также одной из унаследованных программ, которые создавали крупнейшую проблему безопасности интернета. Его код был продуктом времен честности и простоты, когда сеть была уединенная и было очень мало сетевых угроз. Теперь же хакеры постигли все нюансы и глубины и возвращались с, казалось бы, бесконечным набором дыр в безопасности.

Первосвященство сетевых экспертов названное консорциум интернет ПО (Internet Software Consortium — ISC) само себя назначило стражем интернет-кода и лихорадочно его переписывало. Но в то же время большинство современных сложных сетей в мире со сверкающими новыми серверами и рабочими станциями были запущены с дырявой компьютерной программой из прошлой эпохи.

В 98-м эксперты по безопасности обнаружили последнюю уязвимость в коде. Она сводилось к той одинокой строке кода вначале главы. Она принимала запрос из интернета и, как и положено, копировала его побайтно во временный буфер «unbuf» в память сервера. Но она не корректно проверяла размер входящих данных. Следовательно, хакер мог намеренно передать слишком длинный запрос к BIND-серверу, переполнив буфер и выбросить данные в остальную часть памяти, как нефть из Эксон Валдез.

Если выполнить такую операцию бессистемно, то это приведет к краху программы. Однако осторожный хакер может сделать нечто более жуткое. Он может загрузить в буфер собственный фрагмент исполняемого кода и затем, избегая падения, подниматься к вершине пространства памяти программы, достигнув зоны кратковременного хранения данных называемого «стэк».

Стэк – то место где процессор хранит информацию о том, что он делает – каждый раз, когда программа перенаправляет компьютер к подпрограмме, процессор «выталкивает» текущий адрес в стэк как закладку, и потому процессор знает куда возвращать данные когда они будут готовы.

После того как хакер оказался в стэке он может перезаписать адрес для возвращения данных на адрес с вредоносным кодом. Когда компьютер закончит с текущей подпрограммой, она вернется не туда где началась, а к инструкциям хакера, и поскольку BIND запускался с привилегиями администратора (root), хакерский код тоже выполнится из под root. Теперь компьютер под контролем хакера.

Две недели спустя после того как Макс и Кими поженились, финансируемая правительством компьютерная группа реагирования на чрезвычайные ситуации университета Карнеги Меллон (CERT - Computer Emergency Response Team), запустившая систему экстренных рассылок о дырах в безопасности, выпустило предупреждение об уязвимости в BIND со ссылкой на простой способ ее исправления: две дополнительные строки кода, что отсеивали слишком длинные запросы. Но исправление CERT содержало также и две других уязвимости, что были следствием исправления и отражали заниженную оценку важности дыры. Таким образом, далеко не все осознавали серьезность ситуации.

Макс осознавал ее прекрасно.

Перейти на страницу:

Похожие книги

Цифровой журнал «Компьютерра» № 168
Цифровой журнал «Компьютерра» № 168

ОглавлениеКолонкаИсследования атмосфер и климата внесолнечных планет становятся обыденностью Автор: Дмитрий ВибеЧто делать, когда патриот пролетит над гнездом кукушки? Автор: Сергей ГолубицкийОхота на таланты, или Одинокий бамбук посреди пустыни Автор: Василий ЩепетнёвМногосторонний конфликт: особи, гены и мемы; индивиды и группы; ближние цели и отдалённые перспективы Автор: Дмитрий ШабановКитайский гарантийный оскал: мы уже сам с усам или готовьтесь — подвиньтесь! Автор: Сергей ГолубицкийКонопляный Уроборос: Как общество, пройдя от узлов до самокруток, пытается укусить прогресс информационных технологий за хвост Автор: Михаил ВаннахTorBrowser — незаменимый инструмент для борьбы с мракобесием и нездоровой энергией непущательства Автор: Сергей ГолубицкийРоскомнадзор рассказывает Википедии о детской порнографии, наркотиках и суициде Автор: Сергей ГолубицкийIT-рынокВесы с Wi-Fi, вилка с Bluetooth и ещё три прогрессивных метода следить за здоровьем Автор: Андрей ПисьменныйБез окон, без дверей, или Facebook Home против Android-сообщества Автор: Евгений ЗолотовЭти научат! Бабушки онлайн, или Как Президент пенсионеров компьютерной грамоте учил Автор: Евгений ЗолотовGoogle Glass XXX: индустрия «18+» приглядывается к новому устройству Автор: Виктор ЛаслоПромзонаСтилус для ёмкостных экранов, сворачивающийся, как браслет Автор: Николай МаслухинВиртуальное окно в БМП или как студенты-дизайнеры апгрейдили броневик Автор: Николай МаслухинДача-скворечник по-американски: мини-дом за 200 долларов Автор: Николай МаслухинПовседневный дизайн: когда у ложки есть свое место в кружке Автор: Николай МаслухинПосмотрите на стабилизатор камеры, способный вывести любительскую съёмку на новый уровень Автор: Николай МаслухинТехнологииПочему качество звука больше не имеет значения Автор: Олег НечайФаблеты: пришла ли пора смартфонов-гигантов? Автор: Олег НечайПочему интерактивное кино — это прошлое, а компьютерные игры — будущее Автор: Андрей ПисьменныйДелитесь любовью, а не личными данными, или Как мстят «бывшие» в интернете Автор: Юрий ИльинПолцарства за коня: Google, Qualcomm и другие ищут великих изобретателей Автор: Олег ПарамоновЧто будет после 3D: пленоптическое видео Автор: Олег НечайПрограмму для Google Glass сможет сделать каждый. Вот что для этого нужно Автор: Андрей ПисьменныйНанометровая драма: почему AMD жалуется на Закон Мура и когда ждать следующий Большой Микропроцессорный Взрыв? Автор: Евгений ЗолотовКартография и «обратная разработка»: в США и Европе досконально изучат человеческий мозг Автор: Юрий ИльинИнновацииКак проходят StartupWeekend`ы и чем Нидерланды могут понравиться стартапам Автор: Юлия Роелофсен, управляющий партнер компании Innopraxis Intarnational Ltd.Как «учёному» найти «предпринимателя» в стартап Автор: Вячеслав Бычков, председатель правления в инновационно-инвестиционном центре «Фонд перспективного планирования»Инновации? No pasarán Автор: Денис Андреюк, руководитель службы маркетинга компании «Нанотехнология МДТ»Школьники- «инноваторы» не вырастут в предпринимателей, если не бороться с консерватизмом университетов Автор: Александр Бервено, основатель и генеральный директор компании «Сорбенты Кузбасса»,«Подглядеть» за конкурентами: разговор с основателем сервиса SEMrush Автор: Елена КраузоваГидВышло приложение Status Board — самый лучший центр виджетов для iOS Автор: Михаил Карпов

Журнал «Компьютерра»

Зарубежная компьютерная, околокомпьютерная литература