미국의 FBI NSA는 VPN 암호화 트래픽 해킹 가능할가

미국은 VPN 해킹 할 수 있지 않을까??

누구나 한번쯤 생각해볼만한 주제 미국은 VPN 해킹 가능하지 않을까? 저 또한 그런 생각을 해봤습니다. VPN을 사용하는 이유는 크게 ‘암호화‘, ‘IP 우회‘ 두가지로 나눌 수 있습니다. IP 변경의 목적은 스트리밍 같은 서비스 목적이 될 수도 있고, 커뮤니티 사이트 및 게시판에서 내 IP를 숨기고 싶은 목적일 수도 있습니다. 암호화의 경우에는 내가 인터넷을 하면서 주고 받는 내용들을 누구도 알아 볼 수 없도록 하는 것이 목적인데요.

이것도 암호화라고 할 수 있겠네요 ㅎㅎ

암호화는 전문가들을 위한것이 아닙니다. 모두를 위한 것이며, 보안에 대해 잘 모르는 사람일수록 가까이 해야한다고 생각합니다. 카페, 학교 등 수많은 공공장소에서 인터넷을 하려면 어쩔 수 없이 와이파이를 사용해야 하는데, 우리가 주고받는 데이터들이 통과하는 공유기를 백프로 신뢰할 수 없기 때문에 암호화로 내 기기들을 보호할 수 있다면 어딜가나 마음이 편할 것 입니다.

안전한 내 집에서 인터넷을 한다 하더라도 우리가 주고받는 모든 것들은 ISP(인터넷 서비스 회사-SK브로드밴드, KT, LG 유플러스 등등)를 통과하기 때문에 내가 어느 사이트를 방문하고 뭘 업로드하고 다운로드 했는지 ISP 회사도 정부도 알 수 없게 하려면 ‘암호화’가 필요 합니다.

NSA 그리고 스노든

미국 정보기관 하면 가장 먼저 떠오르는게 FBI, CIA 입니다. 토르 사용하시는 분들 중 이런쪽에 관심있으신 분들에게는 NSA를 빼놓을 수 없죠.

해외 커뮤니티를 보면 “NSA가 토르를 컨트롤 하나요?“, “NSA가 토르를 만들었다는 음모론이 있던데 사실인가요?” 이런 질문들도 한번씩 나오기도 합니다. FBI는 악성 페도들을 한번 소탕한적이 있기 때문에 유명하죠.

에드워드 스노든에 의하면 NSA의 경우에는 전세계적으로 정보수집을 하고 있으며, XKeyscore 시스템은 온라인상에서 일어나는 모든 것들을 수집가능하고, VPN으로 암호화 된 트래픽까지도 가능하다는 주장을 하기도 했습니다.

Guardian 기사에 따르면 XKeyscore 및 기타 NSA의 시스템을 사용하면 개인의 인터넷 활동을 ‘실시간’으로 가로챌 수 있다고 이야기 했습니다.(만약 이게 가능하다고 해도.. 거물급이나 테러리스트 등 인력 투입할 가치가 있는 상대로 사용하겠죠. 일반인들 상대로 수집해봤자 밥뭐먹음? ㅋㅋ 오늘 겜 ㄱ? 이런게 대부분일듯..)

이런 무서운 수집활동은 FISA 702 섹션을 기반으로하는데, 미국 영토 내에 거주하는 미국인의 경우에는 영장이 필요하지만, 미국 밖에선 영장따위는 필요하지 않기에 어마어마한 정보 수집이 마음껏 가능하고, 스노든의 주장에 의하면 NSA의 Booz Allen 계약자로 일하게 되면 이메일 주소 하나만으로도 개인의 이메일을 읽을 수 있다고 하는데, 이게 기술적으로 가능한건지 잘 모르겠습니다.(전세계 기업을 다?안될거 같은데;)

Booz Allen이란 Booz Allen Hamilton이라는 기업을 이야기 합니다. NSA를 포함한 여러 미 정부 산하 정보기관들과 계약을 맺고 ‘정보 감시 업무’를 대행하는 민간기업 중 하나인데요. 이런 민간 기업은 몇년전 기준으로 1900여개가 넘는다고 하네요.(스노든은 이 부즈 앨런 해밀턴에서 분석가로 일했고 이 회사 부회장이었던 Mike McConnell은 NSA에서 고위직을 지낸 사람입니다. 사실상 산하기업이라고 봐도 무방.)

NSA PRISM

Facebook 채팅도 실시간 모니터링이 가능하다고 주장 하는데.. 저는 아직 명확한 증거를 본적은 없습니다. HTTPS가 상당히 보급된 지금의 시대는 조금 어렵지 않을까.. 엄청난 예산과 두뇌들이 있으니 제가 함부로 판단할 순 없겠군요.

NSA가 필요 이상(?)의 엄청난 정보들을 수집하는 것은 확실해 보입니다.(netzpolitik.org – 디지털 권리와 문화, 대량 감시 및 네트워크 중립성 등을 다루는 곳이며 독일어로 운영됩니다. )

NSA는 VPN 암호화 해독할 수 있다?

천조국의 자금과 퀄리티 높은 인력풀까지 미국이라는 넘사벽 세력이 밀어주는데 뭐든 가능해 보이기도 합니다. 중국은 중국 영토에 한해서만 무서운 빅브라더지만 미국은 전세계의 빅브라더이며 그렇게 불릴만한 능력이 있습니다.

하지만 소수의 분들이 우려하시는 것 처럼 NSA가 만능은 아니며, 전세계 수많은 VPN 암호화 통신을 실시간으로 해독해서 수집하거나 감시 및 검열하는 것은 현실적으로 불가능 하다는게 제 생각 입니다.

판단의 근거

  1. 길게 생각할 것도 없이 과거 PPTP 프로토콜이나 쓰던 시절과는 다르게 기술도 많이 발전한 지금 시대(OpenVPN 같은 오픈소스 프로토콜 이후 확실히 더 안전해졌다는 느낌이 듭니다. 지금은 Wireguard까지 있구요.)에 VPN 해킹이 가능했으면 수많은 골칫거리 범죄자들을 쉽게 잡았을 것 입니다. VPN 업체에 협조 공문을 보내고 Log를 요청하는 일도 없겠지요.
    1. 2016년 미 국토안보부는 IPvanish에 Log를 요청했고 두번째 요청에 데이터 로그를 제공했습니다.(광범위한 실시간 해킹이나 VPN 트래픽, 로그 수집 등이 가능했다면 이런 번거로운 절차도 건너 뛰겠죠.)
  2. 미국 정부, 대부분의 VPN 회사들, 가장 민감할 수 있는 정보를 취급하는 금융회사 등 AES-256bit 암호화를 사용합니다. – AES(Advanced Encryption Standard)는 고급 암호화 표준이라는 뜻 입니다.(#위키)
    1. 두단계 낮은 AES-128bit 암호화만 보더라도, Brute Force로 깨려면 10.51 페타플롭스 슈퍼컴퓨터로 1,020,000,000,000,000,000년이 걸린다고 합니다.(#ymaws)
    2. AES-256 비트 Private Key로 가능한 조합의 수는115,792,089,237,316,195,423,570,985,008,687,907,853,269, 984,665,640,564,039,457,584,007,913,129,639,936개 이며 사실상 해독은 불가능한 수준 입니다. 군 일급기밀도 AES256을 사용해 암호화 하기 때문에 Military Grade라고 이야기하는 것입니다.
    3. VPN, 압축프로그램, 패스워드관리 프로그램, 송수신의 보안이 중요한 앱들 등등 매우 광범위하게 쓰이고 있습니다.

AES-256 암호화 좀 더 피부에 와닿게 느껴보자.

저는 압축 프로그램은 무조건 반디집을 사용합니다.(갓혜자 프로그램). 반디집으로 AES256bit 암호화 압축이 가능한데요.

  • 암호 입력할때 기억하지 못하도록 영문+숫자+특수문자 섞어서 무작위로 20개 정도를 넣었다고 쳐봅시다. 그리고 다시 그 암호를 찾으려고 한다면 눈앞이 감감하죠? 사람의 두뇌나 손으로는 절대 못찾으니 컴퓨터 프로그램을 돌려서 무작위로 대입해서 찾아야 합니다.
  • Brute Force는 비밀번호가 1122라면 0001부터 1122가 나올때까지 계속해서 숫자를 올려서 무차별 대입하는 방법인데요. 4자리 숫자만해도 엄청난 경우의 수가 나오는데, 영문,숫자,특수문자 거기다 대문자까지 섞인 10자리 이상 패스워드라면 슈퍼컴퓨터도 사직서낼 수준이 됩니다.

반디집 유료 프로그램의 경우에는 Brute Force로 암호화 찾아주는 기능이 있습니다.

설명을 보면 아래와 같이 나옵니다.

  • 인텔 i9 9900K 기준
  • 숫자 + 영문 소문자로만 이루어진 암호 기준
  • 12자리 암호푸는데 1001년까지 걸리고, 13자리 암호의 경우 36,060년까지 걸리 수 있다.
  • AES를 사용하면 훨씬 긴 시간이 걸린다.
  • 거기다 특수문자와 대문자까지 섞이면?

위의 내용만 보더라도, 숫자+영문(이왕이면 소문자 대문자 섞어서)+특수문자로 이루어진 암호를, 그것도 AES256으로 암호화 되었다면 사실상 푸는 것은 불가능한 수준이며, 앞으로 몇달간 매주 로또1등 당첨이 가능한 경우의 수를 따지는 것 만큼이나 의미가 없습니다.

제가 실제로 압축파일 암호(제 기억에 8~10자리 정도) 잊어버린게 하나 있어서 반디집 프로페셔널 버전으로 한달넘게 돌리다가 포기한적이 있습니다. 직접 체감해보고 나니까 기본적인 암호화도 매우 강력하다는걸 느낄 수 있었습니다.

ChatGPT는 어떻게 생각할까?

ChatGPT가 백퍼센트 정답을 말해주는 것은 아니기 때문에 대답에 대한 요약 부분은 ‘재미로‘ 봐주세요.

NSA 등 첩보 기관은 전 세계의 인터넷 통신을 감시하기 위해 다양한 방법을 사용하는데, 그 중 하나는 웹, VPN, SSH 등의 암호화 통신에 널리 사용되는 Diffie-Hellman 키 교환 알고리즘에 대한 공격이다. 두 당사자가 공개된 소수(prime)를 기반으로 비밀 키를 생성하고 공유하는 방식입니다.

NSA는 이 소수를 미리 계산하고 저장하여, 통신을 가로채고 키를 알아내는 방법을 사용할 수 있으며 이 방법은 엄청난 연산과 저장 공간이 필요하지만, NSA의 예산과 기술력으로 가능하다고 합니다. 특히 1024비트 이하의 소수를 사용하는 경우, NSA는 대부분의 VPN과 SSH 서버, 그리고 상위 백만 개의 HTTPS 웹사이트의 통신을 해독할 수 있습니다.

따라서 VPN을 사용할 때는 2048비트 이상의 소수를 사용하는 VPN을 선택하고 VPN 업체의 본사가 5eyes, 9eyes, 14eyes 미국 첩보동맹에 속한 국가에 있는지 확인해야 합니다. 이들 국가들은 미국의 NSA와 정보를 공유할 수 있으므로, 사용자의 데이터를 보호하지 못할 가능성이 있습니다.

그래서 결론은?

AES-256bit 암호화에 대해서 조금이라도 더 느껴보실 수 있게 설명이 조금 길었는데요. VPN 암호화 통신을 실시간으로 해독해서 패킷을 가로챈다거나 하는 것은 여기까지 읽으셨으면 헛소리에 불과하구나.. 라는 것을 알게되셨으리라 믿습니다.

아무리 천조국의 NSA라 하더라도 전세계의 아무리 못해도 수천만명은 넘을 유저들의 VPN 통신을 실시간으로? 불가능이라 생각합니다. 저 뿐만 아니라 검색해보시면 수학자, 보안 전문가 등 수많은 사람들도 같은 의견임을 알 수 있을 것 입니다.

한마디로 우리같은 일반인들은 VPN이 해킹 가능하지 않나 이런 걱정 보다는, 떡진 머리에 슬리퍼 끌고 편의점에 도시락 사러 가는 길에 탑스타 연예인을 만났는데 그 연예인이 날 보고 첫눈에 반하지 않을까하는 걱정하는게 더 생산적일 것 입니다.

상단 메뉴에서 각종 VPN들을 비교해보실 수 있습니다.

12 Comments

  1. 정보기관이 할수 있는 일이 감청, 감시라고 합니다. 아마 지금 도 알게 모르게 감청 하고 있을지도 모릅니다.

  2. 저 인터넷에서 떠돌다 유료vpn추적은 국내 컴공과 학생수준에서도 가능한 일이라는 커뮤글 보고 이글보니깐… 제가 커뮤니티를 너무 열심히 했나 하는 생각이 들어요 ㅠㅠㅋㅋㅋㅋㅋㅋㅋ
    글감사합니다 ^^ 잘봤어요

    1. 막줄 팩폭 연예인드립 너무 웃겨요 ㅋㅋㅋㅋㅋ ㅠㅜ

    2. 사이버수사대 형사님이랑도 장시간 대화를 해봤는데 현실적으로 굉장히 어려움이 많다고 합니다. 컴공과 수준으로 잡다니.. 아마 천재일지도 모르겠네요 ㅎㅎ

  3. 엄청나게 상세하고 전문적인 글도 일반인이 충분히 이해가능하게 설명해주시는거 같아요 어디서도 접하지 못했던 인터넷 보안분야(?)의 흥미로운 글들 연재해주셔서 감사합니다 !

    1. ㅇㅇㅇ님 말씀이 맞습니다. 초보분들에게 좀 더 포커싱해서 쓴거라 흔하게들 쓰시는 해킹이라고 썼습니다~!

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다