피드로 돌아가기
Your App Is a Snitch: Why Mobile Security Is Broken and How We Fix It
Dev.toDev.to
Security

정적 로컬 포트 제거 및 Dynamic Ephemeral Architecture를 통한 앱 간 정보 유출 차단

Your App Is a Snitch: Why Mobile Security Is Broken and How We Fix It

Gerus Lab2026년 4월 15일6advanced

Context

모바일 앱 내 SOCKS Proxy 등 로컬 서비스가 Static Port와 인증 없는 IPC를 사용하여 주변 앱의 Localhost 스캔에 노출되는 보안 취약점 발생. Android의 네트워크 가시성으로 인해 VPN TUN 인터페이스 및 라우팅 테이블 정보가 외부로 유출되는 아키텍처적 한계 존재.

Technical Solution

  • 세션별 Random Port 및 Dynamic Credentials 생성으로 SOCKS Proxy의 예측 가능성 제거
  • Android W^X 제한 우회를 위해 실행 파일을 .so 라이브러리 형태로 패키징하여 배포
  • Predictable Path를 배제하고 File Descriptor를 직접 전달하는 방식으로 파일 시스템 노출 최소화
  • Broker 기반의 Dynamic Service Discovery 도입을 통한 일회성 토큰 및 단기 TLS 인증서 적용
  • Transport, Application, System 3계층의 독립적 보안 레이어를 구축하여 Fingerprinting 비용 증대

1. netstat 기반의 로컬 포트 감사 및 Static Port 제거

2. IPC 채널, 파일 경로, 임시 디렉토리의 Ephemeral 설계 적용

3. Localhost 통신 시에도 Mutual Authentication 및 일회성 토큰 도입

4. RKNHardening 등 툴을 활용한 앱 간 Fingerprinting 테스트 수행

5. OS 제공 보안 기능 외에 애플리케이션 레벨의 자체 Isolation 로직 구현

원문 읽기