TLS (Transport Layer Security) 및 SSH (Secure Shell)에서 양방향 채널과 관련된 몇 가지 알려진 취약점이 있습니다. 이러한 취약점은 주로 프로토콜 구현의 약점, 핸드 셰이크 및 인증 프로세스 중 결함, 암호화 다운 그레이드, 이러한 프로토콜에 내재 된 양방향 통신 채널의 오용 또는 부적절한 구성에서 비롯됩니다.
TLS 양방향 채널의 취약점
TLS는 네트워크를 통한 양방향 통신을 보호하는 데 널리 사용됩니다. TLS는 강력한 보안 목표로 설계되었지만 반복에 대한 여러 가지 취약점에 직면했습니다.
- 재협상 공격 : 초기 버전의 TLS는 재협상 핸드 셰이크에서 취약성을 가졌습니다. 공격자는 클라이언트의 서버와의 통신을 시작할 때 일반 텍스트 요청을 주입하여 HTTPS 세션을 가로 채울 수 있습니다. 이를 통해 전체 채널을 해독하지 않고 합법적 인 세션을 시작할 때 악의적 인 요청을 스플릿 한 적용을 허용했습니다. 이 공격은 RFC 5746에 의해 해결되었으며, 이는 재협상 징후 확장을 원래 세션에 안전하게 바인딩하기 위해 소개했습니다.
- 프로토콜 다운 그레이드 공격 : 공격자는 핸드 쉐이크 메시지를 조작하여 연결이 약한 프로토콜 버전 또는 약한 암호화 암호화 소송을 사용하도록 강제로 연결할 수 있습니다. TLS 세션을 다운 그레이드하면 채널이 암호화 또는 추가 악용에 취약 해집니다.
- 구현 버그 및 제로 데이 취약성 : TLS를 구현하는 다양한 라이브러리 및 응용 프로그램은 예를 들어 원격 코드 실행 또는 정보 유출로 이어지는 메모리 손상 채널의 보안을 손상시키는 버그로 어려움을 겪었습니다. 공격자는 MITM (Man-in-the-Middle) 또는 재생 공격으로이를 활용합니다.
SSH 양방향 채널의 취약점
SSH는 다중 논리 채널을 다중화 할 수있는 양방향 보안 채널을 제공합니다. 그러나 최근의 연구는 SSH 프로토콜과 그 구현이 상당한 취약점에 취약한 것으로 나타났습니다.
-Terrapin Attack (CVE-2023-48795) : 이것은 SSH의 핸드 셰이크 과정에서 발견 된 특히 주목할만한 취약성입니다. 이를 통해 활발한 Man-in-the-Middle 공격자는 클라이언트와 서버간에 교환 된 핸드 셰이크 메시지에서 패킷을 삭제하거나 생략 할 수 있습니다. 이 자리는 암호화 무결성 검사를 다운 그레이드하고 특정 보안 기능을 비활성화하며 SSH 세션 설정 중에 사용되는 인증 알고리즘을 약화시킬 수 있습니다. 이 공격은 통신의 무결성에 영향을 미치며 키 스트로크 타이밍 난독 화가 우회되어 암호가 무차별 적으로 증가 할 위험이 크게 증가합니다. OpenSsh (버전 9.6 이전), Libssh, Putty, Asyncssh, Dropbear SSH 등이 영향을받은 것으로보고되었습니다. 이 취약점을 완화하려면 클라이언트와 서버를 모두 업데이트해야합니다.
- 메시지 자르기 및 재정렬 : SSH의 메시지 시퀀스 처리는 활성 적의 조작에 취약합니다. 공격자는 고유 프로토콜 결함으로 인해 유효한 패킷을 재정렬하거나 제거 할 수 있으며, 이는 채널 무결성 검사에서 우회 할 수 있습니다.
- 오해 및 약한 인증 : 일반적인 취약점에는 SSH에 대한 루트 로그인, 기본 또는 약한 암호 및 열악한 키 관리가 포함됩니다. 이로 인해 양방향 채널을 열어 무차별 대입, 자격 증명 및 무단 액세스가 가능합니다.
- SSH 터널링을 통한 측면 이동 : 공격자는 양방향 SSH 터널 또는 포트 전달을 이용하여 네트워크 내에서 숨겨진 통신 채널을 생성합니다. 이를 통해 맬웨어에 의한 데이터 추출 또는 명령 및 제어 통신을 용이하게하여 지속적으로 무단 액세스를 가능하게합니다.
- 암호 및 Mac 알고리즘 약점 : SSH는 여러 암호화 및 메시지 인증 코드 (MAC) 알고리즘을 지원합니다. 일부 이전 또는 약한 구성 (예 : 특정 MAC의 CBC 모드)은 SSH 채널의 기밀성과 무결성을 손상시키는 암호화 공격에 취약합니다. Terrapin 공격은 특히 Chacha20-Poly1305와 같은 특정 암호 스위트에 영향을 미칩니다.
기술적 결과 및 보안 영향
-MITM (Man-in-the-Middle) 공격 : TLS 및 SSH 양방향 채널은 모두 무결성 및 인증 보장에 의존합니다. 취약점을 통해 MITM 공격자는 메시지를 감지하지 않고 인터셉트, 수정, 폐기 또는 재생할 수 있습니다. 이는 데이터 유출 및 자격 증명 도난을 가능하게하여 기밀성, 무결성 및 진정성을 손상시킵니다.
- 프로토콜 다운 그레이드 및 기능 다운 그레이드 : 공격자는 안전하지 않은 알고리즘의 사용을 강요하거나 SSH에서 비 키스트로크 타이밍 난독 화와 같은 반대 방향을 비활성화하거나 TLS의 보안 재협상을 비활성화하여 이러한 프로토콜이 제공하는 보호를 효과적으로 줄일 수 있습니다.
- 자격 증명 노출 : 양방향 채널 보호의 약점은 오프라인 및 온라인 추측 공격, 암호, 개인 키 또는 세션 토큰과 같은 인증 자격 증명을 유출합니다.
- 지속성 및 측면 이동 : 공격자가 은밀한 터널을 위해 SSH 양방향 채널을 이용하면 피해자 네트워크에 대한 은밀한 제어를 유지하고 주변 수비를 우회하고 확장 된 작업을 수행 할 수 있습니다.
방어 조치 및 권장 사항
- 패치 및 업데이트 프로토콜 구현 : SSH 및 TLS 라이브러리 및 소프트웨어를 최신 상태로 유지하여 SSH 및 TLS 재협상 수정의 Terrapin 공격과 같은 프로토콜 레벨 취약점을 해결하는 보안 패치를 적용합니다.
- 엄격한 구성 : 약한 암호, 오래된 프로토콜 버전 및 불안한 Mac 알고리즘을 비활성화합니다. SSH의 경우 루트 로그인 및 비밀번호 기반 인증을 제한하고 공개 키 인증을 선호하며 사용하지 않은 터널 및 포트 전달을 비활성화하십시오.
- 강력한 키 교환 및 암호 스위트를 사용하십시오 : 알려진 암호화 공격에 대한 견고성을 제공하는 관련 데이터 (AEAD) 암호화 스위트와 함께 전진 비밀 (예 : ECDHE)을 사용하고 인증 된 암호화를 사용하십시오.
- 네트워크 보안 제어 : 탐지 및 예방 시스템을 배포하여 변칙적 인 SSH 터널 및 MITM 활동을 식별합니다. 인증 프록시 및 엔드 포인트 보안 도구를 사용하여 공격 표면을 제한하십시오.
- 모니터링 및 감사 : 비정상적인 터널링 활동, 반복 된 인증 실패 또는 예기치 않은 암호화 다운 그레이드와 같은 의심스러운 동작에 대한 SSH 및 TLS 연결을 정기적으로 모니터링하고 SSH 및 TLS 연결을 정기적으로 모니터링합니다.
요약하면, TLS 및 SSH의 양방향 채널은 주로 핸드 셰이크 무결성, 암호화 다운 그레이드, 약한 구성 및 중간에 배치 된 활성 적대에 의한 공격을 중심으로 여러 알려진 취약점이 적용됩니다. 최근에 공개 된 Terrapin 공격은 채널 무결성에 영향을 미치는 SSH 취약점의 심각성을 강조합니다. 이러한 프로토콜의 양방향 통신 채널을 보호하려면 적절한 패치 관리, 엄격한 구성 및 경계 네트워크 보안 관행이 필수적입니다.