CAPTCHA (главни букви на латиница, ˈkæptʃə, понякога предавано като капча) е тест за сигурност, използван в информатиката, за който се смята, че може да бъде издържан само от човек. Компютър генерира прост въпрос, чийто отговор е очевиден за човек, но не и за друг компютър. Типичен CAPTCHA тест е показването на разкривени букви, които потребителят трябва да въведе.

Ранни версии на CAPTCHA като тази, генерирани от програмата EZ-Gimpy, са били използвани от Yahoo!. Вече съществува софтуер за разчитането им.[1]
Нова версия на CAPTCHA: фокусът е насочен вместо към разкривяване към затрудняване на разчитането чрез свързваща крива линия
Друг начин да се затрудни разчитането е силно да се намали разстоянието между тях. Такива букви могат да се прочетат от човек, но не и от робот

Терминът „CAPTCHA“ е въведен през 2000 от Люис фон Ан, Манюел Блум, Никълъс Дж. Хопър (учени от Университета „Карнеги Мелън“) и Джон Ленгфърд (по това време служител на IBM) и е съкращение от „Completely Automated Public Turing test to tell Computers and Humans Apart“ (напълно автоматизиран публичен тест на Тюринг за разграничаване на компютри от хора).[2]

CAPTCHA-та понякога е определяна като обратен тест на Тюринг, защото е проверка, при която потребител трябва да докаже на компютър, че е човек, за разлика от стандартния тест на Тюринг, при който машина иска да докаже на човек, че е човек.

Настоящата официална версия на CAPTCHA се казва reCAPTCHA.[3]

Характеристики редактиране

CAPTCHA е система, която задава въпроси, на които:

  • Съвременни компютърни програми не могат да отговорят;
  • Повечето хора могат;
  • И това не зависи от различните видове CAPTCHA, тъй като те са нови за атакуващия сигурността на системата.

Въпреки че бутон „щракнете тук, ако не сте компютър“ може да служи като тест, разграничаващ хора от ботове, той не е CAPTCHA, защото се основава на предположението, че атакуващият защитата не е положил усилия да разбие тази определена форма на защита.

История редактиране

Една от първите теоретични разработки, подобни на CAPTCHA, е тази на Мони Наор, която съставя списък на методите, чрез които може човек да бъде различен от бот.[4] Ранни версии на CAPTCHA изглежда са били разработени още през 1997 за AltaVista от Андрей Бродър и неговите колеги с цел ботове да не могат да добавят уебадреси към тяхната търсачка. Те разработили множество примери за CAPTCHA, сред тях и тази на Yahoo!.

Приложения редактиране

CAPTCHA се използва, за да се предотврати възможността ботове да извършват действия, които биха навредили на сигурността на системата или до други злоупотреби, като например регистрацията на потребителски сметки в безплатни услуги за електронна поща с цел изпращане на голямо количество спам. През февруари 2008 компанията Websense обявява, че е открила пропуск в CAPTCHA-та на Gmail.[5] CAPTCHA се използва и за превенция срещу ботове, правещи автоматични публикации в блогове, форуми и уикита.

Достъпност редактиране

Понеже CAPTCHA се основава на визуално разпознаване на символи, потребители с нарушено зрение не могат да видят визуалния тест. По тази причина официалният сайт на CAPTCHA препоръчва като алтернатива на визуалния тест да се прилага звуков.

Опити за по-достъпни CAPTCHA редактиране

Необходимо е обаче CAPTCHA-та да е достъпна и за потребители, които имат и нарушено зрение, и нарушен слух. Решение за това е например MAPTCHA-та, или Математическата CAPTCHA, при която на потребителите се задават въпроси от „колко е 1+1“ до намиране на производни на полиноми или въпроси от общ характер като „какъв цвят е небето“. Но това нарушава някои от основните принципи на CAPTCHA като този, че въпросите трябва да се генерират автоматично или че на тях може да се отговори предвид сегашното ниво на развитие на изкуствения интелект. Такива версии на CAPTCHA разчитат на това, че атакуващият не е срещал преди въпроса, формулиран по този начин, или не смята, че си струват усилията за разбиване на този въпрос.

Понякога, ако потребителите не могат да отговорят на CAPTCHA-та, от тях се изисква потвърждение по телефон или по електронна поща.

Заобикаляне редактиране

Има няколко начина за заобикаляне на CAPTCHA защитата:

  • експлоатиране на бъгове, които позволяват напълно да се заобиколи CAPTCHA системата
  • подобряване на софтуера за разчитане на текст
  • използване на евтин човешки труд

Някои CAPTCHA защити могат да бъдат заобиколени, без да се използва софтуер за разпознаване на текст, като се влиза със стар номер на сесия. Правилно разработена CAPTCHA защита не позволява потребител да опитва няколко пъти да отговори на една и съща CAPTCHA.[6]

Няколко разработки са опитвали да разработят софтуер за разпознаване на буквите (и понякога с успех!) на основата на следния алгоритъм:

  1. Извличане на изображението от уебстраницата.
  2. Обработка; премахването на фона, например чрез премахване на тънките линии.
  3. Разделяне на изображението на букви.
  4. Идентифициране на буквите.

Компютър може лесно да се справи със задачите, свързани със стъпки 1, 2, и 4.[7] Частта, в която хората са по-добри от компютрите, е разграничаването на отделните букви. Ако фонът съдържа форми, подобни на части от буквите, и ако тези форми са свързани с буквите, разделянето на текста на букви става невъзможно със сегашните компютърни програми.

Няколко разработки са разбивали истински CAPTCHA защити, като ранната CAPTCHA система „EZ-Gimpy“, използвана от Yahoo!,[1] както и тези, използвани от популярни уебсайтове като PayPal,[8] LiveJournal, phpBB.[9][10][11]

През януари 2008 компанията Network Security Research създава програма за разпознаване на новата CAPTCHA на Yahoo!,[12] а програми за разпознаване на CAPTCHA-та на другите основни услуги за електронна поща – Windows Live Hotmail и Gmail – излизат съвсем скоро след това.[13][14]

През февруари 2008 се появяват съобщения, че спамъри разполагат с програми, разчитащи между 30% и 35% от CAPTCHA-та на Windows Live Mail[15] и 20% от CAPTCHA-та на Gmail.[16] Екип от учени от Нюкасълския университет успяват да разработят програма, разделяща буквите в CAPTCHA-та с успеваемост от 90%.[17]

Човешка намеса редактиране

CAPTCHA-та може да бъде разчетена от хора, на които изображение се изпраща, а ботът препредава изпратеното от третия потребител съобщение.

Възможност за реализирането на това на практика е, ако собствениците на ботове притежават и уебсайт с голям трафик: в такъв случай техните ботове могат да показват CAPTCHA изображението на потребители на въпросния сайт, които да дават отговора.[18] През октомври 2007 зловредна програма кара потребители да отговарят на CAPTCHA, за да им покаже по-голяма част от порносайт.[19]

Източници редактиране

  1. а б Breaking a Visual CAPTCHA
  2. Computer Literacy Tests: Are You Human? // Time (magazine). Архивиран от оригинала на 2009-04-30. Посетен на 12 юни 2008. The Carnegie Mellon team came back with the CAPTCHA. (It stands for „completely automated public Turing test to tell computers and humans apart“; no, the acronym doesn't really fit.) The point of the CAPTCHA is that reading those swirly letters is something that computers aren't very good at.
  3. The Official CAPTCHA Site
  4. Moni Naor. Verification of a human in the loop or Identification via the Turing Test (PS) // юли 1996. Посетен на 6 юли 2008.
  5. Websense – Blog: Google’s CAPTCHA busted in recent spammer tactics, архив на оригинала от 28 февруари 2008, https://web.archive.org/web/20080228182620/http://www.websense.com/securitylabs/blog/blog.php?BlogID=174, посетен на 7 юли 2008 
  6. Breaking CAPTCHAs Without Using OCR // Howard Yeend (pureMango.co.uk). 2005. Архивиран от оригинала на 2017-06-25. Посетен на 22 август 2006.
  7. Kumar Chellapilla, Kevin Larson, Patrice Simard, Mary Czerwinski. Computers beat Humans at Single Character Recognition in Reading based Human Interaction Proofs (HIPs) (PDF) // Microsoft Research, 2005. Архивиран от оригинала на 23 март 2006. Посетен на 2 август 2006.
  8. Breaking the PayPal HIP // Архивиран от оригинала на 2008-08-21. Посетен на 2008-07-07.
  9. Breaking ASP Security Image Generator // Архивиран от оригинала на 2008-08-21. Посетен на 2008-07-07.
  10. PWNtcha – captcha decoder // Архивиран от оригинала на 2005-09-11. Посетен на 2008-07-07.
  11. Examples of breakings – CAPTCHA.ru
  12. Network Security Research and AI
  13. Dawson. Windows Live Hotmail CAPTCHA Cracked, Exploited // Slashdot. SourceForge, 2008-04-15. Посетен на 16 април 2008.
  14. Dawson. Gmail CAPTCHA Cracked // Slashdot. SourceForge, 2008-02-26. Посетен на 16 април 2008.
  15. Gregg Keizer, "Spammers' bot cracks Microsoft's CAPTCHA: Bot beats Windows Live Mail's registration test 30% to 35% of the time, says Websense", Computerworld, 7 февруари 2008
  16. Websense® – Blog: Google’s CAPTCHA busted in recent spammer tactics, архив на оригинала от 28 февруари 2008, https://web.archive.org/web/20080228182620/http://www.websense.com/securitylabs/blog/blog.php?BlogID=174, посетен на 7 юли 2008 
  17. A Low-cost Attack on a Microsoft CAPTCHA, архив на оригинала от 10 септември 2008, https://web.archive.org/web/20080910083000/http://homepages.cs.ncl.ac.uk/jeff.yan/msn_draft.pdf, посетен на 7 юли 2008 
  18. Doctorow, Cory. Solving and creating CAPTCHAs with free porn // Boing Boing. 27 януари 2004. Архивиран от оригинала на 2006-02-09. Посетен на 22 август 2006.
  19. PC Magazine: Striptease Used to Recruit Help in Cracking Sites // Архивиран от оригинала на 2008-10-11. Посетен на 2008-07-07.
    Тази страница частично или изцяло представлява превод на страницата CAPTCHA в Уикипедия на английски. Оригиналният текст, както и този превод, са защитени от Лиценза „Криейтив Комънс – Признание – Споделяне на споделеното“, а за съдържание, създадено преди юни 2009 година – от Лиценза за свободна документация на ГНУ. Прегледайте историята на редакциите на оригиналната страница, както и на преводната страница, за да видите списъка на съавторите. ​

ВАЖНО: Този шаблон се отнася единствено до авторските права върху съдържанието на статията. Добавянето му не отменя изискването да се посочват конкретни източници на твърденията, които да бъдат благонадеждни.​

Външни препратки редактиране