중대한 발견 사항
스팀은 노골적으로 거짓말을 하고, 범죄자들을 감싸며, 수사를 방해하고 있습니다.
서론: 계산된 과실로 인한 범죄
2025년 8월, 세계 최대의 게임 플랫폼인 스팀(Steam)은 단순히 보안 침해 피해를 입은 데 그치지 않고, 오히려 이를 적극적으로 조장했습니다. 일련의 체계적인 실패와 중대한 과실로 인해 밸브(Valve)는 해당 게임이 블록블래스터스 (AppID 3872350)이 엄청난 피해를 입힌 악성코드 캠페인의 트로이 목마로 전락했습니다. 이는 정교해서 피할 수 없었던 공격이 아니었습니다. 스팀의 보안 체계가 근본적으로 허술했기 때문에 성공한, 교과서적인 데이터 탈취 작전이었을 뿐입니다. 22일 동안 이 악성코드는 수십만 달러를 훔치고, 암호화폐 지갑을 비우며, 사용자 계정을 탈취했지만, 밸브는 아무런 조치도 취하지 않았습니다.
진실이 드러났을 때, 밸브의 대응은 사용자를 보호하는 것이 아니라 자사의 이미지를 지키는 데 초점이 맞춰져 있었습니다. 이 회사는 “해킹당한 개발자 계정”을 탓하는 기만적인 성명서 한 통만을 발표했는데, 이는 책임을 전가하고 법적 책임을 회피하기 위해 꾸며낸 한심한 거짓말이었습니다. 이 기사는 그 거짓말을 하나하나 파헤칠 것입니다. 포렌식 데이터, 타임라인 분석, 그리고 밸브의 자체 정책을 바탕으로, 우리는 이번 사건이 단순한 조치 미흡이 아니라, 범죄적 과실을 의도적으로 은폐한 것임을 증명할 것이다.

드러난 정체
스팀은 악성 애플리케이션의 개발자로 확인된 발렌틴 로페스(Valentin Lopes)를 노골적으로 속이고 은폐하고 있다.
22일간의 무대응 일지
밸브는 이 상황을 막을 수 있는 22일의 시간이 있었습니다. 사용자 신고가 쇄도했고, 플랫폼 데이터에서도 문제가 있다는 분명한 징후가 나타났습니다. 그들의 침묵은 의도된 선택이었습니다.
'BlockBlasters'가 출시되었습니다. 스팀의 심사 절차를 통해 깨끗하고 정식 버전이 승인되었습니다.
함정이 설치되었다. 공격자들은 패치 빌드 19799326을 배포한다. 악성코드 페이로드를 포함하고 있는 이 업데이트는 스팀의 승인을 받아 모든 플레이어에게 배포된다.
첫 번째 피해자들이 경고를 보냅니다. 사용자들은 비정상적인 CPU 사용량, 의심스러운 네트워크 트래픽, 그리고 가장 심각한 문제인 암호화폐 도난을 신고하는 티켓을 스팀 지원팀에 쇄도하듯 보내옵니다. 하지만 이 티켓들은 밸브 측에서 무시한 채 ‘블랙홀’ 속으로 사라집니다.
데이터는 경고 신호를 보내고 있습니다. 공개된 SteamDB 텔레메트리 데이터에 따르면 플레이어 수가 한 자릿수로 급감했음에도 불구하고, 이 게임은 여전히 수백 대의 컴퓨터에 설치된 채로 조용히 데이터를 유출하고 있습니다. 이러한 엄청난 불일치는 유능한 모니터링 시스템이라면 반드시 포착했어야 할 위험 신호입니다.
커뮤니티가 나섰습니다. 독립 보안 연구원들이 Telegram 기반의 악성코드 명령·제어 인프라를 밝혀내며 해커들을 궁지로 몰아넣었습니다.
이 증거는 부인할 수 없습니다. G DATA CyberDefense AG는 이 악성코드의 다단계 공격 경로를 확인하고 침해 사건의 기술적 세부 사항을 밝힌 포렌식 보고서를 공개했습니다.
공격의 구조
이것은 최첨단 악성코드가 아니었다. 흔한 스크립트와 정보 탈취 도구를 조잡하지만 효과적으로 조합한 것이었는데, 수십억 달러 규모의 플랫폼이라면 감지하는 데 아무런 어려움이 없었을 것이다.
1단계: 초기 침투 (game2.bat)
초기 페이로드는 간단한 배치 스크립트로, IP 주소, 지리적 위치 및 스팀 사용자 정보를 수집하는 등 기본적인 정찰 작업을 수행했습니다. 그 후, 비밀번호로 보호된 ZIP 파일(v1.zip)을 다운로드했는데, 이는 단순한 자동 스캐너를 우회하기 위한 전형적인 기법입니다.
2단계: 회피 및 확대 (VBS 로더)
이 악성코드는 VBS 스크립트를 사용하여 숨겨진 명령 프롬프트 창에서 핵심 구성 요소를 실행했습니다. 또한 자체 디렉터리를 Microsoft Defender의 제외 목록에 추가했는데, 이는 모니터링 대상 시스템에서 즉시 고우선순위 경보가 발령되어야 할 조치입니다.
3단계: 데이터 탈취 (Client-built2.exe 및 Block1.exe)
방어 체계가 무력화되자, 이 악성코드는 주요 페이로드를 배포했습니다. 바로 지속적인 접근을 위한 파이썬 기반 백도어와 StealC 정보 탈취형 악성코드의 변종이었습니다. 이 악성코드는 Chrome, Edge, Brave 브라우저의 데이터, 세션 토큰, 그리고 무엇보다도 암호화폐 지갑을 표적으로 삼았습니다. 도난당한 모든 데이터는 보안이 적용되지 않은 HTTP 트래픽을 통해 두 개의 명령 및 제어 서버로 전송되었습니다. 암호화폐 탈취 활동의 IOC를 통해 스팀(Steam)이 조직적인 절도 작전을 위한 악성코드 유포 경로임이 확인되었습니다.
배신당한 신뢰
바로 그들이 신뢰하던 인증서와 안일한 태도가 수십 건에 달하는 절도 사건을 초래했고, 이들은 이를 은폐해 왔습니다. 이는 플랫폼에 대한 신뢰를 대규모로 악용한 전형적인 공급망 공격 사례입니다.
침해 징후(IOC)
| 파일 | SHA256 | 분류 |
|---|---|---|
game2.bat | aa1a1328e0d0042d071bca13ff9a13116d8f3cf77e6e9769293e2b144c9b73b3
|
BAT.Trojan-Stealer.StimBlaster.F |
launch1.vbs | c3404f768f436924e954e48d35c27a9d44c02b7a346096929a1b26a1693b20b3
|
Script.Malware.BatchRunner.A@IOC |
test.vbs | b2f84d595e8abf3b7aa744c737cacc2cc34c9afd6e7167e55369161bc5372a9b
|
Script.Malware.BatchRunner.A@IOC |
Client-built2.exe | 17c3d4c216b2cde74b143bfc2f0c73279f2a007f627e3a764036baf272b4971a
|
Win64.Backdoor.StimBlaster.L6WGC3 |
Block1.exe | 59f80ca5386ed29eda3efb01a92fa31fb7b73168e84456ac06f88fdb4cd82e9e | Win32.Trojan-Stealer.StealC.RSZPXF |
거짓말의 실체 파헤치기: “해킹당한 계정”은 완전한 헛소리다
은폐 사실 폭로
스팀은 거짓말을 하고 피해자들을 돕는 한편, 자사에서는 개발자들을 심사하여 그들의 콘텐츠에 최고 수준의 신뢰 인증을 부여합니다.
밸브의 “해킹당한 개발자”라는 변명을 그 본모습 그대로 부르자: 한심하고 쉽게 반박될 수 있는 거짓말. 이는 사용자층의 지성을 모욕하는 것이며, 자신들의 부주의로 인한 결과를 회피하기 위해 꾸며낸 이야기일 뿐입니다. 스팀의 필수 절차를 살펴보는 순간, 이 모든 허구적인 주장은 무너져 내립니다.
- ‘100달러 장벽’과 신원 확인: 스팀에 게임을 출시하려면 모든 개발자는 ‘스팀 다이렉트(Steam Direct)’ 프로그램을 거쳐야 합니다. 이 과정에는 100달러의 수수료를 지불하고, ‘고객 신원 확인(KYC)’ 절차를 완료하여 법적 이름, 은행 정보 및 세금 관련 서류를 제출해야 합니다. 가해자는 익명의 유령이 아니었습니다. 밸브는 해당 인물의 신원 및 금융 정보를 이미 확인하여 기록해 두었습니다. 따라서 밸브의 무대응은 자사 사용자보다 검증된 파트너를 보호하기 위한 의도적인 선택이었다고 볼 수 있습니다.
- ‘22일 정전’에 대한 오해: Steamworks는 개발자들에게 계정을 보호할 수 있는 강력한 도구를 제공합니다. 계정 관리 권한을 상실한 정당한 개발자는 “퍼블리셔 인증 정보 접근 권한 상실” 티켓을 제출할 수 있습니다. 이 절차는 신속하게 진행되도록 설계되어 있어, 퍼블리싱 권한과 빌드를 몇 주가 아닌 몇 시간 내에 동결합니다. 개발자가 계정에 접근할 수 없는 상태에서 20일 넘게 게임이 악성코드를 유포할 수 있다는 생각은 터무니없는 일입니다. 이는 두 가지 시나리오 중 하나를 암시하며, 두 경우 모두 밸브를 비난하게 됩니다. 즉, 개발자가 공범이었거나, 밸브가 수십 건에 달하는 사용자 불만뿐만 아니라 개발자가 보낸 절박한 지원 티켓까지 무시했다는 것입니다.
- 사용자 불만 사항에 대한 체계적인 방치: 수십 명의 사용자가 금전적 절도, 악성코드 활동, 계정 해킹에 대한 상세한 신고를 접수했습니다. 이는 막연한 불만이 아니라, 즉각적인 조치가 필요한 정보였습니다. 유능한 지원 시스템이라면 이러한 사례를 즉시 식별하고, 문제를 상급 부서로 이관하며, 조사 결과가 나올 때까지 24시간 이내에 해당 앱 페이지를 동결했을 것입니다. 밸브가 22일 동안 이를 이행하지 않은 것은 단순한 실수가 아닙니다. 이는 고의적인 무시를 고수하는 정책입니다.
핵심적인 속임수: 디지털 범죄 현장의 증거 조작
바로 이 지점에서 밸브의 은폐 행위는 단순한 과실을 넘어, 오직 다음과 같이만 묘사될 수 있는 수준으로 발전합니다. 디지털 범죄 현장을 조작하는 행위. 이 점을 분명히 밝히자면, 밸브는 감염된 게임을 삭제하지 않았다.
C2 인프라를 추적해 온 보안 연구원들이 확보한 포렌식 증거와 분석 결과는 이를 명백히 입증합니다. 바로 범죄자들이 직접 스팀 서버에서 자신들의 악성 빌드를 삭제했다는 사실입니다. 이들은 Telegram 통제 그룹이 공개적으로 적발된 직후인 9월 21일에 이 같은 조치를 취했습니다. 이들은 흔적을 지우기 위해 증거를 모두 파괴하는 ‘화염전술’ 방식으로 철수했습니다.

밸브가 조치를 취했다고 주장하는 것은 노골적인 날조입니다. 밸브는 공격자들이 스스로 흔적을 지울 때까지 기다렸다가 나서서 스토어 페이지를 삭제함으로써, 사실상 주요 증거가 파기되도록 방치했습니다. 이는 피해 수습이 아니라 증거 인멸 행위였습니다. 그들은 사용자를 보호한 것이 아니라, 범죄 현장을 깨끗이 정리함으로써 자신들을 보호한 것입니다.
기업의 무관심이 초래하는 인명 피해
밸브의 과실은 현실 세계에 실질적인 결과를 초래했으나, 회사는 이에 대해 전혀 책임을 지지 않았다.
- 재정적 파탄: 15만 달러 이상이 도난당했습니다(100만 달러를 넘는 것으로 보입니다). 많은 이들에게 이 돈은 인생을 바꿀 만한 금액이었습니다. 한 스트리머는 암 치료를 위한 자선 생방송 도중 3만 2천 달러를 잃었습니다.
- 신뢰의 배신: 수백 명의 사용자가 계정 해킹을 당하고, 데이터가 유출되며, 시스템이 감염되는 피해를 입었습니다.
- 절대적인 침묵: 지금까지도 밸브는 환불도, 보상도, 진심 어린 사과도 하지 않았습니다. 그들이 보낸 형식적인 답변은 모든 피해자들에게 모욕이었습니다.
동기: 사람보다 이윤을 우선시하는 태도
밸브가 왜 이런 일이 일어나도록 내버려 두었을까요? 그 동기는 단순하면서도 냉소적입니다: 더 저렴했거든요.
모든 빌드에 샌드박스 테스트를 도입하고, 개발자 인증 정보를 분리하며, 유능한 보안 팀을 채용하고, 투명성 보고서를 공개하는 등 진정한 보안 체계 개편에는 수백만 달러의 비용이 소요될 것입니다. 피해자들에게 배상금을 지급하는 것은 막대한 비용이 드는 선례를 남기게 될 것입니다.
대안은 무엇이었을까? 모호하고 오해의 소지가 있는 성명을 발표하고, 뉴스의 관심이 다른 곳으로 옮겨가도록 내버려 둔 뒤, 최소한의 홍보적 타격만 감수하는 것이었다. 이는 사용자 안전을 감수할 만한 손실로 간주한, 신중한 사업적 결정이었다.
이러한 부주의한 행태는 새로운 일이 아닙니다. PirateFi(2024년)부터 Chemia(2025년)에 이르기까지, 밸브는 반복적으로 경고를 무시하고 자사 플랫폼에 악성코드가 유입되도록 방치했으며, 대중의 거센 반발이 일어난 후에야 비로소 조치를 취했습니다. BlockBlasters 사건은 예외적인 사례가 아니었습니다. 이는 부실한 보안 문화가 초래한 필연적인 결과였습니다.
최종 판결: 기소 내용대로 유죄
사실이 스스로 말하게 하자.
- 사실: 밸브의 자동화 시스템이 사소한 악성코드가 포함된 빌드를 승인했다.
- 사실: 밸브의 지원팀은 피해자들의 직접적인 경고를 3주 동안 무시했다.
- 사실: 밸브는 해커들이 직접 악성 파일을 삭제한 후에야 조치를 취했다.
- 사실: 밸브의 공식 성명은 책임을 회피하기 위해 의도적으로 사실을 왜곡한 것이었다.
밸브는 단순히 실패한 것이 아닙니다. 거짓말을 했습니다. 자사의 과실을 은폐하고, 이익을 지키기 위해 애쓰는 동안 사용자들이 그 대가를 치르게 내버려 두었습니다. 커뮤니티가 스팀에 품었던 신뢰는 돌이킬 수 없을 정도로 깨져버렸습니다. 이것은 단순한 실수가 아니라 배신이었습니다.




