#About


크레센도 그룹의 보안담당자 P씨는 사내 보안 정기 점검 중 내부 네트워크의 도메인 컨트롤러가 침해당했음을 확인했다. 해당 머신의 Security 이벤트 로그를 통해 아래와 같은 정보를 확인하시오.


1. 가장 먼저 생성된 "일반" 사용자 계정의 이름

2. 해당 일반 사용자 계정(1번 문항)의 생성 시점

3. 해당 일반 사용자 계정(1번 문항)이 SID History Injection 공격을 성공한 시점


2,3번 문항의 시점은

YYYY-MM-DD hh:mm:ss (UTC+9 24hour) 포맷임.

답 포맷 : [1번 답]_[2번 답]_[3번 답]

Ex CRE_2015-01-28 11:16:33_2015-02-14 22:11:33




#Solution


[그림 1] - 문제 파일 확인


위 화면은 해당 문제에서 제공받은 이벤트 로그 파일을 윈도우에서 제공하는 이벤트 뷰어로 실행한 화면이며 발생한 


이벤트 수가 2,910개로 일일이 확인할 수 없으므로, 필요한 로그만 확인하기 위해 현재 로그 필터링의 기능을 아래와 같이 이용하려고 한다


[그림 2] - 로그 필터링 폼


원하는 이벤트 로그를 확인하기 위해서는 먼저, 이벤트 별 각기 다른 이벤트 ID를 알아야 한다


첫 번째 문제에서 요구하는 것은 사용자 계정 생성이므로 사용자 계정과 관련한 이벤트 로그 ID를 검색결과 4720임을 알 수 있었다 


[그림 3] - 계정 관리 관련 이벤트 ID ( .evtx에 해당)



[그림 4] - 일반 사용자 계정 생성 확인


필터링 된 결과 중 2016-10-14 오전 7:13:56분에 로그 정보를 확인 결과 SID 값 1104를 가지는 JDazz라는 일반 사용자 계정이 생성됨을 확인할 수 있었다


[그림 5] - SID 값 정보


위 그림을 확인하면 도메인 뒤의 숫자는 계정의 고유 번호를 의미하며 500은 관리자, 501은 게스트를 의미하며 자세한 사항은 아래에서 확인할 수 있다


https://support.microsoft.com/ko-kr/help/243330/well-known-security-identifiers-in-windows-operating-systems


일반 사용자 계정을 생성하면 [그림 4]와 같이 1000 이상의 숫자가 할당되며 이는 일반적으로 리눅스 시스템에서도 동일하게 적용된다 


[그림 4]의 일반 사용자 계정 생성 확인을 통해 1,2번 문제를 해결 했고, 문제에서 마지막으로 요구하는 것은 SID History Injection 공격을 성공한 시점이다


SID History Injection이란 사용자를 식별하는 SID 값을 임의로 변경하는 공격으로, 해킹에 필요한 권한을 가지고 있는 계정을 얻기 위해 사용 된다


따라서 확인해야 할 것은 사용자 계정 변경과 관련한 로그이며 [그림 3]에서 볼 수 있듯 변경된 사용자 계정을 의미하는 이벤트 ID 값은 4738에 해당한다


[그림 6] - 변경된 사용자 계정 이벤트 목록


SID History Injection은 SID 값을 변경하는 것이기 때문에 로그 정보에서 SID 기록이 변경되어 있는 부분을 확인하면 되며 그 정보는 아래와 같다


[그림 7] - SID History Injection Attack


SID History Injection 공격이 성공한 시점은 2016-10-14 오후 10:00:04이며 일반 사용자 계정인 1104에서 관리자 계정을 의미하는 500으로 계정이 변경되었다


Answer = JDazz_2016-10-14 07:13:56_2016-10-14 22:00:04



'Wargame' 카테고리의 다른 글

[Cresendo] EventLog Problem 03  (0) 2017.11.06
[Cresendo] EventLog Problem 02  (0) 2017.11.06
[Cresendo] Prefetch Problem 03  (0) 2017.11.05
[Cresendo] Prefetch Problem 02  (0) 2017.11.05
[Cresendo] Prefetch Probelm 01  (0) 2017.11.04

#About


다음 샘플을 참조하여, Windows System에서 사용자의 행위를 추적하기 위해 이용되는 아티팩트 중 한가지인 prefetch의 Windows system 중 XP, 7, 8.x버전들의 버전 별 Activate Count가 저장되는 offset value를 적으시오.


(인증형식 : 0x(xp시작오프셋)(xp종료오프셋)(7시작오프셋)(7종료오프셋)(8.x시작오프셋)(8.x종료오프셋))




#Solution


[그림 1] - 문제 파일 확인


위 문제에서 주어진 프리패치 파일 목록을 보면 3개가 있으며 이는 XP, 7, 8.x 각기 다른 버전의 프리패쳐를 가지는 것을 유추할 수 있다


프리패쳐의 XP와 7 버전은, 이전 문제에서 보았던 아래의 프리패치 구조 정보에서 오프셋 0x0000~0x0003을 확인하면 알 수 있다


[그림 2] - Windows 7, Windows XP 프리패치 구조 정보



[그림 3] - Windows XP


먼저 WGATRAY.EXE-0ED38BED.pf는 오프셋 0x00~0x03에서 0x00000011이라는 값을 가지므로 Windows XP에 해당하며


Windows XP 프리패치 구조에서의 Activate Count 즉, 실행 회수가 저장되는 오프셋은 [그림 2]에서 확인할 수 있듯 0x90~0x93이다


[그림 4] - Windows 7


두 번째로 RUNDLL32.EXE-43594133.pf는 오프셋 0x00~0x03에서 0x00000017이라는 값을 가지므로 Windows 7에 해당하며


Windows 7 프리패치 구조에서의 Activate Count 즉, 실행 회수가 저장되는 오프셋은 [그림 2]에서 확인할 수 있듯 0x90~0x93이다


[그림 2]에서는 확인할 수 없는 Windows 8의 구조 정보는 포렌식 위키에서 알 수 있었다


http://www.forensicswiki.org/wiki/Windows_Prefetch_File_Format

[그림 5] - 프리패처 버전


위 그림의 Windows 8에 해당하는 값인 26을 찾아보았더니 아래와 같이 Run Count의 오프셋을 확인할 수 있었다 


[그림 6] - Windows 8


Answer = 0x9093989BD0D3



'Wargame' 카테고리의 다른 글

[Cresendo] EventLog Problem 02  (0) 2017.11.06
[Cresendo] Event Log Problem 01  (0) 2017.11.05
[Cresendo] Prefetch Problem 02  (0) 2017.11.05
[Cresendo] Prefetch Probelm 01  (0) 2017.11.04
[Lord of SQL Injection] Dragon  (0) 2017.11.02

#About


크레센도 그룹의 보안담당자 B씨는 최근 인사팀으로 부터 근무태만 혐의가 있는 직원에 대한 감사 요청 및 해당 직원 PC의 프리패치 폴더를 전달받았다. 인사팀은 해당 직원이 일과 시간에 일은 안하고 다른 짓(게임 등)을 하는지, 혹은 접근 권한이 없는 문서 파일에 접근한 흔적이 없는지 확인해주기를 요청했다. 발견된 흔적은 내부 징계 처리에 사용될 것이다.


주어진 프리패치 폴더에서 다음과 같은 내용을 확인하시오:

1. 해당 시스템에서 압축 해제된 "압축 파일" 이름

2, 1번 문항의 압축 프로그램 프리패치에서 확인 가능한 압축에 사용된 PDF 파일 수

3. 직원 PC에서 실행된 적 있는 윈도우 기본 게임 실행 파일 명

(실행 카운트가 확인되는 실행 파일 전부, ABC순, 띄어쓰기 제외)


답 포맷 : [1번 답]_[2번 답]_[3번 답]

Ex) : TEST.ZIP_4_STARCRAFT.EXE_ZEROPIKA.EXE




#Solution


[그림 1] - 문제 파일 확인


해당 문제 파일을 확인했으며 위 프리패치 파일들을 분석하기 위한 도구인 WinPreftchView을 사용 했으며 출처는 아래 주소이다


http://www.nirsoft.net/utils/win_prefetch_view.html


[그림 2] - WinPrefetchView UI


WinPrefetchView를 실행했을 때의 유저 인터페이스이며, 해당 도구에서 확인할 수 있는 것은 파일 이름, 생성시간, 수정시간, 


파일 크기, 실행 파일 프로세스 이름, 프로세스 경로, 실행 횟수, 마지막 실행 시간, 프로세스 누락 여부, 참조 목록을 확인할 수 있다


해당 문제에서 1,2번에서 요구하는 것이 압축이라는 키워드로 같으므로 압축관련 프리패치 파일을 아래와 같이 확인 했다


[그림 3] - 반디집 실행 흔적 확인


압축 관련 프로그램인 반디집 프리패치 파일에서 1,2번 문제에서 요구하는 사항을 찾을 수 있었으며


 WORK DOCUMENT.ZIP 파일이 압축 해제되었다는 증거가 될 수 있는 것은 PDF 파일의 전체 경로를 확인 후 알 수 있었다


다음으로 3번에서 요구하는 문제인, 실행흔적이 있는 윈도우 기본 게임의 목록을 얻기 위해 검색 도중 아래의 블로그에서 얻을 수 있었다


http://neorocal.tistory.com/267


블로그에서 얻은 윈도우 기본 게임 목록 기반으로 찾아 보았더니 아래와 같이 실행 흔적을 발견할 수 있었다


[그림 4] - 윈도우 기본 게임 체스



[그림 5] - 윈도우 기본 게임 Solitaire


인사팀으로 부터 받은 직원의 PC에서는 런던대학교 인적자원관리, 캠브릿지대학 인적자원관리, 샌디에이고 주립대 금융서류, 


아이오와 주립대 금융서류에 관한 PDF 파일이 담긴 압축 파일을 해제한 흔적이 확인되었으며 


윈도우 기본게임에 해당하는, 체스는 2016-10-13 오후 1:25:37에 실행되었으며 Solitaire는 2016-10-14 오후 12:09:24에 실행되었다


Answer = WORKDOCUMENT.ZIP_4_CHESS.EXE_SOLITAIRE.EXE

 

'Wargame' 카테고리의 다른 글

[Cresendo] Event Log Problem 01  (0) 2017.11.05
[Cresendo] Prefetch Problem 03  (0) 2017.11.05
[Cresendo] Prefetch Probelm 01  (0) 2017.11.04
[Lord of SQL Injection] Dragon  (0) 2017.11.02
[Lord of SQL Injection] Xavis  (0) 2017.11.02

+ Recent posts