diff --git a/README.md b/README.md new file mode 100644 index 0000000..5a47526 --- /dev/null +++ b/README.md @@ -0,0 +1,18 @@ +# VmpHelper + +一款基于Ghidra反编译引擎编写的IDA插件,目前还在开发当中 + +仅支持Vmp3.5 x86 + +使用方法: + +1、将Ghidra目录和GhidraVmp.dll放置于IDA插件目录下 + +2、在程序的VMP入口处,右键弹出菜单 -> Vmp -> Show Graph打印出流程图 + +## 赞助本项目 + +如果你觉得本插件对你有帮助,可以请作者吃顿饭 + +![赞助](赞助.png) + diff --git a/update.sh b/update.sh new file mode 100644 index 0000000..7094922 --- /dev/null +++ b/update.sh @@ -0,0 +1,6 @@ +git checkout --orphan newBranch +git add -A +git commit -am "commit message" +git branch -D main +git branch -m main +git push -f origin main \ No newline at end of file diff --git "a/\345\274\200\345\217\221\350\200\205\346\227\245\345\277\227.md" "b/\345\274\200\345\217\221\350\200\205\346\227\245\345\277\227.md" new file mode 100644 index 0000000..8444f72 --- /dev/null +++ "b/\345\274\200\345\217\221\350\200\205\346\227\245\345\277\227.md" @@ -0,0 +1,49 @@ +# 开发者日志 + +2023年11月5日 + +优化对VM BasicBlock入口的识别,修复对BSR、CMOVB、JMP这一类分支指令的一处处理Bug + +2023年11月4日 + +初步完成VM控制流程图打印 + +2023年10月28日 + +开始编写IDA插件,需要重新优化寄存器识别,以精准识别出vm代码寄存器和堆栈寄存器。 + +2023年9月27日 + +调研vmp纯静态反编译的可行性,开始处理静态分析代码 + +2023年9月13日 + +对抗unicorn检测,优化unicorn跟踪逻辑 + +2023年9月9日 + +开始编写vmp38的handler解析规则 + +2023年9月7日 + +进一步针对vmp3.8的堆栈混淆指令进行优化,增加对堆栈读写结果记录 + +2023年9月5日 + +处理vmp3.8堆栈混淆指令,优化对BSR、CMOVB、JMP这一类分支指令的处理 + +2023年8月30日 + +增加vCpuid和vShl指令的识别 + +2023年8月29日 + +优化VmInitHandler识别和打印处理 + +2023年8月28日 + +修复vJmp的Handler识别Bug,增加vWriteMem和vRdtsc两个Handler + +2023年8月27日 + +搭建好框架,完成Demo测试版本 \ No newline at end of file diff --git "a/\350\265\236\345\212\251.png" "b/\350\265\236\345\212\251.png" new file mode 100644 index 0000000..e839f1f Binary files /dev/null and "b/\350\265\236\345\212\251.png" differ