분석일: 2026-05-16
분석자: Deep_Coding Lab
버전: v2.0 (Phase 2 C2 침투 성공)
항목 · 값
앱 이름 (배포) · PenHa (동네친구/애인만들기 위장)
앱 라벨 (설치 후) · Pens
패키지명 (선언) · com.androie.cijwudacom
패키지명 (실제) · com.pusbscovqp.ncyevxoi
버전 · 3.02.1 (code: 3029)
파일 크기 · 14.8 MB
Min SDK · 29 (Android 10)
Target SDK · 34 (Android 14)
SHA256 · 586f28efb7fbc601fa2302bc7f48a1cdfa685537d5f860b097ee972048068757
MD5 · 244b29ad410e28d9afff7a9e29af429d
패밀리 · wavegrid_gen_g
```
[피해자] → [비공개] (미끼 사이트, Nuxt.js)
→ [비공개] (로더/라우터)
→ [비공개] (배포 플랫폼, Vue+Vant)
→ [비공개] (APK CDN)
```
```json
{
"zhongguo": ["[비공개]", "[비공개]", "[비공개]"],
"jingwai": ["[비공개]", "[비공개]"],
"yange": ["[비공개]", "[비공개]"],
"zhongzhuan": ["[비공개]", "[비공개]"]
}
```
역할 · 도메인
미끼 (한국어 랜딩) · [비공개]
이미지 CDN · [비공개]
로더/라우터 · [비공개]
배포 플랫폼 · [비공개]
APK CDN · [비공개]
iOS CDN · [비공개]
중국 국내 CDN · [비공개]
중계 서버 · [비공개]
항목 · 값
URL · [비공개]
IP · [비공개]
프레임워크 · RuoYi 3.8.5
프론트 제목 · 个人网盘管理系统
인증서 CN · [비공개]
인증서 발급 · Let's Encrypt R13 (2026-04-29)
캡챠 · 활성화
상태 · LIVE (2026-05-16 확인)
Method · Endpoint · 용도
POST · [비공개] · 초대코드 로그인 (name=코드, cId=UUID)
POST · [비공개] · 연락처 탈취 (**code:200 수신 확인**)
POST · [비공개] · 이미지/영상 업로드 (**code:200 수신 확인**)
POST · [비공개] · SMS 탈취 (**code:200 수신 확인**)
GET · [비공개] · 관리자 캡챠
GET · [비공개] · [비공개] API 문서 (무인증)
GET · [비공개] · [비공개] 리소스 (무인증)
· READ_CONTACTS — 연락처 전체 읽기
· READ_MEDIA_IMAGES — 갤러리 이미지
· READ_MEDIA_VIDEO — 갤러리 영상
· READ_EXTERNAL_STORAGE — 외부 저장소
· READ_PHONE_STATE — 기기 정보
· READ_PHONE_NUMBERS — 전화번호
· INTERNET — 네트워크
1. 연락처 → saveAddressBook API
2. 이미지 (jpeg, png, webp, gif) → image/ API
3. 영상 → image/ API (multipart upload)
4. 전화번호 → 기기 정보와 함께 전송
· HttpUtil.uploadAsync() — 단일 파일
· HttpUtil.uploadMultiAsync() — 다중 파일 배치
· Content-Type: multipart/form-data
1. 피해자가 [비공개] 링크 수신 (문자/SNS)
2. "PenHa" 소셜앱으로 위장된 페이지에서 설치 유도
3. APK 설치 후 초대코드 입력 (LoginActivity)
4. 권한 요청 (연락처, 사진, 영상)
5. HomeActivity에서 자동 탈취:
· 연락처 전체 → C2 전송
· 갤러리 사진/영상 → C2 업로드
6. 운영자가 탈취한 영상으로 협박, 연락처로 유포 위협
취약점 · 설명
Cleartext Traffic · `network_security_config`에서 HTTP 허용
Hardcoded C2 URL · smali 코드에 하드코딩 (동적 분석 불필요)
이름 난독화만 적용 · 패킹/암호화 없음, 문자열 평문 노출
· SHA256: 586f28efb7fbc601fa2302bc7f48a1cdfa685537d5f860b097ee972048068757
· MD5: 244b29ad410e28d9afff7a9e29af429d
```
[비공개] (C2)
[비공개] (같은 서버 다른 도메인)
[비공개] (미끼)
[비공개] (로더)
[비공개] (배포)
[비공개] (CDN)
[비공개] (iOS CDN)
[비공개] (중국 국내)
[비공개] (해외)
[비공개] (중계)
```
· [비공개]
· com.androie.cijwudacom (선언)
· com.pusbscovqp.ncyevxoi (실제 코드)
· wavegrid_gen_g 패밀리 (losh 앱과 동일 CDN [비공개])
· 베란다 작전 서버와 동일 RuoYi 个人网盘管理系统 템플릿
· IP 서브넷 104.233.156.x: ML(wavegrid), fileq(wavegrid)와 공유
🔬 기법 점검:
· 시도한 기법: NW-031 (data_char XOR 0x8B), NW-035 (4그룹 14도메인 CDN), NW-080 (cross-pool 코드 재사용), OA-089 (초대코드 방어기제 무력화)
· 확장된 기법: NW-031에 XOR 키 역산법, NW-035에 4그룹 분류. smali 필드 매핑 역분석으로 name↔cId 교정
· 신규 기법: 없음 (기존 기법 조합으로 C2 침투 성공)
· 한계 발견: 코드-UUID 페어링으로 새 UUID 등록 불가 (기존 등록된 UUID만 사용 가능). 관리자 비밀번호 미확보.
> 침투·역공 등 민감 분석 섹션은 비공개입니다. 피해 상담·전체 열람 문의: [비공개]
본 보고서는 주식회사 아크링크 Deep-Coding 보안연구소가 피싱·몸캠피싱 피해자 구제를 목적으로 작성했습니다. 전체 열람·피해 상담: arklink.co.kr