본문 바로가기

Tool

PuTTY 사용하기(원격접속 프로그램) 다운받은뒤 설치를 한다. 실행을 시키면 다음과 같은 창이 뜨는데 자기한테 맞게 설정을 해줄수 있다. 접속할 호스트와 포트, 프로토콜을 입력한뒤 열기를 누르면 접속된다. (자주 접속하는 곳에 대한 정보는 세션에 저장을 하면 편하게 이용할수 있다) 더보기
암호 인코딩(encoding), 디코딩(decoding) 툴(SnD_RT) 실행시키신 후 function 에서 원하는 암호 인코딩 or 디코딩을 선택하신 후 (base64, rot13, url, md5 등등 왠만한건 거의 다있습니다) input 과 key(암호화 방식에 따라 없을수도)에 데이터를 넣어주시면 output 에 결과값이 나옵니다. 더보기
Dakuo Hacking Infra System (DHIS) 개념 : 1. 파티션 개념 : http://dakuo.tistory.com/entry/파티션Partition의-개념 2. 멀티부팅 : http://dakuo.tistory.com/entry/멀티부팅Multi-Booting 구축 : 1. 리눅스 설치 : http://dakuo.tistory.com/entry/리눅스backtrack4-설치 2. 포터블 SW 만들기 : http://dakuo.tistory.com/entry/Portable-SW-제작 3. 인터페이스 설정 : http://dakuo.tistory.com/entry/USBpro를-이용한-인터페이스-구축 Dakuo Hacking Infra System (DHIS) : USB를 꼽고 부팅하면 리눅스(backtrack4)가 자동으로 부팅됩니다. (물론.. 더보기
인스톨(Install) 파일 만들기(NSIS 이용) NSIS는 오픈소스 프로그램이므로 무료이며 수정된 프로그램도 많이 배포되고 있다. 하지만 NSIS는 자기가 직접 스크립팅 해서 Install 파일을 만들어야 한다는 큰 단점이 있었다. 하지만 HM NIS Edit 라는 프로그램이 NSIS 확장자 파일을 쉽게 수정할 수 있게 하고 스크립트 작성 마법사를 지원해 쉽게 NSIS로 인스톨 파일을 만들수 있게 하면서 가장 쉬운 인스톨러 제작프로그램이 되었다. 먼저 HM NIS Edit 프로그램을 실행시켜서 표시한 아이콘을 누른다. 프로그램 이름과, 버전, 배포자, 웹사이트를 넣고 그 다음 설치 아이콘, 설치 파일(설치파일명), 설치 언어, GUI, 압축을 원하는 것으로 선택하고 (전 여기서 파일이름과 아이콘을 변경하였습니다.) 프로그램 기본 디렉토리 설정하시고 라.. 더보기
USBPro를 이용한 USB 인터페이스 구축 http://cafe.naver.com/picxwallpaper 여기서 USBPro v1.3.5.1 을 다운로드 받습니다. 이 파일을 설치하고자 하는 USB에 넣어주신 후에 실행을 합니다. 설정하기 : 설정 -> 환경설정 실행창 옵션에서 자신한테 필요한 옵션들을 체크하시고 시작/종료옵션에서도 체크하시고 (종료옵션에 다 체크하시면 USBPro만 종료해도 하드웨어 안전제거까지 다 되서 그냥 USB 뽑으시기만 하면 됩니다) 아이콘 설정과 바탕 화면 자신의 취향대로 하시고 단축키 설정도 실행창 열고(닫기), USBPro 종료정도가 설정할만하다고 생각됩니다. 기타에서도 필요한 옵션을 체크하시고 적용을 누르시면 됩니다. (참고 : 설정 -> Autorun.inf 설정 이라고 있습니다. 하지만 이옵션은 현재에는 있으.. 더보기
VMware 사용법 VMware 6.5.2 버전입니다. 토렌토 파일이구요. (토렌토 사용법을 모르시는 분은 http://dakuo.tistory.com/entry/토렌토torrent-사용하기) VMware : 가상으로 컴퓨터를 만들어주는 툴입니다. 어떤 악성 프로그램을 실험하거나 여러 운영체제에서 테스트를 해야할 때 레지스트리 같은 것을 건드릴때 등 아주 유용하게 쓸수 있습니다. 오류가 발생해도 VM 이미지를 지우면 그만이니까요. VM 메뉴 소개 : 먼저 조작할 버추얼머신을 활성화시켜놓고 정지버튼은 버추얼 머신을 끄는 기능입니다. (전원을 차단하는거랑 똑같습니다) 재생버턴은 버주얼 머신을 키는 기능입니다. (전원을 킵니다) 그다음 버튼은 버추얼 머신을 리스타트 시키는 기능입니다. (그외에는 별 중요한 기능이 아니므로 설명을.. 더보기
토렌토(torrent) 사용하기. 무설치버전이므로 압축만 푸시면 됩니다. 이걸 실행한 후에 구글링으로 필요한 자료를 검색하셔서 ----.torrent 파일을 다운로드 받으신후에 실행하시면 다운로드 받으실수 있습니다. 요새 가장 완벽한 파일공유시스템입니다. (토렌토파일 공유 사이트 가입하셔서 자료 검색하셔도 되지만 전 그게 좀 싫어서 그냥 구글링으로 검색한후에 다운받아서 씁니다) 더보기
Portable S/W 제작 http://mocker2080.tistory.com/entry/Thinstall-3332 (여기서 Thinapp 4.0.4 를 다운받습니다) 설치를 하지 않고도 실행이 가능한(무설치) Portable S/W 들을 많이 봤을 겁니다. 하지만 남들이 만들어 주는 걸로는 제가 필요한 것들을 다 구하기가 어렵더라고요. 그래서 직접 공부를 해서 만들어보게 됬습니다. (엄청 간단합니다 툴이 다 해줘서요 ㅎ) 전 Vm사에서 나온 Thinapp(Thinstall) 라는 툴을 사용하였습니다. 먼저 간단하게 원리를 설명해드리고 넘어가겠습니다. 이툴은 현재의 하드 이미지를 저장합니다. 그런 다음에 파일을 설치하고 진행을 하라고 하죠. 자 파일을 설치한 다음에 진행을 하면 또 하드 이미지를 저장합니다. 저 첫번째와 두번째 .. 더보기
헥스에디터(Hex-Editors) 헥스에디터(Hex-editors) : 바이너리 파일을 분석하거나 수정할 때 사용한다. 파일을 16진수 코드로 보여준다. (참고 : 16진수 코드나 어셈코드나 같은겁니다. 어셈코드는 16진수 코드를 우리가 보기 쉽게 문자로 치환했을 뿐입니다. 예를 들어 16진수로 0x6A 라는 숫자가 어떤 일을 한다고 했을때 이 숫자만 보고 그 일을 한다는 것을 사람이 알기에 쉽지 않으므로 여기에 PUSH 라는 이름을 붙여 사람이 해석하기 쉽게 해주는겁니다. 즉 16진수 코드랑 어셈코드는 같은 것을 표현하는데 숫자냐, 문자냐일 뿐인것이죠) .exe나 .dll 같은 윈도우 PE 구조의 파일이나 확장자가 없거나 다른 확장자의 파일을 분석할때 헥스에디터로 열어서 그 바이너리 파일의 헤더를 보고 어떤 종류의 파일인지 (참고 : .. 더보기
네트워크 모니터링 툴(Network-Monitoring Tool) 네트워크 모니터링 툴(Network-Monitoring Tool) : 프로그램들이 외부와 어떤 통신을 하고 있는지 확인하는 용도로 사용한다. 대표적인 툴로 와이어샤크(wireshark)가 있다. (참조 : http://www.wireshark.org/) 무료로 사용할 수 있고 패킷(packet) 캡처 툴로 다양한 프로토콜(protocol)로 전송되는 것드을 분석해서 보여준다. 와이어샤크는 WinPcap 네트워크 제어 라이브러리를 사용하고 있다. 따라서 설치중에 같이 설치된다. 실행후 네트워크 카드를 선택해주고, 필터링할 옵션만 넣어주면 바로 네트워크 패킷들을 캡처한다. 툴바의 첫 번째 버튼을 클릭하면 네트워크 인터페이스를 선택하는 화면이 나타나는데 자신이 사용하는 인터페이스의 start 버튼을 누르면 모.. 더보기
바이너리 분석 바이너리 분석(Binary Analysis) 툴은 어떤 패커를 이용해서 바이너리를 패킹했는지, 어떤 언어로 제작된 프로그램인지를 알아 낼 때 사용된다. PEID : 파일을 열어도 되고 드래그 앤 드롭을 하여 파일을 넣을 수도 있다. 또한 Multi Scan 기능으로 여러개의 파일을 분석할 수 있다. 플러그인에는 unpack을 해주거나 문자열을 추출해주는 것들이 있다. 리소스 해커 : 리소스를 분석해야 하느 경우, 프로그램 내부에서 사용되는 문자열이나 아이콘, 이미지, 폼 구조에 대해서 분석할 때 사용된다. 사용전에 PEID 같은 툴로 패킹이 되어있는지 확인을 먼저 해야한다. 패킹이 되어 있으면 이런 경고가 뜬다. 프로그램에서 사용되는 아이콘이나 bitmap들을 추출해서 저장할 수 있고, 프로그램에서 사용.. 더보기
메모리 패치(Memory Patch) 메모리 패치(Memory Patch) : 윈도우 운영체제가 사용중인 메모리 값들을 검색해서 원하는 값으로 변경을 하는 것 유명한 툴로는 티서치(Tsearch)와 치트엔진(Cheat Engine)이 있다. 티서치(Tsearch) : 1. 메모리 값 수정 2. 어셈코드를 추가해 넣는 코드인젝트(Code Inject) 3. 바이너리 수정(Hexedit) 4. 동적 메모리 할당(DMA) 방식의 메모리 값 수정 티서치를 이용하여 간단한 메모리 값 수정을 해보겠다. 그 외의 기능은 Help메뉴를 실행하면 제작자가 메뉴얼을 스샷과 예제 파일까지 포함시켜 쉽게 익힐 수 있다. 1. Open Process 2. 메모리의 특정 값 검색 3. 메모리 주소를 검색한 결과창 4. 메모리 주소의 값을 수정하는 곳 원하는 메모리 .. 더보기
디컴파일러(Decompliers) 디컴파일러(Decompilers)는 바이너리를 역으로 컴파일해주는 툴이다. 역으로 컴파일을 하여 어셈블리어로 코드가 나타나거나 리소스 파일들이 추출된다. 디컴파일러를 사용하려면 바이너리 분석 툴을 이용하여 바이너리의 컴파일러와 해당 버전을 알아내고, 해당 컴파일러를 지원하는 툴을 찾아서 실행만 하면 된다. 바이너리가 패킹이 되어있으면 언패킹하고 바이너리의 컴파일러가 어떤 것인지를 PEID와 같은 바이너리 분석툴로 확인이 가능한 상태이어야 디 컴파일러를 사용할수 있다. 분석 후 프로그램을 제작한 환경에 맞게 디컴파일러를 사용하면 원래 소스와 비슷한 결과물을 얻을 수 있다. 주요한 디컴파일러들이다. 자바 디컴파일러 : 델파이 디컴파일러 : 플래시 디컴파일러 : 닷넷(.net) 디컴파일러 : 더보기
아이다(IDA)에 MS 심볼 서버 연동하기 아이다(IDA)로 윈도우 바이너리를 리버싱하게 되면 Functions window에서 함수의 이름이 보이지 않고 'Sub_주소' 으로 보이게 된다.(다음 화면은 winmine.exe를 open한 화면) 이러면 분석이 어려우므로 함수의 이름을 보기 위해 MS 심볼 서버와 연동을 시켜야 한다. MS 심볼 서버 : MS에서 디버그 심볼을 자동으로 다운로드 받아 디버깅 시 디버그 심볼도 같이 포함되어 디버깅을 편하게 할 수 있게 해준다. 콜스택이 제대로 보여지게 된다. (참고 : 심볼 서버의 기능을 요약하면 '덤프 파일이 생길 때의 환경을 재현하기 위해서 필요한 심볼들을 자동으로 다운로드하는 것'이다) Determina PDB Plugin for IDA Pro 라는 IDA 플러그인을 이용하면 IDA에서도 디버그.. 더보기
아이다(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로 디컴파일 한 후 각각의 소스를 비교해보면 코드가 정확하게 일치하는 것은 상당히 비슷하다는 걸 알수가 있다. 더보기
아이다(IDA) 사용법 디스어셈블러 : 바이너리 파일을 역으로 어셈블리어로 재구성해주는 툴 IDA가 거의 독보적인 자리를 차지하고 있고, 기능도 다양하다. 아이다(IDA)의 장점 : 1. 거의 모든 CPU를 지원 2. FLIRT(Fast Library Identification and Recognition Technology)는 기계어의 코드로부터 컴파일러 특유의 Library 함수를 산출해낼 수 있는 강력한 기능 3. 각종 플러그인 지원 4. Obfuscation(난독화) 코드도 해석이 잘됨 IDA 설정 : IDA의 설정 파일은 ..\IDA\cfg 경로에 있으며 세부 설정을 할 수 있다. 단축키(idagui)를 재설정할 수 있고 disable된 설정을 enable시킬 수도 있다. 디스어셈블 상태와 디버깅 상태에서 특정 어셈블.. 더보기
시스템 모니터링 툴 파일과 레지스트리 변화와 네트워크 상태, 프로세스의 상태를 분석하는 툴들을 소개한다. (2010. 11. 15. 월요일 확인결과 Filemon 이 없어지고 Process Moniter 가 생겼네요. 사용법은 똑같으니 다운받아서 아래처럼 사용하세요 ㅎㅎ) ProcessMonitor : 어플리케이션이 파일들을 어떻게 사용하는지 실시간으로 모니터링해서 오픈, 읽기, 쓰기, 삭제 등의 상황을 정확히 출력해준다. Filemon.exe를 실행하면 돋보기 모양 : 모니터링(Ctrl+E), 모리시계모양 : 필터링(Ctrl+L) 돋보기 모양의 모니터링 버튼(Ctrl+E)을 이용하여 모니터링 시작 · 중지를 할수 있다. 프로그램을 켜놓기만 하면 이벤트 정보가 로그로 쌓이지만 그 양이 너무 많아서 옵션을 주어야 한다. 먼저.. 더보기
올리디버거(OllyDBG) 사용법 리버싱을 하기 위해서 이용되는 툴중에 디버거라는 것이 있다. 이 디버거들 중에 가장 대표적인 것은 올리디버거(OllyDebugger)이다. odbg110.zip를 다운로드 받아서 odbg110 폴더에 압축을 풀고 Plugin폴더와 UDD폴더를 생성한다. Win32_Programmers_Reference.rar로 압축을 풀어 wn32.hlp 파일을 obdg110 폴더에 넣는다. BOOKMARK.dll과 cmdline.dll은 Plugin폴더에 넣는다. Ollydbg.exe를 실행하고 Option -> Appearance ->Directories를 열고 그림과 같이 경로 설정을 하고 다시 실행을 해준다. 이외에 설정해 주면 좋은 옵션은 작업관리자의 프로세스 목록에서 바로 디버깅 연결이 가능한 Jit(Just.. 더보기