총선 투표지 분류기의 외부 통신 가능성에 대한 약간의 고찰 (가짜 DNS 서버 문제) 일기/잡담

민경욱 "사전투표용지 무더기 발견…조작증거"

5월 11일자 연합뉴스 기사다. 민경욱 의원이 이번 총선과 관련하여 사전투표가 조작되었다고 여러 가지 의혹을 제기했다는 내용이다. 기사 본문에서는 주로 투표용지에 관한 내용을 다루고 있는데, 내 입장에서 가장 관심이 간 부분은 아래의 한 문장이다.


개표에 쓰인 투표지 분류기가 외부와 통신할 수 있다는 취지의 익명 음성 녹취를 공개하며 분류기 기기 검증도 촉구했다.


다른 언론사의 기사들도 몇개 살펴보았는데, 인문계와 이공계의 관점 차이인지 아니면 무슨 이유인지 다들 투표용지에 대한 내용만 길게 쓰고 분류기의 외부 통신 가능성에 대해서는 아예 언급하지 않거나 그냥 저렇게 한 문장 정도로 언급만 하고 넘어갔다.

이전에 쓴 게시물에도 언급했듯이(여기에), 투표 결과에 뭔가 문제가 있다면 아마도 IT 측면에서 문제가 발생했을 가능성이 크다고 생각하고 있었는데 언론 기사에는 관련 부분이 너무 간단하게만 나와 있었다. 그래서, 결국 해당 발표 내용을 직접 찾아보기로 했다.

유튜브에서 검색을 해 보니 "가로세로연구소"라는 유튜브 채널에서 발표장에 가서 전체를 녹화해 놓은 것이 있다.



1시간 35분 정도 되는 동영상인데, 민경욱 의원은 후반부에서 등장한다. 동영상 시작후 약 53분 정도 지난 시점부터다.  

발표한 내용에 의하면, 비례투표용지는 계수기라는 기기를 거치고 지역구 투표용지는 분류기를 거치는 것으로 보인다.

계수기는 "(주)프러스 상사"라는 업체의 제품인데 해당 업체의 특허 자료에 의하면 외부 통신 기능을 갖추고 있을 것으로 의심되고, 투표지 분류기는 "한틀 시스템"이라는 업체의 제품인데 윈도우가 탑재된 제어용 노트북과 연결되어 있었다고 한다.

민경욱 의원은 둘 다 외부와의 통신 가능성이 있다는 의혹을 제기했다.

연합뉴스 기사에 언급된 "익명 음성 녹취"는 분류기와 연결된 제어용 노트북에 관한 것이다.

윈도우 명령 프롬프트(cmd)를 열고 ipconfig 명령을 입력해 보니 DNS 서버 항목에 IP주소가 설정되어 있었는데 그것이 가짜값이라는 식이다. 모르는 사람에게 구체적으로 설명하는 것이 아니라 상황을 아는 사람끼리 특정 부분만 얘기한 것 같고 그렇다 보니 대화 내용만 가지고는 정확히 어떤 상황인지 100% 이해가 되지는 않았다.

어쨌든, 이 사람들이 나눈 대화가 사실이라고 가정하고 최대한 끼워 맞춰서 생각을 해 보자면 대강 아래와 같다.   

그냥 ipconfig만 입력해서는 DNS 서버 정보가 나오지 않고 DNS 접미사(connection specific DNS suffix)가 나온다. DNS 서버 정보를 보려면 /all 옵션을 추가해 주어야 한다. 나중에 IP주소를 언급하는 것으로 보아 DNS 접미사 얘기는 아닌듯하고 /all 옵션으로 DNS 서버 주소를 확인한 것으로 보이므로, DNS 서버 주소가 유효하지 않았다는 가정으로 생각해 보기로 한다.

분류기와 연결된 윈도우 노트북에서 ipconfig 명령을 입력했더니 와이파이가 연결된 것으로 나왔다. 뭔가 이상하다. 만약 외부 통신망과 연결되지 않았다면 DNS고 뭐고 아예 IP주소 같은 정보가 출력되지 않아야 정상이기 때문이다.

만약 메인보드에 붙은 와이파이 칩셋을 납땜을 녹여서 제거한 노트북이라면 ipconfig 해봐야 아예 네트워크 아답터 정보조차 안 나올 것이고, 만약 와이파이 칩셋이 장착된 상태라면 네트워크 아답터 정보는 나오지만 "미디어 연결 끊김(media disconnected)"이라고 표시되고 IP주소나 DNS 관련 정보 자체가 없어야 한다. 그런데 와이파이가 연결이 되어 있고, DNS 서버의 IP주소는 확인해 보니 "가짜값"이라는 것이다.

노트북은 IP주소/서브넷마스크/게이트웨이/DNS서버 정보를 와이파이 중계기(AP)로부터 DHCP를 통해 받았을 것이므로, 해당 와이파이 중계기에서 DNS 서버에 유효하지 않은 주소를 설정해 두었다는 얘기가 된다.

자, 그러면 DNS 서버가 유효하지 않으면 어떤 일이 벌어지는가에 대해 잠깐 생각해 보자.

우리가 이글루스에 접속할 때 통상 www.egloos.com이라는 도메인 이름으로 접속을 시도한다. 이글루스 웹서버의 IP주소를 외워서 입력하지는 않는다. 하지만 실제로 통신을 하려면 IP주소를 알아야만 하는데, DNS 서버에게 이글루스 웹서버의 IP주소를 물어보면 답을 받을 수 있다.

그런데, 이 DNS 서버의 IP주소가 유효하지 않은 상태다. 누군가 이 와이파이 중계기에 접속을 해서 네이버나 다음이나 이글루스 같은 웹사이트에 접속을 해 본다면, DNS 서버와 통신이 되지 않으므로 접속이 되지 않는다. 인터넷에 대해 잘 모르는 사람이면 이 와이파이 중계기는 인터넷과 연결되어 있지 않았다고 착각할 수 있다. 그러나 실제로 이 중계기가 인터넷에 연결되어 있는지 아닌지 확인하려면 DNS 서버를 거치지 않고 이미 알고 있는 IP주소에 대해 통신을 시도해 봐야만 한다.

만약 이 중계기가 인터넷에 연결되어 있는 상태에서 DNS 설정만 문제라면, 노트북에 모종의 소프트웨어가 탑재되어 있고 도메인 이름이 아니라 미리 알고 있는 IP주소를 가지고 통신을 시도할 경우 아무런 문제 없이 통신할 수 있을 것이다. 또는 해당 노트북의 hosts 파일에 특정 서버의 이름과 IP주소가 들어가 있다면 - hosts 파일 조회가 DNS 조회보다 먼저 이루어지므로 - 그 서버와는 문제 없이 통신할 수 있다.

결론적으로, 누군가 아주 나쁜놈들이 개표소에 개표사무원/참관인 등으로 섞여 들어가서 노트북에 장난을 치고 스마트폰을 모바일 핫스팟으로 설정한 후에 이 노트북을 테더링하여 외부와 통신하게 만든다는 식의 상상이 가능하다.

SSID를 숨기지 않았다면 다른 사람들도 여기에 접속할 수도 있었겠지만 DNS 서버 정보가 유효하지 않으므로 "웹 접속이 되지 않으니 이 중계기는 인터넷에 연결되지 않았다"고 대수롭지 않게 생각했을 것이다.

물론 실제로 그런 일이 벌어졌느냐는 별개의 문제겠지만 말이다.

이 문제를 규명하기 위해서는 해당 노트북을 조사해서 와이파이 칩셋이 제거되어 있는지, hosts 파일에 수상한 항목이 추가되어 있지 않은지, DNS 서버를 조회하지 않고 외부와 통신하는 프로그램이 있는지 등을 확인하는 작업이 필요할 것으로 보인다.  

민경욱 의원의 발표에 의하면 분류기가 군포 물류센터 F-1 창고에 보관되어 있다는데, 아마 제어용 노트북도 같이 보관되어 있지 않을까 싶다. 그런데, 우연의 일치인지 모르겠지만 공교롭게도 4월 21일에 군포 물류창고에서 큰 화재가 발생했다.
 
군포 부곡동 물류센터 화재…"대응3단계 격상 발령 진화중"


21일 오전 10시 35분께 경기 군포시 부곡동 군포물류센터에서 불이나 소방당국이 대응 3단계를 발령, 진화작업을 벌이고 있다.

불은 10층짜리 물류터미널 F동 인근 쓰레기 소각장에서 시작된 것으로 당국은 추정했다.





덧글

  • 2020/05/14 00:36 # 답글 비공개

    비공개 덧글입니다.
  • 2020/05/14 11:05 # 비공개

    비공개 답글입니다.
  • 2020/05/14 12:02 # 비공개

    비공개 답글입니다.
  • 2020/05/14 06:12 # 답글 비공개

    비공개 덧글입니다.
  • 2020/05/14 12:03 # 비공개

    비공개 답글입니다.
  • 글리 2020/05/14 12:11 # 답글

    ipconfig 상에서 DNS가 가짜값(?)으로 설정되는 대표적인 경우는 169.254로 시작하는 APIPA 기능이 작동한 경우이고 이러한 네트워크 설정 실패에 따른 디폴트 상태는 내부망일 뿐입니다.

    보통 192.168로 시작하면서 DNS 위조를 통해 인터넷 연결이 안되었지만 통신은 된다는 주장이 말이 안되는 것은 아닙니다만 이야기되는 증상만 보면 이게 디폴트 상태와 일치한다는 점을 무시하는 것도 문제가 있다고 생각합니다.

    그리고, 개인적으로 윈도우 시스템에서 ipconfig이 실행되는 환경이라면 바로 최소 netstat으로 IP별 해당 프로그램이나 PID를 추적하는 방법이 충분히 떠올랐음직도 한데 굳이 ipconfig만으로 애매모호한 이야기로 이끈 것은 그닥 기반 지식이 높은 분이 접근을 시도한게 아니라는 이야기로 읽힙니다.
  • 반달가면 2020/05/14 13:01 #

    말씀하신 디폴트 상태는 제가 이해하기로는 일단 와이파이 AP가 존재하고, 해당 AP에 접속하는데 DHCP 서버가 동작하지 않아서 APIPA 기능이 작동한 상황입니다.

    투표지 분류기용 제어 노트북은 무선이고 유선이고 네트워크와 연결되어 있지 않아야 정상입니다. 누군가 일부러 특정 와이파이 AP에 연결한 것이 아니라 그냥 실수로 무선랜을 켜둔 상태라고 가정하면, "접속 암호가 걸려 있지 않고 DHCP 서버를 동작시키지 않은 와이파이AP"가 왜 개표소에 있는지 궁금해지죠. 왜 "media disconnected"가 아니었냐는 겁니다.

    본문에 이미 썼듯이, 녹취록만 가지고는 이렇다 저렇다 명쾌하게 판단이 되지 않는 상황입니다. 그냥 해당 의혹이 만약 사실이라면 어떤 형태이겠느냐에 대해 제 나름대로 생각을 해 본 것이라고 이해하여 주시면 되겠습니다.

    녹취록이 저것이 전체인지 아니면 다른 얘기가 더 있는지 모르겠습니다만, 저도 들으면서 netstat은 해봤는지 궁금했습니다. 그 당시에는 별것 아니라고 그냥 대수롭지 않게 생각해서 그냥 넘어갔을 수도 있겠고요.
  • 글리 2020/05/14 13:43 #

    전제에 차이가 있는걸로 보여서 부연합니다만 그건 어디까지나 일반인들이 설정하기 힘들기때문에 외부망만을 전제하고 특정 네트워크에서 APIPA 기능을 꺼논 상태를 전제한 경우이죠.

    근래의 OS단에서 자동 세팅을 지원하지 못하는 종류, 예를 들어 가상 VPN 아답터나 블루투스 아답터같이 외부망이 전제되지 않은 유무형의 디바이스를 라우팅시키면 APIPA 프로토콜로 진행됩니다.

    그러니까, 외부망이 당연히 있다는 전제의 이야기와 내부망만 있다는 전제의 이야기는 접근이 다를 수 밖에 없습니다. 그런데 증상은 같다?? 네, 증언된 일부의 정보만으로는 그럴 수도 있고 아닐 수도 있죠.

    ..

    그리고, 미디어 연결 끊김이 아니었다면 당연히 다른 기기가 연결되었다는 이야기는 맞는데 이는 패킷을 보내면 목적지에 도달한다는 의미이므로 라우팅 테이블에서부터 추적이 가능한 문제죠.

    그러니까 추적도 가능한 입장이었는데 굳이 그러한 수고를 굳이 방기하고 왜 매우 애매한 이야기만 했을까요? 만약 추적이 불가능했다라는 이야기로 확장되었다면 훨씬 대박이었을텐데?? 이건 저로선 이해를 못하겠습니다.
  • 반달가면 2020/05/14 14:52 #

    해당 녹취록에서 "와이파이"라고 명시적으로 언급하고 있기 때문에 가상 VPN아답터나 블루투스 등을 여기서 고려할 필요는 없을 것 같습니다. 설마 ipconfig의 출력을 보고 해당 아답터가 무선랜인지 블루투스인지 글씨도 못 읽고 구별조차 못하는 사람들은 아닐 것 같고요.

    해킹/조작이 절대 불가능하다는 선관위측 주장을 뒷받침하려면 계수기/분류기/노트북 등 개표와 직접 관련되는 기기가 어떤 종류의 네트워크와도 연결되지 않고 오프라인 상태여야 합니다. 외부망이고 내부망이고 아예 연결되지 말아야 합니다. 그런데 와이파이 연결이 되어 있다는 식의 얘기가 나왔다는게 문제입니다.

    만약 어떤 필요에 의해 내부망을 구성하고 있었다면 선관위측에서 무슨 이유로 어느 기기들을 묶어서 내부망을 구성하고 운영했는지 구체적으로 밝히면 될 것 같습니다. 선관위도 모르는 정체불명의 내부망이 구성되어 기기들이 서로 연결되어 있으면 그건 더 이상한 일이겠죠.

    그냥 ipconfig만 하고 말았는지, 아니면 뭔가 더 했는데 녹취록을 입수한 측에서 일부만 잘라내서 공개한 것인지, 아니면 뭔가 더 해보려 했는데 더 이상 해당 노트북을 붙잡고 있을 수가 없는 상황이 되었는지, 그런 구체적인 정황은 현재 알 수가 없는 상태이므로 발표에 나온 얘기가 녹취록의 전체라고 단정하기엔 이른 측면이 있습니다.

    적극적인 의견 개진에 감사드립니다.
  • 글리 2020/05/14 15:53 # 답글

    가짜 DNS, IP주소는 알아서 통신이 될 것이다라는 주장이 부합할려면 arp -a 해서 문제될 IP가 동적이 아니고 정적인게 보일 것이라는 이야기로도 보이는데 과연 제 추측이 틀렸을까요? 몇초 안걸리는데...

    사양에 따라 무차별적인 자동 세팅은 문제될 수 있는 선거와 관련된 노트북인 것은 분명할테니 수동 세팅 상태라면 당연한 수순으로 arp 콘솔까지 동원해서 일일히 설정해야 되는 문제일지도 모르죠??

    대중화된 제품이 아닌 프린터나 카메라같은 경우 이런 매우 번거로운 세팅 절차를 거처야 되는 경우 분명 있거든요.

    뭐... 그렇습니다.
  • 반달가면 2020/05/14 20:15 #

    발표 내용에 의하면 사용된 노트북은 이미 충분히 대중화된 윈도우10 탑재 "LG 그램" 노트북이었다고 합니다.

    시스템 관리자가 IT보안에 대한 최소한의 상식이 있다면 수동 세팅할 것도 없이 그냥 노트북에 장착된 무선랜/유선랜/블루투스 아답터를 전부 비활성화(disable)했어야 됩니다.
  • 궁금해 2020/05/14 16:21 # 삭제 답글

    글리님, 반달가면님 의견에 공감합니다.
    개표하고 관련된 PC는 선관위에서도 망에 연결이 되지 않기 때문에 해킹으로 부터 안전하다고 합니다. 그런데 DNS서버의 IP주소가 있다라는건 정말 문제입니다. 이는 망에 연결이 되어 있다라는 것을 의미하니까요.
    그래서 인지, 의혹은 점점 커져만 갑니다. 개표PC는 http 연결이 필요하지 않을텐데, 왜 DNS서버가 들어가 있을까요?
  • 반달가면 2020/05/14 20:15 #

    선관위에서 개표할 때 사용했던 노트북들 잔뜩 가져와서 언론과 관련 전문가들 입회하에 네트워크 설정과 시스템 로그 다 공개하면 일격에 민경욱 의원을 바보로 만들 수 있습니다. 왜 빨리 그렇게 안하는지는 모르겠지만요.
  • 2020/05/14 16:23 # 삭제 답글 비공개

    비공개 덧글입니다.
  • 반달가면 2020/05/14 20:22 #

    사실 녹취록 내용만으로 노트북에 문제가 있었다고 단정하기에는 너무 부족합니다. 본문처럼 상상력을 동원해서 끼워 맞춰야만 하기 때문에 이것만 가지고는 어렵고 민경욱 의원 또는 선관위를 통해서 좀 더 많은 정보가 공개되어야 파악이 되지 않을까 싶네요.
댓글 입력 영역
* 비로그인 덧글의 IP 전체보기를 설정한 이글루입니다.

Google Analytics


B-Side


adsense(w160_h600)2

통계 위젯 (화이트)

36736
3890
2062942

adsense(w160_h600)_3

2019 대표이글루_IT