Разработка программного средства для обнаружения и устранен (1209811)
Текст из файла
Министерство транспорта Российской Федерации
Федеральное агентство железнодорожного транспорта
ФГБОУ ВО «ДАЛЬНЕВОСТОЧНЫЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ПУТЕЙ СООБЩЕНИЯ»
| Кафедра “Информационные технологии и системы” |
| К ЗАЩИТЕ ДОПУСТИТЬ |
| Заведующий кафедрой |
| ____________ Анисимов В.В. |
| "____"__июня_ 2016 г. |
| Разработка программного средства для обнаружения и устранения уязвимостей сетевых ресурсов |
| Бакалаврская работа |
| БР 10.03.01.24Б ПЗ |
| Студент гр. 24Б | Б.Л. Белов |
| Руководитель доцент, к.ф.-м.н, доцент | Е.В. Карачанская |
| Нормоконтроль доцент, к.п.н., доцент | В.И. Шестухина |
Хабаровск – 2016
Abstract
The aim of this thesis is to develop software tools to detect and fix vulnerabilities of network resources selected company.
The first part of this article describes the requirements to developed system, describes the information processes that occur in the company. Expected benefits from introducing as defined in the first part.
The main part of the exhaust article describes the structure and outlines proanalizirovanymehanizmy and systems under development are set out and analyzed. The system design is defined in the Unified Modeling Language, using use case diagrams, class diagrams, logical database model, physical model of the database, the sequence and flow charts diagrams.
Harmful and hazardous factors in the workplace system user checked in the final part of the article. The final section also contains rules and guidelines for the maintenance of security in the working space, established by law, and the total cost of development and system integration.
The system has been developed, tested and most of it has been successfully integrated.
Содержание
Глава 1. Уязвимости их актуальность для компании 7
1.1. Сведения об уязвимостях 7
1.2. Наиболее распространенные уязвимости 19
1.3. Определение уязвимостей, актуальных для компании 20
Глава 2. Разработка программного средства 23
2.1. Описание разрабатываемого программного средства 23
2.1.1. Определение web-ресурсов, не использующих шифрование 23
2.1.2. Определение IP адресов широковещательной рассылки 25
2.1.3. Предотвращение внешнего сканирования 27
2.1.4. Обнаружение постороннего узла в компьютерной сети компании и его блокировка. 30
2.1.5. Выявление программ-шпионов 32
2.2. Проектирование программного средства 33
2.2 Диаграмма классов анализа 37
2.3 Диаграммы классов 37
2.4 Диаграмма компонентов 41
Глава 3. Выбор программных средств 42
3.1. Язык программирования и средства разработки 42
3.2. Система управления базой данных 43
Глава 4. Руководство пользователя программного средства 45
Заключение 50
Список используемых источников 51
Ведение
В настоящее время информационные технологии кардинально меняют нашу жизнь: темпы научно-технического прогресса, характер работы, способы обмена информацией. Эффективное применение информационных технологий является важным фактором роста конкурентоспособности компании. Многие предприятия в мире переходят к использованию широких возможностей Интернета и электронного бизнеса, неотъемлемый элемент которого — электронные транзакции. Практически для любой компании необходимо иметь свою собственную информационную систему. Привнеся в жизнь современной цивилизации большое количество новых возможностей и перспектив, Интернет и локальные сети, тем не менее, являются свободными и практически не контролируемыми средами. Поэтому бурное развитие информационных технологий породило целый ряд проблем, одной из которых является проблема обеспечения информационной безопасности сетевых ресурсов. С развитием информационных технологий в различных сферах так же развиваются и совершенствуются методы и техники злоумышленников, для осуществления и разработки новых типов атак. Несмотря на существования специальной технической литературы, специальных курсов по повышению квалификации в сфере безопасности, существует факт создания различных приложений, содержащих уязвимости. Причиной тому может стать недостаточная квалификация разработчиков, экономией средств на разработку и усовершенствование систем безопасности, незнанием или непониманием руководства предприятия всей важности проблемы.
Задача поиска уязвимостей в сетевых ресурсах компании возникает в процессе разработки средств получения несанкционированного доступа специалистами государственных или частных разведывательных организаций, специальных служб либо киберпреступниками. Об актуальности этой задачи можно судить благодаря появляющимся в открытом доступе данным о вознаграждениях, которые предлагаются на «черном» рынке в обмен на информацию об уязвимостях.
Актуальность проблемы именно для бизнес-среды можно подтвердить анализом отчета «Эволюция угроз информационной безопасности в бизнес-среде» за 2015 год от лаборатории Касперского. В отчете представлены следующие цифры:
-
в 2015 году на 58% корпоративных компьютеров была отражена хотя бы одна атака вредоносного ПО, что на 3 % больше, чем в прошлом году;
-
29% компьютеров, т.е. почти каждый третий компьютер в бизнес-среде, подверглись хотя бы одной атаке через Интернет;
-
при атаках на бизнес программы к офисным приложениям используются в три раза чаще, чем в атаках на домашних пользователей;
-
файловый антивирус сработал на 41% компьютеров корпоративных пользователей (детектировались объекты, обнаруженные на компьютерах или на съемных носителях, подключенных к компьютерам, — флешках, картах памяти, телефонах, внешних жестких дисках, сетевых дисках).
Проблема обнаружения уязвимостей также является острой и для самих разработчиков ПО. Ведущие игроки на рынке информационных технологий используют новейшие средства затруднения эксплуатации вредоносных программ и методы проактивной защиты и, тем не менее, вынуждены каждый год исправлять сотни ошибок, связанных с безопасностью. Разумеется, для разработчиков предпочтительней находить подобные ошибки в процессе аудита приложения, а не в результате расследования уже произошедшего инцидента ИБ.
Стремление обнаружить уязвимость раньше, чем это удастся злоумышленникам, побуждает компании организовывать собственные программы вознаграждения исследователей ИБ в обмен на данные об ошибках.
Готовность сторон расходовать на информацию об уязвимостях значительные финансовые ресурсы позволяет предположить высокую заинтересованность в инструментах, облегчающих и тем более автоматизирующих процесс обнаружения ошибок, связанных с безопасностью.
В компании ООО «Приморье» системы защиты информации не используются. Обмен данными в компании происходит через незащищенные каналы, а именно через локальную сеть предприятия и через Интернет ресурсы. Данные передаваемые по незащищенным каналам имеют высокую ценность для предприятия.
Целью выпускной квалификационной работы является разработка приложения, для обнаружения и устранения уязвимостей сетевых ресурсов для ООО «Приморье».
Для достижения цели в работе поставлены следующие задачи:
-
изучить теоретико - методологические аспекты анализа основных методов поиска уязвимостей;
-
провести анализ актуальных уязвимостей на 2016 год;
-
произвести анализ возможных каналов утечки данных в ООО «Приморье»;
-
разработать комплексную систему анализа защищенности для ООО «Приморье».
Теоретическая значимость дипломного исследования состоит в анализе существующих методов автоматизированного обнаружения уязвимостей и выявления наиболее оптимального из методов по соотношению сложности разработки и эффективности.
Практическая значимость работы определяется возможностью полноценного использования построенной системы в качестве одного из важных инструментов исследователя ИБ.
Новизна дипломной работы состоит в создании легко развертываемой и расширяемой системы обнаружения ошибок, связанных с безопасностью, с акцентом на сетевые ресурсы. В качестве программного продукта со сходными характеристиками в процессе исследования не удалось обнаружить в открытом доступе.
При выполнении ВКР использованы знания и опыт использования:
-
технологий ASP.NET, С#;
-
реляционных SQL баз данных (Microsoft SQL Server), T-SQL.
-
Уязвимости их актуальность для компании
-
Сведения об уязвимостях
С момента появления первых компьютеров и их последующего объединения в компьютерные сети, последние не прекращали совершенствования и развития. Известный факт, что компьютерные сети стали существенными инструментами в работе большинства предприятий и организаций в различных сферах, таких как банковское дело, страхование, вооруженные силы и т.д. Увеличение взаимосвязи между несколькими системами и сетями сделало их доступными для обширного и разнообразного сообщества пользователей, которое увеличивается с каждым годом. Пользователи, преднамеренно или нет, не всегда располагают хорошими намерениями, получая доступ к этим сетям. Они могут попытаться получить, изменить или уничтожить конфиденциальную информацию или только произвести атаку, приводящую к нарушению работоспособности системы. Так как эти сети могут быть потенциальными целями для атак, обеспечение их безопасности является важным аспектом, который не может быть проигнорирован.
В двадцать первом веке движущей силой и главным объектом всех отраслей человеческой деятельности становится информация, и состояние каналов, сетей и безопасность серверов станут основой экономического развития. По мнению некоторых экспертов, информация становится главной международной валютой. К сожалению, сложные сетевые технологии достаточно уязвимы для целенаправленных атак. Причем такие атаки могут производиться удаленно, в том числе и из-за пределов национальных границ. Все это ставит новые проблемы перед разработчиками и строителями информационной инфраструктуры. Все предприятия полностью базируются на сетевых технологиях (электронная почта, видеоконференции, совместная работа сотрудников над различными задачами) и по этой причине особенно уязвимы. Сетевые угрозы исходят не только от хакеров. Проблемы может вызвать вполне добросовестный работник компании, например, системный администратор. Основным источником сетевых уязвимостей являются дефекты программ и особенности каналов связи:
-
коды операционной системы (например, уязвимость для переполнения памяти, некорректная работа с блокирующими сокетами, управление обновлениями ОС и т.д.);
-
транспортные протоколы (правила написания кодов), например, протокол IM, ТСР, DNS, SMTP или ICMP;
-
дефекты прикладных программ;
-
ошибки в программах пользователя (они встречаются чаще всего, но так как тексты таких программ не известны, хакерам с ними работать сложно и неэффективно, в отличии от трех предыдущих пунктов);
-
подбор паролей;
-
мобильные носители (флэш-память, DVD), ноутбуки, телефоны;
-
перехват сообщений и управления в беспроводных системах.
Отдельный широкий класс образуют мошеннические приемы, использующие социальную инженерию.
Произведем следующую классификацию вредоносных программ и обозначим способы их обнаружения.
Черви (Worms)
Данная категория вредоносных программ для распространения использует сетевые ресурсы. Название этого класса было дано исходя из способности червей "переползать" с компьютера на компьютер, используя сети, электронную почту и другие информационные каналы. Также благодаря этому черви обладают исключительно высокой скоростью распространения. Черви проникают на компьютер, вычисляют сетевые адреса других компьютеров и рассылают по этим адресам свои копии. Помимо сетевых адресов часто используются данные адресной книги почтовых клиентов. Представители этого класса вредоносных программ иногда создают рабочие файлы на дисках системы, но могут вообще не обращаться к ресурсам компьютера (за исключением оперативной памяти).
В состав червей входят следующие элементы:
-
средство проникновения – вредоносный код ищет уязвимости машины-жертвы. (Уязвимость – ошибки в программе);
-
инсталлятор - программа установки вредоносного кода на машине жертвы.
-
средство поиска – программа поиска других машин – потенциальных жертв. Для этого может использоваться e-mail, локальные связи зараженной машины и средства DNS;
-
сканнер – программа, которая просматривает выявленные машины на предмет наличия у них уязвимостей, которые может использовать данная версия червя;
-
тело червя – исполняемая программа червя, которая может создавать условия для удаленного доступа в зараженную машину или перехватывать любой ввод с клавиатуры, включая имена и пароли.
Некоторые вирусы и черви имеют встроенные SMTP– программы, предназначенные для их рассылки и люки для беспрепятственного проникновения в зараженную машину. Новейшие версии снабжены средствами подавления активности других вирусов или червей. Таким образом могут создаваться целые сети зараженных машин botnet, готовых по команде начать к примеру DDoS-атаку.
Существует две схемы управления botnet: централизованная и децентрализованная. Разумеется, возможно и комбинирование этих двух технологий. Для управления botnet используются протоколы IRC и HTTP. В botnet обычно имеется один или несколько серверов, которые ретранслируют машинам-зомби инструкции от хакера. Боты взаимодействуют с центром в среднем раз в два часа.
Характеристики
Тип файла документ
Документы такого типа открываются такими программами, как Microsoft Office Word на компьютерах Windows, Apple Pages на компьютерах Mac, Open Office - бесплатная альтернатива на различных платформах, в том числе Linux. Наиболее простым и современным решением будут Google документы, так как открываются онлайн без скачивания прямо в браузере на любой платформе. Существуют российские качественные аналоги, например от Яндекса.
Будьте внимательны на мобильных устройствах, так как там используются упрощённый функционал даже в официальном приложении от Microsoft, поэтому для просмотра скачивайте PDF-версию. А если нужно редактировать файл, то используйте оригинальный файл.
Файлы такого типа обычно разбиты на страницы, а текст может быть форматированным (жирный, курсив, выбор шрифта, таблицы и т.п.), а также в него можно добавлять изображения. Формат идеально подходит для рефератов, докладов и РПЗ курсовых проектов, которые необходимо распечатать. Кстати перед печатью также сохраняйте файл в PDF, так как принтер может начудить со шрифтами.















