Run native executable in Android When I install FaceNiff on Bluestack and try to run the executable file from adb shell by

./FaceNiff

I get the error:

/system/bin/sh: ./FaceNiff: not executable: magic 7F45

I have rooted the phone, su the adb.
I think i need correct su and busybox. I tried but failed.
7F45 are the first two bytes of the ELF header \x7FELF. Android also uses ELF, so the error message you encounter means that the FaceNiff binary is not recognised as executable by your kernel (unlikely, unless you forgot to chmod +x it), not for your architecture (e.g. x86 instead of ARM), or uses a dynamic linker not included (e.g. glibc or µClibc instead of Bionic).

If you need to run an Android-ARM executable on Android-x86 you must recompile it for x86 (and look for the correct bitness too, 32-bit vs. 64-bit is also different).

Disclaimer: I’m the mksh maintainer.