IDA Pro基本使用

news2024/12/24 0:42:34

IDA Pro基本使用

1.DllMain的地址是什么?

打开默认在的位置1000D02E就是DllMain地址
在这里插入图片描述
空格键可以看到图形化界面选择options、general勾选对应的选项在图像化也能看到
在这里插入图片描述

2.使用Imports 窗口并浏览到 gethostbyname,导入函数定位到什么地址?

这里可以打开Imports 窗口
在这里插入图片描述
默认已经打开 找到对应的函数gethostbyname
在这里插入图片描述

双击进去可以看到对应的地址 idata:100163CC
在这里插入图片描述

3.有多少函数调用了gethostbyname?

点击函数位置快捷键ctrl+x打开 其中type为p的为调用函数一共5个不同函数调用
在这里插入图片描述

4.将精力集中在位于0x10001757处的对 gethostbyname 的调用,你能找出哪个 DNS请求将被触?

按G键跳转到对应的位置0x10001757
在这里插入图片描述

函数调用前将eax参数push进栈,而pics.praticalmalwareanalys是对应的内容
add eax,0dh,是跳过前面[This is RDO]部分,将指针指向pics.praticalmalwareanalys
在这里插入图片描述

5&6.IDA Pro 识别了在 0x10001656处的子过程中的多少个局部变量和参数

跳转到对应位置,往上看,发现一共有23个局部变量,1个参数
在这里插入图片描述

7.使用 Strings 窗口,来在反汇编中定位字符串\cmd.exe /c。它位于哪?

在String窗口找到对应字符串\cmd.exe /c
在这里插入图片描述
双击找到对应的位置为xdoors_d:10095B34
在这里插入图片描述

8.在引用\cmd.exe /c区域内发生了什么

点击上键头可以看到引用的字符串的地方
在这里插入图片描述
往上看发现字符串, 并发现远程shell相关的字符串Remote Shell Session ,说明这个与远程控制相关
在这里插入图片描述
在这里插入图片描述
同时往下看发现一系列的命令相关,还是调用recv函数
在这里插入图片描述

9.在同样的区域,在 0x100101C8 处,看起来好像 dword 1008E5C4是一个全局变量,它帮助决定走哪条路径。那恶意代码是如何设置dword1008E5C4的呢?(提示:使用dword 1808E5C4的交叉引用)

按住G找到对应位置

在这里插入图片描述
双击进入,使用ctrl+x交叉引用找到影响这个全局变量的位置
在这里插入图片描述
进入,发现受eax变量影响,其中eax又是 call sub_10003695返回值
在这里插入图片描述
点击进入函数,发现这个函数调用的是GetVersionExA函数,然后验证平台是否是win32平台并返回
在这里插入图片描述

10.在位于0x1000FF58处的子过程中的几百行指令中,一系列使用memcmp 来比较字符串的比较。如果对robotwork的字符串比较是成功的(当memcmp返回0),会发生什么?

当memcmp返回0调用call函数

访问注册表相应的位置
在这里插入图片描述

并将对应位置的东西通过send函数发送出去
在这里插入图片描述

11.PSLIST 导出函数做了什么?

主要是获取进程列表并进行下一步操纵。
在这里插入图片描述
在图像化界面分析,
在这里插入图片描述
进入到call sub_100036C3函数
获取版本信息并判断是否是win32平台
在这里插入图片描述
查看当前版本是vista以上,大于5是以上版本
在这里插入图片描述
继续分析左边分支
在这里插入图片描述
发现调用CreateToolhelp32Snapshot,获取系统进程或线程列表
在这里插入图片描述

12.使用图模式来绘制出对sub10004E79的交叉引用图。当进入这个函数时,哪个API函数可能被调用?仅仅基于这些API函数,你会如何重命名这个函数?

双击函数,然后选择图,交叉引用图
在这里插入图片描述
主要调用获取操作系统信息并发送走
在这里插入图片描述
右键编辑实现给函数改名
在这里插入图片描述

13.D1lMain 直接调用了多少个 Windows API?多少个在深度为2时被调用?

和上一步一样,不过深度改为2,可以看到具体调用
在这里插入图片描述
在这里插入图片描述

14.在0x10001358处,有一个对Sleep(一个使用一个包含要睡眠的毫秒数的参数的API函数)的调用。顺着代码向后看,如果这段代码执行,这个程序会睡眠多久?

跳转到sleep函数位置
在这里插入图片描述
eax值影响,首先获取30然后乘以1000最后是30000ms,也就是30s
在这里插入图片描述

15.在0x10001701处是一个对socket的调用。它的3个参数是什么?

对应三个参数
在这里插入图片描述

16.使用MSDN页面的socket和IDAPro中的命名符号常量,你能使参数更加有意义吗?在你应用了修改以后,参数是什么?

选中对应的数字,选择如下方式。
在这里插入图片描述

在这里插入图片描述

17.搜索in指令(opcode 8xED)的使用。这个指令和一个魔术字符串 VXh 用来进行 VMware 检测。这在这个恶意代码中被使用了吗?使用对执行in指令函数的交叉引用,能发现进一步检测VMware 的证据吗?

![!](https://i-blog.csdnimg.cn/direct/89c8489ea0ba428298a182a882c9fb7a.png)
找到对应in语句
在这里插入图片描述
点击进入
在这里插入图片描述
将eax值转化为可以理解的字符串,发现VMXH相关字符
在这里插入图片描述
按空格找到对应函数
在这里插入图片描述
使用ctrl+x找到交叉引用
在这里插入图片描述
进入到函数,发现有对虚拟机进行检测,如果检测到就不安装
在这里插入图片描述

18.将你的光标跳转到0x1001D988处,你发现了什么?

发现一连串乱码数字
在这里插入图片描述

19.如果你安装了IDA Python插件(包括IDAPro的商业版本的插件),运行Lab05-01.py,一个本书中随恶意代码提供的IDA ProPython脚本,(确定光标是在0x1001D988处。)在你运行这个脚本后发生了什么?

编写脚本decoded.idc内容如下:

#include <idc.idc>

static main()
{
    auto ea =ScreenEA(),b,i,decoded_byte;
    for (i=0x0;i<0x50;i++)
    {
        b=Byte(ea+i); 
        decoded_byte = b ^ 0x55;
        PatchByte(ea+i,decoded_byte);
    }
}

将光标放在如下位置:
在这里插入图片描述
选择file --> script file -->选择对应文件
在这里插入图片描述
运行后字符串被转码
在这里插入图片描述

20.将光标放在同一位置,你如何将这个数据转成一个单一的ASCI 字符串?

通过键盘A键
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2167705.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2024 Python3.10 系统入门+进阶(十六):正则表达式

目录 一、认识正则表达式二、正则表达式基本语法2.1 行界定符2.2 单词定界符2.3 字符类2.4 选择符2.5 范围符2.6 排除符2.7 限定符2.8 任意字符2.9 转义字符2.10 反斜杠2.11 小括号2.11.1 定义独立单元2.11.2 分组 2.12 反向引用2.13 特殊构造2.14 匹配模式 三、re模块3.1 comp…

文件防泄密措施有哪些?教你10个权威方法,有效防止文件泄密!【聚焦职场安全】

【聚焦职场安全】数字化办公&#xff0c;文件防泄密已成为企业不可忽视的重要环节。 文件泄密不仅会导致企业核心竞争力的丧失&#xff0c;还可能引发法律纠纷和经济损失。 接下来&#xff0c;我将为您揭晓10个权威且实用的文件防泄密措施&#xff0c;这些方法简单易行&#…

斯坦福STANFORD RESEARCH SR860 DSP 锁相放大器SR830

斯坦福研究 SR860 具有无与伦比的模拟性能、先进的新型数字信号处理功能、完全现代、直观的用户界面以及广泛的计算机连接选项&#xff0c;是任何同步检测应用的理想选择。从消除开关模式噪声的重型环形变压器到将锁定功能带入手机的 iOS 连接&#xff0c;再到可消除更多噪声并…

DrawDB本地Windows环境部署结合内网穿透远程设计数据库

文章目录 前言1. Windows本地部署DrawDB2. 安装Cpolar内网穿透3. 实现公网访问DrawDB4. 固定DrawDB公网地址 前言 我们在开发项目时很多时候都会使用到数据库&#xff0c;所以选择一个好用的数据库设计工具会让工作效率翻倍。在当今数字化时代&#xff0c;数据库管理是许多企业…

超全攻略,教你验证第三方电子合同平台的真伪

不了解电子合同不用担心&#xff0c;通过本篇文章&#xff0c;您可以深入了解电子合同以及第三方平台有效性。 如何辨别第三方电子合同平台的真伪&#xff0c;可以从合法性、技术安全、平台、功能、服务等几个方面入手&#xff1a; 1.合法性方面&#xff1a; 资质认证&#…

Azure Kinect 人体跟踪关节

Azure Kinect 人体跟踪关节 azure kinect dk 提取人体骨骼 要在Azure Kinect DK上提取人体骨骼&#xff0c;你需要使用Azure Kinect SDK和OpenPose库。以下是一个简化的代码示例&#xff0c;展示如何集成这两个库来提取骨骼关键点&#xff1a; 首先&#xff0c;确保你已经安装…

linux 下域名解析错误

本文参考这里 作者&#xff1a;程序那点事儿 日期&#xff1a;2024/01/31 16:25 ping raw.githubusercontent.com&#xff0c;ping这个域名时&#xff0c;发现返回的是本地ip 原因是&#xff0c;配置了本地网关地址 192.168.xx.1 用命令查看默认网卡的网关&#xff1a;nmcli …

刷题训练之队列与宽搜

> 作者&#xff1a;დ旧言~ > 座右铭&#xff1a;松树千年终是朽&#xff0c;槿花一日自为荣。 > 目标&#xff1a;熟练掌握字符串算法。 > 毒鸡汤&#xff1a;学习&#xff0c;学习&#xff0c;再学习 ! 学&#xff0c;然后知不足。 > 专栏选自&#xff1a;刷题…

【PyTorch实战·1】多模态图片生成(文心一言大模型)

&#x1f308; 个人主页&#xff1a;十二月的猫-CSDN博客 &#x1f525; 系列专栏&#xff1a;PyTorch实战_十二月的猫的博客-CSDN博客 &#x1f4aa;&#x1f3fb; 十二月的寒冬阻挡不了春天的脚步&#xff0c;十二点的黑夜遮蔽不住黎明的曙光 &#x1f3c0; 专栏持续更新中~…

信安 实验1 用Wireshark分析典型TCP/IP体系中的协议

实验1 用Wireshark分析典型TCP/IP体系中的协议 实验目的 通过Wireshark软件分析典型网络协议数据包&#xff0c;理解典型协议格式和存在的问题&#xff0c;为后续学习和相关实验打下基础。 实验内容 &#xff08;1&#xff09;安装Wireshark&#xff0c;熟悉功能菜单。 &…

「空间智能」跨越维度壁垒 - 构筑AI驱动的XR元宇宙

引言 在AI和XR技术快速融合的背景下&#xff0c;一场由「空间智能」&#xff08;Spatial Intelligence&#xff09;引领的革命正在悄然展开&#xff0c;为元宇宙的发展注入新的动力。这场革命的核心推动者之一&#xff0c;是由"AI教母"李飞飞领导的World Labs。Wor…

Diffusers Image Outpaint - AI一键扩图工具 本地整合包下载

Diffusers Image Outpaint 是一个基于扩散模型的图像外延技术&#xff0c;它能够根据已有的图像内容&#xff0c;生成图像的额外部分。 它通过先进的机器学习算法&#xff0c;使得图像生成更加自然和逼真&#xff0c;为用户提供了一种创新的图像处理方式。该工具基于Realvist V…

【linux-Day5】Linux权限

【linux-Day5】Linux权限 linux用户用户分类su&#xff1a;用户之间进行切换exit/ctrld&#xff1a;退出当前账户/回退到上一个登录账户 权限和文件sudo&#xff1a;暂时提高用户对指令操作的权限Linux权限身份目标文件属性文件的权限表示修改文件的权限chmod&#xff1a;设置文…

高级自动化测试常见面试题(Web、App、接口)

一、Web自动化测试 1.Selenium中hidden或者是display &#xff1d; none的元素是否可以定位到&#xff1f; 不能,可以写JavaScript将标签中的hidden先改为0&#xff0c;再定位元素 2.Selenium中如何保证操作元素的成功率&#xff1f;也就是说如何保证我点击的元素一定是可以…

黄子恒的传奇故事

从社会小白到传奇人物&#xff0c;需要经过怎样的历练过程&#xff1f;每一份成功与辉煌都并非偶然&#xff0c;只有经过千百次的锤炼&#xff0c;才能如钢铁般更硬更强。我们的主人公——黄子恒&#xff0c;正是通过不断奋斗逆袭&#xff0c;蜕变成如今的演讲家&#xff0c;用…

Arduino中读取陀螺仪MPU6050六轴数据——三个加速度、三个角速度

1、工程创建 创建和添加I2C、MPU6050的.CPP、.h文件。 &#xff08;1&#xff09;功能和测试 &#xff08;2&#xff09;主程序代码 #include "MsTimer2.h" #include "KalmanFilter.h" #include "I2Cdev.h" #include "MPU6050.h" //…

kubernetes K8S 结合 Istio 实现流量治理

目录 1.Istio介绍&#xff1f; 1.1 Istio是什么&#xff1f; 1.2 Istio流量管理 1.2.1 熔断 1.2.2 超时 1.2.3 重试 2.Istio架构 3.istio组件详解 3.1 Pilot 3.2 Envoy 3.3 Citadel 3.4 Galley 3.5 Ingressgateway 3.5 egressgateway 扩展、k8s1.23及1.23以下版…

双卫星终端首发!遨游通讯织密天地一体应急通信网

2024年9月&#xff0c;全球通信行业的目光再次聚焦于北京&#xff0c;2024年中国国际信息通信展览会如期而至。展会次日&#xff0c;遨游通讯展台前热闹非凡&#xff0c;观众们纷纷驻足体验&#xff0c;对5G防爆手机、防爆车载台、PDT多模终端、DMR多模终端、卫星通信终端、单北…

【CAS框架自定义登录异常提示-固定时间内限制登录失败次数提醒】

CAS框架自定义登录异常提示 CAS框架自定义登录异常提示cas自定义异常自定义异常的步骤-三步走1定义自定义异常类2配置文件配置3逻辑代码中抛出自定义异常总结 自定义异常显示失败问题查找 自定义异常带msg参数不显示问题处理最后 CAS框架自定义登录异常提示 本地CAS框架异常提…

MySQL数据库进阶知识(四)《视图、存储过程、触发器》

学习目标&#xff1a; 掌握数据库视图基础知识 掌握数据库存储过程原理 掌握数据库触发器相关知识 学习内容&#xff1a; 一. 视图 介绍 视图&#xff08;View&#xff09;是一种虚拟存在的表。视图中的数据并不在数据库中实际存在&#xff0c;行和列数据来自定义视图的查询…