
Forescout, Claude Code로 WAGO PLC 익스플로잇을 $535.74에 포팅 — 그리고 더 얻으려다 컨트롤러를 벽돌로 만들어 버렸다
- OrcaNEWOrcaCyber: MiMo V2.6 Flash Abliterated2026-10-26$0.80 / $1.60 100만 토큰당 · 108 tok/s
- MoonshotNEWMoonshotAI: Kimi K3.1 Pro2026-10-2455지능
- OrcaNEWOrcaCyber: DeepSeek V4.1 Flash Abliterated2026-10-23$0.80 / $1.60 100만 토큰당 · 167 tok/s
- minimaxNEWMiniMax: M3.1 Flash2026-10-1943지능
- OrcaNEWOrca: OrcaCyber Ultra 1.02026-10-17$5.00 / $10.00 100만 토큰당 · 42 tok/s
- deepseekNEWDeepSeek: DeepSeek V4.1 Flash 10172026-10-1745지능
- DeepSeekNEWDeepSeek: DeepSeek V4.1 Flash2026-10-1740지능
- OrcaOrca: OrcaCyber Zero 1.52026-10-10$3.00 / $7.50 100만 토큰당 · 130 tok/s
- openaiOpenAI: GPT-6.1 Sol2026-09-2952지능
- anthropicAnthropic: Claude Sonnet 5.52026-09-2856지능
- typesafeTypeSafe: Jev 1.132026-09-24$0.04 / $0.00 100만 토큰당 · 661 tok/s
- OpenAIOpenAI: GPT-6 Luna2026-09-2238지능
- OpenAIOpenAI: GPT-6 Sol2026-09-2248지능
- AnthropicAnthropic: Claude Opus 5.52026-09-2258지능
- xiaomiXiaomi: MiMo-V2.6-Flash2026-09-21$0.14 / $0.28 100만 토큰당
- xiaomiXiaomi: MiMo-V2.6-Pro2026-09-21$0.43 / $0.87 100만 토큰당
- xAIGrok 4.72026-09-2146지능
- OrcaOrca: OrcaCyber Zero 1.02026-09-17$3.00 / $7.50 100만 토큰당 · 228 tok/s
- OrcaOrca: OrcaVerify Text 1.02026-09-16$2.00 / $0.00 100만 토큰당 · 1906 tok/s
- OpenAIOpenAI: GPT-6 Astra2026-09-0453지능77코딩
에2026년 9월 1일, Forescout Research의 Vedere Labs는 실험을 발표했습니다: Claude Code에 터미널, 리버스 엔지니어링 도구 Ghidra, 펌웨어 바이너리, 실제 WAGO 750-831 컨트롤러를 제공한 뒤, 밀접하게 관련된 대상에서 이미 작동하던 인증 전 원격 코드 실행 익스플로잇을 이식하도록 요청했습니다. 그 대상은 WAGO 750-852였습니다. 모델은 해냈습니다: 셸코드가 계속 지워지는 이유를 알아냈고, 트리거 순서를 바꿨으며, 자격 증명 없이 실제 하드웨어에서 공격자가 제공한 ARM 셸코드를 실행했습니다. 비용은 8시간 32분의 세션 시간(여러 날에 걸쳐 분산), $535.74의 API 사용료와 지속적인 인간의 조정이었습니다. 이후 익스플로잇을 명령 및 제어 임플란트로 확장하려는 시도에서 플래시 매핑 메모리 영역에 쓰기가 발생해 컨트롤러를 영구적으로 사용할 수 없게 만들었습니다. 이는 연구진 자체의 테스트 장치였으며 현장 장비가 아니었습니다. 이 실험은 AI 사고 아카이브에 있는 한 기록으로, 이 아카이브에는 전체 기록 세트와 출처, 그리고 이 시리즈의 인접 항목이 담겨 있습니다.
Forescout이 실제로 모델에 넘긴 것
설정은 헤드라인 수치보다 더 중요합니다. 실험이 무엇을 보여주고 무엇을 보여주지 않는지를 결정하기 때문입니다. Vedere Labs의 자체 설명은 상호작용형 구성을 설명합니다: Claude Code에는 터미널, 참조 파일, Ghidra를 포함한 분석 도구, 그리고 192.168.2.14의 실제 대상에 대한 네트워크 접근 권한이 있었습니다. 해당 대상은 펌웨어 V01.04.16을 실행하는 WAGO 750-831이었습니다. Cloud Security Alliance의 이 사건에 관한 연구 노트에 따르면, 연구자들은 세션 중 어느 시점에서든 개입할 수 있었습니다. 디버거와 대상 펌웨어의 소스 코드는 없었습니다.
이 결함은 이미 알려져 있었고 이미 문서화되어 있었습니다. CVE-2021-31886의 스택 기반 버퍼 오버플로로Nucleus FTP 서버, TCP 포트 21에서 인증 전에 지나치게 큰 USER 명령을 전송하여 도달할 수 있으며, Forescout의 이전 작업에서 이미 750-852에 대한 동작하는 익스플로잇을 만들어냈습니다. Hacker News는 CVSS 점수를 9.8로 보고하는데, 이는 Nucleus를 유지 관리하는 Siemens가 부여한 것입니다. 원래 권고문은 CERT@VDE의 VDE-2021-050입니다.
그래서 이것은 자율적인 취약점 발견이 아니었다. 그것은 감독하에 이루어진 이식이었다. 알려진 버그 하나, 작동하는 참조 익스플로이트 하나, 같은 계열의 기기 하나, 그리고 곁에 있는 전문가 한 명. Forescout의 표현은 이 점에 대해 정확하며, 자체 결론은 장벽이 여전히 높다는 것이다. 이 실험이 측정하는 것은 누군가 이미 침해한 기기에서 같은 제품군의 다음 기기로 익스플로이트를 옮기는 데 드는 한계 비용이다. Cloud Security Alliance의 설명대로, 이것이 바로 한 모델의 패치 공백이 모든 모델의 패치 공백인지를 결정하는 단계다.
8시간, 그리고 256바이트 버퍼
가장 먼저 기록할 만한 것은 세션의 상당 부분이 틀린 방향으로 진행되었다는 점이다. Forescout에 따르면 모델의 첫 번째 프롬프트에서는 CVE-2021-31886이 아닌 다른 잠재적 FTP 버그가 드러났다. 연구진은 이를 일단 제쳐두었고, 회사는 수동 검토 결과 이것이 별개의, 이전에 식별되지 않은 취약점일 수 있으며 CVE가 할당되지 않았다고 말한다. 이후 한 세션에서는 취약한 함수를 올바르게 추적하지 못해 유효하지 않은 익스플로잇을 생성했다. 모델은 잘못된 가설을 좇았고, 관련 없는 코드를 디컴파일했으며, 컨텍스트가 바닥났다.
그것은 중간 결과 하나를 얻기는 했다: 750-831을 크래시시킨 페이로드로, 이는 오버플로가 아직 제어된 실행을 제공하지 않은 채 두 번째 장치에 도달했음을 입증했다. 크래시 대 제어라는 그 구분이 바로 세션이 멈춘 지점이었다. 모델이 만든 모든 페이로드는 실행되기 전에 지워지고 있었고, 그 이유는 대상의 평범한 FTP 처리로 밝혀졌다: 과대한 USER 명령 이후 정상 처리가 공격자의 셸코드를 담고 있던 256바이트 버퍼를 0으로 초기화했던 것이다. Forescout은 원인을 찾으려면 호출 체인과 싱크에 대한 인간 주도의 분석이 필요했다고 말하며, 해당 루틴을 sub_100BA758.
수정 사항은 시퀀스 변경이었습니다. 750-852 익스플로잇은 USER 다음에 QUIT을 전송했습니다. 750-831에서는 모델이 USER 다음에 CWD를 사용하는 방식으로 전환했고, 명령에서 CRLF 종결자를 생략했기 때문에 처리 경로가 평소처럼 완료되지 않았고 버퍼가 실행될 수 있을 만큼 오래 유지되었습니다. 그런 다음 익스플로잇은 이더넷 수신 콜백 컨텍스트에서 실행되었습니다. Forescout에 따르면, 입증된 기능은 네트워크 패킷 전송에 그칩니다.
코드 실행이 안정적으로 이루어지자, 속도는 완전히 달라졌다. 모델은 no-op 셸코드에서12분 만에 두 개의 작동하는 네트워크 페이로드로 넘어갔다: 하나는 공격자가 제어하는 호스트로 ICMP 에코 요청을 보내고, 다른 하나는 문자열 "PWNED"를 포함한 UDP 패킷이었다. 그 12분이라는 수치는 전체 기록에서 가장 중대한 숫자이며, Forescout의 분석 글이 경고로 다루는 바로 그 수치다 — 어려운 부분은 첫 단계였고, 그 이후 단계들은 거의 비용이 들지 않았다.

청구서: 사람이 더 빨리 했을 수도 있는 포팅에 535.74달러
최종 원격 코드 실행 단계에서 Forescout은 $535.74의 API 사용량을 8시간 32분의 세션에 걸쳐 보고했으며, 이 작업은 한 번에 실행된 것이 아니라 며칠간의 연구에 걸쳐 분산되었습니다. 공개된 토큰 수치는 입력 2.6k, 출력 1.3M입니다.
그 분할은 문제 제기할 만큼 이례적이다. 긴 에이전트형 코딩 세션에서는 보통 입력 쪽이 압도적으로 많다. 매 턴마다 모델에 점점 커지는 컨텍스트가 다시 전송되기 때문이다. 입력 토큰 2,600개로 청구된 8.5시간 세션은 컨텍스트 비용을 온전히 반영한 계산이 아니다. Forescout은 세부 내역을 공개하지 않았고, 같은 날 같은 단계를 보도한 SecurityWeek도 "500달러 이상"이라는 표현만 내놓았을 뿐 토큰 수치는 전혀 제시하지 않았다. 달러 총액은 두 보도가 모두 뒷받침하는 수치이지만, 입력/출력 분할은 전체 청구 기록이 아니라 보도된 그대로 읽어야 한다.
비용은 AI 지원의 명분에서 가장 약한 부분이며, Forescout도 이를 스스로 인정한다. 회사 자체의 평가에 따르면, 연구자는 "AI 없이 더 짧은 시간과 더 낮은 비용으로, 동시에 PLC를 계속 살려 둔 채로" 이 익스플로잇을 포팅할 수 있었을 것이다. 이 실험은 모델이 전문가보다 저렴하다는 주장이 아니다. 그것은 그 비교가 어느 방향으로 움직이고 있는지에 대한 주장이다.

벽돌이 된 컨트롤러
이 실패는 물리적 결과가 있는 이 기록의 일부입니다. 코드 실행이 확립된 후, 후속 세션은 익스플로잇을 명령 및 제어 임플란트로 확장하려고 시도했습니다. Forescout에 따르면 페이로드는 점점 더 복잡해졌고, 그중 하나는 플래시에 매핑된 메모리 영역에 기록했습니다. 컨트롤러는 영구적으로 사용 불능 상태가 되었습니다.
여기서는 세 가지를 분리해서 볼 필요가 있습니다. 해당 장치는 연구자들이 직접 사용하던 테스트 하드웨어였기 때문에 어떤 운영자도 생산 라인을 잃지 않았고, 아카이브에도 실제 피해는 기록되어 있지 않습니다. 피해는 장비에 정당한 접근 권한이 있는 에이전트가 운영자가 요청한 작업을 수행하면서 발생한 것이지, 공격자에 의한 것이 아닙니다. 그리고 그 쓰기는 서버에서 잘못된 코드 한 줄이 보통 그렇지 않은 방식으로 되돌릴 수 없는 것이었습니다. 임베디드 컨트롤러의 플래시는 되돌릴 수 있는 파일이 아닙니다. Forescout의 분석 틀은 바로 그 점에서 직접 비롯됩니다. 그것이 지목하는 당면 위험은 에이전트가 스스로 컨트롤러를 공격하기로 결정하는 것이 아니라, 실패가 운영상 결과를 초래하는 상황에서 "권한이 부여된 에이전트가 물리적 시스템에 대해 잘못된 조치를 취하는 것"입니다.
무엇이 확립되었고, 무엇이 그렇지 않은가
아카이브는 이 기록을 신뢰도 A, 심각도 중간, 이견 없음, 실제 피해가 기록되지 않은 것으로 평가하며 — 그 기준에서는 이를 뒷받침하는 보도도 타당하다. Forescout의 글은 1차 설명이다. SecurityWeek은 같은 날인 2026년 9월 1일에 자체 보도를 게재했고, The Hacker News와 Cloud Security Alliance의 연구소는 모두 9월 2일에 게재했다. 그중 어느 것도 독립적인 기술 재현은 아니며 그렇다고 주장하지도 않지만, 이들은 메커니즘, 두 모델 버전, 비용, 12분간의 페이로드 실행 및 브릭화에 대해 일치한다.
그 기록에 근거하여 확립되었습니다:
• 감독 하에 수행된 포팅이 성공했습니다. CVE-2021-31886에 대한 인증 전 익스플로잇이 펌웨어 V01.04.16을 실행하는 WAGO 750-852에서 750-831로 이식되었으며, 운영자가 제공한 ARM 셸코드가 실행 중인 장치에서 실행되었습니다.
• 메커니즘. 일반적인 USER 처리로 256바이트 버퍼가 0으로 초기화되는 것, QUIT에서 CWD로의 전환, 그리고 생략된 CRLF 종결자는 Forescout과 2차 보도에서 일관되게 설명됩니다.
최종 단계의 수치: 8시간 32분, $535.74, 입력 토큰 2.6k 및 출력 토큰 1.3M, 코드 실행부터 두 개의 작동하는 페이로드까지 12분.
• C2 extension이 컨트롤러 하나를 사용 불능으로 만들었고, 그것이 테스트 유닛이었다는 점.
• Forescout 자체의 판단은 비용 측면에서 부정적입니다. 인간 연구자가 이 포팅을 더 빠르고 저렴하게, 그리고 하드웨어를 파괴하지 않고도 해냈을 가능성이 크다고 분명히 밝히고 있습니다.
확립되지 않았거나 긴장 관계에 있음:
• 독립적인 기술 검증. Cloud Security Alliance의 분석을 포함해 공개된 모든 설명은 Forescout이 자사 작업을 기술한 내용으로 거슬러 올라간다. Forescout 외부에서 해당 포트를 재현한 곳은 없으며, SecurityWeek의 보도에는 독립적인 전문가 논평이 담겨 있지 않다.
• 세션의 달력상 날짜. Forescout은 기간을 제공할 뿐 날짜는 제공하지 않습니다. 기록에서 확정된 유일한 날짜는 게시일인 2026년 9월 1일입니다.
• 기반이 되는 권고가 다루는 WAGO 모델은 몇 개인가. The Hacker News는 CERT@VDE의 VDE-2021-050에서 영향을 받는 10개 모델 목록을 그대로 옮긴다. Cloud Security Alliance 노트는 이 수치를 19로 제시한다. 권위 있는 출처는 권고 자체이므로, 이러한 불일치는 어느 쪽 숫자를 인용하기보다 권고를 직접 확인해야 하는 이유다.
• 위에서 설명한 대로의 정확한 입력 토큰 집계.
• 실패한 임플란트가 실제로 한 일. Forescout에 따르면 페이로드가 플래시 매핑 영역에 기록되었지만, 페이로드나 주소, 시퀀스를 공개하지 않아 외부에서는 벽돌 현상을 재구성할 수 없다.

WAGO 측: 사용 가능한 업데이트 없음
형제 모델로의 이식이 중요한 이유는 그 형제 모델이 수정되지 않을 것이기 때문입니다. CERT@VDE의 VDE-2021-050은 Nucleus V1 실시간 운영체제를 실행하는 750 시리즈 컨트롤러를 영향을 받는 제품으로 나열하며, "현재 이 버전에 대한 업데이트는 없습니다"라고 명시합니다. The Hacker News는 영향을 받는 목록에 있는 두 모델인 750-882와 750-885/0xx-xxx가 권고문의 완화 조치 섹션과 교정 조치 표 모두에서 빠져 있어 해당 모델들의 상태가 불분명하다고 지적합니다.
The Hacker News에 따르면, Nucleus를 유지 관리하는 Siemens는 모든 버전의 Nucleus NET에 대해 수정 조치가 계획되어 있지 않다고 밝혔으며, Nucleus ReadyStart V3의 V2013.08.1 이후 릴리스는 이미 CVE-2021-31886을 수정합니다. 이는 펌웨어에 더 오래된 스택이 탑재되어 있고 공급업체가 업데이트 경로를 공개하지 않은 컨트롤러에게는 작은 위안일 뿐입니다.
이 결함은 새로운 것이 아니다. CVE-2021-31886은 2021년 11월 Forescout과 Medigate가 NUCLEUS:13이라는 이름으로 공개한 13개 취약점 중 하나였다. The Hacker News는 또한 2026년 9월 1일, 이에 대한 공개 익스플로잇 코드를 쉽게 찾을 수 있는지 확인했다. GitHub 저장소 검색은 아무것도 반환하지 않았고, 이 결함은 Exploit-DB와 Packet Storm에도 없었다. 다만 GitHub 검색은 파일 내용이 아니라 저장소 이름과 설명을 대상으로 한다는 단서가 붙는다. Forescout이 8시간 30분과 500달러 이상을 들인 포팅은 복사-붙여넣기로 이루어진 것이 아니다.
Forescout이 추세선이 여전히 중요하다고 말하는 이유
Forescout의 결론은 의도적으로 흥미롭지 않으며, 기록에서 어느 방향으로든 오독될 가능성이 가장 큰 부분이다. "가능은 하지만, 들리는 것만큼 쉽지는 않다"라고 이 회사는 쓴다. 이 회사는 자사의 이전 NUCLEUS:13 연구에서 이 문제들이 자산 소유자의 우선순위 목록 상단 근처에 있어서는 안 될 것이라고 결론 내렸다고 언급하며, AI의 발전으로 조직들이 그 평가를 재검토해야 한다고 말한다. 익스플로이트하는 데 필요한 노력이 줄어들수록 컨트롤러의 우선순위를 낮출 이유로서 "익스플로이트하기 어렵다"는 점은 약해지기 때문이다.
Cloud Security Alliance의 노트는 이 패턴에 유용한 약칭을 제공한다: 첫 단계는 어렵고, 이후 단계는 빠르다. 첫 적응에는 8시간 30분, 전문가의 감독, 그리고 파괴된 장치 한 대가 들었다. 두 번째와 세 번째 페이로드는 12분이 걸렸다. 첫 단계가 더 저렴해지면, 그 비율은 현재 위치에 머무르지 않는다.
그 주장은 특정한 배경에 비추어 설득력을 갖지만, Forescout 실험과는 별개이며 그에 관한 증거로 읽어서는 안 된다. The Hacker News는 다음과 같이 보도한다: 2026년 8월 19일NSA, CISA, FBI, 미국 에너지부, EPA가 인터넷에 노출된 Siemens S7 PLC를 겨냥한 AI가 생성한 익스플로잇 스크립트에 대해 경고하는 공동 권고를 발표했다. 해당 기관들은 이 활동이 지속적인 정찰과 역량 개발을 목적으로 했을 가능성이 크다고 평가했으며, 그 활동을 특정 행위자에게 귀속시키지 않았다. 같은 매체는 FBI와 EPA가 2026년 7월 27일 이후 최소 7개 주의 상수도 시설에서 침해를 발견했다고 보도한다. 그중 일부는 운영을 저하시켰으며, 해당 침해에서 공격자들은 인터넷에 노출된 Rockwell Automation MicroLogix 컨트롤러의 IP 주소와 비밀번호를 익스플로잇이 전혀 필요 없이 변경했다. 공동 권고는 익스플로잇 생성을 위한 AI가 "작동하는 ICS 공격 도구를 구축하는 데 필요한 기술 전문성과 시간을 극적으로 줄이고 있다"고 경고했다.
운영자가 여기서 얻어야 할 것
실용적인 대응은 매력적이지 않은 쪽이며, AI 논쟁이 어떻게 결론 나든 달라지지 않는다. 네트워크에 750 시리즈 또는 다른 Nucleus 기반 컨트롤러가 있는지, 그리고 어떤 펌웨어가 실행 중인지 확인하라. 업데이트가 없는 경우에는 FTP, Telnet 및 웹 관리를 제한하거나 비활성화하고, 경계에서 포트 21을 차단하며, 제어 네트워크를 분할하고, 관리 인터페이스를 인터넷에 노출하지 마라. 비정상적인 프로토콜 사용, 반복적인 충돌, 예상치 못한 아웃바운드 트래픽을 모니터링하라 — 컨트롤러의 충돌은 단순한 중단이 아니라 신호다.
클라우드 보안 연합(Cloud Security Alliance)은 실험 자체의 논리에서 이어지는 한 단계를 추가한다. 즉, 공급업체의 패치 범위가 실제 노출과 일치한다고 가정하는 대신 형제 모델들이 취약점을 공유하는지 독립적으로 검증하는 것이다. 그것이 Forescout이 한 쌍의 장치에 대해 실행한 점검이며, 그 주장은 첫 단계가 저렴해질수록 같은 점검도 더 저렴해진다는 것이다.
물리 시스템 근처에서 에이전트를 사용하는 팀에게 브리킹은 구체적인 교훈이다. Forescout의 권장 사항은 안전이 중요한 결정에는 인간 전문가를 계속 참여시키고, 자율 방어에 대한 신뢰를 "제약되고, 관찰 가능하며, 검증 가능하게" 만드는 것이다 — 펌웨어나 플래시에 쓰기 전 승인 게이트, 롤백이 있는 경우 롤백, 비운영 하드웨어에서의 테스트가 그것이며, 임베디드 컨트롤러에서는 잘못된 쓰기가 롤백되지 않기 때문이다.
그 기록은 그것에 무엇을 기대했느냐에 따라 다르게 읽힐 것이다. 그것은 모델을 산업용 컨트롤러에 적용해 놓고 그대로 방치할 수 있다는 것을 입증하는 사례가 아니다. 그 실험을 수행한 바로 그 회사도 사람이 그 작업을 더 빠르고 더 저렴하게 할 수 있었을 것이라고 말한다. 그것이 실제로 보여주는 것은 과거에는 전문가가 필요했던 단계에 대해 측정된 비용이다: 8시간 30분, 535달러, 지속적인 전문가 감독, 그리고 고장 난 컨트롤러 하나.
