Korean_Angr (4) 썸네일형 리스트형 [Angr 공식문서] 1. Top Level Interfaces 사전 준비 IPython에서 angr를 사용하고 탐색해보자(다른 파이썬 커맨드라인 도구로 하여도 상관없다.) angr는 Ipython을 통해 사용되는 것을 전제로 개발되었다. 만약 어떤 인터페이스를 사용해야 하는지 햇갈린다면 tab키를 눌러 자동완성 시킬 수 있다. 간혹가다 IPython에서 tab키를 통한 자동완성이 느릴 수 있다. 자동완성의 정확성을 낮추지 않고 도움이 되는 방법을 알려주겠다. # ipython을 킬때마다 아래 코드가 되풀이되지 않도록 Ipython 프로파일의 startup 디렉토리에 아래 내용을 넣어라 import IPython py = IPython.get_ipython() py.Completer.use_jedi = False 이 프로젝트는 angr에 기반하고 있다. 이것과 함께,.. [Angr 공식문서] Angr 기여 방법 버그 보고 만약 angr에 버그가 나타난다면, 우리에게 알려주세요! 1. angr/바이너리와 angr/agr의 fork를 만드세요. 2. 우리에게 angr/바이너리와 바이너리를 pull requet를 보내십시요. 3. angr/tests/broken_x.py, angr/tests/broken_y.py 등의 바이너리를 작동시키는 테스트케이스를 포함한 angr/angr에 대한 pull request를 보내십시요. 우리가 서술한 테스트케이스를 따라주세요. 그러면 저희가 쉽게 합칠 수 있고 script를 실행시킬 수 있습니다. 예를들면: 1 2 3 4 5 6 7 def test_some_broken_feature(): p = angr.Project("some_binary") result = p.analyses... [Angr 공식문서] 1. 설치 angr 설치 angr는 파이썬 기반 환경에서 작동하므로 Python3가 설치되어 있어야 합니다. python2는 지원하지 않습니다. Angr의 사용에 있어서 파이썬 가상환경(python virtual environment)사용을 극히 권장합니다. angr가 의존성을 지니고 있는 z3, pyvex들이 원본에서 포크된 라이브러리들의 네이티브 코드들을 필요로 하기때문에 libz3나 libVEX가 설치되어 있다면 angr가 이 프로그램들을 덮어쓸 수도 있습니다. 가상환경 밖에서 angr를 설치하여 동작시키다 발생한 문제에 대해서는 책임지지 않습니다. 의존성 python의 의존성은 pip나 setup.py 스크립트에 의해 다뤄집니다. 그러나 설치를 완료하기 위해서는 약간의 C언어 빌드가 필요할 수 있습니다. 따.. [Angr 공식문서] 1. 소개 서문 Angr는 동적 심볼릭 분석과 정적 분석을 통한 멀티 아키텍처 바이너리 분석 도구입니다. 만약, 당신이 어떻게 이것을 사용하는지 배우고 싶다면, 잘 찾아 오신 것입니다. 우리는 Angr를 가능한 쉽게 사용할 수 있게 하려고 노력했습니다. 우리는 사용자가 iPython을 간단히 시작하고 몇가지 명령으로 집중적인 바이너리 분석을 쉽게 수행할 수 있는 사용자 친화적인 바이너리 분석 제품군을 만드는 것입니다. 다시말해 바이너리 분석은 복잡하고 그것은 Angr를 복잡하게 만듭니다. 이 문서는 angr에 대한 사용법을 정리한 문서입니다. 바이너리를 분석하기 위해 극복해야 할 몇가지의 목표입니다. 대충 말하자면... 1. 바이너리를 분석 프로그램으로 연다 2. 바이너리를 IR이라는 언어로 바꾼다. 3. 실제 분.. 이전 1 다음