'잡/Tip~!'에 해당되는 글 8건
- 2017.07.23 [Tip] pwntools에서 libc symbols을 이용한 주소 찾기
- 2017.07.22 [Tip] libc에서 binsh문자열 주소 찾는 방법 1
- 2017.01.17 [Tip] gdb heap command(gef) 4
- 2016.04.29 [Tip] Visual Studio에서 프로그램 컴파일 시 dll 포함시키는 방법
- 2015.12.30 FTZ Putty 접속 시 한글 설정
- 2015.11.08 IDA로 elf binary 동적 디버깅(IDA Linux 원격 디버깅)
- 2015.11.08 kali linux에서 ssh & sftp 서버 구동 방법
- 2014.01.07 모의 해킹 연습용 사이트(펌)
## pwntools에서 libc symbols를 이용한 주소 찾기
1. pwntools symbols 이용
=> leak_libc = ELF("./leak_libc")
=> libc_system = libc_base_addr + leak_libc.symbols['system']
이렇게 하면 릭한 libc로부터 오프셋을 변수로 지정할 필요 없이 바로 symbol로 그냥 주소 값을 구할 수 있다.
개꿀~!
'잡 > Tip~!' 카테고리의 다른 글
[Tip] libc에서 binsh문자열 주소 찾는 방법 (1) | 2017.07.22 |
---|---|
[Tip] gdb heap command(gef) (4) | 2017.01.17 |
[Tip] Visual Studio에서 프로그램 컴파일 시 dll 포함시키는 방법 (0) | 2016.04.29 |
FTZ Putty 접속 시 한글 설정 (0) | 2015.12.30 |
IDA로 elf binary 동적 디버깅(IDA Linux 원격 디버깅) (0) | 2015.11.08 |
## libc에서 "/bin/sh"문자열 주소 찾는 방법
1. pwntools 이용
=> leak_libc = ELF("./leak_libc")
=> binsh = leak_base_addr + list(local_libc.search('/bin/sh'))[0]
2. strings 이용
=> strings leak_libc | grep bin/sh
'잡 > Tip~!' 카테고리의 다른 글
[Tip] pwntools에서 libc symbols을 이용한 주소 찾기 (0) | 2017.07.23 |
---|---|
[Tip] gdb heap command(gef) (4) | 2017.01.17 |
[Tip] Visual Studio에서 프로그램 컴파일 시 dll 포함시키는 방법 (0) | 2016.04.29 |
FTZ Putty 접속 시 한글 설정 (0) | 2015.12.30 |
IDA로 elf binary 동적 디버깅(IDA Linux 원격 디버깅) (0) | 2015.11.08 |
## gdb heap command(gef)
1. gef란?
=> gdb Enhanced Features의 약자로 peda와 같이 gdb에 추가적인 기능들을 실행할 수 있고 보기 좋게
사용할 수 있도록 만들어주는 아주 좋은 툴이다.
2. gef 다운로드 & 사용 방법
1 2 3 4 5 6 7 | holinder4s@ubuntu:~$ git clone https://github.com/hugsy/gef.git holinder4s@ubuntu:~$ gdb -q (gdb) source ~/Desktop/plugin/gef/gef.py GEF for linux ready, type `gef' to start, `gef config' to configure 46 commands loaded for GDB 7.7.1 using Python engine 3.4 [*] 7 commands could not be loaded, run `gef missing` to know why. gef➤ | cs |
=> 위와 같이 git clone을 한 후 gdb 실행하고 나서 gdb console에서 source명령을 실행하면 된다.
3. gef heap command(1) - (heap chunk에 대한 정보 출력)
=> gef➤ heap chunk <LOCATION>
[그림 1] heap chunk 정보 출력
4. gef heap command(2) - (heap arenas 정보 출력)
=> gef➤ heap arenas
[그림 2] heap arenas 정보 출력
5. gef heap command(3) - (bin list 정보 출력)
=> gef➤ heap bins <bin종류>
=> ex) heap bins [fast / unsorted / small / large]
[그림 3] fastbins 정보 출력
6. peda도 마찬가지~
'잡 > Tip~!' 카테고리의 다른 글
[Tip] pwntools에서 libc symbols을 이용한 주소 찾기 (0) | 2017.07.23 |
---|---|
[Tip] libc에서 binsh문자열 주소 찾는 방법 (1) | 2017.07.22 |
[Tip] Visual Studio에서 프로그램 컴파일 시 dll 포함시키는 방법 (0) | 2016.04.29 |
FTZ Putty 접속 시 한글 설정 (0) | 2015.12.30 |
IDA로 elf binary 동적 디버깅(IDA Linux 원격 디버깅) (0) | 2015.11.08 |
## Visual Studio Static Library
(정적라이브러리) 컴파일 옵션
[그림 1] "dll을 찾을 수 없습니다."
평소 Visual Studio를 사용하여 프로그래밍을 해서 다른 사람한테 프로그램을 넘겨줄 때
상대방은 Visual Studio가 안깔려있는 경우가 많다.
그러면 상대방이 내가 준 프로그램을 실행시키려 할 때 [그림 1]과 같이 dll을 찾을 수 없다고 하며 실행을 할 수 없는데
그 이유는 visual studio가 default로 동적 라이브러리 방식으로 컴파일을 하기 때문이다.
따라서 이런 상황이 발생할 경우 컴파일 옵션을 정적 라이브러리 방식으로 바꿔 줘야하는데 Debug모드일 때와
Release모드일 때 설정법이 약간 다르다.
[그림 2] Compile 옵션 설정 화면
[그림 2]와 같이 Project우클릭 - [Properties] - [Configuration Properties] - [C/C++] - [Code Generation]에 들어가서
1. Debug 모드 컴파일 시
- [Runtime Library]항목을 Multi-threaded Debug (/Mtd)로 변경하면 된다.
2. Release 모드 컴파일 시
- [Runtime Library]항목을 Multi-threaded (/Mt)로 변경하면 된다.
그러면 dll이 포함되기 때문에 친구가 잘 실행시킬 수 있다.
'잡 > Tip~!' 카테고리의 다른 글
[Tip] libc에서 binsh문자열 주소 찾는 방법 (1) | 2017.07.22 |
---|---|
[Tip] gdb heap command(gef) (4) | 2017.01.17 |
FTZ Putty 접속 시 한글 설정 (0) | 2015.12.30 |
IDA로 elf binary 동적 디버깅(IDA Linux 원격 디버깅) (0) | 2015.11.08 |
kali linux에서 ssh & sftp 서버 구동 방법 (0) | 2015.11.08 |
## FTZ 구축 후 Putty 접속 시 한글 깨짐 현상
FTZ 로컬 서버를 구축한 후 본격적으로 문제를 풀려고 hint파일을 보면 다음 [그림 1]과 같이 깨져서 문제를 풀기가 힘들다.
[그림 1] putty 접속 시 한글 깨짐
이를 해결하는 방법은 다음과 같다.
1. Putty실행 화면에서 [그림 2]의 Translation 항목 클릭
[그림 2] Putty 실행 화면
2. 기본적으로 UTF-8로 세팅되어 있는데 이를 "Use font encoding"으로 바꾼다.
[그림 3] character set 설정
3. [Appearance] 옵션 항목 클릭 후 [그림 4]와 같이 스크립트를 한글로 font 세팅을 한다.
[그림 4] font setting
이제 세팅이 완료되었고 [그림 5]와 같이 hint파일을 볼 수 있다.
'잡 > Tip~!' 카테고리의 다른 글
[Tip] gdb heap command(gef) (4) | 2017.01.17 |
---|---|
[Tip] Visual Studio에서 프로그램 컴파일 시 dll 포함시키는 방법 (0) | 2016.04.29 |
IDA로 elf binary 동적 디버깅(IDA Linux 원격 디버깅) (0) | 2015.11.08 |
kali linux에서 ssh & sftp 서버 구동 방법 (0) | 2015.11.08 |
모의 해킹 연습용 사이트(펌) (0) | 2014.01.07 |
## IDA로 ELF Binary 원격 디버깅하기(IDA Linux 원격 디버깅)
일반적으로 Linux에서 동작하는 elf 바이너리는 정적 분석, 동적 분석을 할 수 있는데, 정적 분석은 보통 IDA를 이용하여 하게 된다. 그런데 가끔 분석하다 보면 동적 분석이 필요한 경우가 생기게 된다. 이럴때 동적 분석을 할 수 있는 방법에는 여러가지가 있는데 우선 가장 기본적으로 gdb를 이용하여 동적 분석을 할 수 있다. 하지만 dbg를 이용하여 하게 될 경우 익숙하지 않은 경우 좀 힘들 수 있는데, 이 때 사용할 수 있는 도구가 edb 또는 IDA의 원격 디버깅 기능을 이용하는 것이다. edb는 ollydbg를 모티브삼아 만든거라 뭐 편할 수도 있는데 여기서는 IDA의 원격 디버깅 기능을 정리할 것이다.([그림 1]을 보면edb는 한번도 안써봤지만 왠지 편할 거 같다.)
[그림 1] edb-debugger 실행 화면
이제 본격적으로 IDA로 elf파일을 원격으로 디버깅 해보도록 하겠다.
1. VMware(Linux System)에 대상 프로그램과 ida 파일들 중에 linux_server(elf파일)을 옮긴다.
[그림 2] Linux System
2. ./linux_server를 실행한다.
[그림 3] linux_server 실행
[그림 2]와 같이 linux_server를 실행하면 23946포트로 접속을 리스닝하게 된다. 그럼 이제 IDA에서 접속하면 된다.
3. IDA를 켜고 [Debugger] - [Run] - [Remote Linux Debugger]를 선택한다.
[그림 4] Remote Linux debugger 선택
4. 그럼 [그림 5]와 같은 화면이 나타나는데 [Application] 항목에는 디버깅 하고자 하는 파일의 절대경로명을 써주면 되고,
[Directory]에는 그 파일의 디렉터리의 절대경로명 [Parameters]에는 프로그램의 인자 값(없으면 안쓰면 됨), [Hostname]
에는 대상 Linux System의 IP주소, [Password]는 빈칸으로 두면 된다.
[그림 5] 설정 화면
5. 그럼 이제 뜨는 창은 전부 OK하면 [그림 6]과 같이 디버깅이 가능하다.
[그림 6] IDA 원격 디버깅 실행 화면
6. 끝!
'잡 > Tip~!' 카테고리의 다른 글
[Tip] gdb heap command(gef) (4) | 2017.01.17 |
---|---|
[Tip] Visual Studio에서 프로그램 컴파일 시 dll 포함시키는 방법 (0) | 2016.04.29 |
FTZ Putty 접속 시 한글 설정 (0) | 2015.12.30 |
kali linux에서 ssh & sftp 서버 구동 방법 (0) | 2015.11.08 |
모의 해킹 연습용 사이트(펌) (0) | 2014.01.07 |
## kali linux에서 ssh & sftp 서버로 사용하는 방법(보안조치x)
일반적으로 리눅스 시스템에는 ssh 데몬이 설치되어 있다. sshd에는 sftp데몬도 포함되어 있는데 이를 이용하여 리눅스 시스템에서 sftp서버를 운영할 수 있다.
1. 현재 구동되고 있는지 확인
2. sftp기능이 sshd의 서브시스템으로 설정되어있는지 확인
제대로 설정되어있지 않으면 vi에디터로 추가
3. ssh데몬 구동
4. 윈도우에서 winSCP설치 후 접속
'잡 > Tip~!' 카테고리의 다른 글
[Tip] gdb heap command(gef) (4) | 2017.01.17 |
---|---|
[Tip] Visual Studio에서 프로그램 컴파일 시 dll 포함시키는 방법 (0) | 2016.04.29 |
FTZ Putty 접속 시 한글 설정 (0) | 2015.12.30 |
IDA로 elf binary 동적 디버깅(IDA Linux 원격 디버깅) (0) | 2015.11.08 |
모의 해킹 연습용 사이트(펌) (0) | 2014.01.07 |
----------------------------------------------------------------------------------------------------------
[출처] 모의해킹을 연습할 수 있는 환경을 제공하는 사이트|작성자 Exception
출처) http://kyaru.blog.me/130156837353
'잡 > Tip~!' 카테고리의 다른 글
[Tip] gdb heap command(gef) (4) | 2017.01.17 |
---|---|
[Tip] Visual Studio에서 프로그램 컴파일 시 dll 포함시키는 방법 (0) | 2016.04.29 |
FTZ Putty 접속 시 한글 설정 (0) | 2015.12.30 |
IDA로 elf binary 동적 디버깅(IDA Linux 원격 디버깅) (0) | 2015.11.08 |
kali linux에서 ssh & sftp 서버 구동 방법 (0) | 2015.11.08 |