Captcha Nedir?

İnternet kullanımının yaygınlaşması  ile birlikte  web sitelerinin çoğalması,  web yazılımlarının gelişmesine neden olmaktadır. Web  sitelerinin geniş kitlelerce kullanılması  ve  kişisel  bilgilerin  paylaşılması,  beraberinde güvenlik problemlerini doğurmaktadır. Yazılım geliştiriciler güvenlik problemlerine çözüm üretmeye çalışırken kötü amaçlı yazılımcılar ise kodlar yardımıyla insanmış  gibi davranan  robot  kullanıcılar(bot)  oluşturarak  şifre  ile  ilgili bütün  ihtimalleri  ve  alternatifleri  deneyerek  kırma  (Brute Force  saldırısı),  spam  üretme,  reklam  ve  zararlı  link  gibi istenmeyen  paylaşımlar  yapma,    trafiğini  meşgul  etme, sistemlere zarar verme ve benzeri amaçlar için  robot yazılımlar  geliştirmektedirler.  Bu  robot  yazılımlara  çözüm olarak  istemcinin  normal  kullanıcı  olan  bir  insan mı  yoksa kötü amaçlı  bir  bilgisayarları    olduğunu  ayırt  etmeye yarayan CAPTCHA uygulamaları ortaya çıkmıştır. Açılımı  "Completely  Automated  Public  Turing  test  to  tell Computersand Humans Apart" olan CAPTCHA, Türkçe'ye "Bilgisayar ve İnsanları Ayırt Etmek için Tamamen Otomatik Turing Testi" olarak  çevrilebilir. Açılımında da bulunan Turing testi bilgisayarın, insanlardan ayırt edilememeleri durumunda başarılı sayıldıkları bir testtir. Bu yöntem 2000 yılında ABD Pittsburg'deki Carnegie Mellon Universitesinde Luis von Ahn, Manuel Blum, Nicholas Hopper ve John Langford tarafından geliştirilmiştir.  Geliştirilen  bu  uygulama  istemcinin  bir kötü amaçlı bir bot mu yoksa gerçek bir kullanıcımı olduğunu  ayırt  etmek  için  belirli  bir  sayıda  rastgele  harfler ve/veya  sayılardan  oluşan  bir  giriş  kodu  üretir  ve  ürettiği kodu  text  aramalarından  kaça  bilmek  için bir imaj haline getirir.  Eğer  istemci  insan  ise  üretilen  giriş  kodunu  imaj üzerinden okuyup ilgili kontrole doğru girişini bekler. Doğru giriş kodu ilgili kontrole yazıldıysa istemcinin insan olduğunu anlar ve sitenin kullanımına izin verir. CAPTCHA uygulaması kullanılmaz ise kötü amaçlı yazılımcılar tarafından rastgele  kullanıcı  adı  ve  şifre  kombinasyonları deneyen bir bot yazarak sisteme giriş yapılabilinmektedir.  Bilindiği gibi görüntü işlemenin bir dalı olan Optic Caracter Regocnization (OCR) algoritmaları  ile imaj haline getirilmiş bu  giriş  kodlarını  okumak  ve  CAPTCHA  uygulamalarını aşmak  mümkündür.  Bu  ihtimali  azaltmak  için  CAPTCHA uygulamacıları  ürettikleri  CAPTCHA  uygulamalarını  farklı tekniklerle aşılması zor bir hale getirmeye çalışırken CAPTCHA uygulaması aşmaya çalışan bot yazılımcıları  ise görüntü işleme ve yapay zeka algoritmalar ile CAPTCHA aşma tekniklerini geliştirmektedirler. Bu durum adeta karşıt amaçlı olan CAPTCHA uygulamacıları ile bot yazılımcıları arasında bir yazılım savaşı oluşturmaktadır.

CAPTCHA UYGULAMASININ AVANTAJLARI
Teknolojiyle beraber gelişen yazılımlar sayesinde, İnternet sitelerine yapılan saldırılar zarar verici hale gelmiştir. Bu saldırıların bazıları botlarla yapılan flood diye tabir edilen site trafiğini arttırmak ve veritabanını şişirmek gibi kötü amaçlı yazılımlardır. CAPTCHA  uygulaması aşılamadığı  takdirde bu ve benzeri amaçlı saldırıları engellemek için kullanılmaktadır. CAPTCHA uygulamaları yoğun olarak kişisel blokların yorum kısımlarında bloğa üye olmadan yorum yapabilmek için kullanılmaktadır. CAPTCHA uygulamaları kullanılmadığı veya aşıldığı  takdirde istenmeyen reklamlar linkler ile verilmektedir. Botlar sürekli ve otomatik olarak siteye dakikada binlerce yorum göndererek veritabanına sürekli sorgu gönderilmesini sağlamakta ve bunun neticesinde, hem veritabanı şişirilmekte hem de sürekli veritabanına sorgular gönderildiği için sitede yavaşlama olmakta hatta siteye erişim kesintisi söz konusu olmaktadır.  Web site üyeliğini kontrol etmek amaçlı kullanıcı adı ve şifre kontrolü esnasında CAPTCHA kullanılmaktadır. Üyelik ile sunulan ücretsiz hizmetlerden botlar kullanılarak milyonlarca üyeliğin alınması sağlanabilmektedir. Sistemin bu şekilde milyonlarca e-mail vs. hizmetler vererek çalışmaz hale gelmemesi için CAPTCHA kullanılmaktadır. Spammer diye adlandırılan istenmeyen reklam ve linkleri başka web sayfalarında yayınlayan veya mail adresinizi ele geçirip mail atan botlar spam yapabilmek için email adreslerini kullanmaktadır  ve  e-mail atacakları  adresleri bulabilmek için de web de  text araması yapmaktadırlar. Bir Bot yazılımın web sitenizden e-mail adreslerini alınmasını önlemek için CAPTCHA testini kullanmanız ve sitenize giriş yapan kullanıcının bir bot yazılımı değil insan  olduğunuzu ispatlamanız gerekir. Şifreyle giriş sistemlerinde, bir hesaba belirli sayıda hatalı giriş uygulandıktan sonra, o hesap belli bir süre kilitlenebilmektedir. Botlar, bu kilitlenmeyi kullanarak sistemdeki çoğu hesabın kullanılamaz  olmasını hedeflemektedir. Bu noktada CAPTCHA devreye girerek, hatalı girişin bir kullanıcı tarafından mı yoksa bot tarafından mı yaptığını anlamaktadır. CAPTCHA uygulamasını geçemeyen  bot  girişi,  hatalı  bir  giriş  olarak  gözükmeyerek, hesabın kilitlenmesini engellemektedir.
CAPTCHA TESTİNİN DEZAVANTAJLARI
Görüntü işleme ve yapay zeka uygulamaları ile geliştirilen   OCR teknikleri ile CAPTCHA testlerin aşılması kolaylaşmaktadır.  Bu  nedenle  testin  sürekli  yenilenmesi  ve gelişmesi gerekmektedir ve bu devamlı bir emek gerektirmektedir. Ayrıca bazı testler insanların bile aşamayacağı kadar zorlaşabilmektedir. Testi birkaç kez yanlış yanıtladığında erişimi engelleyen siteler kullanıcı kaybına  sebep  olmaktadır.  Ses  sistemi  kullanmayan  testler, göremeyen ve  renk körü olan kullanıcıları yok saymaktadır. CAPTCHA  uygulamasının bir diğer dezavantajı ise CAPTCHA  uygulamasında  latin harflerinin  kullanmakta olmasıdır. Latin harflerini kullanmayan kişilerin bu sistemde işleyebilmeleri olumsuz bir etki yapmaktadır.
Re-CAPTCHA uygulaması:
Kütüphanelerde yazılı metinler bilgisayar ortamına aktarılırken kitap sayfalarındaki bozulmalar veya basım problemleri sebebiyle, bazı kelimeler okuyucu program tarafından doğru tanınamaz. Doğru okunamayan kelimelerde programın uyarı vermesi mümkündür, ancak bu şekilde kitapların aktarım süreleri ciddi anlamda uzar. Özellikle eski metinler bilgisayara  aktarılırken, işler zorlaşır.
Re-CAPTCHA projesi hem alternatif  bir CAPTCHA hem de söz konusu bu zorluğu ortadan kaldırmak için geliştirilmiştir. Okunamayan kelimeler otomatik olarak internete aktarılmaktadır.  internette birçok kullanıcı tarafından aynı yazılan ifadeler doğru kabul edilip metinlere aktarılmaktadır. Böylelikle CAPTCHA uygulaması amacından farklı olan bir alana hizmet etmektedir.   Re-CAPTCHA sayısallaştırılmak istenilen kitaplardan alınan iki adet kelimeden oluşan bir CAPTCHA’dı. Bu kelimelerden biri, Okuyucu programlarca okunmuş kelimelerden seçilirken, diğeri okunamamış kelimelerden seçilmektedir. Test işlemi okunabilen kelime ile yapılmaktadır. OCR programlarının okuyamadığı kelime için verilen cevap metinlerin bilgisayarlara aktarımında kullanılmaktadır.
SONUÇ
Web sayfalarında kötü amaçlı bot yazılımlarının önüne geçmek amaçlı bot ve insan  ayrımı yapmak  için geliştirilen CAPTCHA günümüzde daha fazla amaca hizmet etmektedir.  CAPTCHA uygulamalarının görüntü işleme algoritmalarıyla aşılması,  dolayısıyla daha zor aşılabilecek CAPTCHA uygulamaları geliştirilmektedir ve CAPTCHA uygulayıcılarının bu hamlelerine karşı CAPTCHA uygulamalarını gelişen görüntü işleme teknikleriyle aşmaya çalışan bot yazılıcıları karşı hamlelere devam etmektedir.  Gelişen yapay zekâ teknikleri, yapay sinir ağlarıyla öğrenen bilgisayarlar ve iris tanıma, parmak izi tanıma,  aya tanıma gibi görüntü işleme uygulamalarının gelişmesi hızlanmasıyla bot yazılımcılarının web sayfalarına doğrulttukları silah en son kendilerini vuracaktır.

Kaynak: Adıyaman Üniversitesi, Adıyaman/Türkiye, hkutlu@adiyaman.edu.tr, Fırat University, Elazığ/Türkiye, enginavci@firat.edu.tr
Captcha Nedir? Captcha Nedir? Reviewed by Murat Tekmen on 30.10.13 Rating: 5

Hiç yorum yok