'live response'에 해당되는 글 1건

  1. 2012.07.25 [Forensics]Live Response 1

라이브 리스폰스(Live Response)


 - 실행 중인 시스템을 대상으로 행해지는 일련의 포렌식 조사 과정


 - 휘발성 정보(시스템 시간, 네트워크 연결 정보, 로그온 사용자 정보, 실행되고 있는 프로세스 정보 등)은 컴퓨터의 전원이 꺼지면 사라지기 때문에 이러한 정보를 얻기 위함.


 


라이브 리스폰스의 중요성


 - 휘발성 저장장치에서만 얻을수 있는 정보가 있음


   (동작중인 프로세스 목록, 열려있는 파일 목록, 네트워크 연결 정보, 클립보드, 사용자 정보, 임시 파일, 비밀번호 등)


 - 최근에는 비휘발성 저장 장치를 거치지 않고 메모리에 상주하는 악성 프로그램이 다수 존재함.


 - 수집한 휘발성 정보를 통해 시스템의 대략적인 상태 파악


   (OS의 버젼, 서비스팩의 정보 등을 통하여 예상 가능한 취약점 목록으로 시간과 자원의 절약)


 - 기업의 서버 같이 항상 구동중이여야 하는 시스템이 존재


 


라이브 어퀴지션(Live Acquisition)


 - 동작 중인 컴퓨터에서 하드 드라이브의 이미지를 복사하는 것


 - 서버처럼 스토리지 용량이 크고 트랜젝션이 수시로 일어나는 곳은 적절치 않음


 - RAID로 구성 되어 있는 기업용 스트리지 용량은 수백 Gbyte에서 수 Tbyte이므로 수일이 걸릴수 있음.


 - 시간도 문제지만 그 기간 동안 정보의 변경이 더 큰 문제


 


라이브 리스폰스의 수행 시기


 - 시간이 촉박하지 않은 경우 항상 수행하는 것이 좋음.


 - 비휘발성 장치에서 증거가 수정/삭제 되고 있는 경우 상황에는 수행 하지 않는 것이 좋음.


 - 안전 삭제(Secure Deletion)이나 Secure Erease, 와이핑(Wiping)이 진행 중인 경우 전원 플러그를 뽑는 것이 좋음.


   (휘발성 자료보다 삭제하려는 자료가 더 중요 함)


 - 해커가 침입 상태라면 휘발성 정보(네트워크 연결 정보, 메모리 덤프 우선)을 수집한뒤 종료


 - 사용하려는 도구들이 조사하려는 컴퓨터의 윈도우버전에 대해 충분한 검토가 되지 않았을 경우 수행하지 않음.


 


시스템 종류에 따른 종료 방법


 - 개인용 OS는 플러그를 바로 뽑아도 되지만 서버용 OS나 서버 어플리케이션이 설치된 컴퓨터는 정상 종료.


 - 멀티탭이 아니라 콘센트를 뽑는 이유는 UPS가 있는 경우를 대비


 - 서버용 OS(윈도우 서버, 유닉스 계열)는 개인용OS에 비해 장애 대비 능력이 뛰어나지 않음.


 - 노트 북의 경우 노트북의 전원이 꺼지지 않으므로 배터리를 제거해야 함.


 


라이브 리스폰스의 원칙


 - '원본에 대한 영향을 최소화'


 - 실제로 다양한 도구를 테스트 해보고 시스템에 가장 영향이 적은 도구를 선별 하는 것이 현실적인 방안


 


로카드 교환 법칙(Locard's Exchange Principle)


 - '접촉한 두 물체 사이에는 반드시 교환이 일어난다'


 - 범죄 현장에서 어떤식이든 물체와 물리적인 접촉이 생기고 그것이 범죄의 증거가 될수 있다는 원리


 - 범인에게만 적용 되는 것이 아니라 증거 수집 간에도 적용되므로 조사간 부정적 영향을 미칠수 있음.


 


라이브 리스폰스 단계에서 영향을 미치는 시스템 구성 요소



  - 메모리(Memory)


> 리스폰스 도구를 실행하면 프로세스가 생성되어 그 코드와 오브젝트들이 메모리에 적재되어 이전에 있던 영역에 있던 데이터를 덮어씀. 


> 커널 오브젝트를 관리하는 시스템 테이블이 갱신되어 새로운 항목 추가 또는 이전 테이블이 삭제 됨.


 


 - 네트워크(Network)


> 사용하는 도구가 네트워크 기능을 사용한다면 관련 로그가 남게 됨.


> 네트워크 연결도 커널 오브젝트에 의해 커널 테이블을 갱신. 


 


 - 프리패치 파일(Prefetch File)


> 윈도우는 새로운 프로그램이 실행 될때마다 프리패치 파일을 생성


> 파일 크기가 크지는 않지만 클러스터 단위로 하나 이상의 영역을 할당 받아 사용.


> xp는 프리패치 파일 갯수의 제한(120개)를 넘을시 이전의 프리패치 파일을 삭제.



 - 레지스트리(Registry)


> 대다수 리스폰스 도구들이 레지스트리에 접근하여 설치정보를 찾고 EULA(End User License Agreement)가 사용자에 의해 승인되었는지의 유무를 확인.


> 레지스트리에 대한 접근/쓰기는 마지막 접근/쓰기 시간의 변경을 의미


> 실행 도구들에 대한 기록을 남김.


 

 - DLL(Dynamic Link Library)


> 포렌식 프로그램이 시스템 함수를 사용할 경우 DLL 파일을 사용하게 되면 접근시간이 변경 됨.


> DLL 접근 시간은 크게 중요하지 않지만 악의 적으로 변조/교체 되면 위험함.


 


 - 로그 파일(Log File)


> 사용한 도구가 에러를 발생시 기본적으로 이벤트 로그에 기록이 남음.


 



사전 준비



 - 도구 선택 단계


> 불법적인 도구는 법적 증거물이 될수 없으므로 정식 도구를 사용


> 정식 도구라 하더라도 바이러싀이 감염되거나 임의로 수정되었다면 사용 불가


> 가능하면 포렌식 전용 툴을 사용




 - 도구 테스트 단계


> 도구가 미치는 영향을 파악


> 버젼과 서비스팩에 따라 호환성이 다를수 있으므로 문제 없이 실행 되는지 확인


(ex. 윈도우 SP2부터는 포렌식용 dd가 아니면 메모리 덤프를 사용할수 없음


 


 - 문서화 단계


> 선택한 도구들의 목록을 만들고 출처와 해시를 기록


> 도구를 테스트하고 테스트 환경과 결과, 시스템에 미치는 영향을 기록


 


 - 사전 훈련 단계


> 라이브 리스폰스 도구들로 다양한 환경과 옵션으로 사용하여 문서화


 



모니터링과 문서화



 - 리스폰스 도구들이 시스템에 미치는 영향


> 프로그램이 실행될 때 로드 되는 DLL 파일 목록


> 레지스트리 접근 정보


> 프로그램이 수정 및 생성하는 파일 목록



-  도구 실행시 옵션마다 시스템에 미치는 영향이 다르므로 테스트로 검증된 옵션을 사용.


'공부 > Forensics' 카테고리의 다른 글

[InForensics] 메모리 분석 - 1  (0) 2012.08.09
[Metasploit]Meterpreter API Cheat Sheet  (0) 2012.07.26
[Metasploit] Msfpayload  (0) 2012.07.21
[Metasploit]Meterpreter (Reverse exe)  (4) 2012.07.21
[Windows]Userdump.exe  (0) 2012.07.19
Posted by extr
: