Взлом компьютерной мышки=))
Вот начал я изучать ассембер и не удержался чтоб не написать какую то программу шутку:).Эта программа не повредит компьютеру, а только изменит расположение кнопок мыши и напугает ламера:)).
Что нам потребуется:
1)Компилятор masm32 или tasm, разница в синтаксисе минимальна но советую взять masm32, потому что объяснять я буду именно по нему.
2)Любой текстовый редактор.
3)Прямые руки и голова на плечах.
Первые строки.
.386
.model flat,stdcall
option casemap:none
include C:\masm32\INCLUDE\WINDOWS.INC
include C:\masm32\INCLUDE\KERNEL32.INC
include C:\masm32\INCLUDE\USER32.INC
include C:\masm32\INCLUDE\ADVAPI32.INC
includelib C:\masm32\lib\comctl32.lib
includelib C:\masm32\lib\user32.lib
includelib C:\masm32\lib\gdi32.lib
includelib C:\masm32\lib\kernel32.lib
includelib C:\masm32\lib\user32.lib
includelib C:\masm32\lib\advapi32.lib
Разберемся в вышенаписаном:
.386-этой строкой мы говорим нашему компиятору, что намеpеваемся использовать набоp инстpукций пpоцессоpа 80386. .Model flat, stdcall говоpит MASM'у, что наша пpогpамма будет использовать плоскую модель памяти.
Далее мы подгружаем инклудники и библиотеки.
.data
В области дaнных у нас будет 2 строки:
HINST DWORD 0
strHack db "I hacked you mouse!",0
Они выведут текст "I hacked you mouse!"
.CODE
В области кода мы имеем:
start:
invoke SwapMouseButton,1
invoke MessageBox, 0 , addr strHack, addr strHack , 0
exit:
invoke ExitProcess , 0
Давайте разберем все по полочкам.
start:– указывает на начало исполняемого кода.
invoke SwapMouseButton,0– прикрепляем API функцию SwapMouseButton с параметром 1(Эта функция и меняет кнопки мыши местами).
invoke MessageBox, 0 , addr strHack, addr strHack , 0 – эта API функция выводит окно с сообщением.
addr strHack указывает на текст сообщения который мы указали выше.
exit: - указывает на код завершения программы.
invoke ExitProcess , 0 – завершение программы после нажатия кнопки ok.
Ну и самая последняя строка- это end start – она указывает на конец участка кода.
Вот мы и закончили с программной частью.
Компиляция.
Для компиляции нашей программы мы напишем 2 простеньких батника, что бы не мучатся каждый раз вбивая комманду в консоли...
Первый батник:
@ echo ----OBJ----
@ c:\masm32\bin\ml.exe /coff /c .\ISHODNIC\mouse.asm
Его и запускаем первым.
Второй:
@ echo ----EXE----
@ if EXIST pirat.obj c:\masm32\bin\link.exe /SUBSYSTEM:WINDOWS .\mouse.obj
Если в написание кода вы не допустили ошибок,то программа скомпилится удачно.Можети идти разводить ламеров=))
Теперь давайте разберемся как от этого избавится.
А это предельно просто:
Замените параметр SwapMouseButton с 1 на 0 и всё.
Вот мы и написали простинький «Вирус» и «Антивирус».
Полный текст программы:
.386
.model flat,stdcall
option casemap:nonе
include C:\masm32\INCLUDE\WINDOWS.INC
include C:\masm32\INCLUDE\KERNEL32.INC
include C:\masm32\INCLUDE\USER32.INC
include C:\masm32\INCLUDE\ADVAPI32.INC
includelib C:\masm32\lib\comctl32.lib
includelib C:\masm32\lib\user32.lib
includelib C:\masm32\lib\gdi32.lib
includelib C:\masm32\lib\kernel32.lib
includelib C:\masm32\lib\user32.lib
includelib C:\masm32\lib\advapi32.lib
.data
HINST DWORD 0
strHack db "I hacked you mouse!",0
.code
start:
invoke SwapMouseButton,0
invoke MessageBox, 0 , addr strHack, addr strHack , 0
exit:
invoke ExitProcess , 0
end start
Ну вот и всё!
С вами был m0rgan.
Удачи во всех начинаниях!
P.S.:Писал с бодуна, так чно не ругайте за граматику=)
Взлом компьютерной мышки=))
Страница: 1
Сообщений 1 страница 5 из 5
Поделиться12008-12-27 19:07:53
Поделиться22009-02-02 12:45:24
Какой литературой пользовался для изучения "ассембера"??
Поделиться32009-02-11 22:40:48
кинь аську в ПМ, раскажу)
Поделиться42009-02-16 17:50:07
bug1z
мну тоже скинеш????
Поделиться52009-02-21 15:07:30
bug1z написал(а):
кинь аську в ПМ, раскажу)
И ты свою кинь...
Страница: 1
Похожие темы
Кодекс ХАКЕРА!!!! | Идеология и мораль | 2008-11-22 |