[보안베어의 IT 주저리 #4] 캡챠(CAPTCHA), 보안과 스팸 방지기능을 넘어서다!


1

안녕하세요 보안베어 입니다!

여러분, 튜링테스트를 아시나요? “기계가 인간과 얼마나 비슷하게 대화할 수 있는지”를 기준으로 “기계가 사고 할 수 있는가”를 판별하고자 하는 테스트입니다.

2

작년 6월, 러시아연구진이 개발한 A.I ‘유진’이 최초로 이 튜링 테스트를 통과하면서 화제가 되기도 했었죠!

 

이 튜링 테스트를 응용한 보안 기술이 캡챠(CAPTCHA)인데요

 

3

 

위의 그림과 같이, 로그인을 하려고 하면 뜨는 어그러진(?) 글자가 바로 캡챠(CAPTCHA)코드입니다.

사람은 저렇게 변형된 글자를 봐도 “PnnZ6n” 라는 걸 알 수 있지만, 컴퓨터에는 정자체만 저장되어있어 변형된 글자를 읽지 못한다는 점을 이용하여 테스트 대상이 사람이 아님을 판정한답니다

그래서 캡챠(Completely Automated Public Turing test to tell Computers and Humans Apart :컴퓨터와 사람을 구분짓기 위한 완전 자동 튜링 테스트)라는 이름이 붙었답니다!

캡챠(CAPTCHA)는 기기가 사람을 대상으로 하는 테스트인지라, 리버스 튜링 테스트(Reverse Turing test)라고 부르기도 한답니다.

2000년, 카네기 멜론의 루이스 폰 안 등에 의해 창안된 캡챠(CAPTCHA)는, 로봇을 이용해 무차별적으로 사이트를 위협할 수 있는 곳에 널리 채택되어 사용되고 있는데요.

테스트 방식은 매우 단순하답니다.

출력된 숫자나 글자를 있는 그대로 입력란에 입력하고 확인을 받으면 끝.

하지만 이런 작업은 프로그램으로서는 진행할 수 없고 오직 유동적으로 사고할 수 있는 사람만이 할 수 있기 때문에 이게 사람인지 봇인지를 판별하는데 유용하게 이용되고 있어요.

최근은 이 캡챠(CAPTCHA)가 단순 스팸 방지를 넘어 인류의 문화 보존(?)에도 쓰이고 있는데요.

오늘은 일상에서 흔히 접했지만…

알면 알수록 재미있는!! 캡챠(CAPTCHA)에 대해 알아보려 합니다!

 


 

캡챠(CAPTCHA)가 주로 이용되는 곳

  1. 광고성 게시물 방지

4

 

위의 그림과 같이, 개인 홈페이지나 블로그에 비회원으로 댓글을 달기 전 캡챠(CAPTCHA)를 입력하는 경우를 쉽게 볼 수 있는데, 광고성 게시물 또는 댓글을 올리기 위해 만들어진 봇을 막기 위해 사용되고 있답니다. 또한 여러 번 연속해서 글과 댓글을 올리는 경우에도 캡챠(CAPTCHA) 테스트를 요구하여 봇의 공격을 차단하는 역할을 하고 있죠.

  1. 아이디 자동생성 방지

5

G메일 등의 사이트에서는 특별한 개인정보를 제공하지 않아도 무료 이메일 계정 서비스를 받을 수 있기 때문에, 임의의 계정으로 스팸 광고를 발송하려는 봇들이 수많은 계정을 생성하기 쉬운데요. 이러한 피해를 막고자 회원가입 절차에 캡챠(CAPTCHA)를 사용하고 있습니다. 카페 기능을 제공하는 포털 사이트의 경우 이미 인증된 회원의 계정이 해킹에 의해 카페에 가입되거나 광고글을 쓰는 것을 막기 위해 카페 가입 전 캡챠(CAPTCHA)를 요구하기도 한답니다.

 

  1. 이메일 주소 보호

6

스팸 광고의 수신인을 찾기 위해 웹 사이트를 돌아다니며 이메일 주소를 수집하는 봇들을 막기 위해 사용되기도 하는데요. 비단 이메일 주소 뿐 아니라 전화번호나 사용자의 개인정보처럼, 봇들에게 제공하고 싶지 않은 정보들을 보호하는 데에도 캡챠(CAPTCHA)가 이용된답니다.

  1. 계정 해킹 방지

7

비밀번호의 길이는 한정되어 있으므로 여기에 무작위로 텍스트를 입력해 계정을 해킹하려는 봇도 존재하는데요.  그래서 매 회 로그인을 할 때마다 캡챠(CAPTCHA)를 풀게 하거나, 일정 횟수 이상 로그인에 실패하면 캡챠(CAPTCHA)를 제시하는 방법으로 계정 해킹 및 반복적인 단어 입력을 막아준답니다.

 

 

캡챠(CAPTCHA)의 단점?

캡챠(CAPTCHA)의 단점은 기본적으로 웹 접근성에 위배된다고 할 수 있습니다.

특성상 이미지를 보고 텍스트화를 해야 되기 때문에, 이미지를 볼 수 없는 시각장애인은 캡챠(CAPTCHA)를 통과할 수 없다는 문제점이 있죠. 시각장애인을 위한 텍스트 리더 프로그램은 이미지로 된 캡챠(CAPTCHA) 를 읽지 못하기 때문입니다.

그래서 요즘 캡챠(CAPTCHA)에는 음성으로 읽어주는 오디오 기능도 들어가 있는데요..이 오디오 기능을 이용해서 프로그램으로 캡챠(CAPTCHA)를 뚫는 경우가 생기기도 한답니다.

하지만.. 언젠가는 웹 접근성 부분과 보안 부분 모두 충족할 수 있는 솔루션이 등장하겠죠?

 

캡챠(CAPTCHA)의 집단지성, “리캡챠(reCAPTCHA) 프로젝트”를 아시나요?

8

캡챠(CAPTCHA)의 종류 중 많이 쓰이는 리캡챠(reCAPTCHA)

매일 전세계에서 2억개의 캡챠(CAPTCHA)가 입력되고, 캡챠(CAPTCHA)코드가 입력될 때마다 10초가 걸리는데 이를 시간으로 환산하면 총 50만 시간이라 합니다.

“리캡챠(reCAPTCHA)프로젝트”는 이 ‘50만 시간’과 ‘사람만이 할 수 있는 무엇’이 결합된 것이 그 시작이었습니다.

그렇다면, ‘사람만이 할 수 있는 무엇’에 대해 알아보도록 하겠습니다.

과거에 출간된 책들은 텍스트 파일이 남아있지 않아 이를 보존하기 위해서는 스캐너를 통해 종이책의 이미지를 읽어오고 이를 광학 문자 인식(OCR) 솔루션을 사용해 변환하는 작업을 거치게 되는데요. 문제는 책이 낡았거나 문자가 제대로 이미지화 되지 않아 출판된 지 50년 넘은 책의 30%가 정상적으로 텍스트화 되지 않는다고 합니다.

즉, 그 30%의 책을 텍스트화 하는 것은  ‘사람만이 할 수 있는 일”인 거죠.

리캡챠(reCAPTCHA)프로젝트는 바로 이 ‘사람만이 할 수 있는’ 문자열을 인지하는 능력과 캡챠(CAPTCHA)코드를 입력하기 위해 사람들이 쓰는 10초를 활용, 종이책을 전자책으로 변환시키는데 활용 한 것입니다.

이 리캡챠(reCAPTCHA)를 통해 텍스트화되는 책의 숫자는 연간 250만권 정도에 달한다고 합니다.

캡챠(CAPTCHA)코드를 입력하는 사용자들은 자신도 모르는 사이에 종이책의 디지털화를 돕고 있는 셈입니다.

 

로그인할 때마다 귀찮게 느껴지던 “못난 문자열”들.

보안에서 ‘집단지성’으로 승화한 캡챠(CAPTCHA)! 어떠신가요? 새롭게 보이시지 않나요?^^

 

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다.