
Сквозное устранение уязвимости CVE-2013-3900 с помощью PowerShell и Tenable. Демонстрирует идентификацию уязвимости, усиление реестра и автоматическую проверку в среде Azure.
Этот проект демонстрирует реальный процесс управления уязвимостями. Используя виртуальную машину Azure, я нашел критическую ошибку проверки подписи, вручную подтвердил её через PowerShell и применил исправление на уровне реестра, чтобы защитить систему от несанкционированного выполнения кода.
Функция WinVerifyTrust в Windows содержала скрытую уязвимость (CVE-2013-3900). Злоумышленники могли «прикрепить» вредоносный код к подписанному файлу, не нарушая цифровую подпись. Это означает, что файл мог выглядеть «доверенным», даже если он содержал вредоносный код, позволяя обходить проверки безопасности.
Я начал с запуска сканирования Tenable на моей виртуальной машине Azure (Host: Kaddy). Сканирование выявило уязвимость с уровнем «Высокий» (VPR 9.0), так как в системе отсутствовал определенный параметр безопасности EnableCertPaddingCheck.

Я не просто поверил результатам сканера. Я использовал PowerShell, чтобы проверить, существует ли на самом деле ключ реестра.
powershell Get-ItemProperty -Path "HKLM:\Software\Microsoft\Cryptography\Wintrust\Config" -Name EnableCertPaddingCheck
Результат: Команда завершилась ошибкой «Path does not exist». Это подтвердило, что система была полностью уязвима для этой конкретной эксплуатации.

Вместо ручного редактирования реестра (RegEdit) я использовал сценарий PowerShell для применения исправления. Это быстрее, повторяемо и безопаснее, особенно для сотен машин.
Я применил исправление для обоих путей:
Стандартный путь реестра
Путь для 32-битных программ (WoW6432Node)

После завершения сценария я снова запустил проверку. Как показано в итоговых журналах, значение EnableCertPaddingCheck теперь равно 1. Система теперь строго проверяет заполнение сертификата, эффективно закрывая брешь в безопасности.

Помимо установки обновлений: я понял, что некоторые уязвимости не устраняются простым запуском «Центра обновления Windows». Иногда приходится «испачкать руки» в реестре, чтобы по-настоящему укрепить систему.
Укрепление реестра: Владение работой с HKLM через PowerShell необходимо для специалистов по безопасности, управляющих системами в масштабе.