Android
앱 취약점 - < 안전하지 않은 HTTP 통신 > 분석
Ate1es
2021. 8. 19. 15:15
취약점 개요
HTTP 프로토콜은 설계를 할 때 보안을 고려하지 않고 설계하기 때문에 데이터 통신을 하는 과정에서 정보 전송 시 평문이 노출됩니다. 공격자는 스니핑/스푸핑 공격을 이용하여 사용자들의 입력값을 탈취할 수 있습니다.
중요 정보는 SSL/TLS 통신을 적용하여 암호화된 데이터로 안전하게 보내야 합니다.
취약한 HTTP를 이용한 데이터 전송은 OWASP Mobile TOP 10의 M3: Insufficient Transport Layer Protection 에 해당하는 취약점으로, 안드로이드 애플리케이션 간 통신 시 중요 정보를 평문으로 전송할 때 발생합니다.
취약점 분석
해당 취약점은 Burp Suite Tool을 사용하여 패킷을 프록시로 잡아 분석해보겠습니다.
프록시서버에 연결 후 인시큐어뱅크 앱에 로그인을 시도하자, 사용자의 ID와 password가 평문으로 그대로 패킷에 노출되어 있습니다. 이 경우 공격자가 패킷을 스니핑하기만해도 사용자의 계정과 비밀번호를 탈취할 수 있게되는 아주 취약한 상태입니다.
계좌이체 페이지에서도 마찬가지로 계좌정보와 송금액 등 다양한 정보가 평문으로 그대로 노출되어 있습니다.
취약점 대응 방안
이 취약점은 통신 간 암호화를 적용하지 않은 것으로, 중요한 정보, 세션 토큰, 기타 민감한 정보를 전송할 때는 SSL/TLS 암호화를 적용해야 합니다.