README.md 2.33 KB
Newer Older
Administrator's avatar
Administrator committed
1
# Pykd - not only python extension for WinDBG
ussrhero's avatar
ussrhero committed
2 3 4 5 6 7 8

## Purpose
This project can help to automate debugging and crash dump analysis using Python. It allows one to take the best from both worlds: the expressiveness and convenience of Python with the power of WinDbg!

## Why do I need this?
If you want to automate the debugger but dislike the WinDbg built-in script machine syntax it's time to try again using the handy and powerful Python language. Even if you don't want to create your own script, maybe some existing scripts will be of interest to you?

Administrator's avatar
Administrator committed
9
## Getting started
ussrhero's avatar
ussrhero committed
10
* You should have installed python. Supported python: 2.7, 3.5 - 3.9
Administrator's avatar
Administrator committed
11
* Install pykd with command: 'pip install pykd'
ussrhero's avatar
ussrhero committed
12
* Use windbg extension (bootstrapper) to run pykd with windbg
ussrhero's avatar
ussrhero committed
13

ussrhero's avatar
ussrhero committed
14
## Windbg extension (bootstarpper)
Administrator's avatar
Administrator committed
15 16 17
Use it to run pykd within windbg.     
[Home Page](https://githomelab.ru/pykd/pykd-ext)     
[Download](https://githomelab.ru/pykd/pykd-ext/wikis/Downloads)   
ussrhero's avatar
ussrhero committed
18

ussrhero's avatar
ussrhero committed
19 20 21 22 23
## Releases
Just run 'pip install pykd' to install or 'pip install pykd --upgrade' to upgrade to the last version   
[PyPi](https://pypi.org/project/pykd)   
[All Releases](/../wikis/All Releases)  

ussrhero's avatar
ussrhero committed
24
## Documentation
ussrhero's avatar
ussrhero committed
25
[Wiki Home](/../wikis/Home)    
ussrhero's avatar
ussrhero committed
26
[User Manual](/../wikis/User Manual rus)    
Administrator's avatar
Administrator committed
27 28 29 30 31 32 33 34 35 36 37 38
[API Reference](/../wikis/API Reference)   

## Useful tools for pykd and WinDBG
[windbg-pack](https://githomelab.ru/pykd/windbg-pack)    
Set of python scripts for WinDBG

[pykdwin](https://githomelab.ru/pykd/pykdwin)   
A library with auxiliary modules for writing small pykd scripts and daily use.

[windbg-kernel](https://githomelab.ru/pykd/windbg-kernel)    
Set of pykd script for kernel debugging

ussrhero's avatar
ussrhero committed
39 40

## How to build ?
ussrhero's avatar
ussrhero committed
41 42 43 44 45 46 47 48 49
* install VS 2017     
https://visualstudio.microsoft.com/downloads/

* install cmake   
https://cmake.org/

* install git    
https://git-scm.com/

ussrhero's avatar
ussrhero committed
50
* get sources:
ussrhero's avatar
ussrhero committed
51 52 53 54 55

```
git clone --recurse-submodules https://githomelab.ru/pykd/pykd.git local_dir
```
* open pykd.sln 
Administrator's avatar
Administrator committed
56 57 58 59 60 61 62 63 64 65 66
* choose a python version and a target platform then build pykd projects

## Projects used pykd
[mona.py](https://github.com/corelan/mona)    
the exploit writer's swiss army knife

[flare-dbg](https://github.com/fireeye/flare-dbg)    
flare-dbg is a project meant to aid malware reverse engineers in rapidly developing debugger scripts. 

[voltron](https://github.com/snare/voltron)    
Voltron is an extensible debugger UI toolkit written in Python