요약
브라더 프린터의 Telnet 콘솔에서 숨겨진 명령으로 디버그 모드를 열 수 있습니다.
기기의 숨은 기능을 파고드는 일을 즐기는 블로거 inventor7777의 글입니다. 집에서 쓰는 브라더 MFC-L8900CDW의 펌웨어를 AI로 분석해 일반 콘솔에 드러나지 않은 디버그 사용자 모드를 찾아냈습니다.
왜 중요한가
- 관리자 비밀번호와 숨겨진 명령 하나로 일반 콘솔에 없는 내부 진단 기능에 닿을 수 있음을 보여 줍니다.
- 펌웨어를 받아 AI에게 분석을 맡기는 방식으로 프린터 내부 구조까지 파악한 사례입니다.
- 다만 Telnet이 있다고 해서 셸(명령 실행 환경)이 있는 것은 아니라는 한계도 함께 드러났습니다.
핵심 내용
- 웹 화면에서 Telnet을 켜고 관리자 비밀번호로 접속한 뒤 숨겨진
SET USER명령을 넣으면 디버그 모드로 들어갑니다. - 펌웨어는 리눅스가 아니라 TRON 계열 실시간 운영체제 T-Kernel을 쓰는 32비트 ARM 구조로 분석됐습니다.
- 브라더가 직접 내려받는 링크를 주지 않아서, 업데이트 도구를 분석해 펌웨어 다운로드 경로를 알아냈습니다.
- 저자는 대부분의 명령을 시험하지 않았고,
DEBUG SHOW HEAP으로 실행 중인 작업별 메모리 사용량을 확인했다고 밝혔습니다. - 유닉스 셸이나 저수준 디버거 T-Monitor로 이어진다는 증거는 찾지 못했으며, 설정을 잘못 바꾸면 기기가 망가질 수 있다고 경고했습니다.
HN 반응
- 일반 웹 관리 화면보다 실제로 더 할 수 있는 일이 있는지 모르겠다는 의문이 나왔고, 해킹은 그 자체로 재미있다는 답도 있었습니다.
- 일부 이용자는 서드파티 잉크를 막는 펌웨어의 다운그레이드나 추적 점 제거, 자유로운 펌웨어로 이어지기를 바란다고 했습니다.
저한테 흥미로운 건 TRON 커널이 실제로 쓰이는 모습을 봤다는 점입니다.
80년대에 TRON은 일본이 미래의 운영체제에 건 승부수였지만, 결국 자동차, 프린터, 그 밖의 산업용 기기에 들어가는 임베디드 커널로 명맥을 이어 갔을 뿐입니다.
https://en.wikipedia.org/wiki/TRON_project
https://www.osnews.com/story/145872/japan-tried-to-build-an-operating-system-for-the-entire-world-tron/
1982년: 영화 트론이 개봉했습니다.
1984년: 일본이 TRON이라는 OS를 내놓았습니다.
1989년: 미국 당국은 TRON이 미국의 컴퓨터 지배력을 흔들 수 있다고 우려했습니다.
2026년: TRON은 주로 프린터를 장악한 채 발견되고, 영화 트론에서 상상한 것을 훌쩍 뛰어넘는 AI가 그 사실을 인간에게 설명해 줍니다.
사실은 소설보다 기이합니다.
1980년: Microsoft Basic에서 TRON이 키워드로 쓰입니다.
맞아요, 동네 라디오셱에서 TRS-80 Color Computer에 그걸 쳐 넣던 기억이 나요. 제 기억이 맞다면 컴퓨터는 'OK'라고만 답했죠. 뭐야! ?SN ERROR도 안 뜨네? 뭐, 알겠어요! 그 뒤로도 아무 일 없고요. 흠...
프로그램을 RUN 했더니 화면이 [10][20][30]...으로 가득 차는 걸 보고 얼마나 어리둥절했는지 몰라요.
네에에에, 그때는 아직 학습 곡선의 맨 밑바닥 근처였죠...
아, TROFF의 짝이군요.
그 명령어가 영화 속 트론 캐릭터와 이렇게 잘 맞아떨어진다니 신기하지만, 영화 제작진 말로는 그냥 우연이고 Tron은 "electronic"에서 따온 이름이라고 합니다.
예전부터 궁금했던 건데요, 커스텀 레이저 프린터 펌웨어 프로젝트가 있나요? 저는 주로 토너 제조사 확인을 없애고, CUPS와 프린터의 포스트스크립트 드라이버에서 거슬리는 점 몇 가지를 고치고 싶어서요.
에이전트 시대에는 더 많은 하드웨어를 지원하는 게 그렇게 복잡하지 않을 것 같아요.
그런 걸 꼭 보고 싶네요. Brother는 하드웨어와 토너 생태계에 접근하기 쉬워서 좋은데, 오래된 모델 중에는 보안상 위험한 것이 많습니다.
잉크젯과 달리 레이저 프린터 컨트롤러는 전력을 많이 쓰는 정착기(fuser)를 다루기 때문에 실제로 피해를 줄 수 있습니다. 정착기를 계속 돌리면 프린터가 녹아내리거나(최소한 하드와이어드로 되어 있기를 바라는 열 보호 장치가 작동하거나), 정착기를 빠르게 켰다 껐다 하면 돌입 전류 때문에 같은 회로에 물린 다른 기기들이 곤란해질 수 있습니다.
저는 특히 추적 점 때문에 이게 필요해요. LLM 시대라면 그렇게 어렵지 않을 것 같아요. 가드레일에 걸리지만 않는다면요.
레이저 프린터에도 추적 점이 들어 있나요? 컬러 프린터에만 있는 줄 알았어요.
저도 예전엔 그렇게 생각했는데, 추적 점은 레이저 프린터에만 있고 잉크젯에는 없다고 하더라고요. 잉크젯은 해상도가 낮아서 인쇄물에 티가 나지 않게 식별 정보를 심을 수 없다는 거예요.
노란 추적 점이 있다는 건 다들 알고 있잖아요.
그런 기기 중 일부는 공개된 문서가 전혀 없는 아주 독자적인 CPU를 씁니다.
맨 아래에 링크된 글이 훨씬 더 읽을 만합니다: https://starlabs.sg/blog/2025/11-breaking-into-a-brother-mfc-j1010dw-three-security-flaws-in-a-seemingly-innocent-printer/
저는 지난 몇 주 동안 약간 노력해서 제 Canon 프린터에서 제로데이를 찾아냈습니다. 저와 저렴한 모델 하나가 같이 했고, 사실 그렇게 어렵진 않았지만 덕분에 시간이 더 생긴 느낌입니다.
전체를 리버스 엔지니어링해 볼까 생각 중인데, 이제 rpi를 시스템에 연결해서 제 앱으로 모든 걸 처리할 수 있으니 솔직히 그럴 가치가 있을지 모르겠습니다.
그리고 프린터를 와이파이 네트워크에 연결하지 않은 게 제가 내린 최고의 결정이었다고 생각합니다. 어쨌든 프린터는 형편없지만, 디지털을 물리적인 것으로 바꿔 준다는 점에서 기술로서의 프린터가 저는 너무 좋습니다.
3D 프린터는 일반 프린터보다 운동학이나 부품 등이 훨씬 복잡한데도 오픈소스가 있는데, 프린터가 70년대부터 있었는데도 전통적인 오픈소스 프린터는 없다는 게 정말 놀랍습니다.
운동학은 더 어려워 보이지만, 종이 취급, 잉크젯, 레이저 정착 과정은 모두 압출기에 비하면 까다롭고 꽤 특수한 부품이 필요합니다.
펜 플로터를 만드는 경우를 빼면 오픈소스 2D 프린터를 만드는 건 매우 어려울 겁니다. 3D 프린터가 그 일을 가능하게 해 주긴 하겠지만, 현실성이 있으려면 적어도 인기 있는 프린터에서 실제 인쇄를 담당하는 "비즈니스 엔드" 부분을 찾아 재사용해야 할 것 같습니다. "openprinter"라는 오픈소스 잉크젯 프린터를 만들려는 프로젝트가 있지만 아직 초기 단계입니다.
잉크 화학과 색 정확도는 작은 글루건에 모터 몇 개 붙여 놓은 것과 다름없는 구조보다 훨씬 어렵습니다. 그리고 3D 프린터도 베드 접착 같은 골칫거리에서 높은 신뢰성을 얻은 건 최근입니다. 프린터와 필라멘트가 전부 새것인데도 종이마다 풀을 뿌리지 않으면 문서 인쇄의 30~50%가 그냥 실패한다고 상상해 보세요.
https://www.crowdsupply.com/open-tools/openprinter 말씀이신가요?
제 기억엔 올해 HN에 올라왔었어요. 혹시 폐쇄형 펌웨어 같은 게 들어 있어서 그쪽 기준으로는 "오픈"이 아닌 건가요?
저는 오히려 제 Brother 프린터 펌웨어를 다운그레이드하고 싶어요. 서드파티 잉크 카트리지를 쓰고 있는데, 업그레이드 이후로 프린터가 그걸 받아들이지 않아요. 요즘은 새 펌웨어가 문제를 고치는 게 아니라 제약을 끼워 넣는 것 같아요.
이 중 어느 것이 일반 http 관리 인터페이스보다 더 많은 접근 권한을 주는지 모르겠네요.
이제는 LLM을 들이댈 수 있잖아요. 그게 뭔가를 더 얻게 해 주는지는 저도 모르겠지만, 해커 정신에서는 그게 우선순위도 아닐 거예요.
해킹은 그냥 해킹이라는 이유만으로 멋질 때가 있거든요.
제가 보기엔 아닙니다. 웹 인터페이스는 90년대 웹사이트 같지만 하위 옵션이 엄청나게 많습니다. 그중에 해킹이 필요해 보이는 건 없었어요. 디버그 쪽은 잘 모르겠네요. 확인해 봐야겠습니다. 같은 명령을 쓸 수 있는 API가 열려 있어도 놀랍지 않을 겁니다. 그렇지 않다면 이런 작업에서 나올 만한 유용한 결과물은 그 명령들을 구현한 CLI겠죠.
설치된 펌웨어가 허용하지 않을 때 이걸로 펌웨어 다운그레이드를 할 수 있다면 그것도 유용할 겁니다. 저는 이미 다운그레이드가 되는 버전에서 업데이트를 꺼 뒀습니다. 몇 주 전에 샀는데, 다행히 "네 잉크 칩 마음에 안 들어" 하는 최신 펌웨어가 들어 있지 않았거든요.
Denon AVR 6500h에서 텔넷 접근을 발견한 뒤로, 그 불쌍한 작은 화면과 리모컨이 보여 주고 싶어 했을 법한 UI를 전부 직접 만들었어요. 분명 엄청난 기능과 도구를 준비해 뒀을 텐데, 아마 드림보드나 고급 홈 인테그레이션 업체용이었나 봐요. 이걸 얼마나 멀리까지 밀어붙일 수 있는지, 그런데 UI에는 얼마나 조금밖에 드러나 있지 않은지 놀라울 정도예요.
저는 2008년, 스무 살쯤 자동차 대리점에서 일하다 심심해서 Konica Minolta 복합기로 옛날 방식 그대로 이걸 해 봤습니다. 어느 날 산타클로스를 닮은 서비스 기사님이 수리하러 왔는데(제 접근 시도와는 상관없는 일이었습니다), 그분이 일을 처음 시작했을 때부터 쓰던 "lp0 on fire" 오류 코드가 아직도 남아 있다고 말해 줬습니다. 당시 프린터에는 진짜 드럼이 있어서 용지가 걸리면 경우에 따라 불이 붙을 수 있었다고 합니다.
펌웨어 리버스 엔지니어링도 글도 훌륭합니다! Epson MFC 잉크젯 프린터에서도 비슷한 발견이 나오면 좋겠네요(이 글 링크를 프롬프트에 붙여 넣기만 하면 말 그대로 한 번에 될지도 모르고요).
저도 최근에 Epson 영수증 프린터 펌웨어를 파 봤어요. 원격으로 ssh를 켤 수 있는 http 엔드포인트(인증이 하드코딩돼 있어요)까지 찾았는데 로그인은 안 됐고, 다른 진단용 접근 수단도 몇 가지 찾았습니다. 꽤 잘 만든 것 같아요.
그런데 이미 꽤 믿을 만하고, DRM도 없고, 쓰려는 기기와 다 호환될 법한 프린터에서 대체 뭘 더 바라는 거예요?
저는 프린터 추적 점(https://en.wikipedia.org/wiki/Printer_tracking_dots)을 비활성화하고 싶어요.