일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
29 | 30 | 31 |
Tags
- Linux
- RITSEC
- Nop Slide
- HackCTF
- BOF
- SQL Injection
- requests
- termux
- writeup
- 뉴스클리핑
- 버퍼오버플로우
- RITSEC CTF 2019
- PWN
- NewsClipping
- Next.js
- ctf
- buffer over flow
- ftz
- 웹해킹
- Hackerschool
- 보안뉴스
- x64dbg
- 리버싱
- Python
- reversing
- 어셈블리어
- Shadow 동아리
- 리눅스
- webhacking
- CodeEngn
Archives
- Today
- Total
Jaeseo's Information Security Story
dnspy - 사용법 (.Net assembly-editor, debugger, decompiler) 본문
Security Study/Reversing
dnspy - 사용법 (.Net assembly-editor, debugger, decompiler)
Jaeseokim 2019. 12. 23. 23:06jaeseokim.github.io/Security/dnspy-%EC%82%AC%EC%9A%A9%EB%B2%95-Net-assembly-editor-debugger-decompiler/
dnspy란?
-
Debug .NET and Unity assemblies
-
Edit .NET and Unity assemblies
dnspy 설치 방법
github에서 직접 소스를 다운받아 build를 하여 설치가 가능하다.
git clone --recursive https://github.com/0xd4d/dnSpy.git
cd dnSpy
# or dotnet build
./build.ps1
또는 releases 된 파일을 받아서 사용이 가능하다.
dnspy 간단 사용법
Debug용 단축키 설명
단축키 | 기능 |
---|---|
F5 | Start Debugging |
Ctr + F5 | Start without debugging |
F9 | BreakPoint |
Ctr + Shift + F5 | Restart |
Alt + Num * | 현재 작동중인 위치로 이동 |
F10 | Step Over |
F11 | Step Into |
Shift + F11 | Step Out |
Ctr + Shift + F9 | Delect All BreakPoint |
Ctr + Alt + P | Attach to Process |
Ctr + Alt + C | View Call Stack |
Ctr + Alt + H | View Threads |
Ctr + Alt + U | View Modules |
Ctr + Alt + Z | View Processes |
Ctr + 6 | View Memory 1 |
Alt + 4 | View Locals |
Editer용 단축키 설명
단축키 | 기능 |
---|---|
Ctr + F | Find |
Ctr + Shift + K | Find Assembiles |
Ctr + X | Open Hex Editor |
Del (커서가 함수를 가르키고 있을 때) | Delete Function |
Alt + Enter (커서가 함수를 가르키고 있을 때) | Edit Method |
dnspy 간단 사용 예제 - X-MAS: Lapland Mission
dnspy 간단 사용 예제 - CodeEngn RCE basic 13번
문제를 보면 C#으로 짜여진 문제 인데 이때 dnspy를 통해 간단하게 디버깅으로 해결이 가능하다.
F5
를 눌러 디버깅을 시작한다.
그러면 시작 할때 Break 지점도 설정이 가능한데 이때 Entry Point로 설정을 하고 실행을 해본다.
그러면 프로그램이 어디에서 동작하고 있는지 그리고 밑에 있는 창을 통해 변수값을 볼 수 있다.
F10
를 통해 한줄씩 프로그램을 진행 시킬 수 있다.
진행을 하다 보면 비교를 해야하는 암호문인 text의 값이 그대로 보이는 것을 알 수 있다.
'Security Study > Reversing' 카테고리의 다른 글
GDB(GNU Debuger) 간단 사용법! (2) | 2019.11.12 |
---|---|
리버싱 기초 - 기초 명령어 (0) | 2019.10.14 |
리버싱 기초 - 범용 레지스터 (0) | 2019.10.14 |
Comments