Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Методы обнаружения попыток взлома операционной системы (Методы взлома компьютерных систем)

Содержание:

Введение

Актуальность работы обусловлена значимостью вопросов информационной безопасности для современного этапа развития информационных технологий, когда угроз безопасности существует достаточно много. Не существует ни одной операционной системы, которая была бы защищена на все сто процентов. Практически постоянно встречаются извещения о различных атаках на операционные системы. Причем, атакам подвергаются как системы частных пользователей, так и пользователей операционных систем корпоративного сегмента.

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

Тема работы «Методы обнаружения попыток взлома операционной системы»

Цель работы состоит в том, чтобы сформировать выводы об особенностях методов обнаружения попыток взлома операционной системы.

Для реализации данной цели были поставлены следующие задачи:

  1. Рассмотреть теоретические особенности вопросов информационной безопасности.
  2. Раскрыть основные угрозы, которые способствуют реализации рисков компрометации безопасности операционных систем
  3. Рассмотреть основные способы обнаружения попыток взлома операционных систем.

Структура работы включает введение, основную часть, заключение и список информационных источников

В качестве информационной базы работы послужили работы специалистов в области информационных технологий, а также материалы открытых информационных источников.

1. Теоретические особенности информационно безопасности

1.1 Основы информационной безопасности

Безопасность является одной из наиболее актуальных проблем в области ИТ в настоящее время. Обусловлено это сильной зависимостью всех сфер общественной деятельности от информационных технологий и по причине постоянно возрастающего количества цифровых атак. Особенно важна безопасность для операционных систем и сетей, поскольку они являются основными объектами атак. Причем, атакам могут подвергаться абсолютно любые операционные системы, включая операционные системы Windows, Mac OS, Linux, Unix. Во всех операционных системах существуют уязвимости, и взломщики постоянно открывают новые.

Под информационной безопасностью понимают состояние информационных систем, при котором они могут эффективно функционировать и быть устойчивыми к внешнему целенаправленному воздействию негативного характера. Также существуют и другие определения данного термина, которые описывают его в зависимости от контекста использования [3, c. 135].

В настоящее время наблюдается значительный рост числа самых разнообразных атак на устройства пользователей, которые угрожают целостности информации, работоспособности компьютерных систем и зависящих от них компаний, экономической безопасности и безопасности персональных данных людей. Для защиты от подобных действий требуется предпринимать соответствующие меры безопасности, компьютерные технологии и специальные инструменты [4, c. 90].

В любой компьютерной системе в настоящее время реализована подсистема безопасности, которая должна проверять внешнее окружение системы и защищать ее от:

  • Несанкционированного доступа
  • Злонамеренной модификации или разрушения
  • Непреднамеренного ввода некорректной информации.

Практика показывает, что легче защитить от случайного, чем от целенаправленного повреждения информации. Определяется это тем, что целенаправленные атаки осуществляются после изучения систем и поиска уязвимостей в них [1, c. 214].

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

  • Элементы управления доступом к учетным записям пользователей и криптографические технологии могут защищать системные файлы и данные, соответственно.
  • В настоящее время брандмауэры можно назвать наиболее распространенными системами защиты по части безопасности сетевой инфраструктуры, поскольку они способны (при корректной настройке) защищать доступ к внутренним сетевым службам и осуществлять блокирование определенных видов атак посредством фильтрации пакетов. Брандмауэры могут быть как программными, так и аппаратными.
  • Системы обнаружения вторжений (IDS) предназначены для обнаружения сетевых атак в процессе функционирования системы, а так же в процессе разработки и оказания помощи при исследованиях после реализованной атаки, в то время как контрольные журналы выполняют аналогичную функцию для отдельных систем. «Ответ» обязательно определяется оцененными требованиями безопасности отдельной системы и может охватывать диапазон от простого обновления защиты до уведомления юридических органов[4, c. 98].

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

1.2 Ключевые принципы информационной безопасности

К основным характеристикам информационной безопасности относят следующие:

  • Конфиденциальность
  • Целостность
  • Доступность

Рассмотрим каждое из данных понятий несколько более подробно.

Под конфиденциальностью понимается защищенность информации от несанкционированного доступа. Другими словами, должно существовать разграничение некоторых привилегий на получение соответствующей информации для различных групп пользователей и лиц, которые могут взаимодействовать с информационной системой, включая операционные системы, используемые для различных целей[6, c. 208].

Целостность информации достигается за счет того, что осуществляется контроль за сохранением целостности файлов. Контролируются возможности повреждения файлов, изменения их содержания, появления каких-либо новых файлов в операционной системе и т.д. Так, некоторые защитные программные продукты имеют функции отслеживания модификации файлов, поведения каких-либо программ в операционной системе, следят не появились ли какие-либо сторонние файлы, которые способны навредить.

Такая характеристика как доступность описывает то, что определенная информация должна быть доступна в любое, либо в определенное, время для лиц, которые имеют право на доступ к ней. Например, существует такой вид атак как Ddos-атаки, которые производятся чаще всего на различные веб-порталы с целью вызвать перебои в их работоспособности [2, c. 215].

Таким образом, можно сделать вывод, что ключевыми принципами информационной безопасности являются такие характеристики как конфиденциальность, целостность и доступность информации.

1.3 Угрозы информационной безопасности

Угрозы информационной безопасности могут принимать совершенно различные формы. На 2018 год наиболее серьёзными, по мнениям экспертов, являются угрозы, которые связаны с потерей персональных данных, заражением устройств вредоносными программами. Причем, среди подобных устройств являются как персональные компьютеры и мобильные устройства, так и решения из сферы LoT, которая в последние годы набирает популярность, но при этом устройства LoT, по сообщениям специалистов, еще не имеют достаточно качественной защиты и подвергаются нападениям достаточно часто.

Стимулами для злоумышленников к совершению противоправных действий является также и то, что многие инструменты для взлома становятся более доступными и менее дорогостоящими, делая преступления в области информационной безопасности массовым явлением [7].

Организации также активно внедряют LoT, устройства которого зачастую спроектированы без учёта требований к промышленному использованию, что открывает дополнительные возможности для атаки. К тому же, быстрое развитие и усложнение Интернета вещей снижает его прозрачность, что в сочетании с нечётко определёнными правовыми нормами и условиями позволяет организациям использовать собранные устройствами персональные данные своих клиентов по собственному усмотрению без их ведома.

В настоящее время активно ведется работа по усовершенствованию безопасности подобных устройств, разрабатываются соответствующие стандарты, внедряются специальные технологии, которые смогут противодействовать нападениям на системы Интернета вещей. Однако работы в данной области еще много[10].

Кроме того, для самих организаций проблематично отслеживать, какие из собранных устройствами Интернета вещей данных передаются без их ведома. Угроза цепей поставок состоит в том, что организации, как правило, передают своим поставщикам разнообразную ценную и конфиденциальную информацию, в результате чего теряют непосредственный контроль над ней. Таким образом, значительно возрастает риск нарушения конфиденциальности, целостности или доступности этой информации. К тому же, всё новые и новые требования регуляторов значительно осложняют управление жизненно-важными информационными активами организаций.

Например, введённый в действие в 2018 году в Евросоюзе Общий регламент защиты персональных данных требует от любой организации в любой момент времени на любом участке собственной деятельности или цепи поставок, продемонстрировать, какие персональные данные и для каких целей имеются у организации в наличии, каким образом они обрабатываются, хранятся и защищаются. Причём данная информация должна быть предоставлена не только в ходе проверок уполномоченными органами, но и по первому требованию частного лица — владельца этих данных.

Соблюдение такого регламента требует отвлечения значительных бюджетных средств и ресурсов от других задач информационной безопасности организации. И хотя упорядочение обработки персональных данных предполагает в долгосрочной перспективе улучшение информационной безопасности, в краткосрочном плане риски организации заметно возрастают [3, c. 184].

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

Фишинг представляет собой мошенническую схему завладения конфиденциальной информацией (например, учётной записью, паролем или данными кредитной карты). Обычно пользователя Интернета стараются заманить на мошеннический веб-сайт, неотличимый от оригинального сайта какой-либо организации (банка, интернет-магазина, социальной сети и т. п.). Как правило, такие попытки совершаются с помощью массовых рассылок поддельных электронных писем якобы от имени самой организации, содержащих ссылки на мошеннические сайты.

Современные организации, включая как государственные структуры, контролирующие органы, так и коммерческие предприятия различного масштаба деятельности постоянно собирают персональную информацию о населении и непрерывно ее накапливают. Попадание такой информации в руки конкурентов или киберпреступников влечет для компаний и её клиентов далеко идущие юридические последствия, серьезные финансовые потери и подрыв репутации. Впрочем, сливы информация в настоящее время происходят постоянно. Постоянно появляются сообщения об утечках персональной информации на самых различных уровнях. В новостных лентах можно встретить значительное количество сообщений о различных утечках информации. И соответственно, несмотря на все меры, которые предпринимаются службами безопасностей компаний, взломщикам все-таки удается постоянно получать желаемое[7].

Здесь нужно отметить то, что далеко не всегда идет речь именно о компьютерной информации, поскольку конфиденциальная информация зачастую утекает благодаря действиям сотрудников, которые имеют к ней доступ. И в подобных случаях речь идет скорее об информационной безопасности в целом, о том, каким образом устроены корпоративные процессы. Небезызвестный случай с Эдвардом Сноуденом свидетельствует о том, что даже самая засекреченная информация может стать достоянием общественности, если какой-либо сотрудник решит ее разгласить. Конечно, это не самый уместный пример, поскольку Сноуден, скорее, положительный персонаж. Однако, говоря о том, насколько защищенной должна быть информация, следует также учитывать и человеческий фактор.

Следует также отметить то, что с точки зрения бизнеса информационная безопасность должна быть сбалансирована относительно финансовых расходов; экономическая модель Гордона-Лоба описывает математический аппарат для решения данной задачи [5, c 260]. При этом основными способами противодействия угрозам информационной безопасности или информационным рискам являются:

  • Уменьшение рисков — внедрение мер безопасности и противодействия для устранения уязвимостей и предотвращения угроз;
  • Перераспределение — перенос затрат, связанных с реализацией угроз на третьих лиц: страховые или аутсорсинговые компании;
  • Наличие резервов— формирование финансовых резервов в случае, если стоимость реализации мер безопасности превышает потенциальный ущерб от реализации угрозы;
  • Отказ от рисков — отказ от чрезмерно рискованных действий

Таким образом, следует сделать вывод, что существует достаточно значительное количество угроз информационной безопасности как операционных систем, так и компьютерных систем в целом.

2. Анализ методов и инструментов взлома операционных систем

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

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

В общем случае программное обеспечение любой универсальной компьютерной системы состоит из трех основных компонентов: операционной системы, сетевого программного обеспечения (СПО) и системы управления базами данных (СУБД). Соответственно, все попытки взлома защиты компьютерных систем можно разделить на три группы:

  • нападения на уровне операционной системы;
  • нападения на уровне сетевого программного обеспечения;
  • нападенияна системы управления базами данных.

Вначале рассмотрим атаки на системы управления базами данных. Здесь следует отметить то, что защита СУБД является одной из самых простых задач. Обусловлено это тем, что СУБД имеют строго внутреннее устройство, и любые операции над составными элементами СУБД задаются достаточно четко. Существует четыре основных действия — поиск, вставка, удаление и замена элемента. Существуют также и другие операции. Но они являются вспомогательными и применяются несколько реже. Наличие строгой структуры и четко определенных операций делает более простым решение вопроса защиты СУБД. Следует отметить, что обычно злоумышленники предпочитают взламывать защиту компьютерной системы на уровне операционной системы и получать доступ к файлам СУБД посредством самой операционной системы. Однако в случае, когда используется СУБД, не имеющая достаточно надежных защитных механизмов, или плохо протестированная версия СУБД, содержащая ошибки, или если при определении политики безопасности администратором СУБД были допущены ошибки, то становится вполне вероятным преодоление злоумышленником защиты, реализуемой на уровне СУБД.

Для того, чтобы избежать ситуаций с нападениями на СУБД, следует регулярно обновлять программное обеспечение, устанавливать актуальные версии СУБД с исправленными уязвимостями, которые практически постоянно обнаруживаются и в дальнейшем выпускаются новые версии программ с исправлениями.

Кроме того, имеются ряд специфических сценариев нападения на СУБД, для защиты от которых требуется применять специальные методы. В первом случае результаты арифметических операций над числовыми полями СУБД округляются в меньшую сторону, а разница суммируется в некоторой другой записи СУБД (обычно данная запись содержит личный счет злоумышленника в банке, а округляемые числовые поля относятся к счетам других клиентов банка). Во втором случае злоумышленник получает доступ к полям записей СУБД, для которых доступной является только статистическая информация. Смысл следующегонападения на СУБД в том, чтобы специальным образом сформулировать запрос, чтобы множество записей, для которого собирается статистика, состояло только из одной записи[8].

Атаки на уровне операционной системы

Защищать операционную систему, в отличие от СУБД, гораздо сложнее. Дело в том, что внутренняя структура современных операционных систем чрезвычайно сложна, и поэтому соблюдение корректной политики безопасности является значительно более трудной задачей. На бытовом уровне существует мнение, что самые эффективные атаки на операционные cистемы могут быть организованы только с помощью крайне сложных инструментов, основанных на самых последних достижениях науки и техники, а злоумышленник должен быть программистом высочайшей квалификации. Однако существуют различные способы нападения и зачастую они могут быть достаточно простыми[7].

Вполне очевидно, что пользователям следует быть в курсе последних изменений в области информационных технологий. Разумеется, что в реальности далеко не все поступают подобным образом. И поэтому зачастую искусство злоумышленника состоит далеко не в том, чтобы найти подход к атаке на любую самую сложную компьютерную защиту. Очень часто достаточно суметь найти слабое место в конкретной системе защиты, которая далеко не всегда может использоваться корректно. При этом простейшие методы взлома оказываются вполне подходящим, поскольку пользователи операционных систем часто совершают опасные действия из-за того, что не знают их последствий и не имеют элементарных навыков в области информационной безопасности.

Успех реализации того или иного алгоритма хакерской атаки на практике в значительной степени зависит от архитектуры и конфигурации конкретной операционной системы, являющейся объектом данного нападения. Однако существуют нападения, которым может быть подвергнута абсолютно любая операционная система. Разумеется, что подобные схемы больше зависят не от изменения поведения самой операционной системы, а от того, каким образом пользователи ей пользуются[5, c. 398]. Среди подобных атак можно отметить следующие варианты:

  • кража пароля (например, системный администратор может записывать пароли на стикерах, наклеенных на монитор и оставлять компьютер, на котором контроллер домена без присмотра);
  • слежение за действиями пользователя, когда тот вводит пароль, дающий право на работу с операционной системой (даже если во время ввода пароль не высвечивается на экране дисплея, злоумышленник может подсмотреть, пароль, просто следя за перемещением пальцев пользователя по клавиатуре), либо могут использоваться клавиатурные шпионы (например, ранее существовали распространенные атаки на банкоматы, когда на них размещались камеры, либо накладки на клавиатуру, считывающие нажатия клавиш);
  • получение пароля из файла, в котором этот пароль был сохранен пользователем, не желающим затруднять себя вводом пароля при подключении к сети (как правило, такой пароль хранится в файле в незашифрованном виде);
  • кража внешнего носителя парольной информации (флеш-накопителя или электронного ключа, на которых может быть сохранен пароль пользователя, предназначенный для входа в операционную систему);
  • полный перебор всех возможных вариантов пароля;
  • подбор пароля по частоте встречаемости символов и биграмм, с помощью словарей наиболее часто применяемых паролей, с привлечением знаний о конкретном пользователе — его имени, фамилии, номера телефона, даты рождения и т. д., с использованием сведений о существовании эквивалентных паролей, при этом из каждого класса опробуется всего один пароль, что может значительно сократить время перебора;
  • сканирование жестких дисков компьютера (злоумышленник последовательно пытается обратиться к каждому файлу, хранимому на жестких дисках компьютерной системы; если объем дискового пространства достаточно велик, можно быть вполне уверенным, что при описании доступа к файлам и каталогам администратор допустил хотя бы одну ошибку, в результате чего все такие каталоги и файлы будут прочитаны злоумышленником; для сокрытия следов злоумышленникможет организовать эту атаку под чужим именем: например, под именем пользователя, пароль которого известен злоумышленнику);
  • сборка "мусора" (если средства операционной системы позволяют восстанавливать ранее удаленные объекты, злоумышленник может воспользоваться этой возможностью, чтобы получить доступ к объектам, удаленным другими пользователями: например, просмотрев содержимое их "мусорных" корзин);
  • превышение полномочий (используя ошибки в программном обеспечении или в администрировании операционной системы, злоумышленник получает полномочия, превышающие полномочия, предоставленные ему согласно действующей политике безопасности);
  • отказ в обслуживании (целью данного вида атак является частичный или полный вывод из строя операционной системы);
  • захват ресурсов (вредоносная программа производит захват всех имеющихся в операционной системе ресурсов, а затем входит в бесконечный цикл);
  • бомбардировка запросами (вредоносная программа постоянно направляет операционной системе запросы, реакция на которые требует привлечения значительных ресурсов компьютера);
  • использование ошибок в программном обеспечении или администрировании.

В случае, когда в программном обеспечении компьютерной системы нет ошибок и ее администратор строго соблюдает политику безопасности, рекомендованную разработчиками операционной системы, то атаки всех перечисленных пики, малоэффективны. Дополнительные меры, которые могут быть предприняты для повышения уровня безопасности, в значительной степени зависят от конкретной операционной системы, под управлением которой работаем данная компьютерная система [6, c. 548].

Тем не менее, приходится признать, что вне зависимости от предпринятых мер полностью устранить угрозу взлома компьютерной системы на уровне операционной системы невозможно. Поэтому политика обеспечения безопасности должна проводиться так, чтобы, даже преодолев защиту, создаваемую средствами операционной системы, злоумышленник не смог нанести серьезного ущерба [10].

Также рассмотрим атаки на уровне сетевого программного обеспечения.

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

  • прослушивание определенного сегмента локальной сети (в пределах одного и того же сегмента локальной сети любой подключенный к нему компьютер в состоянии принимать сообщения, адресованные другим компьютерам сегмента (при соответствующей архитектуре), и соответственно, если компьютер злоумышленника подсоединен к некоторому сегменту локальной сети, то ему становится доступен весь информационный обмен между компьютерами этого сегмента);
  • перехват сообщений на маршрутизаторе (если злоумышленник имеет привилегированный доступ к сетевому маршрутизатору, то он получает возможность перехватывать все сообщения, проходящие через этот маршрутизатор, и, хотя тотальный перехват невозможен по причине чрезмерного объема, достаточно привлекательным для злоумышленника является выборочный перехват сообщений, содержащих пароли пользователей и их электронную почту, вполне очевидно, что сейчас большинство сайтов используют TSL шифрование и перехват данных ничем не поможет, но на внутренних сервисах вполне возможно отсутствие сертификатов и использование протокола HTTP);
  • создание подменного маршрутизатора (путем отправки в сеть сообщений специального вида злоумышленник добивается, чтобы его компьютер стал маршрутизатором сети, после чего получает доступ ко всем проходящим через него данным);

Однако нужно отметить, что в настоящее время безопасность компьютерных сетей постоянно совершенствуется. Создается программное обеспечение для защиты сетей. В качестве примера можно привести продукты VipNet custom компании «Инфотекс», либо аналогичные решения. Постоянно совершенствует сетевое оборудование. Протоколы передачи данных также постепенно становятся более совершенными[11].

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

  • максимальное ограничение размеров компьютерной сети (чем больше сеть, тем труднее ее защитить);
  • изоляция сети от внешнего мира (по возможности следует ограничивать физический доступ к компьютерной сети извне, чтобы уменьшить вероятность несанкционированного подключения злоумышленника);
  • шифрование сетевых сообщений (тем самым можно устранить угрозу перехвата сообщений, правда, за счет снижения производительности сетевого программного обеспечения и роста накладных расходов);
  • электронная цифровая подпись сетевых сообщений (если все сообщения, передаваемые по компьютерной сети, снабжаются электронной цифровой подписью, и при этом неподписанные сообщения игнорируются, то можно забыть про угрозу навязывания сообщений и про большинство угроз, связанных с отказом в обслуживании). Кроме того, становится невозможным расшифровать перехваченные данные, если используются сертификаты с достаточно надежным шифрованием;
  • применение брандмауэров. Современные брандмауэры располагают значительным количеством функций и могут настраивать достаточно эффективно для того, чтобы защищать компьютерные системы от вредоносного программного обеспечения.

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

2.2 Инструменты взлома операционных систем

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

Среди таких операционных систем наиболее известны Kali Linux, Arch Linux, Parrot Security OS и т.д. Большинство сборок для проведения тестов на проникновение организованы на базе операционных систем Linux. Впрочем, это и не удивительно, так как Windows, имея закрытую часть операционной системы, мало кем рассматривается в качестве подходящей операционной системы для подобных целей. Взломщики, в большинстве случаев, предпочитают операционные системы на базы именно ядра Linux, поскольку в данном случае они могут обеспечить большую анонимность и контролируемость своей деятельности [9].

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

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

В качестве практического примера можно привести фреймворк masscan, с помощью которого можно сканировать диапазоны ip-адресов через сеть интернет на предмет наличия открытых портов на каких-либо хостах, чтобы затем подбирать пароли к административным панелям данных устройств и в дальнейшем внедрять вредоносный код в операционные системы, за которыми они закреплены. Как правило, от подобных массовых атак можно защититься заранее, если корректно настраивать имеющееся оборудование[3, c 325].

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

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

В целом же, можно сделать вывод, что использование каких-либо определенных инструментов для взлома компьютерных систем зависит от различных факторов, среди которых целесообразность применения тех или иных инструментов, возможности злоумышленников, особенности архитектуры, которую требуется атаковать. Одни из таких инструментов являются общедоступными, другие разрабатываются индивидуально под конкретные цели.

3. Методы обнаружения попыток взлома операционной системы

3.1 Обнаружение вторжений в систему

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

Прежде всего, отметим следующее. Изменения в настройках, файлах и атрибутах различных файлов являются обычным делом для IT-отделов. Но среди огромного количества практически постоянных модификаций могут появляться те, которые оказывают непосредственное влияние на целостность файлов и настроек. Эти изменения также способны снижать уровень безопасности защищаемой системы, а в отдельных ситуациях могут послужить основными индикаторами вторжения в систему [9]. Список элементов, которые отслеживаются на предмет непредвиденных изменений в файлах или настройках, включает в себя:

  • Учетные данные пользователей и администраторов
  • Настройки прав доступа и прочие настройки безопасности
  • Содержимое определенных файлов
  • Ключевые атрибуты и размер файлов и директорий
  • Хэш-суммы
  • Показатели настроек (осуществляется контроль за различными параметрами)

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

  • CimTrak
  • OSSEC
  • Samhain
  • Tripwire
  • Qualys
  • nCircle
  • Verisys
  • AIDE [4]

На рисунке 1 можно увидеть панель монитора, с помощью которой проверяется целостность файлов nCircle

https://www.securitylab.ru/analytics/o-1.png

Рисунок 1

Следует отметить, что в данной ситуации далеко не все в порядке. Если рассмотреть показанный ниже пример, то станет ясно, что не так на рисунке 2.

https://www.securitylab.ru/analytics/o-2.png

Рисунок 2

В данном случае атакующий создает в операционной системе папку с названием '. '. В нормальной ситуации команда ls –a покажет только одну директорию с подобным названием. Здесь же можно увидеть две таких папки, что должно послужить сигналом проявить более пристальное внимание. В скрытую директорию можно попасть с помощью команды cd '. ', добавив после точки один пробел.

Очень часто эти скрытые папки находятся в хорошо известных местах наподобие /root, /var/www, /home и т. д.

Дополнительные учетные записи системы. Приниматься во внимание должна каждая учетная запись системы. Если в системе существуют аккаунты, о принадлежности которых никто не знает, это может быть сигналом вторжения в систему. Пример дополнительного аккаунта DBNET показан на рисунке 3.

https://www.securitylab.ru/analytics/o-3.png

Рисунок 3

Далее рассмотрим метки времени. Метка времени представляет собой момент, в который событие было зафиксировано компьютером, а не момент, в который оно происходило. Во многих случаях разница может быть совершенно не значительной: время фиксации события (в журнале событий) близко ко времени совершения события[9].

Эти данные обычно представлены в определенном формате, который позволяет легко сравнить две различные записи и отследить изменения в течение какого-либо времени. Практика согласованного записывания меток времени вместе с реальными данными носит название таймс темпинга.

Предположим, что существует множество папок и исполняемых файлов в папке C:/Windows/System32, которые имеют имеют метки времени, близкие ко времени инсталляции операционной системы, но один из файлов значительно отличается по времени создания. И это может свидетельствовать о проблеме. Очевидно, что данный исполняемый файл может быть просто дополнительным программным обеспечением, которое установлено в систему позднее, но также может быть вредоносным ПО, которое располагается в данной директории. Вредоносные файлы Windows часто размещаются в данной папке. На рисунке 4 видно, что месяц модификации одной папки отличается от месяца модификации остальных[8].

https://www.securitylab.ru/analytics/o-4.png

Рисунок 4

Следующий важный момент касается скрытых файлов и папок. Скрытый файл представляет собой файл, который обычно не видно при просмотре содержимого директории, в которой он находится. Аналогично, скрытая папка – папка, которая обычно не видна, при просмотре содержащей ее папки. Файл является именованной коллекцией связанной информации, которая представляется пользователю как единый, неразрывный блок данных, располагающийся в некотором хранилище. Хранилищами являются компьютерные устройства или носители информации, содержащие данные относительно продолжительный период времени (годы или десятилетия), например, жесткие диски, CDROM или магнитные полосы. Этим они отличаются от оперативной памяти, которая способна сохранять данные лишь до тех пор, пока она имеет источник электрического питания.

Скрытые элементы UNIX-подобной ОС достаточно легко отличить от тех, которые не скрыты, поскольку их имена начинаются с точки. В UNIX-подобных операционных системах точки могут появляться в любом месте имени файла, папки или ссылки и произвольное число раз. Однако, особое значение они имеют только для маркировки скрытых файлов или папок.

В операционных системах Microsoft Windows скрытость объекта файловой системы является атрибутом так же, как и свойства "только чтение" или "системный" (а именно, файл, критичный для работы операционной системы). Изменение видимости подобных элементов является многоэтапной процедурой.

В UNIX-подобных операционных системах объекты файловой системы имеют больше атрибутов, чем в операционных системах Microsoft Windows. Атрибуты включают систему разрешений, которые определяют, какие пользователи имеют доступ на чтение, запись и выполнение к каждому из объектов файловой системы. Однако, видимость объекта атрибутами не задается. Это лишь неявное свойство, которое легко меняется путем добавления точки в начало имени объекта или, наоборот, ее удаления.

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

Сделав объекты файловой системы скрытыми, можно также защитить их от случайного подглядывания. Хотя скрытые файлы и папки легко сделать видимыми, большая часть пользователей даже не знают, что эти файлы и папки существуют (ну и не надо).

Отслеживание запущенных в системе процессов. Что не так со списком запущенных процессов Linux-системы на рисунке 5?

https://www.securitylab.ru/analytics/o-5.png

Рисунок 5

В данном случае следует рассмотреть процесс ./httpd. Точка и слеш в начале имени процесса свидетельствуют о том, что он был запущен непосредственно из директории. Процессы на сервере обычно не запускаются непосредственно из своих директорий. Атакующий запустил процесс и пытается спрятать его, путем переименования в ту программу, которая обычно присутствует на серверах.

Файлы со странными именами. Вредоносное ПО часто создает файлы со странными названиями. Пример таких названий для систем Windows показан на рисунке 6:

https://www.securitylab.ru/analytics/o-6.png

Рисунок 6

На изображении можно увидеть, что запущен файл k4hkjhl4kkl4hj.exe. Это является первым признаком того, что в системе происходят подозрительные процессы. Однако, не стоит путать с вредоносными файлами обновления операционной системы, а также некоторые другие типы файлов со случайным набором символов в наименовании [6, c. 412].

Руткит представляет собой скрытую вредоносную программу, которая создается для того, чтобы скрывать присутствие в системе определенных вредоносных программ и процессов от обычных методов обнаружения, а также для получения постоянного привилегированного доступа к операционной системе. Непосредственно сам термин «руткит» происходи тот двух слов "root" (название привилегированной учетной записи в системах семейства UNIX, из которой можно производить любые действия в системе) и "kit" (которое обозначает набор программных компонентов, входящих в состав различных пакетов программ). Термин руткит обладает негативной коннотацией из-за его связи с вредоносным программным обеспечением [6, c 320].

Обнаружение рутки товявляется крайне непростой задачей, поскольку руткит может нарушать работу программного обеспечения, предназначенного для его обнаружения. Методы обнаружения руткитов включают применение альтернативных и доверенных операционных систем, анализ поведения, сигнатурное сканирование, разностное сканирование и анализ дампов памяти. Удаление руткита может быть сложным или практически невозможным, особенно, когда руткит располагается в ядре. Единственным решением проблемы в таком случае может быть переустановка ОС. Для удаления руткитов прошивок (или ромкитов) может потребоваться соответствующее оборудование или даже замена какой-либо аппаратной части устройства.

Руткиты уровня ядра способны запускаться с наивысшими правами в операционной системе (в нулевом кольце), делают это они путем добавления кода или замены участков кода ядра операционной системы и связанных с ним драйверов устройств. Большая часть операционных систем поддерживают запуск драйверов устройств в режиме ядра, то есть, с привилегиями самой операционной системы. Поэтому многие руткиты уровня ядра создаются как драйверы устройств или загружаемых модулей, например, загружаемые модули ядра в Linux или драйвера устройств в Windows. Данный класс руткитов располагает неограниченным доступом к операционной системе, но сложнее всего в написании. Сложность порождает ошибки, а любые ошибки в коде, работающем на уровне ядра, серьезно влияют на стабильность системы, что приводит к обнаружению руткита. Один из первых широко известных руткитов был разработан для Windows NT 4.0 и опубликован в журнале Phrack в 1999 году[4, c 165]. Сейчас он интересен только в академических целях и представляет только исторический интерес.

Операционные системы в процессе своего развития пытаются противостоять угрозе со стороны руткитов уровня ядра. Например, в 64-битных версиях Windows реализовано принудительное подписывание драйверов уровня ядра, чтобы затруднить запуск зловредного кода с наивысшими привилегиями.

Руткиты, работающие в режиме пользователя. Подобные вредоносные программы запускаются в кольце 3 одновременно с другими приложениями в качестве пользовательских, а не системных процессов. Они имеют значительное количество возможных векторов перехвата и модификации стандартного поведения прикладных программных интерфейсов (API). Некоторые руткиты внедряют динамическую библиотеку (вроде .dll файла Windows или .dylib файла Mac OS X) в другие процессы и, тем самым, могут запускаться внутри любого другого процесса. Другие, обладая достаточными правами, просто перезаписывают память целевого приложения. Вот некоторые механизмы внедрения:

  • Использование предоставляемых производителем расширений приложения. Например, Windows Explorer имеет открытые интерфейсы, которые позволяют третьим лицам расширять его функционал
  • Перехват сообщений
  • Отладчики
  • Эксплуатация уязвимостей
  • Перехват функций или наложение патчей на распространенный API, например, для скрытия запущенного процесса или файла, расположенного в файловой системе

Для поиска руткитов существуют различные программы, запускающиеся на работающей системе. Пример такой программы, "rootkithunter", показан на рисунке 7.

https://www.securitylab.ru/analytics/o-7.png

Рисунок 7

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

Корреляция данных. Корреляция данных представляет собой технику, используемую в информационной безопасности с целью того, чтобы сложить все отдельные части события вместе и сделать соответствующий вывод. Например, если обнаружено, что в операционная система подвергалась попыткам входа по SSH, и после многочисленных неудачных попыток последовал один успешный вход. Это свидетельствует о том, что на систему была совершена атака методом «грубой силы», которая в итоге успешно закончилась. Все технологии могут только обнаружить вторжения, однако находят их отнюдь не технологии, а люди. Устройства и сенсоры обычно хороши для фиксации негативных событий, однако несколько хороших событий могут соединиться в одно плохое. [5, c 311].

Другие подозрительные вещи, происходящие в системе

Какие прочие симптомы указывают на возможную компрометацию системы? Ниже приведены несколько примеров:

Файлы журнала полностью отсутствуют.

Почему их нет? Начинающие злоумышленники удаляют журнал, тогда как профессионалы изменяют его, убирая лишь данные о своем IP-адресе, своих командах и манипуляциях с системой.

Сетевой интерфейс находится в неразборчивом режиме

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

В сетях IEEE 802 вроде Ethernet, tokenring и беспроводных сетях IEEE 802.11, а также FDDI-сетях каждый кадр включает адрес назначения (MediaAccessControl или MAC-адрес). В разборчивом режиме, когда сетевая карта получает кадр, она обычно отбрасывает его, если он предназначен не для MAC-адреса данной карты и не является широковещательным или мультикастовым кадром. В неразборчивом режиме карта позволяет прохождение любых кадров, таким образом позволяя компьютеру считывать кадры, предназначенные для других машин и сетевых устройств.

Многие операционные системы для включения неразборчивого режима требуют привилегий суперпользователя. Немаршрутизирующий узел в неразборчивом режиме обычно может лишь отслеживать лишь трафик от других узлов внутри одного и того же широковещательного домена (для Ethernet и IEEE 802.11) или кольца (для tokenring и FDDI). Компьютеры, подключенные к одному и тому же сетевому хабу удовлетворяют данному требованию, и именно по этой причине для борьбы с неразборчивым режимом используются более сложные устройства, а именно коммутаторы. Маршрутизаторы могут отслеживать весь трафик, который они маршрутизируют.

Неразборчивый режим часто используется для диагностики проблем сетевых соединений. Существуют программы, которые используют данную возможность, чтобы показать пользователю все данные, передаваемые по сети. Некоторые протоколы вроде FTP или Telnet передают данные и пароли открытым текстом, без шифрования, и сетевые сканеры могут видеть эти данные. Таким образом, пользователям стоит избегать небезопасных протоколов вроде telnet и использовать более надежные вроде SSH.

Обнаружение

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

Примером подобного метода обнаружения может быть отправка эхо-запросов ICMP (попросту - пинг) на некорректный MAC-адрес но правильный IP-адрес. Если сетевой адаптер работает в нормальном режиме, он отбросит данный кадр и IP-стек никогда не увидит его и, тем более, на него не ответит. Если же адаптер находится в неразборчивом режиме, он передаст содержимое кадра на дальнейшую обработку, и протокол IP-стека (для которого MAC-адрес не имеет значения) ответит на него, как и на любой другой пинг. Снифер может предотвратить эту ситуацию путем настройки своего файрвола на блокирование ICMP-трафика [18].

Таинственные открытые порты и службы

Все открытые порты и запущенные службы стоит принимать во внимание. Например, если сервис запущен, но непонятно, что он делает и почему запущен – стоит начать расследование[7].

Таким образом, следует сделать вывод, что существует достаточно значительное количество методов обнаружения попыток вторжений в операционные системы и обнаружения последствий взлома. Количество таких методов также велико, как и количество способов проникнуть в операционную систему и навредить ей. В рамках работы мы рассмотрели только некоторые из подобных способов, однако существуют и другие.

3.2 Системы обнаружения вторжений

В настоящее время системы обнаружения и предотвращения вторжений являются необходимым элементом защиты от атак. Основное предназначение подобных систем заключается в выявлении событий попыток несанкционированного доступа и на основе полученных данных принятие соответствующих мер противодействия. Среди подобных мер может быть информирование специалистов ИБ-служб о фактах вторжения, обрывах соединения и проверка настроек оборудования для блокирования дальнейших действий злоумышленника, то есть будет реализована более строгая защита от хакерских атак и вредоносных программ[6, c 230].

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

  • Запись информации по событиям. Обычно информация хранится локально, но может быть отправлена в любую централизованную систему сбора логов или SIEM-систему;
  • Уведомление администраторов безопасности об инцидентах ИБ. Такой вид уведомления называется alert, и может осуществляться по нескольким каналам: email, SNMP-трапы, сообщения системного журнала, консоль управления системы IDS. Возможна также программируемая реакция с использованием скриптов.
  • Генерация отчетов. Отчёты создаются с целью суммировать всю информацию по запрашиваемому событию (событиям).

Но кроме очевидных плюсов эти системы имеют своим минусы. Например, IPS не всегда может точно определить инцидент ИБ, либо ошибочно принять за инцидент нормальное поведение трафика или пользователя. В первом варианте принято говорить о событии false negative, во втором варианте говорят о событии false positive. Следует иметь в виду, что невозможно полностью исключить их возникновение, поэтому организация в каждом случае может самостоятельно решить риски какой из двух групп следует либо минимизировать, либо принять[4, c. 348].

Существуют различные методики обнаружения инцидентов с помощью технологий IPS. Большинство реализаций IPS используют сумму данных технологий для того, чтобы обеспечить более высокую степень детектирования угроз.

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

Заключение

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

Информационная безопасность представляет собой достаточно широкое понятие, в которое включаются различные аспекты обеспечения безопасного использования, хранения и передачи информации.

Ключевыми принципами информационной безопасности являются такие характеристики как конфиденциальность, целостность и доступность информации.

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

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

Использование каких-либо определенных инструментов для взлома компьютерных систем зависит от различных факторов, среди которых целесообразность применения тех или иных инструментов, возможности злоумышленников, особенности архитектуры, которую требуется атаковать.

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

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

Список информационных источников

    1. Кенин, А. М. Самоучитель системного администратора / А. М. Кенин, Д. Н. Колисниченко. — 4-е изд., перераб. и доп. — СПб.: БХВ-Петербург, 2016. — 528 с
    2. Колисниченко Д. Н. К60 Командная строка Linux и автоматизация рутинных задач. — СПб.: БХВ-Петербург, 2012. — 352 с.
    3. Кофлер М. К74 Linux. Установка, настройка, администрирование. — СПб.: Питер, 2014. — 768 с
    4. Таненбаум Э., Остин Т. Архитектура компьютера. 6-е изд. — СПб.: Питер, 2013. — 816 с
    5. Hacking, 2nd Edition The Art of Exploitation by Jon Erickson. February 2008, 488 pp.,
    6. Самоучитель системного администратора. 4-е издание, переработанное и дополненное. Издательство БХВ-Петербург, Серия Системный администратор, Год издания 2016, ISBN 9785977536295, Кол-во страниц 528
    7. Электронный ресурс «securitylab» [Режим доступа: свободный] https://www.securitylab.ru/analytics/439714.php Дата посещения: 4.12.2019
    8. Электронный ресурс «Инвента» [Режим доступа: свободный] http://www.rhd.ru/docs/manuals/enterprise/RHEL-4-Manual/security-guide/ch-detection.html Дата посещения: 4.12.2019
    9. Электронный ресурс «itsecforu.ru» [Режим доступа: свободный] https://itsecforu.ru/2018/01/15/%D1%82%D0%BE%D0%BF-22-%D0%B8%D0%B7%D0%B1%D1%80%D0%B0%D0%BD%D0%BD%D1%8B%D1%85-%D0%BE%D0%BF%D0%B5%D1%80%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%BD%D1%8B%D1%85-%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC-%D0%B4%D0%BB/ Дата посещения: 4.12.2019
    10. Электронный ресурс «ХабраХабр» [Режим доступа: свободный] https://habr.com/ru/company/astralinux/blog/461691/ Дата посещения: 4.12.2019
    11. Электронный ресурс «Инфотекс» [Режим доступа: свободный]. https://infotecs.ru/ Дата посещения 4.12.2019