Реферат
Содержание
- Введение
- 1. Актуальность темы
- 2. Цель и задачи исследования, планируемые результаты
- 3. Анализ способов перехвата данных при клиент-серверном взаимодействии
- 4. Анализ существующих алгоритмов шифрования
- 4.1. Хеширование
- 4.2. Симметричное шифрование
- 4.3. Асимметричное шифрование
- Выводы
- Список источников
Введение
В современном мире информационная безопасность имеет очень большое значение. А с ростом использования компьютерных сетей, в частности Internet, вопрос обеспечения безопасности стал еще более актуален. Предприятиям необходимо обеспечивать безопасный доступ для сотрудников к сетевым ресурсам в любое время, для чего современная стратегия обеспечения сетевой безопасности должна учитывать ряд таких факторов, как:
- увеличение надежности сети;
- эффективное управление безопасностью;
- обеспечение защиты от постоянно эволюционирующих угроз и новых методов атак.
Обеспечение безопасности названо первой из пяти главных проблем Интернета в программе действий новой международной инициативы построения Интернета будущего. Сегодня же Интернет представляет собой эффективную, но вместе с тем и непредсказуемую среду, в которой содержится множество разнообразных угроз и опасностей. Среди рисков, которым подвергается компьютерная сеть: несанкционированный доступ к сетевым ресурсам (например, несанкционированное чтение файлов) и предотвращение атак, целью которых является отключение тех или иных предоставляемых сетью услуг. Предотвращение этих рисков является целью сетевой безопасности.
1. Актуальность темы
Cистема автоматизации приемной комиссии представляет собой целый комплекс программного обеспечения. Она позволяет облегчить и автоматизировать процедуру обработки персональных данных абитуриентов на всех этапах вступительной комиссии, начиная с подачи заявки и заканчивая процедурой зачисления, а так же оптимизировать документооборот. В период поступления свои документы подают тысячи и даже десятки тысяч абитуриентов. Система хранит персональные данные всех этих абитуриентов. Среди них не только информация об образовании, но и контактные и паспортные данные. Поэтому очень важно обеспечить целостность персональных данных, а так же защитить их от несанцкионированного доступа.
Cистема автоматизации приемной комиссии построена по принципу двухуровневой архитектуры "Клиент-сервер". Основной принцип технологии "клиент-сервер" заключается в разделении функций приложения на три группы:
- ввод и отображение данных для взаимодействия с пользователем;
- прикладные функции, характерные для данной предметной области;
- функции управления ресурсами (файловой системой, базой даных и т.д.)
Простейшие прикладные функции выполняются хранимыми процедурами на сервере, а более сложные реализуются на клиенте непосредственно в прикладной программе. Клиент и сервер взаимодействую друг с другом в сети Интернет или в любой другой компьютерной сети при помощи различных сетевых протоколов. В нашем случае в качестве протокола передачи данных используется протокол HTTP - протокол передачи гипертекста.
Так как при работе программного обеспечения приемной комиссии идет постоянный обмен данными между сервером и клиентом, очень важно обеспечить безопасность этого обмена и защитить персональные данные абитуриентов от несанкционированного доступа к ним.
2. Цель и задачи исследования, планируемые результаты
Основная цель работы - обеспеченить безопасность обмена данных и работы системы автоматизации приемной комиссии.
Для достижения данной цели необходимо выполнение следующих задач:
- Анализ возможных атак на серверную часть.
- Анализ способов перехвата данных при клиент-серверном взаимодействии.
- Анализ существующих алгоритмов шифрования.
- Разработка собственного способа защиты данных при клиент-серверном взаимодействии.
Исследование направлено на изучение способо обеспечения безопасности данных в сети
Результатом работы будет собственный алгоритм для безопасной передачи данных между клиентом и сервером в комплексе программного обеспечения системы автоматизации приемной комиссии.
3. Анализ способов перехвата данных при клиент-серверном взаимодействии
Для перехвата данных при клиент-серверном взаимодействии использется такой вид атаки, как Атака посредника (Man in the middle, MITM). Атака посредника, или атака «человек посередине» — вид атаки в криптографии, когда злоумышленник тайно ретранслирует и при необходимости изменяет связь между двумя сторонами, которые считают, что они непосредственно общаются друг с другом . Данная атака направлена на обход взаимной аутентификации или отсутствие таковой и может увенчаться успехом только тогда, когда злоумышленник имеет возможность выдать себя за каждую конечную точку либо оставаться незамеченным в качестве промежуточного узла [3].
Для проведения атаки вида MITM используются следующие методы:
- Сетевой снифинг
- Ложные запросы ARP
- Ложная маршрутизация
- Перехват TCP соединения [1]
Самым простым способом перехвата данных является сетевой снифинг. Для снифинга сетей Ethernet обычно используются сетевые карты, переведенные в режим прослушивания. Для прослушивания сети используют специальные программы - сетевые анализаторы. Примером такой программы является Wireshark [2].
Основой атаки «Отравление ARP КЭШа» является уязвимость в протоколе ARP. В отличие от таких протоколов как DNS, которые можно настроить на прием только защищенных динамических обновлений, устройства, использующие ARP, будут получать обновления в любое время. Такое свойство ARP-протокола позволяет любому устройству отправлять пакет ARP-ответа на другой узел, чтобы потребовать от него обновления ARP-кэша. Отправка ARP-ответа без генерирования каких-либо запросов называется отправкой самообращенных ARP. Если имеются злоумышленные намерения, результатом удачно направленных самообращенных ARP-пакетов, используемых таким образом, могут стать узлы, считающие, что они взаимодействуют с одним узлом, но в реальности они взаимодействуют с перехватывающим узлом взломщика
Для осуществления атаки ложной маршрутизации необходимо подготовить ложное ICMP Redirect Host сообщение, в котором указать конечный IP-адрес маршрута (адрес хоста, маршрут к которому будет изменен) и IP-адрес ложного маршрутизатора. Далее это сообщение передается на атакуемый хост от имени маршрутизатора. Для этого в IP-заголовке в поле адреса отправителя указывается IP-адрес маршрутизатора[5]. Возможны 2 случая: в первом случае атакующий находится в том же сегменте сети, что и цель атаки. Тогда в качестве IP-адреса нового маршрутизатора указывается либо свой IP-адрес, либо любой из адресов данной подсети. Во втором случае атакующий находится в другом сегменте относительно цели атаки. Тогда при отправке ложного ICMP Redirect сообщения, сам атакующий уже не сможет получить контроль над трафиком, так как адрес нового маршрутизатора должен находиться в пределах подсети атакуемого хоста. В этом случае получить доступ к передаваемой по каналу связи информации не получится. Но при этом нарушается работоспособность хоста[6].
Наиболее изощренной атакой перехвата сетевого трафика следует считать захват TCP-соединения (TCP hijacking), когда хакер путем генерации и отсылки на атакуемых хост TCP-пакетов прерывает текущий сеанс связи с хостом. Далее, пользуясь возможностями протокола TCP по восстановлению прерванного TCP-соединения, хакер перехватывает прерванный сеанс связи и продолжает его вместо отключенного клиента. Для идентификации TCP-пакета в TCP-заголовке существуют два 32-разрядных идентификатора, которые также играют роль счётчика пакетов — Sequence Number и Acknowledgment Number. В случае, если хост A хочет установить TCP-соединение с хостом B, происходит т. н. «тройное рукопожатие», в процессе которого хосты обмениваются следующими пакетами:
- хост A посылает хосту B пакет с установленным битом SYN и 32-битным значением ISSa в поле Sequence Number
- хост B отвечает хосту A пакетом с установленными битами SYN и ACK, 32-битным значением ISSb в поле Sequence Number, и значением (ISSa+1) в поле ACK
- хост A отвечает хосту B пакетом с установленным битом ACK, значением (ISSa+1) в поле Sequence Number, и значением (ISSb+1) в поле ACK.
- хост A отвечает хосту B пакетом с установленным битом ACK, значением (ISSa+1) в поле Sequence Number, и значением (ISSb+1) в поле ACK. В этом пакете включена вся полезная информация.
На этом пакете завершается установка соединения, поэтому в следующем пакете хост A передает хосту B полезную информацию
Рассмотрев схему установки соединения, описанную выше, можно заметить, что единственными идентификаторами, по которым конечный хост может различать TCP-абонентов и TCP-соединения, являются поля Sequence Number и Acknowledge Number. Таким образом, если атакующий определит значения ISSa и ISSb для данного соединения, то он сможет сформировать ложный TCP-пакет, который будет воспринят и обработан конечным хостом[7].
4. Анализ существующих алгоритмов шифрования
Для хранения важной информации в ненадёжных источниках и передачи её по незащищённым каналам связи применяется шифрование.
Шифрование — обратимое преобразование информации в целях сокрытия от неавторизованных лиц, с предоставлением, в это же время, авторизованным пользователям доступа к ней. Важной особенностью любого алгоритма шифрования является использование ключа, который утверждает выбор конкретного преобразования из совокупности возможных для данного алгоритма. Пользователи являются авторизованными, если они обладают определённым аутентичным ключом. В целом, шифрование состоит из двух составляющих — зашифровывание и расшифровывание.
С помощью шифрования обеспечиваются три состояния безопасности информации:
- Конфиденциальность.
- Целостность.
- Идентифицируемость.
Шифрование используется для скрытия информации от неавторизованных пользователей при передаче или при хранении.
Шифрование используется для предотвращения изменения информации при передаче или хранении.
Шифрование используется для аутентификации источника информации и предотвращения отказа отправителя информации от того факта, что данные были отправлены именно им.
Для того, чтобы прочитать зашифрованную информацию, принимающей стороне необходимы ключ и дешифратор (устройство, реализующее алгоритм расшифровывания). Идея шифрования состоит в том, что злоумышленник, перехватив зашифрованные данные и не имея к ним ключа, не может ни прочитать, ни изменить передаваемую информацию. Однако, с развитием криптоанализа, появились методики, позволяющие дешифровать закрытый текст без ключа. Они основаны на математическом анализе переданных данных.
Существуют три основные метода шифрования, используемых в большинстве систем сегодня: хеширование, симметричное и асимметричное шифрование.
1 Хеширование
Методика хеширования использует алгоритм, известный как хэш-функция для генерации специальной строки из приведенных данных, известных как хэш. В общем случае (согласно принципу Дирихле) нет однозначного с оответствия между хеш-кодом (выходными данными) и исходными (входными) данными. Возвращаемые хеш-функцией значения (выходные данные) менее разнообразны, чем значения входного массива (входные данные). Случай, при котором хеш-функция преобразует несколько разных сообщений в одинаковые сводки, называется «коллизией». Вероятность возникновения коллизий используется для оценки качества хеш-функций.
«Хорошая» хеш-функция должна удовлетворять двум свойствам:
- быстрое вычисление;
- минимальное количество «коллизий».
Идеальной хеш-функцией называется такая функция, которая отображает каждый ключ из набора S во множество целых чисел без коллизий. В математике такое преобразование называется инъективным отображением. Рассмотрим популярные алгоритмы хэширования.
Алгоритмы CRC16/32 (Циклический избыточный код) — контрольная сумма (не криптографическое преобразование). Алгоритм CRC базируется на свойствах деления с остатком двоичных многочленов. Значение CRC является по сути остатком от деления многочлена, соответствующего входным данным, на некий фиксированный порождающий многочлен. уществует множество стандартизированных образующих многочленов, обладающих хорошими математическими и корреляционными свойствами (минимальное число коллизий, простота вычисления)[8].
Алгоритмы MD2/4/5/6. Являются творением Рона Райвеста, одного из авторов алгоритма RSA. На данный момент данная хеш-функция не рекомендуется к использованию, так как существуют способы нахождения коллизий с приемлемой вычислительной сложностью.
Алгоритмы линейки SHA Широко распространенные сейчас алгоритмы. Идет активный переход от SHA-1 к стандартам версии SHA-2. SHA-2 — собирательное название алгоритмов SHA224, SHA256, SHA384 и SHA512. SHA224 и SHA384 являются по сути аналогами SHA256 и SHA512 соответственно, только после расчета свертки часть информации в ней отбрасывается. Использовать их стоит лишь для обеспечения совместимости с оборудованием старых моделей[9].
Bcrypt — адаптивная криптографическая хеш функция формирования ключа, используемая для защищенного хранения паролей. Для защиты от атак с помощью радужных таблиц bcrypt использует соль (salt); кроме того, функция является адаптивной, время её работы легко настраивается и её можно замедлить, чтобы усложнить атаку перебором.
2 Симметричное шифрование
Симметричные криптосистемы (также симметричное шифрование, симметричные шифры) (англ. symmetric-key algorithm) — способ шифрования, в котором для шифрования и расшифровывания применяется один и тот же криптографический ключ. До изобретения схемы асимметричного шифрования единственным существовавшим способом являлось симметричное шифрование. Ключ алгоритма должен сохраняться в тайне обеими сторонами. Алгоритм шифрования выбирается сторонами до начала обмена сообщениями. Сохранение ключа в секретности является важной задачей для установления и поддержки защищённого канала связи. В связи с этим, возникает проблема начальной передачи ключа (синхронизации ключей). Кроме того существуют методы криптоатак, позволяющие так или иначе дешифровать информацию не имея ключа или же с помощью его перехвата на этапе согласования. В целом эти моменты являются проблемой криптостойкости конкретного алгоритма шифрования и являются аргументом при выборе конкретного алгоритма. Симметричные, а конкретнее, алфавитные алгоритмы шифрования были одними из первых алгоритмов. Позднее было изобретено асимметричное шифрование, в котором ключи у собеседников разные.
3 Асимметричное шифрование
В системах с открытым ключом используются два ключа — открытый и закрытый, связанные определённым математическим образом друг с другом. Открытый ключ передаётся по открытому (то есть незащищённому, доступному для наблюдения) каналу и используется для шифрования сообщения и для проверки ЭЦП. Для расшифровки сообщения и для генерации ЭЦП используется секретный ключ.
Данная схема решает проблему симметричных схем, связанную с начальной передачей ключа другой стороне. Если в симметричных схемах злоумышленник перехватит ключ, то он сможет как «слушать», так и вносить правки в передаваемую информацию. В асимметричных системах другой стороне передается открытый ключ, который позволяет шифровать, но не расшифровывать информацию. Таким образом решается проблема симметричных систем, связанная с синхронизацией ключей.
Преимущества асимметричных шифров перед симметричными:
- не нужно предварительно передавать секретный ключ по надёжному каналу;
- только одной стороне известен ключ дешифрования, который нужно держать в секрете (в симметричной криптографии такой ключ известен обеим сторонам и должен держаться в секрете обеими);
- в больших сетях число ключей в асимметричной криптосистеме значительно меньше, чем в симметричной.
Недостатки алгоритма несимметричного шифрования в сравнении с симметричным:
- в алгоритм сложнее внести изменения;
- более длинные ключи;
- шифрование-расшифровывание с использованием пары ключей проходит на два-три порядка медленнее, чем шифрование-расшифрование того же текста симметричным алгоритмом;
- требуются существенно большие вычислительные ресурсы, поэтому на практике асимметричные криптосистемы используются в сочетании с другими алгоритмами;
Криптографические системы с открытым ключом в настоящее время широко применяются в различных сетевых протоколах, в частности, в протоколах TLS и его предшественнике SSL (лежащих в основе HTTPS), в SSH.
Выводы
В результате научно-исследовательской работы были собраны и изучены материалы по вопросам, связанным с темой магистерской работы.
Была рассмотрена возможность атаки на клиент-сервернок соединение с помощью Атаки посредника, а так же возможные методы ее проведение.
Были рассмотрены способы шифрования данных, рассмотрены 3 основных метода шифрования данных. Проанализирована их актуальность
Замечания
На момент написания данного реферата магистерская работа еще не завершена. Предполагаемая дата завершения: июнь 2019 г. Полный текст работы, а также материалы по теме могут быть получены у автора или его руководителя после указанной даты.
Список источников
- Перехват сетевых данных [Электронный ресурс]. — Режим доступа: http://alex-shtilev.narod.ru/diplom/glava16.html. — Заглавие с экрана. — (Дата обращения: 06.04.2019).
- Захват сетевых пакетов с помощью программы Wireshark [Электронный ресурс]. — Режим доступа: https://help.keenetic.com/hc/ru/articles/213965969-Захват-сетевых-пакетов-с-помощью-программы-Wireshark. — Заглавие с экрана. — (Дата обращения: 06.04.2019).
- Атака посредника [Электронный ресурс]. — Режим доступа: https://ru.wikipedia.org/wiki/Атака_посредника. — Заглавие с экрана. — (Дата обращения: 06.04.2019).
- Understanding Man-in-the-Middle Attacks - ARP Cache Poisoning (Part 1) [Электронный ресурс]. — Режим доступа: http://techgenix.com/Understanding-Man-in-the-Middle-Attacks-ARP-Part1/ . — Заглавие с экрана. — (Дата обращения: 06.04.2019).
- Навязывание хосту ложного маршрута с использованием протокола ICMP с целью создания в сети Internet ложного маршрутизатора [Электронный ресурс]. — Режим доступа: http://citforum.ru/internet/attack/c44.shtml . — Заглавие с экрана. — (Дата обращения: 06.04.2019).
- Understanding ICMP Redirect Messages [Электронный ресурс]. — Режим доступа: https://www.cisco.com/c/en/us/support/docs/ios-nx-os-software/nx-os-software/213841-understanding-icmp-redirect-messages.html . — Заглавие с экрана. — (Дата обращения: 06.04.2019).
- TCP hijacking [Электронный ресурс]. — Режим доступа: https://ru.wikipedia.org/wiki/TCP_hijacking . — Заглавие с экрана. — (Дата обращения: 06.04.2019).
- Брюс Шнайер, Прикладная криптография, 2-е изд. 2012. — 815 с.
- Алфёров А.П., Зубов А.Ю., Кузьмин А.С., Черемушкин А.В. Основы криптографии , 2-е изд., испр. и доп. — М.. Гелиос АРВ, 2002. — 480 с., ил
- Шифрование [Электронный ресурс]. — Режим доступа: https://ru.wikipedia.org/wiki/Шифрование . — Заглавие с экрана. — (Дата обращения: 06.04.2019).