Чтение онлайн

на главную

Жанры

Техника сетевых атак
Шрифт:

·.text:0040104F; В регистр edx заносится смещение буфера, содержащего введенный пароль

·.text:00401052 push edx

·.text:00401052; Сейчас в верхушке стека содержатся два значения

·.text:00401052; смещение эталонного пароля и смещения буфера, содержащего введенный пароль

·.text:00401053 call _strcmp

·.text:00401053; Вызов функции strcmp( amp;pass[0],”Guest”)

·.text:00401058 add esp, 8

·.text:00401058; Балансировка стека

·.text:0040105B test eax, eax

·.text:0040105B; Значение, возвращаемое функцией помещается в регистр eax

·.text:0040105B; если он равен нулю, то строки идентичны и наоборот

·.text:0040105B; если eax равен нулю, команда test выставляет флаг нуля

·.text:0040105D jnz short loc_0_401066

·.text:0040105D; Если флаг не установлен (пароль не равен “Guest”), переход по адресу 401066

·.text:0040105F mov eax, 1

·.text:0040105F; В регистр eax заносится значение 1, которое будет возвращено при выходе из нее

·.text:00401064 jmp short loc_0_401068

·.text:00401064; Переход по адресу 401068 (к выходу из функции)

·.text:00401066; ---------------------------------------------------------------------------

·.text:00401066

·.text:00401066 loc_0_401066:; CODE XREF: auth+4Bj

·.text:00401066 xor eax, eax

·.text:00401068; Обнулить значение регистра eax

·.text:00401068 loc_0_401068:; CODE XREF: auth+52j

·.text:00401068 mov esp, ebp

·.text:00401068; Восстановить значение регистра esp, который должен указывать на сохраненный в стеке регистр ebp

·.text:0040106A pop ebp

·.text:0040106A; Восстановить ebp

·.text:0040106B retn

·.text:0040106B; Выйти из функции. Команда retn снимает из стека двойное слово, которое при

·.text:0040106B; нормальном развитии событий должно быть равно адресу возврата (в данном примере 00401081

·.text:0040106B; (смотри функцию main)

·.text:0040106B auth endp

·.text:0040106B

·.text:0040106C

·.text:0040106C; --------------- S U B R O U T I N E ---------------------------------------

·.text:0040106C

·.text:0040106C; Attributes: bp-based frame

·.text:0040106C

·.text:0040106C main proc near; CODE XREF: start+AFp

·.text:0040106C push ebp

·.text:0040106C; Занесение в стек значение регистра ebp

·.text:0040106D mov ebp, esp

·.text:0040106D; Открытие кадра стека

·.text:0040106F push offset aBufferOverflow; "Buffer Overflows Demo\n"

·.text:0040106F; Занесение в стек смещения строки “ Buffer Overflows Demo” для вывода ее на экран

·.text:00401074 call _printf

·.text:00401074; Вызов функции printf(“Buffer Overflows Demo\n")

·.text:00401079 add esp, 4

·.text:00401079; Балансировка стека

·.text:0040107C call Auth

·.text:0040107C; Вызов функции Auth. В стек заносится адрес следующей за call команды, т.е. 00401081

·.text:00401081 test eax, eax

·.text:00401081; Функция Auth возвратила нулевое значение?

·.text:00401083 jz short loc_0_401094

·.text:00401083; Если функция возвратила нулевое значение перейти по адресу 401094

·.text:00401085 push offset aPasswordOk; "Password ok\n"

·.text:00401085; Занесение в стек смещения строки «Password Ok”

·.text:0040108A call _printf

·.text:0040108A; Вызов функции printf(“Password OK\n”);

·.text:0040108F add esp, 4

·.text:0040108F; Балансировка стека

·.text:00401092 jmp short loc_0_4010A1

·.text:00401092; Переход по адресу 4010A1

·.text:00401094; ---------------------------------------------------------------------------

·.text:00401094

·.text:00401094 loc_0_401094:; CODE XREF: main+17j

·.text:00401094 push offset aInvalidPasswor; "Invalid password\n"

·.text:00401094; Занесение в стек строки “ Invalid password”

·.text:00401099 call _printf

·.text:00401099; Вызов функции printf("Invalid password\n")

·.text:0040109E add esp, 4

·.text:0040109E; Балансировка стека

·.text:004010A1

·.text:004010A1 loc_0_4010A1:; CODE XREF: main+26j

·.text:004010A1 pop ebp

·.text:004010A1; Восстановление ebp

·.text:004010A2 retn

·.text:004010A2; Завершение программы

·…

·.text:004010A2 main endp

·.data:00406030 aHelloRoot db 'Hello, Root!',0Ah,0; DATA XREF:.text:00401003o

·.data:0040603E align 4

·.data:00406040 aLogin db 'Login:',0; DATA XREF: auth+6o

·.data:00406047 align 4

·.data:00406048 aPassw db 'Passw:',0; DATA XREF: auth+1Fo

Популярные книги

Дорогой Солнца

Котов Сергей
1. Дорогой Солнца
Фантастика:
боевая фантастика
постапокалипсис
5.00
рейтинг книги
Дорогой Солнца

Без шансов

Семенов Павел
2. Пробуждение Системы
Фантастика:
боевая фантастика
рпг
постапокалипсис
5.00
рейтинг книги
Без шансов

Дело Чести

Щукин Иван
5. Жизни Архимага
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Дело Чести

Ведьма и Вожак

Суббота Светлана
Фантастика:
фэнтези
7.88
рейтинг книги
Ведьма и Вожак

Измена. Мой непрощённый

Соль Мари
2. Самойловы
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Измена. Мой непрощённый

Предатель. Цена ошибки

Кучер Ая
Измена
Любовные романы:
современные любовные романы
5.75
рейтинг книги
Предатель. Цена ошибки

Возвышение Меркурия. Книга 4

Кронос Александр
4. Меркурий
Фантастика:
героическая фантастика
боевая фантастика
попаданцы
5.00
рейтинг книги
Возвышение Меркурия. Книга 4

Измена. Верни мне мою жизнь

Томченко Анна
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Измена. Верни мне мою жизнь

Мужчина моей судьбы

Ардова Алиса
2. Мужчина не моей мечты
Любовные романы:
любовно-фантастические романы
8.03
рейтинг книги
Мужчина моей судьбы

Младший сын князя. Том 2

Ткачев Андрей Юрьевич
2. Аналитик
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Младший сын князя. Том 2

Смертник из рода Валевских. Книга 5

Маханенко Василий Михайлович
5. Смертник из рода Валевских
Фантастика:
попаданцы
рпг
аниме
7.50
рейтинг книги
Смертник из рода Валевских. Книга 5

Возвышение Меркурия. Книга 14

Кронос Александр
14. Меркурий
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Возвышение Меркурия. Книга 14

Магия чистых душ 2

Шах Ольга
Любовные романы:
любовно-фантастические романы
5.56
рейтинг книги
Магия чистых душ 2

Последняя Арена 4

Греков Сергей
4. Последняя Арена
Фантастика:
рпг
постапокалипсис
5.00
рейтинг книги
Последняя Арена 4