IBM은 일본에서 보안 운영 센터 도쿄 SOC를 공개하고, WannaCry의 감염 상황과 대책을 설명했습니다. 최신 패치, 불필요한 네트워크 차단, 중요한 데이터를 정기적으로 백업하는 지극히 당연한 일이 무엇보다 중요하다고 강조했습니다.
IBM에 따르면 WannaCry 랜섬웨어는 전세계 150개 국가에서 20만개 이상의 디바이스를 감염시켰으며, 지불된 몸값도 수십만 달러에 달한다고 합니다. 협박문은 27개 언어가 있으며 대부분의 국가에서 피해가 발생. 몸값은 4월에 400달러였으나 5월은 300달러로 인하.
이번엔 킬 스위치가 우연히 발견되면서 확산 추세가 둔화했으나, 새로운 돌연변이와 변종은 킬 스위치가 아예 없거나 달라진 양상을 띄고 있습니다. 킬 스위치가 있었던 건 상태 분석을 진행하는 걸 피하기 위해서. 문제의 도메인은 mssecvc.exe로 하드코딩됐다고.
WannaCry가 급격히 퍼지기 시작한 건 12일에서 13일로 넘어갈 때쯤. 이 랜섬웨어는 윈도우 MS17-010에서 해결된 취약점을 악용해 감염시키는 대규모 공격으로, 12일 자정부터 WannaCry가 다른 디바이스에 감염을 퍼트리기 위해 이용하는 이터널 블루를 통해 TCP445번 포트로의 공격 통신 SMB가 증가했습니다.
아시아의 ISP에서 감염을 파악한 건 12일 오후 5시 거의 다 되서. 남미에서도 비슷한 시간대에 감염이 되면서 브라질, 아르헨티나, 그리고 유럽에도 피해가 확대됐습니다. 12일 밤에는 아시아 ISP의 72%에서 감염 노드가 확인, 13일이 되자 남미 ISP의 65%가 감염 노드를 확인.
IBM X-Force Threat Research Team이 경계 수준을 AlertCon 3으로 올렸는데, 경계 수준은 1이 가장 낮고 4가 가장 높습니다. 4는 2001년의 코드 레드, 3은 GNU Bash 취약점을 사용한 ShellShock 이후 2년 반만의 일. 다만 5월 18일 들어 공격이 급속히 줄어들면서 경계 레벨을 2로 낮췄습니다.
WannaCry는 마이크로소프트의 핫픽스 업데이트를 꼬박꼬박하면 피할 수 있었습니다. 3월 15일에 이를 해결하는 MS17-010 업데이트를 이미 내놓았거든요. 허나 1개월 후인 4월 14일에 해커 집단 Shadow Brokers가 윈도우 SMB의 취약점을 악용하는 툴을 유출시켰고, 4월 21일에는 WannaCry가 다른 디바이스에 감염을 확대하기 위해 이용하는 공격 툴인 EternalBlue, DoublePulsar가 공개되면서 관련 공격이 조금씩 감지되기 시작했습니다.
한국에서야 큰 피해가 없었지만 전 세계에서 철도, 병원, 전기, 통신, 운송 관련 기업이 피해를 입었으며 영국은 병원 등의 의료 산업에 영향을 받았고, 독일과 러시아, 특히 러시아가 광범위한 영향을 받았다고 합니다. 우크라이나와 인도의 피해도 적지 않은데, 여기에선 구형 버전의 윈도우를 여전히 많이들 쓰기 때문이라고.
랜섬웨어의 파급에서 무엇보다 중요한 게 정확한 정보입니다. 처음에는 수상한 이메일 때문에 감염됐다고 판단하는 사람이 많았으나, 5월 13일에 외국에서 수억통의 이메일을 확인했으나 WannaCry의 감염 경로로 쓰인 건 없었습니다. 일본에서도 3천통의 이메일을 확인했지만 여기로 랜섬웨어가 퍼지진 않았습니다. 1차 감염 중에는 이메일과 SMB를 쓰긴 했지만 실질적인 감염 확대인 2차 감염은 SMB 취약점을 노린 것이라고.
WannaCry의 tasksche.exe에 의해 생성된 파일의 타임 스태프트는 액세스 데이터, 업데이트 메타, 데이터 업데이트가 모두 같은 시간이었다고 합니다. 이 말인즉 PC에서 파일이 생성됨과 동시에 저장된다는 것. 일반적인 공격은 시스템에 침입해 권한을 획득, 외부에서 악성 코드를 가져오지만 WannaCry는 취약점을 노린 공격 패킷의 데이터를 삭제하고 파일을 만들어냈다고 합니다. 즉 이메일로 공격한 게 아니라 인터넷을 통해 직접 공격 파일을 만든 것이죠.
실제로 이메일을 쓰지 않고, 웹 서핑도 특정 애플리케이션에 특정 사이트에만 연결하는 환경에서도 WannaCry에 감염된 사례가 있었다고 합니다. 4월 22일에 열린 마이크로소프트 개발자 회의에서 PC 충돌하는 이유를 묻는 사람들이 있었는데, 그 시점부터 공격이 있었다고 봐야 할 듯.
WannaCry는 mssecsvc.exe가 본체입니다. 포트를 스캔하는 SMB 프로토콜을 호출해, 대상 엔드 포인트에 WannaCry를 보냅니다. 그리고 이를 확산시키는 역할을 맡은 DoublePulsar가 백도어를 엽니다. EternalBlue는 DoublePulsar 서버를 검색하고 파일을 생성하여 WannaCry을 전파합니다. 감염된 엔드 포인트는 Tor 클라이언트가 실행돼 익명 통신을 시작합니다. 그 결과 160개 확장자의 파일을 암호화하고 복사본을 삭제, 돈 내놓으라는 경고문을 표시합니다.
몸값의 지불은 비트코인으로 이루어지며 기한이 정해져 있습니다. 또 WannaCry는 근접 디바이스에 SMB 서비스 취약점을 이용, 다른 PC에도 감염시키려 시도하며 이걸로 감염을 확대시킵니다.
IBM은 WannaCry의 감염을 막기 위해 다음 5가지 방법을 제안합니다. 신형 운영체제 사용, 백신 소프트웨어 사용 같은 건 너무 기본적이라 그런가 없네요.
- 모든 윈도우 시스템에 최신 패치를 적용했는가
- 외부 호스트에서 SMB 포트(특히 139, 445)를 차단하고 UDP 포트 137, 138을 LAN에서 WAN에 차단
- SMBv1과 SMBv2를 해제하고 클라이언트 정책에 의한 SMBv3 연결만 허용
- PC에서 DoublePulsar를 검사하고 바이러스 백신 서명이 최신 상태인지 확인
- 중요한 데이터를 정기적으로 백업하기
호주에선 DSD35라는 대책을 내놓았는데 이게 꽤 효과적이라고 하네요. 38개의 대책을 5단계의 우선 순위로 분류하며, 최상위인 에센셜에선 8개의 대책을 권장합니다. 이 중 애플리케이션 실행에 화이트리스트 적용, 2일 안에 최신 패치 적용, 권한의 엄격한 관리 등을 실시하면 사이버 공격의 85%를 막을 수 있다고. 특히 2일 안에 패치를 적용하는 게 아주 중요하다고 합니다. 다만 패치 적용 후 애플리케이션이 제대로 작동하는지를 확인해야 하는 경우도 있으니 현실적으로 어렵죠.
해외는 피해가 장난아닌가보네요.