상세 컨텐츠

본문 제목

구글, Libgcrypt 암호화 라이브러리의 심각한 취약점 공개

국내외 보안동향

by 알약4 2021. 2. 2. 14:17

본문

 

 

Google discloses a severe flaw in widely used Libgcrypt encryption library

 

구글 프로젝트 제로 팀의 유명한 화이트햇 해커인 Tavis OrmandyGNU Privacy Guard (GnuPG)Libgcrypt 암호화 소프트웨어에서 심각한 힙 버퍼 오버플로우 취약점을 발견했습니다.

 

이 취약점이 악용될 경우 원격 공격자가 타깃 머신에 임의 데이터를 쓸 수 있도록 허용해 코드 실행으로 이어질 수 있습니다.

 

Ormandy는 보안 권고를 발행하여 아래와 같이 밝혔습니다.

  

“블록 버퍼 관리 코드 내 잘못된 가정으로 인해 libgcrypt에 힙 버퍼 오버플로우 취약점이 존재합니다. 데이터를 단순히 복호화하는 것 만으로도 공격자가 제어하는 데이터로 힙 버퍼를 오버플로우 시킬 수 있으며, 이 취약점을 촉발시키기 위해 어떠한 인증이나 서명도 필요하지 않습니다.”

“_gcry_md_block_write 내부에 존재하는 이 코드(일반 버퍼 추상화 코드의 일부)는 블록 버퍼의 점유 공간이 알고리즘의 블록 크기를 초과할 수 없는 것으로 가정합니다.”

 

LibgcryptGnuPG의 코드를 기반으로 만든 범용 암호화 라이브러리입니다.

 

이는 모든 암호화 빌딩 블록에 대한 기능을 제공하며 Fedora, Gentoo 등 주요 리눅스 배포판, OS 패키지 관리자인 Homebrew에 포함되어 있습니다.

 

또한 이는 DNSSECsystemd에서도 사용하는 암호화 라이브러리입니다.

 

이 취약점은 지난 128일 발견되었으며, libgcrypt 버전 1.9.0에만 영향을 미칩니다.

 

GnuPG 팀은 새 버전을 공개해 취약점을 24시간 이내에 수정했습니다. 또한 사용자들에게 취약한 라이브러리 버전의 사용을 중단할 것을 권고했습니다.

 

“어제 저녁 지난 주 공개한 Libgcrypt 1.9.0에 대한 심각한 취약점이 제보되었습니다. 이 문제를 포함한 다른 문제를 해결하는 버전이 오늘 공개될 예정입니다.”

“그 동안은 1.9.0 버전 사용을 멈춰 주시기 바랍니다. Fedora 34와 Gentoo는 이미 1.9.0을 사용하고 있는 것으로 확인됩니다.”

 

 암호화 기술자인 Filippo Valsorda는 이 취약점을 분석한 후 해당 문제의 근본적인 원인은 LibgcryptC 코드에서 메모리 보안이 부족하기 때문이라 밝혔습니다.

 

 

<이미지 출처 : https://twitter.com/FiloSottile/status/1355130271352369155>

 

 

Valsorda는 개발팀의 타이밍 사이드 채널 공격을 완화하기 위해 취한 조치로 인해 이 취약점이 발생했다고 설명했습니다.

 

공격자는 라이브러리에 버퍼 오버플로우를 유발할 수 있도록 특수 제작된 데이터 블록을 보내는 방식으로 이 취약점을 악용할 수 있습니다.

 

Libgcrypt의 제작자인 Werner Koch는 아래와 같이 밝혔습니다.

 

 “Libgcrypt 버전 1.9.1을 발표합니다. 이 버전은 최근 공개된 1.9.0의 치명적인 보안 취약점을 수정합니다. 만약 1.9.0을 아직까지 사용 중일 경우, 즉시 1.9.1로 업데이트하시기 바랍니다.

이 취약점을 악용하는 방법은 쉬운 편이며, 그렇기 때문에 1.9.0 사용자들은 즉시 패치를 진행하셔야 합니다. 이 취약점은 https://dev.gnupg.org/T5275에서 추적됩니다.”

 

 

 

 

 

출처:

https://securityaffairs.co/wordpress/114076/security/libgcrypt-encryption-library-flaw.html

https://bugs.chromium.org/p/project-zero/issues/detail?id=2145

관련글 더보기

댓글 영역