time based identification of web attackers המעבדה לאבטחת מידע המעבדה...

14
Time Based Identification of Web Attackers הההההה הההההה הההההה הההה הההההה הההה ההההה הההה ההה"ה ההההה הההה ההה"ה ההההההה ההההההה םםםםם: ההההה ההההה הההה הה םםםםםם: הההה ההההההההה הההההה ההההההההה

Post on 15-Jan-2016

234 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Time Based Identification of Web Attackers המעבדה לאבטחת מידע המעבדה לאבטחת מידע סמסטר חורף תשס " ט הטכניון מנחים: עמיחי

Time Based Identification of

Web Attackers

המעבדה לאבטחת מידעהמעבדה לאבטחת מידע סמסטר חורף תשס"טסמסטר חורף תשס"ט

הטכניוןהטכניון

עמיחי שולמןמנחים:

אלדד שי

גליה סימנובסקימבצעים:

אדוארד סינלניקוב

Page 2: Time Based Identification of Web Attackers המעבדה לאבטחת מידע המעבדה לאבטחת מידע סמסטר חורף תשס " ט הטכניון מנחים: עמיחי

TCP/IPTCP/IPמבוא מבוא

לחיצת יד משולשת

:מודל השכבות

לחיצת יד משולשת

Page 3: Time Based Identification of Web Attackers המעבדה לאבטחת מידע המעבדה לאבטחת מידע סמסטר חורף תשס " ט הטכניון מנחים: עמיחי

לפרויקטלפרויקטמוטיבציה מוטיבציה

האם ההתקפה עברה דרךהאם ההתקפה עברה דרך proxyproxy??

WebWeb התקפה נגד אפליקצייתהתקפה נגד אפליקציית

??מי עומד מאחורי ההתקפהמי עומד מאחורי ההתקפה

להעלמת להעלמת Proxy ServerProxy Server Anonymous Anonymous בדר"כ נעשה שימושבדר"כ נעשה שימוש .IP. -IP-כתובת הכתובת ה

– – כדי לגלות את התוקף האמיתיכדי לגלות את התוקף האמיתי

..או לאאו לא Proxy Proxy עלינו לדעת להגיד האם הבקשה הגיעה דרךעלינו לדעת להגיד האם הבקשה הגיעה דרך

Page 4: Time Based Identification of Web Attackers המעבדה לאבטחת מידע המעבדה לאבטחת מידע סמסטר חורף תשס " ט הטכניון מנחים: עמיחי

הגדרת הפרויקט ומטרותיוהגדרת הפרויקט ומטרותיו

נושא הפרויקטנושא הפרויקט:: Time Based Identification of Web AttackersTime Based Identification of Web Attackers..

מטרות הפרויקטמטרות הפרויקט:: איסוף מידע של בקשות לדפי איסוף מידע של בקשות לדפיHTMLHTML לפי גרסת לפי גרסת HTTPHTTP עבר /עבר/ProxyProxy גודל ?/גודל/?

דף.דף. יצירת כלי גנרי שנוח לעבד איתו את המידע ולמדוד את זמני הבקשה יצירת כלי גנרי שנוח לעבד איתו את המידע ולמדוד את זמני הבקשה

והתגובה.והתגובה. אלגוריתם לזיהוי האם הבקשה עברה דרך אלגוריתם לזיהוי האם הבקשה עברה דרךProxyProxy.על-סמך מדידות הזמנים. על-סמך מדידות הזמנים

מתודולוגיהמתודולוגיה:: C#C#, , .NET Frame 2.NET Frame 2שפת שפת

Page 5: Time Based Identification of Web Attackers המעבדה לאבטחת מידע המעבדה לאבטחת מידע סמסטר חורף תשס " ט הטכניון מנחים: עמיחי

שלבי הפרויקטשלבי הפרויקט'הקמת סביבת הניסוי. הקמת סביבת הניסוי.::שלב א'שלב א

'איסוף נתונים. איסוף נתונים.::שלב ב'שלב ב

:'אנליזה של המידע. אנליזה של המידע.שלב ג':שלב ג

'ם לזיהוי האם עבר דרך ם לזיהוי האם עבר דרך מימי אלגורית אלגורית::שלב ד'שלב דProxyProxy??

אואו

? ?

Page 6: Time Based Identification of Web Attackers המעבדה לאבטחת מידע המעבדה לאבטחת מידע סמסטר חורף תשס " ט הטכניון מנחים: עמיחי

שלב א' – הקמת סביבת ניסוי שלב א' – הקמת סביבת ניסוי

יצירת דף יצירת דףHTMLHTML תמונות. תמונות.22 ) עם פרמטר לגודל( שמכיל ) עם פרמטר לגודל( שמכיל

על מכונה א' - הקמת על מכונה א' - הקמתweb serverweb server בלי( בלי(cachingcaching)) + + התקנת התקנת

WireSharkWireShark . .

הקמת - הקמת ' ' על מכונה בעל מכונה ב -ClientClient..

איתור כתובות איתור כתובותIPIP של של ProxyProxy--ים ממדינות ברחבי בעולםים ממדינות ברחבי בעולם..

Page 7: Time Based Identification of Web Attackers המעבדה לאבטחת מידע המעבדה לאבטחת מידע סמסטר חורף תשס " ט הטכניון מנחים: עמיחי

הבאים הבאיםסידרה של עשרות בקשות לפי הפרמטרים סידרה של עשרות בקשות לפי הפרמטרים ::

-גודל דף ה-גודל דף הHTMLHTML.המבוקש. המבוקש

:גירסת הפרוטוקול: גירסת הפרוטוקולhttp 1.0, http 1.1http 1.0, http 1.1..

-תקשורת ישירה בין ה-תקשורת ישירה בין הClientClient-ל- ל ServerServer..

-תקשורת עקיפה בין ה-תקשורת עקיפה בין הClientClient-ל- ל ServerServer-דרך ה- דרך ה ProxyProxy..

-מיקום ה-מיקום הProxyProxy.לפי המדינה בה נמצא. לפי המדינה בה נמצא

שלב ב' – איסוף נתונים שלב ב' – איסוף נתונים

Page 8: Time Based Identification of Web Attackers המעבדה לאבטחת מידע המעבדה לאבטחת מידע סמסטר חורף תשס " ט הטכניון מנחים: עמיחי

בדיקות: בדיקות:33ניתוח הנתונים שאספנו כולל ניתוח הנתונים שאספנו כולל

first SYNהזמן שלוקח מה-1.

(.2 ל- 1)הזמן מ- first data from server ל-

first data from serverהזמן שלוקח מה –2.

(.3 ל- 2)הזמן מ- first data second request from Client ל-

first data from serverהזמן שלוקח מה -1.

(.4 ל- 2)הזמן מ- first data third request from Client ל-

שלב ג' – אנליזה של המידע שלב ג' – אנליזה של המידע

Client

Proxy

Server

SYNSYN + ACK ACK +

data Request

Response With Html page

1

2

Request for image1.jpg

Request for image2.jpg

image1.jpg Image2.jpg

3 4

Page 9: Time Based Identification of Web Attackers המעבדה לאבטחת מידע המעבדה לאבטחת מידע סמסטר חורף תשס " ט הטכניון מנחים: עמיחי

לגוריתמים לזיהוי האם עבר לגוריתמים לזיהוי האם עבר אא' – ' – דד שלב שלב ??ProxyProxyדרך דרך

מבוסס על מדידות הזמנים: – מבוסס על מדידות הזמנים:אלגוריתם ראשוןאלגוריתם ראשון – מתקיניםSniffer על השרת + שמים תמונה בדף HTML.– מודדים זמני הגישה

הזמן מה- 1מדידה :SYNלבין שליחת הדף מהשרת. הראשון הזמן משליחת הדף מהשרת לבקשת התמונה.2מדידה :

יש מעבר דרך 2 מדידה >> 1אם מדידה Proxy .

הרעיון מאחורי האלגוריתם : - 2 קרובה למדידה ה-1המדידה ה-בתעבורה ישירה. - 2 קטנה משמעותית מהמדידה ה-1המדידה ה-בתעבורה עקיפה .

למה?

לשרת.Proxy ומה-Client ל-proxyבמדידה השנייה ישנו מעבר נוסף מה-

.Proxy על-ידי השוואת זמנים בין מדידות נדע – האם היה מעבר דרך

Page 10: Time Based Identification of Web Attackers המעבדה לאבטחת מידע המעבדה לאבטחת מידע סמסטר חורף תשס " ט הטכניון מנחים: עמיחי

המשך המשך' –' –דדשלב שלב אלגוריתם שני:

יצירת סקריפט שמבצע פעמיים פתיחה וסגירה של חלוןWEB,

כך שמתבצעת פתיחת קשר כל פעם מחדש.

.HTML מורץ באופן שקוף ללקוח בכל פעם שמבקש דף האם היה פתיחת קשר עבור כל בקשת דףHTML ? יש מעבר דרך ה- אם לאProxy .

הרעיון מאחורי האלגוריתם : session בתחילת כל Server-פותח קשר פעם אחת בלבד מול ה Proxy ה-

אין יכולת שליטה על כך. Client של מס' בקשות, ל-

בקשה לדף נדע בוודאות:כלאם היו פתיחות קשר ב

.Proxy ישירות ולא דרך Clientמדובר בבקשה שהגיעה מה-

Page 11: Time Based Identification of Web Attackers המעבדה לאבטחת מידע המעבדה לאבטחת מידע סמסטר חורף תשס " ט הטכניון מנחים: עמיחי

מבנה התוכנה - מבנה התוכנה - Proxy_detectorProxy_detector

התוכנה משמשת לזיהוי משתמשים דרך התוכנה משמשת לזיהוי משתמשים דרך : :כלליכללי proxyproxy . .

התוכנה מקבלת כקלט קובץ מסוג התוכנה מקבלת כקלט קובץ מסוג ::קלטקלט .*.*pcappcap ..

פלטפלט::

המכיל זמני מדידות וכן את סוג הבדיקה . המכיל זמני מדידות וכן את סוג הבדיקה .CSVCSV. קובץ . קובץ 11

.. של כמה עשרות פניות של כמה עשרות פניותsessionsessionממוצע זמני מדידות ל-ממוצע זמני מדידות ל-. . 22

הרצת האלגוריתמים ובדיקת נכונותם.הרצת האלגוריתמים ובדיקת נכונותם.. . 33

:התוכנה מחולקת לשישה חלקים:התוכנה מחולקת לשישה חלקים-קריאת הקובץ וניתוח ה-קריאת הקובץ וניתוח הheaderheader .הראשי.הראשי

קריאת מידע מהקובץ, ניתוח מידע זה ויצירת קריאת מידע מהקובץ, ניתוח מידע זה ויצירתpacketpacket--.ים.ים

-ניתוח הזמנים של ה-ניתוח הזמנים של הpacketpacket--יםים..

כתיבת הסטטיסטיקה לקובץ כתיבת הסטטיסטיקה לקובץcsvcsv..

חישוב ממוצעים של הבדיקות לפי חישוב ממוצעים של הבדיקות לפיsessionsession..

'הרצת האלגורתמים שהוצגו בשלב ד'הרצת האלגורתמים שהוצגו בשלב ד..

Ga-Ga
צריך לצמצם את זה לשקף אחד מרווח.שורה אחת לכללי, קלט, פלט..האם אלו הם אכן החלקים בתוכנה? יש 4 ולא 3!לצמצם את תיאור האובייקט Analayser ל-2 שורות..
Page 12: Time Based Identification of Web Attackers המעבדה לאבטחת מידע המעבדה לאבטחת מידע סמסטר חורף תשס " ט הטכניון מנחים: עמיחי

GUIGUI מבט על ה- מבט על ה-

ממוצע הזמנים של המדידה האחרונה

האם הלקוח עבר ?Proxyדרך

–כפתור הפעלה בחירת קובץ ההרצה

מה מנבא כל אלגוריתם

האם אלגוריתם ?צדק

Ga-Ga
להוסיף print screen של ה-GUI + הסבר עם חיצים עליו.
Page 13: Time Based Identification of Web Attackers המעבדה לאבטחת מידע המעבדה לאבטחת מידע סמסטר חורף תשס " ט הטכניון מנחים: עמיחי

פלט לדוגמאפלט לדוגמא

Ga-Ga
להוסיף 2 דוגמאות של קובץ הפלט שמתקבל אחרי הרצת התוכנה. צריך להתלהב קצת לא?...למרות שזה מה זה חירבוש אחד גדול :)
Page 14: Time Based Identification of Web Attackers המעבדה לאבטחת מידע המעבדה לאבטחת מידע סמסטר חורף תשס " ט הטכניון מנחים: עמיחי

שאלות?שאלות?

תודה.תודה.