악성코드(Malware)란 사용자 컴퓨터에 악의적인 영향을 끼칠 수 있는 모든 소프트웨어를 말합니다.
[악성코드의 유형]
1. 컴퓨터 바이러스 (Computer virus)
정상적인 파일이나 시스템 영역에 침입하여 그곳에 자신의 코드를 삽입하거나 설치하는 프로그램을 칭하는 이름으로 감염 방법이나 동작 원리에 따라 메모리 상주형 바이러스, 파일 바이러스, 덮어쓰기, 은폐형 등 여러 가지로 세분화하여 나뉩니다.
2. 웜 (Worm)
컴퓨터 바이러스처럼 다른 파일을 감염시키는 것이 아닌 자기 자신을 레지스트리에 등록하거나 복사본을 생성하여 전파하는 등의 독자적으로 실행되는 악성코드를 말합니다.
웜은 이메일에 첨부되어 확산되거나, P2P 파일 공유, 프로그램 보안 취약점, 네트워크 공유 기능 등을 이용하여 스스로 증식하여 빠르게 확산한다는 특징을 가지고 있습니다.
3. 트로이 목마 (Trojan horse)
정상적인 소프트웨어의 형태를 띠지만 악의적인 행위를 포함하고 있는 악성코드를 말합니다.
다른 파일을 감염하는 형태가 아닌 스스로 피해를 유발하는 악성코드를 말하며, 주로 웹페이지, 이메일, 파일 공유 사이트 등을 통해서 일반 프로그램으로 가장하여 사용자가 클릭하기를 기다리는 형태의 전파 방법을 사용합니다.
4. 스파이웨어 (Spyware)
사용자의 PC에서 사전 동의 없이 설치되어 컴퓨터의 정보와 개인 정보를 수집하는 악성코드의 종류입니다. 신용카드와 같은 금융정보 및 주민등록번호와 같은 신상정보, 사이트 아이디나 비밀번호 등의 각종 정보를 수집하여 원격지의 특정 서버에 주기적으로 보내는 형태를 말합니다.
5. 백도어 (Backdoor)
감염된 사용자 PC에 특정 포트를 열어두어 정상적인 인증 과정 없이 원격 접속을 통해 직접 조작하는 형태로, 사용자 몰래 특정 파일을 삭제하거나 파일이나 정보를 빼가는 등의 행위를 합니다.
백도어의 종류에는 여러 가지가 있는데,
1) 로컬 백도어의 경우 기존의 일반 계정의 비밀번호를 알아낸 후 새로운 계정을 만들어 사용하는 것을 말하고, 2) 원격 백도어의 경우에는 따로 시스템 계정이 필요하지 않으며, 원격에서 공격자가 지정한 포트를 통해 접속하여 사용합니다. 원격 GUI 백도어의 경우 원격관리 툴과 같은 형태로 직접 마우스를 제어하며 조작하는 형태입니다.
6. 키로거 (Keylogger)
컴퓨터가 입력받는 정보를 기록하는 것으로 그 중에서도 주로 키보드를 통한 메시지를 중간에 가로채서 기록하는 형태를 말합니다. 키로거 탐지를 위한 다양한 키보드 보안 솔루션이 나왔지만 이에 대응하는 새로운 방식의 키로거가 계속해서 나오고 있습니다. 초기 키로거가 단순히 윈도우 메시지를 후킹하는 형태였지만, 루트킷을 이용하여 점차 고도화 된 기술의 키로거로 변화하고 있습니다.
7. 드롭퍼 (Dropper)
일종의 악성 프로그램의 설치 프로그램의 형태로, 실행 시 내부에 포함되어 있던 바이러스나 웜, 또는 트로이 목마 등의 악의적인 프로그램이 설치되는 형태의 악성코드를 말합니다. 백신 프로그램에서 악성코드가 실행된 후 의심스러운 행위를 탐지하여 차단하는 방법 등 대응 방법을 우회하기 위해 프로그램 실행 자체에서는 파일 설치 이외의 아무 행위를 하지 않고, 일정 시간이 지난 후 악성코드를 실행하는 등의 시간차를 이용합니다.
8. 다운로더 (Downloader)
프로그램에서 지정한 웹 사이트에 접속하여 추가 악성코드를 다운로드하여 실행시키는 악성코드입니다. 다운로더는 드롭퍼와 같이 백신 프로그램을 우회하는 목적으로 사용됩니다.
9. 다형성 바이러스 (Polymorphic virus)
다형성 바이러스의 경우, 원본 바이너리에서 같은 기능을 수행하지만 형태는 달라지는 악성코드로, 바이너리 고유 패턴을 변경시켜 휴리스틱 기반의 백신 업체들의 감염여부를 파악하기 어렵게 하여 추적을 피하려는 목적의 악성코드입니다.
10. 애드웨어 (Adware)
상업용 광고 목적으로 만들어진 악성코드로, 웹 브라우저 시작페이지 변경, BHO(Browser Helper Object) 객체를 이용하여 팝업 윈도우 생성 등의 동작을 합니다. 애드웨어와 비슷한 형태로는 하이재커(Hijacker)라는 툴바 설치 등의 브라우저 형태 자체를 변경시키는 악성코드가 있습니다.
11. 랜섬웨어 (Ransomware)
랜섬웨어란 사용자의 문서와 사진 등을 암호화 시켜 일정 시간 안에 일정 금액을 지불하면 암호를 풀어주는 방식으로 사용자에게 금전적인 요구를 하는 악성코드를 말합니다.
12. 루트킷 (Rootkit)
악의적인 행동을 하는 프로그램을 숨기기 위한 목적으로 시작된 악성코드로, 현재는 프로세스나 파일 등의 흔적을 사용자가 볼 수 없도록 하는 프로그램에 대한 이름으로 사용됩니다. 루트킷의 설치 위치는 커널, 가상화 계층, 부트로더, 펌웨어, 라이브러리 등 다양한 위치에서 작동될 수 있습니다.
13. 부트킷 (Bootkit)
PC의 부팅영역인 MBR(Master Boot Record)를 조작하는 프로그램을 칭하는 이름으로, 크게 파괴형 부트킷과 은신형 부트킷으로 나뉩니다.
1) 파괴형 부트킷이란 MBR(Master Boot Record)과 VBR(Volume Boot Record)를 의미 없는 문자열 등으로 덮어씌워 부팅 시 시스템 정보를 읽어오지 못하게 만드는 형태이고,
2) 은신형 부트킷의 경우 부트섹터의 빈 영역에 악성코드를 설치하여 백신이 탐지하지 않게 만드는 형태를 말합니다.
'Security > 정보보호 잡지식' 카테고리의 다른 글
OWASP TOP 10(2017) 간단 정리 (0) | 2021.05.27 |
---|---|
데이터 3법에 대하여 (0) | 2020.03.29 |
Scan(스캔) (0) | 2016.07.17 |
DNS를 이용한 정보 습득 (0) | 2016.07.13 |
Whois 서버 이용해보기 (0) | 2016.07.13 |
WRITTEN BY