DNS의 목적은 사기를 퍼뜨리는 일이라는 불편한 진단

8천5백만 개의 신규 gTLD 중 10퍼센트 이상이 사기라는 측정치를 따라가며 DNS 남용 구조와 엔지니어가 볼 지점을 해설합니다.

원문 논문 보기
'DNS의 목적은 사기를 퍼뜨리는 일이라는 불편한 진단' 기사 커버 이미지

노시욱 (Patrick Rho) · AI 연구 해설

Simon Willison이 2026년 9월 6일에 올린 짧은 글 The purpose of DNS is to spread scams를 다룹니다. 이 글은 Terence Eden의 문제 제기와 Interisle 보고서를 인용합니다. 원문 링크는 제목 아래에 표시됩니다. 주장은 한 문장으로 정리됩니다. 새로 등록되는 gTLD 도메인 다섯 개 중 하나 정도가 사기이거나 악성일 만큼 DNS가 범죄 확산 통로로 쓰이고 있다는 것입니다.

저는 이 글을 처음 읽고 잠시 멈췄습니다. DNS는 인터넷에서 가장 오래되고 가장 단단한 기반 시설에 속합니다. 주소를 찾아주는 전화번호부라는 설명은 교과서에 나옵니다. 그런데 누군가 그 전화번호부의 목적 자체가 사기를 퍼뜨리는 일이라고 말합니다. 과장처럼 들립니다. 숫자를 보고 나면 과장이라고 치부하기 어려워집니다. 제가 이 글에서 가장 흥미롭게 본 부분은 거친 표현이 아니라 그 뒤에 있는 측정 방식입니다. 2025년에 새로 등록된 gTLD가 8천5백만 개이고, 그중 8백5십만 개가 2025년 5월까지 차단 목록에 올랐다는 대목입니다. 단순한 인상 비평이 아닙니다. 등록과 차단이라는 두 개의 기록을 맞붙인 관찰입니다.

전화번호부라는 설명이 더는 통하지 않는 지점

DNS를 전화번호부에 비유하는 말은 오랫동안 편했습니다. 이름을 번호로 바꿔주는 얌전한 인프라라는 그림입니다. 이 비유가 놓치는 부분은 등록이라는 행위입니다. 전화번호부는 누군가 이름을 올리는 순간부터 시작됩니다. 지금 gTLD 쪽에서 벌어지는 일은 이름이 너무 빠르고 너무 싸게 올라간다는 것입니다. 2025년 한 해에 8천5백만 개가 새로 등록됐다는 숫자는 그 속도를 보여줍니다. 저는 이 숫자보다 그 뒤의 구조가 더 중요하다고 봅니다. 등록은 자동화되어 있고, 비용은 낮고, 실패해도 잃을 것이 적습니다. 공격자 입장에서 도메인은 아껴 쓰는 자산이 아닙니다. 쓰고 버리는 소모품에 가깝습니다.

일반 독자에게 gTLD를 짧게 풀어두겠습니다. com이나 net, org 같은 일반 최상위 도메인과 그 뒤에 늘어난 수많은 새로운 끝자리들을 함께 부르는 말입니다. shop이나 xyz처럼 낯익은 것도 있고, 전혀 본 적 없는 문자열도 있습니다. 선택지가 넓어진 것은 사용자에게 편리합니다. 동시에 공격자에게는 피싱 문구를 도메인에 그대로 박을 수 있는 재료가 늘어났다는 뜻입니다. 은행 이름과 비슷한 철자, 배송 조회처럼 보이는 문구, 결제 오류처럼 보이는 문구가 도메인 한 줄에 들어갑니다. 브라우저 주소창을 유심히 보지 않는 사람에게는 충분히 그럴듯해 보입니다.

8천5백만 개 중에서 8백5십만 개가 막혔다는 말의 무게

숫자를 천천히 뜯어보겠습니다. Interisle 보고서 인용 수치로 2025년 신규 gTLD 등록이 8천5백만 개입니다. 그중 8백5십만 개가 2025년 5월까지 차단 목록에 추가됐습니다. 5월 기준이니 연말까지 숫자는 더 불어날 여지가 있습니다. 8백5십만을 8천5백만으로 나누면 10퍼센트가 나옵니다. 보고서가 10퍼센트를 바닥으로 본다는 표현이 그래서 나옵니다. 이미 확인된 것만 10퍼센트라는 것입니다.

저는 여기서 조금 의심했습니다. 차단 목록은 사후 기록입니다. 누군가 피해를 봤거나, 탐지 시스템이 돌다가 걸렸거나, 신고가 들어온 뒤에 이름이 오릅니다. 탐지가 완벽하지 않다면 실제 악용은 목록보다 클 수밖에 없습니다. 보고서가 진짜 수치는 20퍼센트에 가까울 수 있다고 말하는 대목이 이 지점과 연결됩니다. 다섯 개 중 하나라는 말은 그래서 나온 추정치입니다. 확정된 사실이라기보다 측정 한계를 감안한 해석에 가깝습니다. 여기서는 조금 조심해서 읽을 필요가 있습니다. 10퍼센트는 관측이고, 20퍼센트는 판단입니다. 둘을 같은 선에 두면 안 됩니다.

이미지 1: 전화번호부라는 설명이 더는 통하지 않는 지점
DNS 계층 구조가 사기 사이트를 양산하는 깔때기로 바뀌는 모습을 그린 그림

실제 시스템 관점에서 보면 다음 질문이 바로 생깁니다. 차단 목록에 오르기까지 걸리는 시간은 얼마나 될까. 그 사이에 몇 명이 그 도메인을 방문할까. 도메인 하나가 살아 있는 시간이 며칠에 불과하다면 차단은 범인을 잡는 일이 아니라 흔적을 지우는 일이 됩니다. 공격자는 이미 다음 도메인으로 옮겨갑니다. 이런 구조에서는 차단 건수가 늘어난다는 사실 자체가 방어가 잘된다는 신호가 아닙니다. 유입이 그만큼 많다는 신호에 가깝습니다.

10퍼센트는 바닥이라는 말이 무서운 이유

바닥이라는 단어는 엔지니어에게 익숙합니다. 하한을 말할 때 씁니다. 10퍼센트가 하한이라는 말은 실제는 그보다 낮을 수 없다는 뜻입니다. 보고서의 태도는 분명합니다. 지금 보이는 것만 세어도 10퍼센트이고, 안 보이는 것을 감안하면 20퍼센트 안팎을 봐야 한다는 것입니다. 저는 이 숫자보다 그 뒤의 구조가 더 중요하다고 봅니다. 바닥이 높다는 것은 제도가 아니라 체질에 가깝다는 뜻이기 때문입니다. 가끔 터지는 사고가 아니라 매일 돌아가는 생산 라인이라는 것입니다.

다섯 개 중 하나라는 표현을 일상적인 장면에 대입해 보겠습니다. 새로 열린 상가 다섯 칸 중 한 칸이 사기 상점이라고 상상해 보십시오. 지나다니는 사람은 어느 칸이 정상인지 구분하기 어렵습니다. 간판은 멀쩡하고 진열도 그럴듯합니다. 문을 열고 들어가 결제 정보를 입력한 뒤에야 이상함을 알아챕니다. 온라인에서는 그 발견조차 늦습니다. 페이지는 몇 시간 만에 사라지고 같은 내용물이 다른 주소에서 다시 나타납니다. 피해자는 주소를 외우지 않습니다. 공격자는 주소를 외울 필요가 없습니다. 자동화된 도구가 새 주소를 찍어내기 때문입니다.

이 대목에서 흔한 반론이 나옵니다. 전체 DNS와 신규 gTLD를 구분해야 한다는 지적입니다. 맞습니다. 오래된 도메인까지 합치면 비율은 낮아집니다. 하지만 공격자가 주로 쓰는 자원이 신규 등록이라는 점이 문제의 성격을 바꿉니다. 오래된 시내 전체가 아니라 새로 분양된 구역에서 사기 상점이 쏟아진다는 것입니다. 분양 속도가 빠르고 심사가 느슨하면 그 구역의 평판은 금방 나빠집니다. 사용자는 끝자리 하나하나를 외우지 않습니다. 그냥 링크를 누릅니다.

차단 목록으로 세는 일은 왜 늘 작게 보일까

차단 목록 기반 측정은 DNS 남용 논의에서 표준에 가깝습니다. 여러 피드가 모이고, 중복을 제거하고, 등록 시점과 대조합니다. 방법은 투명합니다. 한계도 분명합니다. 목록에 오른 것만 셉니다. 탐지되지 않은 것, 신고되지 않은 것, 아직 쓰이기 전인 것, 짧게 쓰고 버려진 것은 빠져나갑니다. 그래서 목록 숫자는 실제보다 작게 나오는 쪽으로 기울어집니다. 보고서가 10퍼센트를 바닥이라고 말하는 근거도 여기에 있습니다.

저희가 새로운 AI 아키텍처를 볼 때도 benchmark 숫자만 보지는 않습니다. 실제로 무엇이 바뀌었고, 그 변화가 시스템에서 어떤 비용 구조를 만드는지를 함께 봅니다. DNS 남용 숫자도 같습니다. 8백5십만이라는 숫자 자체보다 그 숫자가 만들어지는 과정이 중요합니다. 누가 목록에 올리는지, 어떤 기준으로 올리는지, 등록 정보와 얼마나 빨리 연결되는지가 결과의 의미를 정합니다. 목록마다 기준이 다릅니다. 어떤 피드는 피싱에 강하고, 어떤 피드는 악성코드 유포에 강합니다. 합치는 과정에서 중복과 누락이 생깁니다. 완벽한 합산은 없습니다. 그럼에도 방향은 일관됩니다. 어느 쪽으로 틀어져도 과소평가 쪽입니다.

이미지 2: 8천5백만 개 중에서 8백5십만 개가 막혔다는 말의 무게
8천5백만 개 도메인 중에서 차단 목록에 오른 비율을 점으로 시각화한 그림

또 하나 짚을 지점이 있습니다. 차단 목록은 도메인 수로 셉니다. 피해 규모로 세지 않습니다. 사기 도메인 하나가 수천 명에게 문자를 보내고, 그중 수십 명이 돈을 보낼 수 있습니다. 반대로 등록만 해두고 쓰지 않은 도메인도 목록에 오를 수 있습니다. 개수와 피해액은 다른 축입니다. 개수 10퍼센트라는 말이 피해 10퍼센트라는 뜻은 아닙니다. 피해는 더 집중될 수도 있고 더 분산될 수도 있습니다. 숫자를 읽을 때 단위를 함께 읽어야 하는 이유입니다.

도메인이 싸고 등록이 빠르면 남는 장사가 된다

공격자 입장에서 계산은 단순합니다. 도메인 하나 값이 몇천 원 수준이고, 등록은 몇 분이면 끝나고, 결제 수단만 있으면 대량으로 살 수 있습니다. 열 개를 사서 아홉 개가 막혀도 하나만 터지면 본전이 뽑힙니다. 피싱 한 건으로 챙기는 금액이 도메인 수백 개 값보다 클 때가 많습니다. 이런 환경에서는 방어 성공률이 90퍼센트여도 공격이 멈추지 않습니다. 남은 10퍼센트가 수익을 내기 때문입니다.

등록 대행자와 레지스트리 쪽 계산도 봐야 합니다. 도메인이 팔리면 매출이 생깁니다. 악용 도메인을 나중에 정지해도 이미 받은 등록비는 돌아오지 않는 경우가 많습니다. 정지를 빨리하면 할수록 매출과 충돌합니다. 물론 정상적인 사업자들은 남용 대응 전담 조직을 두고 있습니다. 문제는 인센티브의 방향입니다. 팔수록 버는 구조에서는 대응이 늦어지기 쉽습니다. 늦어진 시간만큼 공격자가 씁니다. 이 간극이 바로 공격자의 영업시간입니다.

저는 이 대목을 AI 인프라를 보면서 자주 떠올립니다. 추론 비용이 떨어지면 남용도 늘어납니다. 스팸 문구를 만드는 비용, 가짜 쇼핑몰 페이지를 찍어내는 비용, 언어별로 문구를 다듬는 비용이 함께 떨어집니다. 도메인은 그 결과물을 세상에 붙이는 주소입니다. 생성 비용과 유통 비용이 동시에 떨어지면 사기 생산량은 계단식으로 뛸 수 있습니다. 도메인 숫자만 보고는 이 연결이 안 보입니다. 생성 쪽과 유통 쪽을 함께 봐야 합니다.

새로운 끝자리가 열릴 때마다 벌어지는 일

gTLD 확장은 선택지를 넓혔습니다. 단체나 지역, 브랜드가 자기 이름을 쓸 수 있게 됐습니다. 취지는 좋습니다. 부작용도 분명합니다. 끝자리가 늘어날수록 사용자가 외워야 할 정상 패턴도 늘어납니다. 예전에는 com이나 국가 끝자리 몇 개만 알면 됐습니다. 지금은 수백 개가 넘습니다. 낯선 끝자리가 와도 이상하다고 느끼기 어렵습니다. 공격자는 그 틈을 씁니다. 정상처럼 보이는 단어와 낯선 끝자리를 조합합니다.

이미지 3: 10퍼센트는 바닥이라는 말이 무서운 이유
차단 목록이라는 그물이 실제 악용 규모보다 작게 보이는 구조를 그린 그림

또 하나는 대량 등록을 막기 어렵다는 점입니다. 자동화된 등록은 정상 사업에도 필요합니다. 브랜드 보호 차원에서 수백 개를 한 번에 사는 회사가 있습니다. 공격자의 대량 구매와 겉모습이 비슷합니다. 등록 단계에서 둘을 가르는 일은 생각보다 어렵습니다. 결제 정보가 도용된 것이거나, 등록자 정보가 가짜이거나, 사용 패턴이 이상하면 나중에야 드러납니다. 사후 대응이 기본값이 되는 이유입니다. 사전 심사를 강화하면 정상 사용자의 불편이 커집니다. 이 균형 맞추기가 몇 년째 풀리지 않습니다.

제가 앞으로 보고 싶은 것은 끝자리별 남용률 공개입니다. 어느 끝자리에서 문제가 집중되는지, 신규 등록 대비 차단 비율이 어떻게 움직이는지, 정지까지 걸리는 시간이 얼마나 되는지가 보이면 논의가 달라집니다. 지금은 전체 합산 숫자가 커서 놀라고 끝나는 경우가 많습니다. 잘게 쪼갠 숫자가 있어야 책임도 물을 수 있습니다. 레지스트리별, 등록 대행자별 수치가 나오면 인센티브가 바뀝니다. 평판이 숫자로 보이기 때문입니다.

ICANN이 몇 년째 논의만 한다는 말의 뜻

Simon Willison의 글에서 씁쓸하게 읽힌 대목은 ICANN이 이 문제를 몇 년째 논의해 왔다는 부분입니다. ICANN은 도메인 정책과 계약 구조를 쥐고 있습니다. 레지스트리와 등록 대행자는 ICANN과의 계약 아래에서 움직입니다. 남용 대응 의무를 계약에 어떻게 넣을지, 위반하면 어떻게 제재할지를 정하는 곳입니다. 논의가 길어진다는 것은 기술이 어려워서가 아니라 이해관계가 엇갈린다는 뜻에 가깝습니다.

정책 논의가 느린 구조적인 이유가 있습니다. ICANN은 여러 이해당사자가 모이는 곳입니다. 레지스트리, 등록 대행자, 기업 사용자, 시민사회, 정부가 각자 목소리를 냅니다. 남용 대응을 강화하자는 쪽과 등록 자유와 사업 부담을 걱정하는 쪽이 맞섭니다. 합의가 안 되면 권고 수준에서 맴돕니다. 권고는 강제력이 약합니다. 잘하는 곳은 잘하고, 못하는 곳은 그대로 둡니다. 공격자는 못하는 곳으로 몰립니다. 풍선효과입니다.

여기에 측정 논쟁이 겹칩니다. 남용률이 몇 퍼센트인지, 어떤 목록을 기준으로 할지, 신규 등록 기준인지 전체 기준인지에 따라 숫자가 달라집니다. 숫자가 흔들리면 책임도 흐려집니다. 10퍼센트라는 바닥 수치가 중요한 이유가 여기에 있습니다. 기준을 아무리 후하게 잡아도 10퍼센트는 남는다는 것입니다. 논쟁의 여지를 줄이는 숫자입니다. 이런 숫자 앞에서는 논의가 아니라 조치가 필요합니다. 정지 속도 목표, 대량 등록 심사, 피해 보상 체계 같은 구체적인 이야기로 넘어가야 합니다.

이미지 4: 차단 목록으로 세는 일은 왜 늘 작게 보일까
값싼 도메인이 대량 등록되어 사기 사이트 틀로 흘러드는 과정을 그린 그림

범죄자에게 DNS는 주소록이 아니라 공장이다

Terence Eden의 표현이 날카로운 이유는 DNS의 기능을 다시 정의했기 때문입니다. 겉으로는 주소를 찾아주는 체계이지만, 실제로는 범죄자가 사기를 대량 생산하는 통로처럼 돌아간다는 것입니다. 저는 이 표현을 과장이라기보다 기능적 묘사로 읽습니다. 시스템이 무엇을 위해 설계됐는지와 지금 무엇을 대량으로 처리하는지는 다를 수 있습니다. 처리량을 보면 답이 나옵니다. 신규 등록의 상당 부분이 차단 목록으로 직행한다면 그 라인은 사기 생산 라인처럼 보이는 것이 사실입니다.

공장이라는 비유를 조금 더 밀어보겠습니다. 원재료는 값싼 도메인입니다. 설비는 자동화된 등록과 웹 호스팅과 문자 발송입니다. 제품은 피싱 페이지와 가짜 쇼핑몰과 결제 유도 화면입니다. 유통망은 문자와 메신저와 이메일입니다. 반품은 없습니다. 불량이 적발되면 공장을 닫는 것이 아니라 간판만 바꿔 답니다. 같은 설비에서 다음 제품이 나옵니다. 차단 목록은 불량품 수거 기록에 가깝습니다. 수거량이 많다는 것은 생산량이 많다는 뜻입니다.

이 관점에서 보면 대응도 달라집니다. 낱개 도메인을 잡는 일은 불량품 하나를 치우는 일입니다. 공장을 멈추려면 원재료 투입과 설비 가동을 건드려야 합니다. 대량 등록 단계의 본인 확인, 결제 이상 탐지, 단시간 대량 생성 패턴 차단, 호스팅과 문자 발송 단계의 연계 차단 같은 이야기가 그래서 나옵니다. 도메인 하나를 빨리 죽이는 것도 필요합니다. 동시에 같은 손에서 나오는 다음 수백 개를 묶어서 보는 일도 필요합니다. 낱개 대응만으로는 속도를 못 따라갑니다.

엔지니어 입장에서 이 문제를 다시 보면

실제 시스템 관점에서 보면 DNS 남용은 단일 계층 문제가 아닙니다. 등록, 해석, 호스팅, 유통, 결제가 얽혀 있습니다. DNS는 그중 주소 부여를 맡습니다. 주소를 끊으면 유입이 끊깁니다. 그래서 DNS 대응이 중요합니다. 동시에 DNS만 본다고 끝나지 않습니다. 도메인이 막히면 IP로 붙고, 메신저 계정으로 옮기고, 앱 내 브라우저로 우회합니다. 풍선은 계속 움직입니다. 그럼에도 DNS는 병목에 가깝습니다. 신뢰를 먹고사는 층이기 때문입니다. 주소창에 자물쇠가 보이고 도메인이 그럴듯하면 사람은 마음을 놓습니다.

엔지니어가 당장 할 수 있는 일을 세 갈래로 나눠보겠습니다. 첫째는 탐지 속도입니다. 신규 도메인의 나이를 신호로 쓰는 것입니다. 등록된 지 몇 시간 안 된 도메인에서 결제 페이지를 띄우면 위험 점수를 올립니다. 이메일 링크나 문자 링크의 도메인 나이를 확인하는 것만으로도 상당 부분을 걸러냅니다. 둘째는 묶음 보기입니다. 같은 결제 수단, 같은 등록자 패턴, 같은 네임서버, 같은 호스팅 묶음으로 올라온 도메인을 한 번에 봅니다. 낱개가 아니라 클러스터로 판단합니다. 셋째는 사용자 쪽 경고입니다. 브라우저와 메신저와 이메일 클라이언트가 신규 도메인과 유사 철자 도메인에 대해 분명하게 말해줍니다. 주소 전체를 보여주고, 왜 위험한지를 짧게 설명합니다.

이미지 5: 도메인이 싸고 등록이 빠르면 남는 장사가 된다
느린 거버넌스 회의 뒤로 사기 도메인이 계속 흘러가는 모습을 그린 그림

저는 여기서 측정 방식을 꼭 짚고 싶습니다. 차단 목록을 합치는 일은 undercount라는 한계를 안고 갑니다. 목록마다 수집 범위와 기준이 다릅니다. 중복 제거 방식에 따라 숫자가 바뀝니다. 등록 시점 기준인지 탐지 시점 기준인지에 따라서도 달라집니다. 그럼에도 이 방식이 중앙에 있는 이유는 재현이 되기 때문입니다. 누구나 같은 목록과 같은 등록 데이터를 두고 검증할 수 있습니다. 완벽하지 않지만 거짓말하기 어려운 숫자입니다. 10퍼센트라는 바닥이 힘을 갖는 이유도 여기에 있습니다. 후하게 쳐도 남는 숫자이기 때문입니다.

다음에 등록하는 도메인 하나를 볼 때 기억할 것

정리할 시점이 왔습니다. 2025년 신규 gTLD 8천5백만 개, 2025년 5월까지 차단 목록 8백5십만 개, 하한 10퍼센트와 20퍼센트 안팎의 추정, 다섯 개 중 하나라는 해석, Terence Eden의 진단, ICANN의 긴 논의, 차단 목록 측정의 과소평가 경향. 이 글에서 가져갈 사실 관계는 이 일곱 가지로 충분합니다. 나머지는 해석의 영역입니다. 저는 이 해석을 이렇게 둡니다. DNS는 설계 의도와 무관하게 지금 사기 유통의 병목이자 대량 생산 통로로 쓰이고 있습니다.

제가 앞으로 보고 싶은 것은 세 가지입니다. 첫째는 끝자리와 사업자 단위로 쪼갠 수치입니다. 어디서 문제가 집중되는지가 보여야 조치가 들어갑니다. 둘째는 정지까지 걸리는 시간 분포입니다. 평균이 아니라 분포가 필요합니다. 상위 몇 퍼센트가 얼마나 오래 살아남는지가 피해와 직결되기 때문입니다. 셋째는 묶음 대응의 기록입니다. 낱개 정지 건수가 아니라 같은 묶음을 한 번에 처리한 사례가 쌓여야 합니다. 생산 라인을 멈춘 기록이 필요합니다.

이미지 6: 새로운 끝자리가 열릴 때마다 벌어지는 일
등록 심사부터 브라우저 경고까지 층층이 막는 방어 구조를 그린 그림

마지막으로 엔지니어와 기획자에게 한 가지를 남깁니다. 새로 만드는 서비스마다 외부 링크와 결제와 로그인을 다룹니다. 그 접점마다 도메인 나이 같은 작은 신호를 하나씩만 넣어도 됩니다. 낯선 끝자리와 유사 철자 조합에 대한 경고를 문구로 다듬는 일도 필요합니다. 거창한 보안 제품이 아니어도 됩니다. 주소창을 다시 읽게 만드는 작은 마찰이면 충분합니다. DNS가 사기 통로처럼 보이는 시대에는 신뢰를 주는 쪽에서 먼저 증명해야 합니다. 이 글은 불편하지만 그 증명의 출발점을 알려줍니다.

참고 자료

  1. The purpose of DNS is to spread scams