스턱스넷(Stuxnet)은 2010년에 발견된 웜 바이러스로 산업시설을 감시하고 파괴하는 최초의 소프트웨어이다.
스턱스넷은 웜이지만 사이버 무기급으로 사용되었다. Cf> 사이버 무기(Cyber Weapon)
2. 웜(Worm) vs 바이러스(Virus)
앞서 스턱스넷은 웜이라 명시했다. 웜과 바이러스는 복제방식/전파방식에 있어 차이가 있으니 참고해두자.
웜(Worm) : 스스로를 복제하는 악성 소프트웨어 컴퓨터 프로그램이다. 웜은 독자적으로 실행되며 별다른 실행 프로그램이 필요하지 않다.
바이러스(Virus) : 컴퓨터 시스템에 침입해 프로그램에 기생하며 시스템을 변경하거나 사용할 수 없도록 만드는 악성코드로, 스스로 복제는 가능하지만 사용자가 직접 바이러스를 옮겨야 다른 컴퓨터로 전염이 가능하다.
즉 웜(Worm)은 숙주없이 자가전파 가능하며 바이러스(Virus)는 파일 등 반드시 숙주를 통해서 전파된다.
3. 감염 경위 및 동작
스턱스넷은 최초 USB로 침투됐다.
각각의 컴퓨터에 전달되는 동안에는 탐지되지 않기 위해 암호화된 채로 전달됐고 침투한 순간 스스로 복호화하여 추후 공격을 진행했다.
놀라운 것은 보호 링(Protection Ring) 중 가장 안쪽(Kernel Root Ring)까지 설치되었는데 따라서 Anti-Virus 프로그램에 감지되지 않고 전파될 수 있었다. 이것이 가능했던 건 무려 4개의 윈도우 취약점을 이용한 제로데이 공격(Zero Day-Attack)을 감행했기 때문이다.
보호 링(Protection) : 결함 (결함 내성) 및 악성 행동 (컴퓨터 보안)으로부터 데이터와 기능을 보호하는 매커니즘이다.
커널 (Kernel) : 컴퓨터 운영 체제의 핵심이 되는 컴퓨터 프로그램으로, 시스템의 모든 것을 완전히 제어(control)한다.
제로데이 공격(Zero Day-Attack) : 특정 소프트웨어의 아직까지 공표되지 않은, 혹은 공표되었지만 아직까지 패치되지 않은 보안 취약점을 이용한 해킹의 통칭이다. "Zero-day"는 해당 취약점이 공표 혹은 발견된 날을 뜻하므로, 개발사는 공격이 행해진 시점에서 이 취약점을 해결할 시간을 채 하루도 가지지 못했음을 뜻한다.
커널 안쪽까지 설치되기도 했고 감염시킨 컴퓨터에 드라이버를 탑재시켰기 때문에 루트 킷(Rootkit)으로서 작동했다.
루트킷(Rootkits) : 컴퓨터 소프트웨어 중에서 악의적인 것들의 모음으로써, 자신 또는 다른 소프트웨어의 존재를 가림과 동시에 허가되지 않은 컴퓨터나 소프트웨어의 영역에 접근할 수 있게 하는 용도로 설계되었다 Cf> 백도어(Backdoor)
그런데 컴퓨터는 통상 알 수 없는 경로로 드라이버가 설치되는 걸 막는다. 따라서 드라이버를 설치할 때 인증서 키(Certificate Key)를 사용하는데, 스턱스 넷은 실제 대만회사 'Realtek'의 서명을 이용했다. 그렇다고 해서 해당 회사가 실제로 서명을 한 것도 아니다. 당시 서명키는 Air-gapped 상태였는데 이는 누군가 사회공학적 기법을 이용해 키를 탈취했다는거다.따라서 드라이버 설치 절차를 정리하면 [1 Step] : 누군가 회사의 접근권을 얻고 [2 Step] : 서명키를 회사 컴퓨터에서 추출하고 [3 Step] : 해커에게 키를 전달 후 해커가 해당키로 인증서 서명한 것
Air-gapped : 물리적으로 네트워크와 격리되어 인터넷에 절대로 연결되지 않은 상태
사회공학(Social Engineering) : 인간 상호 작용의 깊은 신뢰를 바탕으로 사람들을 속여 정상 보안 절차를 깨트리기 위한 비기술적 침입 수단
이후 감염시킨 컴퓨터에 모두 페이로드(Payload)를 배포하진 않고 요구사항에 맞는 컴퓨터에만 배포했다. 요구사항은 wincc 소프트웨어가 설치된 컴퓨터였고 wincc프로그램은 PLC를 관리했다.
페이로드(Payload) : 전송의 근본적인 목적이 되는 데이터. 해킹의 경우 멀웨어, 악성 소프트웨어가 이에 해당한다.
PLC(Programmable Logic Controller) : 산업 플랜트의 유지관리 및 자동 제어 및 모니터링에 사용하는 제어 장치
결국 이 wincc가 설치된 컴퓨터를 조종해서 PLC로 하여금 핵 원심분리기 회전율을 조절했고 핵 시설을 파괴시켰다