По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Читая различные статьи и новости, вы можете заметить, что существует множество терминов, которые постоянно используются в обсуждениях информационной безопасности. Эта статья посвящена изучению различных терминов по безопасности. Угрозы, уязвимости и эксплойты Уязвимость определяется как слабое место в системе безопасности или недостаток системы, используя который можно намеренно нарушить целостность, конфиденциальность и/или доступность системы. Уязвимость может быть результатом ошибок программирования или проектирования системы, ненадежных паролей, вирусов и других вредоносных программ, скриптовых и SQL-инъекций. Некоторые уязвимости известны только теоретически, другие же активно используются и имеют известные эксплойты. Уязвимость, о которой злоумышленники или специалисты по кибербезопасности узнали раньше чем производитель решения, в котором она обнаружена, называется уязвимостью нулевого дня (0-day, Zero-Day). 0-day уязвимости наиболее опасны для системы и должны устраняться максимально оперативно, чтобы злоумышленники больше не могли их эксплуатировать. Хакеры, и профессионалы в области кибербезопасности соревнуются друг с другом в поисках уязвимостей в системах. Хакеры всегда ищут слабые места в безопасности, которые позволяют им взломать систему или сеть. Профессионалы в области кибербезопасности всегда стремятся обнаружить эти недостатки и исправить их, прежде чем хакеры смогут их найти. Исследователи безопасности постоянно работают с поставщиками операционных систем и программного обеспечения, разработчиками приложений и многими другими организациями, чтобы защитить свои продукты от злоумышленников. Производители многих популярных продуктов, приложений и ОС запускают специальные программы вознаграждения (bug bounty), которые гарантируют денежное вознаграждение исследователям, сообщившим об уязвимости по всем правилам программы. Исследователи, которые занимаются поиском уязвимостей называются bounty-hunter. Каждый раз, когда обнаруживается новая уязвимость, ей присваивается уникальный идентификатор, который публикуется в базе данных. Эта база данных известна как Common Vulnerabilities and Exposures (CVE). После присвоения номера CVE, сведения об уязвимости обычно публикуются в общей базе cve.mitre.org. Данную базу поддерживает организация MITRE. Обмен этой информацией помогает другим IT-специалистам реализовать меры по снижению последствий или внести изменения для обеспечения более полной защиты своих систем. Представьте, что ваша компания уже много лет использует решение от поставщика А. Однажды, в этом решении обнаруживается критическая уязвимость, которая еще не исправлена производителем. Об этом узнает ваша IT-команда. Они могут использовать справочный номер CVE для сбора дополнительной информации, найти описание уязвимости, затронутые приложения, затронутые операционные системы, версии решения, которые подвержены уязвимости. Таким образом, если в вашей организации есть это уязвимое решение, ваша команда может реализовать дополнительные меры безопасности для защиты систем и пользователей. Это делается до тех пор, пока поставщик не выпустит обновление безопасности для устранения уязвимости в системе безопасности. Примером нашумевшей критической уязвимости является EthernalBlue (CVE-2017-0144). Это уязвимость в реализации протокола Microsoft Server Message Block 1.0 (SMBv1) в операционных системах Microsoft Windows. Уязвимость в позволяла злоумышленнику, удаленно получить доступ к системе жертвы и выполнить в ней любой код. Пользуясь данной возможностью 12 мая 2017 года, злоумышленники из группировки Lazarus Group (предположительно спонсируется правительством КНДР) распространили шифровальщик WannaCry на более чем 300 тысячах компьютеров под управлением ОС Windows в 150 странах мира, нанеся ущерб свыше 1$ млрд. Вредоносный код WannaCry зашифровал все файлы на хостах жертв и предлагал заплатить выкуп в биткоинах за ключ на дешифровки. В настоящее время, киберпреступные группировки, использующие вымогательское ПО (шифровальщики) имеют развитую организационную структуру. Разработчики шифровальщика обычно предоставляют лишь само вредоносное ПО, а распространением, взломом и давлением на жертву занимаются другие злоумышленники, которые купили это ВПО. Такая модель, где обязанности между злоумышленниками четко разделены, называется Ransomware-as-a-Service (RaaS) (Вымогательского по как сервис). Как правило, вымогатели стараются атаковать как можно более крупную организацию (такая атака называется Big Game Hunt). Алгоритм таких атак можно описать следующим образом: Злоумышленники каким-либо образом (посредством фишинга, украденных учетных данных, уязвимостей и прочего) получают внутренний доступ к сети атакуемой организации; Затем они ищут и скачивают конфиденциальную информацию, которую можно украсть, чтобы потом шантажировать организацию-жертву публикацией данных материалов; Затем они по возможности удаляют все резервные копии систем, которые планируют атаковать, чтобы их невозможно было оперативно восстановить; Затем они разворачивают вымогательское ПО и начинают давить на организацию для получения выкупа; В случае отказа от организации платить выкуп, они публикуют украденную информацию. Это наносит организации колоссальный репутационный ущерб, в результате которого она даже может закрыться. Наиболее известные преступные группировки, работающие по модели RaaS: Хакеры используют эксплойты, чтобы воспользоваться уязвимостью в системе. Эксплойт определяется как вредоносный код или инструмент, который может быть использован для эксплуатация уязвимости в целевой системе или сети. Эксплойты могут быть как локальными, так и удаленными. Локальный эксплойт должен находиться в целевой системе, т.е хакеру нужно будет получить доступ к хосту, а затем выполнить эксплойт в системе. Удаленный эксплойт позволяет хакеру запускать эксплойт по сети, поэтому злоумышленнику не требуется физический доступ к машине жертвы, а нужно просто подключение по сети. База данных эксплойтов www.exploit-db.com — это база, которую поддерживают создатели Kali Linux, Offensive Security. Она содержит множество эксплойтов, используемых специалистами безопасности для тестирования своих систем. Специалисты по кибербезопасности используют как индивидуальные специализированные, так и коммерческие инструменты для обнаружения уязвимостей. Существуют специалисты по анализу защищенности (пентестеры), которых специально нанимают для того, чтобы они взломали сеть или системы. Задачей пентестеров является обнаружение и использование всех известных и скрытых уязвимостей на хосте (системе) их Заказчика. Пентестер может использовать такой инструмент, как Metasploit, который представляет собой среду разработки эксплойтов. Metasploit позволяет разрабатывать и запускать эксплойты и и другие вредоносные нагрузки на атакуемой системе. Злоумышленники могут также автоматизировать свои эксплойты с помощью наборов эксплойтов (exploit kit). Набор эксплойтов - это предварительно упакованный набор вредоносных нагрузок, который обычно загружается на общедоступный сервер, такой как популярный веб-сервер в Интернете. Целью набора эксплойтов является обнаружение любых уязвимостей в системах пользователей, когда они посещают зараженный веб-сервер. Как только набор эксплойтов обнаружит уязвимость, он попытается использовать ее, просто загрузив вредоносный код в систему жертвы и выполнив его. Примером набора эксплойтов является Angler. Еще один ключевой термин безопасности - угроза. Угроза определяется как все, что может причинить вред активу или создать опасность для него. Примером угрозы может быть как открытый наружу порт удаленного доступа, так и недовольный сотрудник, который намеревается нарушить работоспособность сети организации после своего увольнения из компании. Это намерение сосредоточено на разрушении одного из трех принципов CIA триады: доступности. Охота за угрозами (Threat Hunting) становится очень популярным видом деятельности в мире кибербезопасности. Она включает в себя проактивный поиск в системах и сетях для обнаружения и смягчения любого типа киберугроз, которые ускользнули от существующих средств и решений безопасности. Важно, чтобы специалисты по безопасности защищали свою внутреннюю сеть с помощью контрмер так же, как они защищают свою сеть периметра. Контрмера — это средство защиты, предназначенное для смягчения (устранения) потенциальной угрозы. Примером контрмеры является реализация мер безопасности уровня 2, таких как безопасность порта, динамическая проверка ARP (Dynamic ARP Inspection - DAI), контроль доступа к сети (Network Access Control - NAC), отслеживание DHCP (DHCP snooping) и т. д. Выявление субъектов угрозы Злоумышленник — это обычно человек или группа людей, которые намерены использовать свои навыки для выполнения противоправных действий в отношении организации, человека или системы. У всех хакеров разные намерения взломать целевые системы, одни взламывают ради развлечения, другие - ради финансовой выгоды. Ниже приведен список различных типов субъектов угроз и их намерений: Script kiddie: это тот, кто использует готовые скрипты и инструменты, созданные более опытными хакерами. Этому человеку не хватает реальных технических знаний в области безопасности, которые есть у настоящих хакеров, но он имеет такое же намерение нанести вред системе или сети. Script kiddie могут нанести такой же урон системе, как и настоящие хакеры, даже если им не хватает знаний или навыков. Они могут следовать инструкциям опытного хакера и достигать тех же результатов без полного понимания технических деталей. Hacktivists: хактивист — это активист с набором навыков хакера. Этот человек использует свои хакерские навыки для достижения политических или социальных целей. Хактивисты используют свои навыки для выполнения таких действий, как повреждение веб-сайтов (deface), кража и утечка конфиденциальной информации в Интернете и т. д. Это их способ протеста. Примером может быть группировка Anonymous. Инсайдер: в то время как организация проводит тщательную проверку всех потенциальных сотрудников во время собеседования, хакеры также могут притвориться простым и невинным человеком, который заинтересован в трудоустройстве в целевой организации. Цель состоит в том, чтобы получить работу в качестве доверенного сотрудника, а затем, находясь внутри, хакер сможет лучше изучить сеть и системы безопасности изнутри, что облегчит взлом организации. Инсайдером также считается недовольный сотрудник, которым может или уже нанёс какой-либо ущерб организации посредством информационных систем или кражи данных с них. Это - внутренняя угроза. Организованная преступность: В настоящее время некоторые хакеры работают в группах с намерением использовать свои навыки и ресурсы для получения финансовой выгоды. Каждый человек в организованной преступной группе обычно имеет специализацию и играет определенную роль в команде. Обычно есть лидер, который предоставляет финансовые ресурсы, необходимые группе для приобретения лучших инструментов (как правило в dark/deepweb), чтобы гарантировать, что их атаки на цели будут успешными. К данному типу также можно отнести RaaS-группировки. Спонсируемые государством (state-sponsored): Этот тип хакеров спонсируется правительством и проводит различные кибероперации в интересах своей страны. К таким операциям чаще всего относиться кибершпионаж или кибератаки против правительственных и частных организаций других стран. Этой группе хакеров обычно доступны лучшие инструменты и оборудование. Атаки, которые проводят последние два типа группировок также часто называют Advanced Persistent Threat (APT). Атака APT превосходит обычные киберугрозы, так как ориентируется на взлом конкретной цели и готовится на основании информации о ней, собираемой в течение длительного времени. APT осуществляет взлом целевой инфраструктуры посредством эксплуатации программных уязвимостей и методов «социальной инженерии». Поскольку APT-атаки может отслеживать сразу несколько групп исследователей кибербезопасности (как правило - производителей/вендоров решений по кибербезопасности), одна группировка может иметь множество названий. Примеры известных APT-группировок: LAZARUS (APT38, Guardians of Peace, Whois Team, HIDDEN COBRA, Zinc) - Северокорейская APT-группировка, ответственная за распространение WannaCry PLA Unit 61398 (APT 1, Comment Crew, Comment Panda, GIF89a, and Byzantine Candor) - Китайская APT-группировка, занимающаяся кибершпионажем Charming Kitten ( APT35, Phosphorus, Ajax Security,NewsBeef ) - Иранская APT-группировка Хакеров, которые используют свой набор навыков для противоправных намерений также называют black hat, а white hat – это хорошие парни в индустрии кибербезопасности, которые используют свои навыки для защиты организаций. Однако есть и gray hat, которые располагаются между white и black hat. Серые хакеры могут использовать свои навыки как для добрых, так и для дурных намерений, например, если они работают специалистом по безопасности и параллельно совершают кибератаки. Security Operations Center (SOC) Центр управления безопасностью (Security Operations Center - SOC) - это команда людей, прошедших обучение и имеющих высокую квалификацию в области кибербезопасности. Целью SOC является мониторинг, обнаружение, предотвращение и устранение любых угроз в сети организации. Внутри SOC существует множество процессов, которым необходимо следовать, чтобы каждый аналитик или инженер мог эффективно обрабатывать все данные, которые поступают в SOC от различных сетевых устройств и устройств безопасности. Эти процессы помогают команде SOC лучше отслеживать входящие данные и выявлять любые угрозы, возникающие в организации. У SOC обычно есть набор процедур, инструментов и утилит, которые постоянно обновляются. По мере появления новых угроз и атак процедуры, инструменты и утилиты могут быть изменены, чтобы обеспечить лучшее оснащение SOC для обработки киберугроз следующего поколения. Модуль Runbook, иногда называемый playbook, используется в SOC, чтобы помочь команде лучше отслеживать процессы реагирования на инциденты в повседневных операциях. На следующем рисунке показаны компоненты модуля Runbook или playbook SOC: Многие SOC автоматизируют свои модули Runbook, чтобы сократить время реакции на инциденты безопасности. Этот процесс известен как Runbook Automation (RBA). Многие организации не сразу обнаруживают угрозы или другие формы нарушений безопасности в своей сети. Иногда организации требуется несколько недель или даже месяцев, чтобы обнаружить угрозу в своей сети. Между моментом первоначального взлома и моментом обнаружения хакер или вредоносное ПО могут нанести большой ущерб системам и сетям жертвы. Автоматизируя процессы в SOC, RBA сокращает время между обнаружением и устранением. Киберкриминалистика (форензика) Как и следователь, который ловит преступника, эксперт в области безопасности должен правильно собрать доказательства киберпреступления. Для этого он должен приехать на место киберпреступления (в пострадавшую от кибератаки организацию), опросить свидетелей и провести тщательный анализ атакованной сети и ее активов. В зависимости от сложности атаки, эта работа может длиться очень долго, ведь кибератака может включать несколько этапов и в процессе расследования будут обнаруживаться новые пострадавшие активы. Для того, чтобы атакованная компания могла обратиться с суд, эксперт должен предоставить неопровержимые доказательства взлома. Эти доказательства хранятся на атакованных активах (компьютерах, серверах, сетевых устройствах). Они могут передаваться между несколькими людьми, которые работают над тем же делом. Чтобы гарантировать правильное отслеживание, перемещения доказательств и то, кому они принадлежат, когда они передаются от человека к человеку, используется chain of custody. Термин chain of custody используется во время судебного расследования. Chain of custody обычно содержит следующие сведения: Фамилия эксперта Дата и время получения доказательств Дело и номер Номер экземпляра, если имеется несколько частей Причина, по которой были собраны доказательства Место нахождения доказательств Если chain of custody не поддерживается должным образом, доказательства могут быть не приняты в суде. Кроме того, необходимо убедиться, что доказательства никоим образом не изменяются и что они всегда сохраняют свое первоначальное состояние. Эксперты создают копию доказательств и работают только с копией (например, снимают образ диска с атакованного компьютера) чтобы сохранить целостность оригинала. Первое что попросит эксперт, получив задачу на кибекриминалистическое расследование - ничего не трогать до его приезда. В отрасли существуют различные криминалистические инструменты, которые позволяют следователю получить изображение цифровых доказательств. Вот некоторые из этих инструментов: Программное обеспечение EnCase для судебной экспертизы Набор инструментов для криминалистической экспертизы AccessData (AccessData Forensic Toolkit - FTK) Наконец, при транспортировке любых доказательств из одного места в другое, например, с места преступления в судебно-медицинскую лабораторию, очень важно, чтобы chain of custody также поддерживалась должным образом, чтобы гарантировать, что никакие доказательства не будут подделаны или неправильно обработаны по пути. Обратная разработка (Reverse engineering) Reverse engineering - это метод изучения приложения, программного обеспечения или объекта, для определения того, как они на самом деле функционируют и работают. В области кибербезопасности инженер по reverse engineering - это профессионал, который использует свои навыки, чтобы изучить вредоносное ПО, для лучшего понимания того, как обнаруживать и защищать системы от любых будущих атак. Во время reverse engineering, специалист по безопасности также выполняет анализ вредоносных программ, чтобы узнать и понять влияние и функции этих программ. В SOC обычно есть люди, специализирующиеся на reverse engineering, которые изучают (исследуют, разбирают) вредоносное ПО после того, как оно было обнаружено и локализовано в сети. Процесс изучения начинается с локализации вредоносного ПО в сети, например, с удаления всех зараженных систем из сети и создания клона или образа жестких дисков для анализа аналитиком безопасности и специалистом по reverse engineering вредоносных программ. Специалист по reverse malware отвечает за определение следующих сведений о вредоносном ПО: Как работает вредоносная программа? В чем цель вредоносного ПО? Как распространяется вредоносное ПО? Ниже приведен алгоритм reverse engineering вредоносных программ: Изоляция зараженных систем в сети. Создание образа зараженного компьютера и перемещение его в изолированную сеть. Выполнение reverse engineering вредоносных программ. Анализ того, что пытается сделать вредоносная программа. После того, как вредоносное ПО будет тщательно исследовано, SOC может приступить к внедрению новых контрмер для защиты от этой угрозы в будущем. Различные инструменты, которые помогают аналитику во время расследования: Утилиты изучения реестра Сетевые утилиты Утилиты изучения изменений файлов Утилиты отладки и дизассемблера Персональные данные (ПДн) и персональные данные пациента Мы живем в мире, где практически невозможно не хранить нашу информацию в системе или сети. Независимо от того, совершаете ли вы покупки в интернет-магазине, совершаете онлайн-транзакцию в своем банке или даже оплачиваете счета за коммунальные услуги онлайн, системы, которые мы используем, чтобы предоставить нам эти возможности, хранят информацию о нас. При использовании онлайн-банкинга, банку требуются личные данные о вас для создания учетной записи, и эта информация хранится в системе и сети банка. То же самое и с любой организацией в современном мире. В разных странах действуют правила, требующие, чтобы эти системы, сети и информация были защищены законом. Один тип данных, которые обычно хранят компании о своих клиентах, известен как информация, позволяющая установить личность (Personally Identifiable Information - PII) они же - персональные данные (ПДн). ПДн - это любая информация, которая может использоваться для идентификации личности. Представьте, что вы частый покупатель на одном из популярных интернет-магазинов. Вам необходимо будет создать учетную запись и предоставить некоторую личную информацию о себе, такую как ваше имя, дату рождения и даже номер кредитной карты. Эта информация относится к категории ПДн. ПДн информация всегда должна быть защищена потому, что, если злоумышленник взломал систему и/или сеть, в которых хранятся ваши данные, хакер может украсть вашу информацию и передать ее в darknet или продать ее, позволяя другим злоумышленникам атаковать вас лично. Как бы вы относились к утечке вашей личной информации в Интернете? Думаем, отрицательно. Ниже приведены примеры ПДн (PII): Имя Дата рождения Номер кредитной карты Водительское удостоверение Любые биометрические данные, такие как отпечатки пальцев, геометрия лица и так далее Девичья фамилия матери Номер СНИЛС, ИНН Реквизиты банковского счета Адрес электронной почты Номер телефона Физический адрес проживания Ниже приведены примеры организаций, которые хранят ПДн о вас: Медицинские учреждения Финансовые организации Государственные учреждения Медицинские работники всегда хранят информацию о своих пациентах, и эта информация всегда должна быть конфиденциальной и безопасной. Защищенная медицинская информация (Protected Health Information - PHI) - это любая информация, которую медицинское учреждение (организация) хранит о своих пациентах, которая может быть использована для их идентификации. Ниже приведены примеры PHI: Имя пациента Номер телефона Адрес электронной почты Адрес проживания Любые записи медицинских журналах Номер медицинского полиса, СНИЛС, ИНН Водительское удостоверение Биометрические данные о пациенте Информация о психическом или физическом здоровье пациента Информация о поставщике медицинских услуг для пациента Как ПДн (PII), так и PHI являются крайне чувствительной информацией и для их защиты должны использоваться наиболее надежные методы. Утечки такого рода информации сильно бьют по репутации компаний и по доверию к ним со стороны клиентов. Кроме того, в некоторых странах (в том числе в РФ) существуют законы, обязывающие компании серьезно относиться к обработке и защите персональных данных и предусматривающие серьезные наказания в случае нарушения данного законодательства. Понимание риска По мере того, как все больше организаций и людей подключают свои системы и частные сети к Интернету, возрастает риск, поскольку многие из этих устройств и сетей уязвимы для большинства кибератак. Риск определяется как возможность причинения вреда или ущерба чему-либо, или кому-либо. В области кибербезопасности очень сложно полностью учесть все возможные риски и угрозы из сети или всей организации. Важное примечание! По данным Национального института стандартов и технологий (National Institute of Standards and Technology - NIST), Риск = Угроза x Уязвимости x Воздействие. При расчете риска мы определяем угрозу как все, что имеет намерение использовать уязвимость на целевом объекте. Как мы уже узнали, уязвимость - это слабое место в системе. Поверхность же атаки - это сумма всех слабых мест в целевой системе. Например, чем больше компонентов установлено на сервере, тем больше число потенциально уязвимых мест и, соответственно, поверхность атаки. Воздействие - это фактический ущерб, который будет нанесен цели в случае успеха атаки. В мире кибербезопасности сложно установить фиксированное числовое значение для каждой из этих переменных. Таким образом, мы понимаем, что риск может существовать в случае нанесения ущерба, который повлиял на конфиденциальность, целостность и/или доступность. Ниже приведены различные типы рисков, с которыми организации сталкиваются каждый день: Бизнес-риск: Это потенциальные риски или риски, которые возникают в результате ведения повседневной деятельности. Примером бизнес-риска является то, что конкурент может решить открыть новый филиал рядом с вашей организацией с намерением переманить ваших клиентов. Риск данных: этот риск возникает, когда данные украдены или скомпрометированы злоумышленником или кибератакой. Примером риска потери данных является возможность заражения программой-вымогателем, которая шифрует все ваши данные и потребует выкуп для дешифрования данных. Системный риск: Это когда системы, которые используются для обеспечения повседневной работы бизнеса, остаются уязвимыми для кибератак и угроз, таких как вредоносное ПО. Риск потери данных: этот тип риска существует, когда данные в системе теряются из-за какого-либо сбоя системы. Примером риска потери данных является возможность отказа жесткого диска, на котором хранятся важные файлы и записи. Инсайдерский риск: Это риск деятельности сотрудника, который намеревается взломать корпоративную сеть и нанести ущерб системам, принадлежащим организации. Риск приложения: этот тип риска представляет собой потенциальную возможность сбоя важного приложения в корпоративной сети. Специалисты в области безопасности должны научиться минимизировать поверхность атаки и снизить риск кибератак на любые активы. Чтобы снизить вероятность кибератак, лучше всего сначала идентифицировать все активы внутри организации. Актив - это все, что имеет ценность для компании. Активы можно разбить на следующие категории: Материальные активы - это физические объекты, представляющие ценность для организации. Примерами материальных активов являются компьютеры, серверы, сетевые устройства, такие как маршрутизаторы и коммутаторы, устройства безопасности, такие как межсетевые экраны и системы IPS, а также мебель. Нематериальные активы - это объекты, к которым мы не можем физически прикоснуться. Примерами нематериальных активов являются данные, интеллектуальная собственность, процессы, процедуры и все, что находится в цифровом формате. Люди: люди, которые являются сотрудниками организации, и данные клиентов также должны быть защищены. Если хакеры смогут обмануть ваших сотрудников в ходе атаки, это может привести к тому, что вся сеть организации будет скомпрометирована. В мире кибербезопасности угрозы существуют повсюду вокруг нас, и уровень риска увеличивается с каждым днем. Многие организации считают, что все киберугрозы и атаки исходят из Интернета, и, возможно, купят «дорогой» брандмауэр у надежного провайдера в надежде, что он защитит корпоративную сеть. Как было сказано ранее, это одноуровневый подход, который не защищает от всех киберугроз или атак. Многие организации не осознают или иногда осознают слишком поздно, что более 90% кибератак исходят из их внутренней сети, за устройством безопасности периметра, которое должно было защищать их сеть. Это может быть инсайдер, который представляет собой злоумышленника, выдающий себя за доверенного сотрудника или недовольный сотрудник, который хочет вывести из строя ИТ-инфраструктуру компании по личным причинам, или не осведомленный сотрудник, который открыл фишинговое письмо и запустил вредоносный файл из вложения или вставил найденную на парковке флешку в корпоративный ноутбук. Защита вашей внутренней сети всегда должна быть не менее важной, чем защита периметра. Управление рисками Управление рисками включает в себя процессы, которые используются для определения потенциальных и существующих рисков, которые могут повлиять на организацию, оценку каждого риска и внедрения процессов и процедур для снижения рисков. Ниже приведены четыре стратегии, используемые для снижения рисков: Принятие риска: при принятии риска организация признает наличие рисков и не принимает никаких контрмер для снижения или устранения риска. Эта ситуация часто возникает, когда стоимость ущерба от риска не перевешивает затраты на осуществление контрмер и мер безопасности. Избегание риска: при избегании риска организация идентифицирует любые действия, которые могут создавать риск, и прекращает их, чтобы просто избежать возможности риска. Передача риска: при наличии риска организация может передать ответственность за управление риском другой организации, например, стороннему поставщику услуг. Ограничение риска: Ограничение риска обычно представляет собой баланс между принятием и избеганием. Ниже приведены рекомендации, которые помогут понять, как снизить риск с помощью стратегического подхода: Определите все уязвимости, которые представляют опасность для организации. Внедрите технические меры безопасности, чтобы снизить риск использования уязвимостей злоумышленником. Убедитесь, что технический контроль безопасности не стоит дороже, чем раскрытие или потенциальные финансовые потери, если система будет скомпрометирована. Следующая диаграмма помогает понять необходимость контроля безопасности: Когда дело доходит до расчета или измерения вероятности риска, эту концепцию можно разбить на следующие оценки риска: Количественный риск Качественный риск В количественном риске, риск оценивается числовым значением. Например, если в организации есть критически важный сервер приложений, который случайно перестает работать в один прекрасный день, численное значение будет представлять собой финансовые затраты на замену сервера. Кроме того, ожидаемая продолжительность единичных убытков (Single Loss Expectancy - SLE) может быть рассчитана для одноразового события, в то время как годовая ожидаемая продолжительность убытков (Annual Loss Expectancy - ALE) также может быть рассчитана для общего количества сбоев или инцидентов, произошедших в течение всего года. Что касается качественного риска, то оценка включает в себя присвоение каждому риску различных уровней риска, таких как критический, высокий, средний и низкий. При этом типе оценки рисков эксперт дает свое мнение о том, какие факторы и риски являются значимыми для организации. Важным методом, который многие организации используют для выявления уязвимостей и рисков, является проведение теста на проникновение в системы и сети. Тест на проникновение обычно включает в себя работу квалифицированного тестировщика на проникновение (пентестера), который будет имитировать реальные кибератаки на системы и сети компании, которые взаимно и юридически согласованы в правилах взаимодействия. Цель теста на проникновение состоит в том, чтобы обнаружить все уязвимости на цели и понять, как настоящий хакер сможет скомпрометировать организацию. Если пентестер способен найти эти слабые места в системе безопасности и использовать их, то это может сделать и настоящий хакер со злым умыслом. Организация может использовать эти знания для повышения уровня безопасности своих систем и сетей, чтобы обезопасить себя. Принцип наименьших привилегий Чтобы снизить риск внутри компании, существует концепция применения принципа наименьших привилегий к каждому сотруднику или пользователю. Эта концепция означает, что каждому сотруднику должны быть предоставлены только те привилегии, которые ему потребуются для выполнения своих повседневных обязанностей, и не более того. Эта концепция гарантирует, что у пользователя нет привилегий сверх необходимых, так что пользователь не сможет выполнять какие-либо действия в сети или системе, выходящие за рамки его обязанностей. Другой прием - ротация обязанностей внутри всей организации. Эта концепция заключается в том, что каждый сотрудник чередуется между различными обязанностями в течение определенного периода времени. Например, сотрудник меняет обязанности каждые 4 месяца. Общей проблемой во многих организациях является то, что один человек обычно выполняет роль и функции на двух или более должностях. Концепция, известная как разделение обязанностей, заключается в том, что человек, который должен вносить изменения в систему, например, изменять конфигурацию брандмауэра, не должен быть тем же лицом, которое одобряет это изменение. Всегда должен быть отдельный человек, который вносит изменение, в то время как другой человек утверждает изменение. Эта концепция предотвращает несанкционированные изменения и контроль системы или сети одним человеком. Иногда организация может заметить, что сотрудник выполняет неправомерные действия в системах компании. Концепция обязательного отпуска вынуждает подозреваемого сотрудника взять отпуск, и в течение этого времени сотрудник не будет иметь доступа к корпоративной сети. Если неправомерные действия прекратятся во время нахождения подозреваемого сотрудника в отпуске, то становится очевидным, кто выполнял эти действия.
img
Сначала выясним что такое протокол SOAP (Simple Object Access Protocol). Это протокол обмена сообщениями в вычислительной среде, созданный в 1998 году группой программистов во главе с Дейвом Винером. Консорциум W3C поддерживает протокол SOAP. Окончательный вариант представленного стандарта - SOAP 1.2. Simple Object Access Protocol - протокол доступности объектов. Это называлось протоколом версии SOAP 1.1. Данное наименование отражает его значимость - обращение к различным методам для удаленных объектов. В настоящее время имя протокола SOAP сильно поменялось, и поэтому вы можете услышать другое имя от разработчиков. SOAP не может отличить вызовы от процедур и ответов, и его возможности включают определение форматов сообщений в виде конкретного XML-документа. Сообщение может содержать информацию о вызовах процедур, ответах, запросах и так далее. Наиболее важной частью для технологии интернет услуг является вышеописанная технология. Данная технология позволяет производить обмен данными между различными сетями. Если же говорить другими словами, то он допускает передачу информации из различных интернет-сервисов (за счет своего рода инкапсуляции). Представленное действие обеспечивает эффективную связь по сети между получателем и отправителем XML документов, путем поддержания общего протокола передачи информации. SOAP является базовой моделью одностороннего подключения, что позволяет обеспечить согласованный обмен сообщениями между получателем и отправителем. Технология SOAP включает в себя специальное соглашение, которое предназначено для преобразования односторонних сообщений работая по принципу "запрос-ответ", а также возможность определить передачу всего документа XML. Общая структура SOAP сообщения Сообщение SOAP - это документ XML, информация которого складывается из трех основных элементов: конверта, заголовка и тела. Обработка ошибок в SOAP-сообщениях Если сервер SOAP обнаруживает ошибку при обработке входящего сообщения SOAP (Simple Object Access Protocol), обработка останавливается, и клиенту отправляется сообщение SOAP с элементом ошибки и сообщением об ошибке. Типы ошибок: Список кодов ошибок постоянно меняется и расширяется. Версия 1.1 определяет следующие типы ошибок: VersionMismatch - Неверное пространство имен (неверная версия или неверное имя). MustUnderstand - Блок заголовка, помеченный атрибутом mustUnderstand со значением 1, не соответствует его синтаксису, определенному в схеме документа. Client - XML-документ, содержащий сообщение, создан неправильно и поэтому сервер не способен его подвергнуть обработке. Клиент обязан изменить сообщение. Server - Сервер не способен подвергнуть обработке правильно зарегистрированное сообщение по внутренним причинам. Типы ошибок в версии 1.2: VersionMismatch - Неправильное пространство имен (неверная версия или ее имя были введены неправильно, или в сообщении было обнаружено имя элемента XML, не определенное в этом пространстве имен). Сервер записывает элемент в заголовок ответа, который отображает вложенные элементы с допустимыми именами пространства имен, которые понимает сервер. MustUnderstand - Блок заголовка, помеченный атрибутом mustUnderstand со значением true, не отвечает своему синтаксису, определенному в схеме документа. Data Encoding Unknown - В сообщении встречаются непонятные данные, возможно, они записаны в неизвестной кодировке. Sender - Документ XML, содержащий сообщение, искажен, и сервер не может его обработать. Клиент должен изменить сообщение. Receiver - Сервер не может обработать правильно записанное сообщение по своим внутренним причинам, например, отсутствует необходимый анализатор XML. Сервер может добавить некоторые типы ошибок к представленным выше типам ошибок. Обычно они подробны стандартным, и сообщения о них появляются в элементах, как показано выше. Вкратце - вот что из себя представляет этот протокол.
img
В последнее время DevOps является одним из самых громких словечек в мире технологий, поскольку предлагает организации огромное количество преимуществ для сокращения жизненного цикла разработки программного обеспечения. Что такое DevOps? Нет единого определения или правильного ответа на вопрос «Что такое DevOps». DevOps (акроним от англ. development и operations) не является инструментом, технологией или какой-либо структурой; это больше философия и концепция. Это набор практик, сочетающий разработку программного обеспечения (Dev) и ИТ-операции (Ops), который помогает сократить жизненный цикл разработки системы и обеспечить непрерывную интеграцию и поставку с высоким качеством программного обеспечения. Подробно про DevOps можно прочитать в нашей статье ”DevOps – это философия будущего: кто, что и как?” и в нашем разделе про него. Преимущества DevOps Улучшенное сотрудничество и общение Ускоренная доставка программного обеспечения или продуктов Постоянное снижение затрат Улучшенный процесс Ускоренное решение проблем В мире DevOps нет ни одного волшебного инструмента, который бы соответствовал всем потребностям. Речь идет о выборе правильного инструмента, который соответствует потребностям организации. Давайте узнаем о них. Что такое DevOps, что нужно знать и сколько получают DevOps - специалисты? Инструменты DevOps Планирование и сотрудничество JIRA JIRA - это один из популярных инструментов управления проектами, разработанный Atlassian, который используется для отслеживания проблем, ошибок и проектов. Это позволяет пользователю отслеживать проект и выпускать статус. Его можно легко интегрировать с другими продуктами Atlassian, такими как Bitbucket, в дополнение к другим инструментам DevOps, таким как Jenkins. Slack Slack - это бесплатный инструмент для совместной работы на основе облака, для групповой коммуникации и совместной работе в одном месте. Этот инструмент также можно использовать для обмена документами и другой информацией среди членов команды. Это также может быть легко интегрировано с другими инструментами, такими как GIT, Jenkins, JIRA и так далее. А еще Slack можно интегрировать с Asterisk Zoom Zoom - это платформа для веб-конференций и мгновенного обмена экранами. Вы можете общаться со своей командой через аудио или видео. Неважно, насколько велика ваша команда, Zoom способен принять до 1000 получателей на онлайн-встречу. Clarizen Clarizen - это программное обеспечение для совместной работы и управления проектами, которое помогает отслеживать проблемы, управлять задачами и управлять портфелем проектов. Clarizen легко настроить, и он имеет удобный интерактивный интерфейс пользователя. Asana Asana - это мобильное и веб-приложение, которое помогает командам эффективно и результативно организовывать, отслеживать и управлять своей работой. Он используется для отслеживания ежедневных командных задач и поддержки обмена сообщениями и общения в организации. Управление исходным кодом SVN SVN - это централизованный инструмент контроля версий и исходного кода, разработанный Apache. SVN помогает разработчикам поддерживать разные версии исходного кода и вести полную историю всех изменений. Git Git - это распределенная система контроля версий, которая нацелена на скорость, целостность данных, поддержку распределенных, нелинейных рабочих процессов. Помимо управления исходным кодом, его также можно использовать для отслеживания изменений в любом наборе файлов. Подробнее про Git Bitbucket Bitbucket - это веб-хостинговая платформа, разработанная Atlassian. Bitbucket также предлагает эффективную систему проверки кода и отслеживает все изменения в коде. Его можно легко интегрировать с другими инструментами DevOps, такими как Jenkins, Bamboo. GitHub GitHub - это платформа для размещения кода, предназначенная для контроля версий и совместной работы. Он предлагает все функции распределенного контроля версий и управления исходным кодом (SCM) в Git в дополнение к своим функциям. GitHub предлагает функции контроля доступа и совместной работы, такие как отслеживание ошибок, создание функций и запросов, управление задачами и так далее. Инструменты для сборки Ant Apache Ant - это инструмент для сборки и развертывания на основе Java с открытым исходным кодом. Он поддерживает формат файла XML. Он имеет несколько встроенных задач, позволяющих нам компилировать, собирать, тестировать и запускать приложения Java. Maven Maven - это инструмент для автоматизации сборки, который в основном используется для Java-проектов. Он содержит файл XML, в котором описывается создаваемый программный проект, его зависимости от других внешних компонентов и модулей, последовательность сборки, каталоги и другие необходимые подключаемые модули. Подробно про Maven Grunt Grunt - это инструмент командной строки Javascript, который помогает создавать приложения и помогает разработчикам автоматизировать повторяющиеся задачи, такие как компиляция, модульное тестирование, кодирование кода, проверка и так далее. Это хорошая альтернатива для таких инструментов, как Make или Ant. Gradle Gradle - это система автоматизации сборки с открытым исходным кодом, основанная на концепциях Apache Maven и Apache Ant. Он поддерживает Groovy правильный язык программирования вместо XML-файла конфигурации. Он предлагает поддержку добавочных сборок, автоматически определяя, какие части сборки обновлены. Управление конфигурацией Puppet Puppet - это инструмент управления конфигурацией с открытым исходным кодом, используемый для настройки, развертывания и управления многочисленными серверами. Этот инструмент поддерживает концепцию инфраструктуры как кода и написан на Ruby DSL. Он также поддерживает динамическое масштабирование машин по мере необходимости. Подробно про Puppet, его плюсы и минусы и примеры использования Chef Chef - это инструмент управления конфигурацией с открытым исходным кодом, разработанный Opscode с использованием Ruby для управления инфраструктурой на виртуальных или физических машинах. Он также помогает в управлении сложной инфраструктурой на виртуальных, физических и облачных машинах. Подробно про Chef и его плюсы и минусы Ansible Ansible - это инструмент для управления ИТ-конфигурацией с открытым исходным кодом, обеспечения программного обеспечения, оркестровки и развертывания приложений. Это простой, но мощный инструмент для автоматизации простых и сложных многоуровневых ИТ-приложений. Подробно про Ansible и его плюсы и минусы SaltStack SaltStack - это программное обеспечение с открытым исходным кодом, написанное на python и использующее push-модель для выполнения команд по протоколу SSH. Он предлагает поддержку как горизонтального, так и вертикального масштабирования. Он поддерживает шаблоны YAML для записи любых скриптов. Terraform Terraform - это инструмент с открытым исходным кодом для безопасного, эффективного построения, изменения, развертывания и управления версиями инфраструктуры. Он используется для управления существующими и популярными поставщиками услуг, а также для создания собственных решений. Это помогает в определении инфраструктуры в конфиге или коде и позволит пользователю легко перестраивать или изменять и отслеживать изменения в инфраструктуре. Vagrant Vagrant является одним из популярных инструментов для создания и управления виртуальными машинами (VM). Он имеет простой в использовании и настраиваемый рабочий процесс, ориентированный на автоматизацию. Это помогает сократить время настройки среды разработки, увеличивает производственный паритет. Подробно про Vagrant Непрерывная интеграция Jenkins Jenkins является одним из самых популярных инструментов DevOps с открытым исходным кодом для поддержки непрерывной интеграции и доставки через DevOps. Это позволяет осуществлять непрерывную интеграцию и непрерывную доставку проектов независимо от того, над чем работают пользователи платформы, с помощью различных конвейеров сборки и развертывания. Jenkins можно интегрировать с несколькими инструментами тестирования и развертывания. Подробно про Jenkins Travis CI Travis CI - это облачная распределенная платформа непрерывной интеграции, используемая для создания и тестирования проектов, размещенных на GitHub и Bitbucket. Это настраивается путем добавления файла YAML. Его можно протестировать бесплатно для проектов с открытым исходным кодом и на платной основе для частного проекта. Bamboo Bamboo является одним из популярных продуктов, разработанных Atlassian для поддержки непрерывной непрерывной интеграции. Его большая часть функциональности предварительно встроена, что означает, что нам не нужно загружать различные плагины, такие как Jenkins. Он также поддерживает плавную интеграцию с другими продуктами Atlassian, такими как JIRA и Bitbucket. Hudson Hudson - это свободное программное обеспечение, написанное на JAVA и работающее в контейнере сервлетов, например, GlassFish и Apache Tomcat. Он обеспечивает возможность запуска вашего пакета автоматизации с любыми изменениями в соответствующей системе управления исходными кодами, такими как GIT, SVN и так далее. Он также обеспечивает поддержку всех базовых проектов maven и Java. TeamCity TeamCity - это непрерывная интеграция на основе сервера, которая создает инструмент управления, разработанный JetBrains. Он имеет простой и удобный пользовательский интерфейс (UI) и обеспечивает прогресс сборки, детализирует информацию о сборке и хронологическую информацию для всех конфигураций и проектов. CircleCI CircleCI доступен как в виде облачных, так и локальных решений для непрерывной интеграции. Запускать и поддерживать легковесные и легкочитаемые конфигурации YAML просто и быстро. Непрерывная безопасность Snyk Интегрируйте Snyk в жизненный цикл разработки, чтобы автоматически находить и исправлять уязвимости безопасности с открытым исходным кодом. Он поддерживает JS, .Net, PHP, NPM, jQuery, Python, Java и так далее, и может быть интегрирован в кодирование, управление кодом, CI/CI, контейнер и развертывание. Snyk имеет самую большую базу уязвимостей с открытым исходным кодом Netsparker Netsparker автоматически сканирует ваше приложение на наличие уязвимостей и предоставляет действенные секретные отчеты, чтобы вы могли действовать в соответствии с приоритетом. Сценарий безопасности DevOps заключается в проверке нового коммита и сообщении об ошибке непосредственно в систему отслеживания, например, Jira или GitHub, и повторном сканировании после исправления разработчиком. Вы видите, что это интегрируется на каждом этапе SDLC (Software Development Life Cycle - жизненный цикл разработки). Тестирование Selenium Selenium - самый популярный инструмент для тестирования с открытым исходным кодом. Он поддерживает автоматизацию тестирования в различных браузерах и операционных системах. Его легко интегрировать с инструментами управления тестированием, такими как ALM, JIRA, а также с другими инструментами DevOps, такими как Jenkins, Teamcity, Bamboo и так далее. TestNG TestNG - это среда тестирования с открытым исходным кодом, разработанная и вдохновленная Junit и Nunit. Ее можно легко интегрировать с веб-драйвером selenium для настройки и запуска сценариев автоматизации тестирования. Она также генерирует различные отчеты о тестировании, такие как HTML или XSLT. JUnit JUnit - это инфраструктура модульного тестирования с открытым исходным кодом, используемая разработчиками для написания и запуска повторяющихся тестов. JUnit поддерживает различные аннотации тестов, с помощью которых любой разработчик может написать цельный тестовый блок. Его легко интегрировать с другими инструментами DevOps, такими как Jenkins, GIT и так далее. Мониторинг Nagios Nagios - это открытый исходный код и один из самых популярных инструментов для непрерывного мониторинга. Nagios помогает отслеживать системы, приложения, услуги и бизнес-процессы в культуре DevOps. Он предупреждает пользователей, когда что-то не так с инфраструктурой, и предупреждает их, когда проблема решена. Подробно про Nagios Grafana Grafana - это аналитическая платформа с открытым исходным кодом, позволяющая отслеживать все показатели инфраструктуры, приложений и аппаратных устройств. Вы можете визуализировать данные, создавать и совместно использовать панель инструментов, настраивать оповещения. Вы можете получать данные из более чем 30 источников, включая Prometheus, InfluxDB, Elasticsearch, AWS CloudWatch и так далее. Sensu Sensu - это инструмент для мониторинга с открытым исходным кодом, написанный на Ruby, который помогает просто и эффективно контролировать серверы, сервисы, приложения, облачную инфраструктуру. Его легко масштабировать, чтобы вы могли легко отслеживать тысячи серверов. New Relic New Relic - это программный аналитический продукт для мониторинга производительности приложений (APM - Application Performance Monitoring), который предоставляет в реальном времени трендовые данные о производительности веб-приложений и уровне удовлетворенности, которое испытывают конечные пользователи. Он поддерживает сквозную трассировку транзакций и отображает их с помощью различных цветовых диаграмм, графиков и отчетов. Datadog Datadog - это инструментальный инструмент метрики сервера. Он поддерживает интеграцию с различными веб-серверами, приложениями и облачными серверами. Его сервисная панель предоставляет различные графики мониторинга в реальном времени по всей инфраструктуре. ELK ELK - это коллекция из трех продуктов с открытым исходным кодом - Elasticsearch, Logstash и Kibana, которые разрабатываются, управляются и поддерживаются компанией Elastic. Он позволяет пользователям получать данные из любого источника в любом формате, а затем искать, анализировать и визуализировать эти данные в режиме реального времени. Облачный хостинг AWS AWS - это веб-хостинговая платформа, созданная Amazon, которая предлагает гибкие, надежные, масштабируемые, простые в использовании, масштабируемые и экономически эффективные решения. Используя эту облачную платформу, нам не нужно беспокоиться о настройке ИТ-инфраструктуры, которая обычно занимает достаточно много времени. Azure Azure - это платформа облачных вычислений, разработанная Microsoft для создания, развертывания, тестирования и управления приложениями и службами через глобальную сеть своих центров обработки данных. Службы, предоставляемые Microsoft Azure, представлены в форме PaaS (платформа как услуга) и IaaS (инфраструктура как услуга). GCP Google Cloud - это полный набор услуг облачного хостинга и вычислений, предлагаемых Google. Он поддерживает широкий спектр услуг для вычислений, хранения и разработки приложений, которые используют Google Hardware. Контейнеры и оркестровка Docker Docker - это инструмент для создания, развертывания и запуска приложений с использованием контейнеров. Этот контейнер позволяет разработчику упаковывать приложение со всеми необходимыми ему компонентами и подкомпонентами, такими как библиотеки и другие зависимости, и отправлять все это в виде одного пакета. Подробно про Docker, Docker Compose и Docker Swarm Kubernetes Kubernetes - это система контейнерной оркестрации с открытым исходным кодом, изначально разработанная Google, и в настоящее время она поддерживается Cloud Native Computing Foundation. Он используется для автоматизации развертывания, масштабирования и управления приложениями. Он работает с другими инструментами-контейнерами, включая Docker. Подробно про Kubernetes и сравнение Kubernetes c Docker
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59