Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.01.2015, 21:02   #1
R71MT
Участник клуба
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 1,428
По умолчанию Кривая программа переполнения буфера

...гугл кажет только сишные примеры. Можно пример на асме?
Нашедшего выход - затаптывают первым..
R71MT вне форума Ответить с цитированием
Старый 28.01.2015, 21:23   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Пример переполнения?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 28.01.2015, 21:30   #3
R71MT
Участник клуба
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 1,428
По умолчанию

Stilet, можно пример?!
..ввожу пароль в 10 байт, и штоб буфер переполнился....
Нашедшего выход - затаптывают первым..

Последний раз редактировалось R71MT; 28.01.2015 в 21:33.
R71MT вне форума Ответить с цитированием
Старый 28.01.2015, 21:33   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Я не могу понять о каком буфере идет речь...
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 28.01.2015, 21:36   #5
R71MT
Участник клуба
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 1,428
По умолчанию

Как вызвать сбой программы????
Код:
format PE Console 4.0
include 'win32a.inc'

invoke GetStdHandle,-11
mov [hStdOut], eax
invoke GetStdHandle,-10
mov [hStdIn], eax

invoke WriteConsoleA, [hStdOut], mes, 45, 0, 0
invoke ReadConsoleA, [hStdIn], Buff, 1, 0, 0
invoke WriteConsoleA, [hStdOut], hello, 17, 0, 0
invoke	ExitProcess, 0

mes	    db '==| Buffer/Overload (demo) |==',0dh,0ah,0ah
	    db 'Input pass:',0
hello	    db 0dh,'Hello, User!!!',0
Buff	    db (5)
hStdIn	    dd 0
hStdOut     dd 0

section '.idata' import data readable
  library kernel, 'KERNEL32.DLL'
  import kernel,\
  GetStdHandle, 'GetStdHandle',\
  WriteConsoleA, 'WriteConsoleA',\
  ReadConsoleA, 'ReadConsoleA',\
  ExitProcess, 'ExitProcess'
Нашедшего выход - затаптывают первым..
R71MT вне форума Ответить с цитированием
Старый 28.01.2015, 21:47   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Как вызвать сбой программы?
Да она и так вылетает О_о
На ReadConsoleA Эксепшн дает.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 28.01.2015, 22:03   #7
R71MT
Участник клуба
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 1,428
По умолчанию

Код:
Buff    db (5)
...если ввести 10 символов, то всё-равно прога хавает.
Мне нужно сгенерировать ошибку...
Нашедшего выход - затаптывают первым..
R71MT вне форума Ответить с цитированием
Старый 28.01.2015, 22:07   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
...если ввести 10 символов, то всё-равно прога хавает.
Ппц... Не веришь?
Безымянный.jpg
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 28.01.2015, 22:08   #9
R71MT
Участник клуба
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 1,428
По умолчанию

..как закинуть ввод в стек?!
Нашедшего выход - затаптывают первым..
R71MT вне форума Ответить с цитированием
Старый 28.01.2015, 22:11   #10
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
..как закинуть ввод в стек?!
Код:
mov [Buff],esp
invoke ReadConsoleA, [hStdIn], Buff, 1, 0, 0
надо полагать.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
переполнения NEW функци GDima Visual C++ 3 14.11.2012 06:35
Признак переполнения Dayne Общие вопросы C/C++ 9 19.03.2009 18:26
Ошибка переполнения и sqr. ray13 Паскаль, Turbo Pascal, PascalABC.NET 10 04.03.2009 15:59
Функция проверки переполнения в Delphi TimeChip Общие вопросы Delphi 14 31.01.2009 17:04
Ошибка переполнения стека Cannibal Общие вопросы Delphi 1 01.12.2008 21:32