동찰 Beating AI 속보, 최근 많은 개발자들이 VPS를 보호하는 가장 좋은 방법 중 하나는 공인 SSH 포트를 닫고 Tailscale 원격 접속으로 전환하는 것이라고 제안했습니다.
그런데 10월 25일, 보안 연구원 Erica Windisch가 Tailworm이라는 보고서를 발표했는데, Tailscale 및 그 오픈소스 대안인 headscale에 11가지 보안 문제가 존재합니다. 가장 심각한 상황은 바로 Tailscale 자체 SSH 기능에서 발생했습니다.
공격자는 VPN을 해킹할 필요가 없습니다. Tailscale SSH를 통해 대상 서버 접속이 허용된 기기를 하나 장악하고 SSH 포워딩 권한이 열려 있으면, 추가로 서버의 root 권한을 탈취할 수 있습니다.
취약점은 권한 격리에서 비롯됩니다. Tailscale 백그라운드는 root 권한으로 실행되며, 일부 SSH 포워딩 작업도 이 권한을 그대로 사용합니다. 연구원은 실험에서 Unix Socket 포워딩을 이용해 일반 계정 제한을 우회하고 Docker를 통해 서버 root 권한을 획득하는 데 성공했습니다.
또 다른 공격 체인은 기기 등록 키를 가로채, Tailnet Lock이 활성화되지 않은 테스트 네트워크에 위조 서버 한 대를 추가했습니다.
Tailscale은 올해 6월에야 SSH의 Unix Socket 포워딩 권한 상승 취약점을 수정했습니다. 같은 달 디지털 사용자 ID `0`을 통해 root를 획득하는 취약점도 막았고, 7월에는 특수 사용자 이름 `-i`를 통해 권한 제한을 우회하는 문제도 수정했습니다. 몇 달 후 연구원은 동일한 내장 SSH 포워딩 메커니즘에서 다시 권한 상승 경로를 찾아냈습니다.
Tailscale 엔지니어링 부사장 Mike Shaver는 이후 팀이 SSH 인가 후의 권한 월경 문제를 발견했음을 인정했지만, 연구 보고서의 모든 결론을 확인하지는 못했으며 모든 사용자에게 Tailscale SSH를 즉시 비활성화할 것을 권장하지도 않는다고 밝혔습니다.
10월 25일, 엔지니어링 팀은 GitHub에 여러 SSH 개선 방안을 연속 제출하여 포워딩 작업이 root 프로세스에 직접 맡겨지는 대신 실제 로그인 사용자의 권한을 사용하도록 준비했습니다. 현재 관련 수정 사항은 정식 버전으로 출시되지 않았습니다.