닷넷 디컴파일 툴 .Net Reflector, reflexil 추가 및 사용법
- 리버싱/리버싱
- 2020. 3. 16. 19:41
닷넷 디컴파일 툴로는 dotpeek 밖에 사용해보지 않았는데, 소스 수정이 안된다는 단점이 있었다. 물론 dotpeek에서 export를 시키면 비쥬얼 스튜디오 프로젝트 파일로 저장이 되고 여기서 소스 수정 후 빌드를 다시 해주어도 되지만, 비쥬얼 스튜디오와 닷넷 버전? 호환이 안되는 건지 빌드가 제대로 안되는 경우가 있었다.
그래서 구글링하던 중 닷넷 디컴파일 툴로 많이 사용되는 .Net Reflector에 reflexil 툴을 추가시키면 간단하게 소스 수정을 해볼 수 있다는 것을 알게되어 간단히 reflexil 추가 방법과 사용법을 여기에 정리한다.
reflexil 다운로드
아래 링크에서 reflexil을 다운로드받을 수 있다.
다운로드 파일이 여러개가 존재하는데, Reflector 플러그인으로 사용할 것이기 때문에 for Reflector인 것 중에 "reflexit.for.Reflector.2.3.AIO.bin.zip"을 다운받아 주었다.
reflexil 추가
다운로드 받은 zip파일을 열어보면 아래와 같이 "Reflexit.Reflector.AIO.dll" dll 파일이 있다.
해당 파일을 .NET Reflector 설치 경로의 Addins 폴더에 넣어준다.
Reflector을 실행한 후, Tools>Add Ins... 를 클릭하면 아래와 같은 창을 볼 수 있는데 오른쪽 아래 '+'로 추가해준 dll을 클릭해준다.
그럼 아래와 같이 Tools에 추가된 것을 볼 수 있다.
reflexil 사용법
간단한 사용법 한가지를 예로 들려한다(사실 그냥 내가 아직 한번밖에 안써봤다...) Tools에서 reflexil을 실행시키면 소스부분 아래와 다음과 같이 reflexil 창이 밑에 도킹된다. 여기서 특정 변수를 수정하려면 해당 변수를 찾은 후 마우스우클릭에 Edit을 클릭한 후 Operand 부분의 값을 수정한 후 Update를 해주면 된다.
그리고 변경한 소스대로 프로그램을 저장하려면 '자신이 수정한 프로그램명 마우스우클릭 > Relfexil > Save as'로 저장하면 된다.
'리버싱 > 리버싱' 카테고리의 다른 글
DLL 인젝션을 통한 지뢰찾기 코드 후킹 (Code Hooking) 구현 (2) | 2020.03.21 |
---|---|
CreateRemoteThread를 사용한 DLL 인젝션 구현 (10) | 2020.03.18 |
NtQueryInformationProcess를 이용한 안티디버깅 (0) | 2020.03.14 |
[원데이 취약점] GOM Player 2.0.12.3375 - '.asx' Local Stack Overflow (0) | 2020.03.11 |
IDA 사용법 및 분석 시 유용한 팁 (0) | 2020.03.07 |