All Day Tired

웹취약점_약한 암호 스위트 - ROBOT 공격: 서버에서 취약한 암호 스위트를 지원합니다 내용 알아보기 본문

Back/서버

웹취약점_약한 암호 스위트 - ROBOT 공격: 서버에서 취약한 암호 스위트를 지원합니다 내용 알아보기

yu.dev 2026. 6. 30. 16:09

일단 제목에 써있는 내용부터 뭔 소리인지 몰랐음...

왜 나에게 이런 시련이 왔을까...?

 

해당 웹취약점은 HTTPS를 사용하는데 Cipher Suite 중 ROBOT 공격을 받을 수 있는 키 교환 방식을 사용해서 나온것이다.(라고 이해한다)

그럼 이 내용을 이해해보자면

 

HTTPS

HTTPS = HTTP + TLS

HTTP를 TLS라는 네트워크를 통해 주고받는 데이터를 암호화하여 해킹, 데이터 변조 등을 방지하는 표준 보안 프로토콜로 감싼 것이 HTTPS이다.

흔히들 SSL이라고 하는데 사실 SSL은 초기에 나온 기술로 지금은 쓰지않고 TLS가 맞는 말이지만 이미 통용된 말로 SSL이라고 다들 말한다.

 

그럼 HTTP가 데이터 통신을 어떻게 할지에 대한 프로토콜이고 TLS가 HTTP를 어떻게 암호화 할지에 대한 프로토콜이라면 서버와 클라이언트 사이에 데이터를 통신 할 때 사용하는 암호화된 키가 무엇인지 어떻게 아느냐?

그것은 데이터 통신하기 전에 TLS가 TLS Handshake라는 키를 안전하게 만드는 과정을 수행한다.

 

TLS Handshake

클라이언트(브라우저)가 데이터를 서버에 보내면서 자기가 지원하는 암호화가 무엇이 있는지도 같이 서버에 넘겨준다.

그럼 서버는 이 정보를 받고 자신이 지원하는 암호화를 브라우저에게 알려준다.최종적으로 이 둘이 서로 어떤 암호화를 할지 합의하게 된다.이 과정이 TLS Handshake 이다.

 

TLS Handshake를 하면서 Cipher Suite(암호화 스위트)가 나오는 것이다.

 

Cipher Suite

네트워크(예: HTTPS, TLS) 상에서 안전한 통신을 생성하기 위해 필요한 여러 암호화 알고리즘들을 하나의 묶음으로 정의한 것으로

TLS Handshake과정에서 Cipher Suite를 서로 교환해 가장 강력한 암호화로 클라이언트와 서버가 합의해서 데이터 통신을 하게된다.

참고로 TLS는 데이터 통신할 때마다 매번 새로운 암호화로 통신하도록 한다.(Cipher Suite 예시: TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384)

 

그렇다면 이것으로 약한 암호스위트가 문제인 것을 알 수 있게 된다.

 

그렇다면 ROBOT 공격은 무엇인가?

 

ROBOT 공격

Return Of Bleichenbacher's Oracle Threat 약자로 TLS 서버의 RSA 암호화 방식을 악용하여 과거에 송수신된 암호화 트래픽을 해독하거나 메시지를 위조하는 보안 취약점일고 한다.

그냥 RSA 암호화를 써서 문제라는 것.

 

따라서 해당 웹취약점은 TLS를 RSA 암호화를 써서 문제라는 것이다.그래서 이걸 고치기 위해서 WEB서버 설정 중 SSL관련 설정을 수정해야한다.

 

참고로 나는 회사에서 티맥스의 WebtoB를 써서 http.m파일을 수정해야했다.SSL절에서 RequiredCiphers 내용에 !kRSA를 추가하는 것으로 해결함. -> 아니 해결 못함... 여러개 수정했는데 뭐가 잘못됐는지 페이지 찾을 수 없다함... 미친놈 짜증나...

 

이런 해결 방법은... 각 웹서버마다 다르므로 그때 그떄마다 찾아봐야할 듯...

Comments