ycliper

Популярное

Музыка Кино и Анимация Автомобили Животные Спорт Путешествия Игры Юмор

Интересные видео

2025 Сериалы Трейлеры Новости Как сделать Видеоуроки Diy своими руками

Топ запросов

смотреть а4 schoolboy runaway турецкий сериал смотреть мультфильмы эдисон
Скачать

Easy Mistakes in C: Buffer Overflows, Memory Pitfalls, and SEI CERT Coding Standards

Автор: Arduino under the Hood

Загружено: 2026-01-20

Просмотров: 9

Описание: 📥 RESOURCES & DOWNLOADS
• Buffer Overflow (stack_function_call_example.zip): https://drive.google.com/file/d/1OIQ9...
• GDB:
– Summary Instructions: https://drive.google.com/file/d/1HL7K...
– Source: https://drive.google.com/file/d/1oTyh...
• SEI CERT C Coding Standard: https://wiki.sei.cmu.edu/confluence/s...
– SEI CERT C++ Coding Standard: https://wiki.sei.cmu.edu/confluence/s...
– SEI CERT Wiki: https://wiki.sei.cmu.edu/confluence/
– Link Collection of the Examples: https://docs.google.com/document/d/1n...
– Randomness 101: LavaRand in Production: https://blog.cloudflare.com/randomnes...

✏️ EXERCISES
• Unsafe printf: https://drive.google.com/drive/folder...
• Buffer Overflow and GDB: https://drive.google.com/drive/folder...
• DCL30-C (Declare Objects with Appropriate Storage Durations): https://drive.google.com/drive/folder...

🧠 QUIZ
https://forms.gle/f1rcjYd8y5g5xo3c9

Have you ever wondered why buffer overflows remain one of the most dangerous vulnerabilities in software, even decades after the Morris worm caused an Internet blackout in 1988? In this comprehensive section, we dive deep into the common mistakes that C developers make when managing memory manually. You will learn exactly how buffer overflows occur, how they can be exploited to hijack program execution, and most importantly, how to prevent them in your own code.

We begin with a hands-on exploration of buffer overflows using a practical demonstration with GDB (GNU Debugger). You will see firsthand what happens on the stack when a function is called, how local variables, return addresses, and base pointers are stored, and how an overflow can overwrite critical data. We examine the differences between von Neumann and Harvard architectures (relevant to ATmega microcontrollers) and discuss mitigation strategies including safe string functions like strncpy and compiler-based protections like stack canaries.

The section introduces the SEI CERT C/C++ Coding Standard, a comprehensive resource for writing safe, reliable, and secure systems. We cover essential rules including: DCL30-C (proper storage durations and static variables), EXP33-C (uninitialized memory dangers), EXP34-C (NULL pointer dereference prevention), EXP42-C (struct padding and comparison pitfalls), STR31-C (string storage requirements), MEM30-C (memory leaks and dangling pointers), FIO47-C (format string validation), ENV33-C (system() function risks), MSC30-C/MSC32-C (pseudorandom number generator best practices), and FLP30-C (floating-point precision issues in loops).

Each rule is demonstrated with practical code examples showing both problematic patterns and their correct solutions. You will gain deep insight into how memory works at the byte level, why padding fields exist in structs, why floats cannot represent all numbers precisely, and how seemingly innocent code can lead to crashes or security vulnerabilities. By the end of this section, you will have the knowledge to write more robust C code and avoid the pitfalls that trap even experienced developers.

#C #CProgramming #BufferOverflow #SEICERT #MemorySafety #GDB #Debugging #EmbeddedSystems #ATmega #CodingStandards #SecurityVulnerabilities #StackOverflow #Pointers #MemoryManagement #FloatingPoint #Arduino

📖 CHAPTERS
0:00 Introduction
1:08 Buffer Overflow
12:20 Demo Buffer Overflow and GDB
33:55 SEI CERT C/C++ Coding Standard
36:06 DCL30-C (Declare Objects with Appropriate Storage Durations)
41:00 EXP33-C (Do not read uninitialized Memory)
43:40 EXP34-C (Do not dereference NULL Pointers)
47:21 EXP42-C (Do not compare padding Data, packed structs)
58:06 STR31-C (Guarantee that Storage for Strings has sufficient Space for Characters and the NULL Terminator)
59:44 MEM30-C (Do not access freed Memory)
1:02:40 FIO47-C (Use valid Format Strings)
1:03:41 ENV33-C (Do not call system())
1:06:08 MSC30-C/MSC32-C (Pseudorandom Number Generators)
1:09:54 FLP30-C (Do not use Floating-Point Variables as Loop Counters, Floating Point Numbers in a Computer)
1:16:17 Summary and What's next?

Не удается загрузить Youtube-плеер. Проверьте блокировку Youtube в вашей сети.
Повторяем попытку...
Easy Mistakes in C: Buffer Overflows, Memory Pitfalls, and SEI CERT Coding Standards

Поделиться в:

Доступные форматы для скачивания:

Скачать видео

  • Информация по загрузке:

Скачать аудио

Похожие видео

Timers and Counters: Hardware-Based Timing, PWM, and Waveform Generation in ATmega

Timers and Counters: Hardware-Based Timing, PWM, and Waveform Generation in ATmega

Освоение программирования на C для Arduino: указатели, массивы, структуры и управление памятью.

Освоение программирования на C для Arduino: указатели, массивы, структуры и управление памятью.

Окупай DPI: Выводим провайдера на чистую воду

Окупай DPI: Выводим провайдера на чистую воду

3714. Longest Balanced Substring II - Day 13/28 Leetcode February Challenge

3714. Longest Balanced Substring II - Day 13/28 Leetcode February Challenge

Освойте коллекцию компиляторов GNU: от исходного кода до микроконтроллера.

Освойте коллекцию компиляторов GNU: от исходного кода до микроконтроллера.

Статические библиотеки AVR: развенчание мифов. Пример использования I2C/TWI.

Статические библиотеки AVR: развенчание мифов. Пример использования I2C/TWI.

PostgreSQL сможет заменить Oracle? Ушел ли Oracle из России? — Подкаст «Слон в IT-лавке»

PostgreSQL сможет заменить Oracle? Ушел ли Oracle из России? — Подкаст «Слон в IT-лавке»

Как взламывают любой Wi-Fi без пароля?

Как взламывают любой Wi-Fi без пароля?

Go beyond Arduino sketches. Master the ATmega328P at the register level

Go beyond Arduino sketches. Master the ATmega328P at the register level

Прерывания: событийно-ориентированное программирование в микроконтроллерах ATmega

Прерывания: событийно-ориентированное программирование в микроконтроллерах ATmega

Google увольняет, Нейросеть для умерших, Суверенный европейский процессор | Как Там АйТи #86

Google увольняет, Нейросеть для умерших, Суверенный европейский процессор | Как Там АйТи #86

Мировое правительство: Версия без мифов / Уроки истории / МИНАЕВ

Мировое правительство: Версия без мифов / Уроки истории / МИНАЕВ

Почему Кошки Вдруг ЗАЛЕЗАЮТ На Вас? (Причина шокирует)

Почему Кошки Вдруг ЗАЛЕЗАЮТ На Вас? (Причина шокирует)

Ламповый звук: физика, психология, анатомия приятного звучания

Ламповый звук: физика, психология, анатомия приятного звучания

Введение в MCP | Протокол MCP - 01

Введение в MCP | Протокол MCP - 01

Как работает Search Engine под капотом: ранжирование и релевантность

Как работает Search Engine под капотом: ранжирование и релевантность

UC3842 и Корректор Коэффициента Мощности  без перемножителя.

UC3842 и Корректор Коэффициента Мощности без перемножителя.

Телескоп Джеймс Уэбб РАСКРЫЛ реальное место Земли во Вселенной и это пугает.

Телескоп Джеймс Уэбб РАСКРЫЛ реальное место Земли во Вселенной и это пугает.

Психиатр разбивает мифы о депрессии, лицемерии христиан и победе над болезнями…

Психиатр разбивает мифы о депрессии, лицемерии христиан и победе над болезнями…

«Хуже уже некуда». Что война сделала с Россией за четыре года, и что будет дальше. Сергей Гуриев

«Хуже уже некуда». Что война сделала с Россией за четыре года, и что будет дальше. Сергей Гуриев

© 2025 ycliper. Все права защищены.



  • Контакты
  • О нас
  • Политика конфиденциальности



Контакты для правообладателей: [email protected]