예제 #1
0
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# 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")
예제 #2
0
from pyadb.adb import ADB
from pyExcelerator import *

n = 3      #循环次数
list1 = [] #第一次ADB.output的数据 写入txt
list2 = [] #从txt读取的数据
list3 = [] #处理从txt读取的数据
a = 0      #内存行数
b = 0      #内存列数

fname = '%s.txt' % raw_input('enter file name:')
if os.path.exists(fname):
        print ('ERROR: %s already exists\n' % fname)
        quit()

myadb = ADB('E:\\adt-bundle-windows\\sdk\\platform-tools\\adb')

#myadb.restart_server()      '重启adb服务'
#print myadb.get_logcat("I") '打印log'

for i in range(n):
    print myadb.get_devices()
    #myadb.shell_command("dumpsys meminfo com.moji.mjweather")
    myadb.shell_command("dumpsys meminfo com.moji.wallpaper")

    "写入txt"
    list1.append('NO.%d   TIME    GET  MOJI  MEMORTDATA:\n' % (i+1))
    list1 += myadb.get_output()
    list1.append('      \n')
    fobj = open(fname,'w')
    fobj.writelines(['%s' % (x) for x in list1])
예제 #3
0
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# 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 )
예제 #4
0
# 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
import sys

if len(sys.argv) != 2:
    print "Usage: python %s <pid>" % sys.argv[0]
    quit()

pid = int(sys.argv[1])

try:
    adb = ADB()

    print "@ Pushing files to /data/local/tmp ..."

    adb.sh("rm -rf /data/local/tmp/injector /data/local/tmp/libElfHook.so")
    adb.push("libs/armeabi-v7a/injector", "/data/local/tmp/injector")
    adb.push("libs/armeabi-v7a/libElfHook.so", "/data/local/tmp/libElfHook.so")
    adb.sh("chmod 777 /data/local/tmp/injector")

    # we need to set selinux to permissive in order to make ptrace work
    adb.set_selinux_level(0)
    adb.clear_log()

    print "@ Injection into PID %d starting ..." % pid

    adb.sudo("/data/local/tmp/injector %d /data/local/tmp/libElfHook.so" % pid)
예제 #5
0
from pyadb.adb import ADB
import os

myadb = ADB('E:\\adt-bundle-windows\\sdk\\platform-tools\\adb')
myadb.shell_command('rm -r sdcard/moji')
myadb.shell_command('rm -r sdcard/wallpaper')
예제 #6
0
    2.检查墨迹壁纸是否安装
    3.安装墨迹天气或墨迹壁纸
    4.卸载墨迹天气
    5.卸载墨迹壁纸
    6.查询墨迹天气消耗流量
    7.查询墨迹壁纸消耗流量
    8.查询墨迹天气占用cpu信息
    9.查询墨迹天气占用内存信息
    10.查询墨迹壁纸占用cpu信息
    11.查询墨迹壁纸占用内存信息
    12.退出
    ***************MY TOOLS***************
    '''
    select = raw_input('    请输入数字选择功能:')
    try:
        number = int(select)
        if number>11:
            raise IndexError
    except Exception:
        print '    输入错误,请重新输入!'
        print
    else:
        run(number)


if __name__ == '__main__':
    myadb = ADB('E:\\adt-bundle-windows\\sdk\\platform-tools\\adb')
    while True:
        applist = os.popen(r'adb shell pm list package').read()
        main()
예제 #7
0
from pyadb.adb import ADB
from pyExcelerator import *

n = 3      #循环次数
list1 = [] #第一次ADB.output的数据 写入txt
list2 = [] #从txt读取的数据
list3 = [] #处理从txt读取的数据
a = 0      #内存行数
b = 0      #内存列数

fname = '%s.txt' % raw_input('enter file name:')
if os.path.exists(fname):
        print ('ERROR: %s already exists\n' % fname)
        quit()

myadb = ADB('E:\\adt-bundle-windows\\sdk\\platform-tools\\adb')

#myadb.restart_server()      '重启adb服务'
#print myadb.get_logcat("I") '打印log'

for i in range(n):
    print myadb.get_devices()
    #myadb.shell_command("dumpsys meminfo com.moji.mjweather")
    myadb.shell_command("dumpsys meminfo com.moji.wallpaper")

    "写入txt"
    list1.append('NO.%d   TIME    GET  MOJI  MEMORTDATA:\n' % (i+1))
    list1 += myadb.get_output()
    list1.append('      \n')
    fobj = open(fname,'w')
    fobj.writelines(['%s' % (x) for x in list1])
예제 #8
0
# 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
import sys

if len(sys.argv) != 2:
    print "Usage: python %s <pid>" % sys.argv[0]
    quit()

pid = int(sys.argv[1])

try:
    adb = ADB()

    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" )

    # we need to set selinux to permissive in order to make ptrace work
    adb.set_selinux_level( 0 )
    adb.clear_log()

    print "@ Injection into PID %d starting ..." % pid

    adb.sudo( "/data/local/tmp/injector %d /data/local/tmp/libhook.so" % pid )
예제 #9
0
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# 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 )
예제 #10
0
def get_label(apk):
    aapt_output = adb.shell_command('/data/local/tmp/aapt d badging %s' % apk)
    if 'not found' in aapt_output:
        adb.push_local_file('aapt', '/data/local/tmp/aapt')  # aapt needed to find application names
        adb.shell_command('chmod 755 /data/local/tmp/aapt')
        return get_label(apk)
    match = re.search(r'^application: label=\'([\S]+?)\'', aapt_output, re.MULTILINE)
    if match and match.groups():
        return match.group(1)

il = InstructionsList()

app_names = {}

adb = ADB()
adb.connect_remote(tvip)

pm_list = adb.shell_command('pm list packages -f')
for line in pm_list.split('\r\n'):
    try:
        groups = re.match(r'package:(.+?\.apk)=(.*)', line).groups()
        if groups:
            apk, package = groups
            print apk, package
            label = get_label(apk)
            if label:
                app_names[label.lower()] = package.replace(' ','')
    except KeyboardInterrupt: exit(1)
    except: pass