IDA Pro > IDA Pro教程 > 技术问题 > IDA Pro环境变量(Environment variables)

IDA Pro环境变量(Environment variables)

发布时间:2022-10-14 17: 13: 24

  The following environment variables are used by IDA:

 TMP or TEMP Specifies the directory where the temporary files will

 be created.

 Default:C:\TEMP

 EDITOR The name of the preferred text editor.

 IDALOG Specifies the name of the log file.Everything appearing

 in the message window will be dumped there.

 Default:none

 IDALOG_SILENT Suppress all output to the message window.

 If the IDALOG variable is set,messages will continue to

 be written to the log file.Otherwise,they will be lost.

 IDADIR Specifies the IDA directory.

 Default:the directory where IDA executable is located

 IDA_LOADALL The selected loader will load all segments without asking

 IDAUSR Specifies the directory for user-specific settings.

 Default:Windows:%APPDATA%/Hex-Rays/IDA Pro

 Linux:$HOME/.idapro

 Mac OS X:$HOME/.idapro

 This variable can contain multiple paths,in which case they must

 be separated by the platform's path separator character(i.e.,';'

 on Windows,and':'on Linux&Mac OS X.)

 NOTE:Using%IDAUSR%for loading plugins.

 %IDAUSR%will be considered when scanning for plugins:for

 each directory component of%IDAUSR%,IDA will iterate on

 files in its"plugins"subdirectory,in alphabetical order.

 Plugins with the same case-insensitive file name(without

 extension)are considered to be duplicates and are ignored;

 only the first plugin with a given name will be considered.

 Thus,let's say%IDAUSR%is set to"C:\my_idausr",and a file

 "C:\my_idausr\plugins\DWARF.py"exists,then

 "C:\my_idausr\plugins\DWARF.py"will be picked up first while

 "%IDADIR%\plugins\dwarf.dll"will be considered conflicting,

 and thus ignored.

 In addition,in each directory,IDA first looks for plugins

 with the native extension(e.g.,".dll"on Windows)and only

 then looks for files with extensions corresponding to

 extension languages(e.g.,".idc",".py",...)

 Consequently if two files,say"foo.dll"and"foo.py",are

 present in the same directory,"foo.dll"will be picked first,

 and"foo.py"will be considered conflicting,and thus ignored.

 NOTE:Using%IDAUSR%for overriding configuration.

 %IDAUSR%will be considered when looking for configuration

 files,after the config file found in%IDADIR%\cfg has been

 read.

 After%IDADIR%\cfg\has been read&applied,for

 each directory component of%IDAUSR%,IDA will look for

 cfg/in it,and,if found,read&apply its

 contents as well.

 This enables users to have their own small,fine-tuned

 configuration files containing just the bits they wanted to

 override,stored in one(or more)folder(s)of their choosing.

 NOTE:Using%IDAUSR%for specifying themes

 %IDAUSR%will be considered when scanning for themes:for

 each directory component of%IDAUSR%,IDA will iterate on

 subdirectories in its"themes"subdirectory.

 NOTE:Using%IDAUSR%for providing additional loaders,processor

 modules,.til files,.sig and.ids files

 %IDAUSR%will also be considered when building the list of

 existing loaders,processor modules,.til,.sig and.ids files.

 The following directories will be inspected:

 %IDAUSR%\loaders

 %IDAUSR%\procs

 %IDAUSR%\til\

 %IDAUSR%\sig\

 %IDAUSR%\ids\

 IDA_MINIDUMP(Windows only)If IDA crashes,it creates a minidump file with

 the MiniDumpWrite().Use this environment variable to specify

 MiniDump flags(a combination of MINIDUMP_TYPE flags as a

 hexadecimal number).

 If set to"NO",IDA will not write a dump.

 IDA_MDMP_INIT(Windows only)Let IDA load dbghlp.dll on startup so it is

 used for crash dump file generation in case of a crash.If

 not set,IDA will load dbghlp.dll dynamically(if needed).

 Using this option may cause the Windbg debugger plugin to

 malfunction in case its dbghlp.dll does not match the one

 loaded by IDA.

 IDA_NOEH If set,disable IDA's own exception handler and let all

 possible crashes to be handled by the OS or active debugger.

 It is useful if you're debugging a crash in a plugin or

 processor module.

 IDAIDS Specifies the directory with the IDS files.

 Default:%IDADIR%\IDS

 IDASGN Specifies the directory with the SIG files.

 Default:%IDADIR%\SIG

 IDATIL Specifies the directory with the TIL files.

 Default:%IDADIR%\TIL

 IDAIDC Specifies the directory with the IDC files.

 Default:%IDADIR%\IDC

 IDA_LIBC_PATH Useful only on Android remote host.Specifies the exact

 path to the system libc.so

 IDA_SKIP_SYMS Useful only on Linux host.Turns off loading of

 exported symbols for the main executable file at the start

 of a debugging session

 IDA_NONAMES Disables the name resolution

 IDA_NO_HISTORY Disables updating file history

 IDA_NORELOC Disables processing of the relocation information

 for some file formats

 IDA_NOEXP Disables processing of the export information

 for some file formats

 IDA_NOTLS Disables processing of the TLS entries for some file formats

 H8_NOSIZER Disables the display of the operand sizes for H8 module

 IDA_LOADALL Load all segments of the input file without futher

 confirmations

 IDA_DEBUGBREAKPROCESS(Windows only)IDA debugger will use the

 DebugBreakProcess()API to break into the process.Otherwise

 it will instead attempt to set temporary breakpoints for

 all threads.

 IDA_NO_REBASE IDA Debugger will not rebase the program when debugging.

 (This will be in effect even if the debugger plugin implements

 the rebase_if_required_to callback)

 IDABXPATHMAP Variables related to the Bochs debugger.

 IDABXENVMAP See plugins/bochs/startup.*for more details.

 IDA_NOWIN(Text MS Windows version only)

 Bypass the code trying to find out the foreground window.

 This code causes problems under WINE.

 IDA_DONT_SWITCH_SCREENS

 (text version only)

 Tells IDA to keep only one screen even during local

 debugging sessions.For local debugging sessions,

 IDA keeps by default one screen for the

 debugged application and one screen for itself.

 IDA_NOAUTOCOMP Do not autodetect compiler for name demangling.

 If this variable is absent and the current compiler

 is one of MS,Borland and Watcom,the compiler

 is autodetected.

 IDA_ELF_PATCH_MODE Overrides patch mode for the new ELF files.

 If this variable is defined,it must contain a number.

 Each bit of this number corresponds to an option from the

 following list:

 0:Replace PIC form of'Procedure Linkage Table'to non PIC form

 1:Direct jumping from PLT(without GOT)regardless of its form

 2:Convert PIC form of loading'_GLOBAL_OFFSET_TABLE_[]'of address

 3:Obliterate auxiliary bytes in PLT&GOT for'final autoanalysis'

 4:Natural form of PIC GOT address loading in relocatable file

 5:Unpatched form of PIC GOT references in relocatable file

 6:Mark'allocated'objects as library-objects(MIPS only)

 IDA_DYLD_SHARED_CACHE_SLIDE Mach-O loader:specify the dyld shared

 cache image ASLR slide value(hexadecimal)or

 'search'for automatic detection.

 If not set,slide is assumed to be 0(unslid image).

 The following variables are used to fine-tune the Linux version of IDA:

 TVLOG the name of the log-file

 if it is not defined,use syslog with LOG_WARNING priority

 TERM the terminal definition(see terminfo)

 TVHEADLESS disable all output(for i/o redirection)

 if this variable defined,the TVOPT variable is ignored

 This environment variable also works also in graphical versions of

 IDA.When set,the graphical interface will not restore desktops,

 toolbars or show the main window.

 TVOPT the enduser flags.Has many subfields delimited by commas','.

 noX11-when libX11.so is not compatible

 noGPM-when libgpm.so is not compatible

 ansi-

 OR

 mono-when the terminfo data of your display does not declare

 it as having the ANSI-color support

 ign8-ignore'8bit as meta key'in the terminfo description

 xtrack-if your xterm-emulator in telnet client does not support

 mode 1002(only 1000),set this flag

 alt866-do not encode pseudographic symbols(for the console with

 alt-font loaded)

 cyrcvt=-cyrilic conversion(oem/koi8r).

 possible values are:

 linux-for linux russian users and PuTTY(in/out koi8r)

 kwin-output in koi8 and input in cp1251-any telnet

 windows-for many telnet and any linux users(in/out 1251)

 Client name|Terminal|TVOPT|Client settings

 ------------|------------|--------|---------------------------------------

 |||

 SecureCRT|xterm-scokey|xtrack|Emulation->Terminal:xterm,

 |||Emulation->keyboard:either the

 |||built-in keyboard,either custom

 |||'xt-sco.key'file

 |||Advanced->Terminaltype:xterm-scokey

 |||

 SecureCRT|xterm|xtrack|Emulation->Terminal:xterm+internal kbd

 |||

 |||

 Putty|xterm-scokey|-|Terminal,Keyboard:Control?,Standard,

 |||SCO,Normal,Normal

 |||

 Putty|xterm|-|Terminal,Keyboard:ControlH,Standard,

 |||~num,Normal,Normal

 |||

 Console|linux|-|default

 |||

 X11:xterm|xterm|-|default

 We recommend to use the'xterm-scokey'terminal type for remote clients.

 When the terminal type is xterm-scokey,add the following string

 to/etc/inputrc(or to~/.inputrc):

 "\e[.":delete char

 When working on the console without GPM installed,append"noGPM"to TVOPT.

 Russian users should append the following settings to the above:

 |APPEND TO TVOPT|APPEND TO Client Settings

 -----------------|---------------------|----------------------------

 Console|alt866,cyrcvt=linux|

 ||

 X11|cyrcvt=linux|

 ||

 Putty|cyrcvt=linux|Window,Translation:use font in

 ||both ANSI and OEM modes

 ||

 SecureCRT||

 with koi8font||

 and kbd-hook|cyrcvt=linux|

 with koi8font|cyrcvt=kwin|

 with ANSI-font|cyrcvt=windows|

 ||

 The best settings for russian users on the console are:

 setfont alt-8x16.psf.gz-m koi2al

 loadkey ru-ms.map

 export TVOPT=cyrcvt=linux,alt866

 中文翻译如下:

 IDA使用以下环境变量:

 TMP或TEMP指定创建临时文件的目录。

 默认值:C:\TEMP

 EDITOR首选文本编辑器的名称。

 IDALOG指定日志文件的名称。窗口中出现的所有内容都将转储到该文件中。

 默认值:无

 IDALOG_SILENT禁止所有输出到消息窗口。

 如果设置了IDALOG变量,则消息将继续写入日志文件中。否则,它们将丢失。

 IDADIR指定IDA目录。

 默认值:IDA可执行文件所在的目录

 IDA_LOADALL所选的加载器将加载所有段而不询问

 IDAUSR指定用户特定设置的目录。

 默认值:Windows:%APPDATA%/Hex-Rays/IDA Pro

 Linux:$HOME/.idapro

 Mac OS X:$HOME/.idapro

 该变量可以包含多个路径,此时它们必须由平台的路径分隔符(即Windows上的';',Linux和Mac OS X上的':')分隔。

 注意:使用%IDAUSR%加载插件。

 在扫描插件时将考虑%IDAUSR%:对于%IDAUSR%的每个目录组件,IDA将按字母顺序迭代其“plugins”子目录中的文件。

 相同不区分大小写的文件名(没有扩展名)的插件被视为重复,将被忽略;只有给定名称的第一个插件会被考虑。因此,假设%IDAUSR%设置为“C:\my_idausr”,并且存在文件“C:\my_idausr\plugins\DWARF.py”,则“C:\my_idausr\plugins\DWARF.py”将首先被选择,而“%IDADIR%\plugins\dwarf.dll”将被视为冲突,并因此被忽略。

 此外,在每个目录中,IDA首先查找具有本机扩展名的插件(例如,在Windows上为“.dll”),然后才查找扩展语言对应的扩展名的文件(例如,“.idc”、“.py”等)因此,如果同一目录中存在两个文件“foo.dll”和“foo.py”,则首先选择“foo.dll”,而“foo.py”将被视为冲突,因此将被忽略。

 注意:使用%IDAUSR%覆盖配置。

 在查找配置文件时,将考虑%IDAUSR%,在读取%IDADIR%\cfg中找到的配置文件后。

 在应用%IDADIR%\cfg\后,对于%IDAUSR%的每个目录组件,IDA将在其中查找cfg/,如果找到,则也会读取并应用其内容。

 这使用户可以拥有自己的小型、精细调整的配置文件,其中只包含他们想要覆盖的部分,存储在他们选择的一个或多个文件夹中。

 注意:使用%IDAUSR%指定主题

 在扫描主题时将考虑%IDAUSR%:对于%IDAUSR%的每个目录组件,IDA将迭代其“themes”子目录中的子目录。

 注意:使用%IDAUSR%提供额外的加载器、处理器模块、.til文件、.sig和.ids文件

 在构建现有加载器、处理器模块、.til、.sig和.ids文件列表时,也将考虑%IDAUSR%。将检查以下目录:

 %IDAUSR%\loaders

 %IDAUSR%\procs

 %IDAUSR%\til

 %IDAUSR%\sig

 %IDAUSR%\ids\IDA_MINIDUMP(仅限Windows):如果IDA崩溃,它将使用MiniDumpWrite()创建一个minidump文件。使用此环境变量指定MiniDump标志(一组MINIDUMP_TYPE标志,表示为十六进制数)。如果设置为“NO”,IDA将不会写入转储文件。

 IDA_MDMP_INIT(仅限Windows):让IDA在启动时加载dbghlp.dll,以便在崩溃时生成崩溃转储文件。如果未设置,则IDA将动态加载dbghlp.dll(如果需要)。如果Windbg调试器插件的dbghlp.dll与IDA加载的不匹配,则使用此选项可能会导致其发生故障。

 IDA_NOEH:如果设置,禁用IDA自己的异常处理程序,并让所有可能的崩溃由操作系统或活动调试器处理。如果您正在调试插件或处理器模块中的崩溃,这将非常有用。

 IDAIDS指定IDS文件所在的目录。

 默认值为:%IDADIR%\IDS

 IDASGN指定SIG文件所在的目录。

 默认值为:%IDADIR%\SIG

 IDATIL指定TIL文件所在的目录。

 默认值为:%IDADIR%\TIL

 IDAIDC指定IDC文件所在的目录。

 默认值为:%IDADIR%\IDC

 IDA_LIBC_PATH仅适用于Android远程主机。指定系统libc.so的确切路径。

 IDA_SKIP_SYMS仅适用于Linux主机。在调试会话开始时关闭加载主可执行文件的导出符号。

 IDA_NONAMES禁用名称解析。

 IDA_NO_HISTORY禁用更新文件历史记录。

 IDA_NORELOC禁用某些文件格式的重定位信息处理。

 IDA_NOEXP禁用某些文件格式的导出信息处理。

 IDA_NOTLS禁用某些文件格式的TLS条目处理。

 H8_NOSIZER禁用H8模块的操作数大小显示。

 IDA_LOADALL加载输入文件的所有段而不需要进一步的确认。

 IDA_DEBUGBREAKPROCESS(仅适用于Windows)IDA调试器将使用DebugBreakProcess()API来中断进程。否则,它将尝试为所有线程设置临时断点。

 IDA_NO_REBASE在调试时,IDA调试器不会重新定位程序。(即使调试器插件实现了rebase_if_required_to回调函数,这仍然有效)

 IDABXPATHMAP与Bochs调试器相关的变量。

 IDABXENVMAP有关详细信息,请参见plugins/bochs/startup.*。

 IDA_NOWIN(仅限文本MS Windows版本)

 绕过尝试查找前台窗口的代码。该代码在WINE下会导致问题。

 IDA_DONT_SWITCH_SCREENS

 (仅限文本版本)

 告诉IDA即使在本地调试会话期间也仅保留一个屏幕。对于本地调试会话,IDA默认保留一个屏幕用于被调试的应用程序和一个屏幕用于自身。

 IDA_NOAUTOCOMP不自动检测用于名称解缠的编译器。如果此变量不存在并且当前编译器为MS、Borland和Watcom之一,则会自动检测编译器。

 IDA_ELF_PATCH_MODE重写新ELF文件的补丁模式。如果定义了此变量,则它必须包含一个数字。此数字的每个位对应于以下列表中的一个选项:

 0:将“过程链接表”的PIC形式替换为非PIC形式

 1:直接从PLT(无论其形式如何)跳转

 2:转换“GLOBAL_OFFSET_TABLE[]”的PIC形式的加载地址

 3:消除PLT和GOT中的辅助字节以进行“最终自动分析”

 4:可重定位文件中PIC GOT地址加载的自然形式

 5:可重定位文件中未修补的PIC GOT引用形式

 6:将“已分配”对象标记为库对象(仅适用于MIPS)

 IDA_DYLD_SHARED_CACHE_SLIDE Mach-O加载器:指定dyld共享缓存镜像ASLR滑动值(十六进制)或“search”进行自动检测。如果未设置,则假定滑动为0(未滑动镜像)。

 以下变量用于微调IDA的Linux版本:

 TVLOG日志文件的名称,如果未定义,则使用LOG_WARNING优先级的syslog

 TERM终端定义(请参见terminfo)

 TVHEADLESS禁用所有输出(用于i/o重定向),如果定义了此变量,则忽略TVOPT变量。该环境变量也适用于IDA的图形版本。设置后,图形界面将不会还原桌面、工具栏或显示主窗口。

 TVOPT终端选项。有多个子字段,由逗号“,”分隔。

 noX11-当libX11.so不兼容时

 noGPM-当libgpm.so不兼容时

 ansi-

 或

 mono-当您的显示器的terminfo数据没有声明支持ANSI颜色时

 ign8-忽略terminfo描述中的“8位作为元键”

 xtrack-如果您的xterm模拟器在telnet客户端中不支持模式1002(只支持1000),则设置此标志

 alt866-不编码伪图形符号(对于已加载alt字体的控制台)

 cyrcvt=-Cyrillic转换(oem/koi8r)。可能的值为:

 linux-用于Linux俄语用户和PuTTY(in/out koi8r)

 kwin-输出为koi8,输入为cp1251-任何telnet

 windows-适用于许多telnet和任何Linux用户(in/out 1251)

 我们建议远程客户端使用“xterm-scokey”终端类型。

 当终端类型为xterm-scokey时,请将以下字符串添加到/etc/inputrc(或~/.inputrc):

 “\e[.”:删除字符

 在没有安装GPM的控制台上工作时,在TVOPT后添加“noGPM”。

 俄语用户应将以下设置附加到上述设置中:

 在控制台上,俄语用户的最佳设置为:

 setfont alt-8x16.psf.gz-m koi2al

 loadkey ru-ms.map

 export TVOPT=cyrcvt=linux,alt866

展开阅读全文

标签:

读者也访问过这里:
邀请您进入交流群 点击扫码
400-8765-888 kefu@makeding.com

专业销售为您服务

欢迎添加好友,了解更多IDA优惠信息,领逆向工程学习资料礼包1份!
热门文章
exe反编译工具哪个好?反编译能力强的工具盘点
随着软件技术的发展,exe(可执行文件)已经成为了电脑、手机等多个平台上的主要软件运行格式,而对于exe文件的反编译也成为了逆向工程中不可缺少的一个步骤。本文将介绍一些常用的exe反编译工具,并评价其优缺点,帮助读者选择合适的工具。
2023-04-12
idapro怎么改为中文
IDA Pro是一款功能强大的反汇编和反编译工具,广泛应用于逆向工程和软件开发领域。在使用IDA Pro时,如果我们不习惯英文界面,可以将其改为中文界面。本文将介绍IDA Pro怎么改为中文界面。IDA Pro界面改成中文主要有两种方法,下面是详细介绍。
2023-04-19
c++反编译工具有哪些
反编译C++代码的工具一般是针对可执行文件和库文件的反汇编和逆向分析工具。本文将给大家介绍c++反编译工具有哪些的内容。市面说的c++反编译工具有很多,下面介绍几款使用认识较多的软件。
2023-04-23
ida如何转伪代码 ida伪代码怎么看
IDA Pro是一款常用的反汇编和反编译工具,可以帮助我们分析二进制文件的实现细节和执行过程,以便更好地理解程序的执行过程和逻辑。在进行逆向工程的过程中,我们经常需要将反汇编结果转换为伪代码,以便更好地进行分析和修改。本文将介绍如何使用IDA Pro转换为伪代码,并简单讲解ida伪代码怎么看。
2023-04-14
IDA反汇编流程视图的常用基本操作设置
IDA中反汇编窗口中有两种不同的形式,分别是列表模式和图形模式,IDA默认打开是图形模式,就是反汇编流程视图,可以用来分析程序函数的具体运行情况。
2021-06-15
IDA的初始使用说明和界面简介
IDA能帮助我们分析恶意软件、分析系统漏洞、验证编译器的性能,其支持在Mac系统、Windows系统、Linux系统中使用,是一款非常优秀的反编译软件。
2021-03-16
最新文章
mybatis逆向工程是什么?mybatis逆向工程使用什么工具?
mybatis,作为一个流行的Java持久层框架,通过提供一种相对简便的方式来管理数据库操作和数据转换,已经成为众多项目开发中不可或缺的一部分。而mybatis逆向工程,则是在此基础上,通过自动化生成数据库操作代码的方式,进一步提升开发效率,简化开发过程。
2024-04-17
md5可以反编译吗?md5反编译需要用什么工具?
在数字安全和软件开发领域,md5一直是一个广为人知的话题。md5,即Message-Digest Algorithm 5,是一种广泛使用的加密哈希函数,能够产生一个128位(16字节)的哈希值,通常用一个32位的十六进制数表示。但随着计算技术的发展,人们开始探讨md5是否可以反编译,以及进行这种反编译所需的工具是什么。本文将深入探讨这一话题,包括md5的反编译可能性、所需的工具以及IDA反编译原理的详细分析。
2024-04-16
pyc反编译文件怎么做?pyc反编译有什么工具?
Python编程语言以其高效的性能和广泛的应用领域占据了软件开发的重要地位。随之而来的`.pyc`文件作为Python代码编译的产物,对于提高程序运行效率有着不可忽视的作用。但在某些场合下,我们需要将这些编译过的文件还原为源代码形式,以便于代码审查或学习交流。因此,本文将深入探讨`.pyc`文件的反编译过程、介绍有效的反编译工具,并指导如何通过IDA快速掌握反编译技巧,以资助力开发者和逆向工程师。
2024-04-09
易语言反编译是什么?易语言反编译怎么做用什么工具?
软件工程的一个挑战性任务是如何解读和分析那些没有源代码的程序。对于易语言编写的软件,这一挑战尤为突出。反编译技术,作为桥接编译代码与源代码的关键技术,能够揭开编译后程序的神秘面纱。本文将聚焦于易语言反编译的基础知识、实施方法及所需的工具,并详细探讨IDA工具在逆向工程任务中的核心作用,为广大技术从业者提供参考和指导。
2024-04-09
IDA8.4新版发布:界面大更新!反编译精度提升!附下载
逆向工程领域的佼佼者,IDA Pro,再次以其最新版本8.4引领技术潮流。本次更新不仅延续了IDA Pro一贯的专业性能,更在用户体验和功能上带来了一系列创新和改进。我们诚邀广大用户前往IDA中文网站(https://www.idapro.net.cn/)下载并体验IDA 8.4的最新功能。
2024-04-01
ilspy反编译是什么?IDAPro能代替ilspy反编译吗?
在当今快速发展的软件产业中,反编译技术已成为软件开发、维护、安全分析和学术研究中不可或缺的一部分。反编译技术不仅能够帮助开发者理解现有软件的工作原理,还能够在软件安全领域发挥重要作用,帮助发现和修复潜在的安全漏洞。在这一领域,ilspy和IDA Pro以其卓越的性能和广泛的应用,成为了技术专家们推崇的工具。
2024-04-01

通过微信咨询我们

欢迎添加好友,了解更多IDA优惠信息,领取逆向工程学习资料礼包1份!