웹 어플리케이션을 보호하기 위해 많은 사람들이 즐겨쓰는 유리 방패가 CAPTCHAS 입니다. 일그러지고 찌그러진 글자를 표시해서 사용자로 하여금 그 글자를 입력하도록 한 다음에 폼을 전송하거나 데이터에 접근할 수 있게 합니다. 이 방법은 보통의 사용자들을 귀찮게 하고, 시각장애인이나 실독증 환자는 아예 접근이 불가능합니다. 이 방법은 또한 우리가 생각하는 것만큼 안전하지도 않습니다. PWNtcha는 OCR과 백엔드 시스템을 사용해서 여러 CAPTCHAS들을 계속해서 크랙하고 있습니다.
정말로 놀라운 것은 자바스크립트와 Canvas만 가지고도 크랙이 가능하다는 것입니다. ShaunF씨는 파일 호스팅 사이트인 Megaupload의 CAPTCHAS 암호를 자동으로 해독하는 GreaseMonkey 스크립트를 작성하셨습니다. 데모는 여기서 확인하실 수 있습니다.
John Resig씨가 이 스크립트를 분석하고 설명한대로, 몇 가지 재밌는 방법이 사용되었습니다.
from Captcha cracking in JavaScript with Canvas and neural nets
정말로 놀라운 것은 자바스크립트와 Canvas만 가지고도 크랙이 가능하다는 것입니다. ShaunF씨는 파일 호스팅 사이트인 Megaupload의 CAPTCHAS 암호를 자동으로 해독하는 GreaseMonkey 스크립트를 작성하셨습니다. 데모는 여기서 확인하실 수 있습니다.
John Resig씨가 이 스크립트를 분석하고 설명한대로, 몇 가지 재밌는 방법이 사용되었습니다.
- HTML 5 Canvas의 getImageData API를 CAPTCHA 이미지에서 픽셀 데이터를 가져오기 위해 사용했습니다. Canvas는 이미지를 포함할 수 있고, 그로부터 픽셀 데이터를 추출할 수 있습니다.
- 스크립트는 순수 자바스크립트로 작성된 신경망 구현체를 포함하고 있습니다.
- Canvas를 사용해 이미지로부터 추출한 픽셀 데이터는 신경망으로 전달되어 정확한 문자로 분리하고, 이 문자들은 광학 문자 인식(OCR)에서 사용됩니다.
from Captcha cracking in JavaScript with Canvas and neural nets
'[IT] Web Tech' 카테고리의 다른 글
FireScope: Firebug에 레퍼런스 추가하기 (0) | 2009.02.09 |
---|---|
Firefox Trunk에 체크박스 미정 상태 지원이 포함되다! (0) | 2009.02.07 |
최신 iPhone에 포함된 HTML5 기능; 응용프로그램 캐시와 데이터베이스 (0) | 2009.02.04 |
IE='\v'=='v' (0) | 2009.01.30 |
Canvas와 신경망을 사용한 자바스크립트로 하는 CAPTCHA 크래킹 (0) | 2009.01.29 |
IE8과 9버전에서 추가되는 기능은? (0) | 2009.01.28 |
웹 개발 프로젝트 평가하기 (0) | 2009.01.14 |
isArray : 배열인지 바로 알기가 왜 이리 어렵죠? (3) | 2009.01.13 |
자바스크립트 그래프 작성 도구 (1) | 2008.11.10 |
댓글을 달아 주세요