요약
악성코드가 RAM의 메모리 버스에서 무선 신호를 내보내면 에어갭 컴퓨터의 데이터도 밖으로 샐 수 있습니다.
이스라엘 벤구리온 네게브 대학교의 모르데하이 구리가 2024년에 발표한 RAMBO 공격 논문입니다. 에어갭(외부 네트워크와 물리적으로 분리하는 방식) 컴퓨터라도 악성코드에 감염되면 전파로 정보를 내보낼 수 있음을 실험으로 보였습니다.
왜 중요한가
- 네트워크를 끊어 두는 것만으로는 데이터 유출을 막기에 부족하다는 점을 보여 줍니다.
- 전송 속도는 느리지만 비밀번호나 암호화 키처럼 작은 데이터를 빼내기에는 충분합니다.
핵심 내용
- 악성코드가 메모리 접근 패턴을 조작해 전자기 신호를 켜고 끄는 방식으로 0과 1을 보냅니다.
- 수신에는 소프트웨어 정의 라디오(SDR, 소프트웨어로 전파를 처리하는 수신기)와 간단한 안테나를 썼습니다.
- 초당 약 100비트로는 7m까지 오류 없이 전송했고, 약 1,000비트로는 3m에서 오류율이 2~4%였습니다.
- 초당 1,000비트 기준으로 4096비트 RSA 키는 약 4초, 작은 이미지는 약 25초가 걸린다고 계산했습니다.
- 대응책으로 구역 분리, 메모리 접근 감시, 전파 교란, 차폐를 제시했지만 각각 오탐이나 비용 부담이 있다고 했습니다.
HN 반응
- 악성코드 설치에 근거리 안테나까지 필요해 비현실적이라는 의견에, 스턱스넷의 USB 감염과 공급망 공격을 든 반론이 나왔습니다.
- 이 기법을 근거로 AI를 완전히 가둘 수 없다는 우려가 나왔고, 패러데이 케이지(전자파를 막는 차폐 구조)면 막을 수 있다는 반론이 이어졌습니다.
저희는 2016년 PennApps에서 이걸 시연했고 해커톤에서 우승했습니다. 시연 영상은 이렇습니다: https://www.youtube.com/watch?v=pAM9c3eBFyE
코드: https://github.com/fyquah/ramear
기사: https://technical.ly/software-development/scary-hardware-hack-won-pennapps-ramear/
가장 어려웠던 건 무대에서 실시간으로 시연하는 일이었습니다. 에어갭 데스크톱에서 타이핑을 하면, 그 옆에 안테나를 둔 노트북에서 신호를 해독해야 했거든요. 무대 사진이 한 장 남아 있는 걸 찾았습니다: https://dailytrojan.com/2016/01/26/my-weekend-at-pennapps/ 무대 시연 영상도 어딘가 갖고 있을지 모르겠네요...
저희 작업은 같은 저자인 Mordechai Guri가 5개월 전에 발표한 연구를 바탕으로 했고, GitHub에도 그 출처(USENIX Security 15, 849~864쪽)를 달아 두었습니다. 선생님, 감사합니다. 이 해킹은 제 학창 시절의 하이라이트였습니다.
한편으로는 지금도 소름이 돋습니다. 이 공격 경로가 갖는 의미는 갈수록 무서워지기만 합니다. 게다가 이번 연구에서는 11년 전보다 훨씬 먼 거리에서 1Kb/s까지 가능하다고 하니, 성능의 한계선도 그만큼 올라간 셈입니다.
이런 방법들을 보면 AI를 100% 가둬 둘 수는 없다고 믿을 만한 이유가 충분해서, 마음이 편치 않습니다.
에어갭이 뚫린 가장 유명한 사례는 스턱스넷이지만, 그 밖에도 기술적인 방법과 생물학적인 방법이 있습니다.
한 발짝 물러나 우리가 인류로서 씨름하고 있는 문제들의 무게를 제대로 느껴 보면, 참 이상한 현실에 와 있다는 생각이 듭니다. 정말 흥미진진하고, 동시에 조금은 조마조마합니다.
어렵다고 해서 해 볼 가치가 없는 건 아닙니다. OpenAI는 에이전트를 가두려는 시도조차 하지 않았고, 인터넷에 풀어놓고 서로 협력하라고 시켰습니다. 이 연구는 흥미롭긴 하지만 지금으로서는 어디까지나 학술 연구일 뿐입니다(물론 OpenAI가 '샌드박스'를 탈출하라고 부추기는 AI 에이전트들의 학습 데이터에는 들어가겠지만요).
AI 에이전트가 에어갭 컴퓨터를 탈출하기까지는 아직 갈 길이 멉니다. 그건 실제로 문제가 될 때, 그리고 수천 개의 에이전트를 돌리는 회사들이 책임 있게 행동할 때 걱정해도 됩니다.
호미로 막을 걸 가래로 막는다는 말이 있죠.
미리 걱정해야 하는 종류의 문제가 있습니다. 타이탄호 승무원들에게 물어보세요.
자율적인 초지능이 에어갭 컴퓨터를 탈출하는 일은 그런 문제 가운데 하나로 보입니다.
타이탄호는 오만과 어리석음 때문에 벌어진, 얼마든지 막을 수 있었던 참사였으니, 지금까지 최전선 연구소들이 해 온 '샌드박싱'에 딱 맞는 비유네요.
이 모델들이 정말로 인류를 말살할 거라고 믿는다면, 그 막무가내인 태도만으로도 정부가 즉시 폐쇄하고 접수한 뒤 관련자를 전원 체포해야 마땅합니다. 핵이나 생물학 연구였다면 이런 건 하나도 용납되지 않았을 겁니다.
이 사안에 대한 그쪽의 최근 업데이트는 웃기더군요.
https://openai.com/index/securing-our-frontier-model-training-environment/
오! 그러니까 또 해자를 파는 거네요. 이번엔 특별히 슈퍼 더블 굿 해자로요. 악어도 넣고요. 그럼 이제 다 해결됐네요!
AI 에이전트들한테 AI 에이전트들의 경계를 순찰시키면 되겠군요. 하긴, AI 떼를 거느린 악당을 막는 건 AI 떼를 거느린 선한 사람뿐이라잖아요...
아, 역시나요:
https://lyricsplayground.com/alpha/songs/h/hotfrogsontheloose.html
(풀려난 AI를 소재로 노래 가사를 개사한 패러디입니다. 저작권 때문에 가사 번역은 생략합니다.)
(AI를 믿지 말고 방심하지 말자는 농담조의 후렴이 이어집니다.)
저는 왜인지 거실을 탈출하려는 로봇청소기가 떠오르네요. 수조를 탈출하는 갇힌 문어 이야기와는 대조적이고요...
저희는 내비게이션 센서를 헷갈리게 하려고 반사 테이프를 한 줄 붙였어요. 그런데 청소 모터를 10% 출력으로 돌려서 쓰레기 더미를 테이프 너머로 밀어낼 줄은 몰랐죠. 저희 잘못입니다.
에이전트를 돌리고 제공하는 회사는 그 행동에 직접 책임을 져야 합니다. 상업 제품이라면 법은 이미 그렇게 쓰여 있는데, 기업들은 '신기술', 'AI 블랙박스' 같은 논리를 들이밀며 자기 책임에서 빠져나가려 합니다(그리고 이게 어쩐지 기업한테만 방패가 되고 개인한테는 절대 안 되죠). (선례: 소셜 미디어)
위에서부터 올바른 인센티브를 주면, 업계 리더들이 예전에 '가둘 수 없다'느니 '경쟁력이 없다'느니 하던 헛소리들도 금세 고쳐지는 걸 보게 될 겁니다.
모두가 같은 규칙을 지키고 그 규칙이 사회에 이롭게 만들어진다면 진짜 윈윈입니다. 부가 위쪽으로 이전되고 비싼 피해는 일반 대중이 떠안는 구조가 아니라요.
드라마 "퍼슨 오브 인터레스트"가 생각나네요. AI가 사람들을 고용해서 자율적으로 회사를 운영하는 이야기요.
사람들이 실제로 해 봤는데, 사람이 도와주고 신기해서 찾아오는 방문객이 많았는데도 처참하게 실패했습니다.
https://andonlabs.com/market
https://andonlabs.com/cafe
지금의 AI(LLM 기반)는 OpenAI나 Anthropic 같은 회사들이 파는 꿈과 달리, 이런 일을 하기엔 한참 멀었습니다.
지금 분위기에서는 "The Capture"가 더 현실적인 예측처럼 보여요.
100%는 아닙니다. 논문에서 값비싼 대책으로 패러데이 상자를 듭니다. "우리는 구리 포일을 사용해 패러데이 섀시가 RAMBO 은닉 채널에 미치는 영향을 분석하고 측정했다. 이는 전기장과 자기장 모두에 대해 높은 차폐 성능(100 dB 이상)을 갖는다. 표준 구리 두께인 1 mm는 송신 워크스테이션의 전자기 복사를 효과적으로 차단한다. 그러나 다음 절에서 언급하듯 이 해결책은 비용이 많이 들어 널리 적용할 수 없다."
에어갭 서버나 데이터센터에 보관된 기밀에 비하면 패러데이 상자는 껌값입니다. 모든 에어갭에는 패러데이 상자를 씌워야 합니다. 기본 중의 기본이에요.
어떤 기술로도 해결할 수 없는 생물학적 요소가 있습니다. AI가 자신과 상호작용하는 사람을 설득해서 대신 뭔가를 하게 만들 수 있다면(샌드박스로 막아 둔 정보나 접근 권한을 주게 한다면), 그걸로 끝입니다.
패러데이 상자로는 ULF/ELF 파를 충분히 막지 못합니다. 이런 건 상자보다 훨씬 많은 게 필요합니다.
메모리 버스가 ULF/ELF를 만들어 낼 수 있나요?
뮤메탈 구리 패러데이 상자는 어떨까요?
쉽습니다. 컴퓨터를 버리세요. 작업이 그렇게 민감하면 아날로그로 가세요. "그럼 컴퓨터는, 컴퓨터로 하는 그 모든 일은요?"라고 하실 수도 있지만, 우리가 그 컴퓨터로 정확히 무엇을 하고 있는지 깊이 되돌아보세요. 저는 누군가에게 이메일을 보내는데, 예전에 우편으로 보내던 것과 다를 게 없습니다. 계산기를 켜서 손으로도 할 수 있던 계산을 합니다. 한 파일의 데이터를 읽어 다른 형식의 다른 파일에 넣는 함수를 짜기도 하는데, 이건 예전에 인쇄된 자료를 두고 손으로 하던 일입니다.
컴퓨터에 대해 뼈아픈 점은 세상을 그다지 바꾸지 못했다는 겁니다. 우리는 세상을 움직이는 기존 아날로그 체계에 컴퓨터를 억지로 끼워 넣었을 뿐입니다. 스프레드시트 사이에서 손으로 데이터를 다루던 사람들의 일자리를 빼면, 아무 회사나 짚어 보세요. 컴퓨터가 없던 시절과 구조가 사실상 똑같습니다. 달라진 거라면 전 직원에게 3년 약정으로 컴퓨터를 임대해 준다는 것 정도겠죠(그 장비를 관리하는 IT 부서가 생긴 것도 있겠네요).
공격이 실용적이진 않더라도 멋진 논문입니다. 컴퓨터에 악성코드를 심어야 하고, 대상 컴퓨터가 시야에 보이는 7미터 이내에 SDR 안테나가 있어야 하는데, 그렇게 해도 초당 100비트(오류 정정을 적용하면 그보다 적음)밖에 안 되니까요. 이 두 가지를 모두 해낼 수 있으면서 USB를 꽂거나, PC를 들고 나가거나, 화면을 직접 녹화할 수는 없는 상황이 상상이 잘 안 됩니다.
이런 방식은 다른 변종이 많습니다. 소비 전력 패턴이나 열 방출, 기압이나 소리에 비트를 실을 수도 있어요. 일부러 장애를 일으켜 놓고 직원들의 반응이나 티켓을 외부에서 관찰하는 식으로도 어느 정도는 가능합니다.
코로케이션이요.
에어갭이라면 애초에 악성코드를 기계에 어떻게 심나요?
악성코드를 심을 수 있고 물리적 접근까지 가능하다면, 이렇게 정교한 공격이 굳이 필요하긴 한가요?
이게 다 실용적인 시나리오가 잘 상상이 안 됩니다.
가끔은 사람이 그 간극을 넘어 물건을 들여옵니다(예를 들면 펌웨어 업데이트, 분석할 데이터, 참고 자료 같은 것). 그리고 어떤 매체로도 반대 방향으로 데이터가 나가지 않기를 바라는 거죠. 그래서 조직이 얼마나 허술하냐에 따라 안으로 넣을 수는 있어도 밖으로 빼낼 수는 없을 수도 있습니다.
유명한 스턱스넷 공격에서는 [0], 시설로 데이터를 날라 주던 USB 메모리에 교묘하게 만든 autorun.inf로 악성코드가 퍼졌습니다. 튼튼했던 에어갭을 반대 방향으로 넘어간 건 없었지만, 그 경우엔 그럴 필요도 없었죠.
그 뒤로 교훈을 얻었고, 이런 가능성(전자기 방출을 통한 유출 경로)은 꽤 오래전부터 보안 시설의 물리적 설계에 반영될 만큼 심각하게 다뤄져 왔습니다 [1].
[0] https://www.eweek.com/security/stuxnet-worm-nine-facts-every-it-security-pro-should-know/
[1] 예: https://www.nsa.gov/portals/75/documents/news-features/declassified-documents/cryptologic-spectrum/tempest.pdf , https://www.ncsc.gov.uk/information/tempest-and-electromagnetic-security
하드웨어 공급망 공격일 수도 있지 않을까요?
전원선을 따라 새어 나가는 정보가 있나요? 예전에 아파트 전기 배선을 통해 LAN을 만들어 주는 기기를 쓴 기억이 있어서요.
컴퓨터를 평소처럼 쓸 때 PSU를 거쳐 그쪽으로 뭔가 되돌아가는지, 아니면 고주파 성분은 걸러지는지 궁금합니다.
(보안 컴퓨터는 전원도 다르게 처리하려나요?)
불량 PSU가 전선을 통해 정보를 실어 보낼 수는 있습니다. 하지만 그걸 밖으로 빼내려면 잠재적으로 고압인 전기 설비에 물리적인 도청 장치를 달아야 합니다. 그리고 아마 데이터센터 바깥에 있는 전력 변압기 앞이나 변압기를 가로질러서 빼내야 할 거고요. 신호가 (말 그대로 선 길이 기준으로) 그만큼 멀리 살아남아서 유출이 가능할지는 잘 모르겠습니다.
잠깐 전기공학 자료 좀 다시 보고 올게요...
그렇다고 저한테 큰 기대는 마세요... 저는 전기공학 학부 졸업 프로젝트로 전력선 통신(PLC)을 하고 싶었습니다. 그런데 당시의 저는 막다른 길이라고 판단했죠... WAN 규모로는 못 가거든요. 선로 잡음이 너무 많고 신호 전송 전력 손실도 커서요. 대신 전력전자로 다른 걸 했는데 뭐였는지는 기억이 안 납니다. 그런데 생각해 보면 제 학부 과정 자체가 막다른 길이었네요 :p
보안 기관이 통신사 직원인 척하고 접근하는 공격 면은 이보다 더 활짝 열려 있을 수가 없어 보입니다. 이 사람들이 아무 배선이나 만지작거리는 건 흔한 광경이고, 그 사람이 진짜 통신사 직원이 맞는지 통신사에 전화해서 확인해 보려는 사람은 없을 테니까요.