ZSShen / ProbeDroid

A SDK for the creation of analysis tools without obtaining app source code in order to profile runtime performance, examine code coverage, and track high-risk behaviors of a given app on Android 5.0 and above.
MIT License
197 stars 37 forks source link

Bad character in dex file name make JNI crash #3

Open Bletchley13 opened 8 years ago

Bletchley13 commented 8 years ago

The instrument dex file name contains some bad character, e.g. "/data/data/it.polictf2015/instrument/app-debug((�.dex". As the result, the jni will crashes and the app ends. The related log is list below:

04-28 15:47:05.242 3426-3426/? W/linker: libProbeDroid.so has text relocations. This is wasting memory and prevents security hardening. Please fix. 04-28 15:47:05.242 3426-3426/? D/ProbeDroid: (I) [/home/re/ProbeDroid/engine/jni/boot.cc:451] Instrument Bootstrap, pid=3426 04-28 15:47:05.244 3426-3439/? D/ProbeDroid: (E) [/home/re/ProbeDroid/engine/jni/boot.cc:224] idx_bgn a635205b 04-28 15:47:05.244 3426-3439/? D/ProbeDroid: (E) [/home/re/ProbeDroid/engine/jni/boot.cc:225] idx_end a6352063 04-28 15:47:05.244 3426-3439/? D/ProbeDroid: (E) [/home/re/ProbeDroid/engine/jni/boot.cc:226] idx_bgn app-debug((� 04-28 15:47:05.254 938-938/? I/art: Explicit concurrent mark sweep GC freed 5(160B) AllocSpace objects, 0(0B) LOS objects, 90% free, 110KB/1134KB, paused 23.817ms total 33.020ms 04-28 15:47:05.272 3426-3439/? A/art: art/runtime/check_jni.cc:65] JNI DETECTED ERROR IN APPLICATION: input is not valid Modified UTF-8: illegal start byte 0xa6 04-28 15:47:05.272 3426-3439/? A/art: art/runtime/check_jni.cc:65] string: '/data/data/it.polictf2015/instrument/app-debug((�.dex' 04-28 15:47:05.272 3426-3439/? A/art: art/runtime/check_jni.cc:65] in call to NewStringUTF 04-28 15:47:05.272 3426-3439/? A/art: art/runtime/check_jni.cc:65] "Thread-330" prio=5 tid=9 Runnable 04-28 15:47:05.272 3426-3439/? A/art: art/runtime/check_jni.cc:65] | group="main" sCount=0 dsCount=0 obj=0x12c59080 self=0xad48b000 04-28 15:47:05.272 3426-3439/? A/art: art/runtime/check_jni.cc:65] | sysTid=3439 nice=0 cgrp=apps sched=0/0 handle=0xb4556a80 04-28 15:47:05.272 3426-3439/? A/art: art/runtime/check_jni.cc:65] | state=R schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100 04-28 15:47:05.273 3426-3439/? A/art: art/runtime/check_jni.cc:65] | stack=0xa6187000-0xa6189000 stackSize=1012KB 04-28 15:47:05.273 3426-3439/? A/art: art/runtime/check_jni.cc:65] | held mutexes= "mutator lock"(shared held)