[질문] JNI hooking에 관해서

안녕하세요. 요즘 JNI보다가 보니 문득 궁금한게 생겼네요.
Xxx.so에서 aaa라는 함수가 어떠한 동작을 하는지 보려면
동적분석이나 JNI env에서 사용하는 함수를 후킹해서 어떠한 함수들이 호출되는지를 보고 aaa 함수를 파악하는걸로 보이는데요.
만약에 Xxx.so에 안티디버깅과 같은 모듈이 있을 시
Ida로 붙여서 디버깅하는거랑 JNI env 모든 함수를 후킹해서 보는거랑 각각의 어떤 장단점이 있을까요?
자료를 보다보니 동적으로 Dex를 로딩하는게 xxx.so에 있고 그안의 함수(심볼)을 후킹 후 JNI env에 있는 모든 함수를 후킹을 걸어서 보더라구요....
아직도 JNI hooking게 왜 필요한지, 그리고 어떠한 함수들이 실제 안티디버깅에 쓰이는질 잘 모르겠네요.... ㅠ.ㅠ
Xxx.so에서 aaa라는 함수가 어떠한 동작을 하는지 보려면
동적분석이나 JNI env에서 사용하는 함수를 후킹해서 어떠한 함수들이 호출되는지를 보고 aaa 함수를 파악하는걸로 보이는데요.
만약에 Xxx.so에 안티디버깅과 같은 모듈이 있을 시
Ida로 붙여서 디버깅하는거랑 JNI env 모든 함수를 후킹해서 보는거랑 각각의 어떤 장단점이 있을까요?
자료를 보다보니 동적으로 Dex를 로딩하는게 xxx.so에 있고 그안의 함수(심볼)을 후킹 후 JNI env에 있는 모든 함수를 후킹을 걸어서 보더라구요....
아직도 JNI hooking게 왜 필요한지, 그리고 어떠한 함수들이 실제 안티디버깅에 쓰이는질 잘 모르겠네요.... ㅠ.ㅠ