1. 토픽
  2. Linux
  3. Linux 커널 실시간 패치 적용이란?

Linux 커널 실시간 패치 적용이란?

CopiedCopy failedURL 복사

Linux 커널 실시간 패치 적용은 재부팅하거나 런타임을 중단할 필요 없이 실행 중인 Linux 커널에 심각하거나 중요한 핵심 보안 패치를 적용하는 방식입니다.

패치와 업데이트는 차이가 있습니다. 업데이트는 패키지의 새로운 마이너 버전으로, 버그 수정, 성능 개선, 새로운 기능, 명령줄 수정 및 기타 개선 사항을 포함할 수 있습니다. 패치는 기존 버전의 취약점을 수정하는 코드 조각으로, 일반적으로 패키지 또는 파일의 두 버전 간 차이를 나타내는 출력입니다. 이러한 패치는 대기 시간 없이 취약점을 수정하므로 기존 구현을 더욱 안전하게 실행할 수 있으며 시스템 관리자는 다음 정기 유지관리 기간까지 재부팅을 미룰 수 있습니다.

이론적으로 실시간 패치 적용은 일반적인 버그 수정 및 기능 개선을 포함하여 실행 중인 커널의 모든 패치에 사용할 수 있습니다. 실제로 실시간 패치 적용에 가장 중요한 기능은 중요 보안 취약점이었는데, 이는 신속히 해결해야 할 수정 사항이기 때문입니다. Red Hat은 Red Hat® Enterprise Linux®를 통해 보안 패치에 집중해 왔으며 커널 실시간 패치 적용은 관리자에게 이점이 있는 보안 기능으로 간주됩니다.

실시간 패치 적용을 사용하지 않으면, 패치된 버전의 새로운 변경 사항을 로드하기 위해 패치 대상 서비스나 애플리케이션을 재부팅해야 합니다. 이는 Linux 커널 자체에 패치를 적용하는 경우에도 마찬가지이므로 Linux 시스템 관리자는 딜레마에 직면하게 됩니다. 반드시 적용해야 하는 보안 업데이트가 있지만 이는 Linux 서버의 예정에 없는 재부팅과 그에 따른 대기 시간 및 다운타임을 수반하기 때문입니다.

이는 당시 MIT(매사추세츠 공과대학교)의 학생 시스템 관리자였던 Jeff Arnold가 겪은 난관이기도 했습니다. 그는 보안 업데이트 적용이 대기 중인 시스템을 관리하고 있었으나 해당 취약점 조치를 미루기로 했습니다. 결국 그 시스템은 해킹을 당하고 말았습니다. 2008년 Arnold는 자신이 겪었던 문제를 해결하기 위해 시스템이 실행 중일 때 보안 패치를 적용하고 로드하는 방식인 '루트리스(rootless) 커널 보안 업데이트'를 고안했습니다. 이 초기 프로젝트(ksplice)는 Linux 커널 실시간 패치 적용이라는 개념을 탄생시킨 시초였습니다.

스테이트리스(Stateless) 서비스와 스테이트풀(Stateful) 서비스, 지속성, 데이터 관리, 트랜잭션, 커맨드 실행 등(모두 서비스 또는 애플리케이션 작동 방식의 기반이 되는 요소임)을 처리하는 복잡성으로 인해 동적 소프트웨어 업데이트는 컴퓨팅 분야의 난제입니다.

Arnold와 이후의 Linux 커널 실시간 패치 적용 프로젝트들은 커널 공간 내의 툴을 활용하여 커널 모듈을 로드하는 방식을 취했습니다.

Red Hat 리소스

Linux 시스템 운영은 사용자 공간(모든 서비스와 애플리케이션이 작동하는 영역)과 커널 공간(핵심 시스템 운영이 이루어지는 영역)이라는 두 영역으로 나뉩니다. 커널은 모든 애플리케이션이 CPU 및 스토리지와 같은 하드웨어 리소스에 액세스할 수 있도록 중개하는 역할을 합니다. 관리자는 커널 자체뿐만 아니라 기능을 확장하거나 수정하기 위한 사용자 정의 커널 모듈을 생성할 수 있으며, 이러한 커널 모듈은 부팅 후에도 동적으로 로드하여 실행할 수 있습니다.

커널 실시간 패치 적용 툴은 패치된 코드로 커널 모듈을 생성한 다음, ftrace(함수 추적) 툴을 사용하여 기존 함수에서 새로 대체된 함수, 패치 모듈 또는 패치된 함수로 라우팅합니다.

그림 1: 커널 실시간 패치 적용의 작동 방식
Diagram of how kernel live patching works. Process described in more detail by surrounding text.

Ksplice는 Linux 커널 실시간 패치 적용을 위한 최초의 프로젝트였으나, 오라클(Oracle)에 매각되었고 결국 비공개 소스 툴로 전환되었습니다. 다른 개발 팀은 ksplice를 대체할 수 있는 오픈소스 프로젝트 개발에 나섰으며, 2014년에 서로 방식이 약간 다른 두 프로젝트인 Red Hat의 kpatch와 수세(SuSE)의 kgraft가 출시되었습니다. 결국 Linux 커널 커뮤니티를 위해 Red Hat과 SuSE 개발자들은 협력하여 livepatch를 개발했습니다. 이는 Linux 커널 내부의 공통 계층으로서, 호환 가능한 커널 실시간 패치 적용 툴을 개발할 수 있도록 지원합니다.

기억해야 할 핵심은 패치가 주로 보안 리스크를 해결하는 데 사용된다는 점입니다. sysadmin은 Linux 시스템에 보안 패치를 적용해야 할 뿐만 아니라 가동 시간 요구 사항도 충족해야 한다는 과제를 안고 있습니다. 즉, 사전에 정해진 유지보수 기간 외에는 시스템을 오프라인으로 전환하지 못할 수도 있습니다.  이러한 상충 관계는 지속적으로 존재하며 갈수록 심화되고 있습니다.

Red Hat 보안 리스크 리포트에 따르면 2019년부터 2020년까지 식별된 보안 문제(일반적인 취약점 및 노출 또는 CVE라고 함)가 1,313건에서 2,040건으로 약 55%(155% 수준) 급증했습니다. 2021년에는 1,596건으로 다소 감소했지만 여전히 2019년보다 22% 높은 수준이었습니다. 이러한 증가는 대부분 중간 수준의 심각도를 가진 취약점에서 나타났으며 중요 CVE는 대체로 비슷한 수준을 유지했고 심각한 취약점은 감소해 왔습니다.

커널 업데이트와 패치는 6주마다 릴리스되며, Red Hat Enterprise Linux의 마이너 업데이트는 모든 보안 패치를 포함하여 6개월마다 릴리스됩니다. 재부팅 없이 Linux 커널에 실시간 패치 적용 서비스를 수행할 수 있으므로, 어떤 정책을 따라야 할지 고민할 필요가 없어집니다.

커널 버전 확인 방법에 대해 자세히 알아보기

커널 관련 CVE는 주요 고려 사항 중 하나로, 2021년에 가장 많이 조회된 CVE 10개 중 4개가 커널과 관련되어 있었습니다.

Linux 커널 보안 패치를 실시간으로 적용할 수 있다는 것은 단순한 편의성을 넘어섭니다. 즉, 보안 팀이 보안 취약점을 선제적으로 해결하고, 커널 기능을 중단 없이 실행하며, 시스템의 안전을 유지하는 데 필수적인 툴입니다.

Linux 보안 패치를 통해 취약점을 해결하는 방법에 대해 자세히 알아보기

 

저는 패치 적용 프로세스와 Red Hat Enterprise Linux의 구성 방식에 매우 만족하고 있습니다. 한 번에 1,000개의 패키지를 설치할 때도 패치 세션이 실패한 적이 없습니다.

리뷰 더 보기

보안은 소스 코드 자체는 물론 운영 체제 수준에서 시작하여 기술 스택 상위 및 라이프사이클 전반에 걸쳐 적용되므로, 다양한 툴을 확보하는 것이 필수적입니다. Red Hat Enterprise Linux는 다음과 같은 다양한 보안 관리 툴을 제공합니다.

앤스로픽(Anthropic)의 Mythos와 같은 AI 기반 초고속 취약점 탐지 툴의 등장으로 사이버 보안 환경은 중대한 전환점에 도달했습니다. 취약점이 발견되고 악용되는 방식에 구조적 변화가 일어남에 따라, 보안 방어자는 더 이상 기존의 수동 패치 주기에 의존할 수 없게 되었습니다. Mythos와 같은 모델은 소스 코드와 시스템 구성을 컴퓨터의 초고속 연산 속도로 분석하여, 새롭게 발견된 수많은 CVE를 쏟아내고 있습니다.

Red Hat Enterprise Linux 웹 콘솔에서 커널 실시간 패치 적용을 관리하면 중요 유지보수 작업을 수행하는 데 따르는 복잡성을 대폭 줄일 수 있습니다. 이러한 웹 콘솔 기능은 숙련된 관리자와 초보 관리자 모두에게 명령줄 툴을 사용할 필요 없이 커널 업데이트를 적용할 수 있는 간소화된 인터페이스를 제공합니다. Red Hat Enterprise Linux 인프라를 업그레이드하면 최신 수정 사항에 대한 중단 없는 액세스를 보장하여 보안 태세를 유지할 수 있습니다. 

Red Hat Lightspeed는 모든 Red Hat Enterprise Linux 서브스크립션에 포함되어 제공되며, 보안 고려 사항을 해결하기 위한 통합된 관리 경험을 제공합니다. 포함된 주요 기능은 다음과 같습니다.

  • 전체 인프라를 포괄하는 시각적 대시보드: 취약한 시스템과 패치 상태를 표시하므로 별도의 Red Hat Satellite 서버 서브스크립션 없이도 중요 버그를 찾아 수정 가능
  • 관련 CVE 및 기타 업데이트
  • 자동화된 Linux 보안 패치 적용을 위한 플레이북
  • 시스템 구성을 관리할 수 있는 정의된 보안 프로필과 사용자 정의 프로필
  • 기준 구성을 적용하고 이 기준에서 벗어난 시스템 식별

Linux 커널 실시간 패치 적용은 명확한 요구에 기반하여 탄생했으며, 다양한 조직 및 커뮤니티 구성원과의 협업을 위한 오픈 프로젝트를 통해 전체 커뮤니티에 기여하는 솔루션으로 개발되었습니다. 이러한 개방적인 협업 방식은 협업, 투명성, 기술 및 사용자 환경 개선에 대한 집중이라는 Red Hat 서브스크립션 가치 원칙의 핵심입니다.  

기업은 Red Hat Enterprise Linux를 통해 다음과 같은 이점을 얻을 수 있습니다. 

  • Red Hat Lightspeed를 통해 보안 리스크 노출 기간을 단축하고, 새롭게 발견된 위협에 대한 신속한 알림 및 문제 해결을 지원받을 수 있습니다.
  • SELinux 및 fapolicyd 기반의 프로세스 격리와 액세스 제어를 통해 강력한 다계층 방어 체계를 구축할 수 있습니다.
  • 투명한 소프트웨어 공급망을 통해 리스크를 줄이고 신뢰를 구축할 수 있습니다. 
  • 사전 보안 강화와 Red Hat Enterprise Linux 이미지 모드를 통해 '시프트 레프트(shift left)' 접근 방식을 도입할 수 있습니다.
  • FIPS(연방 정보 처리 표준) 컴플라이언스를 간소화할 수 있습니다.
  • 자동화 및 오케스트레이션을 통해 시간을 절약하고 효율성을 높일 수 있습니다. 
  • 폐회로 문제 해결을 통해 평균 문제 해결 시간을 대폭 단축할 수 있습니다.
     

    Red Hat Enterprise Linux의 보안 기능 살펴보기

레드햇 공식 블로그

레드햇 공식 블로그에서 고객, 파트너, 커뮤니티 에코시스템 등 현재 화제가 되는 최신 정보를 살펴 보세요.

모든 Red Hat 제품 체험판

무료 제품 체험판을 통해 핸즈온 경험을 얻고, 자격증 시험에 대비하거나 해당 제품이 조직에 적합한지 평가할 수 있습니다.

추가 자료

AWS 기반 Red Hat Enterprise Linux를 선택해야 하는 이유

Red Hat Enterprise Linux와 AWS는 클라우드 기반 미래를 위해 IT 환경과 운영을 혁신하도록 지원하는 솔루션을 제공합니다.

다른 Linux 배포판에서 Red Hat Enterprise Linux로 이전하는 방법

convert2RHEL 툴을 사용하여 CentOS Linux®, Oracle Linux, Alma Linux 또는 Rocky Linux에서 Red Hat® Enterprise Linux로 이전하세요.

골든 이미지란?

골든 이미지는 의도적으로 구성한 시스템의 스냅샷(서버, 가상 데스크톱 환경, 디스크 드라이브)으로, 새로운 인스턴스를 배포하는 데 사용할 수 있습니다.

Linux 리소스