🇰🇷 한글 설명
Linux 커널의 btrfs 파일 시스템에서 압축된 데이터를 읽는 중 오류가 발생할 경우, bio 구조체가 중복으로 완료 처리(double complete)되는 취약점입니다. 이로 인해 커널 패닉이 발생하여 시스템이 중단될 수 있습니다.
💡 쉬운 설명
데이터를 읽는 과정에서 오류가 났을 때, 시스템이 똑같은 작업 완료 신호를 두 번 보내면서 컴퓨터가 혼란에 빠져 멈춰버리는 문제입니다. 이로 인해 시스템이 갑자기 꺼지거나 재부팅될 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
btrfs: do not double complete bio on errors during compressed reads
I hit some weird panics while fixing up the error handling from
btrfs_lookup_bio_sums(). Turns out the compression path will complete
the bio we use if we set up any of the compression bios and then return
an error, and then btrfs_submit_data_bio() will also call bio_endio() on
the bio.
Fix this by making btrfs_submit_compressed_read() responsible for
calling bio_endio() on the bio if there are any errors. Currently it
was only doing it if we created the compression bios, otherwise it was
depending on btrfs_submit_data_bio() to do the right thing. This
creates the above problem, so fix up btrfs_submit_compressed_read() to
always call bio_endio() in case of an error, and then simply return from
btrfs_submit_data_bio() if we had to call
btrfs_submit_compressed_read().
📍 영향받는 시스템
btrfs 파일 시스템을 사용하는 Linux 커널 버전
⚔️ 공격 벡터
압축된 btrfs 파일 시스템 내의 데이터를 읽도록 유도하여 커널 패닉 유발
🛡️ 대응 방법
btrfs 관련 오류 처리가 수정된 최신 Linux 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 패치된 최신 보안 업데이트 버전인지 확인합니다.