목록Reversing/Window OS (6)
Hacking Arts
보호되어 있는 글입니다.
-EPROCESS : 프로세스가 생성되면 해당 프로세스의 정보를 가지고 있는 EPROCESS 라는 구조체가 커널 메모리에 생성된다. 모든 프로세스는 각자의 EPROCESS 구조체를 하나씩 가지고 자신의 Thread 수만큼 ETHREAD 구조체를 커널 메모리에 가진다. -EPROCESS가 있는데 왜 PEB가 있을까? PEB는 유저모드에서의 Process 구조체이다. 반대로 EPROCESS 구조체는 커널 모드에서의 Process 구조체인데 나눈 이유는 프로세스가 만약 기본적인 정보인 process id값을 가지러 간다고 했을 때 EPROCESS까지 가려면 커널의 구조체에 접근을 해야된다. 이는 유저모드,에서 접근이 불가능하기때문에 시간이 오래걸리고 빈번하게 갱신되는 프로세스의 정보도 커널에 접근해서 수정해야..
- PEB란 ? Windows Kernel에서 프로세스에 대한 환경 정보를 담고 있는 구조체이다. 각 프로세스마다 PEB가 있고 각 프로세스 마다 가지고 있는 스레드 마다 TEB(Thread Environment Block)을 가지고 있습니다.PEB,TEB모두 커널모드에서는 존재하지 않습니다. 모두 유저모드 프로세스 하나당, 유저모드 스레드 하나당 존재하게 됩니다.[사진 1]-window xp 기준 PEB구조 nt!_PEB +0x000 InheritedAddressSpace : UChar +0x001 ReadImageFileExecOptions : UChar +0x002 BeingDebugged : UChar +0x003 SpareBool : UChar +0x004 Mutant : Ptr32 Void +..
-사용 Tool : virtualkd , windbg , vmware 일단 VirtualKD를 구글검색해서 사이트에서 받아서 압축을 풀면 아래 사진과 같다. [ 사진 1 ] - 여기서 target이라는 폴더는 vmware의 가상 머신에 넣어준다. 그리고 나머지는 자신이 사용하고있는 host pc에서 사용하게 될 것이다. [ 사진 2 ]-일단 target에 있는 것을 install 해주면 됩니다. [ 사진 3 ] - 그다음 재부팅되면 아래 사진 4를 켜놓고 저런식으로 vitualkd를 선택하면 됩니다. [사진 4] -그 다음 dubugger path는 자신의 windbg가 설치된곳을 선택해주시고 오른쪽 run debugger를 누르면 됩니다. [ 사진 5 ]-그럼 요렇게 windbg를 이용해서 간단하게 k..
[GetLastError()]윈도우 Error 코드 ERROR code/Control 윈도우를 하다보면 가끔씩 이유없이 에러가 날때가 있습니다. 아래의 글은 그 에러코드를정리한 것입니다..사실 초보자에게는 ㅡㅡ;; 그냥 궁금증정도만 해결될것 같네요 0 0x0000 작업을 완료했습니다. 1 0x0001 올바르지 않은 함수입니다. 2 0x0002 지정한 파일을 찾을 수 없습니다. 3 0x0003 지정한 경로를 찾을 수 없습니다. 4 0x0004 파일을 열 수 없습니다. 5 0x0005 접근이 거부되었습니다. 6 0x0006 잘못된 핸들입니다. 7 0x0007 저장 컨트롤 블록이 손상되었습니다. 8 0x0008 저장 공간이 부족해서 이 명령을 수행할 수 없습니다. 9 0x0009 저장 컨트롤 블록 주소가 올바..