|
Ломаем ОС при помощи printf\scanf в СИ
|
|
|
|
shplint |
Понедельник, 03 Декабря 2007, 22:36
|
Участник
Профиль
Группа: Участник
Сообщений: 156
Регистрация: 22.10.2005
Из: Россия, Семенов
Пользователь №: 9791
Конфигурация
Корпус: -- Процессор: Athlon 64 (socket 754/939/AM2) Материнская плата: Epox 9npa+ Оперативная память: SUMSUNG 256Мб,+384мб Видеокарта: Ati radeon x700 Жесткий диск (винчестер): Seagate Barracuda IV 340016A Дисковод: Нет дисковода CD/DVD: TEAC DW-552G, LG-GCR8500B Модем: smart ax mt880 Сетевой адаптер: -- Звуковая плата: -- Монитор: SUMSUNG SM 753DFX Операционная система: Windows XP Прочее: --
|
Вот у меня есть такой вопрос: на лекции по программированию препод сказал что можно сломать ОС(может не ОС а компьютер) в языке Си при помощи 2-ух функций printf и scanf, используя то что СИ не проверяет выход за пределы массива, типо мы можем обратиться к любой ячейке в памяти компьютера и записать в нее произвольное знаечение... Можно ли такое провернуть? НО он говорил это про чистый СИ не С++, так как С работает с железом напрямую
|
|
|
|
|
pan |
Вторник, 04 Декабря 2007, 9:39
|
Участник
Профиль
Группа: WinCity Team
Сообщений: 2101
Регистрация: 11.11.2001
Из: крепость Владивосток
Пользователь №: 653
Конфигурация
Корпус: -- Процессор: Другой Материнская плата: -- Оперативная память: -- Видеокарта: -- Жесткий диск (винчестер): -- Дисковод: Нет дисковода CD/DVD: -- Модем: -- Сетевой адаптер: -- Звуковая плата: -- Монитор: -- Операционная система: -- Прочее: --
|
|
|
|
|
|
shplint |
Вторник, 04 Декабря 2007, 22:41
|
Участник
Профиль
Группа: Участник
Сообщений: 156
Регистрация: 22.10.2005
Из: Россия, Семенов
Пользователь №: 9791
Конфигурация
Корпус: -- Процессор: Athlon 64 (socket 754/939/AM2) Материнская плата: Epox 9npa+ Оперативная память: SUMSUNG 256Мб,+384мб Видеокарта: Ati radeon x700 Жесткий диск (винчестер): Seagate Barracuda IV 340016A Дисковод: Нет дисковода CD/DVD: TEAC DW-552G, LG-GCR8500B Модем: smart ax mt880 Сетевой адаптер: -- Звуковая плата: -- Монитор: SUMSUNG SM 753DFX Операционная система: Windows XP Прочее: --
|
Это срыв стэка?
Добавлено shplint, Да еще написано на английском языке, нифига не понятно...Вывод-ребята, учите английский язык!!!
|
|
|
|
|
az |
Понедельник, 10 Декабря 2007, 21:37
|
Участник
Профиль
Группа: Участник
Сообщений: 181
Регистрация: 28.08.2002
Из: piter
Пользователь №: 3211
Конфигурация
Корпус: -- Материнская плата: -- Оперативная память: -- Видеокарта: -- Жесткий диск (винчестер): -- Дисковод: Нет дисковода CD/DVD: -- Модем: -- Сетевой адаптер: -- Звуковая плата: -- Монитор: -- Операционная система: -- Прочее: --
|
Правильно - переполнение стека. Такое прокатит, пожалуй что в досе или win9x. NT и старше не дадут приложению изменить память другого приложения или системы (исключение могут составить драйверы и всякие отладчики). Другой момент, что если программа (чужая) использует сканф и не проверяет длинну введенной последовательности, в ней можно вызвать пореполнение буфера, выполнив таким образом произвольный код. Если у программы есть особые привилегии ими можно завладеть. На этом, собственно, и основано подавляющее большинство взломов.
|
|
|
|
|
|
1 чел. читают эту тему (1 Гостей и 0 Скрытых Пользователей)
|
0 Пользователей:
|
|
© Copyright by WinCity.Ru 2001 - 2008 | Обратная связьУслуги веб-хостинга предоставлены компанией MTW.RU
|
|