OD调试程序经常使用断点大全】的更多相关文章

经常使用断点  拦截窗体:  bp CreateWindow 创建窗体  bp CreateWindowEx(A) 创建窗体  bp ShowWindow 显示窗体  bp UpdateWindow 更新窗体  bp GetWindowText(A) 获取窗体文本  拦截消息框:  bp MessageBox(A) 创建消息框  bp MessageBoxExA 创建消息框  bp MessageBoxIndirect(A) 创建定制消息框  bp IsDialogMessageW  拦截警告声…
常用断点  拦截窗口:  bp CreateWindow 创建窗口  bp CreateWindowEx(A) 创建窗口  bp ShowWindow 显示窗口  bp UpdateWindow 更新窗口  bp GetWindowText(A) 获取窗口文本  拦截消息框:  bp MessageBox(A) 创建消息框  bp MessageBoxExA 创建消息框  bp MessageBoxIndirect(A) 创建定制消息框  bp IsDialogMessageW  拦截警告声:…
调试已运行的程序 在UNIX下用ps查看正在运行的程序的PID(进程ID),然后用gdb PID格式挂接正在运行的程序. 先用gdb 关联上源代码,并进行gdb,在gdb中用attach命令来挂接进程的PID.并用detach来取消挂接的进程. 暂停 / 恢复程序运行 调试程序中,暂停程序运行是必须的,GDB可以方便地暂停程序的运行.你可以设置程序的在哪行停住,在什么条件下停住,在收到什么信号时停往等等.以便于你查看运行时的变量,以及运行时的流程. 当进程被gdb停住时,你可以使用info pr…
OllyDBG从原理上来区分,有两种不同的断点:软件断点和硬件断点. 也许会有朋友说那不是还有内存断点吗? 内存断点严格来说是属于一种特殊的软件断点. 内存断点: 内存断点每次只能设置一个,假如你设置了另一个内存断点,则上一个会被自动删除. 设置一个内存断点,会改变整块(4KB)内存的属性,哪怕你只设置一个字节的内存断点. 另外还需要提一下的是,内存断点会明显降低OD的性能,因为OD经常会校对内存. 软件断点: 当我们按下F2设置的断点就是软件断点. 设置该断点的原理是在断点处重写代码,插入一个…
MultiByteToWideChar, ANSI字符串转换成Unicode字符串WideCharToMultiByte, Unicode字符串转换成ANSI字符串 //--------------------------------------------------rtcR8ValFromBstr //把字符串转换成浮点数 rtcMsgBox 显示一信息对话框 rtcBeep //让扬声器叫唤 rtcGetPresentDate //取得当前日期 //--------------------…
条件跳转指令的图片,作为以后的参考. 载入了reverses.eve程序,F8下去,发现一个跳转,调用了一个函数,致使程序结束.于是我们绕过它,参考上面的 跳转指令图片. 然后继续F8 又会发现一个跳转,我们需要它跳,不然下面有个无条件跳转,又会进入一个陷阱 继续F8,又会发现一个跳转,我们不要它跳,于是我们根据置顶的图,实现了不跳转. 继续F8, 发现一个跳转,会发现连接了下一个陷阱,我们绕过它,于是就成功了. 然后保存爆破过后的程序 全选修改过的痕迹,生成新的reverses1.exe文件.…
1.限制程序功能函数 EnableMenuItem 允许.禁止或变灰指定的菜单条目EnableWindow 允许或禁止鼠标和键盘控制指定窗口和条目(禁止时菜单变灰) 2.对话框函数 CreateDialog 从资源模板建立一非模态对话窗 CreateDialogParam 从资源模板建立一非模态对话窗 CreateDialogIndirect 从内存模板建立一非模态对话窗 CreateDialogIndirectParam 从内存模板建立一非模态对话窗 DialogBox 从资源模板建立一模态对…
4个断点寄存器DR0~DR3用来设置断点的线性地址. DR6为状态寄存器,DR7为控制寄存器. DR4和DR5保留.当CR4.DE==1时,访问DR4和DR5产生#UD异常:IF CR4.DE==0,访问DR4和DR5将是对DR6和DR7的访问. 下面这张表非常清楚:    |---------------|----------------| Dr0|                 用于一般断点的线性地址                        |---------------|----…
文章整理发布:黑客风云  1.我的os是winXP,无法使用trw2000,而softice装了多次均未成功,还蓝屏死机多次.郁闷. 2.友好的gui界面,不像softice.可以边干活边听歌,不像softice,把整个os都挂起了.多用两次,连时间都不知道了. 3.强大的内存查看功能,再不用什么-d了,而且跳转方便,爽!一目了然. 4.强大的右键菜单功能 菜单: 文件: 1.其中包括该菜单的下部有上次打开的纪录,该纪录保存有上次未清除的断点. 2.附加.对付那些Anti-Debug程序.先运行…
破解程序获得使用权限:       破解思路:其实程序加密或者添加neg窗口都是为了让消费者付出更多的代价来解决这些问题.然而身为一个技术人员是可以靠技术来使这些东西消失的.只要我们找到那些东西出现的地方并且想办法跳过它们就成功了.       OD的两种断点:软件断点.硬件断点.(内存断点属于软件断点,并且每次只能设置一个,设置了另外一个上一个就会自动删除,设置一个内存断点会改变整块(4KB(4千字节))的内存,会明显降低OD的性能,因为OD经常会校对内存)                  …
OD调试学习笔记7—去除未注册版软件的使用次数限制 本节使用的软件链接 (想自己试验下的可以下载) 一:破解的思路 仔细观察一个程序,我们会发现,无论在怎么加密,无论加密哪里,这个程序加密的目的就是需要你掏腰包来获得更多的功能或者解除限制.那么我们就可以逆向的来思考,如果该程序成功的注册后,那么程序的行为必将发生变化,如NAG去除了,如功能限制没有了等等.也就是说,程序的代码的走法也会跟未注册的时候截然不同.因为程序的行为改变了,那么决定它所有行为的代码走法也会发生变化. 二:认识OD的两种断点…
程序: 打开程序 出现一个 NAG 窗口 这是主界面 点击 Exit 程序出现 NAG 窗口,然后退出 用 PEiD 看一下 是用 VC++ 6.0 写的程序 逆向: 用 OD 载入程序 跑一下程序 出现 NAG 窗口时暂停 按 Alt+K 显示调用堆栈 这个是 MFC 的对话框,双击来到它所在的地方 下一个断点,重新跑一下程序 OD 停在了断点处 按 F8 往下走一步 NAG 窗口出现了 过了几秒就往下走了一步了 按 F9 运行 程序又停在了这个断点处 按一下 F8 主窗口出现了 点击 Exi…
程序: 运行程序 点击 Start,它就会进行对系统的扫描 点击 About -> Enter Registration Code 随便输入一下内容,点击 OK,会弹出该弹窗 用 PEiD 看一下 该程序是用 Microsoft Visual C++ 6.0 写的 逆向: 用 OD 载入程序 右键 -> 查找 -> 所有模块间的调用 键盘直接敲 getwindowtext 找到几个 GetWindowTextA,A 为 ASCII 码,W 为 Unicode 右键 -> 在每个调用…
OD 快捷方式 其他窗口 L : log 保存日志信息 E :程序的所有模块的信息(加载基址,大小,OEP,路径) M :程序的内存映射视图 T :线程信息 W :窗口信息 H :句柄表 C :CPU窗口(反汇编窗口) / :补丁信息 K :调用堆栈 B :软件断点列表 R :显示参考(数据引用等) ... : RUN跟踪 S : 源码显示窗口 OD快捷方式 F2:断点 F4: 运行到光标处 F7: 单步 F8: 步过 F9: 运行 Ctrl+A :分析代码(函数,参数...) Ctrl+G :…
1.字体调整(optional) File -> Settings ->Editor->Colors & Fonts -> Size 22 2.打开程序所在文件夹hw5 File -> Open -> hw5所在路径 3.配置Debug/Run的参数 程序正常运行命令为 python train_ac_exploration_f18.py sparse-cheetah-cs285-v1 -ep 150 --discount 0.9 -n 100 -e 3 -l…
又是好长时间没有写博客了,今天我们就来谈一下java程序的断点调试.写这篇主题的主要原因是身边的公司或者个人都执着于做apaas平台,简单来说apaas平台就是一个零代码或者低代码的配置平台,通过配置平台相对快速的配置出web端和移动端的代码.这种系统我15年的时候和一个前端朋友为了方便快速的接外包也做过这种配置平台,做了2年多,后面又在某家公司做了一年多apaas平台,我算是深有体会.首先零代码明显只是适合少儿编程领域的玩具,觉得零代码可以包打所有的人大有人在,个人猜想要么是代码写的不够多,或…
最近想在linux上编译c++代码,自己却一直习惯window上的IDE.以前公司要我写Linux代码的时候,我一般都是用eclipse + CDT,而eclipse这东西吧,我个人感觉因为加载组件太多了,打开非常慢,所以不怎么想用它.后来用了一下vim + cmake 来搞,编译是可以了,调试又有点麻烦.今天在逛CSDN的时候看了一篇帖子说visual studio code 可以编译调试C++,我马上跑去微软的网站找到了  c/c++ for vs code,我就简单记录下编译过程: 一.快…
工具 吾爱破解版本OD.IDA6.8 OD使用-动态分析 OD快捷方式 F2 下断点,也就是指定断点的地址F3加载一个可执行程序,进行调试分析F4程序执行到光标处 F5 缩小.还原当前窗口 F7 单步步入 F8 单步步过 F9 直接运行程序,遇到断点处,程序暂停 Ctrl+F2 重新运行程序到起始处,一般用于重新调试程序 Ctrl+F9 执行到函数返回处,用于跳出函数实现 Alt+F9 执行到用户代码处,用于快速跳出系统函数 Ctrl+G 输入十六进制地址,快速定位到该地址处 +/- 前一个后一…
作者:Fly2015 对于FSG壳.之前没有接触过是第一次接触.这次拿来脱壳的程序仍然是吾爱破解论坛破解培训的作业3的程序.对于这个壳折腾了一会儿,后来还是被搞定了. 1.查壳 首先对该程序(吾爱破解培训第一课作业三.exe)进行查壳: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="&q…
Windows内核分析索引目录:https://www.cnblogs.com/onetrainee/p/11675224.html INT 3 中断调试处理流程 一.调试器如何下INT 3 断点 1)首先,调试器使用 ReadProcessMemory,读取断点内存地址的字节. 2)之后,调试器再使用 WriteProcessMemory,将指定的内存地址指令写为0xCC. 3)之后,当程序执行到这里,遇到CC指令,会从IDT表中查03号段描述符,其会定向到Trap03函数. 4)经过一系列操…
脱壳--修复加密IAT 对两个练手程序进行脱壳修复加密IAT(其实是一个程序,只是用了几种不同的加壳方式) 第一个程序 Aspack.exe 下载链接:https://download.csdn.net/download/weixin_43916597/18372920 分析程序信息 首先先查看这个程序的信息,使用PEiD查看该exe程序 这里可以看出:编译器版本:vc6.0,壳的名称:ASPack 调用OD调试程序 很清晰的看得到程序最开始的OEP是pushad 自然而然就想到了对esp打断点…
企业IT管理员IE11升级指南 系列: [1]—— Internet Explorer 11增强保护模式 (EPM) 介绍 [2]—— Internet Explorer 11 对Adobe Flash的支持 [3]—— IE11 新的GPO设置 [4]—— IE企业模式介绍 [5]—— 不跟踪(DNT)例外 [6]—— Internet Explorer 11面向IT专业人员的常见问题 [7]—— Win7和Win8.1上的IE11功能对比 [8]—— Win7 IE8和Win7 IE11对比…
Tencent的实习生招聘投了简历.然后,万万没想到昨晚腾讯IEG直接给我电话了.当时就惊呆了,我都没有找人内推,就直接电话面试了. 就为昨晚的电话面试写写感想吧!问的挺多的,基本上简历上写了的都问到了,重点还问了很多很多关于OD的问题.桑心,近段时间在准备实习生招聘的事,然后每天都是在看 <算法导论>和<剑指Offer>,在九度oj上刷算法题.谁知腾讯都不按常理出牌,直接电话面试了,笔试都还没开始呢!  /泪 近一个多月没有碰过驱动和OD ,昨晚真的是措手不及.回答的也挺糟吧!回…
一.python老师介绍 二.为什么要学习python? 三.学习python有前途吗? 疗程1:语言基础 疗程2:网络编程 疗程3:web基础开发 疗程4:算法&设计模式 疗程5:python web框架 疗程6:项目实战篇 四.花钱来学python的原因 All growth is a leap in the dark!  所有的成长都是黑暗中的一跃! 五.python发展介绍 六.第一个python程序 在Mac上安装Python 如果你正在使用Mac,系统是OS X 10.8~10.10…
稍稍总结一下在Crack或Rervese中比较常见的一些反调试方法,实现起来也比较简单,之后有写的Demo源码参考,没有太大的难度. ①最简单也是最基础的,Windows提供的API接口:IsDebuggerPresent(),这API实际上就是访问PEB的BeingDebugged标志来判断是否处于调试状态. if (IsDebuggerPresent()) //API接口 { AfxMessageBox(L"检测到调试器"); } else { AfxMessageBox(L&qu…
一.实验内容及步骤 (一)使用JDk编译.运行简单的Java程序 实验步骤如下: 实验截图如下: (二)使用IDEA调试程序 1.设置断点2.单步运行:Step Into(快捷捷F7)和Step Over(快捷捷F8) 这两种单步运行功能在运行语句时没有区别,在执行方法调用语句时,Step Into会跳入方法实现,Step Over会直接执行完方法 3.条件断点 (三)练习 题目2:实现简单四则运算(能支持分数,加减乘除,支持括号),并进行测试(正常情况,异常情况,边界情况). 代码托管 运行截…
异常提示:Validation failed for one or more entities. See 'EntityValidationErrors' property for more details. 出现此异常的时候,我们知道是实体的赋值导致程序抛出异常,可是不知道是实体的哪个字段赋值导致. 尤其是在使用了EF的自动监测实体改变的保存之后. 如何根据爆出的异常对象,得到多的我们需要的信息呢? 1.调试程序.打断点. 2.走到抛出异常的地方 3.选中“ex”或随便选中什么,右键-快速监视…
文章中用到的demo下载地址: http://download.csdn.net/detail/ccnyou/4540254 附件中包含demo以及文章word原稿 用到工具: Ollydbg LordPE ImportREC 这些工具请自行下载准备 Dump原理这里也不多做描述,想要了解google it!常见的dump软件有LordPE,ProcDump,PETools等本文以LordPE为例 首先,打开 LordPE,由于此时机器上只有一个汉化版,也懒得花时间去找原版了.我们打开选项,设置…
目录 北京电子科技学院(BESTI)实验报告 实验名称:实验一 Java开发环境的熟悉 实验内容.步骤与体会: 一.实验一 Java开发环境的熟悉-1 二.实验一 Java开发环境的熟悉-2 步骤: 三.实验一 Java开发环境的熟悉-3 实验过程中遇到的问题以及解决方案 1. 问题:在Linux中无法运行已经编译完成的源文件 解决方案: 2. 问题:阶乘的运算结果不单独运算,而是继续叠加. 解决方案: 3. 问题:阶乘的运算出现负数. 解决方案: 体会 PSP 北京电子科技学院(BESTI)实…
教材学习内容总结 第12章 Lambda语法 Lambda定义 一个不用被绑定到一个标识符上,并且可能被调用的函数. 在只有Lambda表达式的情况下,参数的类型必须写出来,如果有目标类型的话,在编译程序可推断出类型的情况下,就可以不写出Lambda表达式的参数类型. Lambda表达式本身是中性的,不代表任何类型的实例,可用来表示不同目标类型的对象操作. Lambda表达式在平行设计的时候,能够进行并行处理. 第13章: 1.时间 世界时:又称UT时间,借由观测远方星体跨过子午线而得 国际原子…