« Home | עדכון רשימת התפוצה » | הגנה על סיסמאות - Salt כנגד Rainbow Tables » | POC לסקריפט - hping2 DOS » | ניהול אפליקציה מרכזי » | רוני חליבה - מנכ"ל אקספון » | אוטומציה למערכות ASP באמצעות Expect » | הiPhone פרוץ רשמית - SIM Hack » | סופה של תקופה - פרשתי מבזק בינלאומי » | הPDA המושלם - iPhone » | תקדים - מותר למעסיק לקרוא את הדוא"ל שלנו. »

מלכודת דבש ייעודית - Logmein Honeypot

כחלק ממחקר שביצעתי בשבועות האחרונים בנוגע לזליגת מידע דרך מערכות כגון LOGMEIN , התברר לי שאפילו פתרונות איכותיים כמו ONIGMA וכמו PORTAUTHORITY אינם מספקים מניעת זליגה מלאה , שכן בסופו של דבר המשתמש מצליח להקים קישור לLOGMEIN וכל הפתרונות שניתנים כיום הינם פתרונות ברמת הCLIENT ( אפילו אני הצעתי פתרון שכזה בעבר בפוסט הזה ) אך הפתרונות אינם שלמים והמשתמשים משתפרים מפעם לפעם , והגיוני שכך , לכן החלטתי לתפור פתרון קצת יותר מחוכם - כמובן שאני לא אצליח למנוע מהמשתמשים להתחבר - אבל מנהל אבטחת המידע יקבל ALERT מתאים לאירוע על ניסיון לגישה לLOGMEIN ואפילו יקבל שם משתמש + IP + שאר פרטים מזהים , או בקיצור - Honeypot ייעודי.

ובכן החלטתי לבחון פתרון שאינו מונע ( אגב , בגלל ארכיטקטורת הפתרון הוא כן מונע ... ) ואף ביצעתי במהלך היום האחרון POC בנושא , אשר הניב תוצאות מרשימות . המטרה העקרונית היא למנוע התחברות של מחשב מהרשת שלי למחשב מרוחב באמצעות LOGMEIN , בדרך ההפוכה , מה שמאפשר להוציא מידע החוצה מבפנים ולא בהכרח למשוך מידע מבחוץ ( כמובן שנדרשת יעילות דו כיוונית ).

הרעיון היה בעצם להשתש בFEATURE איכותי שקיים כיום במערכות FW של סיסקו ושל פורטינט ( אני חושב שלעוד יצרנים יש פתרון ) שנקרא DNS ReWrite . ולהקים שרת PHISHING פנימי שישמש כמלקט מידע.

המערכת עצמה - מה יש לעשות :
1. הקמתי שרת על גבי מחשב לינוקס מיושן ( שבכל חברה זרוקים כאלה במחסנים ) ועליו הרמתי MYSQL ושירות APACHE.
2. ביצעתי CAPTURE של המסך הראשי של אתר www.logmein.com והנחתי אותו על גבי שרת הAPACHE שלי.
3. בניתי DB על הMYSQL אשר מכיל את השדות -- IP/USER/TIME/COMPNAME/COUNTER.
4. בניתי סקריפט PHP אשר מקשר משדות הUSER\PASS באתר הLOGMEIN המזוייף שלי אשר ברגע שלוחצים LOGIN - מופנים לעמוד אשר מציין שהשירות אינו זמין ויתאושש בעוד מס דקות , ובמקביל נרשמים כל פרטי המחשב - כלל משתמש הLOGMEIN שהוכנס לתוך מסד הנתונים ( בכל פעם שלוחצים , עולה הCOUNTER כמובן )
5. לחיצה על כפתור ה"FREE DOWNLOAD" לCLIENT יפנה לדף המקביל שהתאמתי מראש ושם לאחר שמשתמש מכניס פרטים , במקום להוריד - אותו מסך בדיוק.
6. המערכת מדווחת בדואר אלקטרוני\SNMP למערכת הSIM הארגונית על אירוע ILP כמובן.

שינויים בתשתית - מה יש לעשות :
1. ( במידה ויש DNS ארגוני , כדאי לבצע גם שם ) הגדרתי DNS TRANSLATION REWRITE אשר מבצע המרה של כל תשובת DNS QUERY על כתובת IP של חברת LOGMEIN - לכתובת של הHONEYPOT שיצרתי.
2. ביצעתי חוק של NAT REDIRECTION אשר מחזיר תעבורה שבכל זאת מכוונת לכתובת הIP האמיתית - בחזרה פנימה לשרת הHONEYPOT.

שימו לב לשרטוט לגבי התהליך עצמו ( ללחוץ להגדלה ) :


מה שקורה בעצם הוא שבכל פעם שהמשתמש פונה לLOGMEIN , או האפליקציה פונה לשם , המערכת מופנית לשרת הHONEYPOT והאירוע נרשם ( הקונספט העיקרי מאחורי HONEYPOT הוא שאין סיבה להתחבר אליו למשתמש לגיטימי עבור אירוע לגיטימי ) וההפניה היא שקופה ככל האפשר כי בעצם מערכת התשתית ( הFW שאמור לבצע רק סינון תעבורה ) היא זו שמייצרת את הסטת התנועה והניתוב הייחודי. ( אגב , מומלץ למקם מערכת זו בDMZ מיוחד ).

דבר נוסף שניתן היה לעשות , הוא להגדיר VLAN עבור השרת , ולהגדיר עליו את כתובת הIP האמיתית של שירות הLOGMEIN , ולבצע ניתוב מתאים כך שהציוד יבין שהכתובת היא ברשת ולא באינטרנט - ולכן התעבורה תוסט , מבלי שיהיה ניתן לזהות את השינוי בסניפר.

העיקרון הוא כזה שמשתמשים סטנדרטיים לא יהיו מודעים בהכרח למשחק שלי ברשת , ולכן לפחות לניסיונות ההתחברות הראשונים - יתפסו , ולכן ניתן יהיה לטפל בהם ברמה מנהלתית ולשלול מהם גישה למשאבים רלוונטיים.

כעת כל שנותר לצוות ההתערבות הוא לבוד את האיוע והמשתמש שסומן ולטפל בו בהתאם למדיניות אבטחת המידע הארגונית.

הסיבה שפניתי לפתרון מסוג זה , הוא האמונה הבסיסית שלי שפתרון רשתי תמיד עדיף על פתרון ברמת התחנה ( זכרו מקרי זיוף נתונים עם CSA או עם CONNECTRA ). לפי דעתי האמיתית אין זה פתרון מושלם או הרמטי , אך הוא זול ומהיר ליישום ובכל סדר גודל של ארגון , ולכן שווה ליישום לכל ארגון.

Labels: ,

Syndication : Digg It  Add to Technorati Favorites  Stumble It  Worth Reading 

חביב, אבל רחוק מלהיות הרמטי.
מה אם הקליינט יודע באורח פלא את כתובת הIP הנכונה, בלי לשאול את הDNS?
זה יעבוד עבור משתמשים תמימים, או לא תמימים אבל חסרי מודעות לתככנות של מנהל הרשת שלהם :), אבל אפשר לעקוף את זה בקלות יחסית.

לכן שים לב גם להערה שלי לגבי NAT REDIRECTION - למעשה אני מראש מגדיר גם את הכתובות ומעביר אותם בצורת תרגום חזרה לכתובת הלא חוקית שלי בפנים ( והמשתמש רואה את החוקית ) ולמעשה כל מה שיש לי לעשות הוא להגדיר את הPOOL החוקי של LOGMEIN בNAT RULE , אגב , יש ציודים שדורשים שימוש ברגל LOOPBACK בכדי לבצע כזה דבר.

זה בעצם פותר , כי גם פניה לIP עצמו - יעביר למערכת הHONEYPOT.

וואלה.
זה לבד מספיק, לא צריך לשחק גם בDNS.

בארי לא קלטתי איך אתה מונע ממשתמש לפתוח SSL הביתה ומשם ללכת לכל אתר שבא לו?

השאלה שלך לא ברורה.
אם התכוונת כיצד אני מונע גישה לאתר LOGMEIN בSSL אז התשובה הברורה...
הגישה מתבצעת בשכבת התקשורת ולא בשכבת הSESSION , לכן המניעה היא ברורה כאן

בארי אתה מדבר רק על אתר או שירות אחד. משתמש יכול לעקוף את ההגבלות על ידי פתחית חיבור SSL למחשב אחר מחוץ לחברה ומשם להגיע לכל שירות שבא לו. למה אתה חושב שהוא יתעקש להתחבר לLOGMEIN ישירות ? ברגע שהוא מנתב כל התקשורת שהיא לא פנים אירגונית דרך ארוץ SSLי אתה כבר לא תראה מה הוא רוצה לעשות.

מקס , אתה משחק ביצה ותרנגולת וזו לא המטרה , הרי מדובר פה בשיטה לחסם LOGMEIN ולא להראות שיש מליון דרכים אחרות לצאת .

הרי לפי השיטה שלך אני אם חסמתי LOGMEIN ולא חסמתי PCANYWHERE החוצה , אז מישהו יתחבר החוצה בPCANYWHERE ומשם בLOGMEIN למחשב שיתחבר RDP למחשב שיתחבר VNC וכן הלאה וכן הלאה ...

ברור שניתן לעבור דרך מספר דרכים , אגב לגבי SSL , אם מדובר בTUNNEL - ניתן לזהות זאת כיום על ידי IPS שונים ולחסום זאת , או לחליפין בד"כ SSLVPN דורש שכבה של PPP כלשהי על ידי חייגן או ACTIVEX או JAVA , וגם את זה ניתן לחסום ברמות שונות.

המשחק לא יגמר לעולם ( כדי שיהיה לי מה לעשות בחיים ) אבל בסופו של עניין המאמר המדובר מדבר על חסימה של בעיה ספציפית .

אגב, SSL החוצה = רק אם הCERTIFICATE מאומת.

Post a Comment

About

    My Name is Barry Shteiman, im a devoted tech junkie, and this is my blog.
    E: barry.shteiman -at- gmail.com
    Twitter : bshteiman

Tags & Categories

Mailing List & RSS

Stay Updated  
Add to Technorati Favorites