Marvin은 RSA 서명 및 암호 해독 작업을 허용하는 25년 된 취약점의 반환입니다.
ESORICS 2023 기간 동안 25월 29일부터 XNUMX일까지 네덜란드에서 개최된 (유럽 컴퓨터 보안 연구 심포지엄), 보안 연구원 Red Hat에서 일하는 사람, "마빈 어택(Marvin Attack)"을 선보였습니다. 공격 기법 작업 중 지연을 측정하여 원본 데이터를 결정할 수 있습니다. RSA 알고리즘을 기반으로 복호화합니다.
마빈 공격, 1998년에 제안된 Bleichenbacher 방법의 변형입니다., 2017년과 2019년에 발표된 ROBOT 및 New CAT 공격의 개발을 계속하고 있습니다.
마빈(Marvin) 공격은 개인키를 이용해 복호화 작업이 수행되는 시간만 관찰할 수 있는 능력을 갖고 공격자가 RSA 서명 및 복호화 작업을 수행할 수 있게 해주는 25년 된 취약점이 다시 돌아온 것이다.
1998년에 Daniel Bleichenbacher는 PKCS #1 v1.5 패딩의 오류에 대해 SSL 서버가 제공하는 오류 메시지가 적응적으로 선택된 암호문 공격을 활성화한다는 사실을 발견했습니다. 이 공격은 RSA 암호화와 함께 사용될 때 TLS의 기밀성을 완전히 깨뜨립니다. 2018년 Hanno Böck, Juraj Somorovsky 및 Craig Young은 19년 후 많은 인터넷 서버가 원래 공격의 약간의 변형에 여전히 취약하다는 것을 입증했습니다.
기본적으로 이 방법의 본질은 다음과 같다고 언급됩니다. 다양한 서버 반응을 기반으로 한 공격자 실행 시간도 다르고 올바른 오라클 블록과 잘못된 오라클 블록을 분리할 수 있습니다. 블록 경계를 따라 암호화된 데이터를 정렬하기 위해 PKCS #1 v1.5 표준이 추가되었습니다. 공격자는 패딩 블록의 정확성에 대한 정보를 조작함으로써 무차별 대입 공격을 통해 적합한 암호문을 다시 만들 수 있습니다.
이 경우 공격은 개인 키를 직접 복구하지 않고 텍스트만 복호화합니다. 암호화하거나 가짜 서명된 메시지를 생성합니다. 성공적인 공격을 수행하려면 해독할 매우 많은 양의 테스트 메시지를 보내야 합니다.
서버에 대한 공격 사용 암호화를 사용하는 TLS RSA 키를 기반으로 공격자가 가로채는 트래픽을 수동적으로 저장한 다음 이를 해독할 수 있습니다.. PFS를 지원하는 서버의 경우 공격 수행이 훨씬 더 어려워지고 공격이 얼마나 빨리 수행되는지에 따라 성공 여부가 달라집니다.
또한, 이 방법을 사용하면 가상의 디지털 서명을 생성할 수 있습니다. 이는 키 교환 단계에서 전송된 TLS 1.2 ServerKeyExchange 메시지 또는 TLS 1.3 CertificateVerify 메시지의 내용을 확인하며, 클라이언트와 서버 간의 TLS 연결을 가로채는 MITM 공격을 수행하는 데 사용될 수 있습니다.
언급된다 방식의 차이 마빈은 올바른 증분 데이터와 잘못된 증분 데이터를 분리하는 향상된 기술, 거짓 긍정을 필터링하고, 계산 지연을 보다 정확하게 확인하고, 측정 중에 추가 타사 채널을 사용하세요.
실제로 제안된 방법을 사용하면 개인 RSA 키를 모르더라도 트래픽을 해독하거나 디지털 서명을 생성할 수 있습니다. 공격의 적용 가능성을 테스트하기 위해 TLS 서버를 확인하기 위한 특수 스크립트와 라이브러리의 문제를 식별하기 위한 도구가 게시되었습니다.
문제 RSA 및 PKCS를 사용하는 여러 프로토콜 구현에 영향을 미칩니다.. 최신 암호화 라이브러리에는 Bleichenbacher 방법을 기반으로 한 공격에 대한 일부 보호 기능이 포함되어 있지만 연구에 따르면 도서관에는 공개 누출 채널이 있는 것으로 나타났습니다. 올바르게 채워진 패킷과 잘못 채워진 패킷에 대해 일정한 처리 시간을 제공하지 않습니다. 예를 들어 Marvin의 GnuTLS 공격 구현은 RSA 관련 계산을 직접 수행하는 코드에 연결되지 않고 대신 특정 오류 메시지를 표시할지 여부를 결정하는 코드에 대해 다른 런타임을 사용합니다.
또한 연구 작성자는 고려되는 취약점 종류가 RSA에만 국한되지 않고 정수 계산을 위해 표준 라이브러리에 의존하는 다른 많은 암호화 알고리즘에 영향을 미칠 수 있다고 생각합니다.
실제로 Marvin 공격을 수행할 가능성을 확인하기 위해 연구원은 M2Crypto 및 pyca/암호화 라이브러리 기반 애플리케이션에 이 방법의 적용 가능성을 시연했습니다. 평범한 노트북.
마지막으로, 그것에 대해 더 알고 싶으시면 자세한 내용을 참조하십시오. 다음 링크.