By Aram Lee (A.K.A InPure)
aramlee@a3security.com
I. 서론
2009년 12월부터 판매된 iPhone에 대한 관심이 뜨거워지면서 보안 위협에 대한 우려도 커지고 있습니다. iPhone을 대상으로 한 공격에 대한 고민을 하던 도중 BarCode에 XSS, SQL Injection 공격 스크립트를 심는 기법을 소개한 글을 보았습니다. (http://www.irongeek.com/xss-sql-injection-fuzzing-barcode-generator.php)
미국에서 널리 쓰이는 iPhone 어플 중에 증강현실의 일종으로 BarCode를 인식하여 인터넷 쇼핑몰에서 최저가를 검색한 결과를 보여주는 어플이 있습니다. 이를 이용하여 BarCode(QRCode)+Mobile+Phishing의 조합으로 이루어진 새로운 형태의 피싱 시나리오를 작성하게 되었습니다.
휴대폰으로 BarCode/QRCode를 인식하는 기능은 예전부터 지원하는 기능이었습니다. 하지만, 스마트폰의 확산으로 BarCode/QRCode를 보다 널리 사용하게 될 것으로 예상됩니다.
본 시나리오는 iPhone에만 국한되지 않고 바코드를 인식하는 어플이 있는 모든 스마트폰이 대상입니다.
II. 본론
본 시나리오의 도식도는 다음과 같습니다.
공격자는 피싱사이트의 URL 정보가 포함된 바코드를 이벤트 페이지로 가장하여 다음의 이벤트 홍보문을 배포합니다.
사용자는 이벤트에 참가하고 싶어 이벤트 홍보문에 있는 QRCode를 인식하여 이벤트 페이지에 접속합니다.
응모가 완료되었다는 메시지를 보고 사용자는 이벤트에 응모가 되었다고 생각할 것입니다. 그러나 실제로는 피싱사이트에 개인정보가 수집되고 있습니다.
III. 결론
보이스 피싱, 메신저 피싱 등 새로운 형태의 피싱이 계속 나오고 있는 추세로 볼 때 스마트폰의 확산으로 모바일이 피싱의 새로운 형태가 될 가능성이 높습니다.
일반적으로 모바일 페이지는 웹보다 간단하게 구성되어 있어 피싱사이트를 구축하기가 용이한 특성도 모바일 피싱 확산의 요인이 될 것입니다.
피싱 공격뿐만 아니라, 악성코드 (트로얀, 웜/바이러스, DDoS Bot 등) 배포 등의 공격 가능성도 존재합니다.
IV. 대응방안
1) 먼저 개발자는 BarCode/QRCode 인식 후 BarCode/QRCode에 포함되어 있는 URL 주소로 바로 Redirect하면 안됩니다. BarCode/QRCode에 포함된 URL을 사용자에게 보여주어 사용자의 확인을 받아 해당 URL로 연결하는 방식으로 개발해야 합니다.
2) 입력값에 XSS나 SQL Injection 등에 이용되는 스크립트가 포함되어 있으면 차단하는 기능을 추가해야 합니다.
3) 사용자는 수상한 BarCode/QRCode인지 확인하고, 어플로 BarCode/QRCode 인식 후 URL이 안전한 URL인지 확인해야 합니다. 그리고 신뢰할 수 없는 URL에 자신의 정보를 남기지 않도록 해야 합니다.
[참고사이트]
http://www.irongeek.com/xss-sql-injection-fuzzing-barcode-generator.php
http://www.science.go.kr/center/kor/html/cyber/theme/livingscienec/theme1_5409.html
http://www.scany.net/kr/generator/barcodeQrcode.php
http://www.scany.net/kr/generator/ [바코드생성]
※ 현재 ㈜에이쓰리시큐리티에서 테스트 및 분석 중에 있으며, 이 문서는 계속 업데이트될 것입니다. 본 문서는 보안취약점으로 인한 피해를 최소화하는 데 도움이 되고자 작성되었으나, 본 문서에 포함된 대응방안의 유효성이나 기타 예상치 못한 시스템의 오작동 발생에 대하여서는 ㈜에이쓰리시큐리티에서는 일체의 책임을 지지 아니합니다.