Frida를 공부하면서 약간의 흥미와 동기부여를 위해 Unity 게임 App들을 한번 후킹해보자! 라는 생각으로 Unity App Hooking쪽으로 공부를 시작했습니다.
린님과 다른 분들이 자료들을 잘 정리해주셔서 큰 어려움없이 접근할 수 있었습니다.
근데 제가 아직 많이 부족한가 봅니다...
Assembly-CSharp.dll 에서 정확한 타겟메소드의 RVA값을 확인하고, libil2cpp.so / libmono.so 각 각의 base주소에 더하여 Interceptor.attach를 하였는데
분명 돼야 할 것이 안되니까 여간 답답한게 아니네요..ㅠ
il2cpp같은 경우는 Assembly-CSharp.dll에서 확인한 RVA값을 IDA로 직접 찾아가보면 Function 프롤로그 부분으로 정확한 위치가 맞다고 판단이 되는데,
mono같은 경우는 RVA값이 애매한 Function 중간에 위치하거나, 전혀 아닐 것 같은 Function을 가리키고 있어서 더 혼란스럽습니다.
이것 저것 삽질하다 보니 어느 새 Unity Engine Manual 까지 도달 했는데, Inside가 너무 깊어서 쉽게 파악이 힘드네요 하하..
린님과 여러 고수분들 정말 대단하십니다.