"안드로이드 모바일 앱, 보안 취약점 평균 4.8개로 나타나"

  • 앱피타이저

    입력 : 2014.11.21 14:40

    우리나라에서 가장 많이 사용하는 안드로이드 모바일 앱이 평균 4.8개의 보안 취약점을 갖고 있는 것으로 나타났다.

    정보보안 전문 커뮤니티 시큐리티플러스(대표 박형근)가 11일부터 13일까지 국내에서 가장 많이 사용하는 국내외 안드로이드 모바일 앱 총 59개에 대한 보안 취약점을 점검한 결과 발견된 보안 취약점 총 개수는 286개로 평균 모바일 앱당 4.8개에 이른다고 전했다.

    가장 많이 발견된 취약점은 신뢰할 수 없는 입력에 의한 보안 결정 취약점인 사용자 입력값 검증 부재(26.9%)였다. 이 취약점으로 인해 모바일 앱의 비정상적인 상태(DoS) 유발하거나, 악의적인 코드 실행을 할 수 있는 메모리 오류 등이 발생할 수 있고, 보안 취약점 테스트 중 일부 앱에서는 메모리 오류가 발생했다.

    고위험군 보안 취약점 중 가장 많이 발견된 것은 중간자(MiTM) 공격에 의한 크로스사이트 스크립팅(XSS) 취약점이었다. 이 취약점은 중요 데이터 전송에 있어 암호화된 통신 채널을 사용하지 않거나, 내장 웹 브라우저 내에 자바스크립트가 활성화되어 있는 경우에 나타나게 된다. 이 취약점으로 인해 피해자의 중요 정보가 유출되거나 입력 혹은 트랜잭션 중인 데이터가 조작될 수 있다. 특히 금융 혹은 소셜 커머스 앱에서 중요 금융 데이터를 암호화한다고 해도 반드시 유의해야 할 취약점이다.

    그 외 간과하기 쉬운 취약점으로는 두 번째로 가장 많이 나온 취약점인  'android:allowBackup' 속성의 활성(True)이다. 이 속성값은 ADB(Android Debug Bridge)를 통해서 앱 백업과 복구를 가능케 하는 설정이지만, 백업된 앱을 악용해 앱 내의 민감한 정보를 유출할 수 있다. 모바일 앱 내에 민감한 정보를 저장해야 하는 경우 암호화 스토리지에 보관하는 방안 이외에도 ADB에 의한 백업을 허용하지 않아야 한다. 즉, 'android:allowBackup' 속성의 비활성(False) 적용을 해야 한다.

    두 번째로 간과하기 쉬운 취약점은, 보안 목적으로 랜덤 함수 호출 시 취약한 java.util.Random 혹은 java.lang.Math.random 함수를 사용해 공격자가 쉽게 이 앱에서 생성한 랜덤 숫자를 예측 할 수 있게 되는 것이다. 따라서 보안 목적으로 랜덤 함수를 사용할 때에는 반드시 java.security.SecureRandom 함수 혹은 보다 보안 강화된 랜덤 함수를 사용해야 한다.

    시큐리티플러스 박형근 대표는 "내년에는 모바일 보안 위협은 지금보다도 더욱 높아질 것으로 예상된다"며, "모바일 앱 개발에 있어서도 모바일 개발자에 대한 안전한 코딩 가이드 교육, 모바일 보안 라이브러리 활용, 지속적인 취약점 관리 등 모바일 분야에도 개발보안 라이프사이클 도입을 통해 보다 안전한 모바일 환경 만들어 나가야 한다"고 강조했다.

    이전 기사 다음 기사
    기사 목록 맨 위로