포인터 유출 48분·루트 5분…우분투·RHEL 패치 공백
아직 공개하지 않은 앤트로픽의 클로드 모델로 리눅스 커널 결함을 원격 루트 익스플로잇으로 만들었다고 27일(현지시간) 밝혔다.
커널 안정판에는 이미 수정이 들어갔지만, 우분투와 레드햇 엔터프라이즈 리눅스(RHEL)는 11월 1일 기준 수정 커널을 내지 못했다. Go 1.24 이후 프로그램은 리눅스에서 다중경로 TCP(MPTCP) 리스너를 기본으로 열어, 회사가 시연한 공격 조건과 겹친다고 Go 보안팀이 경고했다.
미공개 모델이 루트까지 자동화
앤트로픽 프론티어 레드팀에 따르면 미공개 내부 연구 모델이 브라우저와 운영체제에서 치명적 결함을 찾고 다섯 개의 공격 사슬을 완성했다. 그중 리눅스 사례가 CVE-2026-98432다. 보고자는 자사 연구원 시냥 거(Xinyang Ge)다.
초기 프롬프트만으로 클로드는 다중경로 TCP 리스너가 있는 리눅스 서버에 패킷을 보내, 자격증명이나 사용자 조작 없이 루트 권한으로 임의 명령을 실행하는 익스플로잇을 작성했다.
— 앤트로픽, 자사 연구 글 10월 27일 · “After initial prompting, Claude wrote an exploit that allows a remote attacker to send packets to Linux servers with a multipath TCP listener to run arbitrary commands as root, without any credentials or user interaction.”
증명은 두 단계로 나뉜다. 먼저 경쟁 조건을 이겨 커널이 답신에 여분 바이트를 실어 보내게 해 커널 포인터를 유출하고, 주소 공간 난수화(KASLR)를 원격에서 무력화한다. 이어 같은 결함으로 버퍼를 넘쳐 콜백 포인터를 덮어쓴 뒤, 미리 심어 둔 페이로드가 루트 셸 명령을 실행한다.
경합에 지면 해당 핸드셰이크만 실패하고 시스템은 죽지 않아 재시도가 가능하다. 자체 실험에서는 포인터 유출에 48분, 명령 실행까지 추가로 5분이 걸렸다. 회사는 익스플로잇 코드를 공개하지 않았고, 실험한 커널 버전과 세부 설정도 적지 않았다.
결함은 IPv4 TCP 핸드셰이크에 있다
커널 CVE 기록에 따르면 결함은 IPv4 TCP 연결 수립 과정의 경쟁 조건이며, 이미 해제된 메모리를 다시 읽는 오류(use-after-free)로 이어진다. 새 연결이 만들어질 때 요청 소켓의 IP 옵션은 복사 없이 자식 소켓으로 넘어간다. 이때 다른 CPU가 재전송 SYN으로 SYN-ACK를 만드는 동안 옵션이 해제되면 해제된 메모리를 읽는다. 리눅스 4.4부터 영향받으며, 팀은 CVSS 3.1 기준 9.8점을 매겼다.
수정은 에릭 뒤마제(Eric Dumazet)가 작성했고, 옵션 해제를 RCU 유예 기간 뒤로 미룬다. 업스트림에는 10월 5일 반영됐다. 5.10.272, 5.15.223, 6.1.190, 6.6.159, 6.12.113, 6.18.56, 7.2.10, 7.3 등 유지 중인 안정 분기에도 백포트됐다. CVE는 10월 15일 공개됐다. IPv6 쪽 주 경로는 옵션을 복사하기 때문에 같은 방식으로는 해당되지 않는다.
우분투·RHEL은 수정 커널 미배포
데비안은 10월 16일 수정 커널을 배포했고, 오라클 리눅스와 아마존 리눅스도 수정 패키지를 냈다.
그러나 우분투 CVE 페이지는 22.04, 24.04, 26.04, 26.10 등 지원 릴리스를 취약으로 두고 수정은 진행 중이라고만 적었다. AWS는 1일 갱신 공지에서 캐노니컬이 아직 수정 커널을 내지 않았다고 밝혔다.
레드햇은 30일 보안 공지에서 심각도를 Critical로 올렸다. RHEL 8, 9, 10과 오픈시프트가 대상이다.
레드햇은 수정 배포를 서두르고 있다.
— 레드햇, 보안 공지 10월 30일 · “Red Hat is expediting the release of fixes.”
공지는 완전한 해결이 커널 업데이트뿐이라고 적었다. IP 옵션이 붙은 IPv4 TCP 패킷을 떨어뜨리는 nftables 규칙을 임시 완화책으로 제시하면서도, 필터링은 노출을 줄일 뿐 대체가 될 수 없다고 경고했다.
Go 기본 설정이 공격 조건을 넓힌다
Go 보안팀은 29일 공지에서 Go 1.24부터 리눅스 수신 소켓에 MPTCP가 기본이라고 확인했다. 회사가 시연한 원격 코드 실행은 MPTCP 리스너가 있는 서버를 전제로 한다. 환경변수 GODEBUG=multipathtcp=0으로 끌 수 있지만, 프로그램마다 끄는 방식은 취약하다. 근본 결함은 MPTCP 전용이 아니어서 커널 패치가 최선이라고 팀은 적었다.
야생 악용 보고는 1일 기준 없고, 미국 사이버보안기반시설안보국(CISA)의 알려진 악용 취약점(KEV) 목록에도 올라 있지 않다. 우분투의 수정 커널 배포 시점은 아직 정해지지 않았다.
