iTerm2를 사용한다면, "cat readme.txt"도 안전하지 않다
핵심 내용
iTerm2의 SSH integration에서 악성 텍스트만으로 명령 실행이 가능했다.
자세히 보기
iTerm2의 SSH integration가 터미널 출력과 제어 채널을 충분히 분리하지 못해, 신뢰되지 않은 텍스트가 conductor 프로토콜처럼 해석될 수 있는 문제가 드러났다.
핵심은 신뢰 실패다. 원격 SSH 세션이 아니어도, 악성 파일·배너·MOTD·서버 응답이 위조된 DCS 2000p와 OSC 135를 내보내면 iTerm2가 실제 conductor와 통신 중이라고 착각할 수 있다.
이 조건에서는 단순히 cat readme.txt를 실행하는 것만으로도 가짜 conductor transcript가 렌더링되고, iTerm2가 스스로 다음 흐름을 진행한다.
getshell전송pythonversion전송run(...)구성 및 전송
공격자는 실제로 명령을 직접 주입하지 않아도 된다. iTerm2가 요청을 발행하고, 악성 출력은 그 응답만 가장하면 되기 때문이다.
익스플로잇은 PTY 혼선도 이용한다. SSH conductor가 실제로 없을 때 iTerm2가 PTY에 기록한 base64 인코딩 명령이 로컬 셸의 평문 입력으로 떨어질 수 있고, 마지막 청크가 ace/c+aliFIo 경로로 해석되면 실행까지 이어질 수 있다.
재현용 PoC는 genpoc.py로 생성되며, poc.zip을 풀고 cat readme.txt를 실행하는 방식이다. 성공 조건은 ace/c+aliFIo 같은 실행 가능한 헬퍼가 같은 디렉터리에 존재하는 것이다.
수정은 **3월 31일 커밋 a9e745993c2e2cbb30b884a16617cd5495899f86**에 반영됐지만, 작성 시점에는 stable release에 아직 포함되지 않았다. 즉, 공개는 됐지만 다수 사용자는 아직 패치되지 않은 상태라 보급 공백이 생겼다는 점도 문제로 지적된다.
이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.