CAN BCM 네트워크 프로토콜의 취약점으로 인해 Linux 커널에서 권한 상승이 허용됨 

어제 Linux 커널의 취약성에 대한 정보가 공개되었습니다. 이미 CVE-2021-3609로 분류되어 있습니다. 이 취약점 로컬 사용자가 시스템에 대한 권한을 높일 수 있습니다. CAN BCM 프로토콜 구현의 경쟁 조건으로 인해 Linux 커널 버전 2.6.25에서 5.13-rc6까지 나타납니다.

판결은 이점을 취합니다 때문에 CAN BCM 프로토콜을 사용하면 자신의 메시지 관리자를 등록 할 수 있습니다. 컨트롤러의 영역 네트워크 (CAN)에 연결하고 특정 네트워크 소켓에 연결합니다. 수신 메시지가 도착하면 함수가 호출됩니다. bcm_rx_handler () 공격자는 경쟁 조건을 이용하고 실행 중에 네트워크 소켓을 강제로 닫을 수 있습니다. bcm_rx_handler ().

소켓이 닫히면 문제가 발생합니다. 함수가 호출됩니다. bcm_release (), 구조에 할당 된 메모리가 해제되는 bcm_op 및 bcm_sock, 핸들러 b에서 계속 사용됩니다.cm_rx_handler () 아직 실행 중이므로 이미 해제 된 메모리 블록 (사용 후 사용)에 액세스하는 상황이 발생합니다.

이것은 버전 2021에서 메인 라인 3609-rc2.6.25에 이르는 Linux 커널의 CAN BCM 네트워크 프로토콜에서 최근보고 된 버그 (CVE-5.13-6)에 대한 발표입니다.
이 취약점은 루트로 권한 상승을 허용하는 net / can / bcm.c의 경쟁 조건입니다. 이 문제는 처음에 syzbot에 의해보고되었으며 Norbert Slusarek은 악용 가능한 것으로 판명되었습니다.

공격은 두 개의 CAN BCM 소켓을 열고 vcan 인터페이스에 바인딩하는 것으로 요약됩니다.. 첫 번째 커넥터에서 sendmsg () 표시기로 RX_SETUP 수신 CAN 메시지에 대해 컨트롤러를 구성하고 두 번째 커넥터에서 sendmsg () 첫 번째 커넥터에 메시지를 보냅니다.

메시지가 도착하면 bcm_rx_handler () 호출이 트리거되고 공격자는 적절한 순간에 첫 번째 소켓을 닫습니다. 출시로 이어지는 bcm_release () 그리고 구조의 발사 bcm_op 및 bcm_sock, 비록 작업 bcm_rx_handler () 아직 완료되지 않았습니다.

bcm_sock의 내용을 조작함으로써 공격자는 sk-> sk_data_ready (sk) 함수에 대한 포인터를 재정의하고 실행을 리디렉션하고 ROP (반환 지향 프로그래밍) 기술을 사용하여 modprobe_path 매개 변수를 재정의하고 그의 코드를 루트로 실행하도록 할 수 있습니다. .

ROP 기술을 사용할 때 공격자는 자신의 코드를 입력하려고하지 않습니다. 기억하며 하지만 작동합니다 조각 이미 사용 가능한 기계 지침 로드 된 라이브러리에서 제어 반환 문으로 끝납니다 (일반적으로 라이브러리 함수의 끝입니다).

공격을 수행하는 데 필요한 권한은 사용자 네임 스페이스가 활성화 된 시스템에서 생성 된 컨테이너에서 권한이없는 사용자가 획득 할 수 있습니다. 예를 들어 사용자 네임 스페이스는 기본적으로 Ubuntu 및 Fedora에 포함되지만 Debian 및 RHEL에서는 활성화되지 않습니다.

내 익스플로잇 시도는 커밋 bf5.4aa1e74에서 version> = 86-rc111 인 커널에 집중합니다. 태스크 릿을 사용하여 5.4-rc1보다 오래된 커널을 악용하는 것은 조사하지 않았지만 오래된 커널을 악용하는 것도 가능해 보입니다. 

언급된다 취약점을 식별 한 연구원은 익스플로잇을 준비 할 수있었습니다. Ubuntu 5.4 LTS에 대한 성공적인 공격 가능성을 포함하여 버전 20.04.02 이상의 커널이있는 시스템에서 루트 권한을 얻습니다.

익스플로잇 작업은 필요한 기능을 얻기 위해 유사한 블록 ( "가젯")에 대한 호출 체인을 구축하는 것으로 축소됩니다. 이 공격은 CAN 소켓과 구성된 vcan 네트워크 인터페이스를 생성하기위한 액세스를 필요로합니다.

최종적으로 문제가 여전히 지속된다고 언급 됨 대부분의 배포판에 있지만 해당 패치가 릴리스되기까지는 며칠이 걸립니다.

그것에 대해 더 많이 알고 싶다면, 당신은 상담 할 수 있습니다 다음 링크.


코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자: AB Internet Networks 2008 SL
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.