הנדסה הפוכה
הִנדוּס לאחור[1] (באנגלית: reverse engineering) הוא תהליך של גילוי עקרונות טכנולוגיים והנדסיים של מוצר דרך ניתוח המבנה שלו ואופן פעולתו. לרוב, תהליך זה כולל פירוק המוצר למרכיביו, וניתוח פרטני של דרך פעולתם. לרוב, תהליך ההנדוס לאחור מבוצע מתוך כוונה להרכיב מוצר חדש הפועל בצורה דומה, מבלי להעתיק למעשה את המקור.
סוגים ויישומים שונים של הנדסה הפוכה
[עריכת קוד מקור | עריכה]לעיתים קרובות צבאות משתמשים בהנדסה הפוכה על מנת להעתיק טכנולוגיות, מכשירים או מידע של מדינות אחרות, שהושגו על ידי חיילים רגילים בשטח או על ידי מודיעין טכנולוגי. בזמן מלחמת העולם השנייה ובזמן המלחמה הקרה השתמשו רבות בהנדסה הפוכה. דוגמה ידועה ממלחמת העולם השנייה היא הג'ריקן – כוחות בריטים ואמריקאים הבחינו שלגרמנים היו מכלים של נפט בעלי עיצוב מעולה. הם השתמשו בהנדסה הפוכה כדי להעתיק מכלים אלו. הם קראו להם "ג'רי־קן" (Jerry can, "מכלים של גרמנים").
אחת התוצאות של מבצע יהלום הייתה מסירתו הזמנית של מטוס קרב מסוג מיג-21 לשם הנדסה הפוכה ב"אזור 51".
הנדוס לאחור של תוכנות מחשב
[עריכת קוד מקור | עריכה]בתחום התוכנה הנדוס לאחור מתייחס, בדרך כלל, לתהליך שמטרתו לחלץ מתוכנת מחשב את האלגוריתם שבבסיסה, כאשר זמין למהנדס קובץ ההרצה בלבד (ולא קוד המקור). תהליך מוצלח של הנדוס לאחור יאפשר להבין את הלוגיקה שמאחורי התוכנה ולשחזר, במידה מסוימת, את קוד המקור שלה.
שימושים נפוצים
[עריכת קוד מקור | עריכה]- חוקרי אבטחת מידע: מחקר ואיתור באגים ופרצות אבטחה ביישומי מחשב.
- חברות אנטי וירוס: ניתוח תוכנות זדוניות כמו סוסים טרויאנים, וירוסי מחשב, תוכנות רוגלה וכדומה.
- גורמי פיתוח תוכנה: ניתוח טכנולוגיות מסוימות והתאמתן לפלטפורמות אחרות. לדוגמה, פרויקט ההנדוס לאחור של מנגנון ניהול הקבצים NTFS שבמערכת ההפעלה חלונות, לצורך הוספת תמיכה בטכנולוגיה זו במערכת ההפעלה לינוקס.
- קראקרים: פריצת משחקי מחשב ותוכנות המוגנים מפני שימוש לא חוקי. התוצר העיקרי הוא קראקים ליישומים.
- חברות מסחריות: העתקת טכנולוגיות ומוצרים.
- ארגוני ביון: גילוי פרצות אבטחה על מנת לנצלן לצורכי ביון.
- שיחזור נתונים: שחזור נתונים של דיסקים פגומים[2]
כלים
[עריכת קוד מקור | עריכה]כלים נפוצים להנדוס לאחור של תוכנות מחשב הם: