Skip to content

Commit

Permalink
Update readme.txt
Browse files Browse the repository at this point in the history
  • Loading branch information
8ming committed Sep 30, 2018
1 parent ec06219 commit c9d174a
Showing 1 changed file with 23 additions and 3 deletions.
26 changes: 23 additions & 3 deletions readme.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,35 @@ The default door.py use ipython kernel to create a ipython env. You can remote c

Debug version could not run.

BUILD AND RUN
Prepare and Build
- Install python. And pip install ipython, ipykernel, jupyter-console.
- Choose 32 bit or 64 bit python same as the process that you want to inject.
- The ipython, ipykernel, jupyter-console is not necessary, but if you want to use the default door.py, you should install it.
- Modify python.props.
- Modify the path string C:\Python37-32 and C:\Python37 to your python install location.
- If you only want 32bit version, ignore x64 path.
- Build the solution.
- Copy pythonXX.dll to Release folder.
- Edit door.py for your own.

Usage
- Copy pydoor.dll, pythonXX.dll, some vc runtime dlls and door.py to the diretory same with host process image file.
- Find a way to inject pydoor.dll to the host process.
- Dbgview.exe (You can found in Sysinternals Suite) can view log message.

NOTE
- The debug version could not running most cases, because don't have debug binaries for some python modules.

About default door.py

The default door.py start an embedded ipython kernel. When you successfully injected dll, you can run command `ipython console --existing` to connect pydoor.

> The ipython environment created by `IPython.embed_kernel()` is very strange, has some variable scoping issue ...


中文简介

简单说,这个 dll 就是用来注入到别的进程,会创建新的线程并运行同目录下的 door.py 。

后记:这个 pydoor 个人一直觉得比较鸡肋,感觉没啥用,直到……



0 comments on commit c9d174a

Please sign in to comment.