피싱사이트란 주로 금융권 사이트와 전자상거래 사이트가 주 타겟이 되어 있으며, 방법은 다음과 같습니다.
  1. 호스트이름이 완전히 다르거나 IP로 되어 있지만, 보여지는 내용이 동일하게 구성함
  2. 호스트 이름을 비슷하게 만들어 속이는 경우.
  3. hosts 파일을 수정하여 호스트 접속 재전환 (트로이목마 감염 및 1회 필요)
  4. 소켓 관련 라이브러리 치환을 (DNS요청을 바꾸는 방법등으로) 통해 접속 재전환(트로이목마 감염 및 상주)
  5. 필터 드라이버에 설치되어 호스트 접속 재전환 (트로이 감염 및 상주 필요)
1,2 번의 경우는 주소가 보이는 상황에서라면 눈으로 쉽게 알 수 있습니다.
3~5의 경우 hostname을 브라우져로서는 알 수 없기 때문에, 쿠키 정보등이 그대로 전송될 수 있기 때문에 쉽게 알아 낼 수 있는 방법이 없습니다.

상용 안티피싱의 경우 위와 같은 변경사항을 확인하며 바뀌는지 알아내는 방법으로 사용자에게 경고를 합니다.

이런 상황을 가정하고 사이트에 접속하여 자신의 로그인 정보를 전송할 경우 자신이 접속한 사이트가 정말 올바른 사이트인지 알 수 있는 방법은 다음과 같습니다.
  • 안전할 때, 쿠키를 설정하여 정확히 그 사이트에 들어왔을 때에만 쿠키가 전송되도록한다.
  • 쉽게 추측할 수 없는 주소에 이미지를 업로드해 두고, 해당 쿠키가 전송될 경우에만 이미지를 내려보내준다.
  • 로그인 할 때, 아이디와 상관없이 항상 그 이미지를 보여주어 해당 이름의 사이트에 접속했는지 알도록 한다. 안보이면 피싱!
위의 예는 1,2 번의 시도가 들어왔을 경우 사용자로 알기 쉽게하는 방법입니다. 늘 같은 위치에 정해진 그림이 있어야만 안심하도록 사용자 스스로 길들인다면, 그림이 달라졌을 때 피싱되었는지를 알 수 있게됩니다. 다만, 기술에서도 보았듯이 사용자에게 한 정된 것이 아니라 해당 PC, 브라우져에 한정된 것이므로, 같은 PC/같은 계정/같은 브라우져를 사용하는 사람은 같은 이미지가 로그인할 때 보이게 됩니다.

사람이 눈으로 비교하는 것을 이미지로 구별하자는 것이 이 아이디어의 핵심입니다.

여기에도 물론 3,4,5는 막을 수 없는 취약점이 있습니다. 트로이 목마로 피싱하는 경우 호스트이름이 같게되어 쿠키가 전달되기 때문에, 그 쿠키로 피싱사이트에서 적절한 PC인것처럼 본 사이트에서 이미지를 가져 올 수 있게 됩니다.

피싱하는 사람에게 약간 상황을 어렵게 만들어 기술적인 장벽을 만드는 것이라 할 수 있겠습니다. 아뭏든 이번에 소개하는 이 기술도, 뭔가 공부해야 이해할 수 있는 기술입니다. 아놔... 쉬운 개념 없나!?

관련 사이트:
http://protect.login.yahoo.com/login/set_pref/
https://www.myopenid.com/set_cookie_image

신고
크리에이티브 커먼즈 라이선스
Creative Commons License

+ Recent posts