모바일 앱 보안 취약점 점검 무료 도구 소개

구글(Google)은 지난해 취약점을 찾아낸 '버그 바운티(기업의 서비스나 소프트웨어를 해킹하고 보안 취약점을 발견한 최초 신고자에게 포상금 등을 지급하는 제도)'로 1,000만 달러를 지불했다고 합니다. 인텔(Intel) 또한 버그 바운티를 통해 353개의 취약점을 해결했고, 국내에서는 모바일 금융 서비스 토스(Toss)에서 버그바운티 챌린지를 상시 운영하고 있습니다. 이렇듯 보안 취약점을 빠르게 파악하는 것이 매우 중요합니다.


하지만 예산이 녹록하지 않은 기업의 경우 막대한 비용을 들여 버그 바운티 프로그램을 운영하기 쉽지 않습니다. 대신 보안 취약점을 점검할 수 있는 무료 도구를 이용해 보완할 수 있습니다.


  1. MobSF(Mobile Security Framework)
    모바일 애플리케이션의 보안 취약점을 분석하고 검사하기 위한 오픈 소스 보안 도구입니다. 앱 보안 분석을 자동화하고 다양한 보안 취약점을 빠르게 식별할 수 있습니다. 바이너리 파일 분석, 소스 코드 리뷰, API 테스팅 등을 통해 모바일 앱의 보안 상태를 체크할 수 있습니다. 특히 APK 혹은 IPA 파일을 업로드하면 자동으로 분석하는 등 사용의 편리성을 제공합니다.  
    다만 효과적으로 사용하기 위해서는 적절한 환경 설정이 필수입니다. 동적 분석을 수행하기 위해 설정이 필요한 에뮬레이터나 특정 장치가 필요할 수 있어 초보자에게는 어려울 수 있어요.

    ▶ MobSF: https://github.com/MobSF/Mobile-Security-Framework-MobSF


  1. Drozer
    안드로이드 앱의 보안 취약점을 식별하고 평가하는 오픈 소스 보안 도구입니다. Drozer를 통해 개발자가 테스트하려는 디바이스에서 안드로이드 공개용 악성 공격자를 구현해 자신의 앱이 보안 공격에 어떻게 반응하는지 평가할 수 있습니다. 다만 사용과 설정이 다소 복잡해 초보자가 이용하기에는 조금의 어려움이 있고, 최신 안드로이드 버전과의 호환성 문제가 있어요.

    ▶ Drozer: https://github.com/WithSecureLabs/drozer


  1. Quick Android Review Kit(QARK)

    안드로이드 앱의 보안 취약점을 탐지하는 오픈 소스 도구입니다. 소스 코드 및 컴파일된 APK 파일 모두를 분석해 취약성을 확인할 수 있습니다. 에뮬레이터나 실제 디바이스를 테스트하기 위해 ADB 명령을 실행할 수 있는 것이 강점입니다. 

    또한 실시간 디버깅 및 로깅이 가능해 테스트 중 발생하는 문제 감지 및 분석을 실시간으로 할 수 있습니다. QARK는 안드로이드 환경에만 초점이 맞춰져 있으며, 오픈 소스 특성상 사용할 때 보안 전문 지식이 요구될 수 있습니다.

    ▶ QARK: https://github.com/linkedin/qark


  1. Zed Attack Proxy(ZAP)

    OWASP(Open Web Application Security Project)에서 개발한 웹 애플리케이션 보안 취약점을 체크하기 위해 설계된 오픈 소스 도구입니다. 모바일의 앱이 백엔드 서버와 통신할 때 웹 기반의 API를 사용하기에 앱 보안 분석에도 간접적으로 활용 가능합니다. ZAP을 활용해 공격을 시뮬레이션하고 백엔드 서버의 취약점을 테스트해 볼 수 있습니다. SQL 인젝션, 크로스 사이트 스크립팅(XSS) 등 취약점을 확인합니다. 

    ZAP은 주로 웹 애플리케이션 보안 취약점을 찾기 위해 설계돼 모바일 애플리케이션 측면에서 활용하기 위해서는 다른 툴과 함께 활용할 수 있어야 합니다.

    ▶ ZAP: https://github.com/zaproxy/zaproxy


  1. Android Debug Bridge(ADB)

    Android SDK Platform-Tools 패키지의 일부로 안드로이드 개발과 디버깅에 사용되는 도구이면서, 보안 담당자에게는 안드로이드 디바이스의 취약점을 파악하고 시스템 보안 상태를 확인하는 툴로 활용할 수 있습니다. 클라이언트, 데몬, 서버 등으로 구성되어 있고 각각 안드로이드 디바이스와 통신하는 데 활용됩니다. 

    클라이언트에서 명령을 보내 개발 시스템 혹은 모바일 디바이스에서 실행하고 터미널을 통해 호출될 수 있습니다. 데몬은 백그라운드 프로세스로 클라이언트로부터 명령을 받아 처리해 디바이스 측에서 실행합니다. 서버는 개발 시스템에서 실행돼 클라이언트의 통신을 관리합니다. 

    이러한 ADB 요소를 활용해 USB, Wi-Fi, Bluetooth, 기타 네트워킹 프로토콜을 통해 디바이스 시스템 이벤트를 실시간으로 모니터링할 수 있습니다. 하지만 네트워크를 통해 ADB 연결이 이루어질 때 암호화되지 않은 통신으로 인해 중간자 공격(MITM)에 취약합니다. 또한 ADB를 통한 데이터 전송은 암호화되지 않기 때문에 각별히 유의해야 해요.

    ▶ ADB: https://developer.android.com/tools/adb?hl=ko


* 원문 출처👇

가성비 있게 보안 취약점에 대응하는 방법 - 앱실링

www.appsealing.com

가성비 있게 보안 취약점에 대응하는 방법 - 앱실링

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2024년 3월 15일 오전 5:22

 • 

조회 176

댓글 0