MAST — 모바일 앱 취약점 점검 자동화 솔루션
AppSuit의 ‘처방’ 앞단에 비어 있던 ‘점검’ 시장을, 사내 동적 탐지 자산을 재활용해 착수비용을 줄이면서 메운 자동 진단 PoC — 금보원 19개 항목을 진단 매트릭스로 구조화, GUI·CLI 투트랙 1인 기획
언어
- Swift
- Python3
기술
- Frida
- libimobiledevice
- Binary Instrumentation
환경
- Xcode
- PyCharm
Stealien의 신규 개념 검증(PoC) 제품 ‘모바일 앱 취약점 점검 자동화 솔루션(MAST)’을 혼자 기획했습니다. 구상, 경쟁 분석, 일정 산정까지 전 과정을 1인 트랙으로 끌었습니다.
배경·과제
-
AppSuit 제품군은 이미 배포된 앱을 보호하는 ‘처방’ 포지션이라, 그 앞단에서 자사 앱의 취약점을 미리 점검하려는 ‘점검’ 수요가 비어 있었습니다.
-
진단 결과를 AppSuit 도입으로 연결하는 ‘점검 → 처방’ 흐름도 없었습니다.
-
금융보안원 모바일 앱 평가 항목(19개 + 상세 시나리오)을 충족하는 자동 진단 도구가 필요했습니다.
수행·기여
-
제품 구상, 설계, 경쟁 분석, 일정 산정을 혼자 작성해 팀 공유본으로 만들고, 기능별 일정 워크시트까지 정리했습니다.
-
제공 방식은 두 갈래로 설계했습니다. 자동화 파이프라인·CI 통합용 명령줄 도구(CLI, Python/JS)와 비개발자용 그래픽 화면(GUI, macOS·Windows, Swift+JS)입니다.
-
입력은 Development 서명된 IPA, 출력은 매트릭스·상세·샘플 화면이 담긴 진단 보고서로 정의했습니다.
-
진단 기술 스택은 네 축으로 구성했습니다.
-
정적 분석(SAST): Mach-O 파싱과 사내 노하우 재활용.
-
동적 분석(DAST): 실행 중인 앱의 동작 관찰·계측.
-
입력 변조 시험: 외부 입력 경로 조작으로 결함을 유도하는 fuzzing.
-
디바이스 제어: libimobiledevice로 설치와 로그 수집 처리.
-
금융보안원 19개 항목을 분류·항목명·평가 설명·검증 절차·자동화 가능 여부의 5속성으로 구조화하고, 항목별 자동화 가능성을 판정했습니다.
-
‘금보원 평가 항목 → 경쟁 제품 기능 → MAST 기능’의 3열 대응 매트릭스를 만들고, 자동/수동 검사 구분도 같은 구조로 설계했습니다.
-
GUI 흐름은 IPA를 끌어다 놓으면 시나리오별 pass/fail이 즉시 표시되고, 보고서 출력 뒤 ‘AppSuit 옵션으로 보호 가능’을 교차 제안하는 형태로 잡았습니다.
성과
-
금융보안원 19개 평가 항목 매핑과 자체 시나리오, 경쟁 제품 비교 매트릭스, GUI·CLI 제공 방식, 약 6개월 일정 산정까지 전 과정을 혼자 완성했습니다.
-
진단이 끝나면 ‘AppSuit으로 보호 가능’ 제안으로 자연스럽게 넘어가도록 설계했습니다. 점검 도구 자체가 영업 자산이 되고 결과는 AppSuit 판매로 이어집니다.
-
사내 동적 탐지 기술 대부분을 재활용해 착수 시 개발 비용을 줄일 근거를 확보했습니다.
-
2025년 하반기 착수 예정이었으나 Premium·AppSuit Air 우선순위에 밀려 보류됐고, 2026년 Premium 안정화와 AppSuit AIModel PoC 완료 후 재검토 예정입니다. 금보원 항목 구조화, 경쟁 분석 매트릭스, 제공 방식 권고안은 재사용 가능한 자산으로 남겨 두었습니다.