קורס // שפת סף Assembly
קורס // שפת סף Assembly // קורס // שפת סף Assembly //
CYBER & IT
רמה/שלב
5 שבועות
משך זמן
40
שעות אקדמיות
טרם נקבע
מועד פתיחת קורס
לפי לוז
ימי ושעות לימוד
- מידע על הקורס
- חטיבות לימוד
- קורסים נוספים
01
אודות התכנית
בהקשר של הגנת סייבר, נדרש ידע ב-Assembly כבסיס ללימודי Reverse Engineering, אשר בתורו – מהווה בסיס ללימודי Malware Analysis.
מעבדי אינטל משמשים ככוח העיקרי במחשוב האישי כבר מעל 30 שנה.
הבנת עקרונות ה- low level הנמצאים במעבדי אינטל משמשת לא רק כיסודות להבנת ארכיטקטורת מעבדי אינטל, אלא גם לחומרה אחרת (של אינטל ואחרים), וכן משמשת כיסוד מובהק להבנת הנדסה לאחור (reverse engineering) של תוכנות, תכנון קומפיילרים, הבנת מערכות הפעלה וניצול פגיעויות במערכות אלו.
בתכנית לימודי אסמבלי המבוססת בעיקר על התנסות, נלמד את העקרונות הבסיסיים ונתאר את החומרה שקוד אסמבלי משתמש בו.
נתאר את הפקודות הנפוצות הנראים כקוד אסמבלי, נלמד אותן לעומקן ונבין מה מתרחש “מאחורי הקלעים”.
02
מטרת התכנית
בסיום התכנית תהיה לבוגרים הבנה מעמיקה בקריאת קוד אסמבלי והבנתו.
תשתית לתכניות מתקדמות יותר בתחום, ובראשן – לימודי Reverse Engineering ו- Malware Analysis.
קרא עוד05
מטלות תכנית הלימודים
קיימת חובת נוכחות ב-80% מהמפגשים.
בנושאים הטכניים – תרגול (Hands-on) בכיתה (מעבדה).
קרא עוד06
מתכונת ואופי הלימודים
משך התוכנית כ- 40 שעות.
הלימודים מתקיימים בקמפוס See Security ברמת-גן (צמוד לתחנת רכבת מרכז).
07
- Stepping through a small program and watching the changes to the stack at each instruction (push, pop, call, ret (return), mov)
- Stepping through a slightly more complicated program (adds lea (load effective address), add, sub)
- Understanding the correspondence between C and assembly control transfer mechanisms (e.g. goto in C == jmp in ams)
- Understanding conditional control flow and how loops are translated from C to asm(conditional jumps, jge(jump greater than or equal), jle(jump less than or equal), ja(jump above), cmp (compare), test, etc)
- Boolean logic (and, or, xor, not)
- Logical and Arithmetic bit shift instructions and the cases where each would be used (shl (logical shift left), shr (logical shift right), sal (arithmetic shift left), sar(arithmetic shift right))
- Signed and unsigned multiplication and division
- Special one instruction loops and how C functions like memset or memcpy can be implemented in one instruction plus setup (rep stos (repeat store to string), rep mov (repeat mov)
- Misc instructions like leave and nop (no operation)
- Running examples in the Visual Studio debugger on Windows and the Gnu Debugger (GDB) on Linux