Типы уязвимостей CWE — классификация по БДУ ФСТЭК
Каталог типов уязвимостей CWE
Отсортированы по количеству уязвимостей в реестре БДУ ФСТЭК. Нажмите на карточку для просмотра списка.
Межсайтовый скриптинг (XSS)
CWE-79 · ИнъекцииCWE-79 — межсайтовый скриптинг (XSS): ввод не обезвреживается перед вставкой в страницу, которую видят другие. Ошибка возникает в формах поиска, комментариях и полях профиля, где значение из запроса попадает в разметку без экранирования. Злоумышленник выполняет свой код в браузере жертвы: крадёт cookie, уводит на фишинговую страницу или подменяет страницу.
4 537 уязвимостейПодробнееЧтение за границы буфера
CWE-125 · ПамятьCWE-125 — чтение за границы буфера: обращение к памяти вне выделенного блока. Ошибка возникает в коде на C и C++, где индекс или длина берётся из данных пользователя, а разбор поля проверяет его частично. Злоумышленник узнаёт содержимое соседних участков памяти, включая ключи и пароли, либо данные из неинициализированной области.
4 046 уязвимостейПодробнееЗапись за границы буфера
CWE-787 · ПамятьCWE-787 — запись за границы буфера: код записывает данные за пределы выделенной области памяти. Ошибка возникает в C и C++ при копировании строк, разборе сетевых данных или работе с массивами фиксированного размера. Злоумышленник повреждает память процесса и получает выполнение произвольного кода или отказ в обслуживании.
3 953 уязвимостейПодробнееОшибки прав и контроля доступа
CWE-264 · ПрочееCWE-264 — ошибки прав и контроля доступа: устаревшая категория MITRE о назначении прав и проверке привилегий. MITRE перевела её в статус Obsolete, поэтому в новых записях указывайте конкретный тип, например CWE-284 или CWE-269. Последствия таких ошибок — доступ сверх разрешённого и повышение привилегий.
3 774 уязвимостейПодробнееРаскрытие информации
CWE-200 · ПрочееCWE-200 — раскрытие информации: выдача конфиденциальных данных. Ошибка возникает в приложениях, где в сообщениях об ошибках, ответах API и журналах оказываются стек вызовов, пути к файлам, учётные данные и ключи. Злоумышленник узнаёт внутреннее устройство системы и с этими сведениями подбирает пароль или ключ и расширяет доступ к закрытым данным.
3 602 уязвимостейПодробнееРазыменование нулевого указателя
CWE-476 · ПамятьCWE-476 — разыменование нулевого указателя: обращение к указателю, который оказался NULL. Ошибка типична для C и C++ при разборе результата функции, вернувшей NULL из-за отсутствия данных или ошибки запроса, когда значение не проверяют перед разыменованием. Злоумышленник доводит функцию до отказа и вызывает отказ в обслуживании из-за аварийного завершения.
3 583 уязвимостейПодробнееНекорректное управление доступом
CWE-284 · ПрочееCWE-284 — некорректное управление доступом: программа неверно ограничивает доступ участника к ресурсу. Ошибка возникает в веб-приложениях и API, где проверка прав сделана в интерфейсе, а прямой запрос к чужому маршруту проходит без сверки с политикой. Злоумышленник читает и изменяет чужие данные, выполняет административные функции и получает доступ к закрытым возможностям.
3 027 уязвимостейПодробнееПереполнение буфера в стеке
CWE-121 · ПрочееCWE-121 — переполнение буфера в стеке: запись за границу локального массива. Ошибка возникает в коде на C и C++, где данные неизвестной длины копируются в локальный массив функции: разбор пакета из сети или вызов sprintf. Перезапись адреса возврата и соседних переменных позволяет злоумышленнику выполнить свой код или обрушить процесс.
2 178 уязвимостейПодробнееКлассическое переполнение буфера
CWE-120 · ПамятьCWE-120 — классическое переполнение буфера: копирование данных без проверки размера. Ошибка возникает в коде на C и C++, где данные копируются в буфер через strcpy или sprintf без сверки длины с размером приёмника. Злоумышленник перезаписывает память за границей буфера, что ведёт к сбою, порче данных или выполнению своего кода.
1 958 уязвимостейПодробнееПереполнение буфера в куче
CWE-122 · ПрочееCWE-122 — переполнение буфера в куче: запись за границу блока памяти, выделенного malloc. Ошибка возникает в коде на C и C++, где размер вычисляется неверно, а блок памяти malloc заполняется данными большего объёма. Злоумышленник повреждает метаданные кучи и соседние объекты, что ведёт к отказу приложения или выполнению своего кода.
1 943 уязвимостейПодробнееВнедрение команд ОС
CWE-78 · ИнъекцииCWE-78 — внедрение команд ОС: данные извне не обезвреживаются перед подстановкой в команду ОС. Ошибка возникает в веб-приложениях и скриптах, где строка из параметра, формы или cookie соединяется с командой shell или вызовом утилиты. Злоумышленник выполняет произвольные команды с правами процесса: читает файлы, получает доступ к данным и расширяет полномочия.
1 839 уязвимостейПодробнееПовышение привилегий
CWE-269 · ДоступCWE-269 — повышение привилегий: программа неверно назначает, отслеживает или проверяет права пользователей. Типичный сценарий — обработчик запроса в веб-приложении поднимает права процесса до администратора, полагаясь на значение из присланного клиентом поля или на проверку только в интерфейсе. Злоумышленник получает полномочия администратора, читает и изменяет чужие данные, выполняет привилегированные операции.
1 653 уязвимостейПодробнееСостояние гонки
CWE-362 · ПрочееCWE-362 — состояние гонки: между проверкой и изменением общего ресурса возникает окно для вмешательства. Дефект встречается в многопоточном коде на C и Java, где проверка состояния и его изменение разнесены по шагам — например, при создании файла. Злоумышленник, подстроив запросы под момент проверки, получает повышение привилегий или отказ в обслуживании.
1 598 уязвимостейПодробнееВнедрение команд
CWE-77 · ИнъекцииCWE-77 — внедрение команд: данные извне не обезвреживаются перед подстановкой в чужую команду. Ошибка возникает, когда строка из аргументов, формы или переменной окружения дописывается к вызову служебной команды: команд ОС или языка команд приложения. Злоумышленник подменяет команду и получает выполнение произвольных операций: чтение файлов, запуск программ, изменение данных.
1 548 уязвимостейПодробнееУтечка памяти
CWE-401 · ПрочееCWE-401 — утечка памяти: выделенные блоки не освобождаются после использования. Ошибка характерна для C и C++ при ручном управлении памятью: потерянный вызов free(), выход по исключению в середине обработки или объект, оставленный в долгоживущем кэше. Злоумышленник, отправляя запросы, истощает память процесса и вызывает отказ в обслуживании.
1 495 уязвимостейПодробнееНеконтролируемое потребление ресурсов
CWE-400 · ПрочееCWE-400 — неконтролируемое потребление ресурсов: программа не ограничивает расход памяти, диска и процессорного времени. Ошибка проявляется в обработчиках сетевых запросов, где размер входа, число параллельных операций или объём ответа не ограничены сверху. Злоумышленник повторяет запросы и исчерпывает ресурсы, вызывая отказ в обслуживании.
1 461 уязвимостейПодробнееЦелочисленное переполнение
CWE-190 · ПамятьCWE-190 — целочисленное переполнение: арифметика даёт значение за пределами типа. Ошибка возникает при расчёте размера буфера или счётчика в коде на C и C++, когда суммируются элементы или умножается размер на количество. Злоумышленник подбирает значения, дающие переполнение, и получает малое или отрицательное число: память выделяется слишком маленькой.
1 411 уязвимостейПодробнееВнедрение кода
CWE-94 · ИнъекцииCWE-94 — внедрение кода: данные извне попадают в фрагмент кода и меняют его синтаксис. Ошибка возникает в шаблонизаторах, плагинных системах и скриптах, где текст из формы или файла собирается в исполняемый код. Злоумышленник выполняет произвольный код в адресном пространстве приложения: крадёт данные и действует от имени владельца процесса.
1 397 уязвимостейПодробнееОбход каталогов
CWE-22 · ВебCWE-22 — обход каталогов: путь к файлу строится из внешних данных без очистки спецсимволов. Ошибка возникает в обработчиках загрузки файлов, где имя из параметров запроса или формы подставляется в open() без проверки. Злоумышленник подставляет ../ или абсолютный путь и читает конфигурацию, ключи и исходный код, недоступные через обычные сценарии.
1 394 уязвимостейПодробнееОшибки управления ресурсами
CWE-399 · ПрочееCWE-399 — ошибки управления ресурсами: категория MITRE о неверном выделении и освобождении ресурсов. В категорию входят CWE-770 (выделение ресурсов без ограничений), CWE-772 (неосвобождение ресурса после использования) и CWE-410 (недостаточный пул ресурсов); MITRE советует указывать конкретный тип. Последствия — отказ в обслуживании, а при ошибках с памятью — выполнение произвольного кода.
1 265 уязвимостейПодробнееSQL-инъекция
CWE-89 · ИнъекцииCWE-89 — SQL-инъекция: данные извне не обезвреживаются перед подстановкой в SQL-команду, которую разбирает СУБД. Ошибка возникает, когда значение из формы, параметра запроса или cookie сращивается с текстом запроса в коде и меняет его смысл. Злоумышленник читает и изменяет чужие строки, выводит содержимое таблиц и обходит ограничения доступа.
1 263 уязвимостейПодробнееНекорректное освобождение ресурса
CWE-404 · ПрочееCWE-404 — некорректное освобождение ресурса: файл, сокет или дескриптор не закрывается после использования. Дефект встречается в коде на C и C++, где дескриптор открывается в одной ветви обработки, а ошибка или исключение уводят управление до закрытия. Злоумышленник повторяет операции, пока дескрипторы не исчерпаются, и процесс перестаёт обслуживать запросы.
1 213 уязвимостейПодробнееНекорректная аутентификация
CWE-287 · ДоступCWE-287 — некорректная аутентификация: программа не доказывает, что заявленный идентификатор участника верен. Ошибка возникает в веб-приложениях и API, где пароль проверяется неполно, идентификатор можно подобрать, а сессия или одноразовый код живут дольше положенного. Злоумышленник выдаёт себя за другого пользователя и получает доступ к его данным и функциям.
1 131 уязвимостейПодробнееЧисловые ошибки
CWE-189 · ПрочееCWE-189 — числовые ошибки: категория MITRE о неверном расчёте и преобразовании чисел. Она объединяет целочисленное переполнение (CWE-190), ошибку на единицу (CWE-193) и деление на ноль (CWE-369). MITRE рекомендует указывать конкретный тип, а не категорию: ошибка расчёта размера ведёт к переполнению памяти, деление на ноль — к аварийному завершению.
1 095 уязвимостейПодробнееВыделение ресурсов без ограничений
CWE-770 · ПрочееCWE-770 — выделение ресурсов без ограничений: код выделяет память, потоки или соединения по запросу без лимитов. Ошибка проявляется в серверном коде при потоке однотипных запросов или при передаче данных большого объёма в одном запросе. Злоумышленник исчерпывает ресурсы узла и получает отказ в обслуживании для всех пользователей.
842 уязвимостейПодробнееОшибка в логике авторизации
CWE-863 · ПрочееCWE-863 — ошибка в логике авторизации: проверка прав реализована с ошибкой и даёт неверный результат. Ошибка проявляется при сравнении идентификатора объекта с правами, при неверном порядке проверок или обходе проверки на клиентской стороне. Злоумышленник получает доступ к чужим данным и привилегированным операциям при формально успешной проверке.
825 уязвимостейПодробнееОшибки в программном коде
CWE-17 · ПрочееCWE-17 — ошибки в программном коде: устаревшая категория MITRE, которая раньше группировала записи о разработке. MITRE признала её избыточной: категория усложняла дерево классификации и больше не используется. Для описания уязвимости указывайте конкретный тип слабости, а не номер CWE-17.
731 уязвимостейПодробнееЧто такое CWE и как классифицировать уязвимости
CWE (Common Weakness Enumeration) — международный каталог типов программных уязвимостей, поддерживаемый организацией MITRE. Каждый тип уязвимости получает уникальный идентификатор (CWE-79, CWE-89 и т.д.) и описание паттерна ошибки, который приводит к уязвимости.
В реестре БДУ ФСТЭК каждая уязвимость содержит привязку к одному или нескольким CWE-идентификаторам. Это позволяет анализировать не только отдельные уязвимости, но и системные паттерны: какие типы ошибок преобладают в используемом ПО, какие меры защиты нужны в первую очередь.
Классификация CWE связана с OWASP Top 10 — рейтингом критических рисков веб-приложений. Каждая категория OWASP покрывает несколько CWE. Например, A03:2021 Injection включает CWE-79 (XSS), CWE-89 (SQLi), CWE-78 (Command Injection).
При построении модели угроз по методике ФСТЭК анализ CWE-профиля инфраструктуры помогает определить актуальные угрозы из каталога УБИ и подобрать меры защиты.
Не знаете, какое ПО установлено? Инвентаризация агентом на рабочих станциях →
94 000+ уязвимостей в базеДанные — из bdu.fstec.ru
Отслеживайте уязвимости по типам CWE автоматически
КиберОснова SGRC: мониторинг БДУ ФСТЭК и CWE-аналитика в одной платформе.
