
הטקסט המלא של הדקות הראשונות בהרצאה «סריקה אגרסיבית - גילוי גרסת תוכנה שמאחורי פורט פתוח» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
שלום לכולם, היום נדבר על דבר מאוד מאוד חשוב איך לזהות איזה גרסת שרת עומדת מאחורי הפורט כדי שנדע בדיוק איזה חולשה יש לאותו שרת באותה גרסה אבל לפני שנתחיל לדבר על הגרסאות האלו אני רוצה להראות לכם איך לזרז את כל הבדיקות כי לוקח לו הרבה הרבה זמן לעשות בדיקה ולגלות
את הגרסה של השרת אז יש אופציה של טיים-אאוט, של טיימינג ואני יכול להגיד לו שיעשה את זה יותר זריז ולא יחכה 10 שניות אם הוא לא מקבל תשובה או מקבל תשובה לא טובה אלא רק שנייה אחת.
זאת אומרת להיות יותר זריז כאשר ברירת מחדל זה T3 זה הנורמל ואני רוצה שיהיה לו בדיקה יותר זריזה שיהיה לו טיימאוט יותר קצר אתם רואים פה טיימאוט יותר נמוך זמן המתנה בין ניסיון לניסיון זה נקרא בדיקה יותר אגרסיבית.
ההבדל היחיד בין אגרסיבי לנורמלי זה בעצם זמני ההמתנה האלו של טיים-אאוט. זה אומר כמה זמן לוקח לו להתייאש בהמתנה כשלא עונים לו, או עיכוב, דיליי, בין הסריקות של TCP, בין הפאקטים של TCP. אז שיעשה כזה דיליי קטן.
למה? כי הרשת שלי פיזית היא טובה, זה לא רשת שהיא לא טובה. הרשתות היום מצוינות מבחינה פיזית, אז אפשר לזרוק כמות גדולה של בדיקות במקביל ולא להמתין הרבה זמן.
בואו נראה דוגמא, נעשה סריקה פשוטה של איזה פורטים פתוחים ב-IP מסוים, שימו לב זה IP מרוחק כי הוא נמצא ברשת אחת ויש NAT, הכרטיס רשת מחובר לנאט ואני סורק מחשב פיזי, אז מבחינתו זה רשת חיצונית ואני רואה פה דבר כזה, קודם כל אני רואה שהוא סרק כברירת מחדל
1000 פורטים ו-978 הם פילטר וליד כל פורט הוא לא יודע לקבוע איזה גרסה זאת הוא משער ש-21 זה FTP אבל הוא לא באמת יודע והוא לא יודע איזה גרסה זאת אז הוא בודק 1000 פורטים ונותן לי השערה מי נמצא מאחורי הפורט בלי לבדוק באמת מי נמצא שם לעומק 978 סגורים וכל השאר עד 1000 פתוחים על כתובת IP אחת שנתתי לו לבדוק אז קודם כל
איזה פורטים הוא בודק אז יש לנו פה שבע קבצים שה-NMAP משתמש בהם להגדרות שלו, ואחד מתוך שבעת הקבצים האלו זה NMAP Services.
אז אם נעשה cut ל-NMAP Services אנחנו נראה כל סרוויס, נעשה פה more, נראה פה כל סרוויס, ומה הסיכוי, מה ההסתברות שהוא נמצא באינטרנט.
אז לדוגמה, ה-SMTP ב-TCP יש לו הסתברות של 13% מהשרתים באינטרנט שהם מריצים את ה-SMTP. הם אוספים את הסטטיסטיקה הזאת ואני אומר לו איזה פורטים לבדוק לפי הסטטיסטיקה.
אז הוא לוקח את האלף הכי פופולריים, כמה הוא נפוץ השירות הזה. אז SMTP נפוץ, אז הוא יבדוק אותו ו-Telnet גם נפוץ, גם אותו הוא יבדוק. אתם רואים? אבל Telnet ב-UDP פחות נפוץ.
אז אנחנו יכולים פה לראות את השירותים שלפי כמה הם נפוצים. לדוגמה, שימו לב, TCP בפורט 80 מאוד מאוד נפוץ, 0.48 זה הסיכוי שזה פורט הזה הוא פעיל הם אוספים את הסטטיסטיקה אז אני גם יכול לציין לו כזה דבר תבדוק לי לא 1000 פורטים אלא רק 20 פורטים הכי פופולריים זאת אומרת אני יכול להכניס לו פה בפקודה לבדוק לא את 1000 פורטים אלא
לבדוק רק 20 פורטים הכי נפוצים אז תדעו שזה גם אפשרי ואז הוא בודק אתם רואים הוא בדק לי 20 פורטים ונתן לי תשובה אתם יכולים גם לראות איזה פורטים תסתכלו שהדוח שלו לגבי האופן הרבה יותר נמוך.
תראו כמה הוא גילה, הוא גילה רק 1, 2, 3, 4, 5, 5 אופן. אני יכול לעשות גם גרפ על מילה אופן, ואז אתם רואים שהוא גילה רק 1, 2, 3, 4, 5, 6, 7 אופן.
לעומת זאת, כשעשינו פה למעלה 1000, גילינו שיש לא 7 אלא הרבה יותר. אז השאלה זה כמה פורטים אני רוצה לסרוק. הברירת מחדל זה 1000 פורטים, אז ה-1000 הזה לוקח לו יותר זמן.
עדיין כל הסריקה הזאת, אתם רואים, זה היה יותר משבע, כן? אין לי כוח לספור את זה. אני יכול גם להריץ ספירה אוטומטית, אבל עזבו עכשיו.
אנחנו שוחקים פורטים לפי הפופולריטי שלהם, אבל כל זה, כל זה לא באמת עוזר לי. למה? כי אני רואה פורטים, אני לא יודע איזה גרסה עומדת מאחורי HTTPS הזה, מאחורי HTTP הזה, מאחורי FTP הזה.
אולי יש שם חולשות, ואני לא יודע. אני רוצה לקבל גרסה של תוכנה, וגם זה אפשרי. איך זה אפשרי, איך עושים את זה, על ידי אופציה מאוד מאוד חשובה ומיוחדת שנקראת SV. אבל לפני כן לא הראתי לכם את ההבדלים במהירות.
התחלנו מההבדלים של המהירות ושכחתי להראות לכם את זה. שימו לב, צריקה רגילה, כמה זמן היא תיקח לי? צריקה רגילה לקחה לי 8 שניות, נכון? בואו נריץ אותה פעמיים רק לוודא שזה באמת 8 שניות.
הנה, עכשיו זה 4 שניות, אתם רואים? כמה שזה קופץ, קודם כל אין עקביות, כי פעם השרת יותר עמוס, פעם השרת פחות עמוס, אז אני עושה את הבדיקה הזאת כמה פעמים, וכל פעם אני רואה שזה 4 שניות.
אם אני אעשה פה מינוס T4, זה אמור להיות יותר זריז. בואו נראה אם זה יותר זריז. כן, זה טיפה יותר זריז, זה לא באמת עזר, אבל כשיש לנו הרבה כתובות IP זה כן היה עוזר.
אז אני רואה פה שב-T4 הוא מחזיר לי את זה תוך 4 שניות, הנה, תוך 8 שניות פתאום הוא מחזיר. אז תדעו שה-Timeout T4 הזה, אתם תפגשו אותו הרבה באינטרנט.
למה? כי היום רשתות איכותיות ואפשר לעשות T4. שיהיה לו טיימ-אאוט יותר קצר, שישלח יותר בקשות במקביל ולא ימתין הרבה זמן. למה? למה הוא ממתין הרבה זמן? כי הוא חושב שאולי קו אינטרנט עצמו לא עובד טוב, אז הוא ממתין הרבה זמן.
אני אומר לו, אל תמתין הרבה זמן, תתייאש אחרי לא שנייה, אלא חצי שנייה. שורה תחתונה, זה מזרז את הסיפור הזה של הסריקה, ה-T4 הזה.
אני גם יכול להגיד לו בדיוק איזה פורט אני רוצה לסרוק. זאת אומרת, אני יכול גם להגיד לו טווח כתובות IP וגם איזה פורטים, שלא יסרוק לי אלף פורטים, אלא יסרוק רק שני פורטים מסוימים.
זה ברור לכם, נכון? זה לא צריך לציין. טוב, איך סורקים את הגרסה הנכונה? בשביל זה התכנסנו פה. אז יש לנו פה אופציה שנקראת sv. אתם רואים פה את ה-sv הזה שהוספתי?
ה-sv הזה שהוספתי אמר לי שה-ftp שלך, שימו לב, פה ה-version, עמודה של version התווספה, שלפני כן היא לא הייתה, והיא אומרת, תקשיב, ה-FTP שלך זה פייל זילה, זאת חברת פייל זילה, ה-FTP שלה.
ה-HTTP זה לא סתם HTTP, זה Microsoft IS גרסה 10. עכשיו, זה מאוד מאוד חשוב לי, למה? כי אני מחפש חולשות לפייל זילה. אני לא סתם מחפש חולשות ל-FTP, אלא לחברה מסוימת שעשתה את ה-FTP שנקרא פייל זילה.
אם אני מחפש לשרת ווב לפרוץ לתחנה הזאת, אני אחפש IS גרסה 10. איזה חורי אבטחה יש? אז נורא נורא חשוב לי לדעת איזה גרסה יש כדי לפרוץ, או ה-IS10 או FTP של חברת FileD, לאו דווקא הקוד שלה, איזה חולשות יש.
אז אופציה sv מראה לי את העמודה של ורז'ן. אני יכול גם לעשות אופציה שנקראת מינוס a, שמינוס a כוללת את הוורז'ן הזה. היא גם כוללת עוד דברים, היא כוללת OS Detection והפעלה של סקריפטים דיפולטיים, סקריפטים ברירת מחדל.
זאת אומרת כל סקריפט ב-NSE הוא מקודלק לקטגוריה מסוימת ויש סקריפטים שהם בקבוצת ברירת מחדל ואני יכול גם אותם להפעיל, זאת אומרת שאני עושה סריקה גם של ורז'ן, כמו שראינו לפני כן, גם של סקריפטים על אותם פורטים אני מריץ וגם OS Detection מנסה לזהות איזה גרסה של מערכת ההפעלה וגם מנסה להעלות כמה ראוטרים יש לי בדרך לשם.
בואו נראה את כל זה. קודם כל אני מריץ פקודה ScriptDefault ואני רואה פה שסקריפט שנקרא בשם כזה וכזה הוא בקבוצה דיפולט בקטגוריה שנקראת דיפולט ברירת מחדל שימו לב כל סקריפט משוייך לקטגוריה כלשהי יש לי פה את ההסבר על הסקריפט הזה מי שרוצה לקרוא סקריפט אני מזכיר לכם זה בדיקת אקסטרה על הפורט חוץ
מהבדיקות הרגילות האקסטרה שאפשר להוסיף אז יש לי פה הרבה סקריפטים שהם בקבוצה דיפולט גם אותם בודקים אז מינוס a אגרסיב סקן גם מזהה לי את הגרסה של מערכת ההפעלה גם מזהה לי את הגרסה של כל פורט.
גם מפעיל לי סקריפטים על אותם פורטים שהם סקריפטים בקבוצת דיפולט, שזה כמו תוספת לזיהוי גרסה. הוא גם מנסה לבדוק ורנביליטי, חורי אבטחה.
זאת אומרת, הוורז'ן מזהה איזה גרסה זאת. סקריפט מנסה לזהות לא רק איזה גרסה זאת, אלא גם האם יש חור אבטחה. ו-TraceRoute מזהה לי כמה נתבים יש בדרך, כמה ראוטרים אני צריך לעבור בדרך, וכמה זמן דיליי על כל ראוטר בוא נפעיל את האופציה הזאת ונראה אז אני הפעלתי לו t4 מינוס a, t4 כדי שזה ינסה להיות זריז לא יודע כמה
זה באמת יעזור לי ומינוס a כדי שיעשה לי גם וירג'ן דטקשן ייזהה גרסאות גם ייזהה חולשות אבטחה אם יש גם ייזהה כמות הראוטרים וגם ינסה לזהות על איזה ווינדוס מדובר או על איזה מערכת הפעלה מדובר עכשיו הדבר הזה לוקח זמן אם אני רוצה לזרז את זה אני יכול להגביל אותו פה ל-20 פורטים בשביל לא לחכות הרבה זמן ואת הפלט אני יכול גם
לפלוט לקובץ Output Grap בצורת Grap, לא בצורת XML, אפשר גם לפלוט XMLית, ואז אני פולט את זה לקובץ מסוים, ואחרי שאני פולט את זה לקובץ מסוים, אני יכול לנתח את הקובץ הזה.
אז ה-Top Ports הזה יזרז את העניינים, וה-Grap הזה יכניס את זה, את התוצאה הזו. טוב, בואו נמתין. דרך אגב, בזמן שאנחנו ממתינים, אם אני אלחץ Enter, אני יכול לראות שהוא עשה כבר 96.85% בוא נעשה עוד פעם enter 99% הנה הוא עומד לסיים את
זה אז אנחנו ממש רואים