Дмитрий Ильюк, OOO “Технологии качества», бренд A1QA
В каких случаях может понадобиться тестирование безопасности?
Эта статья для тех, кому пришлось столкнуться с проблемами безопасности своих ресурсов, в первую очередь – корпоративной сети либо веб-приложений, но они не имеют четкого представления о том, как это тестирование осуществляется на практике.
Вариантов, разумеется, может быть множество, вот лишь некоторые из них:
- после проведенной кибер-атаки либо ее попытки;
- при наличии корпоративной сети или веб-приложения, тестирование безопасности которых проводилось давно либо не проводилось вообще;
- после добавления новой функциональности в уже имеющийся продукт;
- при значительном изменении топологии корпоративной сети;
- при миграции приложения из тестовой среды в производственную;
- при наличии требований отраслевых стандартов (PCI DSS, HIPAA).
Однако, определить насколько необходимо проведения тестов безопасности можно гораздо проще. В общем виде формула выглядит так: если у вас есть “что-то”, оно хранит либо обрабатывает важные данные и при этом доступно из Интернета, то тест безопасности необходим!
Подробнее...
Если у вас произошел сбой программы, не думайте, что это просто сбой. Вполне вероятно, что некоторая часть так называемых сбоев – это приглашение для злоумышленника написать атакующий код. Не воспринимайте сбой как «просто сбой».
(Майкл Ховард)
Автор: Татьяна Зинченко
Прошла первая конференция ConfeT&QA, на которой я выступала с докладом про фаззинг. Очень много отзывов было примерно такого содержания: «Очень интересный доклад, но я совсем не знаю, что такое фаззинг».
Что же такое фаззинг и с чем его едят?
Фаззинг – это один из подвидов тестирования безопасности. Определений для него неимоверно много. Википедия определяет фаззинг как технологию тестирования программного обеспечения, когда вместо ожидаемых входных данных программе передаются случайные или специально сформированные данные. Т.е. программе чаще всего подсовываются заведомо неправильные данные, при этом отслеживаются такие ситуации, когда система не может их обработать и вылетает. Аварийное завершение работы считается нахождением дефекта в программе и может привести к дальнейшему выявлению уязвимости.
У нас этот вид тестирования еще не очень распространен, а на западе им пользуются уже достаточно давно. Еще в 1988 году Барт Миллер опубликовал работу The Fuzz Generator, в которой впервые был определен термин Fuzzing. А особо активное использование началось в 2006 году, когда при помощи фаззинга была найдена масса уязвимостей в Internet Explorer, Microsoft Word и Microsoft Excel. Сейчас фаззинг является одним из самых эффективных методов выявления проблем безопасности кода.
Выделяется три подхода к выявлению недостатков системы: тестирование методом черного, серого и белого ящиков. Различие между ними определяется теми ресурсами, которые доступны во время тестирования.
Подробнее...
Автор: Полаженко Сергей, ведущий проекта «Тестирование безопасности»
В литературе можно найти большое число вариантов для определения понятий безопасности информации и безопасности автоматизированных систем (АС). В случае же программных продуктов (ПП) выбор вариантов не так уж и велик. Это объясняется, по большей степени тем, что исторически компьютерные программы (прародительницы современного понимания для ПП) обсуждались в контексте составной части «безопасности АС». С появлением Интернет, а также с ростом популярности информационных технологий, компьютерные программы «вырвались» из границ АС и сформировали новый класс объектов информатики, который принято сейчас называть программными продуктами.
Подробнее...
Автор: Полаженко Сергей, ведущий проекта «Тестирование безопасности»
Очень часто современные программные продукты (ПП) разрабатываются в сжатые сроки и при ограниченных бюджетах проектов. Программирование сегодня перешло из разряда искусства, став при этом ремеслом для многих миллионов специалистов. Но, к сожалению, в такой спешке разработчики зачастую игнорирует необходимость обеспечения информационной безопасности и защищённости своих продуктов, подвергая тем самым пользователей своих продуктов неоправданному риску.
Подробнее...
Автор: Полаженко Сергей, ведущий проекта «Тестирование безопасности»
Требования к качеству программных средств (ПС) всё время повышаются, программы должны быть не только надёжными, удобными для работы, простыми для изучения и т.д. — пользователь хочет иметь гарантии того, что он может доверять программе свои данные. Это означает, что реализация требований безопасности при разработке ПС является одной из составных частей общей проблемы обеспечения их качества. Так, например, последний пакет обновлений для операционной системы Windows XP продемонстрировал то, что обеспечение безопасности становится приоритетным направлением компании Microsoft.
Современные корпоративные ПС (системы управления баз данных, средства автоматизации офиса и т.д.) всегда оснащаются такими сервисами безопасности как авторизация и идентификация пользователей, внутренними средствами разграничения доступа, протоколированием и т.д. Можно ли полагаться на то, что в процессе разработки программного обеспечения (ПО) были корректно учтены все требования безопасности? Большое количество обновлений и «заплаток», которые ежемесячно публикуются в бюллетенях производители ПО, красноречиво говорит о том, что процессов разработки безошибочного ПО пока не существует.
Подробнее...
Автор: Полаженко Сергей
Тестирование безопасности и защищённости программных продуктов (ПП) проводится с целью проверки эффективности используемых в них механизмов защиты информации, их устойчивости к атакам, а также с целью поиска уязвимостей. Традиционно используются два основных метода тестирования: по методу «черного ящика» и по методу «белого ящика».
Тестирование по методу «черного ящика» предполагает отсутствие у тестирующей стороны каких-либо специальных знаний о составе и принципах работы тестируемого ПП. Против ПП, в идеале, на период тестирования реализуются все известные типы атак. Используемые методы тестирования эмулируют действия потенциальных злоумышленников, пытающихся взломать систему защиты ПП.
Подробнее...
Автор: Полаженко Сергей
При анализе проблемы безопасности программного продукта разыскиваются варианты атак [1], которые могут быть применены злоумышленником для нанесения ущерба пользователям продукта, его владельцам или правообладателям. Из всего множества вариантов атак, в первую очередь следует обратить внимание на те варианты, которые могут привести к существенному ущербу.
Подробнее...
Автор: Лозовюк Александр
Сканнеры безопасности имеют широкое применение для анализа уязвимостей в локальных сетях на предмет устойчивости всей сети и отдельных компьютеров к вирусам, троянским программам и сетевым червям, а также направленным атакам злоумышленников. Одним из самых известных таких сканнеров является Tenable NeWT и snort.org. Но для анализа уязвимостей именно веб-сайта подобный инструмент не слишком хорош, поэтому существуют специальные сканнеры именно для анализа сайтов. Одной из лучших программ подобного рода является XSpider, разработка российской компании Positive Technologies.
Подробнее...
Автор: Михаил Брод
Материал впервые опубликован в рамках проекта .hostinfo: Консультант по безопасности и публикуется с согласия автора.
Сети давно уже стали обычным явлением в различных организациях. Пусть в компании есть всего пара компьютеров, но и они зачастую объединены между собой. Что уж говорить о таких фирмах, где компьютеров много больше? И очень часто эти сети подключены к Интернету. Его использование становится необходимым для обеспечения деятельности компании. Но и увеличивает вероятность проникновения в локальную сеть нежелательных «посетителей» — как вирусов, так и желающих поживиться какой-либо информацией, а то и просто любителей-взломщиков. Администраторами сетей ставятся антивирусные программы, брандмауэры, иные средства защиты. Но это последний этап, на котором фиксируются попытки проникновения. Эти средства ничего не говорят о том, хорошо ли вы защитили свою сеть, все ли уязвимые места прикрыли средствами защиты. Аналогичные проблемы возникают и перед владельцами интернет-проектов, которые также подвержены нападениям.
Подробнее...
Автор: Полаженко Сергей
Деревья атак (attack trees), как метод анализа информационных систем применяются очень давно, в литературе их также можно встретить и под другими именами, например, «деревья ошибок» (fault trees) или деревья риска (risk trees). Метод, как правило, применяется на этапе разработки и уточнения требований к разрабатываемому программному продукту, а также при разработке его планов тестирования. Это достаточно мощный и гибкий инструмент для анализа возможных проблем функционирования продукта и поиска путей разрешения этих проблем.
Подробнее...
|