Tesla의 pool-ntp.tesla.com CNAME 때문에 NTP Pool 자원봉사자 서버가 Assetnote 익스플로잇 스캔 8,000건을 맞음
- NTP Pool 참여 서버를 운영하는 Robin(dreamstation.systems, 67.215.249.229)이 이틀 동안 약 8,000건의 익스플로잇 요청을 받음. Tesla가 pool-ntp.tesla.com을 pool.ntp.org로 CNAME 걸어둔 탓에 Assetnote 자산 인벤토리가 그 도메인이 해석되는 모든 IP를 Tesla 자산으로 등록한 것이 원인임
- 공격 소스는 AWS AS(AMAZON-AES) 소속 54.165.75.96, 35.168.63.24, 52.44.200.251 세 개이고 User-Agent는 Assetnote/1.0.0 (ExposureScan), 페이로드는 경로 탐색, 웹셸 업로드, CMS 관리 엔드포인트 탐색, SSRF, Log4Shell, Text4Shell 등임
- Log4Shell과 Text4Shell 탐지를 위한 assetnote-callback.com 콜백 호스트명이 포함된 요청이 989건, SSRF용 canary.assetnotessrf.com이 114건임
- 로그에는 템플릿에 박힌 제3자 호스트명(lowlevelaccess.jlg.com, servicemcdonalds.com, rsmafghanistan.af 등)과 RFC 1918 주소 192.168.178.222도 나타남. Host 헤더가 login.solarcity.com인 ASP.NET 우회 시도 요청도 15건임
- 작성자가 Tesla에 상황을 알리는 메일을 보낸 뒤 Assetnote의 Patrik이 연락해 해결됨. NTP Pool 약관상 벤더는 tesla.com 하위 CNAME 대신 벤더 존을 써야 함
Hacker News 의견들
이건 Tesla보다 AWS에 신고하는 게 맞지 않나. 소스 IP가 전부 AWS 대역인데 Tesla는 상황 파악도 못 하고 있는 것 같음.
누가 Tesla를 해킹한다고 착각하는 모양인데 실제로는 자원봉사자 IP를 때리고 있는 거임.
Searchlight Cyber 쪽에 먼저 알려보고 안 되면 AWS로 가는 순서가 맞을 듯. 그쪽 서비스가 모르는 사이에 벌어진 일이니까.
가장 빠른 해결책은 허니팟으로 취약점이 잡히게 만드는 거임. 스캐너가 탐지하면 누군가 알아서 고치겠지. 이런 대기업 상대로는 다른 방법이 없음.
나도 몇 주 전에 사진 사이트에 비슷한 짓을 했는데 Meta가 아직도 초당 11건씩 때리고 있음. 지금 406,787개 IP를 차단 중이고 트래픽이 너무 심해서 Traefik이 버티질 못함.
차단할 대상은 스캔 돌리는 호스트가 아님. 죽은 척하면서 접속 IP 지역 대역만 화이트리스트로 걸고 나머지는 블랙홀 라우팅하는 게 낫더라. 오프라인 된 줄 알면 결국 포기함.
제목만 보고 온 사람을 위해 정리하면 Tesla 취약점이 아님. pool-ntp.tesla.com이 pool.ntp.org로 CNAME되어 있고 그게 내 서버로 해석된다는 게 전부임.
2003년에 넷기어가 위스콘신대 NTP 서버를 제품에 하드코딩한 거 기억하나. 그때는 초당 1회씩 질의해서 더 문제였음.
rg -zFI pool-ntp.tesla.com access.log* 이 명령어 좋네. 몰랐는데 유용하게 씀.
8,000건이 초당이면 문제였겠지만 NTP 요청 8,000건은 1마이크로센트도 안 나옴. 이걸로 뭘 하기엔 아까운 규모임.
본문을 읽어봐. NTP 요청량 문제가 아니라 실제 익스플로잇 페이로드를 남의 서버에 보내는 게 문제임. 자기 내부 인프라에나 할 짓을 모르는 사람한테 하고 있음.
WordPress 경로 긁는 건 봇 크롤러 돌리면 다 겪는 평범한 트래픽임.
맞는 말인데 포인트는 정식 상용 취약점 스캐너가 나를 Tesla 자산으로 착각해서 진짜 익스플로잇을 던진다는 거임. 그게 웃긴 부분임.
이거 기술적으로 범죄 아님? 남의 컴퓨터 시스템에 접근을 시도하는 건데.
벤더가 NTP를 임베딩할 때는 벤더 존을 쓰게 되어 있는데 이건 약관 위반으로 보임. 예전에 웹호스팅 할 때 NTP 서버 몇 개 돌렸는데 그냥 주는 것도 별일 아니었음.
monlist나 readvar 같은 거 끄고 레이트 리밋 걸어둬. 특정 IP에서 패킷이 몰리면 그쪽이 너를 공격하는 게 아니라 네가 스푸핑된 요청에 응답하는 중일 수 있음.
블로거가 업데이트를 올렸는데 Assetnote의 Patrik이 연락해서 해결됐다고 함. 스캔들러운 걸 원하는 사람들은 이렇게 빨리 해결되는 걸 안 좋아하네.