Timebox added G!

eatime.egloos.com

포토로그



2017/04/16 13:25

더 플랜 에서 언급된 해킹 내용에 대한 소고 오늘도, 내일도 끄적

다른 부분은 봐도 모르는 얘기니 아는 부분에 대해서만 짚어보고 갑시다. 다룰 부분은 더 플랜의 2장, 민주주의 해킹(Hacking Democracy) 입니다.

이 부분에서 소개되는 것은 "전자개표기의 해킹" 에 대해 다루고 있습니다. 다만 이 부분은 기존 종사자들이나 관심이 있던 사람들에게는 크게 새로운 부분은 아닙니다. 외국에서 전자개표기에 대한 불확실성 및 해킹 여부는 꾸준히 제기되고 연구된 부분인데다가 그 내용이 크게 바뀌거나 업데이트 된 것도 아니기 때문입니다. 그러니 만약 해당 영상을 본다고 하면 2장은 그냥 넘겨도 무관할 정도.

뭐, 일단 모르는 사람들도 있을테니 간단하게 얘기를 다뤄보죠.

2장에서 소개하는 방식은 크게 2개로 잘게 나누면 3개가 됩니다. 소프트웨어를 통한 온/오프라인 해킹, 하드웨어를 통한 오프라인 해킹. 소프트웨어 방식은 기계에 특정 툴/프로그램을 깔아 제어하는 방식이고, 하드웨어 방식은 장비 자체의 구성요소(여기서는 메모리)를 조작하여 결과값이 다르게 나오도록 제어하는 방식입니다. 일반 컴퓨터 보안에서 얘기하는 것과 크게 다르지 않고, 해당 부분에서 크게 오류가 있는 부분은 보이지 않습니다. 문제라면 "전자개표기는 조작이 가능해!" 까지는 얘기를 하지만, 지나치게 일반론적인 부분이 많은데 이걸 그대로 지난 선거에 대입하려고 한다는 점이 문제가 되겠습니다.

일반적으로 소프트웨어를 통해 제어를 하는 방식은 필수적으로 온라인 환경을 유도합니다. 이는 원격지의 공격자한테 명령을 전달받아 동작하기 위함이고, 정보가 지속적으로 바뀌는 상황에 대응하기 위한 방편이기도 합니다. 최근에 위험성이 대두된 랜섬웨어의 경우에도 극초기의 일부를 제외하면 단독으로 파일을 암호화하지 않는 형태로 바뀌었습니다. 키 파일을 내부에 저장할 경우 분석요원에 의해 키 정보가 노출되기 쉽다는 점을 고려하여, 파일이 설치된 후 암호키를 별도로 받은 후 암호화를 진행하게 되고, 설치 파일 자체를 막거나 키 통신을 무력화시켜 피해를 방지하는 방식 등이 사용되고 있죠. 이런 것처럼, 사전에 오프라인에서만 동작하게 프로그램이나 스크립트를 심을 경우 발견과 대응이 상대적으로 빠르기 때문에 오프라인에서 동작하는 프로그램은 수요가 줄어들었고, 특정한 타겟을 노리는 형태로 발전합니다.

오프라인 상태에서 조작이 가능한 예시로 설명된 스턱스넷은 인도와 이란 지역에 있는 핵시설을 무력화하려는 용도로 사용된 것으로 추정되는 악성코드로, 핵시설에서 사용되는 특정 장비에서만 동작하도록 설정됩니다. 일반/업무용 랩탑에서는 동작하지 않기 때문에 안티 바이러스들은 이를 감지하지 못하고, 이 상태에서 핵시설 장비로 연결되면 코드가 침투하고, 시설 모터에 부하를 줘서 고장내버리는 코드입니다.

다만 오프라인 코드들은 지정된 특정 동작만 가능하고 그 이외의 환경/동작에 대해서는 무력하다는 문제가 존재합니다. 스턱스넷에서도 핵시설을 고장낸다는 위험성이 있다는 걸 제외하면, 특정 환경 회피 / 모터 동작 제어를 위한 기능만을 탑재하고 있고, 이후 유사계열인 duqu 에서도 배포서버 설치 기능 정도가 올라간 걸 제외하면 거의 동일하게 동작하는 형태를 가집니다. 이는 하드웨어-메모리를 조작하는 부분과도 거의 유사하다고 볼 수 있습니다. 조작된 값을 통해서 기대한 것과 다른 결과 값을 준다는 점과 특정 조건에서만 결과를 준다는 점에서 말이죠. 추가로 코드의 수정 일자가 나오니, 최근에 수정된 코드 위주로 확인해도 파악이 빠르다는 것도 단점이 되죠. 하드웨어 부분은 오프라인-소프트웨어 부분하고 거의 같고, 그걸 일반적으로 판단하기 어렵다 정도만 추가되는거라 굳이 얘기할 필요는 없어 보입니다.


문제는 앞서 말한 것처럼 2장의 내용은 너무 일반적인 내용만을 다룬다는 점입니다. 오프라인 계열의 조작은 특정 조건이 발생할 것을 간주하고 진행하기 때문에 실시간으로 바뀌는 상황에는 대응할 수가 없습니다. 영상에서 소개된 내용은 해킹이 가능하다는 내용만을 입증하기 위한 실험이라 표본이 상당히 적고, 표본이 많아질 경우(실제 투표시) 예상한 값이 나오냐는 내용은 빠져있습니다. A를 이기게 하려던 게 조금만 잘못하면 B가 이기는 결과로 바뀔 가능성이 있는 게 오프라인 조작 방식이고, 지나치게 기계적인 결과값이 나온다는 단점이 있는데, 개표 결과가 상당히 기계적으로 나왔어야 하지만 개표 결과를 보면 이기는 지역에서도 들쭉날쭉한 상태가 보이기 때문에 오프라인 계열의 조작이라고 보기엔 상당히 어렵습니다. 이걸 현장에서 조작하려고 했다면 지나치게 기계 수리/접근이 많다는 증언이 진즉에 나왔어야 하니, 이 계열의 방식은 사용되었다고 보기 어렵단 겁니다.

때문에 가능성이 높은 방법인 온라인-소프트웨어 방식의 해킹으로 조작을 했다는 쪽으로 귀결이 되나, 2장에서 이걸 증명하진 못하고 가능성만을 제시하고 있습니다. 온라인으로 연결된 상태라면 개표기 해킹, 당연히 가능합니다. 그리고 현재 가전업체에 많이 언급되는 IoT 해킹도 당연히 가능하고, 스마트폰 해킹도 가능합니다. 네, 이 부분은 "온라인 장비들은 잠재적인 해킹 가능성을 가진다" 는 단순한 내용이기 때문에 딱히 몇 장으로 나눌 필요성조차 희박합니다. 이걸 왜 별도로 뺐나 라는 생각이 들 정도로 일반론을 펼치기 때문에, 일부로 해킹에 대한 내용을 분리해서 불안감을 높이는 방식을 쓰기 위한 것이다 라는 생각 밖에는 들지 않습니다.

혹시나 해서 뒤 내용을 좀 더 보니, 3장이나 4장에서도 중앙 서버를 통해 조작을 했을 것이다는 내용을 언급하며, 개표기 조작이 가능하다 라는 것을 보여주고 있습니다만.....해당 실험은 2장하고 또 차이가 있는 것이, 로컬 단에서 수정된 프로그램을 덮어씌운 다음에 특정 표 수가 나오도록 만든 행위를 재현하고 있단 말이죠. 이게 뭔 소리냐면, 중앙 서버를 통해 조작했다는 내용이 아니고 로컬에서 조작이 이뤄졌다는 내용이고, 3, 4장에서 중앙 서버를 조작했다는 내용하고 배치가 되는 내용입니다. 이럴거면 장비들이 사전에 조작되어서 나갔거나, 장비 관리 인원들을 매수했다고 주장하는 편이 더 나을 거 같단 말이죠. 약간 관계없는 얘기지만 프로그램을 수정한 후에 주 시스템을 재시작해야 되냐 말아야 되냐 라는 것도 언급이 안 된 상태고.


일단 본 영상에 대해서 구라냐 아니냐를 따지는 건 의미가 없지만, 2장의 내용은 평범한 내용을 주요하게 보이려고 일부러 챕터를 나눴다는 느낌이 드는, 일종의 장수 늘리기 식의 불필요한 구성이었다고 보며, 4장의 실험 건에 대해서는 해커나 관계자를 끌어온 것 치고는 허접하게 진행된 상태입니다. 중앙 서버를 통해 조작되었다라고 할거면 중앙 서버를 통해 개표기를 조작하는 것을 재현해야지, 로컬 단에서 조작하는 거를 재현한다고 해봐야 원래 주장인 중앙서버 연관성하고는 크게 관련이 없기 때문이죠. 최소한 연결한 컴퓨터를 원격 제어하서 바꾸는 내용이었다면 좀 더 유익했겠습니다만, 솔직하게 말해서 별로입니다. 리포트를 낸다면 내용 증명이 안되고 연결성이 부족하다고 해서 C 맞을지도 모르겠군요.

덧글

  • 나인테일 2017/04/16 18:09 # 답글

    대한민국 국정원의 한심한 수준을 보면 스턱스넷 개발은 좀 ㅋㅋㅋㅋㅋ
  • 디베스테이터 2017/04/16 21:49 #

    스턱스넷이야 예시였고, 어차피 복잡한 기능 수행하기에는 좀 버겁죠.
  • 무지개빛 미카 2017/04/16 21:24 # 답글

    어쩔 수 없어요. 앞으로 계속 이게 스리즈로 나온다고 하는데, 가장 큰 문제가 있습니다.

    '김어준 이하 이 인간들이 원래 개봉할 예정이 2017년 11월 말이었다는 것!'

    시간에 쫒긴거 치고는 이 정도면 그럴싸하다고 처 주렵니다.... 그래서 이거 재작진들과 김어준이 박근혜 탄핵을 욕했다고 합니다. 대체 이걸 어떻게 만들라고~ 하면서 말이죠. ㅋㅋㅋㅋ
  • 디베스테이터 2017/04/16 21:49 #

    시간에 쫓겼다고 해도, 하고싶은 말과 실험내용이 일치하지 않는 건.......
  • 루트 2017/04/16 22:26 # 답글

    제가 듣기론 스턱스넷이 원심분리기를 조작할 수 있었던 이유는 네트워크를 사용하는 기술자의 컴퓨터-> USB에 담겨지고, USB는 전체 원심분리기를 작동하는 제어컴퓨터에 옮겨졌기 때문이라고 알고 있습니다. 거기에 스턱스넷에 쓰인 제로데이코드들은 컴퓨터의 취약점을 알고나서 그를 공략하기 위해 작성한 것들이라고 압니다. 그 시설을 알고, 시스템의 취약점 여러개를 통해 그 시설만을 파괴하도록 최적화된 코드였다는 것이죠.

    저는 저걸 예로 든 해킹설을 드는 것은 좀 위험하다고 생각합니다. 이렇게 되면 제로데이코드를 통한 만능설을 주장할 수 있으니까요. 심지어 어떤 사고나 부조리한 상황이 터지면 우리 기계를 잘아는 누군가가 행한 제로데이해킹을 받았다고 주장하고 상황을 무마시키는 일이 일어날 수도 있습니다. 아님 내부에 싫은 사람 누군가에게 책임을 몰아버리는 일도 할 수 있죠. 스턱스넷이 한 공로중 하나가 슈퍼바이저가 사건을 터뜨린 연구원들의 자질을 의심하게 만들어 해고한 일이었으니까요.
  • 디베스테이터 2017/04/17 06:17 #

    사실 그 슈퍼바이저가 잘못했다고 보긴 힘듭니다. 외부에서 쓰던 USB를 생각없이 사용한 거니 어찌보면 자질문제가 되거든요.

    그리고 제로데이 만능설은 보안상 통하지 않습니다. 보통은 왜 그걸 대비하지 못했냐고 갈구거든요.(...) 조직과 투자가 잘 되는 곳은 갈구는 비중이 적고 향후 대비를 하느라 고심을 하는 게 추가되는지라, 제로데이로 털렸다고 책임을 회피하려면 어지간한 짬은 되야.....
  • 루트 2017/04/17 14:36 #

    아뇨 해고사건은 해킹사실이 밝혀지기 전의 일입니다. 그땐 슈퍼바이저가 컴퓨터에 바이러스 생각을 미처 못하고 기술자들이 함량미달인 건 줄 알고 잘랐거든요. 참고로 제로데이즈 다큐멘터리 한번 보세요. 그거 재밌습니다.
  • 디베스테이터 2017/04/17 15:02 #

    관리소홀 문제가 아니라 기술부족이라는 명분으로 해고됐군요. 효과가 다방면으로 뛰어나다고 해야하나.....
  • 준다리 2017/04/17 01:37 # 답글

    컴맹이라 잘 모르지만 우째 되었던간에, 조작이 가능하면 안되는데 가능했으니, 개표 방법은 바뀌어져야 겠죠
  • 디베스테이터 2017/04/17 12:46 #

    전자개표는 전체 기록을 남기지 않을거면 사용을 최소화해야죠. 다만 모든 컴퓨터 기기는 "사람이 손을 댈 수 있다면 조작이 가능"하다는 기본 논리를 너무 위험하게 포장하는 것도 좋지 않습니다.
댓글 입력 영역
* 비로그인 덧글의 IP 전체보기를 설정한 이글루입니다.