보안 공부/Web 보안

SSL 공격법 'POODLE' 취약점

H.J.World 2022. 4. 29. 10:10
728x90
반응형

개요

  • Google의 보안 전문가들(Bodo Moller 외 2명)은 SSL 3.0의 설계상의 취약점과 이를 활용한 공격법 "POODLE
    (Padding Oracle On Downgraded Legacy Encryption)"에 대한 상세 보고서를 공개('14,10.14)
  • "POODLE"은 TLS 연결 설정과정에서 하위버전인 SSL3.0으로 연결 수립을 유도한 뒤, 패딩 오라클 공격을 통해
    암호화된 통신내용을 복호화하는 공격기법
     ※ SSL/TLS : 통신 과정에서 보안과 데이터 무결성을 제공하는 보안 프로토콜. 넷스케이프사에서 SSL을 개발
         하여 업계표준으로 사용되다가 수정을 거쳐 TLS로 명칭을 변경하고 국제표준으로 채택됨
     ※ 패딩 오라클 공격 : 알고리즘 자체 취약성이 아니라 컴퓨터 동작 시간, 온도, 소리, 전자적 노이즈, 전력
        사용량 등 부가적인 현상을 공격 도구로 활용하는 사이드 채널 공격의 일종

주요내용

  • SSL3.0은 설계된지 15년 가까이 되었고 그동안 많은 종류의 취약점이 발견되어 더이상 안전하지 않지만. 여전히
    대부분의 브라우져(Client)와 사이트(Server)에서 지원
    - "trustworthy"의 SSL Pulse 프로젝트 조사결과에 따르면 2014년 10월 3일을 기준으로 조사 대상 사이트의 98%
      (약 15만개)가 보안에 취약한 SSL3.0을 지원

 

  • "POODLE" 공격을 위한 첫 번째 단계는 공격대상의 TLS의 연결의 버전을 취약점이 존재하는 SSL3.0으로 수립 하도록 유도하는 것
- TLS는 통신과정을 안전하게 보호하기 위해 필요한 프로토콜 버전, 암호 매개변수 등을 교환하는 협의과정을 핸드쉐이크 프로토콜이라는 별도의 프로토콜을 이용하여 수행
- 협의과정 최초의 메시지에 클라이언트가 사용가능한 버전들(2개)을 포함하여 메시지를 전송하면 해당 버전 중 서버가 지원 가능한 버전을 응답하는 형식으로 진행
- 공격자들은 상위버전의 협상요청이 거부되면 하위버전의 협상이 진행된다는 점을 이용하여, 통신을 불가능하게 하거나 요청메시지를 변경하는 등의 방법을 사용하여 SSL 3.0으로의 연결을 유도
- MITM(맨 인더 미들) 공격이 선행 되어야 하고, 자바스크립트 에이전트를 통해 희생자의 브라우져가 쿠키를 요청하게 만들어야 함
 
  • "POODLE"은 CBC모드 블록암호문에 대한 패딩 오라클 공격을 활용한 공격기법이며, CBC 암호모드에 대한
    다른 공격과 달리 평문의 일정한 형식을 요하지 않고 특별한 대응방안이 존재하지 않아서 SSL v3.0을 사용하지
    않는 것이 최선책
    - MAC을 이용한 메시지에 대한 인증이 패딩 블록을 포함하여 수행되지 않기 때문에, 복호화한 블록의 마지막 
      바이트의 값과 패딩의 숫자를 비교하여 일치여부에 따라서 서버는 응답 메시지를 송신함
     ※ SSL의 CBC 암호모드 취약점에 관한 상세한 설명은 "Security of CBC Ciphersuites in SSL/TLS: Problems
         and Countermeasures, Moeller, B."를 참조
    - 마지막 N번째 블록의 값은 패딩으로 채우며, N번째 암호문 블록을 임의의 i번째 암호문 블록으로 대체하여 
      반복적으로 시도하며, 서버의 응답이 왔을 경우 CBC모드의 역으로 복호화를 수행함
    - 응답 메세지를 통하여, 요청 메시지 1바이트 당 평균적으로 256번의 시도를 통해 복호화가 가능하며, 그림과
      같이 요청 메시지의 데이터 블록 마지막 값을 조정하면서 시도함

[출처]
1. http://www.infosecurity-magazine.com/news/shock-fall-security-spending/
2. https://zmap.io/sslv3/
3. https://blog.mozilla.org/security/2014/10/14/the-poodle-attack-and-the-end-of-ssl-3-0/
4. https://www.imperialviolet.org/2014/10/14/poodle.html
5. https://www.trustworthyinternet.org/ssl-pulse/
6. https://www.krcert.or.kr/data/trendView.do?bulletin_writing_sequence=22128

728x90
반응형