Форум программистов, компьютерный форум CyberForum.ru

Нужно засунуть код инструкции в 4 char'a так, чтобы в памяти это был код инструкции. - C++

Восстановить пароль Регистрация
 
metaluga145
243 / 244 / 20
Регистрация: 08.04.2013
Сообщений: 927
24.01.2014, 23:29     Нужно засунуть код инструкции в 4 char'a так, чтобы в памяти это был код инструкции. #1
Доброго времени суток. Есть дизассемблированный код. Нужно засунуть код иструкции в 4 чара так, чтобы в памяти это был код инструкции. Как это правильно сделать? (Если что, то заданием является осуществление buffer overflow attack с помощью exploit strings. Это задание по программированию, а не "хакерство карается законом")
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.01.2014, 23:29     Нужно засунуть код инструкции в 4 char'a так, чтобы в памяти это был код инструкции.
Посмотрите здесь:

Переделать код программы так, чтобы решалась через указатели и функцию C++
Нужно написать код программы. Как это сделать C++
код, который прекрасно выполняет Code::Blocks не выполняеться в Студии, как сделатьь так чтобы Студия воспринимала этот код?? C++
C++ Переделать код так, чтобы использовались диапазоны значений с помощью указателей
Измените код так, чтобы мы сами вводили матрицу C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4236 / 2769 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
24.01.2014, 23:35     Нужно засунуть код инструкции в 4 char'a так, чтобы в памяти это был код инструкции. #2
Цитата Сообщение от metaluga145 Посмотреть сообщение
Нужно засунуть код иструкции в 4 чара так, чтобы в памяти это был код инструкции.
писать в виде цифр/чисел, либо подгонять аски код символов под опкоды, но это извращение.

Нужно же просто записать опкоды, исполнять не надо?
metaluga145
243 / 244 / 20
Регистрация: 08.04.2013
Сообщений: 927
24.01.2014, 23:43  [ТС]     Нужно засунуть код инструкции в 4 char'a так, чтобы в памяти это был код инструкции. #3
Kastaneda, вообще надо. собственно есть функция в файле, которая использует gets(),так же в ней есть выделение char a[12]. сразу за вызовом gets() идет ретурн. надо перекрыть адрес в ретурне адресом первой инструкции в нужной нам функции, чтобы она вызвалась. простите, если терминология плохая. я только 5 дней в этом колочусь ) потому еще не до конца разобрался)
gray_fox
What a waste!
 Аватар для gray_fox
1244 / 1127 / 53
Регистрация: 21.04.2012
Сообщений: 2,350
Завершенные тесты: 3
24.01.2014, 23:47     Нужно засунуть код инструкции в 4 char'a так, чтобы в памяти это был код инструкции. #4
metaluga145, эмм, ну так разбить код инструкции на байты, подобрать каждому символ с соответствующим ASCII кодом, не?
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11816 / 6795 / 769
Регистрация: 27.09.2012
Сообщений: 16,867
Записей в блоге: 2
Завершенные тесты: 1
24.01.2014, 23:47     Нужно засунуть код инструкции в 4 char'a так, чтобы в памяти это был код инструкции. #5
Может это чем поможет: http://www.exploit-db.com/papers/24085/
metaluga145
243 / 244 / 20
Регистрация: 08.04.2013
Сообщений: 927
24.01.2014, 23:49  [ТС]     Нужно засунуть код инструкции в 4 char'a так, чтобы в памяти это был код инструкции. #6
gray_fox, попробовал. почему-то функция не вызвалась.
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11816 / 6795 / 769
Регистрация: 27.09.2012
Сообщений: 16,867
Записей в блоге: 2
Завершенные тесты: 1
24.01.2014, 23:51     Нужно засунуть код инструкции в 4 char'a так, чтобы в памяти это был код инструкции. #7
Цитата Сообщение от metaluga145 Посмотреть сообщение
почему-то функция не вызвалась.
всё это добро зависит от реализации. Например, в gcc естьStack-Smashing Protector и просто так уже ничего не дастся.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.01.2014, 00:04     Нужно засунуть код инструкции в 4 char'a так, чтобы в памяти это был код инструкции.
Еще ссылки по теме:

C++ Как возможно выйти в инструкции switch в начало самой инструкции при нажатии "не правильной" кнопки
C++ Переменная char и инструкции if

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
metaluga145
243 / 244 / 20
Регистрация: 08.04.2013
Сообщений: 927
25.01.2014, 00:04  [ТС]     Нужно засунуть код инструкции в 4 char'a так, чтобы в памяти это был код инструкции. #8
Croessmah, нам дан учебный файл, он скомпилирован именно так, чтобы там не было разных защит. типа все должно быть просто и легко.но легко у меня не получается

Добавлено через 10 минут
проблема решена. я забыл перевернуть адрес!
Yandex
Объявления
25.01.2014, 00:04     Нужно засунуть код инструкции в 4 char'a так, чтобы в памяти это был код инструкции.
Ответ Создать тему
Опции темы

Текущее время: 23:47. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru