安卓逆向:dex2jar批量转化 -pyhon脚本

文章介绍了如何使用Python编写脚本来执行Dex2Jar转换,并通过`run_cmd_Popen_fileno`函数执行命令行操作。脚本首先获取文件夹中的.dex文件,然后调用d2j-dex2jar工具进行转换并将.class.dex文件保存到指定文件夹。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

import os

def run_cmd_Popen_fileno(cmd_string):
    """
    执行cmd命令,并得到执行后的返回值,python调试界面输出返回值
    :param cmd_string: cmd命令,如:'adb devices'
    :return:
    """
    import subprocess
    
    print('运行cmd指令:{}'.format(cmd_string))
    return subprocess.Popen(cmd_string, shell=True, stdout=None, stderr=None).wait()

def get_file_list(file_path):
    file_list = os.listdir(file_path) # 得到文件夹下的所有文件名称,存在字符串列表中
    file_list.sort()
    if file_path[-1]=='/'or file_path[-1]=='\\':
        pass
    else:
        file_path+='/'
    fpath=[]
    for i in file_list :
        fpath.append(file_path+i)
    return (fpath,file_list) # 得到文件夹下的所有文件路径和文件名称
_,dexs=get_file_list('./dexs')
for i in dexs:
    dex_file=i
    jar_file=dex_file.split('.')[0]+'.jar'
    run_cmd_Popen_fileno(f'd2j-dex2jar ./dexs/{dex_file} -o ./jars/{jar_file}')

解压dex2jar,cd进入dex2jar文件夹下,要知道一条基础指令

d2j-dex2jar .classes.dex -o /classes.jar
##建议在文件夹中新建dexs文件夹用于存放class.dex
##新建jars文件夹用于存放class.jar
d2j-dex2jar ./dexs/classes.dex -o ./jars/classes.jar

新建dexs和jars文件夹,将apk解压的所有class.dex文件复制到./dexs中,执行最上面的python脚本,即可批量转化

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值