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

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

در حالت کلی پروسه مهندسی شامل: تجزیه و تحلیل مسأله، ارائه طرح اولیه، بررسی و اشکال‌یابی طرح و در نهایت پیاده‌سازی طرح‌های مهندسی، می‌شود که نتیجه آن، یک محصول یا خروجی تعریف شده است. اما مهندسی معکوس به کل، پروسه‌ای است که بالعکس مهندسی می‌باشد. در مهندسی معکوس ما یک محصول یا یک خروجی ملموس داریم که باید با به کارگیری یک سری رویکردهای از پیش تعریف شده به طرح و ایده‌هایی طراحی آن محصول برسیم.

در این درس، که با عنوان مهندسی معکوس، شناخته شده است، ما به این مسأله خواهیم پرداخت که چطور می‌توانیم در نگاه کلی، یک محصول مهندسی شده را تجزیه کرده (Synthesis) و در گام بعد به تحلیل (Analysis) ساختارهای آن بپردازیم و همچنین در نهایت با استخراج ایده‌ها و الزامات محصول، به تولید مجدد (Reconstruction) محصول بپردازیم. این درس در واقع به پروسه مهندسی معکوس در صنعت نرم‌ افزار می‌پردازد، اما ساختار آن به شکلی تهیه شده است که دانشجوهای الکترونیک، فناوری اطلاعات و نرمافزار، از مفاد آن بتوانند برای پروسه‌های مهندسی معکوس بهره‌مند شوند.

شایان به ذکر است، درس مهندسی معکوس پیش نیاز فیلدهای کاری و پژوهشی از قبیل: تحلیل بدافزار، کشف آسیب‌پذیری، توسعه کدهای اکسپلویت، امنیت نرم‌افزار، امنیت شبکه و امنیت سخت‌افزار و الکترونیک است و دانشجویان مقطع ارشد، دکتری و پسادکترا (Postdoctoral Research) رایانه، امنیت رایانه، سخت‌افزار، فناوری اطلاعات و حتی هوش مصنوعی می‌توانند، از مفاد آن برای پژوهش‌های خود با محوریت امنیت و تحلیل مهندسی بهره‌مند شوند.

نکته: در این درس، فقط در مورد مهندسی معکوس صحبت خواهیم کرد و تلاش بر این خواهد بود که تمامی جزئیات آن را فرا بگیریم. در حالت کلی در این دوره به تجزیه و تحلیل بدافزار، کشف آسیب‌پذیری و توسعه اکسپلویت پرداخته نخواهد شد (عنوان درس فرادرس هم اصلاح خواهد شد). 


👤 مدرس: میلاد کهساری الهادی (عضو هیت علمی فرادرس)

  

برای اطلاعات بیشتر و مشاهده سرفصل‌های این دوره به آدرس رجوع کنید: https://faradars.org/courses/fvsft9608-reverse-engineering-and-malware-analysis

https://t.me/doresearch