'paimei install'에 해당되는 글 1건

  1. 2010.05.10 [ Paimei ] Reverse Engineering Frame Work (2)

2010.05.10 15:27 Etc../Tool



네 , Paimei 는 킬빌 2에 나오는 캐릭터입니다











이 아니라

소개할 건 Reverse Engineering Frame work 입니다

아마 Python 을 의미하는 Py 와 발음이 비슷한 Pai 떄문에

기존에 있던 Paimei 란 캐릭터의 이름을 따와서 이름을 지은거 같군요

아무튼 상당히 괜찮다고 평이 나있는 툴입니다

오픈소스이구요

먼저 Paimei 가 어떤 툴인지는 알고 설치 하셔야겠죠?

제작자의 홈페이지 입니다

http://pedram.redhive.com/PyDbg/docs/index.html

그리고 이건 다른 분들이 작성하신 Tutorial~

http://www.crazylazy.info/blog/content/paimei-tutorial-hands-pydbg-part-1
http://www.crazylazy.info/blog/content/paimei-tutorial-simple-heap-traceing-part-2

또 RECON 2006 에서 제작자가 발표한  PDF 파일입니다

http://recon.cx/en/f/pamini-five-finger.pdf

근데 생각보다 설치하기가 좀 [ 많이 ] 까다롭더군요

선행 설치되야 하는것도 장난이 아닙니다

태그를 긁어왔는데 어째 선이 안보여서 그림으로 대체합니다 -_-



이는 제작자 페이지의 Installation 부분에서 발췌한것임을 알려드립니다

게다가 이는 Python 2.4 를 기준으로 되어 있기 때문에 약간의 수정 없이는

요즘 가장 대중적으로 쓰이는 2.5에서 오류 없이 깔기가 불가능합니다

음 그럼 설치를 시작해볼까요

http://www.openrce.org/downloads/details/208/PaiMei

에서 Paimei 를 받습니다

물론 Python 2.5 가 깔려있다는 전제하에서 하는 거구요

위 파일에서 __install_requirements 를 실행시키면 한번에 다 설치 할 수 있도록 했는데

2.4 기준이라 위 링크된 사이트에서 자신의 버전에 맞는 파일을 받아 설치하시는게

속 편하실거라고 봅니다 -,.-

아무튼 위 설치를 마치셨다면

__setup_mysql.py를 실행시켜서 db와 연결하셔야 합니다

__setup_mysql.py localhost <ID> <PassWord> 로 실행시켜주시면 됩니다


ID, Password 는 Mysql 계정정보를 입력시켜주시면 되구요

이제 __build_installer.bat 파일을 실행시켜야 합니다

저는 setup.py install 명령어를 쓰고 나선 한참 삽질했는데요

setup.py install 하면서 컴파일러가 다르다니 어쨌대니 mingw32 를 쓰라느니

그래서 cygwin 도 깔아보고 해봤는데도 안되고

나중에 찾아보니 mingw32를 써서 컴파일하는건 좀 불안정하다더군요

아무튼 이런 삽질을 피하시려면

__build_installer.bat 을 실행시키면 됩니다

물론 수정점이 있지요

c:\python\python.exe setup.py bdist_wininst --bitmap=logos\installer.bmp --title=PaiMei

를 이렇게

c:\python25\python.exe setup.py bdist_wininst --bitmap=logos\installer.bmp --title=PaiMei


바꿔주시면 됩니다

그리고 실행해주시면 주르륵 설치가 되지요

확인은 default 로 설정해주셨을때

C:\Python25\Lib\site-packages

에서 확인하실 수 있습니다

pida, pydbg, pgraph, MySqLdb 등등이 있어야 하구요

아참, 제 기억으론 setuptools 도 필요했던거 같네요

http://pypi.python.org/pypi/setuptools

버전 맞게 설치하시고

pydbg 에서 또  수정해주셔야 할게 있는데

beist lab의 ashine 님의 글을 참조하시면 OK~

http://ashine.springnote.com/pages/5585579?print=1



이제 Paimei 압축을 푼 폴더에 console 폴더에 들어가셔서

PAIMEIconsole.pyw 를 실행시키면



Paimei 님의 살인미소가 우리를 반겨주시는게 정상입니다



Paimei 의 실행모습입니다

전체적으로 깔끔한 인터페이스네요

이걸 또 PIDA 와 연결 할 수 있는데요

조심하실 점은

Paimei 의 PIDA 이외에

동일 이름을 가진 module 이 있다는 점입니다 -.-

저는 아무것도 모르고 Pida 치고 가장 먼저 나온 사이트에서 받아서 설치했었는데

왜 안되는지 한참 삽질했습니다

결국 같은 module이 아니더군요

http://pida.co.uk/

이게 아니니 조심하시길~






제가 Paimei 를   Opensrc에 있는 링크를 걸어 두었는데

googlecode에 svn에 가보니 더 최근의 소스가 있더군요 -,.-

googlecode 상에는 그런 링크 없었는데..  

아무튼

http://paimei.googlecode.com/svn/trunk/

에 가보시면 수정된 파일을 받을 수 있습니다





저걸 일일히 언제 다 받고 있겠습니까

그래서 간단히 python 코드로 짜봤습니다





파일 및 폴더 내용까지 싹 긁어다 오는 소스 입니다

제가 앞서 설명했던 것들을 여차 저차 하게 되면

다음과 같이 몇가지 메뉴가 추가된 Paimei 를 만나실 수 있습니다






Paimei Flash demo 를 보시면

pida 파일을 불러오는 것을 볼 수 있는데요



이 pida 파일은 IDA python 으로 생성된 파일입니다

IDA python 을 설치하시면 IDA 에서 python script를 실행시킬 수 있게되는데

여기서 paimei 폴더에 있는 pida_dump.py를 실행 시키면 얻으실 수 있습니다

혹시 xrefs 의 길이를 구할수 없다는 둥의 에러메세지가 뜨게 되면

xrefs를 list 로 변환해주셔야 합니다

xrefs 가 list 의 레퍼런스 인데 list로 연산을 하더군요

제가 뒤에 언급한 svn 에서는

이점이 변환되도록 수정 되었더군요



구버전으로 이래저래 삽질 많이 했었는데 참 ..



'Etc.. > Tool' 카테고리의 다른 글

[ Paimei ] Reverse Engineering Frame Work  (2) 2010.05.10
[ Dia ] 순서도 작성 프로그램  (2) 2010.04.22
[ NotePad++ ] 단축 실행 , CMD 초기 경로 지정  (0) 2010.04.09
[ Hex Editor ] HxD  (0) 2010.03.19
[ Text Editor ] Notepad++  (0) 2010.03.19
Back Track 4 Final Version Release!  (0) 2010.01.31
Posted by LinkC
이전버튼 1 이전버튼

블로그 이미지
LinkC

태그목록

Tistory Cumulus Flash tag cloud by BLUEnLIVE requires Flash Player 9 or better.

공지사항

Yesterday21
Today22
Total330,165

달력

 « |  » 2019.7
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      

최근에 받은 트랙백

글 보관함


. .