תוכנית לימודים להתמחות הגנת סייבר מהדורה רביעית צוות תוכנית הלימודים מהדורה שלישית כתיבה ועריכה )לפי סדר א"ב( תומר גלון צוות תוכנית הלימודים מהדורה שנייה כתיבה ועריכה )לפי סדר א"ב( איריס צור ברגורי עומר רוזנבוים תומר גלון צוות תוכנית הלימודים מהדורה ראשונה כתיבה )לפי סדר א"ב( איגור בוגודלוב לטם גיא עדי שהרבני עומר רוזנבוים עמרי אילדיס רמי עמר שלומי בוטנרו שלומי הוד עריכה שלומי הוד
תוכן תוכנית לימודים להתמחות...1 הגנת סייבר... 1 מהדורה שלישית...1 צוות תוכנית הלימודים מהדורה שלישית... 1 צוות תוכנית הלימודים מהדורה שנייה... 1 צוות תוכנית הלימודים מהדורה ראשונה... 1 מבוא לתוכנית הלימודים...4 מרחב הסייבר והגנת סייבר...4 מטרות התכנית... 4 דרישות קדם... 4 שיטת ההוראה...4 חלוקת השעות העיוניות ושעות הפרויקט...4 פרקי החלופה בהתמחות... 4 עקרונות מנחים בלימוד ההתמחות... 5 חלוקה מומלצת...5 90( שעות( 6... חלק א' Python פרק חלק ב' - רשתות מחשבים )120 שעות(... 8 חלק ג' פרק 1: תחילת מסע - איך עובד האינטרנט?... 9 פרק 2: תכנות ב- Sockets...10 פרק :3 Wireshark ומודל 5 השכבות 11... פרק 4: שכבת האפליקציה... 13 פרק :5 scapy 13... 6: שכבת התעבורה...15 פרק 7: שכבת הרשת... 16 פרק 8: שכבת הקו... 17 פרק 9: השכבה הפיזית... 18 פרק 10: רכיבי הרשת... 19 פרק 11: איך הכל מתחבר, ואיך עובד האינטרנט?... 20 פרק 12: תכנות Sockets מתקדם : ריבוי משתמשים... 21 מערכות הפעלה )120 שעות(...22 פרק 1: מבוא למערכות הפעלה ווירטואליזציה... 23 פרק 2: ניהול תהליכים במערכת ההפעלה זיכרון וירטואלי, פרוססים ות'רדים... 25 פרק 3: סנכרון ותקשורת בין תהליכים... 26 פרק 4: ניהול הגדרות 27...Registry
פרק פרק פרק 5: מערכות קבצים ומבני קבצים... 28 6: שירותי מערכת ההפעלה...30 7: ניהול הרשאות...31 פרק 8: ניתוח ומחקר תוכנה ב- 32...Windows פרק 9: ניתוח ומחקר קוד ב- Windows...33 חלק ד' עבודת גמר )120 שעות(...34
מבוא לתוכנית הלימודים מרחב הסייבר והגנת סייבר מרחב הסייבר הוא המרחב המטפורי הנוצר מחיבור ישויות שונות מציאותיות ווירטואליות - באמצעות מערכות מחשב ומערכות תקשורת. למערכות אלו, השפעה על חיי היום יום של כל אחד מאיתנו, ופגיעה בהן עלולה להפריע למהלך החיים התקין. לכן, ישנה חשיבות ללימוד הגנת כסייבר כמקצוע. מההיבט הכולל, ניתן להגדיר את מרחב הסייבר כמערכת של מערכות. כל מערכת שכזו מורכבת מרכיבים הבונים אותה, מקשרים בניהם ומפעולות אפשריות עליהם. מערכת יכולה להיות בכל סדר גודל, החל משבב בודד וכלה ברשת תקשורת חובקת עולם האינטרנט. מטרות התכנית מטרת העל של התמחות זו היא כי התלמיד יהיה מתכנת וחוקר במרחב הסייבר, תוך למידה ובחינה של האספקטים השונים המרכיבים מרחב זה: קישוריות מידע חישוביות וסיבוכיות וכל זאת תוך למידה והקפדה על תכנות מונחה עצמים כמתודולוגית עיצוב ופיתוח מובילה ומרכזית. דרישות קדם סיום לימודי "יסודות מדעי המחשב" בהצלחה. תלמיד התמחות זו )סייבר( נדרש ללימודי 5 יח"ל במתמטיקה וכן 5 יח"ל מדעיות )פיסיקה או כימיה או ביולוגיה בלבד(. שיטת ההוראה המורים יתמקדו בעיקר בהוראה מן הפרט אל הכלל. כלומר, מהצגת דוגמה, צורך והסקת מסקנה לתמונה הכוללת. חלק נכבד מהתרגול יעשה כשיעורי בית ובמעבדה. התלמידים יריצו את שיעורי הבית ויציגו תקלות, בעיות ואפשרויות באופן התכנות. המורה יכול להשתמש בעבודות התלמידים כדי להסביר את טכניקות התכנות לצרכי למידה עצמית. חלק מהלימוד הן בכיתה והן בשיעורי הבית יתבסס על עבודה עצמית, עבודת חקר ולימוד באמצעות האינטרנט כך שהתלמיד יגיע לשליטה בדרכים שונות להשגת ידע לצורך תכנות, שימוש במחלקות קיימות, פתרון בעיות, הבנת הרשת, מחקר תקשורת נתונים. חלוקת השעות העיוניות ושעות הפרויקט מעצם טבעה של תוכנית לימודים זו, נדרשת התנסות רבה של התלמיד בעבודה מעשית. חלקה המעשי של התוכנית הינו כ- 80% מהשעות הנלמדות, דהיינו 12 ש"ש. חלקה העיוני של התוכנית הינו 20% מהשעות הנלמדות, דהיינו ש 3 "ש. שעות הלימוד העיוניות ושעות ההתנסות צריכות להיות משולבות זו בזו ועל כן נדרש ללמד את כולן במעבדה. יש לשים לב שהנושא "הנחיית פרויקט" נכלל בשעות ההתנסות. את הכנת עבודת הגמר )883599( יש לבצע בשלבים ולא בסיום שנת הלימודים. לדוגמה, יש לבקש את אפיון המערכת בשלבים מתקדמים בלימוד )תוך אפשרות לשינויים בהמשך(. הערכה לביצוע פרויקט צריכה להיעשות ע"י מורה תוך כדי למידה של נושאי הלימוד שונים במסגרת שעות התנסות. פרקי החלופה בהתמחות ההתמחות בנוייה מארבעה חלקים )ובתוכם תת פרקים(: ראשי פרקים מספר השעות המוקצות
עיוני 30 30 30 90 מעשי 60 90 90 120 360 PYTHON רשתות מחשבים הגנת מערכות הפעלה עבודת גמר סה"כ.1.2.3.4 עקרונות מנחים בלימוד ההתמחות hands-on - עבודה באופן ישיר, בלתי-אמצעי ומעשי עם המערכות השונות בתכנית הלימודים. 1. level -low הבנה מעמיקה ויסודית של המערכות השונות. יש להבין את המנגנונים הפנימיים של המערכות. 2. חלוקה מומלצת כיתה י' 90 שעות )3 ש"ש( 1. כיתה י"א 120 שעות )4 ש"ש( 2. 240 שעות )8 ש"ש( כיתה י"ב 3.
90( PYTHON חלק א' שעות( מטרות כלליות הכרות ראשונית עם שפת פייתון, והקניית כלים לתרגול באמצעות שפת פייתון במהלך הפרקים הבאים. הבנה ויכולת תכנון וכתיבה של תוכניות מחשב בפייתון. התלמיד יסביר את ההבדלים העיקריים בין שפת #C Java / לשפת פייתון. 1. התלמיד יסביר את המושג שפת סקריפטינג. 2. התלמיד יממש סקריפטים הכוללים את הידע הנדרש בכל חמשת יחידות הלימוד של מדעי המחשב ובפרט 3. סקריפטים הכוללים: תנאים, לולאות, מערכים. התלמיד יתאר פונקציות מובנות בולטות בשפת פייתון. 4. התלמיד יממש סקריפטים הכוללים חלוקה פונקציות. 5. התלמיד יכתוב קוד אשר עובר בדיקות, PEP8 מתועד היטב ומקבל ציונים גבוהים ב-.PyList 6. התלמיד יכירו יממש סקריפטים המשתמשים ספריות עיקריות בפייתון 7. דרכי ההוראה בפרק זה התלמידים יעשו את ההסבה לשפת התכנות פייתון תוך דגש על שימוש בידע קיים. 1. יש לשים דגש על סגנון הכתיבה, התיעוד, ובדיקות תקינות. 2. פייתון מהווה כלי ואמצעי להעברת הידע, ואינו מטרה בפני עצמו. 3. הידע של התלמידים בשפת פייתון יעמיק תוך כדי תרגול במהלך הפרקים. 4. הלמידה מתבצעת באופן עצמאי על ידי התלמידים 5. מומלץ לאפשר לתלמידים לתרגל בכיתה, באמצעות ליווי של סגל ההוראה. את השלבים שלא יספיקו, 6. עליהם להשלים בבית בכוחות עצמם. היות ושפת פייתון משמשת ככלי בהמשך הלימודים, על התרגילים והחומר הנלמד לשקף זאת. התרגילים 7. וההסברים יתמקדו בנושאי הצפנה,עיבוד תמונה ואלגוריתמים מתקדמים ובכך יקנו לתלמידים את החשיבה האלגוריתמית הנדרשת בהמשך הפרקים. דוגמאות לתרגילים אפשריים: הפיכת תמונה ל ASCII והחזרתה לתמונת, grayscale תרגילי מציאת המסלול הקצר ביותר בין שני ערכי ויקיפדיה. מומלץ להציג דוגמה" מתגלגלת" בשלבים של מערכת תוכנה מבוססת.OOP בסיום כל נושא לימוד 8. להוסיף למערכת את היכולות והתכונות שנלמדו. בנוסף מומלץ לדרוש מהתלמידים כתרגול מעבדה או שיעורי בית לכתוב בעצמם דוגמה בשלבים. מושגים והכוונה מבוא לשפת פייתון 1. היסטוריה א. מחשב ואלוגריתם ב. סביבת עבודה ג. חישובים ומשתנים 2. מבני בקרה 3. לוגיקה א. תנאים ב. לולאות ג. טיפוסים ומבני נתונים 4. מחרוזות א. רשימות ב. מילונים ג. פונקציות 5. עיבוד מידע 6. קריאה וכתיבה של קבצים לטקסט א. בדיקות וסטנדרטי כתיבה 7. pylist א.
PEP8 ב. pytest ג. נושאים נוספים מודלים מרכזיים בפייתון ושימושם א. שגיאות - Exceptions ב..8 דרכי הערכה בחינה עיונית 1. פתרון שאלות בסגנון בגרות יסודות ומבני נתונים א. תכנון מערכת המכילה את הנושאים הנלמדים ב. בחינה מעשית 2. התלמיד יפתור בכיתה תרגילים מעשיים א. התלמידים ייממש את המערכת מסעיף 1 ב.
120( חלק ב' - רשתות מחשבים שעות( ראשי פרקים פרקי הלימוד תחילת מסע - איך עובד האינטרנט? תכנות ב- Sockets Wireshark ומודל חמש השכבות שכבת האפליקציה Scapy שכבת התעבורה ;שכבת הרשת שכבת הקו השכבה הפיזית רכיבי רשת איך הכל מתחבר, ואיך עובד האינטרנט? תכנות Sockets מתקדם ריבוי משתמשים פרויקט רשתות סה"כ מספר השעות המוקצות עיוני מעשי - 2 8 3 5 4 10 4 3-8 4 8 4 8 3-3 - 2-2 10 3 30-90 30 ספר הלימוד http://cyber.org.il/networks/networks
- פרק 1: תחילת עובד איך מסע האינטרנט? הסבר אינטואטיבי על תהליך הגלישה באינטרנט. התלמיד יסביר את המושגים שרת ולקוח. 1. התלמיד יתאר מושגי תקשורת בסיסיים בעולם התקשורת. 2. התלמיד ישתמש בעצמו בכלים מעשיים כגון Ping ו- Traceroute. 3. התלמיד יתאר את ההקשר של החומר הנלמד לפעולות בסיסיות כמו גלישה באינטרנט. 4. מושגים והכוונה WWW.1 תגובה בקשה, 2. כתובת מקור, כתובת יעד 3. GeopIP, Traceroute, Ping.4 קפיצה HOP.5 שמות דומיין 6. DNS.7 nslookup.8 דרכי ההוראה 1. אין להכנס לעומק של כל נושא, אלא לתת תמונה ממבט על, כדי שלתלמידים יהיה קל להתחבר לנושא ולקבל מושגים ראשוניים שיהוו שפה משותפת עבור השיעורים הבאים. הפרק יספק מבט על על הנושאים והפרוטוקולים שילמדו בהרחבה בהמשך. 2. יש לנהל את השיעור עם התלמידים באופן אינטראקטיבי, ולתת לתלמידים לנחש את התהליכים שקורים מאחרי הקלעים, ולהציע כיצד המידע יכול להגיע ליעדו. 3. היות שמדובר בשיעור הראשון בנושא, כדאי לנצל את הפתיחה לשם העברת מסרים כלליים על מערך "רשתות מחשבים" מה נלמד לאורך השנה. כמו כן, נסביר ששיעור זה הוא שיעור מבוא בלבד ונועד לתת תמונה כללית. 4. מומלץ לציין References לשיעורים עתידיים. לדוגמה, כאשר מדובר על כתובות IP להסביר שנלמד עליהם יותר בפרק שכבת הרשת. כאשר מציגים את הכלי,Traceroute להגיד שבהמשך השנה נלמד איך הוא עובד והתלמידים אף יממשו את הכלי בעצמם. הדגמות לתת לתלמידים להתנסות. למשל, לאפשר לתלמידים לעשות בעצמם Ping ל- Google, ולגלות את כתובת ה- IP שלו במהלך השיעור. דרכי הערכה בחינה עיונית: 1. התלמיד יגדיר ויסביר מושגים הבאים מעולם התקשורת. א. התלמיד יציין 3 בעיות שיש לפתור כדי לנהל תקשורת אפקטיבית ברשת, ויציע פתרונות אפשריים. ב.
םי- פרק 2: תכנות ב- SOCKETS פיתוח תוכניות בסביבת הרשת באמצעות Socket -ים. התלמיד יתאר כיצד פותחים וסוגרים Socket בסביבת.Python 1. התלמיד יתאר כיצד קוראים מידע מ- Socket בסביבת.Python 2. התלמיד יתאר כיצד שולחים מידע באמצעות Socket בסביבת.Python 3. התלמיד ינתח ויסביר את ההבדל בשימוש ב- Socket ב- Protocol Stream אל מול.Datagram Protocol 4. התלמיד יתכנת אפליקציית.Client 5. מושגים והכוונה Socket.1 Import socket.2 הפונקציה bind.3 הפונקציה listen.4 הפונקציה connect.5 הפונקציה recv.6 הפונקציה send.7 הפונקציה sendto.8 הפונקציה recvfrom.9 Blocking Functions.10 Stream Protocols.11 Datagram Protocols.12 דרכי ההוראה מומלץ לשתף את התלמידים בכך שכבר בשלב מוקדם הם מקבלים כלי פרקטי לידיים, ושבסוף השיעור הם 1. ידעו בעצמם לכתוב שרת שמבצע פקודות בהתאם לבקשות שהוא מקבל. להדגים עבודה בתצורת Client/Server מעל פרוטוקול.UDP 2..Blocking להדגים עבודה מול שרת TCP הפועל בתצורת 3. להסביר את החשיבות של סגירת Socket בסיום העבודה. 4. עבור כל מימוש ב- Socket -ים יש להציג בעזרת Wireshark את התעבורה שעברה ברשת. 5. התלמידים ימשיכו ללמוד ולהתנסות ב- Python באופן אינטגרטיבי עם המשימות בסוקטים, כלומר מבנה 6. חדש מסויים של Python ילמד בהקשר של השימוש בספריית הסוקטים דרכי הערכה בחינה עיונית: 1. התלמיד יציין את הפונקציות בהם יש להשתמש בעת יצירת TCP Server ואת התפקידיהן א. התלמיד יציין את הפונקציות בהם יש להשתמש בעת יצירת TCP Client ואת התפקידיהן ב. התלמיד יציין את הפונקציות בהם יש להשתמש בעת יצירת UDP Server ואת התפקידיהן ג. התלמיד יציין את הפונקציות בהם יש להשתמש בעת יצירת UDP Client ואת התפקידהן ד. בחינה מעשית: 2. התלמיד יתחבר לשרת כלשהו )שירות מזג אוויר/שעון( ויתקשר אותו מעל באמצעות Socket א. לשם קבלת נתונים ממנו. התלמיד יממש שרת פקודות מתקדם, המסוגל להעביר תמונות מסך ממחשב למחשב. ב.
ומודל 5 WIRESHARK השכבות פרק 3: לתאר העקרון של חלוקה לשכבות בעת ביצוע תקשורת בין שני Hosts/Nodes ברשת. להציג 1. את מטרת השכבות, הפעולות אותן הן נדרשות לבצע והסדר בניהן. רכישת מיומנות שימוש בכלי.Wireshark 2. התלמיד יסביר את המטרת מודל חמש השכבות. 1. התלמיד ינתח וינמק את הבעיה והרקע לפיתוח מודל חמש השכבות. 2. התלמיד יגדיר את כל השכבות במודל ואת התפקידים שלהם. 3. התלמיד יסביר את הצורך בסטנדרטזציה בעת פיתוח פרוטוקול תקשורת. 4. התלמיד יגדיר וינמק שמודבר במודל Reference בלבד. 5. התלמיד יסביר את המטרה של שימוש ב- Sniffer. 6. התלמיד ינתח ויתאר את האפשריות הבאות בשימוש ב- Wireshark : 7. שימוש ב- Filters א. ביצוע סטיסטיקות על תעבורת תקשורת ב. חיפוש מחרוזות במידע המופיע ב- Capture ג. ביצוע Parsing לתעבורת תקשורת ע"פ פרוטוקול מבוקש ד. שינוי של הגדרות ב- Options Capture ה. שמירה של Captured Data ל- File Capture ו. התלמיד ינתח ויתאר את החלקים השונים ב- GUI של :Wireshark 8. Menus א. Shortcuts ב. Capture Filters ג. Packet List Pane ד. Packet Detail Pane ה. Dissector Pane ו. Misc ז. מושגים והכוונה 1. שכבת תקשורת 2. פרוטוקול 3. תקן.4 כימוס )Encapsulation( Protocol Tunneling.5.6 השכבה הפיזית Layer( )Physical.7 שכבת הקו Layer( )Data Link.8 שכבת הרשת Layer( )Network.9 שכבת התעבורה Layer( )Transport.10 שכבת האפליקציה Layer( )Application.11 תקורה )Overhead( Sniffer.12 Promiscuous Mode.13 Non- Promiscuous Mode.14 Display Filter.15 Capture Filter.16 MAC Resolving.17 Transport Name Resolution.18 Transport.19 Dissector.20
דרכי ההוראה 1. הסבר המטרות והתפקידים של כל אחד מהשכבות. 2. הצגת השירותים אשר השכבות מספקות אחת לשנייה. 3. הדגמת אופן יצרת הקשר הלוגי בין שתי שכבות מקבילות ב- Host -ים שונים תוך שימוש ב- Header -ים. 4. תיאור אופן ביצוע תהליך הכימוס )Encapsulation( בעת העברת נתונים בין שני Host -ים שונים. 5. התמקדות בשכבות הרשת, התעבורה והאפליקציה. 6. ללמד באופן משולב עם הפרקים בהם יש להשתמש ב- sniffer, ולחזור על האפשרויות השונות בהזדמנויות שונות בלמידה. 7. להסביר את הצורך בשימוש ב- Sniffer לשם למידת פרוטוקלי תקשורת וביצוע מחקרים. 8. להדגים את אופן העבודה עם Wireshark תוך שימוש ב- Filters Display ו- Filters Capture והצגת ההבדל בניהם. 9. להדגים את אופן ניתוח תקשורת של תעבורה ב-( Capturing Onlineאל (Real-Time מול ניתוח ב-.)Capture על קובץ )מעבר Offline 10. להציג את השימוש ב- Wireshak הן ב- GUI והן ב-( line tshark (command ולהסביר את היתרונות והחסרונות בכל שיטה. דרכי הערכה בחינה עיונית: 1. התלמיד יציין מהן שבע השכבות המופיעות במודל ה- OSI ויתאר את התפקידים של כלל השכבות. א. התלמיד יסביר את תהליך ה-.Encapsulation ב. התלמיד יסביר את הצורך ב- Overhead וכיצד הוא משפיע על תעבורת המידע. ג. התלמיד יקבל תסריט של פרוטוקול תקשורת ויצטרך לציין כיצד הוא בא לידי ביטוי בכל אחד ד. מהשכבות )למשל העברת מכתבים ברשת הדואר(. התלמיד יסביר את ההבדל בין Display Filter לבין.Capture Filter ה. התלמיד יתאר את ההבדל בין צפייה במידע באמצעות Sniffer אל מול קבלתו באפליקציה. ו. בחינה מעשית: 2. א. התלמיד יקבל Capture File ויבצע Filter על התעבורה ולשמור בקובץ חדש את תעבורת התקשורתשעונה על ה- Filter בלבד. התלמיד ישתמש ב- sniffer ב- Capturing Real-Time של המידע אותו הוא רואה ברשת מקומית ב. וינתח אותו בהתאם למודל חמש השכבות שנלמד. התלמיד יקבל Capture File ויחלץ את כלל כתובות ה- IP אשר קיימת בקובץ. ג.
פרק 4: שכבת האפליקציה להבין את תפקידי שכבת האפליקציה, להכיר פרוטוקולים נפוצים בשכבת האפליקציה. התלמיד יתאר את האופן בו מנתחים פרוטוקול תקשורת. 1. התלמיד יתאר את החשיבות של קריאת התיעוד של פרוטוקול )למשל.)RFC 2. התלמיד יתאר את החשיבות בהכרות עם "מכונת המצבים" של הפרוטוקול. 3. התלמיד יאבחן פרוטוקול בעזרת Sniffer ותקשורת אינטרקטיבית. 4. מושגים והכוונה HTTP (Hyper Text Transfer Protocol).1 DNS (Domain Name System.2 TLD (Top-Level Domains).3 Zone Transfer.4 SMTP (Simple Mail Transfer Protocol).5 5: פרק דרכי ההוראה להציג ולהסביר את כלל השדות ב- Header -ים של הפרוטוקולים HTTP ו- DNS. 1. להציג את ההבדל בין HTTP 1.0 לבין HTTP 1.1 מבחינת ניהול ה- Connections. 2. להציג את הפקודות )Methods( השונות הקיימות בפרוטוקול :HTTP 3. GET א. POST ב. HEAD ג. OPTIONS ד. PUT ה. DELETE ו. TRACE ז. להציג כל אחד מהפרוטוקולים הנלמדים בפרק זה בעזרת.Wireshark 4. 5. להציג את השימוש בפרוטוקולים השונים תוך שימוש בכלי Command Line ב- Windows telnet, ( )nslookup להדגים אבחון של פקודת HELLO ו- TO בפרוטוקול SMTP בעזרת Wireshark ותקשורת אינטרקטיבית. 6. להציג פתרון של תרגיל אבחון SMTP 7. דרכי הערכה בחינה עיונית: 1. התלמיד יסביר את מבנה פרוטוקול HTTP על פקודותיו השונות א. התלמיד יסביר את מבנה פרוטוקול DNS ב. בחינה מעשית: 2. התלמיד יקבל Capture File אשר כוללת פרוטוקול שאינו נלמד ויסביר את פעולתו תוך שימשו ב- א. Sniffer בלבד. התלמיד יכנס לאתר Web ויפרט את הבקשות אשר עוברות בין ה- Client ל- Server. ב. כלשהו יחלץ מהתשובה את כל הלינקים לאתר Web HTTP GET התלמיד ישלח בקשת ג. שמופיעים בתשובה שהתקבלה. התלמיד יקבל Capture File המכיל תעבורת תקשורת בפרוטוקול HTTP ויצטרך להבין ממה ד. נתונים שונים כגון: באיזה גירסאת HTTP עובד השרת. i. מה הגודל של האובייקט המועבר ל- Client..ii מה גירסאת הדפדפן של ה- Client..iii התלמיד ייאבחן את פרוטוקול SMTP בעזרת Wireshark ותקשורת אינטרקטיבית. ה. SC APY
לנתח ולייצר תעבורת רשת בעזרת חבילת scapy של.Python התלמיד ייבנה פאקטות בעזרת.scapy 1. התלמיד יינתח פאקטות מ- sniffer בעזרת.scapy 2. מושגים והכוונה פרוטוקולים: IP, TCP, ARP, Ether, DNS, ICMP.1 פקודות: lsc, ls, hexdump, rdpcap, send, sendp, sr, sr1, wireshark.2 דרכי ההוראה 1. יש להשתמש ב- Shell בצורה אינטרקטיבית ב- Python. 2. על ה- sniffer להיות פעיל לאורך כל העבודה עם,scapy על מנת לראות את הפאקטות שנשלחות ומתקבלות ע"י התלמידים. 3. פרק זה עובר כלמידה עצמית של התלמידים מתוך הספר. מומלץ לתת להם לבצע את הלמידה בכיתה. דרכי הערכה בחינה מעשית: 1. התלמיד יישלח פקטת.TCP/IP א. התלמיד יישלח פאקטות.HTTP ב. התלמיד יישלח שאילתות.DNS ג. התלמיד יציג Capture של הפקטות ששלח ב- Sniffer. ד.
פרק 6: שכבת התעבורה להבין את תפקידיה של שכבת התעבורה, ומיקומה במודל השכבות. כמו כן, הכרת המושג "פורט", והכרות עם הפרוטוקולים TCP ו- UDP. התלמיד יסביר את המונח פורטים. 1. התלמיד ימצא אילו פורטים פתוחים במחשב שלו. 2. התלמיד יסביר מתי עדיף להשתמש בפרוטוקול מבוסס קישור ומתי בפרוטוקול שאינו מבוסס קישור. 3. התלמיד יממש Three Way Handshake.4 התלמיד יציג ב- Sniffer את תעבורת הפרוטוקולים TCP ו- UDP. 5. מושגים והכוונה 1. פורט Netstat.2.3 פורטים מוכרים ports( )well known Overhead.4 5. פרוטוקול מבוסס קישור 6. פרוטוקול שאינו מבוסס קישור UDP.7 TCP.8 Checksum.9 10. סגמנט Sequence Number.11 Acknowledgement.12 Three Way Handshake.13 Initial Sequence Number.14 דרכי ההוראה 1. מומלץ לבצע הדגמה של netstat יחד עם התלמידים.יש לתת לתרגילים לבצע חלק מהתרגילים בטרם דנים עליהם בכיתה. דרכי הערכה בחינה עיונית: 1. התלמיד יסביר את המונח פורטים. א. יסביר מתי עדיף להשתמש בפרוטוקול מבוסס קישור ומתי בפרוטוקול שאינו מבוסס התלמיד ב. קישור. התלמיד יציין שדות ב- Header של.TCP ג. בחינה מעשית: 2. התלמיד יממש.Three Way Handshake א. התלמיד יממש תקשורת מעל Socket של.UDP ב.
פרק 7: שכבת הרשת להבין את תפקידיה של שכבת הרשת, ומיקומה במודל השכבות. הכרת הרכיב,Router והכרות עם הפרוטוקולים ו- DHCP. ICMP,IP התלמיד יסביר את המונח כתובת לוגית. 1. התלמיד יסביר את המבנה של כתובת IP תקינה. 2. התלמיד יסביר את המונח.Subnet Mask 3. התלמיד יממש סקריפט המחקה את ההתנהגות של.Ping 4. התלמיד יממש סקריפט המחקה את ההתנהגות של.Traceroute 5. התלמיד יסביר את הצורך בפרוטוקול.DHCP 6. התלמיד יסביר את ההודעות השונות בפרוטוקול.DHCP 7. מושגים והכוונה 1. ניתוב IP.2 ipconfig.3.4 כתובת IP 5. מזהה רשת 6. מזהה ישות Subnet Mask.7 Broadcast.8 Loopback.9 10. נתב 11. טבלאות ניתוב route.12 Default Gateway.13 ICMP.14 TTL.15 DHCP.16 MTU.17 18. פרגמנטציה 19. כתובות IP פרטיות NAT.20 IPv6.21 דרכי ההוראה יש לתת לתלמידים לקרוא את החלק על IP באופן עצמי לפני השיעור. 1. יש לבצע מספר דוגמאות על הלוח לנושא.Subnet Mask 2. יש לתת לכלים לעבוד עם Wireshark ו- Scapy בכיתה על מנת לתרגל את החומר בנושא ICMP ו- DHCP. 3. דרכי הערכה בחינה עיונית: 1. התלמיד יסביר את המונח כתובת לוגית. א. התלמיד יסביר את המבנה של כתובת IP תקינה. ב. התלמיד יסביר את המונח.Subnet Mask ג. בחינה מעשית: 2. התלמיד יממש סקריפט המחקה את ההתנהגות של.Traceroute א. התלמיד יממש סקריפט המחקה את ההתנהגות של.Ping ב.
פרק 8: הקו שכבת Hub להבין את תפקידיה של שכבת הקו, ומיקומה במודל השכבות. הפרוטוקולים Ethernet ו- ARP. הכרת הרכיבים ו- Switch, והכרות עם התלמיד יסביר את המונח כתובת פיזית. 1. התלמיד יסביר את המבנה של כתובת MAC תקינה. 2. התלמיד יסביר את המונח סגמנט. 3. התלמיד יסביר את ההבדלים בין Hub ו- Switch. 4. מושגים והכוונה Ethernet.1 כתובת MAC.2 מסגרת )Frame(.3 ARP.4 פורט 5. Hub.6 Switch.7 התנגשות 8. Multicast.9 Unicast.10 דרכי ההוראה 1. יש לאפשר לתלמידים לבצע תרגול במהלך הכיתה. 2. יש להציג פניה אל שרת אינטרנטי, ולהסביר באמצעות Wireshark על ההבדל בין הכתובות בשכבת הקו לבין הכתובות בשכבת הרשת. דרכי הערכה בחינה עיונית: 1. התלמיד יסביר את המונח כתובת פיזית. א. התלמיד יסביר את המבנה של כתובת MAC תקינה. ב. התלמיד יסביר את המונח סגמנט. ג. התלמיד יסביר את ההבדלים בין Hub ו- Switch. ד. בחינה מעשית: 2. התלמיד יממש סקריפט המוצא את כל הכתובות בשכבת הקו שתקשרו עם כרטיס הרשת שלו. א. התלמיד יממש סקריפט המעבד כתובות MAC ומציין האם הן תקינות. ב.
פרק 9: השכבה הפיזית להבין את תפקידיה של השכבה הפיזית, ומיקומה במודל השכבות. כמו כן, להכיר מושגים בסיסיים הקשורים לשכבה הפיזית, כגון אמפליטודה ותדר. התלמיד יסביר את ההבדל בין Hub ו- Switch. 1. התלמיד יסביר את תפקידי הנתב. 2. התלמיד יסביר את תפקידי המודם. 3. מושגים והכוונה ביט 1. תווך 2. קידוד 3. גל 4. אפנון 5. מודם 6. Duplex.7 סיב אופטי 8. דרכי ההוראה הפרק קצר מאוד ואינו כולל תרגול. 1. ניתן להעביר את הפרק כמטלת קריאה עצמית מתוך הספר. 2. דרכי הערכה 1. בחינה עיונית: א. התלמיד יסביר מהו תווך. ב. התלמיד יסביר מהו קידוד. ג. התלמיד יסביר כיצד גלים נושאים מידע באמצעות אורך הגל, תדירות הגל ואמפליטודה. ד. התלמיד יזהה, בהינתן תרשימי גלים, אילו מייצגים Amplitude Modulation ואילו מייצגים.Frequency Modulation
פרק 10: רכיבי הרשת להבין את רכיבי הרשת השונים בכל אחת מהשכבות. 1. התלמיד יסביר את ההבדל בין Hub ו- Switch. 2. התלמיד יסביר את תפקידי הנתב. מושגים והכוונה רכזת )HUB(.1 מתג )Switch(.2 נתב )Router(.3 דרכי ההוראה הפרק קצר מאוד ואינו כולל תרגול. 1. ניתן להעביר את הפרק כמטלת קריאה עצמית מתוך הספר. 2. דרכי הערכה בחינה עיונית: 1. התלמיד יסביר את ההבדל בין מתג )Switch( לבין רכזת.)Hub( א. התלמיד יתאר את אופן הטיפול של Router בהודעה המגיעה אליו. ב.
פרק 11: הכל איך מתחבר, עובד ואיך האינטרנט? להבין בצורה איטגרטיבית את תהליך הגלישה באינטרנט ברמת הפירוט המקסימלית בתוכנית הלימודים. 1. התלמיד יסביר את התהליך שמתרחש כאשר מתבצעת גלישה בדפדפן אל אתר אינטרנט. 2. התלמיד יסביר את השדות השונים הקשורים לכתובות בחבילות שעוברות בין המחשב שלו לבין הנתב הקרוב אליו. דרכי ההוראה 1. בתוכנית הלימודים יש התמקדות במושג אחד בכל פעם שכבת רשת, רכיבי רשת, מודל השכבות, כלים כמו Wireshark או.Scapy פרק זה מסכם את מה על ידי מתן דוגמה אמיתית מחיי היום-יום והבנה שלה, בהתסתמך על חומר שנלמד בכלל הפרקים הקודמים. 2. חשוב לשאול את התלמידים הרבה שאלות לאורך הפרק. הפרק מורכב משאלות שהתלמיד מצופה לשאול את עצמו. היות שהפרק אינו כולל חומר חדש, התלמידים אמורים להיות מסוגלים לענות על כל השאלות בכוחות עצמם. דרכי הערכה בחינה עיונית: 1. התלמיד יסביר מהו תווך. א. התלמיד יסביר מהו קידוד. ב. התלמיד יסביר כיצד גלים נושאים מידע באמצעות אורך הגל, תדירות הגל ואמפליטודה. ג.
: SOCKETS פרק 12: תכנות מתקדם ריבוי משתמשים להבין את הדרישות והאילוצים שבכתיבת שרת המטפל במספר לקוחות במקביל, ומימוש קוד מערכת שרת-לקוח כזו בפייתון. התלמיד יממש שרת מרובה משתתפים. 1. התלמיד יממש לקוח לשרת מרובה משתתפים, שקורא מידע מהשרת. 2. התלמיד יממש צ'אט מרובה משתתפים. 3. מושגים והכוונה.1 הפונקציה.select דרכי ההוראה 1. ביצוע תרגולים ראשונים בכיתה. 2. ביצוע תרגילים מתקדמים בבית..3 דרכי הערכה.1 תרגיל סיכום הפרק הוא תרגיל גדול, ועבורו קיים פתרון מוכן אשר יש להציג לתלמידים לאחר התקדמות בחומר. בחינה מעשית: א. התלמיד יממש צ'אט מרובה משתתפים.
)120 שעות( חלק ג' מערכות הפעלה ראשי פרקים פרקי הלימוד מבוא למערכות הפעלה ווירטואליזציה ניהול תהליכים במעה"פ זיכרון וירטואלי, פרוססים ות'רדים סנכרון ותקשורת בין תהליכים ניהול הגדרות Registry מערכות קבצים ומבני קבצים שירותי מערכת ההפעלה COM WinAPI, ניהול הרשאות ניתוח תוכנה ניתוח תוכנה מתקדם ניתוח קוד מבוא לעולם האנטיוירוסים סה"כ מספר השעות המוקצות מעשי עיוני 2 3 10 3 16 3 10 3 14 3 10 3 6 3 10 3 12 4 0 2 90 30
פרק 1: מבוא למערכות הפעלה ווירטואליזציה לחשוף את התלמיד לעולם מערכות ההפעלה מהי מערכת הפעלה, מה תפקידיה, סוגי מערכות הפעלה וחלקייה המרכזיים. כמו כן, תתבצע חזרה על מבנה המחשב ותהליך העלייה של המחשב. בנוסף, בפרק זה התלמידים יחשפו לעבודה עם מכונה וירטואלית. התלמיד ידע להסביר את המבנה הכללי של החומרה במחשב. 1. התלמיד יפרט ויסביר על תפקידי מערכת ההפעלה. 2. התלמיד יציג דוגמאות למערות הפעלה שונות ויסביר מדוע קיימים סוגים שונים. 3. התלמיד יפרט חלקים מרכזיים במערכת ההפעלה ויתאר את תהליך העלייה של המחשב. 4. התלמיד ידע להרים מערכת הפעלה וירטואלית ולעבוד איתה. 5. מושגים והכוונה מבנה מחשב 1. לוח אם א. CMOS ב. DRAM ג. IDE ד. NorthBridge / SouthBridge ה. דיסק קשיח / כוננים חיצוניים ו. מבנה מערכת ההפעלה 2. Kernel א. User ב. Kernel Mode / User Mode ג. UI ד. Services ה. סוגי מערכות הפעלה 3. Single/Multi Task א. Real-Time ב. Embedded ג. מערכות הפעלה מבוזרות ד. תפקידי מערכת ההפעלה 4. ניהול מערכת קבצים א. ניהול תהליכים ות'רדים ב. ניהול זיכרון וזיכרון וירטואלי ג. תקשורת עם חומרה ד. ניהול משתמשים והרשאות ה. דרכי הוראה הינה לתת סקירה כללית ולא להעמיק בכל אחד מהסעיפים, בחלקם תהיה העמקה בשלבים 1. מאוחרים יותר. הגדרת המושגים הבסיסיים חומרה, תוכנה, מערכת הפעלה. 2. סקירת תפקידיה של מערכת ההפעלה והסבר הרציונל מאחוריהם. ניתן בשלב זה לפתח דיון עם הכיתה 3. בנוגע למה מערכת ההפעלה צריכה לעשות. חזרה על מבנה המחשב לוח האם, רכיבי הזיכרון השונים. 4. הצגת החלקים החשובים במערכת ההפעלה. 5. יש להדגיש את חשיבות ניהול משאבים, ובהקשר זה, את חשיבות ניהול התהליכים, זיכרון והממשקים. 6. יש לתאר את ההיסטוריה של התפתחות מערכות ההפעלה המרכזיות יוניקס לינוקס, מק וחלונות. 7. יש להסביר למה צריך מערכת הפעלה ולמה ישנן סוגים שונים. 8.
יש לציין את הצרכים השונים שיש למערכות הפעלה )יציבות / ממשק עבודה נוח / עבודה על מכשיר בעל זיכרון / מעבד חלש יותר כמו טלפונים סלולאריים(. ניתן לנתח עם התלמידים פלטפורמות שונות )כמו מחשב שולחני, טלפון סלולארי( ולעמוד על הדרישות ממערכת ההפעלה..9 דרכי הערכה בחינה עיונית: 1. התלמיד יפרט את מבנה המחשב. א. התלמיד יפרט ויסביר את תפקידי מערכת ההפעלה. ב. התלמיד יפרט ויסביר את חלקיה המרכזיים של מערכת ההפעלה. ג. התלמיד יפרט את הדרישות למערכת ההפעלה בהתאם לחומרה עליה היא רצה )לדוגמא ד. פלאפון(. בחינה מעשית: 2. התלמיד ירים מערכת הפעלה וירטואלית ויחבר אותה לרשת. א. -
פרק 2: ניהול תהליכים במערכת ההפעלה זיכרון וירטואלי, פרוססים ות 'רדים להבין את מושג התהליך במערכת ההפעלה והמשאבים הקשורים אליו. היכרות עם שורת הפקודה ב.windows התלמיד יסביר מהו תהליך. 1. התלמיד יסביר למה נדרש תהליך. 2. התלמיד יסביר מהו זיכרון וירטואלי. 3. התלמיד יסביר מהו.thread 4. התלמיד יתנסה בעבודה עם ה-.Command Line 5. מושגים והכוונה תהליך )Process(.1 Thread.2 Virtual Memory.3 Job, Fiber.4 Command Line.5 Redirection א. Pipes ב. Environment Variables )רלוונטי באופן כללי לכל תהליך( ג. דרכי ההוראה בפרק זה מומלץ ללמד תוך כדי הדגמות ומשימות מודרכות לתלמידים. ההדגמות צריכות להיות באווירה 1. שבאה לחקור את הנושא שואלים "מה נראה לכם שזה עושה?", נותנים לדיון קטן להתפתח ואז מסבירים מה זה באמת עושה. יש להסביר את הצורך בתהליכים. 2. יש להגדיר את המושג תהליך, תוך כדי שימוש ב Task Manager ב windows להדגמה 3. תהליך יוצר א. מרחב זיכרון פרטי ווירטואלי ב. ספריות קוד ג. משאבים פתוחים )כמו: קבצים והתקני חומרה( ד. אוסף Thread םי- ה. התלמיד יעבור על הנתונים השונים של התהליכים באמצעות Process Explorer ויחקור את משמעותם. 4. יש להגדיר את המושג :Thread 5. קוד שרץ בזיכרון )אוגרים ומחסנית משלו( א. זיכרון ומשאבים משותפים עם שאר ה- Thread -ים ב- Process ב. יש לכתוב תכנית בפייתון שמקבלת קלט ומבצעת חישוב בת'רד נפרד. אפשר להשתמש ב Queue על 6. מנת לסנכרן בין התהליכים. יש להסביר על ה-,Command Line והחלוקה בין פקודות לתהליכים. 7. יש לכתוב כתרגיל מסכם תוכנה מרובת תהליכים )ולמשל - מנצלת מספר ליבות של המעבד(. התוכנה 8. תשלב ותיישם את כל התכנים שנלמדו במסגרת נושא תהליכים. דרכי הערכה בחינה עיונית: 1. התלמיד יסביר מה הבדל בין תהליך ל- thread. א. התלמיד יסביר את משמעות הזיכרון הווירטואלי. ב. בחינה מעשית: 2. התלמיד ינתח תהליך, בעזרת.process explorer א. התלמיד יכתוב תוכנה מרובת תהליכים. ב. התלמיד יכתוב תוכנה המדמה Shell בסגנון של.Command Line ג.
פרק 3: סנכרון ותקשורת בין תהליכים להבין כיצד מתבצעים תקשורת וסנכרון בין התהליכים השונים. התלמיד יסביר מדוע נדרש סנכרון בין תהליכים בדגש על גישה למשאבים משותפים. התלמיד יסביר על כלי הסנכרון בהם ניתן להשתמש. התלמיד יסביר על הדרכים בהן ניתן לייצר תקשורת בין תהליכים. מושגים והכוונה שיטות סנכרון 1. Event א. Mutex ב. Semaphore ג. Spin Lock ד. בעיות סנכרון 2. Deadlock א. Starvation ב. Data Race ג. IPC תקשורת בין תהליכים 3. Socket א. Shared Memory ב. Pipe ג. File ד. דרכי ההוראה יש לתאר לתמידים סיטואציה בה נדרשת גישה מרובה למשאב בודד, ולהסביר את הבעייתיות שבכך. 1. ניתן להציג לתלמידים את בעיית "בעיית הפילוסופים הסועדים" ככלי המחשה א. יש להסביר על הכלים המשמשים לסנכרון בין תהליכים )כדאי להדגיש שזהו שרות שמערכת ההפעלה 2. מספקת(. התלמיד יתנסה בכתיבת תוכנית מרובת תהליכים שיש בה צורך בסנכרון בין התהליכים. 3. יש להסביר על הבעיות השונות שיכולות להיווצר בהקשרי סנכרון. 4. יש להסביר על הצורך בתקשורת רחבה בין תהליכים ולתאר מספר דרכים לביצוע תקשורות זו 5. דרכי הערכה בחינה עיונית: 1. התלמיד יתאר את שיטות הסינכרון השונות. א. התלמיד יסביר בעיות סנכרון נפוצות. ב. התלמיד יסביר כיצד ניתן לממש.IPC ג. התלמיד ידגים את מגבלות הזיכרון הוירטואלי. ד. בחינה מעשית: 2. התלמיד יכתוב תוכנית מרובת תהליכים הניגשת למשאב משותף וצריכה להגביל את מספר א. הגישות בו זמנית לאותו משאג. התלמיד יכתוב תוכנית מרובת תהליכים אשר מבצעת חישוב הרץ על כלל הליבות של המחשב ב. כאשר התהליכים השונים צריכים לתקשר ביניהם,
REGISTRY פרק 4: ניהול הגדרות להבין את תהליך ניהול ההגדרות שנעשה במערכת ההפעלה, עם דגש על.windows התלמיד יסביר את שיטת ניהול ההגדרות במערכת ההפעלה.windows 1. התלמיד יתאר את המבנה הלוגי של הרג'יסטרי. 2. התלמיד יתאר מספר דרכים לשינוי ערכי רג'יסטרי. 3. מושגים והכוונה 1. מפתחות ראשיים א. HKLM, HKU, HKCU, HKCC, HKCR GUID.2 דרכי ההוראה יש להסביר את הצורך במערכת ניהול הגדרות למערכת ההפעלה. 1. יש לתאר את ההבדל בשיטת ניהול ההגדרות בין מערכת ההפעלה windows למערכת ההפעלה.Linux 2. יש להדגיש כי כל הרג'יסטרי יושב בסופו של דבר בתוך קבצים עם פורמט מסויים. א. יש להציג את המבנה הלוגי של הרג'יסטרי. 3. היררכיית תיקיות. א. סוגי ערכים שונים. ב. שימוש במזהי.GUID ג. מומלץ לעשות הצגה זו יחד עם regedit ומעבר על ערכים נבחרים יחד. ד. יש להציג דרכי עריכה צפייה ועריכה של ערכי ר'גיסטרי 4. Regedit א. Reg ב. החבילה _winreg בפייתון ג. דרכי הערכה בחינה עיונית: 1. התלמיד יסביר את הצורך במנגנון ניהול הרשאות. א. התלמיד יתאר את מבנה והחלוקה ההיררכית של הרג'יסטרי. ב. בחינה מעשית: 2. התלמיד יכתוב תוכנית הניגשת ל- registry, ומשנה ערכים מסויימים לפי בחירת המשתמש. א.
פרק 5: מערכות קבצים ומבני קבצים להבין את שיטת איחסון המידע במחשב היכרות עם מערכת הקבצים ומבני הקבצים בתוכה. התלמיד יסביר את הצורך במערכת קבצים. 1. התלמיד יתאר מערכות קבצים שונות. 2. התלמיד יתאר מבני קבצים שונים. 3. מושגים והכוונה Little / Big Endian.1 C-Strimg, Pascal String, Unicode String.2 Metadata.3 סוגי מערכות קבצים 4. FAT12 / 16 / 32 א. NTFS ב. EXT2 / 3 / 4 ג. Sector, Cluster.5 I/O, IRP.6 RAID.7 MBR, GPT.8 Magic Signature.9 Checksum.10 דרכי ההוראה יש להציג מבנה נתונים פשוטים להתחלה לדוגמא דרך הייצוג למחרוזות כרצף בתים. 1. יש להזכיר את החבילה struct בפייתון שתהיה שימושית כאן. א. יש לעבור על הדרישות ממערכת קבצים במחשב. 2. יש לסקור סוגי מערכות קבצים שונות, הבדלים בניהן והייעוד של כל אחת. 3. יש לתאר בצורה קצרה את מבנה הדיסק הפיזי - החומרה. 4. הגדרת המושגים Sector ו-.Cluster א. הצגת הנתונים על הדיסק במחשב באמצעות fsutil או.ntfsinfo ב. הסבר קצר על ההבדל בין SSD ל.HDD ג. יש להציג את תהליך הקריאה מהדיסק דרך מודל השכבות של ה-.Kernel 5. יש להציג את הקונספט של.RAID 6. הדגמת יצירה של דיסק וירטואלי במחשב. 7. הדגמת מבנה מערכת קבצים על.FAT 8. הצגת.Root Cluster,VBR,MBR א. הצגת הקונספט של.Magic Signature ב. שימוש ב Disc Editor להצגת חלק זה. ג. יש להציג את מבנה הקבצים של הר'גיסטרי. 9. הצגת הרג'יסטרי כמערכת קבצים. א. 10. יש להציג את תצורות שמירת המידע בקבצים - טקסטואלי / בינארי. הצגת הרעיון של.Checksum א. 11. הצגת מבנה קובץ.PE דרכי הערכה בחינה עיונית: 1. התלמיד יפרט את הדרישות ממערכת קבצים. א. התלמיד יסביר את ההבדלים בין גרסאות ה FAT השונות. ב. התלמיד יתאר את מבנה מערכת הקבצים מסוג.FAT ג.
התלמיד יסביר על הדרכים לאחסן מידע בקובץ ועל מבנה קובץ ה.PE ד. בחינה מעשית: התלמיד יערוך שם קובץ באמצעות עריכה ב- RAW של המידע על הדיסק. א. התלמיד ימחק קובץ ויבטל את המחיקה )"ישחזר את הקובץ"( באמצעות עריכה של המידע על ב. הדיסק. התלמיד יאתר קבצים על הדיסק לפי Magic -ים בתחילת הקובץ. ג..2
פרק 6: שירותי מערכת ההפעלה הכרת Windows API ו-,COM ושימוש ב MSDN להתמצאות. התלמיד יכיר את.WinAPI 1. התלמיד יכיר את מנגנון ה.COM 2. התלמיד יכיר את ה- MSDN וידע להתמצא בו. 3. התלמיד ייפתח בשפת python עם WinAPI ו-.COM 4. מושגים והכוונה WinAPI.1 Handle א. ANSI / Unicode ב. Extended Functions ג. GetLastError ד. COM.2 MSDN.3 דרכי ההוראה יש להסביר את הצורך ב WinAPI )לחבר לשיעורים קודמים(. 1. יש להציג את ה- MSDN בתור reference ל- API.Win32 2. יש להסביר את מבנה הפונקציות ב :Win32 API 3. יש להסביר על מושג ה-.Handle א. יש להסביר על ההפרדה בין Unicode ל-.ANSI ב. יש להציג קריאה לשירותי מערכת ההפעלה בעזרת :Win32 API 4. פעולות על קבצים א. רשת ב. מצב המחשב ג. GUI ד. יש להציג שימוש ב- API Win32 בעזרת.python למשל: 5. קריאה וכתיבה ל-.Clipboard א. קבלת מידע על חלונות פתוחים. ב. יש להציג שימוש ב,COM למשל חיבור ל Word וכתיבת טקסט לתוכו. 6. דרכי הערכה בחינה עיונית: 1. התלמיד יסביר מבנה הפונקציות של.Win32API א. בחינה מעשית: 2. התלמיד יימצא את התיעוד של פונקציות בעזרת.MSDN א. התלמיד יכתוב תוכנית העושה שימוש ב- API Win32 ו/או.COM ב.
פרק 7: ניהול הרשאות להבין את תהליך ניהול ההרשאות שנעשה במערכת ההפעלה. 1. התלמיד יסביר מהם משאבים פרטיים ומשאבים משותפים. מושגים והכוונה Object manager.1 kernel mode.2 תהליך וידוא ההרשאות 3. הרשאות משתמש, תהליך וקובץ 4. ירושת הרשאות 5. security token.6 דרכי ההוראה בהצגת מערכת ההרשאות יש להתעקב על הצורך והחשיבות של הרשאות, כן בין המשתמשים השונים 1. )הגנה על מידע רגיש(, וכן בין תהליכים במחשב )הגנה מפני תוכנות עוינות( יש להסביר בפירוט כיצד הרשאות ממומשות ברמת מערכת ההפעלה: 2. הסיבה לביצוע בדיקת ההרשאות ב- mode kernel 3. הרשאות של תהליך נגזרים מהרשאות של המשתמש 4. בדיקת הרשאות של תהליך מול ההרשאות של האובייקט 5. יש להציג לתלמידים את הסכנות במשאבים הניתנים לירושה. 6. דרכי הערכה בחינה עיונית: 3. התלמיד יסביר את המושגים המופיעים בפרק. א. בחינה מעשית: 4. התלמיד ייעשה שימוש במערכת ההרשאות. א. התלמיד יכתוב תוכנה המציגה את ההרשאות של כל התהליכים במחשב. ב.
פרק 8: ניתוח ומחקר תוכנה ב- WINDOWS הבנה וניתוח תהליכים שקורים "מאחרי הקלעים" ב- Windows, פיתוח מיומנויות חקר תוכנה. ניתוח תוכנה בעזרת הכלים: procmon, tcpview, wireshark, procexp.1 ניתוח ואפיון סוגי קבצים. 2. ניטור קריאות WinAPI של תוכנה. 3. ביצוע Hooking על פונקציות. 4. מושגים והכוונה מבנה קובץ 1. ApiMonitor.2 Hook.3 דרכי הוראה יש להציג את התוכנות procmon ו-.ApiMonitor 1. יש להציג סוגי קבצים ואת המבנה שלהם, תוך שימוש ב.Hex Editor 2. יש להציג כיצד לנתר פעולות קבצים. 3. יש להסביר על hooking ואופן פעולתו. 4. שימוש בחבילה winappdbg בפייתון. א. דרכי הערכה בחינה עיונית: 1. התלמיד יסביר את המבנה של מספר קבצים נפוצים. א. התלמיד יסביר את המושג.hooking ב. בחינה מעשית: 2. התלמיד ייבצע.hooking א. התלמיד ינתח ויאפיין מבנה קובץ לא מוכר. ב. התלמיד יינתח תוכנה עם כל הכלים שלמד. ג.
פרק 9: ניתוח קוד ומחקר ב- WINDOWS הבנה וניתוח דרך הפעולה של תוכנה על ידי מחקר הקוד שלה. מחקר קוד תוכנה באופן סטטי באמצעות.IDA 1. ניתוח פעולת תוכנה באופן דינאמי. 2. מושגים והכוונה Reverse Engineering.1 Debugger.2 דרכי הוראה יש להסביר את ההבדל בין ניתוח סטטי לדינאמי. 1. יש להציג את התוכנה,IDA והפונקציונליות שלה. 2. יש להציג כלי דיבוג דינאמי ודרך העבודה איתו. 3. יש להתוות קווי מנחים לביצוע מחקר קוד. 4. יש להדגים ניתוח קוד ב IDA על פייתון עצמו. 5. דרכי הערכה 1. בחינה מעשית: א. התלמיד ינתח תוכנות לא מוכרת ויבין את דרך הפעולה שלהן.
120( חלק ד' גמר עבודת שעות( מטרות כלליות עבודת הגמר היא גולת הכותרת של לימוד החלופה. במסגרת הפרויקט התלמיד יציג ידע תיאורטי לצד יכולת מימוש מעשית שיבואו לידי ביטוי בתכנון וכתיבת קוד המשלב ניתוח מידע ואלגוריתמים מורכבים, עבודת רשת ושימוש בידע שנצבר בפרק מערכות הפעלה. בעבודת הגמר יינתן דגש על עבודה מסודרת, פיתוח נכון )שמירה על קונבנציות, תיעוד( ותכנון מחלקות על פי עקרונות OOP שנלמדו. הנחיות הפרויקט ייכתב בשלבים: 1. בחירת הנושא הפרויקט ותיאור כללי. 2. כתיבת הצעת פרויקט ראשונית הכוללת: תיאור המערכת, הצרכים שהיא עונה עליהם ותרחישי שימוש כללים. 3. תכנון מבנה המערכת מחלקות ומבני נתונים, עיצוב ממשק המערכת, בחירת כלי פיתוח, 4. התחלת הפיתוח. 5. עדכון תיק הפרויקט בהתאם לשינויים שנעשו במהלך הפיתוח. המורה צריך להקפיד על עבודה בשלבים לעודד חשיבה יצירתית ופתרונות "מחוץ לקופסא". הערה המורה יקפיד שהיקף הפרויקט יהיה סביר, לא גדול מדי על יכולותיו של התלמיד ולא קטן ופשוט מדי. תכנים במסגרת הכנה לפרויקט על מנת להכין את התמידים לעבודה מסודרת על הפרויקט יש לדון על הנושאים הבאים: - פיתוח מסמך אפיון ומסמך עיצוב לפרויקט. - ניהול גרסאות קוד Control(.)Source - פיתוח נכון שימוש בקבועים, שמות משמעותיים, סדר ותיעוד, חלוקה לקבצים ומחלקות. מומלץ להגדיר לוח זמנים לתלמידים המכיל את שלבי הפרויקט השונים. קריטריונים להערכה קריטריון פירוט ניקוד 30 חלק א' - תיק העבודה 5 תיק העבודה הכתובה איכות הצגת המחקר, התכנון והמימוש בכתב נושא העבודה, הבעיות והאתגרים, הפתרונות וההשלכות של העבודה עומדים בקריטריונים של אתיקה )בהתאם לתכנית הלימודים(, וההתייחסות לאתיקה מתועדת בכתב 25 מחקר מידת הקושי והמורכבות של הבעיה סקירת ספרות של עולם הבעיה ושל עולמות הפתרון זיהוי והגדרת האתגרים המדעיים/הטכנולוגיים בחירת פתרון הולם לבעיה מתוך אלטרנטיבות פיתוח הוכחת היתכנות Concept( )Proof of
שילוב תחומי דעת שונים ממדעי המחשב והנדסת תוכנה )מעבר לרשתות מחשבים ומערכות הפעלה( 55 חלק ב' - תכנות 15 תכנון בחירת כלים וטכנולוגיות מתאימים לבעיה ולפתרון מבנה מערכת מתאים לבעיה ולפתרון 40 מימוש נכונות הקוד )מממש את הנדרש, נקי מבאגים, בדיקות( עיצוב הקוד )פשטות, בהירות, יעילות, אלגנטיות, לוגית, מבנה וארגון( סגנון הקוד )קריאות, תיעוד, הזחה, שמות מתאימים( יציבות הקוד )מקרי קצה, עומסים( ממשק משתמש 15 10 חלק ג' - הצגה חלק ד' - ציון לשבח תיאור הבעיה תיאור הפתרון הדגמת המערכת תיאור תהליך המחקר, התכנון והמימוש של המערכת תיאור אתגר מדעי/טכנולוגי משמעותי + שאלות עומק של המעריך מעבר משותף על קטע קוד מהותי )בהיקף של פונקציה/מחלקה( + שאלות עומק של המעריך בזמן ההרצה על התכנית להיות במצב עבודה. אם לא, ציון העבודה יהיה 0. עבודה ייחודית בהיבטים של: היקף נרחב אלגוריתמים, כלים או טכנולוגיות מתקדמות רלוונטיות הפתרון לבעיות נוספות מקוריות יצירתיות השלכות או שימושים בעלי ערך לפרט או לחברה 110 סה"כ תלמיד חייב להכיר לעומקה את העבודה שהגיש, אחרת ציונו יהיה נכשל. מקסימילי אפשרי הינו 100. ציון