악성 코드 정보 보안 개론 6장
1 1 2 2 3 3 4 2 악성 코드의 종류와 그 특성을 알아본다. 바이러스의 동작 원리를 이해한다. 웜의 동작 원리를 이해한다. 3 4 기타 악성 코드의 종류를 알아본다. 2
Section 01 악성 코드의 역사와 분류 악성 코드의 정의 제작자가 의도적으로 사용자에게 피해를 주고자 만든 모든 악의적 목적을 가진 컴퓨터상에서 작동하는 모든 실행 가능한 형태(프로그램 및 매크로, 스크립트 등)
악성 코드의 역사 1972년 컴퓨터 바이러스의 개념이 처음 등장. 소설가인 데이비드 제럴드의 공상과학소설『When Harlie was One』(Nelson Doubleday, 1972)에는 '다른 컴퓨터에 계속 자신을 복제, 감염된 컴퓨터의 운영체제에 영향을 미쳐 점차 시스템을 마비시키는 장치를 한 과학자가 제작해 배포한다'는 내용이 소개. 1984년 컴퓨터 바이러스라는 용어는 1984년에 프레드 코헨(Fred Cohen)에 의하여 다음과 같이 개념이 정립됨. We define a computer ‘virus’ as a program can ‘infect’ other programs by modifying them to include a possibly evolved copy of itself.
악성 코드의 역사 1986년 일반적으로 1986년에 발견된 브레인 바이러스(Brain Virus)를 최초의 바이러스로 칭함. 1987년 예루살렘 대학에서 13일의 금요일 바이러스가 발견됨. 유명한 바이러 스로 예루살렘 바이러스라고도 불리는데, 13일의 금요일에 시스템 내 의 파일을 삭제하게 되어 있는 바이러스 1989년 모리스 웜이 발생하여, 미국의 네트워크를 마비시킨 사건이 일어남. 최초의 웜으로 알려지고 있음. 1991년 1991년 11월에는 그간의 바이러스와 전혀 다른 특징을 가진 바이러스 가 출현. 당시 발견된 DIR II는 MS 도스의 FAT 파일시스템의 연결 구조 를 이용하며, 바이러스 감염시 프로그램의 크기를 증가시키지 않고 기 생할 수 있다는 특징을 가짐.
악성 코드의 역사 1997년 1999년 코드 레드 웜에 의해 8시간 만에 25만대 이상의 컴퓨터가 감염됨. 매크로 바이러스가 출현. 매크로(Macro)란 엑셀이나 워드에서 특정한 기능을 자동화시켜 놓은 일종의 프로그램인데, 이 바이러스는 시스템 프로그램과 같은 고난이도 의 기술만이 웜/바이러스 제작에 이용될 수 있다는 인식을 바꾸어 놓음. 1999년 월 컴퓨터 하드 디스크의 바이오스(BIOS)를 손상시키고 각종 파일을 삭 제하는 CIH 바이러스로 인해 많은 컴퓨터가 피해를 입음. 2001년 코드 레드 웜에 의해 8시간 만에 25만대 이상의 컴퓨터가 감염됨.
악성 코드의 역사 2003년 2003년 1월 25일 인터넷 대란을 일으킨 SQL_Overflow 웜이 등장. 8월에는 1~2분 간격으로 컴퓨터를 강제 재부팅시킴으로써 국내외적으로 큰 피해를 준 블래스터 웜(Blaster Worm)을 시작 웰치아 웜(Welchia Worm), 엄청난 양의 스팸 메일을 집중 발송해 전 세계를 깜짝 놀라게 한 소빅.F 웜(Sobig.F Worm) 등이 발생
악성 코드의 역사 2004년 마이둠 웜(Mydoom Worm)이 1월 26일에 처음 등장해 역대 최고의 전파 속도 로 세계적으로 100만대 이상의 PC를 감염. 이외에도 넷스카이, 베이글, 새서 웜 등의 변종이 지속적으로 등장. 6월에는 자기 복제가 가능하고 네트워크를 통해 전파되는, 최초의 웜 형태를 지 닌 휴대폰 악성 코드인 카비르 웜이 등장 2005년 3월에는 블루투스 외에 멀티미디어 메시징 서비스(MMS)를 이용해, 감염된 휴 대폰에 저장된 전화번호를 통해 악성 코드를 퍼뜨리는 휴대폰 악성 코드인 컴워 리어가 등장하여 전파 방법상에서의 지역적 한계를 넘음. 현재 최근에 알려진 바이러스의 종류도 15만 개 이상. IT 시장 조사 기관인 IDC는 2004 년에 37억 달러 규모였던 안티 바이러스 시장 이 2009년에는 73억 달러에 이를 것으로 전망.
악성 코드의 분류 이름(코드) 설명 바이러스(Virus) 사용자 컴퓨터(네트워크로 공유된 컴퓨터 포함)내에서 사용자 몰래 프로그램이나 실행 가능한 부분을 변형해 자신 또는 자신의 변형을 복사하는 프로그램이다. 가장 큰 특성은 복제와 감염이다. 다른 네트워크의 컴퓨터로 스스로 전파되지는 않는다. 웜(Worm) 윈도우의 취약점 또는 응용 프로그램의 취약점을 이용하거나 이메일이나 공유 폴더를 통해 전파되며, 최근에는 공유 프로그램(P2P)을 이용하여 전파되기도 한다. 바이러스와 달리 스스로 전파되는 특성이 있다. 트로이 목마 (Trojan Horse) 바이러스나 웜처럼 컴퓨터에 직접적인 피해를 주지는 않지만, 악의적인 공격자가 컴퓨터에 침투하여 사용자의 컴퓨터를 조종할 수 있는 프로그램이다. 혹스(Hoax) 인터넷 메신저나 이메일 또는 게시판, 문자 메시지 등에 거짓 정보나 괴담 등을 실어 사용자를 속이 는 가짜 컴퓨터 바이러스다. 2004년 3월에 나타난 혹스에는‘누군가 munrol@hotmail.com이라는 사람의 추가를 요구하면 추가하지 말고 취소하십시오. 바이러스입니다. 지금 MSN 창에 있는 사람들에게도 이 메시지를 빨리 돌려주십시 오”라는 내용이 담겨 있었다. 악성 자바 코드 자바 스크립트나 자바 애플릿을 이용하여 악의적인 기능을 하는 코드를 말한다. 악성 ActiveX ActiveX 컨트롤은 ActiveX를 이용하여 객체지향 프로그래밍을 하기 위한 컴포넌트인데, 이를 이용하 여 악의적인 기능을 수행하게 하는 코드를 악성 ActiveX 코드라 한다.
1세대 : 원시형 바이러스 원시형 바이러스 부트 바이러스 컴퓨터 바이러스가 등장하기 시작할 때쯤 퍼지던 가장 원시적인 형태의 바이러스로, 단순히 자기 복제 기능과 데이터 파괴 기능만을 가지고 있 음. 부트 바이러스 플로피 디스크나 하드 디스크의 부트 섹터에 감염되는 바이러스로, 부 팅할 때 자동으로 동작.
1세대 : 원시형 바이러스 파일 바이러스 파일 바이러스는 파일을 직접 감염시키는 바이러스로서 부트 바이러스 와는 달리 하드 디스크가 PC에서 일반화되면서 그 대안으로 나온 형태 바이러스에 감염된 실행 파일이 실행될 때 바이러스 코드를 실행.
2세대 : 암호형 바이러스 암호형 바이러스 바이러스 제작자들은 백신 진단을 우회하기 위해 자체적으로 코드를 암 호화하는 방법을 사용하여, 백신 프로그램이 진단하기 힘들게 만들기 시작함. 바이러스가 동작할 때 메모리에 올라오는 과정에서 암호화가 풀리기 때문에 백신 제작자들은 이를 이용하여 암호화하는 방법을 거꾸로 분석하여 감염 파일과 바이러스를 치료함.
3세대 : 은폐형 바이러스 은폐형 바이러스 확산되기 전에 바이러스가 활동하기 시작하면 다른 시스템 으로 전파되기 힘들기 때문에 일정 기간 동안 잠복기를 가 지도록 바이러스를 작성함. 은폐형 바이러스는 직관적인 방법(백신 프로그램 또는 일반 적인 정보 확인 등)으로 바이러스 감염 여부를 진단하지 못 하게 됨.
4세대 : 다형성 바이러스 다형성 바이러스 백신 프로그램이 특정 식별자를 이용하여 바이러스를 진단하는 기능을 우회하기 위해 만들어진 바이러스. 코드 조합을 다양하게 할 수 있는 조합 프로그램을 암호형 바이러스에 덧붙여 감염되어, 실행될 때마다 바이러스 코드 자체를 변경시켜 식별자로 구분하기 어렵게 함.
5세대 : 매크로 바이러스 매크로 바이러스 기존의 바이러스는 실행할 수 있는 파일(COM이나 EXE)에 감염된 반면, 매크로 바이러스는 엑셀 또는 워드와 같은 문서 파일의 매크로 기능을 이용하기 때문에 워드나 엑셀 파일을 열 때 감염됨.
차세대 바이러스 차세대 바이러스 매크로 바이러스에서 나타난 스크립트 형태의 바이러스가 더욱 활성화되고 있으며, 네트워크와 메일을 이용하여 전파 되는 방식이 대부분. 바이러스는 단순히 데이터를 파괴하고 다른 파일을 감염시 키는 형태에서 벗어나 사용자 정보를 빼내가거나 시스템을 장악하기 위한 백도어 기능을 가진 웜의 형태로 진화하고 있음.
Section 03 웜 웜의 등장 1999년 다른 사람의 이메일 주소를 수집하고 스스로 전달되는 형태의 인터넷 웜이 출현하면서 일반인에게 웜이라는 용어가 알려지기 시작. 웜 이메일에 첨부 파일 형태로 첨부되어 확산되거나, 운영체제나 프로그램 의 보안 취약점을 이용하여 스스로 침투하는 것이 일반적 현재는 mIRC 채팅 프로그램, P2P 파일 공유 프로그램, 이메일 관련 스 크립트 기능, 네트워크 공유 기능 등의 허점을 이용하여 확산하고 증식
MASS Mailer형 웜 소개 증상 최근 발생한 웜 중 약 40%가 MASS Mailer 형에 해당. 제목이 없거나 특정 제목으로 전송되는 메일을 읽었을 때 감염. 치료하 지 않으면 시스템에 계속 기생하면서 시스템 내부에서 메일 주소를 수 집해 계속 메일을 보냄. 증상 메일로 전파되며, 감염된 시스템이 많으면 SMTP 서버(TCP 25번 포트) 의 네트워크 트래픽이 증가함.
시스템 공격형 웜 소개 증상 전파할 때 과다한 TCP/135,445 트래 픽이 발생. 운영체제 고유의 취약점을 이용해 내부 정 보를 파괴하거나, 컴퓨터를 사용할 수 없는 상태로 만들거나, 외부의 공격자가 시스템 에 접속할 수 있도록 백도어를 설치. 증상 전파할 때 과다한 TCP/135,445 트래 픽이 발생. 공격 성공 후 UDP/5599 등의 특정 포트를 열어 외부 시스템과 통신. 시스템 파일 삭제, 정보 유출(게임 CD 시리얼 키 등)이 가능.
네트워크 공격형 소개 증상 Syn Flooding, Smurf와 같은 DoS 공격을 수행 네트워크가 마비되거나 급속도로 느려짐. 네트워크 장비가 비정상적으로 동작.
Section 04 기타 악성 코드- 백도어와 트로이 목마 사용자가 의도하지 않은 코드를 정상적인 프로그램에 삽입한 프로그램 백도어 운영체제나 프로그램 등에 접근할 수 있도록 의도적으로 만든 일종의 통로. Administrative hook이나 트랩 도어(Trap Door)라고도 부름.
인터넷 악성 코드 증상 인터넷 익스플로러의 시작 페이지가 계속 다른 곳으로 변경됨. 인터넷 속도가 느려지거나 끊김. 시스템의 비정상적인 작동으로 운영체제가 사용 불능의 상태가 됨. 악성 코드를 예방법 해당 프로그램이 인터넷에서 자동으로 설치되는 것을 막고 사용자가 확인할 수 있도록 익스플로러의 [도구]-[보안]-[사용자 지정수준] 메뉴를 클릭→ [보안 설정] 창에서 각 사항을 ‘확인’으로 설정
스파이웨어 스파이웨어 자신이 설치된 시스템의 정보를 원격지의 특정한 서버에 주기적으로 보 내는 프로그램. 사용자가 주로 방문하는 사이트, 검색어 등 취향을 파악하기 위한 것도 있었으나, 패스워드 등과 같은 특정 정보를 원격지에 보냄.