분류 전체보기
-
x86 Assembly(1)DreamHack/리버싱 2025. 3. 6. 13:28
이전에 시스템 해킹에서 다뤄봤었던 어셈블리 언어에 대해서 배울듯하네.일단 시작해보자.대충 기계어를 어셈블리어로 역변환해주는 리버싱 도구들의 주요 기능이 나오게된 배경을 설멍한거니까 넘어가자.중요한건 이 다음에 x86-64 체계의 어셈블리어를 설명해준다는 것이다.요건 x64 어셈블리어의 문법 체계에 대한 설명이다.opcode operand1 operand2 로 3개의 구성요소로 이루어져있으며,opcode는 명령어operand1과 operand2는 명령어에 사용되는 피연산자들이다.어셈블리어는 다른 언어들이 피연산자의 위치가 일정한 것에 비해,비교적 명령어마다 피연산자의 위치가 바뀌곤한다.그리고 명령어에 따라 피연산자가 1개일때도 존재한다.피연산자에는 상수, 레지스터, 메모리가 들어올 수 있다.상수는 말 그대..
-
Computer Science - Windows Memory LayoutDreamHack/리버싱 2025. 3. 5. 12:54
Layout 이라는 말은 특정 공간 안에 어떠한 값들을 보기 편하고, 효과적이게 배치하는 작업이라고한다.Windows Memory Layout은 Windows 운영체제가 RAM과 CPU에 프로세스를 어떻게 배정하는지 논리적 흐름으로 나타내는 가상 메모리에 대한 구조인듯하다.윈도우의 실행 파일은 PE 파일이라고 불린다.PE 파일은 PE헤더+1개 이상의 섹션으로 구성된다고하네요.다른 파일들의 구조처럼 PE헤더에서 다른 섹션의 종류, 오프셋등을 참조해서 프로세스를 기능시키는듯하다.일단 먼저 PE헤더는 섹션의 이름,크기, 속성, 오프셋등의 정보들을 갖고 있다.사실 이건 여타 다른 파일들도 마찬가지이긴했다.조금 중요하게 봐야할 점은PE 파일을 실행해서 프로세스로 띄우는 순간 각 PE 섹션들은 적절한 세그먼트로 나..
-
Computer Science - Computer ArchitectureDreamHack/리버싱 2025. 2. 24. 18:11
이전에 공부했던 내용이랑 비교하면서 확인하면 편할듯.https://blog.naver.com/wsh2525/223142308427 K : 네이버 블로그눈 비blog.naver.com아 그리고 달고나 pdf도 참고해서 앞에 부분의 개요만 좀 확인해보고 봐도 좋겠네. 실제로 x64 아키텍처 기준에서는 RFLAGS 라는 64비트 크기의 플래그 레지스터를 쓰므로플래그 레지스터는 위의 사진에서 나온 CF,ZF,SF,OF말고도 60개나 더 있다.다만 사용 용도가 다르거나 예약되어있거나, 미사용하기 때문에 대표적인 예시로 4개만 강의에서 넣은듯하다.많이 사용하는 레지스터들은 1~20으로 20개 정도만 쓴다고한다.그리고 32비트 아키텍처는 추후에 64비트 프로그램과도 호환이 가능해져야만했다.그래서 64비트 체계에서 사..
-
Memory Forensics - 아티팩트 탐색 (MemLabs Lab 4)DreamHack/포렌식 2025. 1. 9. 17:17
들어가기 앞서더보기이번 문제는 시스템이 해킹 당하고 파일들이 날라갔다.그래서 파일을 복구하는 것이 문제인데중요한 키워드는 중요한 파일이라는 저 단어이다.딱 보자마자 Important 라는 단어를 기반으로 흔적을 찾아내면 될 것 같다.그리고 삭제된 파일 복구이므로, Recycle.bin 이랑 NTFS Log Tracker 에 필요한 파일들로 삭제 행위 분석 등이전까지 배웠던 윈도우 포렌식 내용을 모두 사용해야할듯했다.1. 플래그 풀이더보기일단 가장 먼저 Important 라는 키워드로 filescan.log를 분석하려고 했다.근데 왜 인지 모르겠는데 지난번처럼 강제로 cp949 에서는 인코딩할 수 없는 문자들 때문에마지막에 있는 단서들을 뒤늦게 풀이를 보고 찾았다.방향은 맞았는데 2프로 부족해서 못 찾았다..
-
Memory Forensics - 사용자 행위 파악 (MemLabs Lab 3)DreamHack/포렌식 2025. 1. 7. 20:56
들어가기 앞서더보기문제가 꽤나 Lab2 때와는 다르게 단순해졌다.형식은 inctf{flag} 형식이고, 1개의 플래그가 2개로 쪼개져 나뉘어져있다.그리고 리눅스 패키지 중에 steghide 라는 패키지가 있는데이름부터 스테가노그래피를 의심 안할수가 없다.그리고 악성 스크립트가 시스템에 있는 정보를 암호화했고, 이를 복구해야한다.아마 steghide 패키지는 암호화를 하거나 복호화를 하거나 둘 다 가능하거나한 패지키로 추정된다.일단 난 vmware가 있으니까 거기에 설치해놓은 리눅스에서 한번 써보면 될듯하다.설치까지 해놨고...이제 문제를 풀어보자.1. 첫번째 플래그더보기악성스크립트가 돌아갔다면 의심스럽게 봐야할게 뭐가 있을까...일단 악성스크립트에 의해서 새로운 프로세스가 만들어졌을 수도 있고,그로인한 ..
-
Memory Forensics - 사용자 행위 파악 (MemLabs Lab 2)DreamHack/포렌식 2025. 1. 6. 19:32
오랜만에 공부를 잡습니다.다시 열심히 해보겠습니다. 1. 첫번째 플래그더보기힌트는 딱 여기까지만 듣고 풀어보려고 한다.난 영어를 못하니까 자동 번역으로 봐보면 일단 몇가지 확인해보면1. 3개의 플래그로 구성되어 있다.2. 환경, 브라우저, 비밀번호 관리자 등을 사용하는 애플리케이션...? 내 기억으로는 크롬의 비밀번호 자동 저장되는 파일이 있었는데 그게 레지스트리 값이였는지 아예 다른 파일이였는지 기억이 안나지만 조금 다시 찾아보면 알듯하다.일단 환경을 강조한 것으로 보아 환경 변수를 알아봐야하므로,이전 Lab 0 을 다루는 메모리 포렌식 기초 부분에서 volatilty 3.0 의 플러그인 중에서 프로세스와 프로세스가 사용하는 환경 변수들을 출력해주는 envars 옵션을 이용해서 뽑아내야할듯하다.이렇게 ..
-
디지털포렌식 2급 실기 시나리오 관련 문제 (2024 모의 문제 풀이 - 8번 문제) [FTK Imager]포렌식 통합/디지털 포렌식 전문가 2급 2024. 11. 16. 17:57
8번 문제더보기8번 문제는이러하다.일단 프린트를 했다고 생각하면 가장 먼저 드는 아티팩트는 음...이벤트 로그라고 생각한다.그리고 추가적으로 Shadow (SHD) 파일과 Spool (SPL) 파일이 생각난다.내 기억으로는 프린트 관련 포스팅을 한 번 했던걸로 기억하는데....아. 드림핵에서 이벤트 로그 강의를 보다가 논문인가 있던걸 기반으로 정리하는 글을 쓸 때 논문 내용에 있었다.아직 작성 중이긴한데 그냥 올려놓고 차차 수정해야겠다.https://wintersnowaaa.tistory.com/49 이벤트 로그 (참고) [지속수정]- USB, 외장 하드 디스크와 휴대폰 같은 외부저장장치 (Microsoft-Windows-DriverFrameworks-UserMode/Operational.evtx)더보기..