首页 > 其他分享 >【加密与解密】第三章⑥

【加密与解密】第三章⑥

时间:2023-01-09 13:57:55浏览次数:31  
标签:第三章 Windows 解密 加密 调试器 断点 远程 调试 IDA

IDA调试器

IDA支持调试器功能,弥补了静态分析能力的不足。

1.加载目标文件

在Debugger-select debugger中可以根据当前文件类型选择调试器类型,如图所示

选择win32 debugger,就可以打开本机模式调试目标软件了。也如同以前讲的,还有另外一种调试方式,就是附加到另外一个正在运行的进程上,能否用IDA调试器附加进程的方式,取决于目前IDA是否打开了可执行文件。

如果没有数据库被打开会出现另一种不同的形式,如图

可以打开Debugger-attach-local windows debugger打开附加进程窗口如图

IDA除了本地调试还可以进行远程调试。

2.调试器界面


左侧为反汇编窗口。右上方为通用寄存器窗口,右下方为栈窗口。

3.调试跟踪

跟踪所调试目标进程的行为是调试器的基本功能。debugger菜单提供了相应的调试命令,并且各有快捷键。

4.断点

这也使调试器的必备功能。步骤如下

IDA也支持条件断点。步骤如下

condition设置框的表达式就是条件。

5.跟踪

类似ODG的run trace功能。将调试程序执行过程中的事件记录下来。跟踪分为两类,一类是指令跟踪,一类是函数跟踪。

6.监视窗口

因为在调试中需要监视变量中值的变化。所以要用IDA的监视功能。监视的对象是数据,监视点一般设置在栈或者数据区块中。示例如下

双击asc_407068来到数据区块,执行add watch命令,设置一个监视点。

7.自动化调试

在调试器中之前的脚本和插件依然可以发挥作用。可以通过编写IDC脚本和插件来控制调试器,例如启动调试器,执行复杂的断点条件,采取措施破坏反调试的技巧。
基本的脚本函数可以设置,修改和枚举断点,读取和写入寄存器与内存的值。
使用脚本控制调试器的基本方法是启动一个调试器操作,等待相应的调试器事件代码。调试扩展函数列举如下。

远程调试

IDApro支持了TCPIP网络对于应用程序的远程调试,例如远程调试Windows,Linux,Android,MACOSX二进制文件。ida附带了用于实现远程调试会话的服务器组件
在远程调试之前,要在远程计算机上启动相应的测试服务器组件,他会处理所有底层执行和调试器操作

1.Windows平台

将Windows本机作为调试器客户端,在其上运行VMware虚拟机上的WindowsXP并将其作为调试器服务器,将被调试的目标文件reverseme复制到Windows本机中,同时将win32_remote复制到调试器服务端的Windowsxp中,执行。

在调试器客户端运行IDA主程序,执行远程调试命令,在打开的调试选项窗口设定服务器ip地址,端口等等。

设置完成就可以开始远程调试了、

2.Linux平台

将IDA安装目录下的linux和被调试的目标软件main上传到linux机器中,放在/home目录下。

因为目标文件是linux程序,所以要在Windows运行ida pro。

3.Android平台

标签:第三章,Windows,解密,加密,调试器,断点,远程,调试,IDA
From: https://www.cnblogs.com/Corax0o0/p/17036802.html

相关文章

  • stunnel加密通道使用实践
    今天用了半天的时间把内网与外网服务器代理加密通道调通了。以后就可以以外网服务器的IP地址来访问网站了。下边是今天架设通道的经验总结,stunnel服务器端安装及设置我的服......
  • jar包简单加密———第二章:xjar
    仓库源码:[XJar]  https://github.com/core-lib/xjar第一种方法:1、pom配置<!--设置jitpack.io插件仓库--><pluginRepositories><pluginRepository......
  • C#-XML文件及字符串的加密解密代码
    先看XML文件的加解密,例如在桌面有个Student.xml文档,包含学生信息,需进行加密处理:开始代码,添加命名空间引用:usingSystem.Security.Cryptography;usingSystem.Security.......
  • 【加密与解密】第三章⑤
    FLIRT这是一项用于库文件快速识别与鉴定技术。可以使IDA在一系列编译器的标准库文件中自动找出调用的函数。1.应用FLIRT签名一般反汇编软件对于各种开发库无能为力,只能......
  • 加解密与HTTPS(6)
    您好,我是湘王,这是我的51CTO博客,欢迎您来,欢迎您再来~随着成本的下降,主流网站都已经开始使用HTTPS了。但有了可信机构颁发的证书,网站就真的绝对安全了吗?以之前出现过的上大学被......
  • 加解密与HTTPS(6)
    您好,我是湘王,这是我的博客园,欢迎您来,欢迎您再来~   随着成本的下降,主流网站都已经开始使用HTTPS了。但有了可信机构颁发的证书,网站就真的绝对安全了吗?以之前出现过......
  • DevOps实战系列【第三章】:详解Maven仓库及环境搭建
    个人亲自录制全套DevOps系列实战教程:​​手把手教你玩转DevOps全栈技术​​Maven私有仓库,就不多说了,我们这里选用最新的Nexus3的3.17版本,平时公司使用的都是Nexus2.x,新的......
  • 机器学习 吴恩达 第三章 笔记
    三、线性代数回顾(LinearAlgebraReview)3.1矩阵与向量  矩阵的维数=矩阵的行数\(\times\)矩阵的列数  有时会用R表示矩阵,而\(R^{4\times2}\)表示所有4$\t......
  • Golang入门到实战核心编程-第三章-变量
    目录1.Golang数据类型分类2.数据类型的默认值3.数据类型及大小3.1查看变量的数据类型3.2查看变量占用字节大小4.数据类型介绍4.1整数类型4.1.1整型各个类型对比4.1......
  • 【加密与解密】第三章④
    数组IDA有较强的数组聚合能力,可以将一串数据声明变成一个反汇编行,按数组的形式显示。例子如下其中407030h指向一个数组,以下是未识别的数组。我们可以通过打开数组排列......