【记录】IDA|IDA设置text view为默认,并解决IDA7.6打开新固件卡顿的问题
版本:IDA Pro 7.6
Graph View(控制流视图)其实我真的看得很少,因为遇到分析难题时总是是因为间接调用,它根本分析不出来。但是一开IDA它就自动分析这个特别卡。所以今天想彻底解决一下,让默认打开为Text View。
注:后来发现卡顿不是分析控制流视图的分析造成的。
网上找了一下没找到,问了一下GPT,记一下这个过程。
设置Text View为默认
在IDA (Interactive Disassembler) 中,默认情况下打开一个新的二进制文件时,IDA 通常会展示其“控制流图”(Graph View)。如果你希望IDA在打开之后默认显示“文本视图”(Text View)而不是“控制流图”,你可以尝试以下方法:
打开IDA的“Options”菜单,选择“General…”。

在“General”设置中,找到启动或布局相关的选项。

修改默认视图设置,将其从“Graph View”更改为“Text View”或“IDA View-A”。【实际操作是禁用某个选项】

确认更改并重新启动IDA。
然后我发现它虽然确实是Text View了但是一打开它还是很卡,而且转成Graph View很迅速,说明它可能还是对Graph View进行了分析。我希望直接关掉这个分析。
解决IDA打开新固件卡顿的问题
于是我问GPT,它让我看看打开的时候的选项,我发现打开时它有个“Analysis-Enable”的选项:

我把这个选项关掉之后打开新固件的速度快了很多。
但是经过我的测试我发现这个关掉或者开启不会影响转成Graph View的速度,说明打开新固件卡顿的原因根本就不是这个分析过程。
于是,我把Analysis打开了并观察了一下它到底是什么这么耗时:
根据对输出的观察(如下图),发现是分析的时候,IDA会自动连接网络对function信息进行进一步的解析,而可能是因为我用的版本是绿色版没有联网功能,或者我的网络不好,或者远端没有ARM的资料库,什么原因都有可能,总之就是无响应了。

GPT:这个日志指出的卡顿可能是由于IDA尝试连接到其Lumina服务器来获取已知库的信息,但是连接失败了。Lumina是Hex-Rays提供的一项服务,旨在通过网络共享和检索函数信息来增强IDA的功能。如果你在分析时不需要这项服务,或者连接Lumina服务时遇到问题,可以选择关闭这个功能来避免启动时的延迟。
我发现这个功能就在IDA的菜单栏,于是我直接上网查了一下,查到有CSDN博客这样说:
二进制静态分析—库函数识别:lumina(ida>7.2,有一定效果),ida7.2新推出的功能,类似finger。ida官方出了一个符号识别服务器。但是正版太贵了,买不起。山寨lumina安装:具体参数参考https://lumen.abda.nl/cert
我根据https://lumen.abda.nl/cert的教程去修改了我的配置,才发现我的配置竟然本来就是改好的!只是端口不一样(说明是之前的破解大佬自己改的)。
IDA < 8.0修改的具体方式是:
1. 修改{IDA_HOME}\cfg\ida.cfg
LUMINA_HOST = "lumen.abda.nl"; // This semicolon is important!
LUMINA_PORT = 1235
2.安装签名文件:下载hexrays.crt(https://abda.nl/lumen/hexrays.crt)放到IDA根目录,重启IDA即可
lumen(就是lumina的山寨版)是这么解释:
lumen.abda.nl 的原始证书已于 2021 年 10 月 2 日到期。 因此,颁发了有效期为 5 年的新证书,端口已从 1234 更改为 1235。
更新后这个功能就能正常使用了,也可以看到一些元数据:


解决了这个问题之后,虽然它分析数据还是会卡顿一下,但是没之前卡得久了。感觉还好。
【记录】IDA|IDA设置text view为默认,并解决IDA7.6打开新固件卡顿的问题的更多相关文章
- pycharm 设置py文件的默认模版头部信息
pycharm 设置py文件的默认模版头部信息,打开设置settings 进入File->settings->Editor->File and Code Templates-> ...
- winform中的ComboBox同时设置text和value的方法
winform中的ComboBox不能像webform中的dropdownlist控件一样,在属性中可以同时设置text和value值,可以通过编写一个新类来实现这个功能. 1.首先在form1中添加 ...
- 不能设置sublime text 2 为默认编辑器
今天遇到一个有趣的事情,当我设置 css 样式表的默认打开方式的时候,却始终无法设置成功,系统总是随机选取一种打开方式来打开文件.比如:pdf.DW.txt等方式. 我设置默认打开方式的步骤如下: 1 ...
- mysql设置text字段为not null,并且没有默认值,插入报错:doesn't have a default value
一.问题描述 在往数据库写入数据的时候,报错: '字段名' doesn't have a default value 本来这个错误是经常见到的,无非就是字段没有设置默认值造成的.奇怪的是,我这边报错的 ...
- 一行代码轻松修改 Text Field 和 Text View 的光标颜色 — By 昉
众所周知,Text Field 和 Text View 的光标颜色默认都是系统应用的那种蓝色,如图: 而在实际开发中为了让视觉效果更统一,我们可能会想把那光标的颜色设置成和界面色调一致的颜色.其实在 ...
- 查看特定View的默认属性值
当我在分析focus.touch事件处理代码时发现,有些属性对代码的逻辑有非常重要的影响,比如clickable.focusable 这些属性.这时我们自然而然的想到,那么这些属性的默认值是什么呢?在 ...
- 纯 JS 设置文本框的默认提示
HTML5 中有个新特性叫 placeholder,一般用它来描述输入字段的预期值,适用于 text.search.password 等类型的 input 以及 textarea.示例如下: < ...
- input文本框设置和移除默认值
input文本框设置和移除默认值 这里想实现的效果是:设置和移除文本框默认值,如下图鼠标放到文本框中的时候,灰字消失. 1.可以用简单的方式,就是给input文本框加上onfocus属性,如下代码: ...
- MySQL设置当前时间为默认值的方法
方法一.是用alert table语句: 复制代码代码如下: use test_db1; create table test_ta1( id mediumint(8) unsigned not nul ...
- Apache日志不记录图片文件设置方法和来源日志的配置
Apache日志不记录图片文件设置方法 <FilesMatch "\.(ico|gif|jpg|swf)">SetEnv IMAG 1</FilesMatch&g ...
随机推荐
- vue-element-template实现顶部菜单栏
一.框架侧边栏改为顶部导航栏 1.复制src/layout/componets/Sidebar所有文件至同级目录,改名为Headbar 2.src/layout/components/index.js ...
- 图解MySQL【日志】——Binlog
Binlog(Binary Log,归档日志) 为什么需要 Binlog? Binlog 是 MySQL 中的二进制日志,用于记录数据库的所有写操作(INSERT.UPDATE.DELETE 等) 1 ...
- vue element 动态增加表单并进行表单验证
表单验证:需要注意的一点是: 普通表单验证单项依靠的是prop-而动态生成的表单要用:prop 书写的语法是:prop="'moreNotifyObject.' + index +'.not ...
- 离线安装Docker社区版详细教程
Docker是一个开源的应用容器引擎,使得开发者可以打包应用以及依赖包到一个轻量级的.可移植的容器中,然后发布到任何支持Docker的平台上.本文将详细介绍如何在离线环境下安装Docker社区版. 1 ...
- 基于 Trae Claude-3.7 从0到1 打造加密货币钱包Dompet-App
从0到1:用Trae Claude-3.7打造加密货币钱包Dompet-App 项目介绍 大家好!今天我要分享如何使用强大的AI助手Trae Claude-3.7,从零开始构建一款功能丰富的加密货币钱 ...
- 码云git笔记
以后要日常使用这个东西,所以今天又学习了下,具体链接如下: 码云帮助中心https://gitee.com/help/articles/4122 先记录一点简单的入门东西: Git 全局设置: git ...
- 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
概述 先看下面的图片,我们去旅游选择出行模式有很多种,可以骑自行车.可以坐汽车.可以坐火车.可以坐飞机. 作为一个程序猿,开发需要选择一款开发工具,当然可以进行代码开发的工具有很多,可以选择Idea进 ...
- MySql 主从(备)部署 | 冷备份
前言 MySQL 主从复制(Master-Slave Replication)是一种常见的数据库架构设计,用于提高数据可用性.实现读写分离以及支持备份策略.冷备份是指在数据库关闭状态下进行的数据备份方 ...
- Windows 提权-服务_未引用的服务路径
本文通过 Google 翻译 Unquoted Service Paths – Windows Privilege Escalation 这篇文章所产生,本人仅是对机器翻译中部分表达别扭的字词进行了校 ...
- maven为什么发生依赖冲突?怎么解决依赖冲突?
maven为什么发生依赖冲突?怎么解决依赖冲突? 我们在开发的时候,偶尔会遇到依赖冲突的时候,一般都是NoClassDefFoundError.ClassNotFoundException.NoSuc ...
