Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Ховард, Лебланк..19 смертельных грехов угрожающих безопасности программ. 1 Buffer overflow
|
|||
|---|---|---|---|
|
#18+
Здравствуйте C: Был некоторое время в чудесном и прекрасном Кёниге. Скучал по K&R, ибо он у меня распечатан в формате a4, и я не брал его с собой. По вечерам было скучно, и я думал что лучше, перечитать Мастера и Маргариту, или купить оригинал K&R. Оригинал не нашёл. А Булгаков был слишком объёмный. Зато нашёл книгу что указана в названии топика. Возникли вопросы. Решил задать часть, ибо остальные могут отпасть после этих. 1. "..в низкоуровневом языке разрешён ПДП". Я рассуждаю так. ОС это набор программ для управления железом. в ОС существуют(как тут написать это значком "Е" наборот ?) функции для ПДП. Значит в ОС существуют интерфейс для ПДП из прикладных программ. Программа выполняется в среде ОС(то ОС для выполняющейся программы как виртуальная машина ), таким образом в языке С/С++ реализованы механизмы работающие с интерфейсом ОС для ПДП. Потому правильней, мне показалось, будет фраза "..в низкоуровневом языке существует механизм ПДП", ибо язык сам по себе ничего не разрешает. Либо я ошибаюсь ? 2. "Когда кто-то говорит о переполнении статического буфера, он чаще всего имеет виду переполнение буфера в стеке". Просто не очень понял фразу. под стеком имеет ввиду LIFO ? 3. "противник получает возможность изменить управляющую информацию". изменить команды ? 4. Что хорошего в том что адрес возврата хранится в регистре ? 5. Далее идёт пример Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. я намеренно написал *argv чтобы не запускать программу через командную строку. И всё получилось. Я думал не получится. Почему ? И ошибка и запись, всё прошло. Мне пора( ещё вопросы, но на меня ругаются что я так долго :( PS mayton, я рад что в Крыму теперь спокойно C: ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2014, 17:49 |
|
||
|
Ховард, Лебланк..19 смертельных грехов угрожающих безопасности программ. 1 Buffer overflow
|
|||
|---|---|---|---|
|
#18+
Если по-простому - это описание тех самых проблем которые возникают при выходе за пределы отведенного места в памяти. (Когда ты писал в 17-й элемент массива из 12 элементов). В умелых руках неумело написанная программа будет делать совсем не то что хотел разработчик. Это так называемые уязвимости, которые используют вирусы, трояны и т.п. п.1. Ты ошибаешься. Высокоуровневые языки не дают ПДП. п.2,3,4,5 Изучай ассемблер, тогда поймешь как данные можно превратить в исполняемый код и запустить. PS Лучше читай дальше K&R. Эта книга сегодня тебе бесполезна (если вирусы писать не собираешься). Уязвимости ищут в популярном софте. Как напишешь что-нибудь, что будет установлено и использоваться хотя бы в миллионе экземпляров - вернешься к этой книге. До этого твоя программа как Неуловимый Джо из анекдота, которого никто не ловит, т.к. не надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2014, 18:46 |
|
||
|
Ховард, Лебланк..19 смертельных грехов угрожающих безопасности программ. 1 Buffer overflow
|
|||
|---|---|---|---|
|
#18+
SashaMercury2. "Когда кто-то говорит о переполнении статического буфера, он чаще всего имеет виду переполнение буфера в стеке". Просто не очень понял фразу. под стеком имеет ввиду LIFO ? речь идёт о стеке вызовов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2014, 19:05 |
|
||
|
Ховард, Лебланк..19 смертельных грехов угрожающих безопасности программ. 1 Buffer overflow
|
|||
|---|---|---|---|
|
#18+
Саш! Это [facepalm] какой-то. Я еще раз тебя прошу не писать информацию которая не имеет к С++ отношения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2014, 12:16 |
|
||
|
Ховард, Лебланк..19 смертельных грехов угрожающих безопасности программ. 1 Buffer overflow
|
|||
|---|---|---|---|
|
#18+
Спасибо, вообщем нужно изучать ассемблер. В книге написано что С/С++ основные языки в которых возникает эта проблема. Да и примеры из С. Администрация, закрывайте тему если это действительно так. Хотя лучше не закрывайте, через 2-3 месяца я к ней хочу вернуться. Вообщем как хотите. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2014, 16:15 |
|
||
|
|

start [/forum/topic.php?fid=57&fpage=63&tid=2019603]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
31ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
65ms |
get tp. blocked users: |
2ms |
| others: | 290ms |
| total: | 429ms |

| 0 / 0 |
