악성코드 분석

IT위키

악성코드 분석은, 어떤 코드가 악성코드인지 판별하는 것 부터 그 코드가 어떤 악성 행위를 하는지를 파악하고 차단하기 위한 분석 행위까지 포함한다.

정적 분석[편집 | 원본 편집]

프로그램을 실행시키지 않고 분석한다.

  • 소스코드, 파일 헤더, 매니페스트, 프로그램 구조 분석
  • 난독화를 할 경우 분석이 힘들어진다.


동적 분석[편집 | 원본 편집]

실제로 실행시켜 보고 분석한다.

  • 입력값을 변화에 따른 결과값을 분석한다.
  • 코드가 동작할수 있는 환경을 조성하는데 어려움이 있다.

동적 분석 방해[편집 | 원본 편집]

분석되는 것을 방지하기 위해 특정 조건 하에서만 동작하도록 하는 기법을 이용한다. 예를 들면 아래와 같다.

  • 예물레이터, 루팅된 폰에서 동작 안함
  • 침해가 가능한 기종에서만 동작함
  • 침해 대상 정보가 있는 환경에서만 동작함

Time Bomb[편집 | 원본 편집]

특정 시간이 되어야 동작하도록 한다. 잠복기를 부여하는 클래식한 방법이다.

Logic Bomb[편집 | 원본 편집]

특정 조건이 되어야 동작하도록 한다. 예를 들어 C&C서버로 부터 특정 값을 받아야 동작하도록 한다.