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参与软件重构项目
在现代软件开发和安全研究领域,IDA(Interactive Disassembler)是一个不可或缺的工具。它不仅可以反编译和反汇编代码,还能帮助研究人员挖掘软件漏洞,并参与软件重构项目。本文将详细探讨怎么用IDA反编译挖掘软件漏洞 如何用IDA参与软件重构项目。
2024-07-23
IDA软件反汇编后如何找到函数入口点 如何通过IDA反汇编分析软件的加密解密过程
在逆向工程领域,IDA软件是一款功能强大的反汇编工具,广泛用于分析二进制代码、查找函数入口点以及研究软件的加密解密过程。本文将详细探讨“IDA软件反汇编后如何找到函数入口点 如何通过IDA反汇编分析软件的加密解密过程”,并进一步介绍IDA反汇编和反编译的区别,帮助用户更好地理解和使用这一工具。
2024-07-18
IDA反汇编软件在漏洞分析中能起到什么作用 如何将IDA软件反汇编功能结合调试器使用
在信息安全领域,漏洞分析和逆向工程是至关重要的工作,而IDA反汇编软件则是这一领域中的佼佼者。作为功能强大的反汇编和调试工具,IDA不仅在漏洞分析中发挥着关键作用,还能通过与调试器结合使用,极大地提升分析效率和准确性。本文将详细探讨“IDA反汇编软件在漏洞分析中能起到什么作用 如何将IDA软件反汇编功能结合调试器使用”,并进一步介绍IDA常用的辅助插件,帮助用户更好地利用这一工具进行漏洞分析和逆向工程。
2024-07-15
idapro如何分段处理 ida软件反汇编如何添加插件
在软件逆向工程和代码分析中,IDA Pro是一款非常重要的工具。它提供了强大的反汇编和反编译功能,使得分析二进制代码变得更加高效和准确。在使用IDA Pro时,了解如何分段处理和添加插件可以极大地提升工作效率。本文将详细探讨idapro如何分段处理 ida软件反汇编如何添加插件,并分析IDA Pro是否容易学习和使用。
2024-07-09
ida软件如何保障网络安全 idapro如何反汇编x86
ida软件如何保障网络安全 idapro如何反汇编x86,这些问题是现代网络安全领域中备受关注的核心议题。随着网络攻击和恶意软件的不断演变,保障网络安全和有效的反汇编技术变得尤为重要。IDA软件作为一款强大的逆向工程工具,通过多种技术手段保障网络安全,而IDAPRO则以其出色的反汇编功能,特别是在x86架构下的应用,成为广大安全专家和研究人员的利器。
2024-07-08
逆向工程师和黑客的区别 为什么逆向工程师都在用ida软件
在信息安全和软件开发领域,逆向工程师和黑客是两个备受关注的角色。尽管两者都涉及代码分析和破解,但在职业目标、方法和道德规范上存在显著差异。同时,IDA软件作为逆向工程师的首选工具,其受欢迎的原因也值得探讨。本文将详细分析“逆向工程师和黑客的区别 为什么逆向工程师都在用ida软件”这一主题,并进一步介绍常用的逆向工程软件。
2024-07-04

通过微信咨询我们

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