s
Sesiya.ru

Анализ защищённости приложений

Информация о работе

Тема
Анализ защищённости приложений
Тип Лабораторная работа
Предмет Информатика
Количество страниц 8
Язык работы Русский язык
Дата загрузки 2015-02-25 01:48:23
Размер файла 356.47 кб
Количество скачиваний 1
Узнать стоимость учебной работы online!
  • Тип работы
  • Часть диплома
  • Дипломная работа
  • Курсовая работа
  • Контрольная работа
  • Решение задач
  • Реферат
  • Научно - исследовательская работа
  • Отчет по практике
  • Ответы на билеты
  • Тест/экзамен online
  • Монография
  • Эссе
  • Доклад
  • Компьютерный набор текста
  • Компьютерный чертеж
  • Рецензия
  • Перевод
  • Репетитор
  • Бизнес-план
  • Конспекты
  • Проверка качества
  • Единоразовая консультация
  • Аспирантский реферат
  • Магистерская работа
  • Научная статья
  • Научный труд
  • Техническая редакция текста
  • Чертеж от руки
  • Диаграммы, таблицы
  • Презентация к защите
  • Тезисный план
  • Речь к диплому
  • Доработка заказа клиента
  • Отзыв на диплом
  • Публикация статьи в ВАК
  • Публикация статьи в Scopus
  • Дипломная работа MBA
  • Повышение оригинальности
  • Копирайтинг
  • Другое
Узнать стоимость

Скачать файл с работой

Помогла работа? Поделись ссылкой

Министерство образования Республики Беларусь
Учреждение образования
«Белорусский государственный университет информатики и радиоэлектроники»
Кафедра интеллектуальных информационных технологий



«Проектирование защищенных систем»
Лабораторная работа № 3
«Анализ защищённости приложений»





Выполнил: Студент гр. 021702
ТелевичР.А.


Проверил: Шалев Е.Г.





МИНСК
2014
1 ЗАДАНИЕ
- Разработать приложение, которое позволяет: добавить пользователя в систему; авторизовать пользователя на основе идентификационных данных; создать, редактировать, удалить, осуществить поиск конфиденциальных данных; создать, редактировать, удалить, осуществить поиск неконфиденциальных данных, деавторизовать авторизованного пользователя.
- Выполнить анализ разработанного приложения с точки зрения: политики безопасности операционной системы; политики безопасности компонентов приложения и их взаимодействия между собой; сетевой политики безопасности; безопасности конфиденциальности данных.
- Оформить отчёт о проделанной работе. 
2 РЕЗУЛЬТАТЫ
Для выполнения лабораторной работы было разработано приложение asp.netmvc.
В приложении реализована регистрация и авторизация пользователей, возможность добавлять комментарии, а также изменять конфиденциальную информацию пользователя.
Проанализировав работу приложения, были выявлены некоторые плюсы, а также уязвимости данного приложения с точки зрения безопасности системы.
Плюсы:
- каждому пользователю выдается своя роль, относительно которой ему доступны или недоступны действия, связанные с изменением конфиденциальной информацией пользователя.
- Ограничение доступа с AuthorizeAttribute
ASP.NET MVC поставляется с атрибутом фильтрацииAuthorizeAttribute, который предоставляет простой и качественный способ для создания правил авторизации. Когда этот атрибут используется в сочетании со схемой аутентификации, он может обеспечивать подтверждение того, что только определенные пользователи имеют доступ к конкретным действиям контроллера.
Простейшее применение AuthorizeAttribute требует только аутентификации текущего пользователя:
[Authorize]
publicActionResult About()
{
return View();
}
Не аутентифицированным пользователям будет запрещен доступ к этому действию, но любому аутентифицированному пользователю доступ будет разрешен.
Чтобы ограничить действие далее, мы можем указать пользователей или роли, которые требуетAuthorizeAttribute. Эти пользователи или роли передаются в атрибут в виде списка строк, разделенных запятыми и содержащих имена пользователей или ролей с правами доступа:
[Authorize(Users = "admin")]
publicActionResult Admins()
{
returnView();
}
- защита от html-javascript.
Автоматическаявалидация ввода.
По умолчанию ASP.NET MVC автоматически проверяет данные запроса, чтобы гарантировать, что они не содержат потенциально опасной разметки. Однако это не всегда желательно. Иногда у вас будут приложения, которые требуют от пользователя ввести HTML-разметку (или другие данные, которые валидатор может принять за HTML, например, XML), поэтому такое поведение можно выключить.
[ValidateInput(false)]
publicViewResult Save(CommentInput form)
{
returnView(form);
}
Когда для него установлено значениеfalse , атрибут ValidateInputуказывает ASP.NET пропустить обычную проверку на наличие вредоносного содержимого. Без этого атрибута будет проведена валидация по умолчанию: проверка строки запроса, формы и куки на наличие вредоносного содержимого. Если этот атрибут не отменяет валидацию, пользователи, отправляющие небезопасные входные данные, увидят исключение, показанное на рисунке.

Рисунок 1 – Ошибка сервера в приложении
- Защита подделка межсайтовых запросов
Применение к действию ValidateAntiForgeryTokenAttribute требует, чтобы входные данные сопровождались специальным маркером, который гарантирует, что они поступают только от отвечающего приложения. За атрибутом обязательно должен следовать специальный вспомогательный метод HTML, который выводит маркер в форме в HTML-источнике.
В следующем коде показан атрибут, примененный к нашему уязвимому действию:
[ValidateAntiForgeryToken]
publicViewResult Save(InputModel form)
{
returnView(form);
}
В нашем представлении мы можем использовать вспомогательный метод AntiForgeryToken:
<form method="post" action="/home/save">
@Html.AntiForgeryToken()
<label for="Name">Name:</label>
@Html.TextBox("Name")
<button type="submit">Submit</button>
</form>
Когда установлены маркер и атрибут, отправленные с сайта данные, имеющие и маркер, и атрибут, будут приняты, но взломщики не смогут формулировать XSRF-атаки.
- При появлении в работе приложения исключения пользователь получить страницу с ее описанием.
Создадим исключение при работе приложения.
publicActionResult Index()
{
List<Comment> c = repository.getAllComments();
ViewBag.Comments = repository.getAllComments();
thrownewDataException();
returnView();
}
Пользователь получит следующую страницу

Рисунок 2 – Исключение при работе приложения
Asp.netmvc позволяет определить страницу, которая будет отображена при появлении того или иного исключения.

Уязвимости:
- возможность подбора пароля простым перебором неограниченное количество раз, потому что нет защиты на то, что при нескольких попытках авторизоваться, пользователь блокируется на некоторое количество времени;
- хранение паролей в открытом виде в базе данных;
- приложение самостоятельно не может гарантировать передачу данных по защищенному каналу, поэтому сервер приложений должен настроен должным образом, чтобы при работе с приложением использовался протокол SSLHTTP.

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

© Copyright 2012-2021, Все права защищены.