Coldframe은 모사 냉장 관리기 접속을 기록하고, GitLab은 취약점을 고쳤으며 LuaRocks.org는 침해를 공개했다
Coldframe은 가짜 냉장 관리기 화면에서 로그인·제어 시도를 기록합니다. GitLab은 정규표현식 컴파일 오류 취약점을 패치했고, LuaRocks.org는 실제 서버 코드 실행과 악성 패키지 게시를 공개했습니다. 세 자료는 모사 장비에 도착한 입력, 잠재적 취약점, 확인된 침해라는 서로 다른 상황을 다룹니다.
Coldframe은 가짜 냉장 관리기에 도착한 로그인·제어 요청을 기록합니다. GitLab은 정규표현식 컴파일 오류로 특정 조건에서 원격 코드 실행을 허용할 수 있었던 취약점을 고쳐 2026년 10월 21일 패치판을 냈습니다. LuaRocks.org는 같은 해 9월 사고 보고서에서 7~8월 서버 코드 실행과 악성 패키지 게시를 공개했습니다. 세 자료는 허니팟 관측, 취약점 공지, 실제 침해 조사라는 서로 다른 근거를 다룹니다.
GitHub 계정 hedgerow-dev가 공개한 Coldframe은 슈퍼마켓 냉장 설비 관리기를 흉내 내는 저상호작용 허니팟입니다. 실제 장비의 모든 기능을 제공하는 대신 Danfoss AK-SM 800A, Dixell XWEB, Carel pCOWeb의 로그인 화면과 일부 요청 경로, 가짜 대시보드를 모사합니다. 프로젝트는 접속 요청과 입력한 계정 정보, 로그인 뒤 대시보드에서 누른 제어 항목을 기록하며, 공개된 취약점 공격 형태와 맞는 요청에는 별도 표시를 붙인다고 설명합니다.
저장소 설명에 따르면 로그인 뒤에는 가짜 냉장 진열대 대시보드가 나타나고, 제상 버튼을 눌러도 실제 설비 대신 모사 화면의 제어 이벤트로 기록됩니다. Coldframe 로그에는 모사 서비스에 도착한 요청과 그 화면에서 기록된 조작이 담깁니다. 실제 냉장 설비의 센서값이나 작동 상태는 로그 항목에 포함되지 않으므로, 접속 기록만으로 실기기 침해 여부를 확인할 수 없습니다.
로그에는 입력한 비밀번호와 요청 본문이 포함될 수 있습니다. Coldframe README는 로그 필드가 접속자의 입력으로 정해지므로 이를 처리하거나 열어볼 때 신뢰할 수 없는 데이터로 다루라고 안내합니다. 기록은 어떤 값이 허니팟에 제출됐는지를 보여줄 뿐, 제출자의 신원까지 확인해 주지는 않습니다.
GitLab의 2026년 10월 21일 공지는 Community Edition과 Enterprise Edition의 여러 버전을 대상으로 한 보안 패치입니다. 핵심 취약점 CVE-2026-110264는 특수하게 만든 정규표현식을 컴파일할 때 정수 오버플로가 발생하는 문제입니다. GitLab은 특정 조건에서 인증되지 않은 사용자가 서버에서 임의 코드를 실행할 수 있었다고 밝혔고, 취약점의 CVSS 점수를 10.0으로 기재했습니다.
수정판은 19.5.1, 19.4.3, 19.3.6, 19.2.9, 19.1.9, 19.0.10, 18.11.13입니다. GitLab은 영향을 받는 자체 관리형 설치에 해당 버전으로 업그레이드하라고 권고했습니다. GitLab.com은 공지 당시 이미 수정된 버전을 사용하고 있었습니다. 자체 컴파일 설치나 사용자 지정 컨테이너처럼 별도의 Ruby 실행 환경을 쓰는 경우에는 GitLab 업데이트만으로 수정되지 않아 Ruby도 3.3.13, 3.4.12, 4.0.9 이상으로 업데이트해야 합니다.
LuaRocks.org의 사고 보고서는 서버에서 실제로 코드가 실행된 사례를 다룹니다. LuaRocks 사이트는 패키지 정보 파일인 rockspec을 읽어 패키지 이름과 버전 등을 확인합니다. 이를 위해 업로드된 파일을 Lua 코드로 처리하면서 전역 기능을 제한한 빈 실행 환경과 명령 수 제한을 적용했습니다. 그러나 LuaJIT의 loadstring은 Lua 소스 코드뿐 아니라 미리 컴파일된 바이트코드도 받아들입니다. rockspec 처리기는 소스 코드만 예상했지만 바이트코드를 거부하도록 제한하지 않았습니다. 조작된 바이트코드는 제한된 전역 환경을 우회해 서버 프로세스의 메모리와 실제 Lua 상태에 접근하고, 웹 서버 안에서 임의 코드를 실행할 수 있었습니다.
LuaRocks.org는 입력을 텍스트 코드로만 처리하고 바이트코드 파일을 거부하도록 수정했습니다. 다른 서버에서 가져오는 manifest를 읽는 경로에도 같은 수정이 적용됐습니다. 운영자는 계정이 있는 이용자가 웹사이트나 API로 rockspec을 올려 취약점을 악용할 수 있었으며, 이를 이용한 계정 세 개를 확인했다고 밝혔습니다. 2026년 7월 9일부터 8월 20일까지 서버에서 명령이 실행됐고, 8월 7일에는 악성 패키지 세 개가 게시됐습니다. 8월 16일과 20일에는 업로드 API를 통한 자동화된 공격이 수백 차례 이어졌습니다. 취약점 신고는 9월 25일 접수됐고 다음 날 수정됐습니다.
웹 서버 계정이 서버 전체의 관리자 권한을 얻을 수 있었기 때문에 LuaRocks.org 운영자는 서버가 접근할 수 있었던 정보를 모두 노출된 것으로 간주했습니다. 여기에는 계정 정보와 비밀번호 해시, 2단계 인증 비밀값, API 키 등이 포함됩니다. 운영자는 새 서버를 구축하고 이전 서버가 보유했던 자격증명을 교체했으며, API 키와 세션도 폐기했습니다.
운영자는 서버 밖에 매일 저장해 둔 공개 패키지 미러 기록을 이용해 파일과 업로드 내역을 조사했습니다. 기존 모듈이 변조됐다는 증거는 찾지 못했다고 밝혔습니다. 다만 공격자가 삭제한 패키지와 소유자가 삭제한 패키지를 구별하기 어렵고, 침해된 서버가 이용자에게 실제로 보낸 내용을 모두 확인할 수도 없었다고 설명했습니다.