Результаты поиска по запросу "buffer-overflow"

3 ответа

Есть ли способ обойти SSP (StackSmashing Protection) / Propolice?

После некоторого исследования я не нашел ни одного документа, описывающего метод, чтобы сделать это (даже ненадежный). Похоже, что SSP (StackSmashing Protection) / Прополис

5 ответов

Почему переполнение буфера вызывает ошибки сегментации при доступе к целому числу?

Во время вызова функции B () из функции A (), B () выделяет массив из 100 символов и заполняет его несколько раз, в том числе один раз строкой из 101 символа...

2 ответа

Ввод не ASCII символов в scanf («% s»)

Есть ли способ, которым можно выдавать не ascii шестнадцатеричные символы для scanf, который использует%s ? Я пытаюсь вставить шестнадцатеричные символы, такие как\x08\xDE\xAD и так далее (для демонстрации переполнения буфера). Входные данные не ...

ТОП публикаций

1 ответ

Как заменить адрес возврата в стеке с помощью атаки переполнения буфера

1 ответ

Пример переполнения буфера из книги «Искусство эксплуатации»

Я читал эту книгу «Искусство эксплуатации», которая является хорошей книгой, и я наткнулся на этот пример из файла exploit_notesearch.c. Вкратце автор пытается переполнить программу из notesearch.c int main(int argc, char *argv[]) { int userid, ...

3 ответа

boost :: asio :: buffer: получение размера буфера и предотвращение переполнения буфера?

У меня есть две следующие функции для отправки и получения пакетов. void send(std::string protocol) { char *request=new char[protocol.size()+1]; request[protocol.size()] = 0; memcpy(request,protocol.c_str(),protocol.size()); request_length = ...

2 ответа

Ввод не ASCII символов в scanf («% s»)

Есть ли способ, которым можно выдавать не ascii шестнадцатеричные символы для scanf, который использует

1 ответ

Как заменить адрес возврата в стеке с помощью атаки переполнения буфера

Для домашнего задания я выполняю серию атак переполнения буфера. Мне дали программу для дизассемблирования, исходный код на C для функции, которая неправильно вызываетgets()и исходный код для нескольких других функций, которые я должен заставить ...

2 ответа

Переполнения буфера не произошло

4 ответа

Вы не можете сделать это таким образом. Вот классический пример кода переполнения буфера. Посмотрите, что произойдет, если вы наберете 5, а затем 6 символов с клавиатуры. Если вы выберете больше (16 символов), вы перезапишете базовый указатель, затем адрес возврата функции, и вы получите ошибку сегментации. Что вы хотите сделать, это выяснить, какие 4 символа перезаписывают возвращаемый адрес. и заставить программу выполнить ваш код. Google вокруг стека Linux, структура памяти.

у пропустить строку в C, строкаx=1; в основном разделе, используяbufferoverflow; Тем не менее, я не знаю, почему я не могу пропустить адрес из4002f4 на следующий адрес4002fb несмотря на то, что я считаю 7 байтов формы<main+35> в<main+42>. Я ...