일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 번역
- 해설
- cryptography
- CTF
- 시스템
- picoCTF2018
- write up
- 정답
- reversing
- dreamhack
- picoCTF
- 해킹 공부
- WEB
- 스택
- Aleph One
- 시스템해킹
- Smashing The Stack For Fun And Profit
- #hacking
- Protostar
- 리버싱
- 카이사르
- general skills
- grep
- Hxd
- KOISTUDY
- #picoCTF2018
- 버퍼오버플로우
- 리눅스
- writeup
- forensics
- Today
- Total
목록Hacking&Security/리버싱[reversing] (5)
Security || AI
리버싱 문제를 풀다가 ROL, ROR이 나왔는데, 기드라의 경우 디컴파일 결과가 단지 >>와 같이 쉬프트 연산만 수행하는 방식으로 나오는 문제를 겪었다. 따라서, 이를 해결하기 위해 파이썬으로 ROL, ROR 함수를 따로 구현하였다. ROR: 00010001이면, 10001000이 된다. def ror(x, n): shiftBit = x >> n carryBit = x 8 - n return shiftBit | carryBit
Angr는 파이썬을 활용한 바이너리 분석 도구이다. Symbolic Execution을 통해 알지 못하는 값을 심볼로 표현한 다음 실행할 수 있다. 리버싱, 시스템 해킹 등에서도 두루두루 사용하기 좋은 툴이다. 설치하기 python3가 설치되어 있다면 설치 가능하다. ※ Z3-solver, angr를 사용하면 서로 부딪히는 현상이 발생할 수 있으므로, 파이썬 가상환경으로 분리하는 것이 좋다. angr 설치 과정 pip3 install pyvex pip3 install unicorn pip3 install simuvex pip3 install angr 사용 예제 풀어볼 예시 문제 github.com/wizleysw/CTF/tree/master/defcamp_r100 wizleysw/CTF What I ha..
이번에 미국 NSA에서 기존의 비쌌던 IDA에 버금가는 성능인 오픈소스 디버거 툴인 기드라(Ghidra)를 공개하면서 IDA대신 사용할 수 있는 디버거가 생겼다. 이 글에서는 기드라를 설치하고 프로그램을 분석할 수 있게 실행을 하는 방법에 대해서 다루어 볼 것이다.https://ghidra-sre.org/ 이 링크에서 설치할 수 있다. Download Ghidra를 클릭하면 압축파일을 다운받게 되는데, 압축파일을 다운받은 후 원하는 폴더에다가 압축을 풀면 된다. 여기서 ghidraRun.bat을 실행시키면 ghidra가 실행된다. 이 창이 뜨면 I agree를 눌러 동의하면 된다. 이제 여기까지 진행되면 설치는 완료된 것으로 이제 리버싱을 할 파일을 불러오면 된다.좌측상단에 File을 누르면 가장 처음에..
올리디버거를 실행하는 과정에서 Themida 또는 Winlicense라는 제목의 실행 오류 창이 뜹니다. 오류의 내용을 보면 "디버거가 시스템에서 실행 중이므로 이를 메모리에서 제거한 후 프로그램을 다시 실행해라" 라는 말이 뜹니다. 해결방법 1. 작업표시줄에서 오류창의 아이콘을 우클릭한 후 프로그램의 이름을 확인합니다. 2. 작업관리자에 들어가 해당 프로그램의 파일 위치를 확인합니다. (우클릭해서 확인 가능) 3. 프로그램의 폴더 안에 uninstall.exe나 unins.exe 와 같이 프로그램을 삭제하는 프로그램이 있으면 프로그램을 실행시켜서 삭제하거나 제어판에 들어가 해당 프로그램을 삭제합니다. 주로 은행같은 곳에서 설치한 보안프로그램이 오류를 일으키는 경우가 많습니다.
PEDA에 설치하기 앞서 github에서 clone을 사용하여 PEDA를 설치해야 하므로 아래의 명령어를 실행합니다. sudo apt install git설치한 다음 PEDA를 설치하기 위해 명령어를 실행합니다. git clone https://github.com/longld/peda.git ~/peda echo "source ~/peda/peda.py" >> ~/.gdbinit echo "DONE! debug your program with gdb and enjoy" 설치를 완료한 후에 gdb를 실행시키면 아래와 같이 gdb-peda로 변한 것을 확인할 수 있습니다.