Skip to main content

Запросы JavaScript и TypeScript для анализа CodeQL

Изучите запросы, которые CodeQL используются для анализа кода, написанного в JavaScript или TypeScript при выборе default security-extended или наборе запросов.

Кто может использовать эту функцию?

Code scanning доступен для всех общедоступных репозиториев на GitHub.com. Code scanning также доступен для частных репозиториев, принадлежащих организациям, использующей GitHub Enterprise Cloud и имеющих лицензию на GitHub Advanced Security. Дополнительные сведения см. в разделе Сведения о GitHub Advanced Security.

CodeQL содержит множество запросов для анализа кода JavaScript и TypeScript. Все запросы в наборе default запросов выполняются по умолчанию. Если вы решили использовать security-extended набор запросов, выполняются дополнительные запросы. Дополнительные сведения см. в разделе Наборы запросов CodeQL.

Встроенные запросы для анализа JavaScript и TypeScript

В этой таблице перечислены запросы, доступные в последнем выпуске действия CodeQL и CodeQL CLI. Дополнительные сведения см. в разделе CodeQL журналов изменений на сайте документации CodeQL документации.

Note

GitHub Copilot Autofix ограничено оповещениями, определенными CodeQL для частных и внутренних репозиториев. Если у вас есть корпоративная учетная запись и используется GitHub Advanced Security, у вашей организации есть доступ к Copilot Autofix.

Имя запросаСвязанные CWEsПо умолчанию.РасширенноеCopilot Autofix
Произвольный доступ к файлам во время извлечения архива (Zip Slip)022
Неправильная фильтрация HTML020, 080, 116, 184, 185, 186
Путь по промежуточному по промежуточному по промежуточному слоям с учетом регистра178
Очистка текстового хранилища конфиденциальной информации312, 315, 359
Очистка передачи текста конфиденциального файла cookie614, 311, 312, 319
Ведение журнала конфиденциальной информации с четким текстом312, 359, 532
Межстраничное скриптирование на стороне клиента079, 116
Перенаправление URL-адреса на стороне клиента079, 116, 601
Внедрение кода094, 095, 079, 116
Неправильное настройка CORS для передачи учетных данных346, 639, 942
Создание предвзятых случайных чисел из криптографически безопасного источника327
Взаимодействие между окнами с неограниченным источником целевого объекта201, 359
Запрос базы данных, созданный из управляемых пользователем источников089, 090, 943
Скачивание зависимостей с помощью незашифрованного канала связи300, 319, 494, 829
Десериализация управляемых пользователем данных502
Отключение проверки сертификата295, 297
Отключение электронной веб-безопасности79
Отключение SCE116
Текст DOM повторно интерпретируется как HTML079, 116
Двойная компиляция1176
Двойное экранирование или удаление116, 020
Скачивание конфиденциального файла через небезопасное подключение829
Включение electron allowRunningInsecureContent494
Текст исключения повторно интерпретируется как HTML079, 116
Экспозиция частных файлов200, 219, 548
Внедрение выражений в Actions094
Жестко закодированные учетные данные259, 321, 798
Отравление заголовков узла в создании электронной почты640
Неправильное очистка кода094, 079, 116
Включение функций из ненадежного источника830
Неполная очистка атрибута HTML079, 116, 020
Неполная очистка нескольких символов020, 080, 116
Неполное регулярное выражение для имен узлов020
Неполное экранирование строк или кодировка020, 080, 116
Неполная проверка схемы URL-адресов020, 184
Неполная очистка подстроки URL-адресов020
Неверный суффикс проверки020
Неэффективное регулярное выражение1333, 730, 400
Раскрытие информации с помощью трассировки стека209, 497
Небезопасная конфигурация ПО промежуточного слоя безопасности шлема693, 1021
Небезопасная случайность338
Небезопасный список разрешений URL-адреса183, 625
Проверка секрета или открытого ключа JWT отсутствует347
Внедрение привязки цикла834, 730
Отсутствует ПО промежуточного слоя CSRF352
Отсутствие ограничения скорости770, 307, 400
Чрезмерно допустимый диапазон регулярных выражений020
Многономиальное регулярное выражение, используемое для неконтролируемых данных1333, 730, 400
Назначение загрязняющих прототипов078, 079, 094, 400, 471, 915
Функция, загрязняющая прототип078, 079, 094, 400, 471, 915
Вызов слияния, загрязняющий прототип078, 079, 094, 400, 471, 915
Отражение межстранитовых сценариев079, 116
Внедрение регулярных выражений730, 400
Замена подстроки с самой собой116
Исчерпание ресурсов400, 770
Исчерпание ресурсов из глубокого обхода объектов400
Внедрение второй команды заказа078, 088
Чтение конфиденциальных данных из запроса GET598
Конфиденциальный файл cookie сервера, предоставляемый клиенту1004
Сбой сервера248, 730
Подделка запроса на стороне сервера918
Перенаправление URL-адреса на стороне сервера601
Команда оболочки, созданная из значений среды078, 088
Хранение конфиденциальной информации в артефакте сборки312, 315, 359
Хранение сценариев между сайтами079, 116
Внедрение объекта шаблона073, 094
Путаница типов путем изменения параметров843
Неконтролируемая командная строка078, 088
Неконтролируемые данные, используемые в выражении пути022, 023, 036, 073, 099
Ненужное cat использование процесса078
Небезопасный динамический доступ к методу094
Небезопасное расширение самозаверяющего HTML-тега079, 116
Небезопасный HTML-код, созданный из входных данных библиотеки079, 116
Небезопасный подключаемый модуль jQuery079, 116
Небезопасная команда оболочки, созданная из входных данных библиотеки078, 088
Недоверенный домен, используемый в скрипте или другом содержимом830
Неоцененный вызов динамического метода754
Использование сломанного или слабого алгоритма шифрования327, 328
Использование слабого криптографического ключа326
Использование строки форматирования с внешним контролем134
Использование хэша паролей с недостаточной вычислительной усилием916
Бесполезное экранирование символов регулярного выражения020
Расширение внешней сущности XML611, 827
Расширение внутренних сущностей XML776, 400
Внедрение XPath643
Заготовка на стороне клиента918
Пустой пароль в файле конфигурации258, 862
Отказ от сеанса384
Файловые данные в исходящем сетевом запросе200
Жестко закодированные данные, интерпретированные как код506
Непрямая неконтролируемая командная строка078, 088
Небезопасный временный файл377, 378
Внедрение журналов117
Отсутствует проверка происхождения в postMessage обработчике020, 940
Отсутствует привязка регулярного выражения020
Сетевые данные, записанные в файл912, 434
Пароль в файле конфигурации256, 260, 313, 522
Потенциальное состояние гонки файловой системы367
Внедрение удаленных свойств250, 400
Конфиденциальный файл cookie без ограничений SameSite1275
Небезопасный код, созданный из входных данных библиотеки094, 079, 116
Контролируемый пользователем обход проверки безопасности807, 290