تخفیف ویژه همین الان — دوره‌های تخفیف‌دار را ببینید.
روز
:
ساعت
:
دقیقه
:
ثانیه
تخفیف‌های ویژه
دوره آموزشی کد نویسی ایمن در زبان C (آپدیت 2019)

دوره آموزشی کد نویسی ایمن در زبان C (آپدیت 2019)

1 ساعت 19 دقیقهپیشرفته2019-11-25

مدرسین

Dan Gookin

Dan Gookin

Creator, Teacher, and Technology Writer with 20+ years of experience

جزئیات دوره

C فاقد برخی از سوپاپ های ایمنی ارائه شده توسط زبان های برنامه نویسی جدیدتر است. اما در حالی که این زبان سطح متوسط ​​نقاط ضعف خود را دارد، نوشتن کد C ایمن هنوز امکان پذیر است - فقط به هوشیاری بیشتر از سوی توسعه دهنده نیاز دارد. در این دوره، مدرس Dan Gookin نحوه شناسایی و کدنویسی نقاط ضعف در زبان برنامه نویسی C را برای نوشتن برنامه های امن تر توضیح می دهد. بسیاری از اکسپلویت ها در مورد کد C شناخته شده اند. این دوره به بررسی هر یک می پردازد و آسیب پذیری ها و نحوه برخورد با آنها را توضیح می دهد. حوزه های اصلی تحت پوشش عبارتند از رفتار نامشخص، اجتناب از ساخت و سازهای ناخوشایند، اعتبارسنجی ورودی، مدیریت رشته ها و کار با اشاره گرها.

اهداف یادگیری
نقاط ضعف زبان C
استفاده از تکلیف به عنوان شرط
اجتناب از ()putchar در یک حلقه while
تأیید زمانی که EOF خوانده شده است
احراز هویت ورودی عددی
فیلتر کردن ورودی رشته
اجتناب از انتساب بد رشته
ذخیره رمزها و کدها
پاک کردن داده ها پس از استفاده
مشکلات مربوط به اشاره گرها

مهارت ها

CSoftware Development SecurityCybersecurityProgramming LanguagesOpen SourceSoftware DevelopmentDeep Dive (X:Y)

سرفصل ها

0. مقدمه

  • 01 - کد C ایمن بهتر بنویسید
  • 02 - استفاده از فایل های تمرین
  • 03 - کامپایل کد

1. در حالت دفاعی

  • 04 - شناخت نقاط ضعف سی
  • 05 - آنچه بدها به دنبال آن هستند
  • 06 - بهره برداری از شکار
  • 07 - مستند کردن همه چیز

2. رفتارهای تعریف نشده

  • 08 - قالب بندی دستورالعمل های پیش پردازنده
  • 09 - استفاده از یک تکلیف به عنوان شرط
  • 10 - اجتناب از putchar() در حلقه while
  • 11 - استفاده از فراخوانی system().
  • 12 - دسترسی به عناصر فراتر از اندازه آرایه
  • 13 - تبدیل اعداد صحیح
  • 14 - حلقه زدن با مقادیر ممیز شناور
  • 15 - استفاده از مقادیر برگشتی
  • 16 - تایید زمانی که EOF خوانده شده است
  • 17 - چالش - کد را رفع کنید
  • 18 - راه حل - کد را اصلاح کنید

3. اعتبار سنجی ورودی

  • 19 - احراز هویت ورودی عددی
  • 20 - تبدیل رشته به عدد
  • 21 - استفاده از مقادیر int به جای char
  • 22 - خواندن ورودی با fgets()
  • 23 - فیلتر ورودی رشته
  • 24 - چالش - تایید ورودی
  • 25 - راه حل - تایید ورودی

4. مدیریت رشته

  • 26 - تخصیص رشته ها
  • 27 - اجتناب از انتساب بد رشته
  • 28 - کار با لفظ رشته ای
  • 29 - توابع رشته ذهنی
  • 30 - ذخیره رمزها و کدها
  • 31 - پاک کردن داده ها پس از استفاده
  • 32 - چالش - کد مخفی
  • 33 - راه حل - رمز مخفی

5. مسائل مربوط به اشاره گرها

  • 34 - راه اندازی اشاره گرها و بافرها
  • 35 - بررسی نشانگرهای NULL
  • 36 - انجام ریاضی اشاره گر
  • 37 - نشانگرهای آزاد
  • 38 - چالش - وارد ترکیب شوید
  • 39 - راه حل - وارد ترکیب شوید

نتیجه

  • 40 - مراحل بعدی

دوره های مرتبط

درباره ما

لینداکده یک بستر یادگیری پیشرو است که به افراد کمک می کند تا کسب و کار ، نرم افزار ، فناوری و مهارت‌های خلاقانه را برای دستیابی به اهداف شخصی و حرفه ای بیاموزد.

شماره تلفنکانال آپاراتپشتیبانی تلگرامکانال تلگرامپیج اینستاگرام

کلیه‌ی حقوق این سایت متعلق به لینداکده می باشد

قوانین و شرایط|حریم خصوصی

نماد الکترونیک enamad در صورت اتصال با آی‌پی داخل کشور، نمایش داده خواهد شد.
logo-samandehi - لوگو ساماندهی
zarinpal
zibal