JordanSamhi / JuCify

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

No Flow from bytecode to native

Jr61-star opened this issue · comments

Hello, When I use JuCify to run the benchmark app delegation_proxy.apk, using following command:
java -jar JuCify-0.1-jar-with-dependencies.jar -a delegation_proxy.apk -b before.txt -c result.txt -p ~/Library/Android/sdk/platforms -e cg.dot -ta

it shows results:

JuCify v0.1 started on Wed Oct 26 11:01:23 CST 2022

[] Processing: lu.uni.trux.delegation_proxy
[
] Loading binary call-graphs + java-to-native and native-to-java links...
[✓] Binary callgraph imported.
[] Taint Analysis in progress...
[
] No Flow found.
[✓] Taint Analysis performed.
[*] Exporting call graph to cg.dot...
[✓] Callgraph exported.
Results:

  • App name: delegation_proxy
  • Analysis elapsed time: 5
  • Instrumentation elapsed time: 0
  • Taint Analysis elapsed time: 0
  • Number of nodes before Jucify: 11
  • Number of nodes after Jucify: 11
  • Number of edges before Jucify: 10
  • Number of edges after Jucify: 10
  • Number new Java-to-Native Call-Graph edges: 0
  • Number new Native-to-Java Call-Graph edges: 0
  • Number new Call-Graph reachable nodes: 0
  • Number new Call-Graph reachable nodes Java: 0
  • Number new Call-Graph reachable nodes Native: 0
  • Number new Call-Graph edges: 0
  • Has flow through native: No

there is no flow from bytecode to native, Did I do something wrong?

Hi @13631290434,

Yes you are doing something wrong. You are not providing the "-f" option to JuCify with the necessary files for the native reconstruction. For that, you have to run nativediscloser before running JuCify so that it generates those files.

In the README, it is explained that you better use the scripts in the "scripts" folder that wraps up everything.

Let me know if you have any other problems with the scripts.

thanks a lot, i will try again!