← 목록으로
스마트폰 홈 화면의 앱 아이콘과 브라우저 주소창을 나란히 놓고 접속주소를 대조하는 모습
Scam Verification

전용앱이 열어준 접속주소가 옛 도메인이었던 날: 앱 속 최신주소를 확인한 과정

주소창이 보이지 않는 전용앱 아이콘으로 반년을 접속하다, 앱 안에 박힌 접속주소가 옛 도메인이라는 것을 알게 된 실제 확인 과정. 토토사이트 주소를 앱 화면에서 꺼내 최신주소와 대조하고 도메인 변경 여부를 판정한 순서를 그대로 옮겼다.

By 이서연

3월에 설치한 아이콘 하나로 반년을 버텼다

홈 화면 두 번째 페이지에 있던 그 아이콘은 3월 14일에 설치한 것이었다. 주소가 바뀔 때마다 검색하고 글자를 대조하는 과정이 번거로워서, 한 번 설치해 두면 알아서 연결된다는 설명을 보고 전용앱 형태의 접속 경로를 쓰기 시작했다. 실제로 반년 가까이 불편이 없었다. 아이콘을 누르면 로딩 화면이 1초쯤 떴다가 익숙한 화면이 나왔고, 주소를 외울 일도 즐겨찾기를 손볼 일도 없었다.

편해진 만큼 확인은 사라졌다. 브라우저로 들어갈 때는 주소창에 뜬 글자를 최소한 한 번은 훑어봤는데, 앱에는 주소창 자체가 없으니 볼 것이 없었다. 지금 내가 어느 도메인에 연결돼 있는지 반년 동안 한 번도 확인하지 않았다는 사실은 문제가 생기고 나서야 알았다. 접속 경로를 편하게 만들수록 확인 단계가 조용히 함께 사라진다는 것이 이 일의 출발점이었다.

로그인 화면이 미묘하게 달랐던 저녁

9월 초 어느 저녁, 평소처럼 아이콘을 눌렀는데 로그인 화면의 여백이 조금 넓어 보였다. 처음에는 앱이 업데이트되면서 디자인이 바뀐 줄 알았다. 그런데 입력창 아래 안내 문구의 글꼴이 본문과 어긋나 있었고, 화면 맨 아래에 늘 붙어 있던 고객센터 운영시간 한 줄이 통째로 빠져 있었다. 큰 차이는 아니지만 반년 동안 매주 보던 화면이라 위화감이 남았다.

더 이상한 건 로그인 결과였다. 저장해 둔 계정 정보를 불러와 시도하니 비밀번호가 맞지 않는다는 메시지가 떴고, 두 번 더 시도해도 같았다. 평소라면 저장이 잘못됐나 싶어 재설정 버튼부터 눌렀을 텐데, 화면이 미묘하게 다르다는 감각이 겹치면서 손이 멈췄다. 계정 정보를 한 번 더 넣기 전에 이 화면이 어느 주소에서 오는지부터 봐야 한다는 판단이 그때 섰다.

그래서 세 번째 시도에서 입력을 멈췄다. 이미 두 번 넣은 뒤라 늦은 감이 있었지만, 그 시점부터 더 넣지 않는 것이 내가 통제할 수 있는 유일한 부분이었다. 앱을 완전히 종료하고 평소 쓰던 브라우저를 열었다. 화면이 어색하다는 느낌만으로는 아무것도 판정할 수 없으니, 근거로 삼을 수 있는 건 결국 주소 한 줄뿐이었다.

주소창이 없는 앱에서 접속주소를 꺼내는 방법

전용앱 대부분은 내부에 웹뷰를 띄워 웹페이지를 그대로 보여준다. 겉보기에는 앱이지만 안쪽은 브라우저와 같은 구조라서, 주소를 꺼낼 통로가 하나쯤은 남아 있다. 가장 먼저 볼 곳은 우측 상단이나 하단의 점 세 개 메뉴다. 여기에 브라우저로 열기, 공유하기, 링크 복사 같은 항목이 있으면 그 자리에서 현재 주소를 통째로 가져올 수 있다.

내가 쓰던 앱에는 그런 메뉴가 없었다. 대신 화면 안의 아무 링크나 손가락으로 길게 누르면 링크 주소 복사라는 항목이 뜨는 경우가 많아 그 방법을 썼다. 공지사항 목록의 첫 번째 제목을 2초쯤 누르고 있으니 팝업이 떴고, 링크 주소 복사를 눌러 메모 앱에 붙여넣었다. 이렇게 얻은 주소는 그 페이지의 링크지만, 앞쪽 도메인 부분은 지금 연결된 서버와 같다.

붙여넣은 문자열의 앞부분은 내가 알고 있던 이름과 달랐다. 기억 속 도메인에는 숫자 14가 붙어 있었는데, 화면에서 나온 주소에는 숫자 자리에 141이 들어가 있었고 하이픈 위치도 한 칸 앞으로 옮겨져 있었다. 이 단계에서 이미 앱이 나를 다른 곳으로 데려가고 있다는 건 분명해졌고, 남은 일은 그것이 정상적인 도메인 변경인지 아닌지를 가리는 것이었다.

복사한 주소를 브라우저에 붙여넣자 나온 두 번의 이동

메모에 저장한 주소를 PC 브라우저 주소창에 그대로 붙여넣고 열었다. 화면이 뜨기 전에 주소창 글자가 두 번 바뀌었다. 처음 입력한 주소가 광고 추적용으로 보이는 짧은 중계 도메인으로 넘어갔다가, 거기서 다시 최종 화면의 도메인으로 이동했다. 최종 주소 뒤에는 유입 경로를 표시하는 파라미터가 길게 붙어 있었고, 그 값 중 하나가 앱 설치 시점을 가리키는 문자열이었다.

중계를 한 번 거치는 구조 자체가 곧 사기라는 뜻은 아니다. 다만 정상적인 도메인 이전이라면 옛 주소에서 새 주소로 곧장 넘어가고, 중간에 성격이 전혀 다른 제3의 도메인이 끼어들 이유가 없다. 이동 경로에 등장한 도메인 세 개를 순서대로 메모에 적어 두는 것만으로도, 뒤에서 판정할 때 근거가 크게 늘어난다.

앱 속 접속주소는 설치한 날짜에 멈춰 있다

여기서 핵심은 앱이 주소를 어떻게 들고 있느냐다. 설치 파일 안에 주소를 통째로 박아 둔 방식이면 그 앱은 3월 14일의 주소를 계속 부른다. 이후 도메인이 세 번 바뀌었어도 앱은 모른다. 반대로 앱이 실행할 때마다 외부 설정 파일을 읽어 주소를 받아 오는 방식이면 최신 주소를 따라가지만, 그 설정 파일을 누가 관리하는지에 따라 통째로 다른 곳으로 돌려 보내는 것도 똑같이 쉽다.

내 경우는 앞쪽이었다. 앱 정보 화면에서 확인한 버전은 1.8.2였고 마지막 업데이트는 2월로 표시돼 있었다. 반년 넘게 손대지 않은 앱이 부르던 옛 도메인은 이미 만료돼 다른 사람 손에 넘어갔고, 새 주인이 그 트래픽을 통째로 중계 도메인으로 넘기고 있었다는 게 가장 앞뒤가 맞는 설명이었다. 만료 도메인은 짧으면 한 달 안에 재등록이 가능하다.

정식 스토어를 거치지 않고 파일로 받아 설치한 앱은 업데이트가 자동으로 이뤄지지 않고, 설치 과정에서 문자 수신이나 저장소 접근 같은 권한을 요구하는 경우가 있다. 주소를 편하게 열어 준다는 이유로 이런 권한을 넘기면, 잃는 것이 주소 하나로 끝나지 않는다.

최신주소와 한 글자씩 맞춰본 결과

다음으로 한 일은 앱과 무관한 경로에서 기준이 될 최신주소를 다시 확보하는 것이었다. 앱이 이미 의심 대상이므로 앱 안의 공지, 앱이 띄우는 팝업, 앱이 보내는 알림은 전부 근거에서 제외했다. 이전에 정상 접속하던 시절 브라우저 방문기록에 남아 있던 도메인을 찾아내고, 그 도메인이 지금도 살아 있는지부터 확인했다.

두 문자열을 메모장에 위아래로 붙여 놓고 한 글자씩 대조하니 차이가 두 군데였다. 숫자가 14에서 141로 늘었고, 하이픈이 한 칸 앞에 있었다. 눈으로 훑으면 같아 보이는 수준의 차이인데, 이런 형태는 사람이 기억으로 복원할 때 틀리기 쉬운 지점만 골라 바꾼 것에 가깝다. 글자 수가 같으면 특히 그렇다.

등록 11일, 인증서 9일이 말해준 것

판정을 굳히려고 도메인 등록정보를 봤다. 앱이 최종적으로 열어 준 도메인은 등록일이 11일 전이었고, 통신 암호화에 쓰이는 인증서 발급일은 9일 전이었다. 반면 방문기록에서 찾아낸 쪽은 등록 이력이 2년 넘게 이어져 있었고 인증서도 갱신 흔적이 여러 번 남아 있었다. 신생 도메인이라는 사실 하나로 결론을 낼 수는 없지만, 두 숫자가 나란히 열흘 안쪽이면 급하게 만든 창구일 가능성이 크다.

시간 순서도 맞춰 봤다. 로그인 화면이 이상해 보인 날은 9월 5일이었고, 등록일로부터 6일 뒤였다. 새 도메인이 만들어지고 며칠 안에 내 앱이 그쪽으로 흘러 들어갔다는 뜻이다. 도메인 변경 안내를 받은 적도, 앱이 업데이트된 적도 없는데 목적지만 바뀌었다면 남는 설명은 하나뿐이다.

결론을 뒤집어 보려고 확인한 세 가지

여기서 바로 단정하지 않고 반대 가능성을 세 번 눌러 봤다. 첫째, 실제로 도메인이 이전됐고 내가 안내를 놓친 것일 수도 있다. 그래서 방문기록의 옛 도메인을 직접 열어 봤는데, 그쪽은 정상 화면이 떴고 앱이 데려간 새 도메인을 어디에서도 언급하지 않았다. 진짜 이전이라면 옛 주소가 새 주소를 안내하지, 침묵하지 않는다.

둘째, 내 기기나 통신망 문제일 수도 있었다. 같은 앱을 다른 사람 휴대전화에서 열어 보니 동일한 신생 도메인으로 이동했고, 와이파이를 끄고 이동통신망으로 바꿔도 결과는 같았다. 기기나 망 문제라면 조건을 바꿨을 때 결과가 흔들리는데 전혀 흔들리지 않았으므로, 원인은 앱 안쪽에 있었다.

셋째, 화면이 달라 보인 게 착각일 가능성도 남아 있었다. 옛 도메인 쪽 로그인 화면과 앱 화면을 각각 캡처해 나란히 놓으니, 빠져 있던 운영시간 문구와 어긋난 글꼴이 그대로 드러났다. 세 가지 반증이 모두 무너지고 나서야 앱 속 주소를 가짜로 판정했다.

아이콘을 지우고 주소 관리 방식을 바꾼 뒤

가장 먼저 한 일은 앱 삭제가 아니라 비밀번호 변경이었다. 이상한 화면에 두 번 입력한 문자열이 이미 넘어갔다고 보고, 같은 비밀번호를 돌려 쓰던 다른 서비스 두 곳까지 함께 바꿨다. 그다음 앱을 지우고 기기에 남은 캐시와 자동완성 항목을 정리했다. 아이콘만 지우면 자동완성에 옛 도메인이 남아 손가락이 다시 그쪽으로 간다.

접속 방식도 되돌렸다. 지금은 브라우저 즐겨찾기 폴더 하나를 기준으로 두고, 폴더 안 첫 줄에 마지막 확인 날짜를 제목으로 적은 항목을 넣어 둔다. 앱은 완전히 버리지 않았지만 보조 경로로만 쓰고, 한 달에 한 번은 앱이 여는 주소를 링크 복사로 꺼내 즐겨찾기의 기준 주소와 글자를 맞춰 본다. 3분이면 끝나는 확인이다.

이 일에서 남은 건 앱이 위험하다는 결론이 아니다. 주소를 보여 주지 않는 경로는 그만큼 확인을 대신해 주지 못하니, 편의를 얻은 만큼 별도의 확인 지점을 스스로 만들어 둬야 한다는 쪽에 가깝다. 주소가 눈에 보이지 않는 경로일수록 대조 주기를 짧게 잡는 편이 결국 손이 덜 간다.

자주 묻는 질문

전용앱에는 주소창이 없는데 지금 접속 중인 주소를 어떻게 확인하나요?

앱 내부 메뉴에서 브라우저로 열기나 공유, 링크 복사 항목을 먼저 찾아보고, 없으면 화면 안의 링크를 길게 눌러 링크 주소 복사를 선택한 뒤 메모 앱에 붙여넣으면 도메인이 드러납니다.

앱이 여는 주소가 옛 도메인인지 아닌지는 무엇으로 판단하나요?

앱 정보 화면의 마지막 업데이트 날짜가 최근 도메인 변경 시점보다 앞서면 앱 안의 주소는 그 시점에 멈춰 있을 가능성이 큽니다. 앱과 무관한 경로에서 얻은 기준 주소와 글자를 대조해 확인하세요.

앱을 통해 이상한 화면에 로그인 정보를 입력했다면 어떻게 해야 하나요?

추가 입력을 즉시 멈추고 해당 계정의 비밀번호부터 바꾸되, 같은 비밀번호를 쓰던 다른 서비스까지 함께 변경해야 합니다. 앱 삭제는 그다음이며, 자동완성과 캐시에 남은 옛 도메인도 정리하세요.