2006년 12월 18일 월요일

AJAX와 개인정보피싱

AJAX 프로그래밍을 하다보니 찜찜한 것들이 있습니다.


전통적인 Web 개발에서는 페이지 단위 상태라는 오토마타를 따르기 때문에 문제가 없었는데, AJAX와 브라우저의 자동입력 기능이 합쳐지면 개인정보보안상 큰 구멍이 생길 수도 있겠더군요.


AJAX를 이용하면 사용자가 Form서브밋을 하지않더라도 강제로 Form 서브밋을 하게 할 수 있습니다. 예를 들어, input field에 onChange 이벤트를 감시하고 있다가 내용이 바뀌면 HTTPRequest를 이용해 사용자 몰래 데이터를 서버로 보낼 수 있겠지요.


물론, 정상적인, 신뢰할 수 있는 사이트에서는 그럴 일이 없겠지만, 악의를 가진 피싱 사이트에서라면 얼마든지 이를 응용해서 사용자 정보를 채갈 수 있을 듯 합니다. 사용자는 그저 페이지를 열어본 것 뿐인데도 말이지요.


대부분의 자동입력기능은 field의 name을 가지고 판단합니다. 인기있는 사이트들의 페이지를 열어보면, 어떤 field name을 채와야 할지 알 수 있습니다.


그리고는 겉으로 보기에는 아무런 해가 될 것 같지 않은 페이지를 사용자에게 보내는 것이지요. 설문조사나 경품안내 등의 껍데기를 하구요.


(* 블로그 이전으로 예전 샘플 사라짐 *)

설문조사를 작성하면서 필드간에 이동을 위해 Tab을 누른 사용자는 자신도 모르게 자신의 email을 납치당합니다.


혹은 좀 더 직접적인 방법으로 유혹할 수도 있겠지요. "이건 그냥 샘플입니다. 타이핑만 하세요. [확인]버튼을 누르실 필요는 없습니다."


이 코드가 실제로 그렇게 피싱이 가능한지는 잘 모르겠습니다. 다만 가능성이 있는 것 같은데 다른 분들은 어떻게 생각하세요?

댓글 없음:

댓글 쓰기