인사이트

인사이트

9년 동안 묻혀 있던 Linux 커널 결함이 드러났습니다: CVE-2026-46333 영향 범위와 패치 가이드

9년 동안 묻혀 있던 Linux 커널 결함이 드러났습니다 CVE-2026-46333 영향 범위와 패치 가이드

🤖 AI Summary

Qualys 위협 연구팀(TRU)이 2026년 5월 22일 Linux 커널의 권한상승 결함 CVE-2026-46333을 공개했습니다. 결함의 위치는 커널 ptrace 권한 관리 로직(get_dumpable·ptrace_may_access)이고, 2016년 11월 v4.10-rc1에 도입된 코드가 9년 6개월 만에 발견됐죠. 기본 설치 상태에서 영향이 확인된 배포판은 Debian 13, Ubuntu 24.04·26.04 LTS, Fedora 43·44이고, Red Hat 보안 어드바이저리 RHSB-2026-004는 RHEL 10·9·8 영향을 안내합니다. 공격자가 로컬 저권한 사용자 권한을 가진 상태에서 chage(/etc/shadow), ssh-keysign(SSH 호스트 키), pkexec(root 명령), accounts-daemon(root 명령) 4개 익스플로잇 중 하나를 실행하면 자격증명 노출이나 root 권한 획득이 가능해요. CVSS v3.1은 7.1 HIGH(kernel.org CNA 부여, NVD 자체 평가는 미제공), 공격 벡터는 Local(AV:L)이라 원격 RCE는 아닙니다. 임시 완화책은 kernel.yama.ptrace_scope=2 이상(Red Hat 권장)이고, gdb·strace·perf 비루트 디버깅 차단 같은 부수효과를 함께 고려해야 합니다. 이번 글은 Qualys 1차 출처와 NVD·Red Hat·AlmaLinux 보안 어드바이저리 기준으로 영향 범위·메커니즘·완화책·점검 체크리스트를 정리합니다.

블로그 목차

9년 된 커널 빚이 운영팀 책상에 도착했습니다

리눅스 서버를 운영하는 팀이라면 누구나 한 번쯤은 apt list --upgradable 결과가 길어진 아침을 마주합니다. 어제 글에서는 클라우드 ID 계층의 비밀번호 재설정 절차를 악용한 침해를 다뤘죠. 5월 26일(화) 발행 Storm-2949 Entra ID 글에서 짚었던 신원·권한 관리 이야기였어요. 오늘은 그 아래 OS 계층에서 새로 공개된 커널 결함을 봅니다.

Qualys 위협 연구팀(TRU)이 2026년 5월 22일 Linux 커널의 권한상승 결함 CVE-2026-46333을 공개했습니다. 코드네임은 ssh-keysign-pwn이고요. 결함이 도입된 시점은 2016년 11월 커널 v4.10-rc1이라, 정확히는 9년 6개월 전에 들어온 코드가 이제야 드러난 셈입니다. 발견자 Saeed Abbasi는 비공개로 5월 11일 보고했고, 5월 14일 패치 커밋 31e62c2가 메인라인에 머지된 뒤 5월 22일 공식 공개됐어요.

이번 결함의 본질은 멀리 떨어진 공격자가 서버를 뚫는 류가 아닙니다. 이미 로컬 셸을 가진 저권한 사용자가 root 권한이나 민감 파일에 접근하는 데에 있죠. CVE-2026-46333은 NVD에서 공격 벡터를 Local(AV:L)로 명시했습니다. 원격 코드 실행이라는 식의 표현은 사실과 다르고요. 다만 공유 호스트, CI 러너, 컨테이너 호스트, 멀티 테넌트 환경처럼 비특권 사용자가 셸을 가질 수 있는 곳에서는 의미가 큰 결함입니다.




CVE-2026-46333은 어떤 결함이고 왜 9년 6개월간 묻혀 있었나

NVD는 이번 결함의 위치를 커널의 ptrace 권한 관리 로직, 더 구체적으로는 get_dumpable() 함수의 메모리 덤프 가능성 플래그 처리 경로로 안내합니다. Qualys advisory는 같은 경로가 __ptrace_may_access() 함수의 논리 결함으로 드러난다고 표기해요. CWE 분류는 CWE-269 Improper Privilege Management죠.

좀 더 들여다보면 다음과 같아요. ptrace는 다른 프로세스를 디버깅하거나 메모리에 접근하는 시스템 콜이고, 커널은 이 권한이 누구에게 허용되는지를 메모리 덤프 가능성(dumpable) 플래그로 관리합니다. 메모리 관리 구조 없이 만들어진 스레드에서 이 플래그를 잘못 처리하는 경로가 있었고, 이 경로가 9년 6개월 동안 사각지대로 남아 있던 거죠.

Qualys advisory에 따르면 결함의 트리거가 된 커밋은 2016년 11월의 bfedb58(v4.10-rc1)였습니다. 공격을 실제로 가능하게 만든 또 다른 조건은 2020년 1월 v5.6-rc1에 도입된 pidfd_getfd() 시스템 콜이에요. 두 조건이 만나면서 Qualys가 정리한 4개 익스플로잇 primitive가 동작합니다.




영향받는 배포판과 커널 버전 한눈에 보기

Qualys advisory는 기본 설치 상태에서 영향이 확인된 배포판을 다음과 같이 안내합니다.

배포판

기본 설치 영향

참고

Debian 13

영향 확인

4개 primitive 적용 가능 환경

Ubuntu 24.04 LTS · 26.04 LTS

영향 확인

기본 yama.ptrace_scope=1로 accounts-daemon만 회피

Fedora 43 · 44

영향 확인

4개 primitive 적용 가능 환경

RHEL · AlmaLinux · Rocky 10·9·8

영향 확인

Red Hat RHSB-2026-004 발행, 패치 커널 배포 중

CVE-2026-46333 영향 배포판 매트릭스

AlmaLinux 보안 블로그는 배포판별 패치 커널 버전을 다음과 같이 안내합니다. AlmaLinux 8은 kernel-4.18.0-553.124.4.el8_10, AlmaLinux 9는 kernel-5.14.0-611.54.6.el9_7, AlmaLinux 10은 kernel-6.12.0-124.56.5.el10_1이에요. RHEL과 Rocky·CloudLinux도 동일한 커널 라인을 따릅니다.

Ubuntu의 경우 기본값 yama.ptrace_scope=1이 4개 익스플로잇 중 accounts-daemon만 차단합니다. 나머지 chage·ssh-keysign·pkexec는 ptrace_scope=1 환경에서도 동작하므로, Ubuntu라서 안전하다는 결론은 정확하지 않죠.




공격자가 어떻게 권한을 상승시키는가

Qualys advisory가 공개한 4개 익스플로잇 primitive는 모두 동일한 패턴을 따릅니다. 로컬 저권한 사용자 → ptrace 결함 트리거 → 4개 primitive 중 하나 실행 → 자격증명 노출 또는 root 권한 획득의 흐름이죠. 4개 primitive는 다음과 같습니다.

  • chage primitive: 사용자 만료일 변경 도구 chage를 악용해 /etc/shadow 내용을 노출. 사용자 이름과 해시된 패스워드, 만료 정보가 빠져나갑니다.

  • ssh-keysign primitive: SSH 호스트 인증 헬퍼 ssh-keysign을 악용해 /etc/ssh/*_key 형태의 호스트 개인 키를 탈취. 이 키가 노출되면 호스트 가장(impersonation) 공격에 사용될 수 있어요.

  • pkexec primitive: PolicyKit의 권한 상승 도구 pkexec를 악용해 root 권한으로 임의 명령 실행.

  • accounts-daemon primitive: 사용자 계정 관리 데몬을 악용해 root 권한으로 임의 명령 실행. Ubuntu에서는 기본 ptrace_scope=1로 이 primitive만 차단됩니다.

CVE-2026-46333 권한상승 4단계

4개 primitive가 공통으로 의존하는 시스템 콜은 pidfd_getfd()입니다. 2020년 1월 v5.6-rc1에 도입된 비교적 새로운 시스템 콜인데, 9년 6개월 묵은 ptrace 결함과 결합되면서 실제 익스플로잇이 가능해진 셈이죠.




패치 적용 전 임시 완화책

가장 정확한 대응은 배포판 보안 업데이트를 적용한 커널로 재부팅하는 일입니다. 다만 운영 환경상 즉시 패치가 어렵다면, 임시 완화로 kernel.yama.ptrace_scope 값을 조정하는 방법이 있어요.

Red Hat 보안 어드바이저리 RHSB-2026-004와 Qualys advisory가 권장하는 값은 다음과 같습니다.

ptrace_scope 값

의미

비고

0

제한 없음

기본 결함 노출, 권장 안 함

1

자식 프로세스만 attach 허용

Ubuntu 기본값. accounts-daemon 익스플로잇만 차단

2

관리자만 attach 가능 (권장)

Red Hat 권장값. 4개 익스플로잇 모두 차단 효과

3

ptrace 자체 차단 (최강)

재부팅해야 낮출 수 있음

적용 명령은 다음과 같아요.

  • 즉시 적용: sudo sysctl kernel.yama.ptrace_scope=2

  • 영구 적용: /etc/sysctl.d/10-ptrace.confkernel.yama.ptrace_scope = 2 작성 후 sudo sysctl --system

단, ptrace_scope 상향에는 부수효과가 분명히 있어서 운영팀이 사전에 점검해야 할 항목이 몇 가지 있습니다.

  • 비루트 디버깅 차단: gdb·strace·perf를 일반 사용자가 다른 프로세스에 붙이는 일이 막힙니다. 개발·QA 환경의 디버깅 워크플로에 영향이 가요.

  • 컨테이너·CRIU·kdump 영향: 컨테이너 내부에서의 디버그, Checkpoint/Restore In Userspace(CRIU), kernel dump 일부 시나리오가 영향받습니다. CloudLinux 가이드가 같은 점을 안내해요.

  • =3은 재부팅 전까지 못 낮춥니다: 일시적으로 낮추고 싶을 때도 시스템을 재부팅해야 하므로, 운영 환경에서는 =2로 시작해 검증한 뒤 필요 시 =3으로 강화하는 흐름이 안전하죠.




운영팀이 오늘 점검할 것

우선순위 높은 순서로 정리하면 다음과 같습니다.

  • 1. 영향 여부 확인: Debian 13·Ubuntu 24.04/26.04 LTS·Fedora 43/44·RHEL/AlmaLinux/Rocky 10/9/8을 운영 중이라면 즉시 영향 대상입니다. uname -r로 현재 커널 버전을 확인하고, 배포판 보안 어드바이저리의 패치 커널 버전과 비교해 보세요.

  • 2. 보안 업데이트 적용: sudo apt update && sudo apt upgrade 또는 sudo dnf update kernel로 패치 커널을 받은 뒤 재부팅. AlmaLinux 8/9/10 운영 환경은 본문에 안내한 정확한 커널 버전 이상으로 올라갔는지 확인합니다.

  • 3. 임시 완화 적용: 즉시 재부팅이 어려운 경우 sudo sysctl kernel.yama.ptrace_scope=2로 임시 완화를 적용. 단, 위 부수효과 항목을 사전에 운영팀과 공유합니다.

  • 4. 멀티 테넌트·CI 러너 점검: 비특권 로컬 사용자가 셸을 가질 수 있는 환경(공유 호스트·CI 러너·컨테이너 호스트)을 우선 패치 대상으로 분류합니다.

  • 5. 활동 로그 모니터링: 패치 적용 후에도 chage·ssh-keysign·pkexec·accounts-daemon 관련 비정상 호출 로그가 있는지 모니터링합니다. 로그·메트릭·트레이스 관측 방법은 5월 13일(수) 발행 옵저버빌리티 입문 글에서 정리했어요.

외부 이미지 스캔 도구는 호스트 OS 커널 CVE에 직접 대응하지 않을 수 있다는 점도 함께 짚어두면 좋습니다. 5월 20일(수) 발행 컨테이너 공급망 보안 글에서 다룬 이미지 레벨 SBOM·서명 체계는 빌드 산출물의 신뢰 사슬을 다루지만, 호스트 OS 커널 패치는 별도의 트랙으로 관리해야 하죠.




이것만 기억하세요

Qualys TRU가 2026년 5월 22일 Linux 커널 권한상승 결함 CVE-2026-46333(ssh-keysign-pwn)을 공개했습니다. 2016년 11월 v4.10-rc1 도입 코드의 ptrace 권한 관리 로직 결함이고, CVSS v3.1 7.1 HIGH(kernel.org CNA 부여, NVD 자체 평가는 미제공)·CWE-269 Improper Privilege Management로 분류됩니다. 기본 설치 영향이 확인된 배포판은 Debian 13, Ubuntu 24.04·26.04 LTS, Fedora 43·44, RHEL·AlmaLinux·Rocky 10·9·8입니다. 로컬 저권한 사용자가 chage·ssh-keysign·pkexec·accounts-daemon 4개 익스플로잇 중 하나를 실행하면 /etc/shadow·SSH 호스트 키 노출 또는 root 권한 획득이 가능해요. 원격 RCE는 아닙니다. 즉시 보안 업데이트 적용이 어려운 경우 kernel.yama.ptrace_scope=2(Red Hat 권장) 또는 =3(최강)으로 임시 완화 가능하나, gdb·strace·perf 비루트 디버깅 차단과 CRIU·컨테이너 디버그 영향을 함께 고려해야 합니다.




자주 묻는 질문 (FAQ)

Q. CVE-2026-46333은 어떤 결함인가요?

Linux 커널의 ptrace 권한 관리 로직(get_dumpable·ptrace_may_access 함수)에서 발생하는 논리 결함입니다. CWE-269 Improper Privilege Management로 분류되고, 2016년 11월 커널 v4.10-rc1에 도입된 코드가 9년 6개월 만에 발견됐어요. Qualys 위협 연구팀(TRU)이 2026년 5월 22일 공개했고, 코드네임은 ssh-keysign-pwn입니다. CVSS v3.1 점수는 7.1 HIGH(kernel.org CNA 부여, NVD 자체 평가는 미제공)이며 공격 벡터는 Local(AV:L)입니다.

Q. 어느 배포판이 영향을 받나요?

Qualys advisory가 기본 설치 상태에서 영향을 확인한 배포판은 Debian 13, Ubuntu 24.04·26.04 LTS, Fedora 43·44입니다. Red Hat 보안 어드바이저리 RHSB-2026-004는 RHEL 10·9·8 영향을 안내하고, AlmaLinux와 Rocky·CloudLinux 등 RHEL 호환 배포판도 같은 커널 라인을 따라 영향을 받습니다. Ubuntu는 기본값 kernel.yama.ptrace_scope=1로 4개 익스플로잇 중 accounts-daemon만 차단되고 나머지 chage·ssh-keysign·pkexec는 그대로 동작해요.

Q. 원격에서 공격받을 수 있나요?

원격 RCE 결함이 아닙니다. NVD가 명시한 공격 벡터는 Local(AV:L)로, 이미 로컬 셸을 가진 저권한 사용자를 전제합니다. 다만 공유 호스트, CI 러너, 컨테이너 호스트, 멀티 테넌트 환경처럼 비특권 사용자가 셸을 가질 수 있는 곳에서는 의미가 큰 결함입니다. 인터넷 노출만으로 자동으로 뚫리는 종류가 아니므로 원격 코드 실행이라는 식의 표현은 정확하지 않아요.

Q. 패치를 적용하기 어렵다면 어떻게 대응하나요?

임시 완화책은 kernel.yama.ptrace_scope 값을 2 이상으로 올리는 것입니다. Red Hat 보안 어드바이저리 RHSB-2026-004의 권장값은 2이고, 더 강한 차단을 원하면 3까지 올릴 수 있어요. 즉시 적용은 sudo sysctl kernel.yama.ptrace_scope=2, 영구 적용은 /etc/sysctl.d/10-ptrace.conf에 기재 후 sudo sysctl --system 명령으로 가능합니다. ptrace_scope=3은 재부팅 전까지 낮출 수 없으므로 운영 환경에서는 2부터 시작해 검증 후 강화하는 흐름이 안전합니다.

Q. ptrace_scope=2 적용 시 부수효과는 무엇인가요?

비루트 사용자가 다른 프로세스에 gdb·strace·perf를 붙이는 디버깅이 막힙니다. 개발·QA 환경의 디버깅 워크플로, 컨테이너 내부 디버그, Checkpoint/Restore In Userspace(CRIU), kernel dump 일부 시나리오, Firefox·Chromium 샌드박스 등도 영향을 받을 수 있어요. CloudLinux 가이드와 Red Hat 어드바이저리가 같은 부수효과를 안내하므로 운영 환경에서는 사전에 운영팀과 공유한 뒤 단계적으로 적용하는 편이 안전합니다.

비용 절감부터 차별화된 속도와 안정적 운영까지
기업에 최적화된 IT 환경을 지원합니다

비용 절감부터 차별화된 속도와
안정적 운영까지 기업에 최적화된 IT 환경을 지원합니다

비용 절감부터
차별화된 속도와 안정적 운영까지
기업에 최적화된 IT 환경을 지원합니다

(주)스피디

경기도 성남시 수정구 위례서일로 18, 1101호 (위례 더존메디컬타워)

TEL 031-697-8413

FAX 02-6455-4743

E.mail sales@speedykorea.com

© SPEEDY. All rights reserved

(주)스피디

경기도 성남시 수정구 위례서일로 18, 1101호
(위례 더존메디컬타워)


TEL 031-697-8413

FAX 02-6455-4743

E.mail sales@speedykorea.com

© SPEEDY. All rights reserved

(주)스피디

경기도 성남시 수정구 위례서일로 18, 1101호
(위례 더존메디컬타워)


TEL 031-697-8413

FAX 02-6455-4743

E.mail sales@speedykorea.com

© SPEEDY. All rights reserved