뉴스 목록
The Hacker News2026. 09. 02.

BGP 하이재킹으로 악성 Virtualizor 업데이트 배포 — 루트 권한 영구 백도어 설치 확인

한 줄 요약

가상화 서버 관리 소프트웨어인 Virtualizor의 업데이트 서버로 향하는 인터넷 경로를 공격자가 BGP(인터넷 경로 조작 기술)를 이용해 가로채, 2026년 8월 28일~30일 사이에 악성 업데이트 패키지를 일부 서버에 배포했습니다. 이 악성 패키지는 서버에 루트(최고 관리자) 권한으로 백도어를 심었으며, 실제로 한 호스팅 업체는 34대 중 5대가 감염된 것을 확인했습니다. 공격자는 공식 인증서까지 발급받아 브라우저 경고 없이 트래픽을 가로챘고, 업데이트 클라이언트에 패키지 무결성 검증 기능이 없어 탐지가 불가능했습니다. Virtualizor는 2026년 9월 1일 보안 스캐너가 포함된 Patch 9를 배포했으며, 운영자는 즉시 스캐너를 실행하고 API 키 교체, SSH 접근 제한, 서버 재구축을 검토해야 합니다.

사건

공격자가 BGP 하이재킹으로 Softaculous(Virtualizor 배포사)의 업데이트 트래픽을 가로채 악성 패키지를 배포했다. 침해 창구는 2026년 8월 28일 20:57 UTC부터 8월 30일 06:10 UTC까지였으며, 공격자는 Let's Encrypt 인증서를 발급받아 HTTPS 경고 없이 트래픽을 수신했다.

영향

일부 Virtualizor 서버가 루트 수준으로 침해됐다. 악성 코드는 공격자 SSH 키 삽입, Java 페이로드 실행, systemd 서비스로 영구 지속, proxyuser 계정 생성을 수행했다. AlbaHost는 34대 중 5대 감염을 확인했고, 업데이트 중 입력된 클라이언트 로그인·결제 정보가 공격자 서버에 전달됐을 수 있다.

원인

Virtualizor 업데이트 클라이언트에 패키지 암호서명 검증 기능이 없어 변조된 패키지를 그대로 실행했다. BGP 하이재킹으로 정상 도메인이 공격자 서버로 연결됐고, 합법적인 TLS 인증서 발급으로 이를 은폐했다.

대응

Virtualizor는 9월 1일 Patch 9(버전 3.2.9.9)와 보안 스캐너를 배포했다. 운영자는 IoC 파일 점검, API 키 교체, SSH 제한, 스캐너 실행을 수행해야 한다. 완전 감염 확인 시 서버 재구축이 권고된다. 패키지 서명 기능은 아직 미구현 상태다.

실무 포인트

스캐너 스크립트의 SHA-256(`73e74402...`)을 반드시 검증 후 실행하고, `/etc/systemd/system/java-jre-update.service` 등 IoC 목록을 즉시 점검해야 한다. 루트 침해가 확인된 호스트는 증거 보전 후 클린 재구축만이 신뢰 복구 방법이다.

본문

Swati Khandelwal · 2026년 9월 2일 · 네트워크 보안 / 공급망 공격

Virtualizor는 해커들이 BGP(Border Gateway Protocol, 인터넷 경로 교환 프로토콜) 하이재킹을 이용해 Softaculous 트래픽을 가로챘다고 밝혔다. 공격자는 탈취한 업데이트 트래픽을 악용해 일부 설치 환경에 악성 Virtualizor 패키지를 배포했다. 한 호스팅 업체 계정은 자사의 34대 Virtualizor 하이퍼바이저 중 5대에서 루트(root) 수준 침해가 발생했다고 별도로 공개했다.

사고 발생 구간은 협정 세계시(UTC) 기준 8월 28일 20:57부터 8월 30일 06:10까지다. Virtualizor는 영향을 받은 버전 범위나 피해 설치 목록을 특정할 수 없으므로 모든 운영자가 서버를 점검해야 한다고 밝혔다.

Virtualizor는 9월 1일 보안 분석기(Security Analyzer)가 포함된 Patch 9를 배포했으나, 암호화 패키지 서명은 향후 과제로 남겨뒀다고 전했다. 운영자는 공식 스캐너를 실행하고, API(애플리케이션 프로그래밍 인터페이스) 자격증명을 교체·제한하며, 각 서버에서 지속 접근 및 무단 접근 여부를 감사해야 한다.

"이번 사고는 Virtualizor 전체 사용자 기반이 아닌 소수 서버에 영향을 미쳤습니다." — Virtualizor 사고 공지

The Hacker News가 RIPE Stat 데이터를 통해 확인한 바에 따르면, 벤더가 특정한 경로를 포함한 첫 번째 경로 공지는 8월 28일 20:57:30 UTC에 나타났다. Virtualizor는 해당 경로가 무단 공지라고 밝혔다. Softaculous 서비스의 트래픽이 공격자 운영 서버로 우회됐다.

공격자는 우회 구간 중 유효한 Let's Encrypt 인증서를 발급받았다. 이에 따라 해당 서버를 경유한 연결에는 인증서 경고가 표시되지 않았다. 우회 구간에 업데이트를 확인한 Virtualizor 설치 환경은 변조된 패키지를 수신했을 수 있다. 업데이트 클라이언트에 암호화 패키지 검증 기능이 없었기 때문에 이를 근거로 패키지를 거부하지 못했다.

LowEndTalk에서 회원 및 Patron Provider로 표시된 AlbaHost 계정은 합법적인 Virtualizor 파일 세 개에 악성 명령이 삽입됐다고 밝혔다. 이후 루트 크론(cron) 작업이 변조된 코드를 실행했다.

"자사의 Virtualizor 하이퍼바이저 34대 중 5대에서 이 스레드에 설명된 것과 동일한 악성 수정이 확인됐습니다." — AlbaHost 계정

삽입된 코드는 루트 계정에 공격자 제어 키를 추가했다. Java 런타임이 없는 경우 Java 17을 설치했다. 이어 Java 페이로드를 다운로드하고 루트 권한으로 실행했다.

페이로드는 systemd 서비스를 통해 지속성을 확보했다. 또한 proxyuser라는 무단 계정을 생성했다. 공급자 로그에는 193.32.127[.]248에서 해당 계정으로의 비밀번호 기반 SSH(Secure Shell, 원격 보안 접속) 로그인이 성공한 기록이 남아 있었다.

AlbaHost 계정은 자사 점검 환경에서 고객 가상 사설 서버(VPS)의 수정은 확인되지 않았으며, 데이터베이스 유출도 독자적으로 확인하지 못했다고 밝혔다.

우회 구간 중 클라이언트 영역의 세션과 결제 입력 트래픽이 공격자 운영 서버에 도달했을 수 있다고 Virtualizor는 전했다. 9월 2일 기준으로 클라이언트 계정 또는 결제 데이터 도용이 확인된 사례는 보고되지 않았다.

벤더의 권고 대상 그룹은 다음과 같다 -

  • Virtualizor 운영자 — 영향을 받은 버전 범위나 확정적인 피해 서버 목록이 없으므로 모든 서버를 점검한다.
  • 사고 구간에 클라이언트 영역에 로그인하거나 결제 정보를 입력한 사용자 — 클라이언트 영역 비밀번호를 재설정하고, 동일 비밀번호를 사용한 다른 서비스도 변경한다. 계정 활동을 검토하고, 결제 정보를 입력했다면 카드 명세서를 확인한다. Client Center API 사용자는 키를 재발급하고 서버에 적용한다.
  • 기타 Softaculous 제품 운영자 — 사고 구간에 업데이트를 확인한 Webuzo, Softaculous, Backuply, SitePad 등 제품 서버를 점검한다. 벤더는 해당 제품에서 악성 패키지를 확인하지 못했으며 조사가 진행 중이라고 밝혔다.

Virtualizor 운영자 조치 사항

Virtualizor는 운영자에게 다음 단계를 수행하도록 권고했다 -

  1. /etc/systemd/system/java-jre-update.service 파일이 있는지 확인한다. 존재하면 증거를 보전하고 Virtualizor 지원팀에 연락한다.
  2. 모든 Virtualizor API 키를 교체하고, API 접근을 신뢰할 수 있는 IP(인터넷 프로토콜) 주소로 제한하며, 알 수 없는 키를 제거한다.
  3. 알 수 없는 SSH 키, 신규 사용자, 예약 작업 또는 크론 작업, 예상치 못한 외부 연결을 감사하고 SSH를 신뢰할 수 있는 IP 주소로 제한한다.
  4. 공식 스캐너를 실행한다. 2026년 9월 2일 기준 스캐너 스크립트의 SHA-256은 73e74402b3a61c7bab289fc11347bd54c7fcdc2fa2e410f4c3de9d6cd7377d48이다.
  5. 감염이 확인된 호스트는 증거 보전을 위해 조치 전 지원팀에 먼저 연락한다. 스캐너의 격리 조치는 알려진 지표에 한정된 봉쇄임을 인식하고, 호스트 신뢰 복구를 위한 추가 조치를 수행한다.

벤더의 스캐너가 점검하는 침해 지표(IoC)는 다음과 같다 -

  • Systemd 유닛 — /etc/systemd/system/java-jre-update.service
  • 설치된 페이로드 — /usr/lib/jvm/.cache/jre-runtime.dat
  • 페이로드 SHA-256 — b81a4e1fab9fc4e404d57224fe71e2c143aa93942bd46998789bdc944a7870c7
  • 마커 파일 — /usr/lib/jvm/.cache/.installed
  • 마커 파일 — /tmp/widdow.jar
  • 핵심 파일 — /usr/local/virtualizor/globals.php
  • 핵심 파일 — /usr/local/virtualizor/_universal.php
  • 핵심 파일 — /usr/local/virtualizor/zzvirtservice
  • 삽입 문자열 — cdn[.]nerat[.]cc/installer/widdow.jar
  • 삽입 문자열 — connect[.]ne-rat[.]xyz
  • 삽입 문자열 — jre-runtime.dat
  • C2(명령제어) 도메인 — cdn[.]nerat[.]cc
  • C2 도메인 — connect[.]ne-rat[.]xyz
  • SSH 키 자료 — AAAAC3NzaC1lZDI1NTE5AAAAIP13pPAm5jmInLQYD3XNb3HwrW4cAKDcphoT4kSKrnte
  • 공급자 확인 계정 — proxyuser
  • 공급자 확인 SSH 출발지 — 193.32.127[.]248
  • 공급자 확인 IP 및 포트 — 31.77.220[.]138:2025
  • 공급자 확인 마커 — /tmp/.vz_svc_done
  • 공급자 확인 SSH 키 지문 — SHA256:YQmy1hKF1h5cdJLxlZ5EScNoxe/UDWahjsWuQw2ERi8

Patch 9 릴리즈 노트에는 보안 분석기가 릴리즈 후보(RC) 및 안정(stable) 브랜치에 추가됐다고 명시됐다. 사고 공지에는 릴리즈명이 Virtualizor 3.2.9.9로, 릴리즈 노트에는 Virtualizor 3.2.9 (Release Candidate and Stable Branch) (Patch 9)로 각각 표기됐다. 9월 2일 기준 Virtualizor는 악성 패키지 파일명·해시, 영향받은 업데이트 채널 목록, 패키지 서명을 강제하는 빌드를 공개하지 않았다.

스캐너는 알려진 악성 파일을 점검·격리한다. 변조된 Virtualizor 핵심 파일은 정상 콘텐츠로 복원하거나 재설치해야 한다. 루트 침해가 확인된 호스트에 대해 AlbaHost 계정은 클린 재구축만이 장기적으로 신뢰를 복구할 수 있는 유일한 방법이라고 밝혔다.

출처
The Hacker News · thehackernews.com
원문 보기

분야별 뉴스

관심 분야의 보안 이슈를 모아 보세요.

TORUN SECURITY

투런이 제공하는 보안 솔루션

공격 표면 관리부터 엔드포인트·내부정보 보호까지, 기업 환경에 맞는 보안 솔루션을 투런이 함께 설계합니다.