Защита от хакеров корпоративных сетей
Шрифт:
Вопрос: Как лучше всего освоить основы электроники? Ответ: Помимо формального обучения или занятий в местном учебном заведении соответствующего профиля (из числа готовящих специалистов по электронике и смежным специальностям), известен ряд превосходных книг и журналов, которые могут оказаться полезными при изучении электроники. Книга Горовитца (Horowitz) и Хилла (Hill) «Искусство электроники» (The Art of Electronics) (Cambridge University Press, 1989) является фундаментальным курсом по теории электроники и содержит все необходимые сведения, освещая все стороны этой науки. Данная книга часто используется как учебник по курсу электроники в университетских программах. Для детального изучения цифровых логических схем рекомендуется книга Мано (Мапо) «Проектирование цифровых логических схем» ( Digital Design) (Prentice-Hall, 1995), в которой приведены сведения по «методам проектирования цифровых логических
Вопрос: Имеются ли списки рассылки, телеконференции и Web-сайты, посвященные вопросам хакинга аппаратных средств? Ответ: Хотя есть много Web-cайтов и ресурсов сети, посвященных вопросам хакинга электронных и аппаратных средств вообще, тем не менее источников по хакингу аппаратных средств защиты информации немного и их не так просто найти. Телеконференции Usenet, как, например, sci.electronics.design, comp.arch.embedded и comp.security.misc, обсуждают вопросы хакинга аппаратных средств лишь в незначительной степени. Посвященный вопросам анализа криптографических систем и их реализации архив списка адресатов «Coderpunks» (www.privacy.nb.ca/cryptography/archives/coderpunks/charter.html) содержит интересные дискуссии по связанным с аппаратными средствами вопросам, включая такие темы, как смарт-карты, обнаружение регистрации нажатия клавиш и реализацию криптографических алгоритмов аппаратными средствами. Проект Gnet (www.guerrilla.net) преследует цель создать альтернативную радиосеть без правительственных и коммерческих ограничений. Это одна из немногих групп, занимающаяся хакингом аппаратных средств на плановой основе. Их Web-сайт отличается показом ряда аппаратных модификаций для стандарта 802.11 wireless Access Points, сетевых интерфейсных плат и антенн.
Вопрос: Было бы полезно узнать о встроенных системах? Насколько к ним применим хакинг аппаратных средств?
Ответ: Многие из современных реализованных аппаратными средствами устройств обеспечения безопасности содержат встроенную электронную систему, выполненную на основе микропроцессора / контроллера, предназначенного для выполнения специализированных функций. Встроенная система является объединением аппаратных и программных средств. Одно без другого не существует. Известны тысячи различных микропроцессоров. Выбор микропроцессора для специфического устройства часто зависит от его быстродействия, разрядности (8, 16 или 32 бит), расположенных на чипе внешних устройств и таких общих характеристик, как стоимость, размер, тип корпуса и доступность. Микропроцессор может обеспечивать работу различных устройств, например оперативного или постоянного запоминающего устройства, управлять жидкокристаллическим индикатором, поддерживать стандарт IrDA на передачу данных в инфракрасном диапазоне с выводом на печать, интерфейс PCMCIA, обеспечивать необходимую производительность при работе с радиочастотами и различные возможности обеспечения безопасности.
Понимание принципов работы различных семейств микропроцессоров и знания их ассемблера чрезвычайно полезно для реинжиниринга аппаратных средств. К общим микропроцессорам относятся Motorola семейства 6800 и 68000 (типа DragonBall MC68328, который в настоящее время используется в компьютерах Palm), Zilog Z-80, Intel StrongARM семейства i960, 8051 и x86 и Microchip PIC (используемый во многих разновидностях мыши Microsoft). Кроме перечисленных, известны и другие производители и типы процессоров с различными конфигурациями и встроенными функциональными возможностями. Документальный источник Рэндалла Хида (Randall Hyde) «Искусство ассемблера» (The Art of Assembly Language), http://webster.cs.ucr.edu/index.html, содержит большое количество справочной информации по языку ассемблера для Intel x86 и описывает все аспекты программирования низкого уровня. Документация разработчика содержит описание системы команд, регистров и другую полезную информацию для выбранного устройства. C незначительными изменениями идеи программирования микропроцессора на языке ассемблера могут быть применены к любым микропроцессорам.Глава 15 Вирусы, Троянские программы и черви
В этой главе обсуждаются следующие темы:
• Различия между вирусами, Троянскими программами и червями
• Строение вирусов
• Инфицирование различных платформ
• Поводы для беспокойства
•
• Защита от вредоносного кода
· Резюме
· Конспект
· Часто задаваемые вопросы
Введение
Без сомнения, все слышали об эпидемии компьютерных вирусов и червей. За прошедшие годы появилось множество новых наименований. По сообщениям печати, черви Melissa, I love you, Code Red и Nimda вызвали миллионные убытки. Стоит также отметить черви Anna Kournikova, Magistr, Goner, BadTrans и Kak. Новые вирусы появляются каждый день. Соответственно, производство антивирусного программного обеспечения является весьма крупным и прибыльным бизнесом. Возникает вопрос, каким образом компании, производящие это программное обеспечение, извлекают выгоду из сложившейся ситуации. Ответ на него прост и очевиден: путем борьбы с распространением вредоносного кода.
Постепенно сфера деятельности антивирусной индустрии расширилась – в настоящее время они занимаются не только вирусами, но также анализируют Троянские программы, черви и макровирусы и составляют их списки.
Различия между вирусами, Троянскими программами и червями
Вредоносный код обычно классифицируется по типу механизма распространения. В некоторых случаях принимаются во внимание платформа, на которой он работает, и механизм запуска (например, для активизации макровирусов требуется определенное приложение-жертва). Впрочем, несмотря на то что вирусы, Троянские программы и черви объединены словосочетанием «вредоносный код», они могут и не вызывать повреждений. В данном контексте слово «вредоносный» означает потенциальную возможность причинения вреда. Некоторые пользователи считают, что любой чужой кусок кода в их системе, потребляющий пусть даже небольшие ресурсы, уже приносит вред.
Вирусы
Безусловно, самым известным типом вредоносного кода является классический компьютерный вирус. Вирусом называется программа или кусок кода, воспроизводящая сама себя различными способами, а иногда и выполняющая определенные действия. В свое время был опубликован документ RFC – Request for Comments – с названием «Гельминтоз Интернета» («The Helminthiasis of the Internet»), документирующий появление червя Морриса. В начале документа RFC 1135 содержалось описание различия между вирусами и червями. По поводу вирусов было написано следующее:
«Вирусом называется кусок кода, который для дальнейшего распространения внедряется в различные приложения, в том числе и в операционные системы. Он не может запускаться независимо и активируется только при запуске соответствующего приложения-жертвы».
Вирусы были особенно популярны в то время, когда обмен программным обеспечением и данными производился с помощью дискет. Многие из них ожидали момента появления дискеты в дисководе. В момент обнаружения дискеты на нее копировался вирус, причем таким способом, чтобы устройство приема данных вызывало выполнение кода вируса и, как следствие, дальнейшее инфицирование. Несмотря на то что в наши дни дискеты уже не являются основным средством передачи информации, угроза заражения компьютера вирусами до сих пор не устранена. Вирусы могут присутствовать в файлах, загружаемых из Интернета, кроме того, может оказаться, что приобретенный вами компакт-диск с программным обеспечением содержит зараженные файлы.
К счастью, методика борьбы с вирусами довольно проста. Не запускайте незнакомые программы, не проверив их на наличие вируса. Средства обнаружения вирусов входят в стандартный набор программного обеспечения новых компьютеров, а пользователи повсеместно информируются об опасности заражения. Остается только своевременно обновленять антивирусные программы, без чего невозможно обнаружение новейших вирусов.
Существует мнение, что распространение вирусов ограничено платформой Windows/DOS; однако существуют также вирусы, поражающие операционную систему UNIX – просто эффективность заражения ими локальной системы ниже благодаря тому, что полномочия пользователей в системе ограничены их учетной записью. Большинство вирусов для UNIX пытаются заразить общесистемные исполняемые файлы, которые впоследствии может запустить на выполнение пользователь с более высоким уровнем доступа. Затем заражение файлов происходит на более высоком уровне, и цепочка продолжается, пока один из этих файлов не будет запущен привилегированным пользователем, что даст вирусу полный доступ к системе.
Черви
Черви в отличие от вирусов не занимаются собственным воспроизводством внутри отдельных приложений; вместо этого они распространяются между системами и обычно располагаются в памяти. В документе RFC 1135 червь описывается следующим образом:
«Червем называется программа, которая выполняется независимо, расходует системные ресурсы на поддержание себя в рабочем состоянии и распространяет полную рабочую версию самой себя на другие компьютеры».