기존의 악성 코드 대응 기술
수집된 악성 코드 기반
시그니처 탐지 기반- 방화벽, IPS, 백신 등
-방화벽에 들어오는 악성코드에 특정 시그니처가 있으면 못 들어오게 하는 거 X50 같은 거
-한계점
제로데이에 취약함
새로 발견된 악성코드는 시그니처 솔루션이 개발될 때까지 대응이 불가능
APT 나 스피어 피싱 같은 타깃을 목표로 악성 코드 내부 구조를 변경한 맞춤형 악성 코드로 인해 더 힘들어짐.
탐지 기법
-시그니처 기법: 위에 참고
-휴리스틱 기법: 악성코드가 가진 '특성'을 프로파일링 하는 것
네거티브 휴리스틱 정상적인 프로그램의 프로파일을 적용하여 정상 프로그램의 특징을 갖추지 않은 악성 코드 대응
ex) 행위 기반 탐지 (Behavior analysis)
행위 기반 탐지
- 동작 기반 분석
시스템 행위 자체를 감시( 의심스러운 접근 같은 거)
-무결성 검사방법
데이터 및 실행 파일들과 시스템 자체에 대한 어떠한 변화가 없이 (무결성이 깨지지 않고) 유지되는지 확인하는 방법
한계-> 높은 오탐률, 위협에 대한 확증
그래도 빅데이터와 클라우드로 표본이 증가해서 오탐률 감소중
원동력) 클라우드와 머신러닝 기술
머신 러닝의 역할 - > 자동화를 통해 악성 행위만을 검사
가상 머신을 통해 실제 시스템이 아니라 대미지가 없고 쉽게 재현 가능, 재활용 가능
HoneyPot과 함께 활용 시 시너지
-> 비정상적 접근 탐지를 위해 의도적으로 설치해둔 시스템
허니팟에 가상 머신을 두고 악성코드에 대한 행위 기반 탐지를 시행
사이버 게놈 기술-> 악성 코드를 분석하여 공격 배후, 경로를 파악하여 보안사고를 선재적으로 차단
인간 유전을 분석하듯 악성코드를 분석
샘플 확보 -> 데이터 마이닝 기법을 통하여 고유 행위 패턴을 찾게 됨
ex) API 시퀀스 추출
API 기반 악성코드 인자 추출
바이오 인포매틱스 기존의 악성 코드 대응 기술
수집된 악성 코드 기반
시그니처 탐지 기반- 방화벽, IPS, 백신 등
-방화벽에 들어오는 악성코드에 특정 시그니처가 있으면 못 들어오게 하는 거 X50 같은 거
-한계점
제로데이에 취약함
새로 발견된 악성코드는 시그니처 솔루션이 개발될 때까지 대응이 불가능
APT 나 스피어 피싱 같은 타깃을 목표로 악성 코드 내부 구조를 변경한 맞춤형 악성 코드로 인해 더 힘들어짐.
탐지 기법
-시그니처 기법: 위에 참고
-휴리스틱 기법: 악성코드가 가진 '특성'을 프로파일링 하는 것
네거티브 휴리스틱 정상적인 프로그램의 프로파일을 적용하여 정상 프로그램의 특징을 갖추지 않은 악성 코드 대응
ex) 행위 기반 탐지 (Behavior analysis)
행위 기반 탐지
- 동작 기반 분석
전통적인 악성 코드의 분석 방법
• 정적 분석: w/o running (코드 정보, 엔트로피, 헤더 정보, 파일 크기 등) • 특징: fast, simple •
동적 분석: with running (실행 정보, API call, 네트워크 통신 정보 등) • 특징: slow, compact(critical), robust to obfuscation
시스템 행위 자체를 감시( 의심스러운 접근 같은 거)
-무결성 검사방법
데이터 및 실행 파일들과 시스템 자체에 대한 어떠한 변화가 없이 (무결성이 깨지지 않고) 유지되는지 확인하는 방법
한계-> 높은 오탐률, 위협에 대한 확증
그래도 빅데이터와 클라우드로 표본이 증가해서 오탐률 감소중
원동력) 클라우드와 머신러닝 기술
머신 러닝의 역할 - > 자동화를 통해 악성 행위만을 검사
가상 머신을 통해 실제 시스템이 아니라 대미지가 없고 쉽게 재현 가능, 재활용 가능
HoneyPot과 함께 활용시 시너지
-> 비정상적 접근 탐지를 위해 의도적으로 설치해둔 시스템
허니팟에 가상머신을 두고 악성코드에 대한 행위 기반 탐지를 시행
사이버 게놈 기술-> 악성 코드를 분석하여 공격 배후,경로를 파악하여 보안사고를 선재적으로 차단
인간 유전을 분석하듯 악성코드를 분석
샘플 확보 -> 데이터 마이닝 기법을 통하여 고유 행위 패턴을 찾게됨
ex) API 시퀀스 추출
- 응용 프로그램 시스템 자원을 사용하거나 다른 응용 프로그램과 상호작용을 할때 API를 호출한다
시스템 API 호출 시퀀스를 추출하여 악성코드의 실행 프로세스를 확인
추출은 실행 파일 자체에서 추출하는 방법과 호출되는 API를 가로채는 후킹이 존재
응용 프로그램은 로딩시 고유한API 호출을 수행
정상 프로그램으로 부터 자주 호출되는API들의 리스트를 동적 라이브러리 DLL에 저장하여 화이트리스트를 생성하여 관리
악성코드를 실행한 후 추출된 API 리스트에서 화이트 리스트API를 제거 하면 특성인자 추출 가능기존의 악성 코드 대응 기술
수집된 악성 코드 기반
시그니처 탐지 기반- 방화벽,IPS,백신등
-방화벽에 들어오는 악성코드에 특정 시그니처가 있으면 못 들어오게 하는거 X50같은거
-한계점
제로데이에 취약함
새로 발견된 악성코드는 시그니처 솔루션이 개발될 때 까지 대응이 불가능
APT 나 스피어 피싱 같은 타겟을 목표로 악성 코드 내부 구조를 변경한 맞춤형 악성 코드로 인해 더 힘들어짐.
탐지기법
-시그니처 기법: 위에 참고
-휴리스틱 기법: 악성코드가 가진 '특성'을 프로파일링하는 것
네거티브 휴리스틱 정상적인 프로그램의 프로파일을 적용하여 정상 프로그램의 특징을 갖추지 않은 악성 코드 대응
ex)행위기반 탐지 (Behavior analysis)
행위기반탐지
- 동작 기반 분석
시스템 행위 자체를 감시( 의심스러운 접근 같은거)
-무결성 검사방법
데이터 및 실행 파일들과 시스템 자체에 대한 어떠한 변화가 없이 (무결성이 깨지지 않고) 유지되는지 확인하는 방법
한계-> 높은 오탐률, 위협에 대한 확증
그래도 빅데이터와 클라우드로 표본이 증가해서 오탐률 감소중
원동력) 클라우드와 머신러닝 기술
머신 러닝의 역할 - > 자동화를 통해 악성 행위만을 검사
가상머신을 통해 실제 시스템이 아니라 데미지가 없고 쉽게 재현 가능, 재활용 가능
HoneyPot 과 함께 활용시 시너지
-> 비정상적 접근 탐지를 위해 의도적으로 설치해둔 시스템
허니팟에 가상머신을 두고 악성코드에 대한 행위 기반 탐지를 시행
사이버 게놈 기술-> 악성 코드를 분석하여 공격 배후,경로를 파악하여 보안사고를 선재적으로 차단
인간 유전을 분석하듯 악성코드를 분석
샘플 확보 -> 데이터 마이닝 기법을 통하여 고유 행위 패턴을 찾게됨
ex) API 시퀀스 추출
API기반 악성코드 인자 추출
바이오 인포매틱스기존의 악성 코드 대응 기술
수집된 악성 코드 기반
시그니처 탐지 기반- 방화벽,IPS,백신등
-방화벽에 들어오는 악성코드에 특정 시그니처가 있으면 못 들어오게 하는거 X50같은거
-한계점
제로데이에 취약함
새로 발견된 악성코드는 시그니처 솔루션이 개발될 때 까지 대응이 불가능
APT 나 스피어 피싱 같은 타겟을 목표로 악성 코드 내부 구조를 변경한 맞춤형 악성 코드로 인해 더 힘들어짐.
탐지기법
-시그니처 기법: 위에 참고
-휴리스틱 기법: 악성코드가 가진 '특성'을 프로파일링하는 것
네거티브 휴리스틱 정상적인 프로그램의 프로파일을 적용하여 정상 프로그램의 특징을 갖추지 않은 악성 코드 대응
ex)행위기반 탐지 (Behavior analysis)
행위기반탐지
- 동작 기반 분석
전통적인 악성 코드의 분석 방법
• 정적 분석: w/o running (코드 정보, 엔트로피, 헤더 정보, 파일 크기 등) • 특징: fast, simple •
동적 분석: with running (실행 정보, API call, 네트워크 통신 정보 등) • 특징: slow, compact(critical), robust to obfuscation
시스템 행위 자체를 감시( 의심스러운 접근 같은거)
-무결성 검사방법
데이터 및 실행 파일들과 시스템 자체에 대한 어떠한 변화가 없이 (무결성이 깨지지 않고) 유지되는지 확인하는 방법
한계-> 높은 오탐률, 위협에 대한 확증
그래도 빅데이터와 클라우드로 표본이 증가해서 오탐률 감소중
원동력) 클라우드와 머신러닝 기술
머신 러닝의 역할 - > 자동화를 통해 악성 행위만을 검사
가상머신을 통해 실제 시스템이 아니라 데미지가 없고 쉽게 재현 가능, 재활용 가능
HoneyPot 과 함께 활용시 시너지
-> 비정상적 접근 탐지를 위해 의도적으로 설치해둔 시스템
허니팟에 가상머신을 두고 악성코드에 대한 행위 기반 탐지를 시행
사이버 게놈 기술-> 악성 코드를 분석하여 공격 배후,경로를 파악하여 보안사고를 선재적으로 차단
인간 유전을 분석하듯 악성코드를 분석
샘플 확보 -> 데이터 마이닝 기법을 통하여 고유 행위 패턴을 찾게됨
ex) API 시퀀스 추출
- 응용 프로그램 시스템 자원을 사용하거나 다른 응용 프로그램과 상호작용을 할때 API를 호출한다
시스템 API 호출 시퀀스를 추출하여 악성코드의 실행 프로세스를 확인
추출은 실행 파일 자체에서 추출하는 방법과 호출되는 API를 가로채는 후킹이 존재
응용 프로그램은 로딩시 고유한API 호출을 수행
정상 프로그램으로 부터 자주 호출되는API들의 리스트를 동적 라이브러리 DLL에 저장하여 화이트리스트를 생성하여 관리
악성코드를 실행한 후 추출된 API 리스트에서 화이트 리스트API를 제거 하면 특성인자 추출 가능
API기반 악성코드 인자 추출
바이오 인포매틱스
퍼징(Fuzzing)
퍼징 툴- 퍼저
반자동화/자동화된 소프트웨어 테스트 기법 무작위 데이터를 입력하여 잠재적인 메모리 같은 취약점을 발견하게 해줌
그래서 화이트 블랙 해커 둘다 자주 씀
대표적 기술 -AFL
입력의 종류에 따라 프로그램의 다양한 실행 흐름을 타게 될 것이고 이에 따라 점점 코드 커버리지가 넓어짐
다양한 분기를 계속 타면서 버그가 존재하는지를 탐지
제로데이 취약점도 발견가능
코드 커버리지(code coverage):코드 커버리지는 소프트웨어의 테스트 케이스가 얼마나 충족되었는지를 나타내는 지표 중 하나이다. 테스트를 진행하였을 때 '코드 ( 조건 같은거) 자체가 얼마나 실행되었느냐'는 것이고, 이는 수치를 통해 확인할 수 있다
'학교 공부들 > 융합보안개론' 카테고리의 다른 글
사이버 위협 동향 (0) | 2021.04.12 |
---|---|
차세대 암호 기술 (0) | 2021.04.11 |
사이버 해킹 사례들 (0) | 2021.04.10 |