Презентация "Переполнение буфера - 2" - скачать презентации по Информатике

Содержание

Слайд 2

Переполнение стека адрес возврата local[2] local[1] local[0] Стек Буфер f_vulner() { char local[3] … … }

Переполнение стека

адрес возврата

local[2]

local[1]

local[0]

Стек

Буфер

f_vulner()
{
char local[3]


}

Слайд 3

int f_vulner (char arg) { char local[100] //обработка return 0 }

int f_vulner (char arg)
{
char local[100]
//обработка
return 0
}
void main()
{


char arg[200]
gets (arg)
.
.
f_vulner (arg)
printf(arg)
return 0
}

адрес возврата

[100]

local

Стек

Обычный ход выполнения программы

«Переполнение стека»

Переменная arg [100]

strcpy(local, arg)

Слайд 4

int f_vulner (char arg) { char local[100] //обработка return 0 }

int f_vulner (char arg)
{
char local[100]
//обработка
return 0
}
void main()
{


char arg[200]
gets (arg)
.
.
f_vulner (arg)
printf(arg)
return 0
}

адрес возврата

[100]

local

Данные
[200]

Переполнение стека

«Переполнение стека»

Стек

strcpy(local, arg)
Ошибка !

Вместо возврата запуск кода

Слайд 5

Данные [200] «Переполнение стека» Вызов функций ядра (программное прерывание INT 0x80)

Данные
[200]

«Переполнение стека»

Вызов функций ядра (программное прерывание INT 0x80)

Вызов функций из

модулей DLL

Использование функции «WinExec»

Использование переполнения стека

Слайд 6

Причины переполнения буфера Отсутствие необходимых проверок на корректность аргументов Отсутствие средств

Причины переполнения буфера

Отсутствие необходимых проверок на корректность аргументов

Отсутствие средств вычисления длины

буфера при работе с указателями

strcpy(local, arg)

Abcd……….?

Слайд 7

Последствия переполнения буфера Чтение ячеек памяти, не принадлежащих массиву Модификация ячеек

Последствия переполнения буфера

Чтение ячеек памяти, не принадлежащих массиву

Модификация ячеек памяти

Системные

данные (адрес возврата и т. д.)
Другие переменные
Исполняемый код
Несуществующая (свободная область)
Слайд 8

Этапы проведения атаки «Переполнение буфера» Подготовка враждебного кода Передача управления враждебному

Этапы проведения атаки
«Переполнение буфера»

Подготовка враждебного кода

Передача управления враждебному коду

Под видом

команд или параметров уязвимого приложения

В адресном пространстве уязвимого приложения (без параметров)

В адресном пространстве уязвимого приложения (с параметрами)

Слайд 9

Предотвращение ошибок переполнения Использование механизма структурных исключений Использование «Heap» для указателей

Предотвращение ошибок переполнения

Использование механизма структурных
исключений

Использование «Heap» для указателей

Использование языков программирования,


делающих невозможным переполнение буфера

Несуществующая область

Буфер

Несуществующая область

Отказ от индикатора завершения

Слайд 10

Методы защиты Установка пакетов исправления Исправление исходного кода с перекомпиляцией Тестирование программ специальными утилитами

Методы защиты

Установка пакетов исправления

Исправление исходного кода с
перекомпиляцией

Тестирование программ специальными
утилитами

Слайд 11

Реализация WWW-службы Клиент (WEB-броузер) HTTP-cервер Протокол обмена HTTP/1.0 HTTP/1.1

Реализация WWW-службы

Клиент
(WEB-броузер)

HTTP-cервер

Протокол обмена

HTTP/1.0

HTTP/1.1

Слайд 12

Пример уязвимости WWW-клиента Клиент (WEB-броузер) Hacker’ s Web site C:\…\StartUp\ RunMe.hta

Пример уязвимости
WWW-клиента

Клиент
(WEB-броузер)

Hacker’ s
Web site

C:\…\StartUp\

RunMe.hta

Слайд 13

Уязвимости WWW-серверов Уязвимости программной реализации (ошибки кода) Уязвимости информационного наполнения Ошибки обслуживания (настройки)

Уязвимости WWW-серверов

Уязвимости программной реализации (ошибки кода)

Уязвимости информационного наполнения

Ошибки

обслуживания (настройки)
Слайд 14

Нарушение нормального функционирования объекта атаки Местонахождение атакующего В разных сегментах с

Нарушение нормального функционирования объекта атаки

Местонахождение атакующего

В разных сегментах с объектом атаки

Используемые

уязвимости

Цель

Ошибка в реализации MS Internet Information Server

Степень риска

Бесполезное расходование вычислительного ресурса (посылка некорректных HTTP-запросов)

Механизм реализации

Средняя

Отказ в обслуживании «IIS_DoS»

Слайд 15

HACKER IIS Windows NT Server 200.0.0.123 200.0.0.126 Внутренняя сеть HTTP -

HACKER

IIS

Windows NT Server

200.0.0.123

200.0.0.126

Внутренняя сеть

HTTP - запросы

Отказ в обслуживании «IIS_DoS»

C:\ HackTools \

iisdos.exe
Слайд 16

Ошибка обработки имён CGI - скриптов Получение контроля над объектом атаки

Ошибка обработки имён CGI - скриптов

Получение контроля над объектом атаки

Местонахождение атакующего

В

разных сегментах с объектом атаки

Используемые уязвимости

Цель

Ошибка в реализации MS Internet Information Server

Степень риска

Запуск кода на объекте атаки

Механизм реализации

Средняя

Слайд 17

Ошибка обработки имён CGI - скриптов Описание уязвимости Опубликовано на сайте:

Ошибка обработки имён CGI - скриптов

Описание уязвимости

Опубликовано на сайте:
NSFOCUS INFORMATION TECHNOLOGY

CO.,LTD (http://www.nsfocus.com)

CVE: CAN-2000-0886

HTTP
http://site/scripts/test.bat"+&+dir+c:/+.com

C:\dir

Слайд 18

Ошибка обработки имён HTR - файлов Описание уязвимости HTTP http://site/scripts/test.bat+.htr Содержимое файла test.bat

Ошибка обработки имён HTR - файлов

Описание уязвимости

HTTP
http://site/scripts/test.bat+.htr

Содержимое файла
test.bat

Слайд 19

Получение контроля над объектом атаки Местонахождение атакующего В разных сегментах с

Получение контроля над объектом атаки

Местонахождение атакующего

В разных сегментах с объектом атаки

Используемые

уязвимости

Цель

Ошибка реализации Internet Explorer

Степень риска

Запуск кода на объекте атаки
(во время посещения Web-сайтов злоумышленников)

Механизм реализации

Высокая

Использование уязвимости
обработки MIME-сообщения