본문 바로가기

기타/공부하기

[정보보안기사] SECTION 15 클라이언트 보안

SECTION 15 클라이언트 보안

1. 악성 소프트웨어(악성 코드)

기본개념

개발자가 의도적으로 사용자가 원치 않는 기능을 컴퓨터 프로그램에 포함시키거나, 프로그램 자체의 오류로 인해 시스템 충돌, 프로그램 중단, 개인정보 수집, 네트워크 포트 개방 등의 결과가 발생

의도적 또는 비의도적으로 기밀성, 가용성, 무결성 등의 보안 속성을 침해하는 소프트웨어

구분 컴퓨터 바이러스 트로이 목마
자기복제 있음 없음 매우강함
형태 파일이나 부트섹터 등 감염대상 필요 유틸리티로 위장하거나 유틸리티 안에 코드 형태로 삽입 독자적으로 존재
전파경로 사용자가 감염된 파일을 옮김 사용자가 내려 받음 네트워크를 통해 스스로 전파
주요 증상
  • 컴퓨터 시스템 및 파일을 손상시켜 작동에 피해를 줌
  • 자료삭제 및 정보탈취 목적
  • PC 성능저하
  • 좀비 PC

  • 막대한 시스템 과부하로 컴퓨터나 네트워크 성능 저하

악성 소프트웨어의 분류 방법

독립형과 기생형

-독립형 : 호스트 프로그램이 필요 없이 자체적으로 구동될 수 있는 프로그램(웜, 좀비 프로그램)

-기생형 : 호스트 프로그램을 필요로 하는 형태(바이러스, 백도어)

자기 복제 여부

-바이러스성 악성코드 : 자기 복제를 함 - 웜과 바이러스

-비-바이러스성 악성코드 : 복제 안함 – 트로이목마, 백도어

악성코드를 운반하는 Payload의 네가지 분류

시스템 파괴(오염) : 논리 폭탄, Stuxnet, 랜섬웨어

공격에이전트 : 좀비, 봇

정보유출 : 키로거, 피싱, 스파이웨어

잡입(스텔스) : 백도어, 루트킷

바이러스

기본개념

-정상적인 프로그램이나 데이터를 파괴할 목적으로 시스템부트, 메모리, 파일 영역 등에 기생하다가 다른 프로그램을 변형시키도록 하여 “감염” 시키는 프로그램

-변형 : 원래 프로그램에 루틴을 주입해서 바이러스 프로그램이 되게 하는 것

바이러스 감염 증상

-파일 사이즈 증가

-갱신 타임스탬프의 변경

-저장장치의 잔여공간이 단시간 내 급격히 변경

-디스크 접근 횟수가 급격히 증가

바이러스 감염 경로

-불법복제를 통한 감염

-컴퓨터 통신에 의한 감염

-회사, 학원, 학교 등 공공장소에서 컴퓨터 공유에 의한 감염

-상업용 SW가 감염되어 전파

1

세대별 바이러스 분류

1세대 원시형 바이러스

-구조가 단순하고 분석이 쉬움

-코드의 변형이나 변화가 없이 고정된 크기를 가짐

-주로 기억장소에 상주해서 부트 영역이나 파일을 감염

2세대 암호화(난독화) 바이러스

-백신 프로그램이 진단할 수 없도록 바이러스 프로그램의 일부/대부분을 암호화 하여 저장

-시작점 부분에 위치하는 암호해독 데이터는 항상 일정

3세대 은폐형 바이러스

-기억장소에 존재하면서, 감염된 파일의 길이가 증가하지 않은 것처럼 은폐함

-백신이 감염된 부분을 읽으려고 할 때, 감염되지 전의 내용을 보여줘서 바이러스가 없는 것처럼 속임

4세대 갑옷형 바이러스

-여러 단계의 암호화와 다양한 기법을 동원하여 바이러스 분석을 어렵게 함

5세대 매크로 바이러스

-MS사의 오피스 제품 군에 있는 매크로 기능을 이용한 바이러스

-현재 등장하고 있는 바이러스 중에서 가장 높은 비중 차지

-매크로 바이러스 특징

메크로 바이러스는 플랫폼과 무관하게 사용된다.

대부분의 바이러스는 문서를 감염시키고 코드의 실행 부분은 감염시키지 않는다.

쉽게 퍼진다.(가장 보편적인 방법 : 전자메일)

실행파일(.exe .com)을 다룰 때 보다 사용자가 주의를 덜하여 피해가 크다

MS워드나 엑셀 등에 붙어서 그 파일이 열릴 때 실행됨

-매크로 바이러스와 유사한 형태

Adode 사의 PDF문서 : 자바 스크립트 같은 다양한 형태의 스크립트를 포함할 수 있음

바이러스 방지책

예방

-신뢰성 있는 업체에서 구입한 상업용 소프트웨어를 사용

-안전하다고 생각될 때에만 첨부파일 확인

-바이러스 스캐너를 이용하여 정기적으로 검사하고, 업데이트

-Windows Script Host, 액티브 X, VBScript, 자바스크립트 비활성화

-업무에 방해되지 않는 수준에서 악성코드에 대한 보안 정책 수립/적용

안티 바이러스 방법

-탐지 : 바이러스가 있는 판단하고 위치를 파악

-식별 : 프로그램을 감염시킨 특정 바이러스를 식별

-제어 : 바이러스를 모든 감염된 시스템에서 제거

안티 바이러스 필터링 방법

-시그니처 스캐닝(Signature Scanning) 방식 : 바이러스가 가진 유일한 Signature를 찾아내는 방식

-행위기반 탐지 방법(Behavioral virus scanning) : 바이러스가 수행 중에 어떤 행동을 보이는지 추적하는 방법

기본개념

-자체 실행코드를 이용해 실행됨

-시스템에서 다른 시스템으로 퍼지기 위해서 네트워크 연결을 이용

-컴퓨터에 도착하면 자신을 복제하고, 다른 컴퓨터에게 확산함.

-트로이목마와 차이 : 다른 시스템에 직접적인 영향을 미치지 않음

-바이러스와 차이 : 다른 프로그램에 기생하지 않음

웜 확산 3단계

-서서히 시작하는 단계

-빠른 확산 단계 : 지수적으로 증가

처음 감염된 PC 2개는 2개를 감염시고, 다시 감염된 4개가 8개가.. 8개가 16개가 됨

-종료단계 : 감염된 호스트를 공격하는데 시간을 소모

웜의 분류

MASS Mailer 형

-자기 자신을 포함하는 대량 메일 발송을 통해 확산되는 웜

-사용자가 이 메일을 읽었을 때 감염

-시스템에서 기생하면서, 시스템 내부에서 메일 주소를 수집해 계속 메일을 발송함

-주요 증상

감염된 시스템이 많으면 SMTP서버의 네트워크 트래픽이 증가함

넷스카이는 윈도우 시스템 디렉터리 밑에 CSRSS.EXE를 생성

시스템 공격형 웜

-운영체제 고유의 취약점을 이용해 내부 정보를 파괴하거나, 컴퓨터를 사용할 수 없는 상태로 만들거나, 백도어를 설치하는 웜

-주요 증상

windows, windows/system32, winnt, winnt/system32 폴더에 SVCHOST.EXE 등의 파일 설치

시스템 파일 삭제, 정보유출

네트워크 공격형 웜

-특정 네트워크나 시스템에 SYN Flooding, Smurf와 같은 DoS 공격을 수행

-주요증상

네트워크가 마비되거나 급속도로 느려짐

네트워크 장비가 비정상적으로 동작함

웜 대응책

기본적으로 바이러스 대응책과 유사하고, 네트워크 활동과 사용을 모니터링하여 방어 가능

네트워크 기반 웜 보안

-진입 모니터

엔터프라이즈 네트워크와 인터넷 사이의 경계에서 위치

경계 라우터, 외부 침입차단시스템, 수동 모니터의 진입 필더링 소프트웨어 등

-진출 모니터

나가는 트래픽에서 스캐닝의 흔적이나 기타 의심스러운 행동을 모니터링

트로이목마

개요

-자신의 실체는 드러내지 않으면서, 마치 다른 프로그램의 한 유형인 것처럼 가장하여 활동하는 프로그램

-자기 복제나 다른 파일 감염/변형 시키지 않음

-트로이목마가 실행되는 순간 공격자가 시스템을 통제할 수 있는 권한을 부여받음

-다른 악성코드와 함께 전파되거나, 사용자들이 다운로드 하도록 유도함

특징, 일반적인 기능

-시스템이나 데이터 파괴

-시스템 원격 조정

-패스워드나 키보드 입력 가로채기

모바일 폰 Trojan

-모바일 폰에서 동작하는 트로이 목마

스파이웨어(Spyware)

대상 컴퓨터에 은밀하기 설치되는 악성코드로 트로이목마와 비슷한 종류

민감정보를 수집하여 주기적으로 원격지의 특정 서버로 보내는 프로그램

-탈취된 정보를 이용하여 신원 도용, 스패밍, 사기 등과 같은 악의적인 활동에 사용

기타 악성 소프트웨어

기생바이러스 : 프로그램에 기생해서 자신의 복제를 다른 프로그램으로 확산

논리폭탄 : 조건이 충족(논리 = 참)되면 트리거가 작동

백도어(트랩도어) : 허가받지 않은 접근을 허용하는 프로그램의 변형

모바일 코드 : 스크립트, 매크로나 다른 이동성 명령어 같은 소프트웨어로, 서로 성격이 많이 다른 플랫폼으로 옮겨서 실행 될 수 있음

익스플로잇(Explolit) : 타이밍 문제나 반복적인 작업을 피하기 위해 작성한 자동화된 스크립트이며 하나이상의 취약점을 노리는 코드

다운로더 : 공격받은 컴퓨터에 다른 아이템을 설치하는 프로그램

Auto-rooter : 새로운 시스템에 원격으로 침입할 때 사용하는 툴

Kit : 바이러스를 자동으로 생성하는 도구 모음

스패머 프로그램 : 원하지 않는 대량의 전자우편물을 보내는 방식

플러더(Flooder) : 네트워크에 대량의 자료를 보내서 DoS 공격을 사용하는 코드

키로거(Key Logger) : 사용자가 입력하는 키 값을 갈취

루트킷(Rootkit) : 컴퓨터 시스템에 침입 후 루트 수준의 접근 허락을 얻기 위해 사용하는 도구모음

공격 킷 : 다양한 악성코드를 자동으로 만들어 주는 툴 모음

좀비 : 감염된 컴퓨터에서 다른 컴퓨터로 공격 하는 프로그램

스파이웨어 : 정보 수집후 다른 곳으로 전송

애드웨어 : 소프트웨어에 내장된 광고, 팝업 광고가 뜨거나 브라우저가 계속 광고 사이트로 연결

크라임웨어 : 온라인을 통해 불법적인 행동을 하기위 해 만들어진 프로그램

브라우저 하이재커(Browser Hijacker) : 홈페이지와, 검색페이지, 툴바를 통제하고 조작하는 프로그램

다이얼로 : 모뎀이 특정 번호로 연결되도록 하여 전화를 걸 때마다 공격자가 수익을 얻는 프로그램

조크 : 사용자에게 심리적인 위협이나 불안을 조장하는 프로그램

Hoax : 남을 속이거나 장난을 목적으로 퍼트리는 가짜 바이러스

2. 인터넷 활용 보안

웹 브라우저 보안

브라우징 기록 삭제하기

-임시 인터넷 파일 : 사용자가 최근에 방문했던 페이지의 텍스트와 이미지, 미디어, 기타 내용들로 구성

-쿠키 : 웹 사이트들이 로컬에 저장하는 작은 텍스트 파일

-기록 : 사용자가 방문한 사이트 주소 목록

-양식 데이터 : 자동완성 기능

-암호

-InPrivate 필터링 데이터 : 사이트를 방문할 때 타 공급사에서 데이터를 언제 공급하는지 감지할 수 있게함.

주소표시줄 기록 삭제하기

-자동완성 기능 중 하나로 사용자가 주소표시줄에 입력 한 웹 주소를 기록

-다른 사람이 PC에 접근하면 개인정보를 보호하지 못함

브라우징 보안

영역 추가와 제거

-인터넷 : 다른 세가지 영역에 포함되지 않은 웹 사이트를 위한 영역

-로컬 인트라넷 : 사용자의 컴퓨터와 같은 네트워크 상에 있는 웹 사이트를 위한 영역

-신뢰할 수 있는 사이트 : 사용자가 신뢰하는 페이지로 설정한 영역

-제한된 사이트 : 사용자가 신뢰할 수 없거나 보안 페이지로 설정할 수 없는 영역

쿠기

쿠기 개념

-사용자가 인터넷 웹 사이트에 방문할 때 생기는 4KB이하의 파일

-사용자와 웹 사이트를 연결해 주는 정보가 담여 있음

-클라이언트가 해당 사이트에 접속하려 할 때, 쿠키의 내용을 이용하여 클라이언트의 신분을 알 수 있게 함

쿠키를 이용한 통신

-1) 사용자가 웹 사이트에 방문하면 사용자의 브라우저를 확인하는 ID 번호를 넣어서 쿠키를 생성함

-2) 사용자가 웹 서버에 접속 할 때, 쿠키를 웹 서버로 전송

ID와 비밀번호를 저장하여 사용한 경우, 그 정보가 쿠키에 남아 있기 때문에 자동으로 로그인 할 수 있음

쿠키의 일반적 용도

-사이트 개인화 : 사용자의 ID/PW와 사용자의 개인 성향까지 파악 가능

-장바구니 시스템 : 사용자가 물건을 고르면 그 내역이 쿠기에 저장됨 (현재는 바뀜)

-웹 사이트 이용방식 추적 : 사용자의 웹사이트 사용 방식을 파악하게 함

-타깃 마케팅 : 광고 대행업체에서 제3의 업체의 쿠키를 사용자 컴퓨터에 저장하고 사용자의 이용 정보를 수집

쿠키의 구조

개념

-4개의 속성과 하나의 데이터

-Set-Cookie : name=value; expires=[Date]; domain=[Domain]; path=[Path]; [Secure]

유효기간

-기본 : 브라우저가 종료될 때 까지

-유효기간을 지정하면, 브라우저가 종료되어도 지정한 기간동안 쿠키 데이터를 읽고 쓸 수 있음

-유효기간이 지나면 쿠키 데이터는 소멸.(파일이 지워지지 않아도 브라우저에서 읽을 수 없음)

패스

-하나의 사이트의 특정 Path이하에서 쿠키 데이터를 공유할 수 있음

A.com/bbs/1. html에서 쿠키를 생성하면, A.com/bbs/1. html 외에 쿠키를 읽을 수 없음

그러나, Path에 /bbs 로 설정하면 A.com/bbs/2. html, A.com/bbs/3.html 등 A.com/bbs 의 모든 페이지가 쿠키를 읽을 수 있음

도메인

-패스 속성을 확장한 것

-도메인 단위에서 쿠키 데이터를 공유함

보안

-쿠키 데이터를 전송하는 방법.

쿠키에 관한 오해

바이러스 전파 : 실행되지 않음

사용자 컴퓨터 피해 입히기

다른 웹사이트에서 읽기 : 쿠키 안에 저장된 도메인 이름을 갖고 있는 사이트에서만 유효함

쿠키의 유형

임시 쿠키(세션 쿠키) : 익스플로러가 실행되고 있는 시간 동안만 유효. 닫으면 컴퓨터에서 제거됨

영구 쿠기(저장된 쿠키) : 인터넷 익스플로러 세션을 통해 하드디스크 상에 남아 있는 쿠기. 보존기간은 설정에 따라 달라지며 몇 초에서 몇 년 까지도 컴퓨터에 남아 있을 수 있음

쿠키 보안 취약점

XSS(Cross Site Scripting) 공격

-자바스크립트가 사용자의 컴퓨터에서 실행된다는 점을 이용한 공격

-자바스크립트로 “document.cookie”라는 명령어를 이용하여 쿠키 값을 활용하는데, 공격자들이 이 쿠키 값을 유출하기 위한 목적으로 사용하기도 한다.

스니핑(Sniffing) 공격을 이용

-쿠키 값이 네트워크를 통해 전송되고 이 때, 암호화 되어 있지 않으면 스니핑 공격을 통해 쿠키 값을 탈취 할 수 있음

공용 PC에서 쿠키값 유출

-쿠키는 사용자의 하드에 저장되며, 간단하게 접근이 가능한 점을 이용한 방법

-공용 PC를 사용하면, 자신이 사용한 인터넷 기록이 그대로 남게 되고 그 뒤에 사용하는 사용자는 그 기록을 확인 할 수 있음