Что такое cwe
Перейти к содержимому

Что такое cwe

  • автор:

Перечисление общих слабых мест — Common Weakness Enumeration

Общие Список слабых мест (CWE) — это система категорий для слабых мест и уязвимостей программного обеспечения. Он поддерживается проектом сообщества, целью которого является понимание недостатков программного обеспечения и создание автоматизированных инструментов, которые можно использовать для выявления, исправления и предотвращения этих недостатков. Проект спонсируется National Cybersecurity FFRDC, которым управляет The MITER Corporation при поддержке US-CERT и National Cyber ​​Security. Подразделение Министерства внутренней безопасности США.

Версия 3.2 стандарта CWE была выпущена в январе 2019 года.

CWE имеет более 600 категорий, включая классы для переполнения буфера, path / ошибки обхода дерева каталогов, условия гонки, межсайтовый скриптинг, жестко заданные пароли и небезопасные случайные числа.

  • 1 Примеры
  • 2 Совместимость с CWE
  • 3 Исследования, критика и новые разработки
  • 4 См. также
  • 5 Ссылки
  • 6 Внешние ссылки

Примеры

  • Категория 121 CWE предназначена для переполнения буфера на основе стека.

Совместимость с CWE

Программа совместимости Common Weakness Enumeration (CWE) позволяет проверить и зарегистрировать услугу или продукт как официально «CWE-совместимый» и «CWE-эффективный». Программа помогает организациям выбрать правильные программные инструменты и узнать о возможных слабых местах и ​​их возможном влиянии.

Для получения статуса совместимости с CWE продукт или услуга должны удовлетворять 4 из 6 требований, показанных ниже:

Пользователи CWE с возможностью поиска могут искать элементы безопасности, используя идентификаторы CWE
Вывод CWE элементы безопасности, представленные пользователям, включают в себя или позволяют пользователям получать связанные идентификаторы CWE
Точность сопоставления элементы безопасности точно связываются с соответствующими идентификаторами CWE
Документация CWE документация по возможностям описывает CWE, CWE совместимость и использование функций, связанных с CWE
Покрытие CWE для совместимости с CWE и эффективности CWE, документация по возможности явно перечисляет идентификаторы CWE-ID, охват и эффективность которых заявлены функцией по сравнению с обнаружением в программном обеспечении
Результаты тестирования CWE для эффективности CWE, результаты тестирования возможностей, показывающие результаты оценки программного обеспечения для CWE, опубликованы на веб-сайте CWE

По состоянию на сентябрь 2019 года 56 организаций разрабатывают и поддерживать продукты и услуги, получившие статус CWE Compatible.

Исследования, критика и новые разработки

Некоторые исследователи считают, что двусмысленности в CWE можно избежать или уменьшить.

См. также

  • Общие уязвимости и уязвимости (CVE)
  • Система оценки общих уязвимостей (CVSS)
  • Национальная база данных уязвимостей

Ссылки

Внешние ссылки

  • Сертификация приложений для Известные недостатки безопасности. Усилия по перечислению общих слабых мест (CWE) // 6 марта 2007 г.
  • «Классы уязвимостей и атак» (PDF). Справочник Wiley по науке и технологиям для внутренней безопасности. сравнение различных Классификаций уязвимостей. Архивировано из исходного (PDF) от 22 марта 2016 г. CS1 maint: others (ссылка )

CWE Top 25 2021. Что такое, с чем едят и чем полезен при статическом анализе?

Впервые поддержка классификации CWE появилась в PVS-Studio с релизом 6.21, который состоялся 15 января 2018 года. С тех пор прошло уже очень много времени, и хотелось бы рассказать об улучшениях, связанных с поддержкой этой классификации в последних версиях анализатора.

https://import.viva64.com/docx/blog/0869_CWE_status_ru/image1.png

Мы позиционируем анализатор PVS-Studio не только как средство для поиска опечаток и ошибок в коде, но и как инструмент статического тестирования защищённости приложений (Static Application Security Testing, SAST). Для этого необходимо уметь находить ошибки и потенциальные уязвимости, а также сопоставлять их с различными стандартами (например CWE, OWASP, SEI CERT, MISRA, AUTOSAR). Почему именно потенциальные уязвимости? Потому что они (CWE) станут реальными уязвимостями (CVE), только если кто-нибудь начнёт их эксплуатировать. А для этого нередко должно совпасть множество порой не связанных между собой факторов.

Именно с этой целью мы решили проверить, а насколько же хорошо PVS-Studio покрывает самые распространённые на данный момент дефекты. Для этого достаточно обратиться к списку CWE Top 25, который мы почему-то долго обходили стороной. Что ж, пора исправляться!

CWE. Что такое и с чем едят

Думаю, для продолжения не помешает освежить в памяти основные моменты и определения. Если вы хорошо ориентируетесь в терминологии, знаете, чем отличается CVE от CWE, зачем нужен CVSS, как ранжируется CWE Top 25, то можете пропустить этот раздел. Остальным настоятельно советую ознакомиться для удобства дальнейшего чтения. Далее довольно вольный перевод и интерпретация некоторых пунктов CWE FAQ и CVE FAQ:

Чем «дефект» (недостаток) отличается от уязвимости в ПО?

Дефекты (недостатки) – это ошибки, сбои и прочие проблемы реализации, проектирования или архитектуры программного обеспечения, которые могут привести к уязвимостям.

Уязвимости – уже найденные кем-то ошибки, которые могут быть напрямую использованы злоумышленниками для получения доступа к системе или сети, нарушения работы сервисов и так далее.

Что такое CWE, чем отличается от CVE и при чем тут CVSS?

  • CWE (Common Weakness Enumeration) – общий перечень дефектов (недостатков) безопасности.
  • CVE (Common Vulnerabilities and Exposures) – перечень уязвимостей и дефектов, обнаруженных в различном программном обеспечении.
  • CVSS (Common Vulnerability Scoring System) – числовая оценка, показывающая потенциальную серьёзность уязвимости (CVE). Она основана на стандартизированном наборе характеристик.

https://import.viva64.com/docx/blog/0869_CWE_status_ru/image2.png

Что такое CWE Top 25?

CWE Top 25 – это список наиболее опасных и распространённых недостатков. Эти недостатки опасны потому, что часто их легко найти и использовать. Они могут позволить злоумышленникам помешать работе приложения, украсть данные или даже полностью захватить систему. CWE Top 25 – это значимый ресурс сообщества, который может помочь разработчикам, тестировщикам, пользователям, а также руководителям проектов, исследователям безопасности и преподавателям получить представление о наиболее распространённых и опасных на данный момент недостатках безопасности.

Каков алгоритм составления и ранжирования списка CWE Top 25?

При составлении текущей редакции списка CWE Top 25 были использованы данные, полученные из национальной базы данных уязвимостей США (U.D. National Vulnerability Database (NVD)) за 2019–2020 годы. Далее команда исследователей использовала на полученных данных собственную формулу для расчёта порядка ранжирования, учитывающую частоту, с которой какой-либо недостаток (CWE) является основной причиной уязвимости, и потенциальную опасность эксплуатации. Частота и прогнозируемая серьёзность нормализованы относительно своих минимальных и максимальных значений.

Для вычисления частоты упоминания в формуле подсчитывается, сколько раз CVE ссылались на CWE в базе данных NVD. В расчёте используются только те CVE, которые имеют ссылку на CWE, поскольку использование полного набора данных привело бы к очень низким показателям частоты и незначительной разнице между различными типами дефектов.

Fr(CWE_X) = (count(CWE_X ∈ NVD) — min(Freq)) / (max(Freq) — min(Freq))

Другим важным компонентом формулы ранжирования является расчёт серьёзности недостатка, который вычисляется по формуле:

Sv(CWE_X) = (average_CVSS_for_CWE_X — min(CVSS)) / (max(CVSS) — min(CVSS))

Ну и в конце вычисляется итоговая оценка путём перемножения оценки частоты упоминания на оценку серьёзности.

Score(CWE_X) = Fr(CWE_X) * Sv(CWE_X) * 100

Хотя этот метод и вносит некоторую предвзятость за счёт анализа только обнаруженных уязвимостей и потенциально может исключить широкий пласт данных, команда CWE считает, что в результате каждый год будет составляться более точный список CWE Top 25.

CWE Top 25 действительно обновляется каждый год?

Да, CWE Top 25 обновляется ежегодно. Предыдущие выпуски CWE Top 25 можно посмотреть в архиве.

Кто занимается составлением CWE Top 25?

Сообщество CWE включает как отдельных исследователей, так и представителей многочисленных организаций, научного сообщества и государственных структур, заинтересованных в активном сокращении и устранении недостатков в программном обеспечении. Конкретный список участников команды CWE можно получить на странице «CWE Community Members».

И зачем мне это знать?

Сегодня CWE используется как основное средство при обсуждении устранения и/или смягчения недостатков безопасности в архитектуре, дизайне, коде и реализации программного обеспечения. Организации используют CWE в качестве стандартной меры для оценки инструментов проверки безопасности ПО и в качестве общего базового стандарта для идентификации, предупреждения и смягчения негативных последствий.

Пару примеров ошибок?

Классификация CWE покрывает наиболее часто встречающиеся проблемы с разработкой ПО и различного оборудования. Например:

  • программные дефекты: переполнения буферов, ошибки форматной строки; проблемы структуры и валидации данных; манипуляции со специальными элементами; ошибки путей; проблемы с обработчиками; ошибки пользовательского интерфейса; проблемы обхода каталогов и распознавания эквивалентности путей; ошибки аутентификации; ошибки управления ресурсами; недостаточный уровень проверки данных; проблемы оценки входящих данных и внедрение кода; проблемы предсказуемости и недостаточная «случайность» случайных чисел;
  • аппаратные дефекты: ошибки вычислений, обычно связанные с процессорами, графикой, компьютерным зрением (Vision), искусственным интеллектом (AI), ПЛИС (FPGA) и микроконтроллерами (uControllers); вопросы разделения привилегий и контроля доступа, относящиеся к идентификации, общим ресурсам, контролю блокировок и другим возможностям и механизмам; вопросы питания, работы часов, обработки напряжения, тока или температуры, контроля тактовой частоты и сохранения/восстановления состояния.

Более подробно познакомиться с классификацией можно на сайте cwe.mitre.org.

Положение дел сегодня

С момента начала использования классификации CWE для диагностик PVS-Studio прошло более трёх лет, и хотелось бы отметить существенное увеличение их количества. Если в 2018 году мы покрывали всего 94 пункта списка CWE, то сейчас уже почти 130. Однако сегодня у нас разговор не про общее количество диагностик, а только про те, что входят в список наиболее опасных в 2021 году. Если же вас интересует полный список, то ознакомиться с ним можно в разделе «Соответствие CWE» нашей документации.

Ниже представлена таблица соответствия между списком CWE Top 25 2021 и диагностиками PVS-Studio с разделением по языкам программирования. В дальнейшем мы собираемся регулярно обновлять таблицу с покрытием CWE Top 25 на нашем сайте.

# CWE ID Имя Оценка Диагностики PVS-Studio
1 CWE-787 Out-of-bounds Write 65,93 C++: V512, V557, V582, V645
C#: V3106
Java: V6025
2 CWE-79 Improper Neutralization of Input During Web Page Generation (‘Cross-site Scripting’) 46,84 C#: V5610
3 CWE-125 Out-of-bounds Read 24,90 C++: V512, V557, V582
C#: V3106
Java: V6025
4 CWE-20 Improper Input Validation 20,47 C++: V739, V781, V1010, V1024, V5009
5 CWE-78 Improper Neutralization of Special Elements used in an OS Command (‘OS Command Injection’) 19,55 C++: V1010, V5009
6 CWE-89 Improper Neutralization of Special Elements used in an SQL Command (‘SQL Injection’) 19,54 C#: V5608
7 CWE-416 Use After Free 16,83 C++: V623, V723, V758, V774, V1017
8 CWE-22 Improper Limitation of a Pathname to a Restricted Directory (‘Path Traversal’) 14,69 C#: V5609
9 CWE-352 Cross-Site Request Forgery (CSRF) 14,46 Coming in the future
10 CWE-434 Unrestricted Upload of File with Dangerous Type 8,45 Coming in the future
11 CWE-306 Missing Authentication for Critical Function 7,93 Coming in the future
12 CWE-190 Integer Overflow or Wraparound 7,12 C++: V629, V658, V673, V683, V1026, V1028, V5004, V5005, V5006, V5007, V5010, V5011
C#: V3113
Java: V6105
13 CWE-502 Deserialization of Untrusted Data 6,71 C#: V5611
14 CWE-287 Improper Authentication 6,58 Coming in the future
15 CWE-476 NULL Pointer Dereference 6,54 C++: V522, V595, V664, V713, V1004
C#: V3027, V3042, V3080, V3095, V3100, V3125, V3145, V3146, V3148, V3149, V3152, V3153, V3168
Java: V6008, V6060, V6093
16 CWE-798 Use of Hard-coded Credentials 6,27 C++: V5013
C#: V5601
Java: V5305
17 CWE-119 Improper Restriction of Operations within the Bounds of a Memory Buffer 5,84 C++: V512, V557, V582, V769, V783, V1004
18 CWE-862 Missing Authorization 5,47 Coming in the future
19 CWE-276 Incorrect Default Permissions 5,09 Coming in the future
20 CWE-200 Exposure of Sensitive Information to an Unauthorized Actor 4,74 Coming in the future
21 CWE-522 Insufficiently Protected Credentials 4,21 Coming in the future
22 CWE-732 Incorrect Permission Assignment for Critical Resource 4,20 Coming in the future
23 CWE-611 Improper Restriction of XML External Entity Reference 4,02 Coming in the future
24 CWE-918 Server-Side Request Forgery (SSRF) 3,78 Coming in the future
25 CWE-77 Improper Neutralization of Special Elements used in a Command (‘Command Injection’) 3,58 Coming in the future

Как видно из таблицы, на данный момент статический анализатор PVS-Studio обеспечивает покрытие 52% (13 из 25) списка CWE Top 25 2021. Вроде 52% это не так и много, но тут стоит учесть, что работы в этом направлении продолжаются и в будущем мы сможем находить ещё больше дефектов. Если же сократить этот список до 10 наиболее опасных и распространённых недостатков, то картина станет лучше — общее покрытие вырастет до 80%. 🙂 Но это уже совсем другая история.

Изменения в CWE Top 25 за последний год

Для самых искушённых предлагаю посмотреть краткую статистку по передвижениям в CWE Top 25 за последний год.

Пять самых крупных передвижений вверх:

# CWE ID Название Позиция в 2020 г Позиция в 2021 г Изменение за год
1 CWE-276 Incorrect Default Permissions 41 19 22▲
2 CWE-306 Missing Authentication for Critical Function 24 11 13▲
3 CWE-502 Deserialization of Untrusted Data 21 13 8▲
4 CWE-862 Missing Authorization 25 18 7▲
5 CWE-77 Improper Neutralization of Special Elements used in a Command (‘Command Injection’) 31 25 6▲

Пять самых крупных передвижений вниз:

# CWE ID Название Позиция в 2020 г Позиция в 2021 г Изменение за год
1 CWE-200 Exposure of Sensitive Information to an Unauthorized Actor 7 20 13▼
2 CWE-119 Improper Restriction of Operations within the Bounds of a Memory Buffer 5 17 12▼
3 CWE-94 Improper Control of Generation of Code (‘Code Injection’) 17 28 11▼
4 CWE-269 Improper Privilege Management 22 29 7▼
5 CWE-732 Incorrect Permission Assignment for Critical Resource 16 22 6▼

Большинство CWE, представленных в таблице выше, относятся к категориям, которые трудно поддаются анализу. Объяснить их снижение в рейтинге (а соответственно и появление в этой таблице) можно тем, что сообщество улучшило свои образовательные, инструментальные и аналитические возможности, тем самым уменьшив частоту упоминания ошибок, относящихся к данным категориям.

«Новички» в Top 25:

# CWE ID Название Позиция в 2020 г Позиция в 2021 г Изменение за год
1 CWE-276 Incorrect Default Permissions 41 19 22▲
2 CWE-918 Server-Side Request Forgery (SSRF) 27 24 3▲
3 CWE-77 Improper Neutralization of Special Elements used in a Command (‘Command Injection’) 31 25 6▲

Ну и в конце – дефекты, которые выбыли из CWE Top 25 в 2021 году:

# CWE ID Название Позиция в 2020 г Позиция в 2021 г Изменение за год
1 CWE-400 Uncontrolled Resource Consumption 23 27 4▼
2 CWE-94 Improper Control of Generation of Code (‘Code Injection’) 17 28 11▼
3 CWE-269 Improper Privilege Management 22 29 7▼

Заключение

Надеюсь, что данный материал был для вас интересен и помог разобраться в актуальной терминологии.

К счастью, в борьбе с потенциальными уязвимостями нам могут помочь статические анализаторы и поэтому, по традиции, мне хотелось бы предложить вам скачать и попробовать проверить свой проект статическим анализатором PVS-Studio. Вдруг и у вас в код закралась парочка CWE, которые только и ждут удобного момента, чтобы стать полноценными CVE 🙂

Дополнительные ссылки

  • Технологии, используемые в анализаторе кода PVS-Studio для поиска ошибок и потенциальных уязвимостей.
  • Потенциальная уязвимость.
  • Уязвимость нулевого дня.
  • Какая разница между DevOps и DevSecOps?
  • OWASP, уязвимости и taint анализ в PVS-Studio C#. Смешать, но не взбалтывать.

Что означает CWE?

Вы ищете значения CWE? На следующем изображении вы можете увидеть основные определения CWE. При желании вы также можете загрузить файл изображения для печати или поделиться им со своим другом через Facebook, Twitter, Pinterest, Google и т. Д. Чтобы увидеть все значения CWE, пожалуйста, прокрутите вниз. Полный список определений приведен в таблице ниже в алфавитном порядке.

Основные значения CWE

На следующем изображении представлены наиболее часто используемые значения CWE. Вы можете записать файл изображения в формате PNG для автономного использования или отправить его своим друзьям по электронной почте.Если вы являетесь веб-мастером некоммерческого веб-сайта, пожалуйста, не стесняйтесь публиковать изображение определений CWE на вашем веб-сайте.

Что означает аббревиатура cwe

Все определения CWE

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

Акроним Определение
CWE Extrapolator окна перегрузки
CWE Главный кормилец
CWE Кемпинг мир Востока
CWE Китай Международный водный & Electric Corp.
CWE Колорадо Whitewater экспедиции
CWE Колорадо Ветер Ансамбль
CWE Компенсации недели, закончившейся
CWE Консорциум для работников образования
CWE Крест скоростной Вестчестер
CWE Мытье холодной водой
CWE Общая слабость перечисление
CWE Опыт совместной работы
CWE Предостережения и предупреждения электроники
CWE Серкль де вебмастеров Engages
CWE Сертифицированные вина педагог
CWE Сертифицированный сварки педагог
CWE Сертифицированный эксперт рабочей силы
CWE Совместной рабочей среды
CWE Соизмеримы с опытом работы
CWE Среды совместной работы
CWE Строительство для мира Wide евангелизации Inc
CWE Ток рабочей сметы
CWE Холодная погода Экстрим
CWE Центр для женщин & предприятия
CWE Центральная Западной Европы
CWE Чемпионат борьба опыт
CWE Чипсы с все
CWE Эквивалент холодной воды
CWE Эквивалентный вес каркаса
CWE Экспресс мойка автомобиля

⛱ Разница между CWE и CVE уязвимостями

Статьи

Автор cryptoparty На чтение 1 мин Опубликовано 23.05.2019

MITRE – это финансируемая государством организация, которая разрабатывает стандарты, которые используются сообществом по информационной безопасности.

Двумя наиболее популярными из них являются CWE и CVE, и их часто путают специалисты по безопасности.

Вот простое различие:

  1. CWE расшифровывается как Common Weakness Enumeration и имеет отношение к уязвимости, а не к экземпляру в продукте или системе.
  2. CVE означает Common Vulnerabilities and Exposures и имеет отношение к конкретному экземпляру в продукте или системе, а не к основному недостатку.

Пожалуйста, не спамьте и никого не оскорбляйте. Это поле для комментариев, а не спамбокс. Рекламные ссылки не индексируются!

Добавить комментарий Отменить ответ
кирил 21.09.2022 в 12:53
что это такооеееееее
cryptoparty автор 21.09.2022 в 14:09
cryptoparty автор 21.09.2022 в 14:23
Что не понятно?

Поддержать нас

  • Аудит ИБ (49)
  • Вакансии (12)
  • Закрытие уязвимостей (110)
  • Книги (27)
  • Мануал (2 359)
  • Медиа (66)
  • Мероприятия (39)
  • Мошенники (23)
  • Обзоры (831)
  • Обход запретов (34)
  • Опросы (3)
  • Скрипты (116)
  • Статьи (360)
  • Философия (124)
  • Юмор (18)

Наш Telegram

Социальные сети
Поделиться

Anything in here will be replaced on browsers that support the canvas element

  • �� Каковы различные форматы сертификатов? 27.10.2023

Цифровые сертификаты могут использоваться для различных целей. Они могут использоваться для защиты соединений с веб-сайтами, для шифрования сообщений электронной почты или для проверки личности пользователя. Выбор правильного формата сертификата необходим для обеспечения безопасности и сохранности данных. Когда речь идет о различных форматах сертификатов, важно выбрать тот, который соответствует вашим потребностям Выберите формат сертификата, совместимый с […]

Преобразование файла PFX (PKCS #12) в формат PEM (Privacy Enhanced Mail) достаточно просто на Linux и Unix-подобных системах. В этой статье мы рассмотрим, как преобразовать файл сертификата в формате PFX в файл PEM с помощью OpenSSL из командной строки. Что такое файл PFX? PFX (также PKCS#12) – это формат файла, содержащего сертификат(ы) и закрытый(ые) ключ(ы), […]

Одним из основных нововведений, появившихся в Podman, стала возможность запуска контейнеров без прав root. С точки зрения безопасности это было существенным улучшением, поскольку потенциально скомпрометированный контейнер, запущенный от имени root, представляет собой угрозу безопасности для хост-системы. Чтобы добиться аналогичного поведения, последние версии Docker поддерживают запуск демона docker в пользовательском контексте. �� Почему процессы в контейнерах […]

Small Form Factor Pluggable (SFP) – это компактный приёмопередатчик, который устанавливается в SFP порт коммутатора Ethernet. Модуль используется для присоединения платы сетевого устройства к оптическому волокну или витой паре. Модули SFP заменили устаревшие модули GBIC благодаря своим миниатюрным размерам. Это преимущество в размерах позволяет им эффективно работать в ограниченных сетевых средах, обеспечивая быстрый обмен данными […]

Давайте поговорим о классификации вредоносных программ. Когда антивирусная программа или средство защиты от вредоносного ПО обнаруживает что-то потенциально вредоносное, она использует определенный формат, чтобы помочь вам или другим специалистам понять, с какой именно угрозой вы имеете дело. Формат может выглядеть примерно так: Type:Platform/Family.Variant!Suffixes Это не всегда будет выглядеть именно так, поскольку, как вы помните, не […]

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *