- Title: Engineering Attack Vectors and Detecting Anomalies in Additive Manufacturing
- ArXiv ID: 2601.00384
- 발행일: 2026-01-01
- 저자: Md Mahbub Hasan, Marcus Sternhagen, Krishna Chandra Roy
📝 초록
추가 제조(AM)는 항공우주, 자동차, 의료 등 중요 산업 분야에 신속하게 통합되고 있습니다. 하지만 이 사이버-물리적 융합은 특히 컴퓨터 지원 설계(CAD)와 기계 실행 레이어 간의 인터페이스에서 새로운 공격 표면을 소개합니다. 본 연구에서는 광범위하게 사용되는 용융 침착 모델링(FDM) 시스템인 크리얼러티의 플래그십 모델 K1 Max와 엔더 3에 대한 정교한 사이버공격을 조사하였습니다. 우리의 위협 모델은 대항자들이 사용자 인터페이스로부터 프린터 펌웨어까지 G코드 파일을 전송하는 과정에서 가로채고 조작하는 다층적 Man-in-the-Middle(MitM) 침입입니다. 이 MitM 침입 체인은 몇 가지 비밀리에 이루어지는 파괴 시나리오를 가능하게 합니다. 이러한 공격들은 기존의 슬라이서 소프트웨어나 런타임 인터페이스로는 감지할 수 없으며, 구조적으로 결함이 있지만 외부적으로 신뢰할 수 있는 프린팅 부품을 생성합니다. 이러한 비밀리에 이루어지는 위협에 대응하기 위해, 우리는 생생한 프린팅 동안 생성되는 구조화된 머신 로그를 분석하는 무감독 침입 탐지 시스템(IDS)을 제안하였습니다. 우리의 방어 메커니즘은 변형 BERT로 이루어진 동결된 Transformer 기반 인코더를 사용하여 시스템 행동의 의미 표현을 추출하고, 이어서 대조적으로 학습된 투영 머리가 이상 감도 임베딩을 배우도록 합니다. 이후에는 클러스터링 기반 접근 방식과 자기 주의 자동 인코더를 사용하여 분류합니다. 실험 결과는 우리의 접근법이 무해한 실행과 침해된 실행 사이에서 효과적으로 구분한다는 것을 보여줍니다.
💡 논문 해설
1. **현실적인 공격 시나리오:** 연구팀은 실제적이고 위협적인 공격 상황을 구성하여 3D 프린터의 취약점을 밝혔다. 이를 위해, 부정한 인터페이스를 만들어 합법적인 프린터 제어 패널을 모방했다.
2. **로그중심 침입 탐지 시스템:** 프린터에서 생성되는 텔리미트 로그를 활용하여 비침습적이고 실시간으로 이상 징후를 감지하는 시스템을 개발했다.
3. **표현 학습:** 미리 학습된 MiniLM 언어 모델을 사용해 의미 있는 임베딩을 생성하고, 이로 인해 공격 데이터가 필요하지 않게 되었다.
간단한 설명과 비유:
이 연구는 3D 프린터에 대한 새로운 종류의 사이버 위협을 분석했다. 3D 프린터는 디지털 모델을 물리적인 부품으로 변환하는 데 사용되는데, 이 과정에서 G-code라는 명령어가 중요한 역할을 한다. 연구팀은 이 G-code를 조작해 프린트된 부품의 품질을 저하시키는 공격 방법을 모방했으며, 이를 감지하기 위한 새로운 시스템을 개발했다. 이를 비유하자면, 마치 건물을 짓는데 필요한 설계 도면을 몰래 바꾸어 건물이 제대로 지어지지 않도록 하는 것과 같다.
Sci-Tube 스타일 스크립트:
안녕하세요! 오늘은 3D 프린터에 대한 새로운 위협에 대해 이야기해 보겠습니다. 여러분의 3D 프린터가 어떻게 해킹당할 수 있는지, 그리고 이를 감지하는 방법을 알아볼 거예요.
현실적인 공격 시나리오: 우리는 실제 공격 상황을 만들어 봤어요. 이는 마치 건물을 짓는데 필요한 설계 도면을 몰래 바꾸어 건물이 제대로 지어지지 않도록 하는 것과 비슷해요.
로그중심 침입 탐지 시스템: 프린터에서 생성되는 로그를 활용하여 이상 징후를 감지하는 시스템을 개발했어요. 이는 마치 건설 현장에서 작업자의 행동을 관찰하여 부적절한 행위를 찾아내는 것과 같아요.
표현 학습: 기계가 스스로 학습할 수 있게 하여 공격 데이터 없이도 위협을 감지할 수 있도록 했어요.
Level 1: 초보자
이 연구는 3D 프린터에 대한 새로운 위협을 분석하고 이를 감지하는 방법을 개발했다. 이를 통해 더 안전한 제조 환경을 만들 수 있다.
Level 2: 중급자
연구팀은 G-code를 조작해 프린트된 부품의 품질을 저하시키는 공격 방법을 모방했으며, 이를 감지하기 위한 새로운 시스템을 개발했다. 이로 인해 제조 과정에서 발생하는 위협을 효과적으로 탐지할 수 있다.
Level 3: 고급자
이 연구에서는 G-code를 조작한 공격 방법과 이를 감지하는 새로운 로그중심 침입 탐지 시스템을 개발했다. MiniLM 언어 모델을 사용해 의미 있는 임베딩을 생성하여 공격 데이터 없이도 위협을 분석할 수 있다.
📄 논문 발췌 (ArXiv Source)
# 서론
추가 제조(AM)는 빠른 프로토타이핑과 최소한의 자재 낭비로 복잡한 부품을 생산할 수 있게 해 주며, 3D 프린팅으로 잘 알려져 있다. 항공우주, 의료, 자동차, 방위와 같은 안전이 중요한 분야에 통합되면서 AM 시스템의 기본 구조는 사이버물리적 위협의 주요 대상이 되었다. 네트워크 연결된 3D 프린터가 증가함에 따라 적들은 CAD 설계, STL/G-code 변환, 네트워크 통신, 펌웨어 실행 등 디지털 스레드 전반에 걸쳐 공격 벡터를 활용할 수 있다. 이는 기계적 완성도, 차원 정확도 또는 인텔лектUAL 재산(IP)을 손상시킬 가능성이 있다. 최근 연구에서는 AM 파이프라인의 다양한 단계에서의 공격 가능성과 결과를 입증했다. 이에는 CAD/STL 파일 조작, 악의적인 펌웨어 수정, G-code 수준의 파괴, 전력, 음성, 자기 방출을 통한 사이드 채널 IP 누출이 포함된다.
반면, 공격 감지 프레임워크는 프로세스 모니터링, 통계적 모델링, 아날로그 방출 분석 등을 사용하여 제안되었다. 그럼에도 불구하고 대부분의 이전 접근법은 사전 정의된 공격자 모델이나 정적인 분석에 의존하거나 참조 STL 모델에 액세스해야 한다. 따라서 실시간으로 작동하는, G-code 수준에서 직접 발생하는 은밀한 공격을 감지하기 위한 중요한 간극이 남아 있다. G-code는 CAD 모델로부터 슬라이서 소프트웨어가 생성하고 제작 중에 실행되는 기계 판독형 명령어다. 업로드 후, G-code 파이프라인에 대한 신뢰의 가정은 중요한 취약점을 만든다.
본 연구에서는 전통적인 STL 기반 검증을 우회하고 최종 프린트를 손상시키면서도 명백한 교란 없이 은밀하게 작동하는 G-code 조작 전략을 탐색한다. 우리는 네트워크 연결된 3D 프린팅 환경에서 현실적인 위협 모델을 활용하는 세 가지 전략을 식별했다: Postponed Print Exploit, Access-Jammed G-code Swap, 그리고 Execution-Phase Tampering. 각 접근법은 Under-extrusion, Over-extrusion, Noisy G-code Injection, Dimensionality Change 및 Internal Cavity Insertion과 같은 현실적인 위협 모델에서 구현되었다. 가정된 공격자는 프린터의 파일 시스템이나 제어 인터페이스에 액세스할 수 있다 (예: 해킹당한 프린트 서버, 원격 액세스 도구 또는 내부 위협). 우리는 Creality K1 Max와 Creality Ender 3이라는 두 가지 널리 사용되는 FDM 플랫폼에서 실험을 수행했으며, 이들에는 Klipper 및 OctoPrint과 같은 서로 다른 시스템 아키텍처가 있다.
중요한 도전 과제는 STL 또는 참조 모델이 없는 상태에서 그러한 공격을 감지하는 것이다. 특히 변경 사항이 미묘할 경우 (예: 약간의 Under-extrusion이나 차원 변화) 더욱 그렇다. 이를 해결하기 위해 우리는 선별적으로 훈련된 무감독 침입 탐지 시스템(IDS)를 제안한다. 이 시스템은 프린터에서 추출한 텔레미트리 및 실행 로그를 사용하며, MiniLM Transformer 인코더를 동결하여 자기 감독 대조 학습을 활용해 구별력 있는 잠재 임베딩을 생성한다. 이러한 접근법은 어노테이션된 공격 데이터 없이 의미적 구조를 유지할 수 있다. 임베딩은 PCA/UMAP 및 K-Means 클러스터링을 사용하여 시각화 및 분류되어 양성 패턴과 이상 패턴 사이의 분리가 확인된다.
현실적인 공격 시나리오: 우리는 합법적인 프린터 제어 패널을 모방하는 백도어 인터페이스를 사용하여 Under-extrusion, Over-extrusion, Noisy G-code Injection, Dimensionality Change 및 Internal Cavity Insertion과 같은 다양한 실제 공격 시나리오를 구성했다.
로그중심 침입 탐지 시스템: 우리의 접근법은 프린터 펌웨어에서 생성된 구조화된 텔레미트리 로그를 활용한다. 이를 통해 비침습적이고 실시간으로 이상 징후를 감지할 수 있다.
표현 학습: 미리 학습된 MiniLM 언어 모델을 사용해 의미 있는 임베딩을 생성하며, 이로 인해 공격 데이터가 필요하지 않게 되었다.
이 접근법은 기존 연구의 초점을 정적 설계 수준 검증에서 동적인 실행 시점 이상 감지로 전환한다.
배경 및 기본 사항
3D 프린팅 워크플로우
3D 프린팅은 디지털 모델을 물리적인 부품으로 변환하는 층별 제조 과정이다. 다양한 AM 기술 중 Fused Deposition Modeling (FDM)이 가장 일반적이다. 이는 가성비, 접근성 및 간결함 때문이며, FDM은 열가소성 필라멘트를 녹여 히팅 노즐을 통해 녹인 필라멘트를 X, Y, Z 축을 따라 움직이게 하여 빌드 플랫폼에 물질을 쌓아 올리는 과정이다. 이 과정은 전체 오브젝트가 형성될 때까지 반복된다. 3D 프린팅 워크플로우는 CAD 소프트웨어에서 디자인된 디지털 3D 모델을 시작한다. 이 모델은 일반적으로 STL (Stereolithography) 파일 형식과 같은 메시 기반 형식으로 내보내진다. 이 형식은 오브젝트의 표면 기하학을 인코딩하며, 참조. STL 파일은 슬라이서라는 소프트웨어 도구에 의해 처리되며, 이는 3D 모델을 이산적인 수평 층으로 자르고 이를 기계 판독형 명령어로 변환한다. 이러한 명령어는 G-code로 인코딩되어 프린터 동작, 제출, 온도 제어 및 타이밍에 대한 정확한 명령을 정의한다. G-code 파일은 일반적으로 제조 과정 중 프린터에 업로드되고 줄마다 실행된다 ().
본 연구에서는 두 가지 널리 사용되는 FDM 프린터인 Creality K1 Max와 Creality Ender 3을 조사했으며, 각각은 서로 다른 시스템 아키텍처 및 제어 인터페이스를 구비하고 있다.
K1 Max & Ender 3: 아키텍처
K1 Max는 Klipper 기반 펌웨어를 사용하며, Mainsail 및 Fluidd와 같은 웹 인터페이스를 통해 맞춤형 Linux 기반 호스트에 연결되어 있다. Klipper는 G-code 해석과 동작 계획을 호스트 머신에 위임하여 프린터 마이크로컨트롤러와의 시리얼 인터페이스를 통해 통신한다. 이 구조는 성능 및 유연성을 크게 향상시키지만, 호스트와 MCU 사이의 통신 채널을 잠재적인 공격 표면으로 노출시킨다.
Moonraker라는 웹 서비스를 사용하여 실시간 제어 및 API 액세스를 지원한다. Moonraker는 프린터 상태에 대한 상호 작용을 위한 JSON-RPC 인터페이스를 제공하며, 사용자는 Fluidd나 Mainsail과 같은 웹 프론트엔드를 통해 G-code 파일을 업로드하고 이를 Moonraker API가 Klipper에게 접근 가능한 디렉토리에 저장한 후 프린팅을 시작할 수 있다. 이는 UI, API 레이어 및 펌웨어 간의 분리를 만든다.
반면 Creality Ender 3은 Raspberry Pi 기반 OctoPrint 세트업을 사용한다. 이 구성에서 OctoPrint 소프트웨어는 USB를 통해 프린터와 직접 통신하며, 사용자는 온도 및 상태 모니터링과 프린팅 시작을 위해 OctoPrint가 호스팅하는 웹 대시보드에 액세스할 수 있다. OctoPrint는 컨트롤러 및 리레이 역할을 수행하여 명령을 직접 프린터 펌웨어로 전달한다. K1 Max 아키텍처보다 단순하지만, OctoPrint는 G-code 파일이 실행되기 전에 인터셉트 또는 조작될 수 있는 중심점으로 작용한다.
공격 표면
우리의 위협 모델에서는 사용자와 펌웨어 사이에서 공격자가 로컬 네트워크를 해킹하거나 프록시 인터페이스 (예: Fluidd, Moonraker 또는 OctoPrint)에 액세스하거나 파일 시스템을 직접 조작함으로써 위치한다. 우리는 여러 은밀한 중간자 공격을 구현하여 G-code 수준에서 작동하도록 했으며, [[tab:relevant_gcode_attacks]] 참조.
전략
관련된 G-Codes
M25, M0, G4, G28, G92
G92, M28, M23, M24, M25
G4, M25, M24, G92, G1, G0
공격 유형
관련된 G-Codes
G0, G1, M83, M221, M404
G0, G1, M82, M221, M404
G0, G1, G92, M104, M109
G0, G1, G92, M28
G92, M206, G1, G92.X, M579
M154, M928, M111
구현된 공격 시나리오에서 사용된 G-code 카테고리
관련 연구
조기 작업은 3D 설계 파일인 STL을 조작하여 구조적 약점을 도입할 수 있음을 보여주었다. Logan et al.은 STL 파일의 미세한 변경이 인공 검사를 피하고 기계적 실패를 초래할 수 있음을 보였다. 마찬가지로 Sofia et al.은 설계 파일을 조작하여 드론 프로펠러에 중간 공중에서 실패하게 만드는 종단 간 사보타주 공격을 제시했다. 이러한 연구들은 감지되지 않은 디자인 수정이 인쇄된 부품의 완성도를 저하시키는 잠재력을 보여준다.
G-code는 중간 기계 판독형 형식으로 적들의 주요 대상이 되었다. Caleb et al.은 golden 모델에 접근하지 않고 G-code에서 미세한 악의적인 편집을 탐색했다. 그들의 레드팀/블루팀 세트업은 미세한 G-code 조작을 감지하기 위한 어려움을 측정하였다. “SOK"은 이에 대해 278개의 잠재적으로 해로운 G-codes를 분석하고 제한된 액세스를 활용할 수 있는 새로운 공격자 모델을 도입했다. 그러한 위협을 방어하기 위해 연구는 G-code를 역공학하여 인쇄된 기하 구조를 검증하는 접근법을 제안하였다. Tsoutsos et al.은 G-code로부터 근사 3D 모델을 재생성하고 유한 요소 분석 (FEA)을 통해 구조적 안정성을 평가하는 도구 경로 재구성 방법을 개발했다.
펌웨어 수준의 해킹은 지속적이며 은밀한 공격 벡터를 제공한다. Mahmood et al.은 악의적인 펌웨어가 프린트 작업을 인터셉트하거나 교체하고 제출 설정을 조작할 수 있음을 보였다. Muhammad et al.은 3D 프린팅의 여러 단계에 걸친 펌웨어 공격을 체계화하고 잠재적인 위협을 순위 매길 “공격 가능성 지수” (AFI)를 도입했다. 펌웨어 외에도, 음성, 전자기 또는 전력 방출을 활용한 사이드 채널 공격도 탐색되었다. Song et al은 스마트폰 센서가 음향 및 자기 데이터를 분석하여 G-code를 재구성할 수 있음을 보였다. “암호화는 무용지물"이라는 논문은 암호화 통신 하에서도 전력 사이드 채널 누출을 통해 거의 완벽한 모델 재구성을 할 수 있음을 입증했다.
IP 누출 위험은 AM 파이프라인의 보안을 위한 노력에 대한 추진력을 제공한다. Yampolskiy et al은 IP 민감 제조를 위해 안전한 아웃소싱 모델을 제안하였다. 반면, Chhetri et al은 컴파일러 수정으로 사이드 채널 누출을 증폭시켜 G-code 내용을 유출할 수 있음을 강조했다. 네트워크 측면에서는 McCormack et al은 C3PO라는 도구를 소개하여 네트워크 연결 3D 프린팅 배치의 보안 자세 및 공격 경로를 평가하는 데 사용되었다.
실시간 과정 모니터링은 또 다른 방어선이다. Gao et al은 속도, 충진, 팬 속도 등의 물리적 매개변수를 모니터링하여 비정상적인 프린팅 행동을 감지하는 센서 기반 프레임워크를 개발했다. “KCAD” 논문은 아날로그 방출과 G-code 패턴 간의 통계적 맵핑을 사용한 키넥틱 사이버 공격 탐지 시스템을 소개했다. 최근 Mahmood et al 및 Meleshko et al의 연구는 실험실 환경에서 악성 수정 및 그 감지를 모델링하여 시뮬레이션 기반 평가를 제공한다.
이전 작업들은 G-code 조작, 사이드 채널 유출 또는 펌웨어 백도어와 같은 단일 공격 벡터에 중점을 뒀지만, 우리의 접근법은 3D 프린팅 워크플로우 내에서 여러 침입 포인트를 포괄하는 종합적인 위협 모델을 제공한다. 우리는 부정한 웹 인터페이스를 사용해 사용자 활동을 가로채고 업로드된 G-code 파일을 프린팅 전후 및 중간에 조작하고 프린터 제어를 장악하는 실제 공격자를 설계했다. 또한, 구조화된 프린터 호스트 로그와 변형기 기반 로그 임베딩 및 대조 학습을 사용하여 정상 및 조작된 인쇄를 구별하는 무감독 이상 감지 시스템을 제안한다.
공격 전략
가정
우리의 위협 모델은 3D 프린터 호스트 운영 체제에 루트 수준 액세스를 얻기 위해 인증 자격 증명을 해킹했다는 가정을 기반으로 한다. 이 가정은 전임 관찰에서 임베디드 프린팅 시스템의 부족한 인증 관행 및 우리의 실험적 검증을 통해 실현 가능하다.
실험실 환경에서 우리는 SSH 제한이 비활성화된 Creality K1 Max와 Ender 3 설정에서 약한 패스워드를 사용하여 실제 세계의 잘못 구성된 시나리오를 시뮬레이션했다. 무차별 공격은 일반적인 문자 패턴의 병렬 열거를 사용해 임베디드 시스템에서 자주 사용되는 짧은 패스워드를 성공적으로 해독했으며, 사전 기반 접근 방식은 프린터 모델 (예: “Ender”, “Creality”), 재료 (예: “PLA”, “ABS”), 소프트웨어 용어 (예: “OctoPrint”, “Slicer”, “Klipper”)와 같은 도메인별 키워드 목록을 활용하여 효과를 입증했다. 이러한 단어 목록은 추가 제조 환경에 대한 맥락적 익숙함을 기반으로 실제 공격자 전략을 시뮬레이션한다.