본문 바로가기

Trace 명령어 P : Step OverT : Step Into 기본적으로 p 또는 t 만 입력 시 현재 어셈블리 명령어 한줄만 실행한다. Windbg 명령어 동작 pa / ta 명시한 주소까지 Step Over / Step Into pc / tc 다음 call 명령까지 Step Over / Step Into pt / tt 다음 ret까지 Step Over / Step Into ph / th 다음 분기 명령까지 Step Over / Step Into pct / tch 다음 call 또는 ret까지 Step Over / Step Into
파이썬에서 프로세스 생성 파이썬에서 프로세스 생성하기CreateProcessA API MSDN : https://docs.microsoft.com/en-us/windows/desktop/api/processthreadsapi/nf-processthreadsapi-createprocessa ------------------------------------------------------------------------------------------------------- from ctypes import *from defines import * kernel32 = windll.kernel32 #ctypes.windll.kernel32 if __name__ == '__main__': path_to_exec = "python C:\..
PyFPDF 파이썬 모듈 설치 PyFPDF 설치 FPDF란 python상에서 PDF Document 생성을 위한 라이브러리를 뜻합니다.( 참조 URL : https://pyfpdf.readthedocs.io/en/latest/ ) 설치 방법은 위 URL에서 총 4가지로 다루고 있습니다.※ 파이썬이 먼저 설치돼야 합니다. InstallationUsing PyPIUsing EasyInstall c:\python27\Scripts\easy_install.exe fpdfFrom source:Download and unpack source package (zip) or pull from the repositoryRun python setup.py installUsing MSI or Windows Installers1. EasyInstall로 ..
BeautifulSoup4 설치 (bs4) BeautifulSoup4 설치하기(bs4 설치하기) ※ 설치 전에 파이썬이 먼저 설치돼 있어야 합니다. 1. pip install bs4간단하게 BeautfulSoup4를 설치합니다. 2. python파이썬 명령 프롬프트로 진입합니다. 3. from bs4 import BeautifulSoup파이썬 명령창에서 import 명령어 수행 시, 다음 줄에 아무런 에러가 뜨지 않으면 설치 성공입니다.
파이썬 환경변수 설정 파이썬 환경변수 설정 (Environment Variables) 1. [내컴퓨터] 우클릭 - [속성] 클릭 2. [고급시스템] 클릭 (영문은 Advanced system settings) 3. [환경변수] 클릭 (영문은 Environment Variables) 4. 아래의 [시스템 변수]에서 "Path" 선택 후 [Edit] 클릭 5. 파이썬 경로 추가. --- C:\Python27만 추가해도됨 --- 본인이 설치한 파이썬 경로에 맞게 설정[Win7]( 경로는 ; 로 구분이 됩니다. ex) c:\ ; c:\Python27 ; c:\Python27\Scripts ) [Win10]윈10은 한줄에 환경변수 경로 하나씩 적어주면 됩니다.[새로만들기] - [환경변수 경로 입력] 6. 환경변수 추가 확인CMD창을 ..
Windbg LFH 동작시킨 상태로 디버깅하는 방법 Win7부터는 Low Fragment Heap이 default Frontend heap으로 설정되어 LFH 힙을 고려해야할 때가 자주 있습니다. 디버거에 기본적으로 Heap 관련 GFlags 들이 동작하기 때문에, 디버거 상에서 Open Executable로 파일을 열면 LFH가 동작하지 않습니다.이러한 GFlags들이 꺼진 상태여야 LFH가 enable 됩니다. !heap: 해당 명령어로 맨 첫번째에 있는 base heap 주소를 얻고, dt _heap [힙베이스주소]ex) dt _heap 550000: 힙 정보 값 조회. [LFH 미동작] [LFH 동작] 가장 쉬운 방법은 프로그램을 실행시킨 후 Attach 하는 방식으로 디버깅을 진행하면 LFH가 enable 된 상태에서 디버깅이 가능합니다. 두번째..
choose function, jump to address, xrefs to 단축키 Choose function to jump to 단축키 (함수목록): Crtl + P Jump to address (원하는 주소로 이동): G xrefs to sub_... (이곳을 참조하는, 호출하는 곳 확인): X
실질적으로 할당된 힙 크기 구하기 동적으로 할당되는 힙(heap)의 정확한 크기 구하기. 할당받는 힙의 크기는 요청한 크기와 정확하게 일치할 때도 있지만 조금의 차이가 있을 수도 있다.요청한 Size와 동일한 크기의 Chunk가 존재한다면 딱 맞게 주겠지만, 아니라면 조금 더 큰 Chunk에서 잘라내어 할당하기도 한다. Chunk의 크기는 8bytes의 배수이기 때문이다. 따라서 요청한 Heap 크기보다 조금 더 크게 할당 될 수도 있다.(=-> 때문에, Bins로 관리 시 Size의 나머지 3bit를 | N | M | P |의 Flags로 사용함.) 코딩 시 할당된, 사용 가능한 힙 크기를 정확하게 알아야할 때가 있는데 함수를 통해 구하는 법을 알아보자. 윈도우즈 플랫폼 같은 경우는_msize(힙주소) 리눅스와 유닉스의 경우에는mall..