#About


Berthier, it's clear now that the hackers have the systems passwords. The malware seems to be manually maintened on the workstations. Since ACME's computer fleet seems to be up to date, maybe it's only due to password weakness. John, the system administrator don't believe you. Prove it to him.


Find john password.


The uncompressed memory dump md5 hash is e3a902d4d44e0f7bd9cb29865e0a15de




#Solution


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


문제로부터 512MB의 메모리 덤프 파일을 제공받았으며 분석의 진행을 위해 먼저 운영체제 정보를 확인해보았다


[그림 2] - 운영체제 정보 확인


확인 된 운영체제를 인자로 넘겨 준 뒤, 문제에서 요구하는 John의 패스워드를 찾기 위해 레지스트리를 확인해볼 것이다


윈도우에 계정을 생성하게 되면, HKLM\SAM\SAM\Domains\Account\Users\Names\%username%\이 생성되며, 생성한 유저이름으로 키가 추가된다.


[그림 3] - 계정 정보 확인


총 3개의 계정이 존재했으며 문제에서 언급된 John의 계정인 John Doe를 확인할 수 있었다


다음으로, John Doe의 패스워드를 추출하기 위해서는 레지스트리 하이브 파일 중 SAM과 SYSTEM이 필요하며 볼라틸리티 상에서는 


SYSTEM의 오프셋은 -y 옵션으로 SAM의 오프셋은 -s 옵션과 함께 hashdump 플러그인을 사용하면 아래와 같이 패스워드를 추출할 수 있다


[그림 4] - 해시화 된 암호화 정보 획득 및 hash.txt로의 해당 정보 리다이렉션


( phashdump라는 문자열은 cmder의 오류 때문에 보이는 것임 )


[그림 5] - John the Ripper를 통한 해쉬 암호 추출


추출 결과 John Doe 계정 비밀번호의 해시암호는 b9f917853e3dbf6e6831ecce60725930이며


이는 32글자의 md5의 특징을 가지므로 레인보우 테이블에 해당 해시 값을 조회했더니 아래와 같이 패스워드를 확인할 수 있었다


[그림 6] - md5 복호화를 통한 John Doe 계정 비밀번호 확인


Flag = passw0rd



#About


Bertheir, with what you just see in the process, it's now very clear. This malware seems to be only an exfiltration one. What is the IP of the internal server used by these hackers.


The validation password must be provided in the form IP: PORT.


The hash md5 of the uncompressed memory dump is e3a902d4d44e0f7bd9cb29865e0a15de




#Solution


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


문제로부터 512MB의 메모리 덤프 파일을 제공받았으며 해당 메모리 덤프 파일을 분석하기 위해 먼저, 운영체제 정보를 알아보았다


[그림 2] - 운영체제 정보 확인


확인 된 운영체제 정보를 인자로 넘겨주어 아래와 같이 먼저, 프로세스 목록을 살펴보았다


[그림 3] - 프로세스 목록 및 정보 확인


프로세스를 살펴 본 결과 explorer.exe의 하위 프로세스로 동작해야할 cmd.exe가 PID 2772를 가지는 iexplore.exe의 하위 프로세스로 동작하고 있었다


[그림 4] - 네트워크 연결 정보 확인


문제에서 요구하는 것은 내부에서 해커가 이용한 IP와 PORT번호이기 때문에 의심스러웠던 iexplore.exe의 네트워크 연결정보를 확인해보았지만


답이 아니였다. 다시 돌아가, cmd.exe는 iexplore.exe의 하위로 돌아가고 있기 때문에 이는 해커가 cmd.exe를 이용해 명령을 내렸을 가능성이 있다


따라서 그 가능성을 조사하기 위해 consoles 플러그인을 이용할 것이다. consoles 플러그인은 해커가 cmd.exe에서 입력하거나 백도어를 경유하여 


실행되는 명령어들을 찾아주며, 해당 플러그인의 장점은 해커가 입력한 명령을 확인할수 있을 뿐만 아니라, 출력을 또한 확인할 수 있다고 한다


[그림 5] - Console Information 확인


확인 결과, cmd.exe를 이용하여 tcprelay.exe를 실행했음을 확인할 수 있다. 그리고 cmd.exe는 conhost.exe(PID=2168)과 관련 있음도 확인할 수 있으며 


conhost.exe의 역할은 cmd.exe에서 입력 받은 명령을 처리해주는 역할을 하며 만약 메모리 덤프 작업을 진행하기 전에 해커가 cmd.exe를 삭제했을 경우, 


conhost.exe를 통해 cmd.exe의 세션의 기록을 복구할 수 있고 이에따라 기록을 확인하기 위해 아래와 같이 conhost.exe를 메모리 덤프를 통해 추출해주었다


[그림 6] - 메모리 덤프 작업을 통한 conhost.exe 추출


덤프한 conhost.exe에서 사용된 문자열을 추출해보았고 아래와 같이 시나리오에서 요구하는, 해커가 내부 서버로 사용한 IP와 PORT를 확인할 수 있었다


[그림 7] - 해커가 내부 서버로 사용한 IP주소와 PORT 번호 확인


Flag = 192.168.0.22:3389



#About


Berthier, the antivirus software didn't find anything. it's up to you now. Trty to find the malware in the momory dump. The vailidation flag is the md5 checksum of the full path of the executable.


The uncompressed memory dump md5 hash is e3a902d4d44e0f7bd9cb29865e0a15de




#Solution


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


문제로부터 제공받은 512MB의 메모리 덤프 파일을 분석하기 위해 먼저 운영체제 정보를 확인해보았다


[그림 2] - 운영체제 정보 확인


운영체제 정보 확인 결과, Win7SP0x86, Win7SP1x86이 제안되었으며 이를 인자로 준 뒤, 프로세스 목록을 먼저 살펴보았다


[그림 3] - 프로세스 목록 확인


프로세스 목록 확인 결과, 가장 의심스러운 부분은 위에서 볼 수 있듯, cmd.exe가 iexplore.exe의 하위 프로세스로 돌아가고 있었다


cmd.exe는 iexplore.exe가 아닌 위 그림에서 PID=2548에 해당하는 explorer.exe의 하위 프로세스로 돌아가야 한다


따라서 iexplore.exe로부터 cmd.exe를 통한 명령 작업을 수행하는 malware일 것으로 판단, 악성코드나 멀웨어가 자주 사용하는 


레지스트리를 분석하기위해 hivelist 플러그인을 이용, 레지스트리 하이브 파일을 확인해보았다


[그림 4] - 레지스트리 하이브 목록 확인


확인 된 레지스트리 하이브 목록 중, 악성코드나 멀웨어가 선호하는 레지스트리 경로는 SOFTWARE에 위치하며 여러가지 경로 중 하나는 아래와 같다


SOFTWARE\MICROSOFT\WINDOWS\CurrentVersion\Run


위 경로의 Run 키에 등록된 파일은 윈도우 운영체제가 시작할 때 자동으로 실행되는 곳이며 


해당 경로 이외에도 다수 존재하는 경로 정보의 자세한 사항을 알고 싶다면 아래 링크를 참조하길 바란다


http://securityfactory.tistory.com/131


[그림 5] - Malware가 위치하는 경로 정보 확보


위 [그림 5]에서 확인했던 레지스트리 키에 자동으로 iexplore.exe가 실행되도록 설정되어 있었으며, 본래 iexplore.exe가 


위치하는 경로는 C:\Program Files\Internet Explorer\iexplore.exe임을 감안했을 경우 문제에서 야기하는 Malware임을 판단할 수 있었다


[그림 6] - Malware 절대경로의 md5 해시 값 확인



+ Recent posts