美文网首页
fart抽取还原

fart抽取还原

作者: 超威蓝猫l | 来源:发表于2020-07-22 17:48 被阅读0次

    使用fart dump下来ins后,需要手动去还原

    这时候会觉得非常麻烦,想要自动化。

    我下载了dexlib2和baksmali 发现无从下手不知道怎么搞

    在肉丝大佬帮助下
    https://bbs.pediy.com/thread-259854.htm
    参考别人的dx代码去合并,就能还原抽取了

    虽然代码吵得很开心,但是还是得知道怎么实现得。

    首先下载android得source code,我下得是8.1得,10个g。有点大。

    其中我们需要在daivak下复制这三个目录得代码到自己得项目中

    image.png

    把别人得jar拉到jadx中,在unpacker目录下可以找到main函数

    image.png

    其中,使用方法就一行代码。其中得methodCodeitem是自己加得。

    image.png

    一路跟踪下去 可以发现在transtromMethod得方法中进行了更改。
    上面是原有得方法。而我们来看看下半部分得代码是怎么还原得

    我们和transformCode方法对比着看


    image.png image.png

    两个红框中得代码是一样得。而后面就开始写registerSize。

    而在自己改得方法中,是直接this.codeOut.write(codeItem.code)

    而我们看fart打出来得log


    image.png

    可以发现也是从registerSize打印起得。说明fart dump下来的ins也是从registerSize起的。因此直接写进去即可

    dex字节码

    而后面还写入debugInfo这个数据进去。但是据我了解这个东西可有可无,我把这段删去后,jadx也是能正常显示还原后的代码的。

    因此整个还原的主要改动就是以上赘述的东西。

    当然了,某些地方还要加try catch 。这些细节就不啰嗦。

    总结一下,抄代码真爽(我真垃圾)

    相关文章

      网友评论

          本文标题:fart抽取还原

          本文链接:https://www.haomeiwen.com/subject/kdytlktx.html