반응형
이번 문제는 C#으로 짜여진 프로그램을 dnspy를 통해 디버깅하여 풀어보는 문제이다.
먼저 dnspy의 주요 단축키를 알아보자.
- F9 : break point
- F10 : step over
- F11 : step into
- Shift + F11 : step out
- Ctrl + Shift + F5 : restart
- F5 : start
이부분에서 global::0.1()을 통해, ID와 PW를 입력받는다.
어떤 값을 넣어줘도 flag는 false가 나오고 else문으로 분기하게된다.
그래서 if(flag2)부분에 bp를 걸고, true로 바꿔서 안으로 진입한다.
global::0.2()로 분기하면, EMPTY_NAME에 어떠한 문자열을 저장하는데,
문자열의 내용을 보면,
"ThisIsAReallyReallySecureKeyButYouCanReadItFromSourceSoItSucks" 라는 문자열이 저장되어있다.
그 후, b에 문자열을 입력받고 EMPTY_NAME과 비교하여 같으면 플래그를 출력해준다.
당연하게 b에 "ThisIsAReallyReallySecureKeyButYouCanReadItFromSourceSoItSucks"를 입력하고,
비교결과 플래그가 나온다.
반응형
'Rev > Write-up' 카테고리의 다른 글
HTB - exalton_v1 (0) | 2021.01.20 |
---|---|
HTB - Hackybird (0) | 2021.01.18 |
HTB - debugme.exe (0) | 2021.01.13 |
HTB - headache (0) | 2021.01.11 |
HTB - BombsLanded (0) | 2021.01.07 |