2019.07.18

컴퓨터 바이러스 확산 형태와 감염 알려주는 5가지 징후

Josh Fruhlinger | CSO
컴퓨터 바이러스는 정상 애플리케이션 코드를 매개체로 삼아 확산되고, 스스로 재생시키는 악성 소프트웨어의 일종이다.

다른 악성코드처럼, 공격자가 컴퓨터에 피해를 주거나, 컴퓨터를 제어하기 위해 바이러스를 배포한다. 표적을 감염시키는 방식 때문에 ‘바이러스’라는 이름이 붙여졌다. HIV나 인플루엔자 같은 생물 바이러스들은 스스로 번식을 할 수 없다. 세포를 ‘강탈’ 해야 한다. 이 과정에 감염된 조직을 파괴한다. 이와 유사하게, 컴퓨터 바이러스도 ‘나홀로’ 프로그램이 아니다. 자신을 다른 애플리케이션에 집어넣는 코드 조각이다. 애플리케이션이 실행되면서 바이러스 코드가 실행되고, 이로 인해 작은 피해부터 재앙적인 피해까지 다양한 피해가 초래된다.

이런저런 담론이나 언론 보도에서 사람들이 바이러스와 악성코드를 혼용해 번갈아 사용하는 경우가 많다. 엄격히 말하면, 위 정의에 부합하는 악성코드 종류가 바이러스이다. 다른 두 종류의 악성코드 중 첫 번째는 무해한 애플리케이션으로 가장해 사용자가 실행을 시키도록 유도하는 트로이 목마(Trojans), 두 번째는 다른 애플리케이션에 의지하지 않고 번식과 확산이 가능한 웜(worms)이다. 바이러스는 작동하기 위해 다른 프로그램을 감염시켜야 한다는 차이가 있다.
ⓒGetty Images Bank


컴퓨터 바이러스가 하는 일은?
당신의 컴퓨터에 설치된 애플리케이션 하나가 바이러스에 감염되었다고 가정하자(나중에 잠깐 동안 일어날 수 있는 여러 일에 대해 이야기를 할 예정이다. 지금은 감염만 생각하자). 바이러스는 어떤 식으로 ‘나쁜 일’을 하는 것일까? 블리핑 컴퓨터가 이 과정을 개략적으로 잘 설명하고 있다. 먼저 감염된 애플리케이션이 (통상 사용자의 요청에 따라) 실행된다. 그리고 바이러스 코드가 다른 적법한 코드가 실행되기 전에 CPU 메모리에 로딩된다.

이 시점부터, 바이러스는 호스트 컴퓨터의 애플리케이션을 감염시키고, 가능한 모든 장소에 악성 코드를 주입해 번식을 시작한다 (상주 바이러스는 실행되는 프로그램에 이렇게 하지만, 비상주 바이러스는 실행되지 않은 실행 파일도 감염시킬 수 있음). 부트 섹터 바이러스는 이 단계에서 아주 파괴적인 기법을 사용한다. 컴퓨터 시스템 디스크의 부트 섹터에 코드를 주입, 운영 체제가 완전히 로딩되기 이전부터 실행이 되도록 만든다. 이 경우, 컴퓨터를 ‘클린'하게 작동시키는 것이 불가능해진다.

바이러스가 컴퓨터에 '연결’이 되면, 바이러스를 만든 사람이 의도한 ‘나쁜 일'을 하는 바이러스 코드의 일부인 페이로드가 실행되기 시작한다. 온갖 '못된 짓’을 한다. 예를 들어, 컴퓨터 하드 드라이브를 스캔해 은행 크리덴셜을 탈취하거나, 키스트로크를 로그 기록해 암호를 훔치거나, 해커의 적에게 DDoS 공격을 퍼붓는 좀비 컴퓨터로 만들거나, 사용자의 데이터를 암호화한 후 접근 권한을 돌려주는 대가로 비트코인으로 사이버 몸값을 지불할 것을 요구하기도 한다. 다른 악성코드도 유사한 페이로드를 갖고 있을 수 있다. 랜섬웨어 웜과 DDoS 트로이 목마 등을 예로 들 수 있다.

컴퓨터 바이러스가 확산되는 방식은?
인터넷이 등장하기 전의 바이러스들은 감염된 플로피 디스크를 통해 특정 컴퓨터에서 다른 컴퓨터로 확산되는 경우가 많았다. Amiga 사용자 사이에 크게 확산되었던 SCA 바이러스를 예로 들면, 불법 소프트웨어가 들어 있는 디스크가 매개체였다. 큰 피해를 초래한 바이러스는 아니었지만, Amiga 사용자의 40%가 감염된 적도 있었다.

지금은 인터넷을 통해 바이러스가 확산된다. 바이러스 코드에 감염된 애플리케이션 다른 애플리케이션처럼 컴퓨터들 사이에 전송되면서 바이러스가 확산되는 경우가 많다. 많은 바이러스에 논리 폭탄이라는 것이 들어있다. 이는 바이러스 페이로드가 특정한 시간이나 특정한 조건 아래에서만 실행되도록 만드는 코드의 일종이다. 이로 인해, 사용자나 관리자가 애플리케이션이 감염된 것을 모르고, 이를 전송하거나 설치할 가능성이 있다. 감염된 애플리케이션이 이메일로 전송이 될 수도 있다(고의 또는 실수로. 컴퓨터 메일 소프트웨어를 하이재킹해 사본을 이메일로 발송하는 바이러스도 있음). 또 감염된 코드 저장소나 앱 스토어에서 다운로드 형태로 확산되는 경우도 있다.

알아야 할 한 가지 사실이 있다. 이런 감염 경로 모두에 공통점이 한 가지 있는데, 피해자가 감염된 애플리케이션이나 코드를 실행시켜야 바이러스가 작동한다는 것이다. 호스트 애플리케이션이 실행되어야 바이러스가 실행되고, 번식된다. 그렇지만 악성코드가 가장 많이 확산되는 경로인 이메일과 관련, 많은 사람을 불안하게 만드는 질문 한 가지가 있다. 이메일을 여는 것만으로 바이러스에 감염될 수 있을까? 대부분은 메시지를 여는 것만으로 감염되지 않는다. 바이러스 코드에 감염된 첨부 파일을 다운로드받아 실행해야 감염된다. 이런 이유로 많은 보안 전문가가 이메일 첨부 파일을 실행하기 전에 각별히 주의를 기울여야 한다고 경고한다. 또 이는 많은 이메일 클라이언트와 웹메일 서비스에 바이러스 스캐닝 기능이 기본 탑재된 이유이기도 하다.

아주 교활하게 감염을 시키는 방법도 있다. 감염된 코드가 웹 브라우저의 자바스크립트로 실행이 되면서 컴퓨터가 바이러스에 감염될 수 있다. 또 보안 취약점을 악용해 로컬 설치된 프로그램을 감염시켜 컴퓨터를 감염시킬 수 있다. 일부 이메일 클라이언트의 경우, 이메일 메시지에 임베디드된 자바스크립트 코드와 HTML을 실행시킨다. 따라서 엄격히 말하면 이런 메시지의 경우 이메일을 여는 것만으로 컴퓨터가 바이러스에 감염될 수 있다. 그러나 대부분의 이메일 클라이언트와 웹메일 서비스에 이런 문제를 방지하는 보안 기능이 내장되어 있기 때문에, 사용자가 가장 크게 우려해야 하는 감염 경로는 아니다.




2019.07.18

컴퓨터 바이러스 확산 형태와 감염 알려주는 5가지 징후

Josh Fruhlinger | CSO
컴퓨터 바이러스는 정상 애플리케이션 코드를 매개체로 삼아 확산되고, 스스로 재생시키는 악성 소프트웨어의 일종이다.

다른 악성코드처럼, 공격자가 컴퓨터에 피해를 주거나, 컴퓨터를 제어하기 위해 바이러스를 배포한다. 표적을 감염시키는 방식 때문에 ‘바이러스’라는 이름이 붙여졌다. HIV나 인플루엔자 같은 생물 바이러스들은 스스로 번식을 할 수 없다. 세포를 ‘강탈’ 해야 한다. 이 과정에 감염된 조직을 파괴한다. 이와 유사하게, 컴퓨터 바이러스도 ‘나홀로’ 프로그램이 아니다. 자신을 다른 애플리케이션에 집어넣는 코드 조각이다. 애플리케이션이 실행되면서 바이러스 코드가 실행되고, 이로 인해 작은 피해부터 재앙적인 피해까지 다양한 피해가 초래된다.

이런저런 담론이나 언론 보도에서 사람들이 바이러스와 악성코드를 혼용해 번갈아 사용하는 경우가 많다. 엄격히 말하면, 위 정의에 부합하는 악성코드 종류가 바이러스이다. 다른 두 종류의 악성코드 중 첫 번째는 무해한 애플리케이션으로 가장해 사용자가 실행을 시키도록 유도하는 트로이 목마(Trojans), 두 번째는 다른 애플리케이션에 의지하지 않고 번식과 확산이 가능한 웜(worms)이다. 바이러스는 작동하기 위해 다른 프로그램을 감염시켜야 한다는 차이가 있다.
ⓒGetty Images Bank


컴퓨터 바이러스가 하는 일은?
당신의 컴퓨터에 설치된 애플리케이션 하나가 바이러스에 감염되었다고 가정하자(나중에 잠깐 동안 일어날 수 있는 여러 일에 대해 이야기를 할 예정이다. 지금은 감염만 생각하자). 바이러스는 어떤 식으로 ‘나쁜 일’을 하는 것일까? 블리핑 컴퓨터가 이 과정을 개략적으로 잘 설명하고 있다. 먼저 감염된 애플리케이션이 (통상 사용자의 요청에 따라) 실행된다. 그리고 바이러스 코드가 다른 적법한 코드가 실행되기 전에 CPU 메모리에 로딩된다.

이 시점부터, 바이러스는 호스트 컴퓨터의 애플리케이션을 감염시키고, 가능한 모든 장소에 악성 코드를 주입해 번식을 시작한다 (상주 바이러스는 실행되는 프로그램에 이렇게 하지만, 비상주 바이러스는 실행되지 않은 실행 파일도 감염시킬 수 있음). 부트 섹터 바이러스는 이 단계에서 아주 파괴적인 기법을 사용한다. 컴퓨터 시스템 디스크의 부트 섹터에 코드를 주입, 운영 체제가 완전히 로딩되기 이전부터 실행이 되도록 만든다. 이 경우, 컴퓨터를 ‘클린'하게 작동시키는 것이 불가능해진다.

바이러스가 컴퓨터에 '연결’이 되면, 바이러스를 만든 사람이 의도한 ‘나쁜 일'을 하는 바이러스 코드의 일부인 페이로드가 실행되기 시작한다. 온갖 '못된 짓’을 한다. 예를 들어, 컴퓨터 하드 드라이브를 스캔해 은행 크리덴셜을 탈취하거나, 키스트로크를 로그 기록해 암호를 훔치거나, 해커의 적에게 DDoS 공격을 퍼붓는 좀비 컴퓨터로 만들거나, 사용자의 데이터를 암호화한 후 접근 권한을 돌려주는 대가로 비트코인으로 사이버 몸값을 지불할 것을 요구하기도 한다. 다른 악성코드도 유사한 페이로드를 갖고 있을 수 있다. 랜섬웨어 웜과 DDoS 트로이 목마 등을 예로 들 수 있다.

컴퓨터 바이러스가 확산되는 방식은?
인터넷이 등장하기 전의 바이러스들은 감염된 플로피 디스크를 통해 특정 컴퓨터에서 다른 컴퓨터로 확산되는 경우가 많았다. Amiga 사용자 사이에 크게 확산되었던 SCA 바이러스를 예로 들면, 불법 소프트웨어가 들어 있는 디스크가 매개체였다. 큰 피해를 초래한 바이러스는 아니었지만, Amiga 사용자의 40%가 감염된 적도 있었다.

지금은 인터넷을 통해 바이러스가 확산된다. 바이러스 코드에 감염된 애플리케이션 다른 애플리케이션처럼 컴퓨터들 사이에 전송되면서 바이러스가 확산되는 경우가 많다. 많은 바이러스에 논리 폭탄이라는 것이 들어있다. 이는 바이러스 페이로드가 특정한 시간이나 특정한 조건 아래에서만 실행되도록 만드는 코드의 일종이다. 이로 인해, 사용자나 관리자가 애플리케이션이 감염된 것을 모르고, 이를 전송하거나 설치할 가능성이 있다. 감염된 애플리케이션이 이메일로 전송이 될 수도 있다(고의 또는 실수로. 컴퓨터 메일 소프트웨어를 하이재킹해 사본을 이메일로 발송하는 바이러스도 있음). 또 감염된 코드 저장소나 앱 스토어에서 다운로드 형태로 확산되는 경우도 있다.

알아야 할 한 가지 사실이 있다. 이런 감염 경로 모두에 공통점이 한 가지 있는데, 피해자가 감염된 애플리케이션이나 코드를 실행시켜야 바이러스가 작동한다는 것이다. 호스트 애플리케이션이 실행되어야 바이러스가 실행되고, 번식된다. 그렇지만 악성코드가 가장 많이 확산되는 경로인 이메일과 관련, 많은 사람을 불안하게 만드는 질문 한 가지가 있다. 이메일을 여는 것만으로 바이러스에 감염될 수 있을까? 대부분은 메시지를 여는 것만으로 감염되지 않는다. 바이러스 코드에 감염된 첨부 파일을 다운로드받아 실행해야 감염된다. 이런 이유로 많은 보안 전문가가 이메일 첨부 파일을 실행하기 전에 각별히 주의를 기울여야 한다고 경고한다. 또 이는 많은 이메일 클라이언트와 웹메일 서비스에 바이러스 스캐닝 기능이 기본 탑재된 이유이기도 하다.

아주 교활하게 감염을 시키는 방법도 있다. 감염된 코드가 웹 브라우저의 자바스크립트로 실행이 되면서 컴퓨터가 바이러스에 감염될 수 있다. 또 보안 취약점을 악용해 로컬 설치된 프로그램을 감염시켜 컴퓨터를 감염시킬 수 있다. 일부 이메일 클라이언트의 경우, 이메일 메시지에 임베디드된 자바스크립트 코드와 HTML을 실행시킨다. 따라서 엄격히 말하면 이런 메시지의 경우 이메일을 여는 것만으로 컴퓨터가 바이러스에 감염될 수 있다. 그러나 대부분의 이메일 클라이언트와 웹메일 서비스에 이런 문제를 방지하는 보안 기능이 내장되어 있기 때문에, 사용자가 가장 크게 우려해야 하는 감염 경로는 아니다.


X