PGR21.com
- 자유 주제로 사용할 수 있는 게시판입니다.
- 토론 게시판의 용도를 겸합니다.
Date 2015/02/21 12:38:57
Name 랜덤여신
Subject [일반] 인터넷상의 보안 접속은 어떻게 이루어지는가
우리 모두가 보안을 중요시하지만, 실제로 인터넷상의 보안이 어떻게 이루어지는지는 비전공자 입장에서 알기 어렵지요. 제가 아는 것도 많지는 않지만, 현재 인터넷상의 보안 접속이 어떻게 이루어지는지 제가 이해한만큼 설명해 볼까 합니다.

1. 무엇이 보안 접속인가?

이 글에서 말하는 보안 접속이란 'HTTPS'를 말합니다. 이건 기존 HTTP에 S, 즉 secure를 붙인 것인데요. HTTPS를 사용하는 사이트는 주소가 http:// 대신 https:// 로 시작하는 특징이 있습니다.

요즘 브라우저는 일반 연결과 보안 연결을 구분 짓기 위해 다음과 같이 주소 줄을 초록색으로 표시하기도 합니다:



이는 사용자에게 이 사이트로의 연결이 안전하다는 것을 알리고, 안심시키기 위한 것입니다. 또한 일반 사이트보다 보안 사이트가 더 멋있어 보이게 함으로써 인센티브를 주려는 목적도 있지요.

하지만 유감스럽게도 대부분의 사용자는 이게 뭔지 모르고, 심지어는 주소 줄이 평소와 다르게 뜨면 겁을 먹는 경우도 있다고 들었습니다. 원래 목표와는 정반대로 동작하는 셈이죠.

2. 원리

HTTPS는 SSL, 또는 TLS라고 불리는 보안 규격에 기반하고 있습니다. TLS를 사용하기 위해서는 복잡한 절차를 거쳐야 합니다. 비대칭 암호화라느니, 공개 키 암호화라느니, 키 교환 같은, 여러분도 들어 보셨을 법한 용어들이 그것이지요. 하지만 이 글에서 집중하고 싶은 것은 다음 주제입니다:

어떻게 상대방이 진짜 상대방인 줄 아는가?

일반적으로 여기서 상대방은 보통 서버, 또는 웹 사이트입니다. 즉, 내가 지금 접속하는 웹 사이트가, 모양만 같은 낚시 사이트가 아니라, 진짜 그 사이트라는 것을 어떻게 아냐는 것이죠.

이 과정에서 사용되는 것이 바로 [디지털 인증서]입니다.

디지털 인증서는 현실의 인증서와 비슷합니다. 사이트 주소가 적혀 있고, 도장이 찍혀 있습니다. 한쪽 구석에는 일련 번호도 적혀 있습니다.

웹 브라우저가 웹 사이트에 접속할 때, 서버는 자신의 인증서를 사용자에게 보냅니다. 웹 브라우저는 인증서를 열어 보고, 인증서에 적힌 사이트 주소가 지금 접속하려는 사이트 주소와 일치한다는 것을 확인한 다음에야, 비로소 이게 낚시 사이트가 아니라는 것을 확신할 수 있는 것입니다.

여기서 ['도장']이 중요합니다. 아무나 도장을 찍을 수 있게 하면 곤란하기 때문이죠. 해커가 자기 멋대로 사이트 주소에 'PGR21.com'이 적힌 인증서를 만들면 곤란할 것입니다. 그 인증서로 PGR21과 똑같은 낚시 사이트를 만들 수 있을 테니까요. 그렇다면 필연적으로 이 도장이 믿을 만한 도장인지 아닌지 판단해야 할 텐데, 어떻게 알 수 있을까요?

이를 위해 컴퓨터는 [믿을 수 있는 도장 목록]을 자체적으로 탑재하고 있습니다. 보통 이 목록은 운영 체제가 관리하고, 경우에 따라서는 웹 브라우저 스스로 관리하기도 합니다(파이어폭스).

여러분의 컴퓨터에 저장된 목록을 보려면, 브라우저 설정(인터넷 옵션 같은)에서 인증서 목록을 클릭하면 됩니다. 보통 이렇게 보입니다:



따라서 보안 연결을 지원하고 싶은 서버가 있다면, 우선 저 목록 중 한 업체에 찾아가서 자신의 인증서에 도장을 찍어 달라고 요청해야 합니다. 물론 돈이 들죠. 업체에 따라 가격은 다양한데, 가장 싼 것이 만 원 정도고, 비싼 것은 수십만 원씩도 합니다. 이는 해킹 피해 발생 시의 보험료도 포함되어 있기 때문이죠.

마이크로소프트나 구글은 수시로 어떤 업체를 도장 목록에 올릴 것인지 판단하며, 가끔은 특정 업체를 도장 목록에서 제외하기도 합니다. 해킹 사건이 터지거나, 특정 정부의 입김을 강하게 받고 있다는 의혹이 들 때 주로 그렇죠. 이러면 그 도장으로 발급된 인증서 전체가 믿을 만하지 못하게 되기 때문입니다.

이 방식은 비판도 받고 있습니다. 현행 방식대로라면 보안 접속을 위해서는 특정한 몇몇 인증 업체에 의존할 수밖에 없는데, 이는 인터넷이 추구하는 자유의 원칙에 위배된다는 것이죠. 이 문제는 인류사의 오랜 떡밥인, '누가 누구를 관리하는가, 정당성은 있는가'와도 연관되기 때문에, 뽀족한 답이 없는 것 같습니다.

3. 도청

이러한 시스템 하에서 만일 누군가가 도청을 시도한다면, 암호화 자체를 뚫는 것은 어렵기 때문에, 보통 웹 브라우저와 서버 사이에 도청기를 설치하는 방식으로 시도하게 됩니다. 이렇게요:

[사용자] --- [도청기] --- [서버]

다만 이렇게 하면, 도청기의 일련 번호가 인증서에 표시된 일련 번호랑 다르기 때문에, 웹 브라우저는 쉽게 위조 여부를 판단할 수 있게 됩니다. 따라서 다음과 같은 오류를 발생시키죠:



그래서 해커는 주소에서 https를 빼버리려 시도하기도 합니다. 일반 접속은 애초에 인증서를 확인하지도 않으니까요. 사용자가 주소 줄이 초록색인지, 누리끼리한지, 붉으스름한지 잘 확인하지 않는 것을 이용한 방법이죠. (위에서 말했듯, 그게 뭔지도 모르는 사람이 많으니까요.)

그래서 어떤 사람들은 모든 사이트에 HTTPS를 강제하자는, 'HTTPS everywhere' 운동을 지지하기도 합니다. 하지만 보안 접속을 지원하는 데는 비용이 들기 때문에(인적 비용이든, 컴퓨터 비용이든), 아직까지는 갈 길이 멀어 보이는 것이 사실이죠.

4. 보안 접속의 의의는 무엇인가?

그러나 이것이 사이트와의 통신 내용이 [이미 설치된] 바이러스나 악성 코드로부터 안전하다는 뜻은 결코 아닙니다. 보안 채널은 통신 그 자체가 안전하다는 것을 보장할 뿐, 통신 외적인 방법으로 정보를 빼내는 방식에는 속수무책이거든요.

예를 들어, '키 로그'라는 종류의 악성 코드는 사용자가 키보드로 입력한 내용을 가로챕니다. 통신과는 관련이 없지만 여전히 아이디와 비밀번호를 훔치는 데는 충분하죠.

아니면 웹 브라우저 자체에 기생하는 방법이 있습니다. 비유하자면 아서스와 제이나가 전화 통화를 하는데, 전화 자체는 보안이 보장되지만, 선량한 줄로만 알았던 아서스가 알고 보니 타락한 리치 왕이었던 거죠. 크롬에서 확장 기능을 설치하거나, 인터넷 익스플로러에서 ActiveX를 설치할 때 주의를 기울여야 하는 이유가 여기에 있습니다.

아이러니하게도 이것이 한국 금융권 및 상거래 사이트에서 보안 프로그램을 잡다하게 요구하는 이유이기도 합니다. 아서스를 믿을 수가 없기 때문에, 엇나가지 못하도록 사전에 족쇄를 채워 두려는 것이죠. 그러나 그 족쇄 자체가 사용자에게 큰 불편으로 다가오기 때문에 논란이 있습니다.

위와 같은 한계에도 불구하고, HTTPS(TLS)가 제공하는 보안 채널이 안전하다는 것 하나만으로도 상당히 안심이 됩니다. 바이러스나 악성 코드만 주의한다면, 내가 주고 받는 통신 내용이 아무에게도 도청 당한다는 걱정 없이 마음 놓고 소통할 수 있지요.

이 장점은 모바일에서 극대화됩니다. 데스크톱 세계를 교훈 삼아, 모바일 앱들은 기본적으로 다른 앱에 영향을 미치는 것이 엄격하게 금지되어 있습니다. 따라서 악성 코드가 키보드 앱에 간섭할 수 없으며, 따라서 키 입력 내용을 훔치는 것도 불가능합니다. 물론 루팅이라든지, 키보드 앱 그 자체가 악성 코드였다든지(!) 하는 반전이 있을 수도 있겠습니다만, 일반적인 시나리오에서는 데스크톱보다 훨씬 신뢰할 만하지요.

세 줄 요약:

1. 특정 사이트의 주소 줄이 초록색이면 도청 위험에서 대체로 안전하다.
2. 만일 특정 사이트의 주소 줄이 평소에는 초록색이었는데 갑자기 색이 사라졌다면 도청을 의심해 보자.
3. 설령 색이 초록색이더라도 악성 코드와 바이러스는 항상 조심하자.
4. 하지만 NSA가 출동하면 어떨까?!

통합규정 1.3 이용안내 인용

"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.
법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
15/02/21 12:53
수정 아이콘
아무리 SSL 적용해놔도 ActiveX 넋놓고 ok 누르는데 익숙해져서 보안 구멍이 생기기 쉽죠. 첫 단추부터 잘못 끼워버린...
세계구조
15/02/21 14:08
수정 아이콘
랜덤여신님 글들 재밌게 읽고 있습니다. 감사합니다.
15/02/21 14:10
수정 아이콘
오호 좋은 글이네요.
15/02/21 14:31
수정 아이콘
흥미롭네요! 모르는 분야였는데 덕분에 알아갑니다.
15/02/21 19:42
수정 아이콘
잘 봤습니다.

한국 웹사이트들이 SSL이나 TSL 대신 ActiveX를 고집하는 이유에 대해서 조금 더 자세히 설명해 주실 수 있으신가요?

설명하신 대로라면 외국 사이트들은 SSL이나 TSL 기반 보안을 사용하는 이유가 납득이 안갑니다.
랜덤여신
15/02/21 20:00
수정 아이콘
잘 봐 주셨다니 감사합니다.

우선, SSL/TLS는 보안 프로그램(IE에서는 ActiveX, 크롬/파폭에서는 플러그인)과 상충되는 개념이 아닙니다. 실제로 오늘날 한국 금융권/상거래 사이트들은 [둘 다] 쓰고 있습니다. 우리 은행을 예로 들면, 사이트 주소가 https://www.wooribank.com/ 입니다. HTTPS를 사용한다는 것을 알 수 있죠. 여기에 키보드 보안이나 개인 방화벽 같은 추가적인 보안 프로그램을 동원하는 것입니다.

왜 한국과 달리 외국은 보안 프로그램을 설치하지 않는가... 저는 은행 및 상거래 사이트들의 보안에 대한 요구치(기대치?)가 다르기 때문이라고 생각합니다.

보안 프로그램이 보안을 향상시키는 것은 분명한 사실입니다. 이것 자체에는 논박의 여지가 별로 없습니다. 그러나 만물이 그렇듯 이것 역시 공짜가 아닙니다.

1. 간단하게 생각해서 보안 프로그램 개발도 돈입니다. 은행은 SSL/TLS라는 기본적인 보안 수준 위에 보조적인 보안 수단을 제공하느라 추가적인 비용을 지출하고 있죠. '이 비용이 감수할 만한가?'는 은행의 선택이겠습니다만, 어쨌든 이것도 비용이긴 비용이고 장기적으로 보면 소비자에게 전가될 비용이기도 합니다.

2. 사용자 불편을 가중시킵니다. 뭐 이건 너무나 유명해서 두 말 할 필요가 없죠. 사이트마다 몇 개씩 플러그인 설치, 어떨 때는 자기들끼리 꼬이기도 하고, 가끔은 블루스크린을 띄우기도 합니다. (제가 그래서 맥북에서 BC 카드 사이트를 접속하지 못하고 있습니다. 유명한 버그예요.)

3. 사이트에 접속하려면 으레 프로그램을 설치하는 게 정상이라는 분위기를 만듭니다. 무슨 프로그램이든 설치한다는 행위 자체가 악성 코드나 바이러스를 유입시킬 확률을 높이기 때문에 가급적 기본 프로그램만으로 웹 이용이 가능하다는 인식이 있어야 하는데, 프로그램 설치에 대한 부담감을 상당히 낮추고 있죠.

이런 저런 단점이 있지만, 앞서 말했듯 보안 프로그램이 보안을 높이는 것도 사실이기 때문에, 결국 트레이드-오프라고 할 수 있습니다. 이 점에 대해서 한국은 추가적인 보안 프로그램을 요구한 역사가 깊고, 은행들이나 상거래 사이트도 단점보다는 장점이 크다는 인식이 있는 것이겠죠. 반대로 외국은 보안 프로그램이라는 문화도 없었고, 굳이 추가적인 보안을 도입하기에는 단점이 너무 많다고 생각하는 것이겠죠.

2번이 상당히 결정적인 역할을 할 것입니다. 만일 외국의 어떤 은행이 비용을 감수하고서라도 보안 프로그램을 도입했다고 치죠. 그러면 보안이 향상되는 효과를 누릴 수 있겠지만, 당장 사용자 반발이 어마어마할 것입니다. 한국은 사용자들을 잘 길들여 놓았지만, 외국은 그런 게 없으니까요. 바로 다른 은행으로 도망가 버리겠죠. 이러면 은행 입장에서는 큰 손해이므로, 감히 시도할 수가 없겠죠.
15/02/21 22:57
수정 아이콘
보안이 향상되긴 하는거였군요. 길고 친절한 답변 감사합니다.

여러모로 보안 현실에 대해 생각해 볼만한 글이었습니다.
15/02/22 14:26
수정 아이콘
은행의 입장에서는 2번이 중요하지만,
실제 보안의 입장에서는 3번이 중요합니다.

웹이라는 개념에서 가장 중요한 것은
서버(웹, 인터넷 등)와 로컬(개별 기기, 대표적으로 PC)을 분리하는 것입니다.

영화관의 개념을 빌려 설명하자면, 웹은 스크린에 3D 영화라는 화면을 쏘고, 사용자는 로컬이라는 안경을 통해서 완벽한 3D 영화를 접하는겁니다.

그래서 사용자의 안경은 가능한 깨끗한 정품 상태로 유지해서 웹이 쏘는 정보를 100% 순수하게 받아들일 수 있도록 하는게
보안의 기본 개념입니다.

보안이 깨진다는 건 누군가가 안경에다가 장난질을 쳐서
안경을 통해 스크린을 보는게 아니라 안경알에 이상한 화면이 뜨도록 만들어서
사용자가 보려고 의도하지 않은 화면을 보도록 만드는 상황이라고 할 수 있겠습니다.

위의 영화관 예에서 볼 수 있듯이
기본적이고 핵심적인 보안 유지의 포인트는
서버(3D 영상을 스크린에 쏘는 영사기)가 로컬(사용자가 쓰고 있는 3D 안경)을 건드리지 못하도록 하는 것입니다.

더 엄밀하게 말하면, 그 누구도 로컬을 건드리지 못하게 해서 로컬을 순수하고 안전한 상태로 놔두는 것이 보안의 핵심이죠.

근데 우리나라식 보안은 로컬을 오염시킵니다.
아무거나 막 다운받게 만들어요.

대부분은 은행이나 공공기관에서 제공한 보안프로그램이니까 괜찮지만
단 한 번만, 단 한 번만 잘못된 프로그램을 다운받으면 로컬 보안이 붕괴됩니다.

그래도 사람들은 자기가 잘못된 프로그램을 다운받았는지 모릅니다.
워낙 많은 프로그램을 다운받았으니 뭐가 맞고 뭐가 틀린지 알 도리가 없죠.
이미 프로그램을 다운받아서 로컬을 수정하는게 습관화되어버려서
자기가 하는 행위가 위험한 행위라는 걸 모릅니다.

제가 생각하는 대한민국 보안은 이런겁니다.

미국 슬럼가에서 방탄복에 방탄헬멧을 입고, 남들 눈에 보이게 총들고 돌아다니는거에요.
이러고 총 맞아 죽지 않기를 바라는 건 과욕이죠.
이러고 돌아다니면 시간이 얼마나 걸리냐의 문제일 뿐 갱한테건 경찰한테건 반드시 총 맞습니다.

총 맞아 죽고싶지 않으면 방탄복, 방탄헬멧을 입을게 아니라
안전하고 치안이 유지되는 거리만 다녀야합니다.

그리고 마지막으로 첨언하자면
입고 돌아다니는 방탄복, 방탄헬멧도 별로 성능이 좋은 건 아니라는게 함정이죠...
목록 삭게로! 맨위로
번호 제목 이름 날짜 조회 추천
101303 [일반] 서울 쌀국수 투어 모음집 1탄 [12] kogang20015882 24/04/19 5882 6
101302 [일반] 이스라엘이 이란을 또다시 공격했습니다. [147] Garnett2117117 24/04/19 17117 6
101301 [일반] 웹소설 추천 - 이세계 TRPG 마스터 [21] 파고들어라5555 24/04/19 5555 2
101300 [일반] 문제의 성인 페스티벌에 관하여 [166] 烏鳳12933 24/04/18 12933 64
101299 [일반] 쿠팡 게섯거라! 네이버 당일배송이 온다 [42] 무딜링호흡머신8772 24/04/18 8772 6
101298 [일반] MSI AMD 600 시리즈 메인보드 차세대 CPU 지원 준비 완료 [2] SAS Tony Parker 3316 24/04/18 3316 0
101297 [일반] [팁] 피지알에 webp 움짤 파일을 올려보자 [10] VictoryFood3277 24/04/18 3277 10
101296 [일반] 뉴욕타임스 3.11.일자 기사 번역(보험사로 흘러가는 운전기록) [9] 오후2시5273 24/04/17 5273 6
101290 [정치] 기형적인 아파트 청약제도가 대한민국에 기여한 부분 [80] VictoryFood11554 24/04/16 11554 0
101289 [일반] 전마협 주관 대회 참석 후기 [19] pecotek6010 24/04/17 6010 4
101288 [일반] [역사] 기술 발전이 능사는 아니더라 / 질레트의 역사 [31] Fig.16143 24/04/17 6143 13
101287 [일반] 7800X3D 46.5 딜 떴습니다 토스페이 [37] SAS Tony Parker 5865 24/04/16 5865 1
101285 [일반] 마룬 5(Maroon 5) - Sunday Morning 불러보았습니다! [6] Neuromancer3153 24/04/16 3153 1
101284 [일반] 남들 다가는 일본, 남들 안가는 목적으로 가다. (츠이키 기지 방문)(스압) [46] 한국화약주식회사7966 24/04/16 7966 46
101281 [일반] 떡볶이는 좋지만 더덕구이는 싫은 사람들을 위하여 [31] Kaestro7285 24/04/15 7285 8
101280 [일반] 이제 독일에서는 14세 이후 자신의 성별을 마음대로 결정할 수 있습니다. [303] 라이언 덕후19693 24/04/15 19693 2
101278 [일반] 전기차 1년 타고 난 후 누적 전비 [55] VictoryFood12464 24/04/14 12464 8
101277 [일반] '굽시니스트의 본격 한중일세계사 리뷰'를 빙자한 잡담. [38] 14년째도피중8626 24/04/14 8626 8
101276 [일반] 이란 이스라엘 공격 시작이 되었습니다.. [54] 키토15686 24/04/14 15686 3
101275 [일반] <쿵푸팬더4> - 만족스럽지만, 뻥튀기. [8] aDayInTheLife6071 24/04/14 6071 2
101274 [일반] [팝송] 리암 갤러거,존 스콰이어 새 앨범 "Liam Gallagher & John Squire" 김치찌개3114 24/04/14 3114 0
101273 [일반] 위대해지지 못해서 불행한 한국인 [24] 고무닦이7657 24/04/13 7657 8
101272 [일반] [강스포] 눈물을 마시는 새 고이(考異) - 카시다 암각문 채우기 meson2996 24/04/13 2996 4
목록 이전 다음
댓글

+ : 최근 1시간내에 달린 댓글
+ : 최근 2시간내에 달린 댓글
맨 위로