一)安装Paimei on Python2.5的一般过程:
1)安装python-2.5.2.msi
注意:由于python 2.5版本安装文件中包含了ctypes,故不需要额外安装
2)安装wxPython2.8-win32-unicode-2.8.9.1-py25.exe
3)安装MySQL-python-1[1].2.2.win32-py2.5.exe
注意:mysql-gui-tools-5.0-r12-win32.msi需要python24.dll,故不宜安装
4)安装uDrawGraph-3.1.1-0-win32-en.exe
5)安装pydasm-1.2.win32-py2.5.exe
6)安装PaiMei-1.1.win32.exe
7) 用C:\Python25\Lib\site-packages下的pydasm.pyd(大小为100kb)替换C:\Python25\Lib\
site-packages\pydbg和* Paimei *\pydbg下的pydasm.pyd
8)安装mysql-4.1.13-win32 设置密码 root test
注意:中间选择skip sign-up 和 Include Bin Directory in Windows PATH
9)利用命令行模式运行Paimei 文件夹下的_setup_mysql.py 127.0.0.1 root test
二)安装和配置Boa的一般过程:
1) 在成功安装此版本的python和wxPython之后,将通过CVS下载的Boa constructor 压缩包解压缩到C:下即可
2)配置Boa:如果安装的操作系统是中文版本,那么第一次打开 Boa Constructor时界面语言会变是中文,需要把它修改成英文的,在编辑器中的 工具->Choose IDE Language 菜单中将它换成英文;在编辑器中的 工具->Python解释器的选择器 菜单中,设置 Python.exe 的所在目录。关闭 Boa Constructor并重新启动它,配置即告完成。
三)调试使用Paimei
1)将*\Paimei\console下的PAIMEIconsole.pyw复制并改名为PAIMEIconsole.py;
2)用Boa打开PAIMEIconsole.py,调试执行便可。
以上安装过程中除了特殊说明外,其它全部选择默认安装即可。到此,Paimei on Python2.5的安装已经完成,Paimei 可以正常使用了。
一)安装Paimei on Python2.4的一般过程:
1)安装python-2.4.3.msi
2)安装ctypes-0.9.9.6.win32-py2.4.exe
3)安装wxPython2.6-win32-ansi-2.6.3.2-py24.exe
4)安装MySQL-python.exe-1.2.1_p2.win32-py2.4.exe
5)安装uDrawGraph-3.1.1-0-win32-en.exe
6)安装PaiMei-1.1.win32.exe
7)安装mysql-4.1.13-win32 设置密码 root test
注意:中间选择skip sign-up 和 Include Bin Directory in Windows PATH
8)利用命令行模式运行Paimei 文件夹下的_setup_mysql.py 127.0.0.1 root test
二)安装和配置Boa的一般过程:
1) 在成功安装此版本的python和wxPython之后,将通过CVS下载的Boa constructor 压缩包解压缩到C:下即可
2)配置Boa:如果安装的操作系统是中文版本,那么第一次打开 Boa Constructor时界面语言会变是中文,需要把它修改成英文的,在编辑器中的 工具->Choose IDE Language 菜单中将它换成英文;在编辑器中的 工具->Python解释器的选择器 菜单中,设置 Python.exe 的所在目录。关闭 Boa Constructor并重新启动它,配置即告完成。
三)调试使用Paimei
1)将*\Paimei\console下的PAIMEIconsole.pyw复制并改名为PAIMEIconsole.py;
2)用Boa打开PAIMEIconsole.py,调试执行便可。
以上安装过程中除了特殊说明外,其它全部选择默认安装即可。到此,Paimei on Python2.4的安装已经完成,Paimei
可以正常使用
附件下载地址:
Instructions:http://www.live-share.com/files/378206/Boa_and_Paimei_py24_25__install-doc.rar.html
Boa:http://www.live-share.com/files/378208/boa.rar.html
Paimei:http://www.live-share.com/files/378209/Paimei.rar.html
=======================
Paimei(白眉)安装 收藏
第一次使用Paimei时的步骤:
1、确保已经安装Mysql4.0和IDA Pro
2、下载Paimei,并将其解压缩到安装路径下
3、接着要安装Python2.4.x, “windows python-2.4.3.msi"
4、运行“_install_requirements.py,将自动检测并下载安装需要的python组件
5、这里出现了没有安装的提示,输入“Y”就是下载所需的组件,它会自动下载帮你安装的。
6、连接数据库,运行命令:“c:\python\python\python.exe __setup_mysql.pylocalhost root password”这里分别是python的安装目录下、白眉安装目录下、数据库地址、数据库用户名、数据库密码。
7、连接udraw,从命令行启动了udraw服务,如下: ..\uDraw(Graph)\bin>uDrawGraph.exe -server 2542 (注意是uDrawGraph.exe的全路径)然后再从PeiMei的connetction里面连接udraw,peimei的状态栏看到udraw连接成功了
8、选择PAIMEI pstalker(PE漫步者)的选项卡,在左边的add target里面新建工程和添加文件名,在下面的PIDAmodules里里面选择你用IDA的IDApython插件保存的pida文件(插件的安装很简单,把插件文件复制到IDA的插件目录里面就OK了,不过要注意相关的组件要支持)
9、我们start stalking,运行会,然后我们STOP,再右击上面的工程文件,选择Sync withuDraw就可以图形化的观看效果了,由于没有选择用IDA中的参数的原因所以就没有标示。
=======================
“白眉”Paimei安装使用手册
2009-03-15 10:32
Foreword:
白眉的安装非常复杂,网上基本上也没有系统的讲解,为了方便广大的漏洞爱好者,Ivan在此做了一份详尽的安装使用手册,希望对大家有帮助。
What is PaiMei?
PaiMei is a reverse engineering framework consisting of multipleextensible components.
The goal of the framework is to reduce the timefrom "idea" to prototype to a
matter of minutes, instead of days.PaiMei is written entirely in Python and exposes
at the highest level adebugger, a graph based binary abstraction and a set of
utilities foraccomplishing various repetitive tasks. The framework can essentiallybe
thought of as a reverse engineer's swiss army knife and has alreadybeen proven effective
for a wide range of both static and dynamic taskssuch as: fuzzer assistance, code coverage
tracking, data flow trackingand more.
白眉,非常棒的代码分析工具,完全由Python开发,扩展方便。上面看不懂,没关系....接着走
http://pedram.redhive.com/PaiMei/docs/
PaiMei的安装1.安装支持(一下带版本号的都与其他软件的支持相关,希望注意!)
1)Python 2.4 http://www.python.org/
2)MySQL4.0 http://lstele.skycn.com/down/mysql-4.1.22-win32.zip
以上的软件都装好以后
PaiMei下载地址:http://www.openrce.org/downloads/details/208/PaiMei
把我们下载的Paimei解压到你要安装的目录中,解压这个东东。然后运行Paimei目录下的__install_requirements.py这个文件。它会帮你检测其他的支持软件,省去你手动下载,除了上面的安装支持,基本上都能自动下载成功。
注意【如果不能成功,用记事本打开__install_requirements.py这个文件自己找地址下载(Python语言很简单),然后安装。如果不能下,自己复制名字到迅雷上去下,这个该会吧
。我给一个需要下载的软件列表1)Python ctypes 2)MySQLdb 3)WxPython 4)uDraw 其它的没下就不管了,反正可以用了,直接忽略。】
做完上面的步骤,我们的支持软件就都安装完成了,接下来运行Paimei目录下的__setup_mysql.py这个文件,它会在MySQL数据库中创建需要的数据库和表。
白眉的启动1.需要软件IDA Pro 和 IDA Python支持。
注意【IDA Pro和IDA Python的版本一定要对应,一般是IDAPython0・9・0forWindows,IDAPro5・0,and Python2・4。】
下载后1)把IDA Python里面的python文件夹拷到IDA Pro目录下;
2)把IDA Python里面plugins文件夹中的python.plw文件拷到IDA Pro的plugins目录下。
2. 启动uDraw
uDRAW在命令模式下开启:C:\Program Files\uDraw(Graph)\bin)uDrawGraph.exe -server 2542 (C:\Program Files\uDraw(Graph)\bin)是环境变量)
或者把uDrawGraph.exe 的属性改成“uDrawGraph.exe -server 2542”,以后每次就可以双击打开,方便多了。
3. 启动MySql service
安装后一般开机就自动启动了。
4.运行Paimei安装目录下console目录里的PAIMEIconsole.pyw这个文件,就能启动Paimei了。
白眉的使用1.首先完成白眉的启动(如上),然后连接MySql和uDraw。
连接:1)白眉的左上角――>Connections->MySql connect;弹出对话框,输入Passwd,点击connect,白眉状态栏(下面)就会显示是否连接成功。如图:
2)白眉的左上角――>Connections->uDraw connect;弹出对话框,Host为127.0.0.1,Port为2542,一般是设置好的,直接点击connect,白眉状态栏(下面)就会显示是否连接成功。
2.大体讲解,白眉左边有一栏,分别是PAIMEIdocs(白眉基本绍,要仔细读);
PAIMEIexpore, PAIMEIfilefuzz ,PAIMEIpstalker(PE漫步者)。
3.如何使用PAIMEIpstalker(PE漫步者):以Windows自带的计算器calc.exe为例进行指令追踪。
(以下知识参考《0day安全》)
1)IDA自动分析calc.exe完后,使用Alt+9或者在IDA菜单中Edit――>Plguins――>IDApython中启动Paimei安装目录下的“pida_dump.py”脚本,即将IDA分析的结果保存成Paimei所使用的数据格式pida文件。
确定后选择full:
然后保存在pida文件夹中。
2)单击Paimei左侧的“PAIMEIpstalker”,进入指令最终模块的界面。
3)连接uDraw和MySQL。
4)单击Paimei的“Add Module”按钮,将刚才用IDA导出的静态代码读入Paimei。
右键单击“Avaliable Targets”,选择“Add targets”,新建一个追踪目标,取名calc。
右键单击新添加的追踪目标,选择“Add Tag”。取名test1.【Tag用于区别一次指令追踪操作,可以在一个追踪目标下建立多个Tag以表示不同的追踪操作】
右键单击新添加的Tag,选择“Use for Stalking”
5)加载进程。有两种方式:可以通过单击“Browse”按钮来选择PE文件直接加载,也可以单击“Refresh Process List”按钮来选择已经启动的进程进行Attach。
6)单击“Start Stalking”按钮,开始指令追踪
模块数位52块。
7)右键单击当前的tag选择“load hits”,Paimei会将执行到的指令块读入并显示详细的信息;如果选择“Sync with uDraw”,Paimei会在uDraw的界面下绘制刚刚执行过的指令块及其之间的调用关系。
8)迅速定位特定功能对应的代码。
例如,我们想知道计算器中单击“c”(清零)按钮是程序所执行的代码,可以首先追踪calc.exe
的启动过程。
右键单击这个tag,选择“Filter Tag”,将这一次追踪设置为filter,然后新建一个tag,命名为test2,进行新的一轮追踪。这次追踪Paimei将忽略test1中命令的指令块,当calc.exe启动后,点击一下按钮“c”,Paimei将只记录这次单击操作所执行过的指令,总共命中6个指令块。
总结:通过这种方法,我们能够迅速地定位某种特定功能的操作所对应的代码从而集中精力有重点地进行逆向分析。在漏洞分析时,我们可以首先在程序正常执行时进行指令追踪,然后用这次追踪作为filter,再去追踪漏洞被触发时的执行流程,就能迅速定位漏洞代码的位置了。虽然Paimei能够极大地提高逆向分析的工作效率,但是它也存在一些不足之处。比如Paimei的指令追踪依赖于IDA,所以其分析结果也依赖于IDA分析的正确性。