-
반응형
- Use dnSpy - a free opensource .net debugger and assembly editor https://github.com/0xd4d/dnSpy
- Setup symbol server with dotPeek (also free) https://www.jetbrains.com/help/decompiler/Using_product_as_a_Symbol_Server.html
- Use Resharper decompiler to load symbols for external modules in your visual studio. I think this is the easiest way. I've described the whole process on my blog https://cezarypiatek.github.io/post/debug-without-sources-part-one/
dnspy - 사용법 (.Net assembly-editor, debugger, decompiler)
Jaeseokim 2019. 12. 23. 23:06
jaeseokim.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의 값이 그대로 보이는 것을 알 수 있다.
좋아요공감
공유하기
글 요소
구독하기
출처: https://jaeseokim.tistory.com/84 [Jaeseo's Information Security Story]반응형