Использование PowerShell для защиты от Conficker (включение и отключение AutoRun.inf)
На главной странице MSN.com сегодня приведены сведения о новом черве, Conficker, который распространяется через старые добрые трюки с autorun.inf. Он инфицирует устройства USB так, что при подключении этих устройств в другой компьютер вредоносный код автоматически запускается и поражает машину. Статья ссылается на публикацию в блоге Ника Брауна (Nick Brown), который описывает различные способы отключения файлов autorun.inf и дает файл .REG для отключения autorun.inf.
Вот этот файл .REG:
REGEDIT4
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping\Autorun.inf]
@="@SYS:DoesNotExist"
Недавно я полюбил превращать мелкие хаки реестра в функции. Вот вам пара функций, которые я написал для автоматического внесения этих изменений в реестр с помощью PowerShell.
function Disable-AutoRun
{
$item = Get-Item `
"REGISTRY::HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\IniFileMapping\AutoRun.inf" `
-ErrorAction SilentlyContinue
if (-not $item) {
$item = New-Item "REGISTRY::HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\IniFileMapping\AutoRun.inf"
}
Set-ItemProperty $item.PSPath "(default)" "@SYS:DoesNotExist"
}
Вот пояснения Ника о том, как это работает:
Этот хак предлагает Windows очистить AUTORUN.INF так, как если бы он был файлом конфигурации старого приложения до времен Windows 95. IniFileMapping – это ключ, который сообщает Windows, как работать с файлами .INI, которые это приложение обычно использует для хранения данных о настройках (практиковалось до появления реестра). В этом случае он сообщает: «когда начнете работать с файлом AUTORUN.INF, не используйте значения из файла. Используйте альтернативные значения из HKEY_LOCAL_MACHINE\SOFTWARE\DoesNotExist». И поскольку этот ключ, точно, не создан, дело обстоит так, как если бы AUTORUN.INF был совершенно пуст, так что никакого автозапуска, и к двойному щелчку в Обозревателе ничего не добавляется. Результат: черви не запускаются – если только вы двойным щелчком не запустите исполняемые файлы, чтобы посмотреть, что они делают. В этом случае вы заслужили, чтобы ваш ПК был заражен.
Если вы захотите отменить изменения в реестре и снова включить автозапуск, можно использовать приведенную ниже функцию:
function Enable-AutoRun
{
Remove-Item "REGISTRY::HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\IniFileMapping\AutoRun.inf" -Force
}
Надеюсь, это вам поможет,
Джеймс Брандейдж (James Brundage) [MSFT]
Перевод: Виктор Горбунков
Comments
Anonymous
January 01, 2003
PingBack from http://www.prosakhalin.ru/?p=58Anonymous
January 01, 2003
После запуска  русского блога команды Outlook мы продолжили работать над переводом блогов других