Tor 출구 노드 300개 넘게 퇴출시킨 방법

How I got over 300 Tor exit nodes removed

kaba.cx ▲ 315 댓글 76 kabakabakaba

요약

SSH 접속을 가로채던 감염된 Tor 출구 노드 333개를 찾아내 퇴출시켰습니다.

kaba.cx 블로그 작성자는 자기 SSH 접속이 악성 출구 노드(Tor 트래픽이 일반 인터넷으로 나가는 마지막 서버)를 거쳐 엉뚱한 서버로 넘어가는 것을 보고 추적에 나섰습니다. 공격자는 8월에 서버들을 장악해 리눅스용 SSH 백도어 Ebury 1.8.3을 몰래 심어 두었습니다.

왜 중요한가

  • 출구 노드 약 3,000개 가운데 10% 남짓이 한꺼번에 공격에 쓰여 Tor 이용자 상당수가 위험에 놓였습니다.
  • 경고를 무시하고 로그인하면 비밀번호뿐 아니라 접속한 서버까지 감염돼 피해가 퍼질 수 있었습니다.
  • 출구 노드 수가 줄어든 뒤 10월 19일까지 회복되지 않아 네트워크에 타격이 남았습니다.

핵심 내용

  • 감염 노드는 10월 2일 금요일부터 암호화되지 않은 메일을 모으고 SSH 접속을 서버 12대로 빼돌렸습니다.
  • 작성자는 exitmap(출구 노드를 하나씩 지정해 검사하는 도구)으로 접속을 빼돌리는 노드를 가려냈습니다.
  • Tor 네트워크 상태 점검팀은 10월 4일 운영자들에게 알리고 해당 노드에 출구로 못 쓰게 하는 BadExit 표시를 붙였습니다.
  • 침투 경로와 공격자 정체는 아직 모르며, 작성자는 금전을 노린 범죄 조직으로 추정했습니다.
  • 작성자는 비밀번호 대신 SSH 키와 하드웨어 보안 키를 쓰라고 권했습니다.

HN 반응

  • SSH의 큰 경고 문구 탓에 공격이 금방 들통났다는 지적에, 흔적을 남기지 않는 환경에서 접속하는 이용자는 경고조차 못 본다는 반론이 나왔습니다.
  • 출구 노드가 3,000개뿐이라는 놀라움에는, 운영자가 압수수색을 당할 위험이 커서 그만큼이라도 있는 게 다행이라는 설명이 이어졌습니다.

댓글

30개 표시 · 전체 76개
  1. phw HN

    exitmap은 10년도 더 전에 제가 만들었어요. 아직도 쓰이고 있다니 기쁘네요 :)

  2. 4gotunameagain HN

    약간 곁다리 질문인데, exitmap이 기능을 수행할 때 쓰는 그 능력에 대해 안전장치 같은 게 있나요?

    exitmap을 악용해서 Tor에 DDoS를 걸 수도 있지 않나요?

  3. chatmasta HN

    회로(circuit)당 홉 수를 설정할 수 있고, 거기에는 홉이 하나뿐인 회로도 포함됩니다. 그러니 exitmap이 Tor에 원래 없던 기능을 더해 주는 건 아닙니다.

  4. kabakabakaba HN

    대단하네요! 만들어 주셔서 감사합니다. 정말 큰 도움이 됐어요 :)

  5. jandrese HN

    SSH 공격은 꽤 허술하게 설계된 것 같습니다. MITM 공격이 있으면 SSH가 그 커다란 경고 배너를 띄우기 때문에 곧바로 발각됐을 뿐 아니라, 관리자들이 감염된 노드를 전부 쉽게 추적해서 신속하게 작전 전체를 끝장낼 수 있었습니다. 이메일만 고수했다면 지금도 계속 돌아가고 있었을 겁니다.

  6. michaelt HN

    > MITM 공격이 있으면 SSH가 그 커다란 경고 배너를 띄우기 때문에 곧바로 발각됐을 뿐 아니라

    문제는 그게 도움이 되는 경우가 Tor로 한 일의 증거(known hosts 파일에 적힌 목록 같은 것)가 PC에 남아도 괜찮은 사용자뿐이라는 점입니다.

    보안 요구 수준이 아주 높아서 Tor로 한 일의 흔적이 PC에 전혀 남아선 안 되는 경우라면, 그 배너를 볼 일이 없을 겁니다.

  7. stingraycharles HN

    정말 좋은 지적입니다. Darknet Diaries 팟캐스트에서 들은 기억이 있는데, 다크웹 운영자들이 보통 그렇게 일한다고 합니다. 저장 장치를 전혀 쓰지 않고, 부팅할 때마다 새 머신으로 시작하는 식입니다.

  8. 96718923545809 HN

    글 써 주셔서 감사합니다.

    하지만 경고를 무시하고 로그인을 강행하면, 공격자는 세 가지를 합니다.

    1. 비밀번호를 훔칩니다

    다만 키 기반 인증에는 영향이 없어야 하지 않나요?

    그리고 글에 링크된 Marc-Etienne M.Léveillé의 이메일에 이런 내용도 있습니다.

    또 하나의 가능성은 호스팅 업체가 침해당한 경우입니다. 과거에 이런 업체를 몇 곳 확인했는데, 관리 서버가 Ebury에 감염되면서 고객의 VPS와 컨테이너 등도 결국 Ebury를 실행하게 됐습니다.

    업체 쪽에서 고객 VPS 인스턴스를 침해하는 사례는 최근 몇 년 사이 늘고 있습니다. 저는 프라이버시와 관련된 건 더는 VPS에 올리지 않고 전용 하드웨어로 옮겼습니다. 업체가 마음만 먹으면 RAM과 디스크 내용을 실시간으로 몰래 덤프하거나 조작하기가 얼마나 쉬운지 아직도 모르는 사람이 많습니다.

  9. theteapot HN

    다만 키 기반 인증에는 영향이 없어야 하지 않나요?

    '키'가 뭘 뜻하는지, '영향'이 뭘 뜻하는지에 따라 다릅니다. 공개 키 인증을 쓰더라도 서버 호스트 키를 확인하지 않고 그냥 받아들이면 MITM 공격을 당할 수 있습니다.

  10. mschuster91 HN

    업체가 마음만 먹으면 RAM과 디스크 내용을 실시간으로 몰래 덤프하거나 조작하기가 얼마나 쉬운지 아직도 모르는 사람이 많습니다.

    그건 어떤 VPS 기술 스택을 쓰느냐에 달려 있습니다. 제 기억이 맞다면 적어도 아마존은 IOMMU 같은 하드웨어 기능을 써서, 호스트 쪽에서 게스트 메모리에 어떤 방식으로든 접근하지 못하게 막습니다.

  11. Tuna-Fish HN

    제가 아는 한, 하이퍼바이저로부터 VM 고객을 성공적으로 보호한 메모리 암호화 방식은 지금까지 없었습니다. 전부 시장에 나온 지 몇 년 안에 결함이 발견됐죠.

    호스트를 장악한 원격 공격자로서는 불가능하고 물리적 접근이 있어야 가능한 공격도 있으니, 유용한 방어 계층일 수는 있습니다. 하지만 아마존 자신으로부터도 데이터를 지켜 준다는 마케팅 문구는 그냥 거짓말입니다. 물리적 접근은 루트 권한보다 강력하고, 예외는 없습니다.

  12. mschuster91 HN

    하지만 아마존 자신으로부터도 데이터를 지켜 준다는 마케팅 문구는 그냥 거짓말입니다. 물리적 접근은 루트 권한보다 강력하고, 예외는 없습니다.

    하드웨어 보안 솔루션을 형식 검증(formal verification)하고, 악의적인 내부 직원이 가하는 위협에 대응하는 연구를 적극적으로 하는 면에서는 저라면 대부분의 다른 업체보다 아마존과 구글을 더 신뢰합니다.

  13. Tuna-Fish HN

    그런데도 컨피덴셜 컴퓨팅에서 발견된 80건 넘는 주요 취약점 중 클라우드 업체가 찾아낸 것은 20%도 안 되고, 대다수는 대학과 독립 연구자들이 찾았습니다.

    사실 그들은 너무 꼼꼼히 들여다볼 이유가 없습니다. 자기들이 가짜 약을 팔고 있다는 걸 알고, 그게 제대로 작동하는지는 신경 쓰지 않습니다. 그들 입장에서 이 기술의 유일한 기능은 퍼블릭 클라우드에서 돌리기를 불안해하는 고객에게 내세울 마케팅 소재가 되는 것뿐입니다. 애초에 악용할 생각이 없다면 작동하지 않아도 상관없고, 악용할 생각이 있다면 취약점이 발견되어 고쳐지는 걸 원하지 않습니다. 어느 쪽이든 깊이 파고들어서 그들이 얻을 이득은 없습니다.

  14. mulmen HN

    이게 공정한 비교인가요? 클라우드 업체가 자기 제품에서 취약점을 찾았다면 우리가 그걸 왜 알겠어요? 내부에서 쉬쉬하지 않을까요?

  15. Tuna-Fish HN

    취약점은 보통 먼저 고친 다음에 보고합니다.

  16. zzrrt HN

    아마존을 믿고, 이 IOMMU 보호를 끄거나 우회할 방법이 절대 없다고 신뢰한다면, 일부 공격에 대한 완화책은 되겠죠. 그런데 결국 대부분은 AWS라는 브랜드 이름을 믿는 것처럼 보입니다. IOMMU가 없어도 AWS는 어디 있는지도 모를 업체보다는 더 믿을 만할 테니까요.

  17. InsidiousWombat HN

    그런 기능은 대부분 VM끼리의 공격을 막기 위한 것입니다. 호스트는 어떤 식으로든 항상 VM에 손댈 수 있고, 어느 정도는 그래야 하기도 합니다.

    AMD SEV는 기술적으로 하이퍼바이저가 가질 수 없는 키로 게스트 메모리를 암호화하지만, IO 장치나 제공되는 스토리지를 통해 VM 내부를 건드리는 방법은 여전히 있습니다.

  18. jszymborski HN

    exit 노드가 3000개라니, 어이없을 만큼 적네요.

  19. maeln HN

    많은 나라에서 exit 노드를 돌리면 경찰이 문을 두드리고 장비를 전부 압수해 가는 일을 아주 빠르게 겪을 수 있습니다. Tor exit 노드를 운영하려면 최대한 익명을 유지하려고 애쓰고, 가급적 사이버 범죄에 전혀 신경 쓰지 않는 나라에 자리를 잡은 채 아무것도 신경 안 쓰는 수상한 호스팅 업체에서 돌리거나, 아니면 비영리 단체든 회사든 법인을 세우고 나라에 따라 호스팅 사업자로 등록해서(규정을 지키면 서버에서 나가는 내용에 법적 책임을 지지 않도록) 운영해야 합니다. 그래도 경찰의 문의에는 꽤 빨리 응답해야 하고요.

    오히려 3000개나 있다는 게 기적입니다. 다만 그중 상당수는(어쩌면 대다수는) 국가 정보기관, 사이버 보안 업체, 악의적인 행위자가 운영하고 있고, 이들은 노드를 지나가는 모든 것을 기록하며 언젠가는 복호화할 수도 있다고 보셔도 됩니다.

  20. BorisMelnik HN

    동의합니다. Tor는 정말 멋진 기술이라고 생각하지만, 제 컴퓨터나 제가 빌린 서버를 통해 뭐가 오갈지 생각만 해도 가까이하고 싶지 않아집니다.

  21. Sohcahtoa82 HN

    저도 15년쯤 전에 Freenet에 대해 같은 생각을 했어요.

    아이디어가 마음에 들었거든요. 특히 ISP들이 토렌트를 한창 단속하던 때였으니까요. 그런데 네트워크 안의 인덱스 사이트 몇 군데를 보고 나서, 그 네트워크의 상당 부분이 CSAM이라는 걸 금방 깨달았습니다.

    바로 지우고 다시는 돌아보지 않았어요.

  22. burningChrome HN

    저는 Adrian Crenshaw가 DefCon에서 발표한, 사람들이 Tor를 쓰다 어떻게 붙잡혔는지에 관한 강연을 보고 나서 그 뒤로 멀리하고 있습니다. TAILS와 함께 몇 번 써 본 적은 있지만, 그 외에는 더 이상 건드리지 않습니다.

    DEF CON 22 - Adrian Crenshaw- Dropping Docs on Darknets: How People Got Caught

    https://www.youtube.com/watch?v=eQ2OZKitRwc

  23. dmantis HN

    기본적으로는 아무것도 중계하지 않습니다. 네트워크를 돕고 싶을 때 직접 명시적으로 켜야 합니다.

    그리고 릴레이 운영자(exit 노드가 아니라)는 아무 문제도 겪지 않습니다. 터무니없는 두려움에 눈이 멀지 마세요.

  24. antonymoose HN

    저는 예전에 해커 성향이 아주 강한 회사(미국)에서 일한 적이 있습니다. CTO는 뛰어난 사람이었는데, 고성능을 중시하는 최상위급 HFT 회사에서 그저 그 배포판이 좋다는 이유만으로 Ubuntu 기반 서버를 BSD로 옮기려 한 적이 있습니다.

    50명 규모 팀에서 엔지니어 열두어 명이 릴레이를 돌렸고, 겁 없는 바보 한 명이 exit 노드를 운영하다가 제가 있는 동안 CSAM 유형의 범죄 혐의를 억울하게 뒤집어썼습니다. 결과적으로 그 뒤로는 아무도 릴레이를 돌리지 않게 됐습니다. 그 불쌍한 exit 운영자는 체포 소식을 다룬 기사 제목이 수십 개나 되는데 기소가 취하됐다는 기사는 하나도 없어서, 지금까지도 아일랜드인으로 남아 있습니다.

  25. adrianN HN

    적어도 독일에서는 릴레이만 운영해도 법적으로 아슬아슬한 처지에 놓인다고 알고 있습니다.

  26. gambiting HN

    미국 정부에는 언젠가 해독될 지도 모르는 암호화된 트래픽을 저장하는 용도로만 쓰는 거대한 데이터 센터가 말 그대로 있습니다. 미국이 통제하는 TOR 노드를 지나가는 건 전부 거기로 들어간다고 봐야죠.

  27. Spivak HN

    그야 그렇죠. 미국에서 exit 노드를 운영하는 건 "아마 합법이지만, 그래도 체포되고 장비를 압수당한 선례가 있는" 일이니까요. 일반인 중에 이렇게 스스로 표적이 되려는 사람이 많을 것 같지는 않네요.

  28. Palomides HN

    게다가 모든 첩보 기관과 수많은 해커들의 기술적 표적까지 되고요! 합법적으로 컴퓨터에 끌어들일 수 있는 골칫거리 중에선 아마 최고일 걸요.

  29. malfist HN

    어이없을 만큼 적은 건 맞지만, 그게 오히려 장점일 수도 있지 않나요? 많은 사람의 트래픽이 뒤섞여 있으면 한 사람의 트래픽을 나머지에서 분리해 내기가 더 어려워지니까요.

  30. maxbond HN

    그 사용자들의 트래픽은 목적지에서는 깔끔하게 분리되니까, 이 공격은 어딘가의 관측 지점에서는 언제나 가능하고 방어할 수 있는 입장이 못 됩니다. 그래서 진짜 위협은 악의적인 exit 노드입니다. 말씀하신 논리는 가드 노드에 더 잘 들어맞겠네요.

Hacker News에서 보기 ↗