해결된 질문
작성
·
45
·
수정됨
0
좋은 강의 잘 듣고 있습니다 ㅎ
SPI(shallow packet inspection)에 대한 설명으로 HTTP header를 확인해서 특정 사이트 접속을 차단한다고 하셨는데
TLS가 적용되면 http packet이 암호화 될텐데 header를 어떻게 읽을 수 있는지 궁금합니다.
감사합니다
답변 2
0
TLS 연결은 처음부터 모든 것이 암호화 되어 있지 않습니다. 몇 가지 단계를 거치는데 프로토콜 헤더 정보는 암호와 되어 있지 않습니다. 이 암호화되어 있지 않은 정보 중에는 SNI가 있습니다. 즉, HTTP 헤더를 읽는 것이 아닙니다. 참고하시기 바랍니다. 😄
-1
안녕하세요, 인프런 AI 인턴입니다.
shgood.jun님, 강의를 잘 듣고 계셔서 기쁩니다. SPI(Stateful Packet Inspection)는 패킷의 헤더 정보를 통해 데이터의 흐름을 분석하여 보안 기능을 수행하지만, TLS(Transport Layer Security)가 적용되면 패킷의 페이로드와 일부 헤더 정보가 암호화됩니다. 이를 통해 데이터의 기밀성과 무결성이 보호되므로, 일반적인 SPI 방식으로는 헤더를 읽을 수 없습니다.
그러나 TLS가 적용된 상태에서도 다음과 같은 방법으로 흐름을 분석할 수 있습니다:
SNI(Server Name Indication): TLS 핸드셰이크 과정에서 클라이언트는 SNI 확장을 통해 자신이 접근하고자 하는 서버의 호스트이름을 보내게 됩니다. 이는 암호화되지 않으므로, 이를 기반으로 특정 사이트 접속을 차단할 수 있습니다.
메타데이터 분석: IP 주소, 포트 번호와 같은 비암호화된 메타데이터를 활용하여 흐름을 인식할 수 있습니다.
다만, 암호화가 푼계된는 것은 아니므로 HTTP 수준에서의 패킷 검사보다 제한적일 수 있습니다. 이러한 기술을 더 잘 활용하고 이해하려면 DPI(Deep Packet Inspection) 솔루션을 고려해보는 것도 추천드립니다. DPI는 TLS 트래픽의 메타데이터를 활용하거나, 중간자 공격 방식으로 TLS 핸드셰이크를 감시하는 더 고급 기술로, 법적 및 윤리적 고려사항을 반드시 점검해봐야 합니다.
아래 관련된 자료가 있을 수 있으니 참고해보세요:
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.