최근 뉴스는 xterm 터미널 에뮬레이터에서 취약점이 발견되었습니다. (이미 CVE-2022-45063으로 분류됨), 문제 쉘 명령을 실행할 수 있습니다. 특정 이스케이프 시퀀스가 터미널에서 처리될 때.
문제에 대해서는 다음과 같이 언급됩니다. 이스케이프 코드 50 처리 오류 때문입니다. 글꼴 옵션을 설정하거나 가져오는 데 사용됩니다. 요청한 글꼴이 없으면 작업은 요청에 지정된 글꼴의 이름을 반환합니다.
문제는 구성 및 쿼리하는 OSC 시퀀스 50에 있습니다. 그 분수. 주어진 소스가 존재하지 않으면 설정되지 않고 쿼리 설정된 이름을 반환합니다. 제어 문자는 사용할 수 없습니다. 포함되지만 응답 문자열은 ^G로 종료될 수 있습니다. 동쪽 기본적으로 터미널에 텍스트를 반환하는 기본 요소를 제공합니다. ^G로 끝납니다.
제어 문자는 직접 삽입할 수 없습니다. 이름으로, 그러나 반환된 문자열은 "^G" 시퀀스로 종료될 수 있습니다. zsh에서 vi 스타일 줄 편집 모드가 활성화되면 목록 확장 작업이 수행되며, Enter 키를 명시적으로 누르지 않고 명령을 실행하는 데 사용할 수 있습니다.
가장 간단한 경우의 공격의 경우, 특별히 설계된 파일의 내용을 표시하기에 충분합니다. 예를 들어 cat 유틸리티를 사용하여 화면에 표시하거나 클립보드에서 한 줄을 붙여넣습니다.
Debian, Red Hat 등은 기본적으로 글꼴 작업을 비활성화합니다. 하지만 사용자가 다시 활성화할 수 있습니다. 옵션 또는 구성 메뉴를 통해. 또한 업스트림 xterm은 기본적으로 비활성화하지 않으므로 일부 배포판에는 다음이 포함됩니다. 취약한 기본 설정.
취약점을 성공적으로 악용하려면 사용자는 "vi" 모드로 전환된 명령줄 편집기(vi-cmd-mode)와 함께 Zsh 셸을 사용해야 합니다., 일반적으로 배포판에서 기본적으로 사용되지 않습니다.
기본적으로 다음이 필요합니다.
zsh
vi 스타일의 활성 라인 편집 모드
트로이 목마의 텍스트를 클립보드에 복사
zsh에 붙여넣기이것은 자동으로 수행될 수 있으며 많은 사이트에서 클립보드에 복사할 때 텍스트를 수정합니다. 그래서 브라우저가 접근하지 않는 선택 버퍼만 사용합니다. gtk3와 특히 ff에서만 어떤 이유로 인해 지속적으로 중단됩니다. 피곤합니다.
xterm이 다음으로 설정된 경우에도 문제가 나타나지 않습니다. allowWindowOps=false 또는 allowFontOps=false. 예를 들어 설정 allowFontOps=거짓 OpenBSD, Debian 및 RHEL에서 설정되지만 Arch Linux에서는 기본적으로 적용되지 않습니다.
변경 로그 및 문제를 식별한 연구원의 진술을 기반으로 취약점 xterm 375 버전에서 수정, 그러나 다른 출처에 따르면 취약점은 Arch Linux의 xterm 375에서 계속 나타납니다.
즉, 이 취약점을 악용하려면 사용자가
vi 라인 편집 모드에서 Zsh 사용(일반적으로 "vi"가 있는 $EDITOR를 통해)
그것의). 다소 모호하지만 완전히 들어본 적이 없는 것은 아닙니다.
구성해당 구성에서 다음과 같습니다.
printf "\e]50;i\$(touch /tmp/hack-like-its-1999)\a\e]50;?\a"> cve-2022-45063
cat cve-2022-45063 # 또는 이것을 피해자에게 전달하는 다른 방법
마지막으로, 항상 그렇듯이 영향을 받는 시스템의 사용자는 시스템을 최신 상태로 유지하는 것이 좋습니다. 보안 취약점이 알려지면 개발자가 이러한 결함을 수정해야 하므로 이러한 결함이 악용될 수 있는 많은 방법이 공개되기 때문입니다.
언급 할 가치가 있습니다. 기본 설정에서는 글꼴 작업이 허용되지 않습니다. ~의 기간 일부 Linux 배포판, 따라서 모든 배포판에서 이 버그가 발생하는 것은 아닙니다. 배포판별 수정 발행물에 관심이 있는 사람들은 다음 페이지에서 할 수 있습니다. 데비안, RHEL, 페도라, SUSE, Ubuntu, 아치 리눅스, 오픈 BSD, FreeBSD의 y NetBSD.
낮잠 그것에 대해 더 알고 싶어, 당신은 세부 사항을 확인할 수 있습니다 다음 링크에서.