본문 바로가기

Hacker Dakuo154

바이너리 분석 바이너리 분석(Binary Analysis) 툴은 어떤 패커를 이용해서 바이너리를 패킹했는지, 어떤 언어로 제작된 프로그램인지를 알아 낼 때 사용된다. PEID : 파일을 열어도 되고 드래그 앤 드롭을 하여 파일을 넣을 수도 있다. 또한 Multi Scan 기능으로 여러개의 파일을 분석할 수 있다. 플러그인에는 unpack을 해주거나 문자열을 추출해주는 것들이 있다. 리소스 해커 : 리소스를 분석해야 하느 경우, 프로그램 내부에서 사용되는 문자열이나 아이콘, 이미지, 폼 구조에 대해서 분석할 때 사용된다. 사용전에 PEID 같은 툴로 패킹이 되어있는지 확인을 먼저 해야한다. 패킹이 되어 있으면 이런 경고가 뜬다. 프로그램에서 사용되는 아이콘이나 bitmap들을 추출해서 저장할 수 있고, 프로그램에서 사용.. 2009. 11. 7.
메모리 패치(Memory Patch) 메모리 패치(Memory Patch) : 윈도우 운영체제가 사용중인 메모리 값들을 검색해서 원하는 값으로 변경을 하는 것 유명한 툴로는 티서치(Tsearch)와 치트엔진(Cheat Engine)이 있다. 티서치(Tsearch) : 1. 메모리 값 수정 2. 어셈코드를 추가해 넣는 코드인젝트(Code Inject) 3. 바이너리 수정(Hexedit) 4. 동적 메모리 할당(DMA) 방식의 메모리 값 수정 티서치를 이용하여 간단한 메모리 값 수정을 해보겠다. 그 외의 기능은 Help메뉴를 실행하면 제작자가 메뉴얼을 스샷과 예제 파일까지 포함시켜 쉽게 익힐 수 있다. 1. Open Process 2. 메모리의 특정 값 검색 3. 메모리 주소를 검색한 결과창 4. 메모리 주소의 값을 수정하는 곳 원하는 메모리 .. 2009. 11. 7.
천재에 대한 나의 생각 SlayerBae의 말을 들으니 저도 평소에 조금씩 생각한 내용인데요 SlayerBae의 말처럼 과연 지금부터 해서 지금의 탑의 위치에 있는 사람들을 따라잡을 수 있을까? 만약 노력을 한채로 시간이 흐른 뒤 그들을 따라잡지 못하면 내가 한 노력은 가치 없는것이 아닐까?> 이 질문에 대해 깊이 고민을 해본결과 지금의 탑의 위치에 있는 사람들을 굳이 의식해야 될까? 그런 생각이 드네요 뭐 저도 명예욕이나 과시욕이 없는 것은 아니지만 그래서 탑의 위치에 선다면 좋겠지만 만약 그렇게 되지 않더라도 그러기 위한 노력 그 자체에서 의미를 발견할 수도 있는 것이 아닐까요? 아직 어려서 현실보다는 꿈과 이상이 더 와닿는데요 지금 내가 재밌어하는 것에 대해 공부한다는 거에서 의미를 부여하고 나의 성취도에만 관심을 가진다.. 2009. 11. 7.
디컴파일러(Decompliers) 디컴파일러(Decompilers)는 바이너리를 역으로 컴파일해주는 툴이다. 역으로 컴파일을 하여 어셈블리어로 코드가 나타나거나 리소스 파일들이 추출된다. 디컴파일러를 사용하려면 바이너리 분석 툴을 이용하여 바이너리의 컴파일러와 해당 버전을 알아내고, 해당 컴파일러를 지원하는 툴을 찾아서 실행만 하면 된다. 바이너리가 패킹이 되어있으면 언패킹하고 바이너리의 컴파일러가 어떤 것인지를 PEID와 같은 바이너리 분석툴로 확인이 가능한 상태이어야 디 컴파일러를 사용할수 있다. 분석 후 프로그램을 제작한 환경에 맞게 디컴파일러를 사용하면 원래 소스와 비슷한 결과물을 얻을 수 있다. 주요한 디컴파일러들이다. 자바 디컴파일러 : 델파이 디컴파일러 : 플래시 디컴파일러 : 닷넷(.net) 디컴파일러 : 2009. 11. 7.
아이다(IDA)에 MS 심볼 서버 연동하기 아이다(IDA)로 윈도우 바이너리를 리버싱하게 되면 Functions window에서 함수의 이름이 보이지 않고 'Sub_주소' 으로 보이게 된다.(다음 화면은 winmine.exe를 open한 화면) 이러면 분석이 어려우므로 함수의 이름을 보기 위해 MS 심볼 서버와 연동을 시켜야 한다. MS 심볼 서버 : MS에서 디버그 심볼을 자동으로 다운로드 받아 디버깅 시 디버그 심볼도 같이 포함되어 디버깅을 편하게 할 수 있게 해준다. 콜스택이 제대로 보여지게 된다. (참고 : 심볼 서버의 기능을 요약하면 '덤프 파일이 생길 때의 환경을 재현하기 위해서 필요한 심볼들을 자동으로 다운로드하는 것'이다) Determina PDB Plugin for IDA Pro 라는 IDA 플러그인을 이용하면 IDA에서도 디버그.. 2009. 11. 6.
아이다(IDA)에 Hex-Ray 연동 IDA에 Hex-Ray라는 디컴파일러 플러그인을 장착하면 분석에 가속도를 붙일 수 있다. (참고 : IDA의 플러그인은 openRCE에 잘 정리되 있다.(OllyDBG의 플러그인도 이사이트다)) http://www.openrce.org/downloads/browse/IDA_Plugins hex-ray 다운 : http://dakuo.tistory.com/23 hex-ray를 설치하시고 IDA에서 F5를 누르시면 디컴파일된 C언어 코드를 볼수 있습니다. C언어 소스를 작성한 후 hex-ray로 디컴파일 한 후 각각의 소스를 비교해보면 코드가 정확하게 일치하는 것은 상당히 비슷하다는 걸 알수가 있다. 2009. 11. 6.