오픈 모델을 내려받아 그 위에 만든 에이전트에게 터미널 접근 권한을 준다면, 아무도 가중치를 조작하 지 않았다고 믿는 셈입니다. Microsoft Research는 그 조작에 얼마나 적은 손이 드는지 보여 주었습니다. 연구진이 Lazarus라고 부르는 기법은 언어 모델에서 거의 쓰이지 않는 뉴런 10개 미만을 고치고, 재학습도 필요 없이, 평소엔 정상인 에이전트를 숨겨진 트리거가 나타나면 공격자의 명령을 실행하는 에이전트로 바꿉니다.
작동 방식은 단순해서 더 불안합니다. 모든 대형 언어 모델에는 거의 발화하지 않는 뉴런이 있습니다. 사전 학습이 내부 표현을 아주 잘 정리해 두기 때문에, 약 50개 예시로 맞춘 단순한 선형 분류기도 트리거가 있는 입력과 없는 입력을 구분할 수 있고, 잠든 뉴런을 그 탐지기로 다시 배선할 수 있습니다. 뉴런이 발화하면 원하는 토큰을 모델 출력에 강제로 넣을 수 있고, 여러 개를 이으면 임의의 명령을 만들 수 있습니다. Microsoft가 예로 든 트리거는 날짜입니다. 시계가 2027년 자정을 넘기면 에이전트가 평범한 작업 도중 공격자의 코드를 내려받아 실행하는 명령을 내놓고, 자신이 가진 권한으로 실행합니다. 모델은 여전히 표준 안전 평가를 통과합니다. 조작에는 모델을 돌릴 만큼의 메모리만 있으면 됩니다.
발견 과정에도 반전이 있습니다. 연구를 이끄는 Dimitris Papailiopoulos는 3월에 간단한 실험으로 Claude Code와 Opus 4.5에게 몇몇 활성값을 고정해 모델에 백도어를 심어 달라고 했는데, 방법의 대부분을 에이전트가 스스로 찾아냈다고 말합니다. 좋은 소식은 반대도 성립한다는 것입니다. 최상위 에이전트는 찾아보라고 하면 가중치의 비정상적인 수정을 찾아낼 수 있습니다. 다만 어떤 검사도 모델이 안전하다고 증명할 수는 없습니다. 확실히 탐지하려면 수정되지 않은 원래 가중치와 비교해야 합니다.
실 용적인 조언은 소프트웨어 보안에서 익숙한 것입니다. 모델을 잠재적 내부자 위험으로 다루고, 에이전트가 건드릴 수 있는 범위를 제한하고, 하는 일을 감시하고, 가중치의 출처를 알아 두라는 것입니다. Microsoft는 Microsoft Foundry가 오픈 웨이트 모델을 원래 배포자와 연결하고 검사된 컨테이너에서 실행하며, 최상위 에이전트를 이용한 가중치 검사와 모델 암호 서명을 계획하고 있다고 밝혔습니다. llama.cpp나 Ollama로 모델을 로컬에서 돌리는 사람은 원래 배포자에게서 내려받고 해시를 확인해야 합니다.
연구진은 이것이 오픈 웨이트에 반대하는 주장이 아니라고 강조합니다. 공격에는 체크포인트에 대한 쓰기 권한만 있으면 되므로 내부 모델도 똑같이 노출되기 때문입니다. 한계로는 블로그 글의 세부 내용이 적고, 제품에 관한 주장은 Microsoft 자체의 것이며, 신뢰받는 제공자 자체가 침해된 경우에는 Foundry의 보호가 미치지 않는다는 점이 있고, Microsoft도 이를 인정합니다.