دوره آموزشی کدنویسی امن درسی پلاس پلاس
50 دقیقهپیشرفته2025-07-30
مدرسین

Eduardo Corpeño
Electrical Engineer, Computer Programmer, and Teacher for 15+ years
جزئیات دوره
توی این دوره یاد میگیری چطور کد C++ رو بهصورت امن بنویسی و جلوی باگها و حفرههای امنیتی رایج این زبان رو بگیری. این آموزش روی روشهای عملی و در سطح کد تمرکز داره تا بتونی از مشکلاتی مثل مدیریت نادرست ورودیها، خطاهای حافظه و مشکلات طول عمر آبجکتها جلوگیری کنی.
با استفاده از ویژگیهای مدرن C++ و استانداردهای کدنویسی امن، یاد میگیری کدهایی بنویسی که مقاومتر و امنتر باشن. این دوره برای برنامهنویسهایی عالیه که میخوان اپلیکیشنهای مقاوم در برابر حملات و خطاها بسازن.
🎯 اهداف یادگیری
1️⃣ شناسایی ویژگیهای زبان C++ که ممکنه باعث باگهای امنیتی و رفتارهای تعریفنشده بشن.
2️⃣ استفاده از روشهای مدرن C++ برای مدیریت امن ورودیها، حافظه و منابع.
3️⃣ ارزیابی کد برای پیدا کردن مشکلاتی مثل use-after-free، آسیبپذیری رشتههای فرمت، و لو رفتن دادهها.
4️⃣ تحلیل مدیریت دادههای خارجی و طول عمر آبجکتها برای جلوگیری از سوءاستفاده.
5️⃣ ایجاد پیادهسازیهای امن در C++ با الگوهای ایمن، ویژگیهای کامپایلر و حفاظتهای زمان اجرا.
با استفاده از ویژگیهای مدرن C++ و استانداردهای کدنویسی امن، یاد میگیری کدهایی بنویسی که مقاومتر و امنتر باشن. این دوره برای برنامهنویسهایی عالیه که میخوان اپلیکیشنهای مقاوم در برابر حملات و خطاها بسازن.
🎯 اهداف یادگیری
1️⃣ شناسایی ویژگیهای زبان C++ که ممکنه باعث باگهای امنیتی و رفتارهای تعریفنشده بشن.
2️⃣ استفاده از روشهای مدرن C++ برای مدیریت امن ورودیها، حافظه و منابع.
3️⃣ ارزیابی کد برای پیدا کردن مشکلاتی مثل use-after-free، آسیبپذیری رشتههای فرمت، و لو رفتن دادهها.
4️⃣ تحلیل مدیریت دادههای خارجی و طول عمر آبجکتها برای جلوگیری از سوءاستفاده.
5️⃣ ایجاد پیادهسازیهای امن در C++ با الگوهای ایمن، ویژگیهای کامپایلر و حفاظتهای زمان اجرا.
مهارت ها
C++AdvancedProgramming LanguagesOpen SourceSoftware Development
سرفصل ها
۰. مقدمه
- 01 - باگهای امنیتی به سوءاستفاده تبدیل میشوند
- 02 - استانداردهای کدنویسی امن
- 03 - استفاده از فایلهای تمرین در GitHub Codespaces
۱. امنیت با زبان شروع میشود
- 04 - ویژگیهای قابل بهرهبرداری زبان در ++C
- 05 - خطرات رفتار نامشخص
- 06 - جایگزینهای امنتر در ++C مدرن
- 07 - اصلاح عبارات ناامن
۲. اعتبارسنجی و اعتمادسازی دادههای خارجی
- 08 - مدیریت دفاعی ورودیها
- 09 - تبدیلهای عددی و رشتهای ایمن
- 10 - جلوگیری از آسیبپذیریهای رشته قالببندی
- 11 - چالش - ایمنسازی یک تابع تجزیه داده
- 12 - راهکار - ایمنسازی یک تابع تجزیه داده
۳. رشتهها، رازها و افشاگری
- 13 - استفاده امن از std - - string و نمای رشتهای
- 14 - اجتناب از آسیبپذیریهای رشتهای به سبک C
- 15 - جلوگیری از نشت اطلاعات در لاگها
- 16 - چالش - هک کردن رمز عبور رمزگذاری شده
- 17 - راه حل - هک کردن رمز عبور رمزگذاری شده
۴. سوءاستفادههای مربوط به طول عمر حافظه و شیء
- 18 - سناریوهای خطرناک اشارهگر و مرجع
- 19 - جلوگیری از استفاده پس از آزادسازی و حذفهای دوگانه
- 20 - جلوگیری از نشت حافظه
- 21 - چالش - نکات هوشمندانه
- 22 - راه حل - اشاره گرهای هوشمند
۵. تقویت ساختار و رفتارتان
- 23 - پرچمهای کامپایلر و لینکر برای امنیت
- 24 - نوشتن کد مدیریت خطای امن
نتیجهگیری
- 25 - مراحل بعدی
دوره های مرتبط
- دوره آموزشی کد نویسی ایمن در زبان C (آپدیت 2019)
- دوره آموزشی کدنویسی ایمن در C
- دوره آموزشی اشکال زدایی در سی شارپ
- دوره آموزشی کدنویسی امن در جاوا
- دوره آموزشی کدنویسی ایمن در زبان Go
- دوره آموزشی کدنویسی امن در پایتون
- دوره آموزشی برنامه نویسی ایمن در پایتون (2020)
- دوره آموزشی برنامه نویسی ایمن در جاوا (2020)
مسیرهای مرتبط
- مسیر آموزشی مبانی تبدیل شدن به یک برنامه نویس
- مسیر آموزشی آماده شدن برای آزمون MTA: اصول توسعه نرم افزار (98-361)
- مسیر آموزشی مبانی سی شارپ: از اصول پایه تا ساختارهای اصلی
- مسیر آموزشی پیشرو بودن در توسعه Azure
- مسیر آموزشی تبدیل شدن به یک توسعه دهنده نرم افزار
- مسیر آموزشی ارتقاء مهارت های Node.js خود
- مسیر آموزشی ساخت محصولات هوش مصنوعی: گواهینامه حرفهای ملزومات امنیت
- مسیر آموزشی بهبود بخشیدن مهارت های تست امنیت برنامه خود