A Tale That Wasn't Left

양철웅의, 특별히 주제를 정해두지 않은 이야기들

RSS

HTTPS를 쓴다고 안심할 수 만은 없다는데, 왜?
Posted on Wednesday, March 28, 2018.

인터넷 사용시 HTTP를 이용하면 도청이 가능하고, 변조가 가능하며, 인증이 결여되어 있기 때문에 최근 브라우저들은 HTTP사이트를 방문하면 안전하지 않은 연결이라고 안내하는 추세입니다. 전자입찰을 한다고 보았을때, 입찰가가 유출되고(도청), 입찰가를 해커가 바꿀 수 있으며(변조), 입찰을 제대로 했다고 생각했지만 그게 아니라 (인증결여) 입찰에 탈락할 수가 있는거죠. 그렇기 때문에 안전한 HTTPS, 즉 암호화 통신경로로 많은 서비스들이 옮겨가고 있죠. 인터넷 사용시 주소창에 녹색 자물쇠가 나타나면 아, 나의 통신은 안전하구나.. 하고 안심하면 되는 것이죠.

주소창에 자물쇠가 보이면 안전하다구?

그/러/나 꼭 그렇지만도 않습니다!

암호화 통신이라는 것은 양날의 검이어서 나도 안전하게 이용할 수 있지만, 해커들도 검문없이 드나들 수가 있게됩니다. 자유는 위험을 수반하고 보안은 불편이 따라붙죠. 그래서 우리들이 이용하는 암호화 통신은 통신 경로상에서 암호화를 벗겨서 내용을 검사하는 과정, 즉 복호화 과정을 거칩니다. 이게 꼭 나쁜것만은 아니에요. 보안은 불편을 수반한다니까요. 그럼 어떤 녀석들이 복호화를 하는가 하는지 볼까요?

암호화 통신이 정말 저렇게 많이 중간에 검사가 될까요? 그렇습니다. 2017년 NDSS 심포지움에서 발표된 “The Security Impact of HTTPS Interceptions”1 논문의 내용을 간단히 소개해드리겠습니다.

뭐 좋은 의미로 중간에서 복호화 할 수도 있겠죠. 내 암호화 데이터를 중간에서 나도 모르게 들여다본다니 기분은 상할 수도 있겠지만요. 하지만 문제는 중간에 난입한 저 장비들이 보안을 망쳐버릴수 있다는 것입니다. 잘 포장된 선물을 경비원이 검문한다음에 대충 스카치테이프로 붙여서 돌려준다고나 할까요?

왜 그럴까요? 보안장비 만드는 사람들의 월화수목금금금 스케쥴 때문에 그럴 수도 있겠지만.. :-) 원래 보안 프로그래밍이 어려운 것이다라는 이야기가 더 맞겠지요. Texas Austin에서 2012년에 발표한 논문2의 연구결과를 보시지요.

그러면 어떻게 해야 할까요? 일부 보안강도가 높은 서비스들은 고정 공개 키(Public Key Pinning)등의 기법들을 사용하여 중간에 복호화하는 기기가 있으면 아예 서비스를 중단하도록 하기도 해요. 모든 서비스들에 대해서 중간에 복호화 하지 말도록 해야 할까요? 이 경우 중간에 복호화 장비의 순기능을 없애버리게 되는것이죠. 결국 한쪽 극단은 해답이 되기 어렵고요, 중용의 묘를 살려야 하겠습니다.

오늘의 결론은 다음과 같습니다.

감사합니다.


Tags: blog, tls, work, https, interception