AppSuit Air — IPA 업로드만으로 적용하는 SaaS 보안 솔루션
AppSuit Premium 보안 기능을, 호스트 앱 빌드 통합 없이 IPA 업로드만으로 적용하는 SaaS 보안 솔루션 — iOS 1인 단독 개발
언어
- Swift
- Objective-C
- Python3
기술
- Mach-O
- LIEF
- Binary Instrumentation
- Dynamic Library Injection
- Code Signing
- Fat Binary
환경
- Xcode
- Hopper
- Mach-O Viewer
- Hex Edit
- PyCharm
AppSuit Premium의 보안 기능을, 호스트 앱 빌드에 통합하지 않고 IPA 업로드만으로 적용하는 SaaS 보안 솔루션입니다. 협업 프로젝트에서 iOS 파트를 혼자 맡아 기획부터 인수인계까지 진행했습니다.
배경·과제
-
기존 Premium은 고객사가 자사 앱 프로젝트에 정적 라이브러리를 직접 추가하고 빌드 설정까지 수작업으로 구성해야 했습니다. 통합에 개발 리소스와 시행착오가 따르는 구조였습니다.
-
단순히 적용 편의를 개선하는 일이 아니라, framework 추가만으로 적용할 수 있는 보호 기능의 범위를 넓히는 것이 핵심 과제였습니다.
수행·기여 (iOS 1인 단독)
-
고객사가 하던 정적 라이브러리 통합과 빌드 설정 수작업을, 업로드된 IPA를 후처리로 가공하는 방식으로 대체하는 아키텍처를 설계하고 구현했습니다.
-
외부 IPA의 Mach-O 바이너리에 임의 섹션을 삽입하는 빌드 후처리 가공 기술을 설계해, 문자열 암호화·API 호출 은닉 같은 보호 기능을 framework 내부로 옮겼습니다.
오픈소스 한계 돌파 (LIEF)
-
바이너리 조작 오픈소스 LIEF가 Fat Binary 재저장 시 cstring offset이 어긋나고 임의 섹션 추가에 제약이 있는 한계에 막히자, 라이브러리에 기대지 않고 자체 구현으로 넘었습니다.
-
문자열 참조 구조를 깨뜨리지 않고 재배치하는 무파괴 보정 기법을 직접 구현했습니다. 이 돌파가 SaaS 출시의 핵심 기반이 됐습니다.
-
framework를 우회해 적용하려는 시도를 차단하는 무결성 보호 메커니즘을 설계했습니다.
-
서버 연동·테스트·패키징까지 iOS 전 과정을 혼자 수행해 7개월 만에 제품화했고, 후속 담당자에게 인수인계했습니다.
성과
-
정적 라이브러리 통합과 빌드 설정 수작업 없이 IPA 업로드만으로 보안 SDK를 도입할 수 있게 되어, Premium 적용 가능 영역이 도입 고객 전반으로 넓어졌습니다.
-
빌드 후처리에 의존하던 보호 기능(문자열 암호화·API 호출 은닉·리소스 복호화)을 framework 내부로 내재화했습니다.
-
카카오톡·유튜브 같은 일반 상용 앱 IPA에도 적용할 수 있음을 검증해, 적용 범위를 자사 통합 앱 밖으로 넓혔습니다.