# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE # POSSIBILITY OF SUCH DAMAGE. from pyadb.adb import ADB try: adb = ADB() process = "com.android.chrome" activity = "com.google.android.apps.chrome.Main" print "@ Pushing files to /data/local/tmp ..." adb.sh( "rm -rf /data/local/tmp/injector /data/local/tmp/libhook.so" ) adb.push( "injector/injector", "/data/local/tmp/injector" ) adb.push( "libhook/libhook.so", "/data/local/tmp/libhook.so" ) adb.sh( "chmod 777 /data/local/tmp/injector" ) print "@ Starting %s/%s ..." % ( process, activity ) # we need to set selinux to permissive in order to make ptrace work adb.set_selinux_level( 0 ) adb.clear_log() pid = adb.start_activity( process, activity ) print "@ Injection into PID %d starting ..." % pid adb.sudo( "/data/local/tmp/injector %d /data/local/tmp/libhook.so" % pid )
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE # POSSIBILITY OF SUCH DAMAGE. from pyadb.adb import ADB try: adb = ADB() process = "com.android.chrome" activity = "com.google.android.apps.chrome.Main" print "@ Pushing files to /data/local/tmp ..." adb.sh("rm -rf /data/local/tmp/injector /data/local/tmp/libhook.so") adb.push("injector/injector", "/data/local/tmp/injector") adb.push("libhook/libhook.so", "/data/local/tmp/libhook.so") adb.sh("chmod 777 /data/local/tmp/injector") print "@ Starting %s/%s ..." % (process, activity) # we need to set selinux to permissive in order to make ptrace work adb.set_selinux_level("permissive") adb.clear_log() pid = adb.start_activity(process, activity) print "@ Injection into PID %d starting ..." % pid adb.sudo("/data/local/tmp/injector %d /data/local/tmp/libhook.so" % pid)
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE # POSSIBILITY OF SUCH DAMAGE. from pyadb.adb import ADB try: adb = ADB() process = "com.instagram.android" activity = ".activity.MainTabActivity" print "@ Pushing files to /data/local/tmp ..." adb.sh( "rm -rf /data/local/tmp/injector /data/local/tmp/libhook.so" ) adb.push( "libs/armeabi-v7a/injector", "/data/local/tmp/injector" ) adb.push( "libs/armeabi-v7a/libhook.so", "/data/local/tmp/libhook.so" ) adb.sh( "chmod 777 /data/local/tmp/injector" ) print "@ Starting %s/%s ..." % ( process, activity ) # we need to set selinux to permissive in order to make ptrace work adb.set_selinux_level( 0 ) adb.clear_log() adb.sh("am kill %s" % process) adb.sh("pm clear %s" % process) pid = adb.start_activity( process, activity ) print "@ Injection into PID %d starting ..." % pid