Tutoriel Linux

CIFSwitch: 19년 된 리눅스 취약점으로 루트 권한 탈취 가능

Débutant2 min de lecture
À retenirLinux n'est pas réservé aux experts. Le bon point de départ : une distribution accessible, une sauvegarde propre et quelques commandes comprises.

리눅스 커널에서 19년 동안 존재해 온 CIFSwitch라는 취약점이 발견되었습니다. 이 취약점을 악용하면 공격자는 CIFS 프로토콜의 결함을 이용해 루트 권한을 획득할 수 있습니다. 이번 발견은 시스템 관리자와 리눅스 사용자 모두에게 즉각적인 경각심을 불러일으킵니다.

위험 부담이 매우 큽니다. 권한이 없는 로컬 공격자가 잠재적으로 시스템을 완전히 장악할 수 있기 때문입니다. 이 취약점이 어떻게 작동하고 어떤 배포판이 영향을 받는지 살펴보겠습니다.

리눅스 커널의 CIFSwitch 취약점 이해하기

CIFSwitch는 Linux 커널과 CIFS/SMB 네트워크 공유를 관리하는 cifs-utils 패키지 간의 인터페이스에 있는 취약점을 악용합니다. 이 프로토콜은 원격 서버의 파일에 접근하는 데 필수적입니다.

문제의 핵심은 이러한 공유 폴더를 마운트하는 데 필요한 Kerberos 인증에 있습니다. 커널은 이 작업을 루트 권한으로 실행되는 사용자 도우미인 cifs.upcall에 위임합니다.

이 헬퍼는 아무런 감독 없이 수신된 요청을 신뢰합니다. 악의적인 사용자는 이러한 요청을 조작하여 악성 코드를 삽입하고 관리자 권한으로 실행할 수 있습니다. 이것이 공격 경로입니다.

작전의 기술적인 배경

이 취약점은 키의 출처에 대한 통제력이 부족한 데서 비롯됩니다. 시프스.스프네고 커널에서 요청한 것입니다. 일반적으로 이 요청은 정당하며 ​​커널의 CIFS 클라이언트에서 발행됩니다. 하지만 이 경우에는 스푸핑될 수 있습니다.

데모 버전으로 제공되는 간단한 파이썬 스크립트를 사용하면 일반 사용자도 sudoers 파일을 수정하여 거의 즉시 루트 권한을 얻을 수 있습니다. 효율적이고 강력한 도구입니다.

철로에 열린 장벽을 비유로 들자면, 지역 해커들은 아무런 제재 없이 실험용 차량을 시스템에 슬쩍 끼워 넣기만 하면 됩니다.

관련 리눅스 배포판 및 운영 환경

보다 보편적인 취약점과는 달리, CIFSwitch는 리눅스 커널 버전에만 의존하여 발생하는 것이 아닙니다. 다음 사항이 절대적으로 중요합니다. cifs-utils는 버전 6.14 이상으로 설치해야 합니다..

또 다른 필수 조건은 사용자가 네임스페이스를 생성하고 마운트할 수 있어야 한다는 점인데, 이 기능은 SELinux 또는 AppArmor와 같은 보안 정책에 의해 제한되는 경우가 있습니다.

기본적으로 Linux Mint 21.3, CentOS Stream 9, 2021년에서 2026년 사이의 Kali Linux, AlmaLinux 9.7을 포함한 여러 시스템이 취약한 상태로 남아 있습니다.

더 강력한 분포이지만 조건이 있습니다.

최근 버전의 Ubuntu(26.04), 버전 40~44 사이의 Fedora 또는 Rocky Linux 10은 이 취약점을 무력화하는 SELinux/AppArmor 보호 기능을 제공합니다.

경고: 이러한 보안 정책을 비활성화하는 것은 공격 가능성을 다시 열어주는 것과 같습니다. 관련 정보를 제대로 알지 못하는 관리자는 자신도 모르게 시스템이 손상된 상황에 처할 수 있습니다.

따라서 위험을 평가할 때 전체 시스템 구성을 과소평가해서는 안 됩니다.

CIFSwitch 공격으로부터 효과적으로 자신을 보호하는 방법은 무엇일까요?

2026년 5월에 리눅스 커널에 도입된 패치는 키 요청의 출처를 확인하여 문제를 해결합니다. 따라서 핵심 질문은 사용 중인 배포판에 이 수정 사항이 통합되었는지 여부입니다.

그렇지 않은 경우 몇 가지 완화 조치를 취할 수 있습니다. 패키지를 제거하세요. cifs-유틸리티 가장 간단한 방법이지만 CIFS 네트워크 공유에 대한 접근을 차단합니다.

또는 특정 구성을 통해 Kerberos/SPNEGO 인증을 비활성화하거나, CIFS 모듈을 사용하지 않는 경우 완전히 비활성화할 수도 있습니다.

리눅스 시스템 관리에서 패치는 마치 오래된 기계를 열기 전에 윤활유를 바르는 것과 같습니다. 이러한 패치는 오랫동안 존재해 온 버그가 위험해지는 것을 방지해 줍니다.

핵심은 항상 업데이트를 주시하는 것입니다. 특히 심각한 취약점을 수정하는 업데이트라면 더욱 그렇습니다. 무료라고 해서 부실하다는 뜻은 아닙니다. 오히려 그 반대입니다.

sudo apt update && sudo apt upgrade