보안정보

새로운 TLS 공격, Cross-Protocol 공격으로 이어진다

침해사고분석팀 2021.06.10

ALPACA Attack

 

 

클라이언트 (예 : 웹 브라우저)와 두 개의 애플리케이션 서버 (예 : A 와 B)가 주어지면 목표는 A 서버로 가야 했던 데이터를 B 서버가 클라이언트로부터 데이터를 받도록 속이거나 그 반대의 경우가 이뤄지는 것이다. 클라이언트는 특정 프로토콜을 사용하여 A 서버(e.g HTTPS)로 보안 채널을 여는 반면 B 서버는 다른 응용 프로그램 계층 프로토콜(e.g FTP)을 사용하고 별도의 TCP 엔드 포인트에서 실행되기 때문에 Cross-protocol 공격이라고 한다.

 

가령, TLS와 SSL을 이용해서 HTTP나 POP3, IMAP 프로토콜의 데이터가 암호화되어 전송하고 있는 상황에서 SSL에서 발견된 취약점에 의해 HTTP나 POP3, IMAP 프로토콜의 민감한 데이터가 다른 엔드 포인트로 노출될 수 있는 공격이 있을 수 있다. 최근 Cross-protocol 공격으로 이어질 수 있는 새로운 형태의 TLS 공격이 발견된 것이다.

 

연구원들은 TLS 서버의 잘못된 설정에 의해 HTTPS 트래픽을 피해자의 웹 브라우저에서 다른 IP 주소에 있는 TLS 서비스 엔드 포인트로 리다이렉션하여 민감한 정보를 훔치는 공격을 공개했다. 이 공격은 ALPACA(Application Layer Protocol Confusion-Analyzing and mitigating Cracks in tls Authentication)라고 불린다. "공격자는 한 하위 도메인에서 다른 하위 도멘으로 트래픽을 리다이렉션 하여 유효한 TLS 세션을 생성할 수 있다. 이는 TLS의 인증을 무너 뜨리고 한 프로토콜 서비스의 동작이 다른 프로토콜 서비스를 손상시킬 수 있는 Cross-protol 공격이 가능할 수 있다." 라고 말했다.

 

 

ALPACA Attack

 

[그림 1. Cross-protocol 공격이 가능한 프로토콜과 그 시나리오]

 

 

ALPACA 공격은 TLS가 TCP 연결을 할 때, 의도 된 애플리케이션 계층 프로토콜에 바인딩하지 않기 때문에 가능한 것이다. TCP 연결의 무결성을 보호하기 위한 TLS 실패가 "다른 TLS 엔드포인트 및 프로토콜로 리디렉션"으로 이어지는 것이다. 현재 적어도 세 가지 이상의 공격 시나리오가 발견되었으며, 공격자가 TLS를 우회하고 FTP 및 이메일 서버를 대상으로 삼을 수도 있다.

 

이 공격은 MiTM (Man-in-the-middle) 체계를 취하고 있다. 악의적인 행위자는 피해자가 자신의 통제 하에 웹 사이트를 열어 특수 제작된 FTP 공격 코드로 HTTPS 요청을 유도한다. 그런 다음 웹 사이트의 인증서와 호환되는 인증서를 사용하는 FTP 서버로 리디렉션되어 데이터를 탈취한다.

 

이 공격은 다른 TLS 서비스와 호환되는 인증서가 있는 모든 TLS 서버가 영향을 받을 것으로 예상된다. 연구원들은 최소 140 만 개의 웹 서버가 Cross-protocol 공격에 취약하다는 것을 발견했으며, 그중 114,197 개 서버가 신뢰할 수 있고 호환 가능한 인증서가 있고 SMTP, IMAP, POP3 또는 FTP 서버를 사용하는 공격에 악용 가능한 것으로 나타났다.

 

연구원들은 이 공격에 대응하기 위해 클라이언트 측에서는 TLS 통신을 할 때 ALPN(Application Layer Protocol Negotiation) 및 SNI (Server Name Indication) 확장을 사용할 것을 권고하고 있다.

 

 

 

출처

https://thehackernews.com/2021/06/new-tls-attack-lets-attackers-launch.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+TheHackersNews+%28The+Hackers+News+-+Cyber+Security+Blog%29

https://github.com/RUB-NDS/alpaca-code/tree/master/testlab