5.1 Понятие уязвимости информации в информационных системах. Причины возникновения уязвимости информации.
Уязвимость — это любая характеристика информационной системы, использование которой нарушителем может привести к реализации угрозы. В компьютерной безопасности термин «уязвимость» (англ. vulnerability) используется для обозначения недостатка в системе, используя который, можно намеренно нарушить её целостность и вызвать неправильную работу.
Уязвимость может быть результатом ошибок программирования, недостатков, допущенных при проектировании системы, ненадежных паролей, вирусов и других вредоносных программ, скриптовых и SQL-инъекций. Некоторые уязвимости известны только теоретически, другие же активно используются и имеют известные эксплойты. короч уязвимости могут быть допущены случайно и заложены специально, но как правило уязвимость является результатом человеческой халатности иили невнимательности.
5.2 Классификация уязвимостей информации.
- уязвимости уровня сети — уязвимости сетевых протоколов;
- уязвимости уровня операционной системы;
- уязвимости уровня баз данных — уязвимости конкретных СУБД ;
- уязвимости уровня приложений — относятся уязвимости программного обеспечения.
- уязвимость со стороны персонала
- Недостаточное обучение
- неосведомленность персонала
- немотивированность персонала
- отсутствие мониторинга
- небрежное использование механизмов физического контроля доступа
- отсутствие дверей/окон и пр.
- Подверженность оборудования затоплению/температурам/пыли/перепадам напряжения
- Сложный интерфейс, приводящий к ошибкам при использовании
- Плохой контроль изменений
- Плохое управление сетью
- отсутствие резервного копирования
- Отсутствие обновлений ПО
- Отсутстви разграничение прав/обязанностей
- Отсутствие разделения тестового и боевого оборудования
- Неконтроллируемое копирование
- плохое разделение доступа в сетях
- отсутствие меанизмов аутентификации/идентификации
- Плохая политики контроля доступа
- Отсутствие выхода из системы при уходе от компа
- нет или мало тестирования ПО
- нет контроля прав доступа
- Плохой контроль паролей
- Плохие криптоключи
- отсутствие контроля входных/выходных данных
- отсутствие проверки обрабатываемых данных
- нет или мало тестирования ПО
- неконтроллируемая загрузка и использование ПО
- использование бесплатных ПО
5.3 Понятие «утечка информации». Общая характеристика каналов утечки информации из информационных систем.
- Кража или утеря носителей информации, исследование не уничтоженного мусора;
- Дистанционное фотографирование, прослушивание;
- Перехват электромагнитных излучений.
- Инсайдеры(человеческий фактор). Утечка информации вследствие несоблюдениякоммерческой тайны;
- Прямое копирование.
- акустические— запись звука, подслушивание и прослушивание;
- акустоэлектрические — получение информации через звуковые волны с дальнейшей передачей ее через сети электропитания;
- виброакустические — сигналы, возникающие посредством преобразования информативного акустического сигнала при воздействии его на строительные конструкции и инженерно-технические коммуникации защищаемых помещений;
- оптические— визуальные методы, фотографирование, видео съемка, наблюдение;
- электромагнитные— копирование полей путем снятия индуктивных наводок;
- радиоизлучения или электрические сигналыот внедренных в технические средства и защищаемые помещения специальных электронных устройств съема речевой информации “закладных устройств”, модулированные информативным сигналом;
- материальные— информация на бумаге или других физических носителях информации
Источник: studfile.net
Как тестировать сайт? | Уязвимости сайтов | XSS атака | 18+
Системы классификации и оценки уязвимостей и угроз информационных систем: какие они бывают и зачем нужны
В отчете по результатам пентеста каждой уязвимости присваивается определенный класс опасности. Это не субъективная оценка, она основывается на общепринятых методиках. О них сегодня и поговорим. Расскажем, как принято классифицировать и оценивать уязвимости информационных систем и объясним, зачем это нужно.
Что такое уязвимости и чем они отличаются от угроз
Многие путают эти понятия, а разница есть. Угрозы в ИБ — это потенциальные опасности, которые могут возникнуть в информационной системе (ИС), если нарушитель использует ее уязвимости для атак.
Угроз в ИС может быть всего три. Это угрозы:
- нарушения целостности;
- нарушения доступности;
- нарушения конфиденциальности.
Число уязвимостей не ограничено. Порой кажется, что со временем их становится только больше. Уязвимости — это некие недостатки в ПО, оборудовании, мерах по обеспечению безопасности компании с точки зрения человеческого фактора (доступы, пропуски), предоставляющие злоумышленнику возможность совершать в ИС несанкционированную деятельность. В уязвимость быстро превращается и отсутствие или слабая защита информационной системы.
Эксплуатируя уязвимость, атакующий получает возможность реализовать угрозу. То, что дает возможность использовать уязвимости, называется источником угрозы (threat agent): хакер; недобросовестный или ошибившийся сотрудник, через которого произошла утечка конфиденциальной информации или который повредил файлы; процесс, осуществляющий доступ к данным в обход политики безопасности; обстоятельства непреодолимой силы (землетрясение, разрушившее здание).
Какие бывают уязвимости:
- Уязвимости с риском — подразумевают, что злоумышленник может значительно воздействовать на систему в результате использования такой уязвимости.
- Уязвимости без риска — когда эксплуатация уязвимости не может нанести значимого вреда.
Уязвимости могут быть эксплуатируемыми и неэксплуатируемыми, то есть такими, для которых еще не существует эксплойт. Однако и уязвимость, для которой есть эксплойт, может быть уязвимостью без риска. Все зависит от конкретной ситуации.
Уязвимости проявляются в следующих местах:
- материальная среда ИС: оборудование, устройства (например, носители для записи и хранения информации), физические входы в систему;
- персонал;
- политики безопасности и различные административные регламенты;
- бизнес-процессы;
- локальное и облачное программное обеспечение.
Классификация и оценка уязвимостей и угроз: зачем это все нужно?
Уязвимостей много, они чрезвычайно разнообразны, а их опасность варьируется в широких пределах. Поэтому, чтобы верно расставить приоритеты и сперва устранить наиболее опасные уязвимости, просто необходимо их правильно классифицировать и оценить.
Как классифицируют уязвимости и угрозы
Существуют международные и локальные, принятые в отдельных странах системы классификации. Это перечни известных дефектов в безопасности вычислительных систем, которые составляют экспертные группы из безопасников, разработчиков и заинтересованных представителей отраслевых компаний.
5 наиболее распространенных классификаций
OWASP Top 10 получила название в честь некоммерческой организации Open Web Application Security Project, которая сосредоточена на обеспечении безопасности Интернета. OWASP ведет и регулярно обновляет чарт из 10 самых опасных рисков для web-приложений, составленный на основе общедоступной Risk Rating Methodology.
Рейтинг не охватывает все возможные проблемы, он лишь позволяет выделить и изучить десять наиболее распространенных и актуальных на сегодня типов угроз. Так что OWASP даже выдвинула призыв: «Don’t stop at 10».
Впервые OWASP Top 10 обнародовали в 2004 году, и с тех пор он обновляется примерно раз в три года. Каждая угроза в топе сопровождается подробным описанием, примерами и рекомендациями по устранению. В последней на сегодняшний день версии рейтинга есть, например, такие ошибки, как отсутствие журналирования и мониторинга, небезопасная конфигурация, межсайтовый скриптинг.
Классификация уязвимостей CVE. Классификацию Common Vulnerabilities and Exposures ИБ-профессионалы используют чаще всего. Именно на нее мы постоянно ссылаемся в отчетах по итогам пентестов.
CVE представляет собой нечто вроде словаря известных угроз. Каждой присваивается идентификатор, где также указаны год, в который поступило сообщение об этой уязвимости, и номер, присвоенный экспертами из CNA (CVE Numbering Authorities). Это отдельная организация, состоящая из более чем 200 экспертных групп, объединяющих исследователей, специалистов по обнаружению уязвимостей, разработчиков. Наиболее авторитетная из них — та же Mitre.
CVE-запись об уязвимости в Diagnostic Lab Management System в National Vulnerability Database. Содержит описание уязвимости и дополнительные данные о ней
Самым опасным, громким уязвимостям дают собственные имена. Например, CVE-2022-30190, которая позволяет проэксплуатировать Windows Support Diagnostic Tool через файлы MS Office, назвали Follina, а критическая уязвимость удаленного выполнения кода CVE-2021-44228, найденная в библиотеке Apache Log4j, известна как Log4Shell или LogJam.
Классификация недостатков безопасности CWE. Перечень Common Weakness Enumeration составлен в форме иерархического словаря, где перечислены ошибки в ПО, из-за которых возможно появление уязвимостей.
Инициатором этого проекта выступило Министерство нацбезопасности США, его поддерживает корпорация Mitre, а развивает большое сообщество ИБ-экспертов. Соответственно, многие эксперты считают эту классификацию стандартом описания недостатков безопасности ПО. Важная особенность CWE — строгая многоуровневая древовидная структура, состоящая из типов и категорий уязвимостей, снабженных цветовой кодировкой. Этот классификатор не такой динамичный, как OWASP Top 10. Внесение изменений в структуру CWE происходит редко, после уймы исследований и бюрократических проволочек.
Классификация атак CAPEC. Common Attack Pattern Enumeration and Classification — это классификация, которая появилась в процессе развития CWE и схожа с ней по иерархической структуре, однако содержит больше контекста и дополнительной информации.
В CAPEC систематизированы так называемые шаблоны объектов и механизмов атак, в которых описаны методы, используемые злоумышленниками. В них включены: описание того, как эксплуатируется уязвимость, последствия, которые возможны при ее эксплуатации, меры защиты.
CAPEC ссылается и на CVE, так что ее можно считать объединяющим классификатором и отправной точкой для поиска дополнительной информации о конкретной проблеме.
Классификация основных уязвимостей ИСПДн. Мы уже рассмотрели одну, по сути американскую государственную классификацию уязвимостей, но есть и российский аналог. Эта классификация узкоспециальная. Она разработана ФСТЭК для упорядочивания уязвимостей информационных систем, в которых ведется обработка персональных данных.
Эта классификация является основой для составления многих документов, связанных с информационной безопасностью, ее активно использует регулятор. В то же время, классификация основных уязвимостей ИСПДн не включает технических подробностей уязвимостей и содержит достаточно общие описания. Впрочем, для нужд регулятора этого более, чем достаточно.
Помимо пяти перечисленных можно вспомнить и пару необычных классификаций. Например, компания QIWI совместно с проектом Vulners разработали классификацию уязвимостей на основе графа связанной информации. Существует и классификация логических уязвимостей на основе метода групповой атаки с использованием апостериорной эмпирической методологии (что бы это ни значило). Такие вещи редко используются на практике и представляют скорее научный, академический интерес.
Как оценивают уязвимости
Время переходить от упорядочивания к приоритизации найденных проблем. Для этого уязвимости необходимо оценить. Если классификации универсальны, то результаты оценки конкретной уязвимости сильно зависят от IT-ландшафта, в котором она обнаружена.
Каждой уязвимости присваивают ранг или оценку серьезности на основе таких факторов, как:
- Какие системы затронуты.
- Какие данные в опасности.
- Какие бизнес-функции находятся под угрозой.
- Насколько легко реализовать атаку и добиться компрометации ИС.
- Потенциальный ущерб в результате уязвимости.
Исходя из этого набора факторов, уязвимость в тестовой версии ПО не так страшна, как такая же в продуктовой. Уязвимость в старой версии ПО, для которой уже есть патч, оценивается как более легкая, чем такой же недостаток в новейшей программе.
При этом в целом уязвимость удаленного исполнения кода в популярном MS Word опаснее, чем подобная дыра в каком-нибудь редком текстовом редакторе, так как она затрагивает больше пользователей. Однако если компания использует не Word, а именно это редкое решение, то подобная ошибка будет оценена как критически опасная. Повторим, что многое зависит от контекста.
Бывают случаи, когда непонятно, как оценивать уязвимость. Обычно это связано с ошибками конфигурации (например, слабый пароль на критическом сервисе). Такие кейсы сложно оценить в соответствии с общепринятым стандартом. Тем не менее он есть и широко применяется.
Стандарт CVSS
Common Vulnerability Scoring System без ложной скромности переводится как общая система оценки уязвимостей. Это отраслевой стандарт, по которому оценивают серьезность дыр в безопасности ИС.
Краткая история CVSS
В начале нулевых Консультативный Совет по Инфраструктуре США (NIAC) провел исследования, благодаря которым в 2005 году появился первый стандарт с методами оценки ПО-уязвимостей. Заложенные тогда принципиальные основы расчета метрики используются и сегодня. Из-за того, что первую версию CVSS поддерживала еще молодая экспертная группа CVSS-SIG, вскоре разработчики стали жаловаться на многочисленные недостатки стандарта.
В CVSS стали вносить правки и в 2007 выпустили вторую версию с измененной формулой расчета. Прошло семь лет, прежде чем авторитетные Национальный институт стандартов и технологий (NIST) и Международный союз электросвязи (ITU) выпустили рекомендации по применению этой версии.
Третью версию CVSS NIAC опубликовал в 2015 году. В ее разработке участвовали эксперты Microsoft, IBM Internet Security Systems, Cisco, eBay, CERT/CC, Qualys, Symantec, DHS/MITRE. Ее до сих пор поддерживает FIRST, хотя в 2019 году вышел апдейт: CVSS 3.1.
Метрики в CVSS
CVSS позволяет вычислить серьезность риска по десятибалльной шкале. Чем больше число, тем выше опасность и быстрее нужно на нее реагировать.
Степени опасности по шкале:
- низкая — от 0,1 до 3,9 баллов;
- средняя — от 4 до 6,9;
- высокая — от 7 до 8,9,
- критическая — от 9 до 10.
Баллы начисляются исходя из базовых метрик, охватывающих различные аспекты уязвимости:
- Вектор атаки (AV) — выражает «удаленность» атаки и способ эксплуатации уязвимости.
- Сложность атаки (AC) — говорит о сложности выполнения атаки и о том, какие факторы необходимы для ее успеха (наряду с взаимодействием с пользователем, сложность атаки ранее была частью метрики сложности доступа).
- Взаимодействие с пользователем (пользовательский интерфейс) — определяет, требует ли атака активного участия человека или ее можно автоматизировать.
- Требуемые привилегии (PR) — документирует уровень аутентификации пользователя, необходимый для успешной атаки (это заменяет прежнюю метрику аутентификации).
- Область действия (S) — определяет, может ли злоумышленник повлиять на компонент за пределами его области/полномочия безопасности.
- Конфиденциальность (C) — определяет, могут ли неавторизованные лица получить доступ к данным и в какой степени.
- Целостность (I) — измеряет влияние на достоверность данных.
- Доступность (A) — относится к влиянию на доступность данных или услуг для авторизованных пользователей.
Эти показатели дают всестороннее представление об уязвимости. В результате, например, для ПО с открытым исходным кодом, поставляемого несколькими поставщиками, оценки CVSS могут различаться в зависимости от поставляемой версии, способа поставки, платформы и даже способа компиляции ПО.
Применение CVSS
Уязвимости в известных программных продуктах получают официальную оценку. Информация о каждой раскрытой уязвимости из CVE поступает в NIST. Эксперты института анализирует все аспекты уязвимости и присваивают ей степень опасности. В результате специалисты по информационной безопасности получают показатель, на который можно опираться в своих исследованиях. Применение метрик CVSS закреплено в стандартах PCI DSS и СТО БР ИББС, так что можно сказать, что эта оценка имеет юридическую силу.
Что такое уязвимость и эксплоит и почему это очень опасно
Современные программы имеют десятки тысяч строк когда и огромное количество взаимодействующих модулей. Вполне нормально, что в программах иногда появляются ошибки. Они могут быть разные — от простых «глюков» до серьезных ошибок, приводящих к серьезным сбоям. Вот как раз такие и называются уязвимостями .
Большая часть ошибок выявляется на этапе тестирования. Но бывает так, что некоторые ошибки проявляются только в каких-то очень редких условиях. Даже высочайшее качество тестирования не гарантирует отсутствия ошибок.
Например, известны случаи когда навигационное оборудование истребителей выходило из строя при пересечении «нулевого меридиана» или когда высота становилась ниже уровня океана (над Мертвым морем).
Уязвимости могут быть абсолютно во всех программах, включая наши любимые Windows, Office, Internet Explorer, Adobe Flash Player. И это подвергает всех нас опасности что нас взломают, воспользовавшись этими уязвимостями.
Самое опасное, что есть такие ошибки, которые ведут не просто к отказу программы, а к перехвату управления: программа начинает выполнять то, что нужно злоумышленнику. Так он может получить контроль над компьютером.
Вредоносные программы зачастую распространяются именно так: они «знают», как использовать одну или несколько уязвимостей, и наугад пытаются их использовать где только могут.
Эксплоит — это специальная программа (файл, сайт, параметр, входные данные — что угодно), эксплуатирующая уязвимость, то есть создающая условия чтобы произошла ошибка. Если калькулятор взрывается при делении на 0, эксплоитом для него будет дробь с 0 в знаменателе.
А вот отличный пример уязвимости и эксплоита от советского кинематографа:
В этом примере загадка — это эксплоит . А вот то, что роботы не в состоянии ее обработать, зацикливаются и перегреваются — это и есть уязвимость , ошибка в их программе. Потому что никто и никогда не мог представить, что им придется отвечать на такие вопросы.
Откуда появляется информация об уязвимостях? Так или иначе они проявляются в ходе работы программы. И есть специальные исследователи, которые изучают работу программ и аномалии в ходе их работы. Проведя скрупулезную работу, они находят ошибку и понимают к чему она приводит.
Дальше все зависит от исследователя. Если он честный человек, он сообщает об этом производителю и как правило получает награду (она называется bug bounty ). Если он мошенник, он продает информацию хакерам. Такие уязвимости очень ценятся, поскольку о них не знает даже сам производитель. Их называют » уязвимость нулевого дня «, или 0-day .
Что же делать? Как защититься?
Едва производитель получает информацию об ошибке, он тут же вносит изменение в программу, устраняющее эту ошибку. А всем пользователям рассылается обновление или патч , содержащий исправленную версию.
Этот отрезок времени, когда уязвимость и эксплоит уже известны, а патча еще нет — самый критический. Безопасность продукта и уровень производителя определяется сроком в который производитель может устранить уязвимость.
Правопорядок в стране определяется не наличием воров, а умением властей их обезвреживать!
Перефразируя Глеба Жеглова, можно сказать что безопасность программы определяется не наличием уязвимостей, а умением производителя их устранять.
Наша задача как пользователей — постоянно отслеживать обновления всех программ, которыми мы пользуемся, и вовремя их устанавливать. Большинство программ позволяет проверять и устанавливать обновления в автоматическом режиме. Необходимо убедиться, что эта функция включена. Если программа снята с поддержки (устарела) — ее использование опасно.
Вот пример из того же фильма, как ведет себя программа после установки обновления (эксплоит уже не действует):
Источник: dzen.ru