1 / 24

A Key Recovery Attack on the 802.11b Wired Equivalent Privacy Protocol (WEP)

A Key Recovery Attack on the 802.11b Wired Equivalent Privacy Protocol (WEP). A Stubblefield, J. Ioannidis, Aviel D. Rubin (May 2004) Presented by : SHELEF ROXANA (shelefro@post.tau.ac.il). נושאים. מבוא אלגוריתם WEP התקפה הקריפטוגרפית על RC4 התקפה על WEP המלצות ומסקנות. מבוא.

luann
Download Presentation

A Key Recovery Attack on the 802.11b Wired Equivalent Privacy Protocol (WEP)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. A Key Recovery Attack on the 802.11b Wired Equivalent Privacy Protocol (WEP) A Stubblefield, J. Ioannidis, Aviel D. Rubin (May 2004) Presented by : SHELEF ROXANA (shelefro@post.tau.ac.il)

  2. נושאים • מבוא • אלגוריתם WEP • התקפה הקריפטוגרפית על RC4 • התקפה על WEP • המלצות ומסקנות

  3. מבוא • הצגת שיטה מעשית למימוש "התקפה" על WEP, לצורך שחזור מפתח ההצפנה • WEP : פרוטוקול מתוכנן לספק פרטיות עבור המידע שעובר על רשתות אל חוטיות, המבוססות על סטנדרט 802.11 • 802.11 : תקן IEEE לתקשורת בטווחים קצרים (בסביבה עירונית) • קל לשימוש, מספק גישה מהירה.

  4. עבודות בנושא התקפות על WEP: • BORISOV N., GOLDBERG I. and WAGNER [2001] Intercepting mobile communications. The insecurity of 802.11 (MOBICOM,2001) • NEWSHAM T. [2001] – Cracking WEP keys (http://www.lava.net/ wlan) • ARBAUGH, SHANKAR, and WAN [2001]- Your 802.11 wireless network has no clothes (IEEE international Conference on Wireless LAN’s and Home Networks) • ARBAUGH [2001] – An inductive chosen plaintext attack against WEP/WEP2 (IEEE Document 802.11-02/230) • FLUHRER S., MANTIN I. and SHAMIR A. [2001] – weaknesses in the key scheduling algorithm of RC4 (Eighth Annual Workshop on selected areas in Criptography)

  5. אלגוריתם WEP • WEP שומר על פרטיות המידע: • סודיות התוכן • מונע את שינוי תוכן החבילות על ידי תוקפים אקטיביים • מאפשר גישה למשתמשים מורשים בלבד • תכונות של WEP • קל ליישום • נוח לניהול

  6. חישוב WEP frame : כל חבילה מוצפנת באופן עצמאי, ללא תלות בהסטוריה • M.c(M) • IV.k • Initialize RC4 (IV.k) • Encrypt data : WEP data : IV.C k – secret key (mobile node, access point) M – plaintext frame data c(M) – checksum of M

  7. Key Setup Algorithm (KSA) Given :K[0…l-1) , N=256 Identity Permutation for i =0…N-1 S[i] = i j = 0 Scrambling for i =0…N-1 j = j + S[i] +K[i mod l] swap( S[i] , S[j] ) Pseudo Random Generator Algorithm (PRGA) i =j =0 Forever i =i+1 j = j +S[i] swap( S[i] , S[j] ) Output : Zi = S[ S[i] +S[j] ] ההתקפה הקריפטוגרפית על RC4 - תאור RC4

  8. - עקרונות ההתקפה • התוקף מחפש את ה-IV-ים שמביאים את KSA למצב שבו מודלף מידע על המפתח (resolved cases) • ידוע ה-byte הראשון של ה-plaintext

  9. KSA PRGA : i=j=0 i=1 j = S[1] swap (S[1] , S[S[1] ] ) Z1 = S[S[1] + S[S[1] ] ] • Z1תלוי רק ב-3 ערכים:S[1], S[S[1] ] ,S[S[1] + S[S[1] ]] • נניח IV = (3,255,X) • תנאי להצלחת הפענוח : עד סוף ריצת ה- KSA (איטרציות 3-255), אין שינוי בערכים S[1], S[S[1] ] ,S[S[1] + S[S[1] ] ] • C1, P1ידועים -> Z1ידוע -> K0

  10. תאור הבעיה נתון : IV – באורך I בתים נדרש : לגלות את K[B] , כאשר נתגלו Bהבתים הראשונים של K : K[0],…,K[B-1] (K[0], K[1],..,K[l-1] – החלק הסודי של המפתח )

  11. פתרון • חיפוש ערכי IV , כך שלאחר I צעדים יתקיים: • SI[1] < I • SI[1] + SI[SI[1] ] = I+B • שחזור K[B]: כאשר מיקום בתוך הפרמוטציה Stשבו מופיע הערך Y

  12. הפעלת ההתקפה על WEP • בנית סימולציה להתקפה על RC4 : IV = (B+3, 255, X) • שחזור בית אחד – 60 resolved cases • שחזור כל המפתח – 256 resolved cases • "ללכוד" את ה-packets של 802.11 • כרטיס Linksys wireless מבוסס על Intersil Prism II chipset • מה ה-byte הראשון בכל packet? • IP, ARP : 0xAA • IPx : 0xFF, 0xE0 • שחזור מפתח של 128 bits דרש :4000000-6000000 packets

  13. ההתקפה הבסיסית Recover WEP Key( ) Key [0... KeySize] = 0 for KeyByte =0…KeySize Counts[0…255]=0 for each packet -> P if Counts [SimulateResolved (P, Key, Key Byte)] +=1 Key [Key Byte] = Index Of Maximum Element (Counts) return Key

  14. SimulateResolved (P , Key, Key Byte) N=256 K = P.IV.Key for i =0…N-1 S[i] = i j = 0 for i =0…KeyByte j = j + S[i] +K[i mod l] swap( S[i] , S[j] ) return

  15. שיפור המתקפה • לבדוק איזה IV הם resolving • ה-password ב- ASCII (אין hashing), לכן לצורך גילוי ה-next most likely key byte , נותנים עדיפות לאותיות קטנות ,גדולות, מספרים וסימנים. • בדיקת המועמדים למפתח בעזרת חישוב ה- checksum • ההסתברות ש: S[1], S[S[1] ], S[S[1] + S[S[1] ] ] אינם משתנים עד סוף ה-KSA : 13% עבור שני ערכים שונים, לעומת 5% כאשר שלושתם שונים. תוצאת השיפור : מספר החבילות שנדרש - 1000000

  16. Testing if a particular IV is resolving Resolved? (IV, Current Key Guess) N=256 K = IV.Current Key Guess for i =0…N-1 S[i] = i j = 0 for i =0 …|Current Key Guess| j = j + S[i] +K[i mod l] swap( S[i] , S[j] ) if (S[1] <|Current Key Guess| +1 and S[1] + S[S[1]] = |Current Key Guess| +1) returntrue else return false

  17. Check the checksum received by key guess Check checksum (Guess , P) K =P.IV.Guess return c(plaintext) ==checksum

  18. פרמטרים שמשפיעים על שחזור המפתח • בחירת ה-IV-ים סטנדרט WEP איננו קובע את בחירת ה-IV שיטות בחירת IV עבור כרטיסי 802.11: • Counters • Random selection • Value flipping

  19. בחירת המפתח אין "ניהול מפתחות" ב-WEP. • שימוש במפתח יחיד, משותף ל- base station ולכל ה-mobile nodes • שימוש ב- human memorable password • אין דרך סטנדרטית להפוך את ה-password ל-WEPkey פתרונות : • שימוש בnon memorable WEP key – • שימוש בפונקציות hash • WEP key נפרד לכל mobile node , לכל user , לכל session • Rekeying כל user אחרי 10000 packets

  20. RC4 המלצות: • לזרוק את 256 הבתים הראשונים של תוצאת RC4 • יישום נכון של אלגוריתמים קריפטוגרפיים בשלב תכנון הפרוטוקול ( יישום נכון של RC4 ב-SSL מונע את ההתקפה של Fluhrer)

  21. איך לתקן את WEP ? • מנגנון הסודיות • חמרת ה-WEP תזרוק את הבתים הראשונים המוצפנים או • לכל חבילה יהיה שימוש בפונקצית hash חזקה : K =hash (IV. WEP key) • Rekeying לעתים קרובות • לא להשתמש ב-bad IV’s

  22. מנגנון השלמות (Integrity) • שימוש ב- keyed universal hash function • מנגנון ה- Authentication • נדרש לספק מנגנון ל- rekeying עבור פונקציות הסודיות והשלמות • לאפשר לשני הצדדים (base station, mobile node) לבחור בגרסת ה- WEP הכי טובה ששניהם תומכים

  23. כלים נוספים לשבירת מפתחות WEP: Airsnort WEPcrack מסקנה : “802.11b WEP standard is completely insecure”

  24. תרגילי בית • מנה את החולשות של WEP . • הגדר את המושג resolving case. • הראה איך אפשר למצוא את ה-byte הראשון של המפתח הסודי (K0)במקרה של IV = (3,255,X) , בהינתן P1 (ה- byte הראשון של ה-data ). • מה אפשר להמליץ למשתמשים ב- WEP ? (shelefro@post.tau.ac.il)

More Related