دوره آموزشی نوشتن کد امن در iOS
16 ساعت 6 دقیقهمتوسط2025-08-06
مدرسین

Infosec Institute
جزئیات دوره
تو این دوره، یاد میگیرین چطور امنیت رو توی توسعه اپلیکیشنهای iOS برای موبایل رعایت کنین. تمرکز اصلی روی Swift، زبان برنامهنویسی اپل، هست و شما با بهترین روشها برای جلوگیری از رایجترین اشتباهات امنیتی iOS آشنا میشین. همچنین محدودیتهای Swift به عنوان یک زبان امن هم بررسی میشه.
هر بخش از دوره به یک دستهبندی مهم امنیت iOS اختصاص داره و شامل مثالهای عملی هست تا بتونین تاثیر عدم رعایت امنیت یا ضعفهای کد رو خودتون ببینین. در پایان، فرصت دارین که همه چیزی که یاد گرفتین رو با تست یک اپلیکیشن واقعی به کار ببرین و مطمئن بشین که ریسکهای امنیتی کاهش پیدا کردن.
این دوره برای حرفهایهای امنیتی، توسعهدهندهها و برنامهنویسان سطح مبتدی تا متوسط مناسبه و مهارتهای لازم برای ساخت یک اپلیکیشن موفق iOS با استفاده از Swift رو در اختیارتون میذاره.
اهداف یادگیری دوره
ادغام شیوههای کدنویسی امن در توسعه اپلیکیشن iOS.
اعتبارسنجی ورودیها با استفاده از Swift.
کاهش ریسک Overflow و خطاهای حافظه در Swift.
رمزنگاری دادهها در iOS با Swift.
محافظت از دادهها در حالت استراحت (Data at Rest) و حین انتقال (Data in Transit).
پیادهسازی کنترل دسترسی در اپلیکیشنهای iOS.
حفظ تمامیت و امنیت اپلیکیشن و دستگاه iOS.
هر بخش از دوره به یک دستهبندی مهم امنیت iOS اختصاص داره و شامل مثالهای عملی هست تا بتونین تاثیر عدم رعایت امنیت یا ضعفهای کد رو خودتون ببینین. در پایان، فرصت دارین که همه چیزی که یاد گرفتین رو با تست یک اپلیکیشن واقعی به کار ببرین و مطمئن بشین که ریسکهای امنیتی کاهش پیدا کردن.
این دوره برای حرفهایهای امنیتی، توسعهدهندهها و برنامهنویسان سطح مبتدی تا متوسط مناسبه و مهارتهای لازم برای ساخت یک اپلیکیشن موفق iOS با استفاده از Swift رو در اختیارتون میذاره.
اهداف یادگیری دوره
ادغام شیوههای کدنویسی امن در توسعه اپلیکیشن iOS.
اعتبارسنجی ورودیها با استفاده از Swift.
کاهش ریسک Overflow و خطاهای حافظه در Swift.
رمزنگاری دادهها در iOS با Swift.
محافظت از دادهها در حالت استراحت (Data at Rest) و حین انتقال (Data in Transit).
پیادهسازی کنترل دسترسی در اپلیکیشنهای iOS.
حفظ تمامیت و امنیت اپلیکیشن و دستگاه iOS.
مهارت ها
iOS SDKXcodeSoftware Development SecurityiOS DevelopmentMobile DevelopmentAppleCybersecurityOne-Off
سرفصل ها
۰. مقدمه
- 01 - به کدنویسی امن در iOS خوش آمدید
۱. مقدمهای بر کدنویسی امن
- 02 - نیاز به کدنویسی امن
- 03 - فعالیت - ۱۰ آسیبپذیری برتر موبایل OWASP، بخش ۱
- 04 - فعالیت - ۱۰ آسیبپذیری برتر موبایل OWASP، بخش ۲
- 05 - فعالیت - ۱۰ آسیبپذیری برتر موبایل OWASP، بخش ۳
- 06 - بررسی اجمالی امنیت iOS، بخش ۱
- 07 - بررسی اجمالی امنیت iOS، بخش 2
- 08 - مروری بر توسعه اپلیکیشن امن با Swift، بخش 1
- 09 - مروری بر توسعه اپلیکیشن امن با Swift، بخش 2
- 10 - بهترین شیوههای توسعه عمومی iOS
۲. اعتبارسنجی ورودی
- 11- درک ریسکهای ورودی
- 12 - تصحیح خودکار و تکمیل خودکار
- 13 - فعالیت - غیرفعال کردن تصحیح خودکار
- 14 - کاراکترهای ویژه، بخش ۱
- 15 - شخصیتهای ویژه، بخش ۲
- 16 - حمله رشته قالببندی، بخش ۱
- 17 - حمله رشته قالببندی، بخش ۲
- 18 - حمله رشته قالببندی، بخش ۳
- 19 - فعالیت - بازی با رشتههای قالببندی
- 20 - پاکسازی ورودیها
- 21 - تکنیکهای پاکسازی ورودی - عبارات منظم، بخش ۱
- 22 - تکنیکهای پاکسازی ورودی - عبارات منظم، بخش ۲
- 23 - فعالیت - عبارات منظم، بخش ۱
- 24 - فعالیت - عبارات منظم، بخش ۲
- 25 - فعالیت - عبارات منظم، بخش ۳
- 26 - فعالیت - ضدعفونی کردن ورودی، بخش ۱
- 27 - فعالیت - ضدعفونی کردن ورودی، بخش ۲
- 28- بستهبندی اموال
- 29 - فعالیت - حذف فاصلههای خالی و خطوط جدید با استفاده از یک پوشش ویژگی
- 30 - فعالیت - محدود کردن مقدار با استفاده از یک پوشش ویژگی
- 31 - فعالیت - پاکسازی ورودی با استفاده از یک پوشش ویژگی
- 32 - بایتهای تهی
- 33 - حملات بین سایتی
- 34 - فعالیت - بررسی حملات XSS
- 35 - تزریق کد
- 36 - فعالیت - فیلتر کردن یک کد QR مخرب، بخش ۱
- 37 - فعالیت - فیلتر کردن یک کد QR مخرب، بخش ۲
- 38 - تزریق SQL، بخش ۱
- 39 - تزریق SQL، بخش ۲
- 40 - غیر سریالیسازی شیء
- 41 - فعالیت - نصب پادهای Alamofire و SwiftyJSON
- 42 - فعالیت - کار ایمن با JSON، بخش ۱
- 43 - فعالیت - کار ایمن با JSON، بخش ۲
- 44 - محافظت از وبویو
- 45 - فعالیت - محافظت از کاربران در برابر UIWebView ناامن
۳. خرابی حافظه
- 46 - مرور کلی حافظه iOS
- 47 - اشارهگرهای سریع
- 48- درک سرریزها
- 49 - فعالیت - ایجاد سرریز بافر
۴. رمزگذاری
- 50 - مرور کلی فضای ذخیرهسازی iOS
- 51 - فعالیت - بررسی سیستم فایل iOS
- 52 - فعالیت - آمادهسازی برای رمزگذاری
- 53- دادههای اصلی
- 54- ماندگاری دادهها، بخش ۱
- 55- ماندگاری دادهها، بخش ۲
- 56 - فعالیت - ذخیره نام کاربری و رمز عبور
- 57 - فعالیت - تأیید نام کاربری و رمز عبور، بخش ۱
- 58 - فعالیت - تأیید نام کاربری و رمز عبور، بخش ۲
- 59 - مروری بر رمزگذاری، بخش ۱
- 60 - مروری بر رمزگذاری، بخش ۲
- 61- جاکلیدی
- 62 - فعالیت - آمادهسازی برای استفاده از جاکلیدی
- 63 - فعالیت - ذخیره اسرار کاربر در Keychain
- 64 - هش کردن
- 65 - فعالیت - تولید مقادیر تصادفی
- 66 - فعالیت - هش کردن رمزهای عبور
- 67 - فعالیت - افزودن نمک به هش رمز عبور
۵. محافظت از دادهها
- 68- ریسکهای رایج دادهها، بخش ۱
- 69- ریسکهای رایج دادهها، بخش ۲
- 70 - محافظت از فایلها، بخش ۱
- 71- محافظت از فایلها، بخش ۲
- 72 - فعالیت - ذخیره دادهها در پایگاه داده Realm
- 73 - امنیت شبکه
- 74 - فعالیت - ایجاد یک استثنای HTTP
- 75 - پسزمینهسازی برنامه
- 76 - فعالیت - پسزمینهبندی ایمن یک برنامه
- 77 - امنیت API
- 78 - فعالیت - ذخیره کلید API در Keychain
- 79- ارتباطات بین پردازشی (IPC)، بخش ۱
- 80- ارتباطات بین پردازشی (IPC)، بخش ۲
- 81- فعالیت - جلوگیری از شرایط رقابتی
۶. کنترل دسترسی
- 82 - اپل آیدی
- 83 - فعالیت - ورود با اپل آیدی
- 84- بیومتریک
- 85 - فعالیت - ورود به سیستم با استفاده از اطلاعات بیومتریک
- 86- مجوز
- 87 - فعالیت - کنترل دسترسی مبتنی بر نقش
- 88 - رمزهای عبور یکبار مصرف
- 89 - فعالیت - استفاده از رمز عبور یکبار مصرف
۷. محافظت از نرمافزار و یکپارچگی سیستم
- 90- درک خطرات مرتبط با کدهای خارجی
- 91 - فعالیت - کار با کد خارجی
- 92 - مدیریت خطا
- 93 - فعالیت - مدیریت خطاها
- 94- قطع درختان، بخش ۱
- 95- قطع درختان، بخش دوم
- 96- قطع درختان، بخش ۳
- 97 - انواع آزمایش
- 98 - تشخیص جیلبریک
- 99 - فعالیت - تشخیص دستگاه جیلبریک شده
- 100 - تحقیقات جدید در مورد آسیبپذیریها
- 101 - خلاصهای از کدنویسی امن iOS
نتیجهگیری
- 102 - نتیجهگیری