这里除了代码,也放上几个自己写的有漏洞的exe程序方便大家调试,有漏洞的exe程序在:

http://howfile.com/file/2611e8a1/8c414bff/

程序功能只是每隔一秒标题数字加1,有了快照,那么数字可以还原到快照时刻

代码如下,注意修改程序路径,这里的程序是压缩包的 “快照测试.exe”

from pydbg  import *
from pydbg.defines import *
import threading
import time
import sys
class snapshotter(object):def __init__(self,exe_path):self.exe_path     = exe_pathself.pid          = Noneself.dbg          = Noneself.running      = Truepydbg_thread = threading.Thread(target=self.start_debugger)pydbg_thread.setDaemon(0)pydbg_thread.start()while self.pid == None:time.sleep(1)monitor_thread = threading.Thread(target=self.monitor_debugger)monitor_thread.setDaemon(0)monitor_thread.start()def monitor_debugger(self): while self.running == True:input = raw_input("Enter: 'snap','restore' or 'quit'")input = input.lower().strip()if input == "quit":print "[*] Exiting the snapshotter."self.running = Falseself.dbg.terminate_process()elif input == "snap":print "[*] Suspending all threads."self.dbg.suspend_all_threads()print "[*] Obtaining snapshot."self.dbg.process_snapshot()print "[*] Resuming operation."self.dbg.resume_all_threads()elif input == "restore":print "[*] Suspending all threads."self.dbg.suspend_all_threads()print "[*] Restoring snapshot."self.dbg.process_restore()print "[*] Resuming operation."self.dbg.resume_all_threads()def start_debugger(self):self.dbg = pydbg()pid = self.dbg.load(self.exe_path)self.pid = self.dbg.pidself.dbg.run()exe_path = "C:\\aaa.exe"snapshotter(exe_path)

灰帽子里面的pydbg代码相关推荐

  1. idea调试unity里面的lua代码

    前言 本人一名java后端开发,看到前端同事调试lua代码无脑print,甚为鄙视,百度加实操写一份调试unity的lua脚本文档 操作 1.安装lua lua官网下载页面 最终下载页面 2.idea ...

  2. ? php 为啥报错,如何解决js里面的php代码报错问题

    在一个模块中,前端是extjs,后端是php,报错,这是在php的错误警告开到最严格的时候报的错,虽然程序可以跑,可是日志堆积越来越多. Undefined variable:loginUserNam ...

  3. sublime html文件中php代码,sublime - 嵌套在html里面的php代码该遵循怎样的规范

    像我这样写有问题吗(上图)?sublime里用phpfmt格式化后就变成这样子了(下图,引入头.尾部文件语句没缩进了,收尾的}不再与?>在同一行).是我写的不够规范吗?还是这格式化插件有问题? ...

  4. Python灰帽子环境配置

    关于Python灰帽子里面的python代码运行环境配置,需要安装python2.7.x,自行到http://www.python.org下载. 我配置好环境后,把用到的库和pydbg需要替换的文件, ...

  5. 音频系统,Alsa 里面的buff 是怎么计算的?

    相关文章 (干货)Ai音箱和Linux音频驱动小谈 Linux ALSA 图解 我在MTK平台下调试音频ALSA 我们知道声音是模拟信号,模拟信号转成数字信号就一定有大小,既然有大小,那我们就需要开辟 ...

  6. 指定单元格里面的,内容发生变化,触发事件,调用VBA代码。

    指定单元格里面的,内容发生变化,触发事件,调用VBA代码._sun0322-CSDN博客_单元格变化触发vba 目录 ■通过改变一个单元格的内容,出发一个事件,根据改变的内容,进行相应的处理. ■扩展 ...

  7. bable转换html里面的js,如何使用babel,把写好的es6代码,转化为es5,让ie8兼容。...

    现在有很过编译的工具,比如是babel编译,webpack,grunt,gulp. 这篇文字很简单,就是让我们使用es6语法的代码,不仅仅可以让谷歌浏览器看,还可以使用ie8以上的浏览器看,其实就是把 ...

  8. Python灰帽子--黑客与逆向工程师的Python编程之道 笔记,过程问题解决

    ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑电脑端的可以看看目录 跟着学习进度不断更新中....(因为懒,没更新了,也不打算继续更新文章了......) power by <p ...

  9. 电子书推荐--《Python灰帽子》,python黑客编程

    点此在线阅读 <Python灰帽子>是由知名安全机构Immunity Inc的资深黑帽Justin Seitz主笔撰写的一本关于编程语言Python如何被广泛应用于黑客与逆向工程领域的书籍 ...

最新文章

  1. 傅里叶描述子欧氏距离_机器学习中的各种距离
  2. Django中配置自定义日志系统
  3. Groovy 使用完全解析
  4. OS中atomic的实现解析
  5. java filechannel 空_Java NIO FileChanel
  6. 募捐名单_年度捐款,以及为什么现在应该捐款,而不是以后
  7. java.lang.NoClassDefFoundError: org/apache/http/ssl/TrustStrategy 错误解决办法
  8. [C++] Value Categories
  9. 实战:基于OpenCV进行长时间曝光
  10. 西瓜书读书笔记4-Sigmoid函数
  11. 7-6 逆序的三位数 (10 分)
  12. python记录_day33 线程
  13. 太强了!一个基于 Redis 的限流系统的设计!
  14. 数字集群通信的业务与功能
  15. Excel表格中带公式的数值如何复制?
  16. 关于OSPF的区域划分规则
  17. civil 3d 计算机配置,Civil 3D技巧:如果做到设计文件的高效出图?
  18. spring security——学习笔记(day05)-实现自定义 AuthenticationProvider身份认证-手机号码认证登录
  19. 【BUCTOJ】链表的基本操作
  20. 华为游戏小程序快应用账号登录6004报错集合

热门文章

  1. ORACLE SYNONYM详解
  2. 目前 人们所说的个人计算机属于(),职称计算机考试真题及答案
  3. NSString中 initwithformat与stringwithformat区别
  4. “裸辞”真的就会没前途吗?面对他你是会 “雪上加霜“,还是“绝处逢生“?
  5. ElasticSearch全文检索技术
  6. (转)CEvent,CSemaphore,CCriticalSection,CMutex
  7. ZooKeeper的stat结构
  8. 如何避免公司以试稿为由盗用设计作品?
  9. 那些警示良言——鲁迅
  10. centos mysql双机备份_[原创]CentOS下Mysql双机互为备份