לדלג לתוכן

CAPTCHA

מתוך ויקיפדיה, האנציקלופדיה החופשית
תמונת CAPTCHA המכילה את צירוף האותיות "smwm"

CAPTCHA במחשבים הוא מבחן אתגר מענה (challenge-response) שמטרתו להבטיח שהתשובה אינה מופקת באמצעות מחשב. במנגנון מעורב בדרך כלל מחשב המייצר שאלה אקראית, כזו שלאדם קל לענות עליה אך למחשב קשה מאוד. מבחן CAPTCHA בדרך כלל מבקש מהמשתמש להקליד אותיות או מספרים המופיעים בצורה מעוותת על המסך.

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

את השם CAPTCHA טבעו לראשונה לואיס פון אהן, מנואל בלום, ניקולאס ג' הופר מאוניברסיטת קרנגי מלון וג'ון לנגפורד מ־IBM. השם הוא ראשי התיבות של "Completely Automated Public Turing test to tell Computers and Humans Apart",[1] ובעברית: "מבחן טיורינג ציבורי אוטומטי לחלוטין להבחנה בין מחשבים ובני אדם". אוניברסיטת קרנגי מלון ניסתה לרשום את השם כסימן רשום אך ויתרה על הרעיון.[2]

האקדמיה ללשון העברית קבעה את המונח "אימות אנוש" לקפצ'ה.

שתי קבוצות טענו שהן הראשונות לפתח מנגנון CAPTCHA: קבוצה אחת מחברת AltaVista שכללה את אנדרי ברודר ועמיתים על מנת למנוע מבוטים להוסיף כתובות URL למנוע החיפוש. כדי ליצור תמונות עמידות לסריקת OCR (זיהוי תווים אופטי) הצוות חקר מצבים שסריקתם הניבה תוצאות גרועות. קבוצה שנייה כללה את לואיס פון אהן ומנואל בלום אשר הרחיבו את הרעיון לכל תוכנה היכולה להבדיל בין אדם למחשב. פון אהן ובלום הראו גם מספר דוגמאות למנגנוני CAPTCHA, כולל המנגנון המסחרי הראשון שאומץ על ידי Yahoo!.

אולם המחלוקת הוסרה דווקא על ידי קבוצה שלישית שכללה את גילי רענן, אילון סולן וערן רשף, אשר עבדו במסגרת חברת סנקטום על פיתוח קיר אש ליישומי אינטרנט, אשר הגישה בקשה לפטנט בשנת 1997[3]שכותרתה הייתה: "מערכת להפרדה בין אדם למכונה" והתבססה על שימוש ביכולות חישה אנושיות היעילות בהרבה משל מחשב.

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

היישום הנפוץ ביותר של CAPTCHA הוא בטפסים אלקטרוניים באתרי אינטרנט, שם מתבקש המשתמש לזהות טקסט מעוות ולהקליד אותו בתיבה לפני שליחת הטופס, וזאת על מנת למנוע התקפות DoS או מילוי טפסים ממוכן. מערכות המעוניינות למנוע שימוש על ידי מכונה (הצבעה, דירוג וכו') משתמשות ב־CAPTCHA כדי לוודא שהמשתמשים בהן הם בני אדם.

שימוש מקורי ב-CAPTCHA נעשה בפרויקט reCAPTCHA: מערכת reCAPTCHA מציגה לגולש CAPTCHA הכוללת מילים שלא זוהו על ידי תוכנות לזיהוי תווים אופטי, ובכך מסייעת בהמרת טקסטים מודפסים לפורמט דיגיטלי.

עקיפת המנגנון

[עריכת קוד מקור | עריכה]

על מנת לנסות להתגבר על מנגנון ה־CAPTCHA ניתן לנסות ליישם את השיטות הבאות:

יישום לקוי

[עריכת קוד מקור | עריכה]

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

שיפור תוכנות זיהוי תווים

[עריכת קוד מקור | עריכה]

מספר מחקרים ניסו להתמודד עם הבעיה בזיהוי תווים במערכות CAPTCHA ויזואליות על ידי שימוש ברעיונות הבאים:

  1. הסרת הרקע.
  2. חלוקת התמונה לתווים בודדים.
  3. זיהוי כל אות בנפרד.

שלבים 1 ו־3 יכולים להתבצע בקלות על ידי מחשב. נכון ל-2012, בני אדם עדיין יכולים להפריד את האותיות בתמונה באופן טוב יותר מאשר מחשבים.[4] במערכת בהן הרקע מורכב מצורות הדומות לאותיות והאותיות מחוברות ביניהן על ידי צורות אלה, קשה עדיין להפריד את האותיות באופן אוטומטי באמצעות מחשב. מסיבה זו, יישומי CAPTCHA חזקים יתמקדו בחלוקת התווים כדי להקשות על הפיצוח.

מספר יישומי CAPTCHA אשר נמצאים בשימוש נפרצו. דוגמאות אחדות הן אחד היישומיים המוקדמים של Yahoo! שנקרא "EZ-Gimpy", המערכת בה משתמש אתר האינטרנט PayPal[5] ומספר יישומי קוד פתוח.[6][7] פריצת המערכת של Yahoo! פורסמה בינואר 2008 על ידי גוף בשם Network Security Research,[8] זמן קצר לאחר מכן נפרצו גם המערכות של הוטמייל ו־Gmail.[9][10]

שימוש בבני אדם על מנת לפתור את ה־CAPTCHA

[עריכת קוד מקור | עריכה]

בשיטה זו ניתן לבנות בוט הממלא באופן אוטומטי את הטופס וכאשר הוא מגיע לחלק בו צריך לפתור את ה־CAPTCHA הוא מעביר אותו למפעיל על מנת שיפתור אותו.

שיטה נוספת שניתן ליישם היא שימוש ב־CAPTCHA שהתקבל מאתר אחד באתר אחר השייך לפורץ, וכך הגולשים באתר פותרים את ה־CAPTCHA עבור הבוט אשר מעביר את הפתרון לאתר אליו הוא מעוניין לפרוץ.[11]

שימוש ב-CAPTCHA לתועלת

[עריכת קוד מקור | עריכה]
ערך מורחב – reCAPTCHA

כאשר הערכות השימוש ב-CAPTCHA עומדות על 200 מיליון ביום, לפי חישוב של 10 שניות לכל אחד, מתבזבזות 500,000 שעות כל יום שיכולות להיות מנוצלות לתועלת. עובדה זו גרמה [12] ללואיס פון אהן לחשוב על האפשרות להשתמש בכל ההקלדות האלה להעביר ארכיונים שלמים, שלא ניתן לפענח את המילים לטקסט על ידי סריקה, בעזרת שימוש במיקור המונים זה לטקסט דיגיטלי, ופיתח את reCAPTCHA. לדוגמה עיתון The Times, אשר מפורסם משנת 1851 משתמש בשירות זה של החברה של לואיס פון אהן כדי להעביר את כל ארכיון העיתונים שלה לטקסט.

אפשר לראות זאת בכך שה-CAPTCHA דורשת להקליד שתי מילים כאשר אחת המילים היא מילה סרוקה ולא ידועה למערכת והמילה השנייה משמשת בתור מבחן טיורינג הפוך כדי לוודא שהמקליד הוא אדם ולא מחשב. המילה השנייה נבדקת האם היא דומה לתוצאה של מספר מנגנוני OCR, ואם כן ניתן לעבור את המבחן. לאחר מכן המילה נשמרת במאגר ונבדקת מול התשובות של משתמשים שונים ואם כולם ענו בצורה זהה, אפשר להניח שזאת ההקלדה הנכונה ולהכניס למאגר, וכך להמיר טקסטים מודפסים שלמים לטקסטים דיגיטליים.[13]

קישורים חיצוניים

[עריכת קוד מקור | עריכה]

הערות שוליים

[עריכת קוד מקור | עריכה]
  1. ^ The Official CAPTCHA Site, www.captcha.net
  2. ^ Trademark Status & Document Retrieval, tsdr.uspto.gov
  3. ^ "Method and system for discriminating a human action from a computerized action". 2004-03-01.
  4. ^ Kumar Chellapilla, Kevin Larson, Patrice Simard, Mary Czerwinski (2005). "Computers beat Humans at Single Character Recognition in Reading based Human Interaction Proofs (HIPs)" (PDF). Microsoft Research. אורכב מ-המקור (PDF) ב-2006-03-23. נבדק ב-2006-08-02.{{cite web}}: תחזוקה - ציטוט: multiple names: authors list (link)
  5. ^ Breaking the PayPal CAPTCHA
  6. ^ PWNtcha - captcha decoder
  7. ^ Examples of breakings - CAPTCHA.ru
  8. ^ Network Security Research and AI
  9. ^ Dawson (2008-04-15). "Windows Live Hotmail CAPTCHA Cracked, Exploited". Slashdot. SourceForge. נבדק ב-2008-04-16.
  10. ^ Dawson (2008-02-26). "Gmail CAPTCHA Cracked". Slashdot. SourceForge. נבדק ב-2008-04-16.
  11. ^ Doctorow, Cory (2004-01-27). "Solving and creating CAPTCHAs with free porn". Boing Boing. נבדק ב-2016-11-20.
  12. ^ History & Evolution of CAPTCHA - CAPTCHA Versions, Masai School, ‏2022-07-25 (באנגלית)
  13. ^ Gugliotta, Guy (2011-03-28). "Deciphering Old Texts, One Woozy, Curvy Word at a Time". The New York Times (באנגלית אמריקאית). נבדק ב-2020-03-28.