악성코드
악성코드 정의 멀웨어 (Malware) 는 악성 소프트웨어 (Maiicious Software) 의 줄임말로, 악의적인 목적을 가지고 제 작되어 컴퓨터에 악영향을 끼치는 모든 소프트웨어 를 칭함 악성코드의 종류 : 컴퓨터 바이러스 (Virus), 웜 (Worm), 트로이목마 (Trojan Hores), 스파이웨어 (Spyware), 루트킷 (Rootkit)
악성코드에 의한 증상
악성코드 역사 폰 노이만 (Von Neumann) 은 1949 년 자신의 논문인 “ 이론과 복잡한 조직"을 통해 자기복제 코드의 이 론적인 존재 가능성을 언급 1950 년대 후반 영국 수학자 펜로즈 (Penrose) 는 Self-Reproducing Machines 라는 리포트를 발표 1970 년대 초반 알파넷에서 TENEX 시스템을 겨냥 한 최초의 크리퍼 웜 (Creeper Worm) 와 리퍼 (Reaper) 등장
악성코드 역사 Elk Cloner
누적 악성코드 수 추정치
악성코드의 주요 사건
악성코드 종류 바이러스 (Virus) 웜 (Wrom) 트로이목마 (Trojan Hores) 백도어 (BackDoor) 스파이웨어 / 애드웨어 (Spyware/Adware) 악성 봇 (Malicious Bot) 루트킷 (RootKit) 크라임웨어 (Crimeware)
바이러스 (Virus) 컴퓨터 시스템에 침투하여 숙주 컴퓨터의 프로 그램이나 파일을 변형 자기 복제를 통하여 다른 대상을 감염 전자메일, 매크로, 인터넷 웹페이지, USB 로 전파
웜 (Worm) 바이러스와 유사하지만 웜은 파일과는 독립적 으로 실행
트로이목마 (Trojan Hores) 트로이 전쟁에서 사용된 목마처럼 겉보기엔 유용한 프로그램처럼 보이지만 실제로는 해킹 기능을 가진 악성 프로그램
백도어 (BackDoor) 원래 시스템의 유지 보수나 유사시의 문제 해결을 위해 시스템 관리자가 보안 설정을 우회하여 시스 템에 접근할 수 있도록 만든 도구 최근에는 악의적인 목적을 갖는 공격자들이 시스템 에 재침입이 용이하도록 이용하는 도구를 의미
스파이웨어 / 애드웨어 원래는 미국의 광고회사인 라디에이트사가 광고를 보고 있는지 알아보기 위해 개발한 도구 최근에는 목적이 변질되어 사용자의 개인정보 유 출, 특정 사이트 강제 접속, 홍보 배너 출력, 심한 경 우 컴퓨터의 입출력 내용까지도 수집
악성 봇 (Malicious Bot) 감염된 컴퓨터에서 일반 프로세스처럼 존재 스스로 움직이지 않고 공격자가 원격으로 제어할 수 있는 악성코드 주로 DDoS 좀비 PC 로 사용
루트킷 (RootKit) 루트킷은 전통적인 UNIX 시스템에서 관리자 계정 을 뜻하는 Root 와 소프트웨어 컴포넌트를 뜻하는 Kit 의 합성어 컴퓨터의 관리자 권한을 유지하고 자신의 존재를 운영체제 또는 다른 프로그램으로부터 숨김 운영체제 구동 전에 기능이 활성화 안티 바이러스 및 탐지 도구를 통해 자신을 검사하는 것을 제지
크라임웨어 (Crimeware) 사용자의 금융정보를 유출하여 현금 계좌 인출 또 는 계좌 이체 등을 수행하거나 매신저 등을 이용한 피싱 행위를 위한 악성코드 금전적 이익을 위해 동작하는 점에서 기존 악성코 드와 다름
악성코드 피해 동향
악성코드 관련 동향
~
악성코드 관련 동향 ~
사회공학적 기법을 이용한 공격 2009 년 마이클 잭슨 죽음 관련, 2010 년 폴란드 대 통령 탑승 비행기 추락사고 등 최근 이슈 및 가십을 이용한 공격이 증가 단시간내 많은 사용자들을 감염시킬 수 있음 최근에는 SNS(Social Network Service) 의 이용이 증가하면서 페이스북, 트위터 등의 서비스를 통해 서 사회공학적 기법을 사용하는 추세
사용자 유도 방식 허위 안티바이러스 프로그램 설치 후 허위 경고창 을 출력하여 결제를 유도하는 방식 시스템 진단 유틸리티를 가장하여 허위 경고창을 출력한 후 결제를 유도하는 방식
웹사이트를 통한 악성코드 삽입 정상적인 서비스를 제공하는 웹사이트 해킹 후 악 성코드 유포사이트로 변질 변질된 사이트를 통하여 사용자에게 악성코드를 유 포할 수 있어 단시간에 수많은 감염 PC 를 양산
DDoS 공격
대량의 악성 봇 (Bot) 감염 악성코드들은 때론 PC 를 감염시켜 악성 봇을 만 들어 제 2 의 공격에 악용 악성 봇이 된 PC 들은 좀비 PC 라고 불림 좀비 PC 는 시스템 정보를 외부로 유출하거나 DDoS 공격에 악용
제로데이 (Zero-Day) 공격 프로그램 취약점이 발견된 이 후, 보안 패치가 이루 어지기 이전에 해당 취약점을 이용하여 공격을 수 행하는 악성코드 ActiveX 와 익스플로러가 주요 타깃이었지만, 최근 제로데이는 마이크로소프트사의 오피스 제품군과 플래시 플레이어 등으로 옮겨져 감염 경로가 더욱 다양해짐
표적 공격 (Targeted Attack) 불특정 다수를 대상으로 하는 일반 악성코드와 다 르게 표적 공격은 특정 기관의 정보 탈취 및 제어를 목적으로 하기 때문에 불필요한 시스템 파괴나 이 상행위를 일으키지 않음 표적 공격은 높은 수준의 지식을 가지고 제작될 가 능성이 높으며 공개되지 않은 공격 기술을 사용할 경우 보통 장기간의 시간이 소요
모바일 악성코드 전파 방법 및 행위에서 기존 PC 기반 악성코드와 차이점이 있음 블루투스 (Bluetooth) 나 멀티미디어 메시지 (MMS) 등을 통하여 감염되고 감염된 모바일 디바이스에서 는 시스템 파괴, 가용성 저하, 금전적 피해 또는 개 인 정보 유출 등이 일어날 수 있음
Advanced Persistent Threat(APT) 악성코드를 사용해서 정보를 훔치는 그룹을 칭함 APT 공격을 수행하기 위해서는 높은 수준의 공격 기술과 지속적인 공격행위를 진행할 수 있는 행동 력이 필요 정치적 목적을 지니고 정부 기관이나 대형 기업을 대상으로 기밀문서 유출, 기간 산업 방해 등을 수행
컨픽커 (Conficker) 2008 년에 최초로 알려졌으며 다양한 형태의 변종 악성코드가 존재하는 악성코드 감염 플랫폼에서 특정 웹사이트를 접속하도록 만드 는 악성코드 컨픽커는 감염 플랫폼이 자신을 치료하지 못하도록 만들기 위해 DNS 정보중 안티바이러스 업체 또는 마이크로소프트와 같은 특정 문자열이 들어간 홈페 이지 접속을 차단하여 치료를 방해
웨일덱 (Waledac) 전자우편을 통해 전파되며, 감염된 시스템에서 스 팸메일을 대량으로 발송하여 네트워크 트래픽을 증 가시키는 악성코드 발렌타인데이라는 관련 문구를 삽입하여 사용자의 클릭을 유도 후 설치되는 특성이 있어 ‘ 발렌타인 데이 웜'이라고 불림
IRC 봇 (IRC Bot) 윈도우 취약점, 네트워크 공유 폴더, USB 등을 통 하여 전파되며 시스템 날짜를 변경하는 악성코 드 시스템 날짜를 변경함으로써 정상적인 서비스를 제 공받을 수 없게 되며, 특정 IRC 서버에 접속 하여 백 도어를 설치하기도 함
네이트온 네이트온 메신저를 통해 전파되는 악성코드
조커 (Joker) 엑셀 파일을 실행할 때마다, 다른 엑셀 문서를 감염 시키는 악성코드로, 특정 시간에 파일을 삭제한 것 처럼 속이는 메시지를 송출
클램피 (Clampi) 주로 SNS 나 메신저를 통해 전파되는 악성코드 영어권 사용 국가의 은행을 타깃으로 하는 악성 코드
델프 (Delf) 어도비 (Adobe) 제품의 취약점을 이용한 악성코드 감염된 PC 는 검은 화면만 출력 및 부팅 장애 발생
지봇 (Zbot) 스팸메일 또는 해킹사이트를 통하여 전파되는 악성 코드로 어도비 (Adobe) 사 제품의 취약점을 통해 허 위 PDF 파일을 제작하여 PC 를 감염
허위 보안툴 허위 안티바이러스 프로그램으로 위장한 악성 코 드로 시스템의 주요 파일을 패치한뒤 사용자 에게 요금 결제를 유도하는 악성코드
AntiVirus XP 2010 안티바이러스 프로그램으로 위장한 악성코드로 실 행 시 윈도우 업데이트를 가장한 허위 업데이트를 실시하며 지속적인 트레이창을 팝업하여 치명적 인 악성코드에 감염된 것처럼 사용자를 속여 결제 를 유도
스턱스넷 (Stuxnet) 특정 프로그램을 타깃으로 하는 악성코드로서 독 일 지맨스의 산업 자동화 시스템인 WinCC SCADA 시스템에서 작동하는 악성코드 최근에는 특정 프로그램을 겨냥한 악성코드가 발 견되기도 함
팔레보 (Palevo) 좀비 PC 를 만들어내는 대표적인 웜 버터플라이 (ButterFly) 라는 악성코드 생성 툴에 의 해 자동으로 생성
난독화
패킹 (Packing 실행 파일 압축 ) 패킹이란 PE(Portable executable) 형식으로 배포되 는 프로그램을 리버싱 및 용량을 줄이기 위해 사용 하는 방식을 말함 악성코드 개발자는 자신이 개발한 악성코드가 쉽 게 탐지되는 것을 방지하기 위해 악성코드를 패킹 하여 유포
안티 - 디버거 (Anti-Debugger) 악성코드를 분석하는 것을 방해하기 위해서 디버 깅이 수행되지 못하도록 함 디버거가 실행될 때 이를 탐지하여 다른 행위를 하 거나 디버거의 실행을 종료시키는 등 다양한 방식 을 사용
안티 - 가상화 (Anti-VM) 악성코드 분석 기법중 하나인 가상환경에서의 악 성코드 분석 기술을 우회하는 방식 안티 - 가상화는 가상머신 환경의 특징을 탐색하여 악성코드가 수행될 플랫폼이 가상환경인지 판단 프로세스, 파일 시스템, 레지스트리 요소 탐지와 메 모리 요소 탐지, 가상 하드웨어 주변장치로 탐지하 는 방법
시한폭탄 방식 클라이언트 허니팟과 웹크롤러의 단점을 이용 자동화된 악성코드 탐지 기술을 회피하기 위하여 웹사이트 방문시 특정 시간 이후에 악성코드가 실 행되게 하며 자동화된 악성코드 수집 프로그램을 우회할 수 있음
악성코드 대량 삽입 기술 웹사이트를 사용하여 악성코드를 대량으로 유포 감염되는 웹사이트는 주로 SQL 인젝션을 사 용하여 감염
악성코드 모듈화
악성코드 은닉화
악성코드 대응 전략
Thank you