Android 从入门到走后门

Android后门计划-Demo-脱壳工具使用

2021-10-20  本文已影响0人  杨阿杨阿阳

兄弟们最近被我带的对逆向萌生兴趣,但是遇到加壳的App就无从下手了。今天写的简单的Demo来讲一下脱壳工具的使用。(切勿用于非法用途,本人文章仅供学习和参考)

1、准备工具

a、需要脱壳的apk
b、BlackDex32 (需要可以私信)
c、jadx/GDA (自行百度找)

我们使用自己编写的作为demo,源代码如下:

public class MainActivity extends AppCompatActivity {
    private EditText editText;
    private Button button;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        editText = findViewById(R.id.ed_main);
        button = findViewById(R.id.btn_main);

        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String trim = editText.getText().toString().trim();
                if (TextUtils.isEmpty(trim)) {
                    Toast.makeText(MainActivity.this, "不能为空", Toast.LENGTH_SHORT).show();
                    return;
                }

                if (trim.equals("NS你个小辣鸡")) {
                    Toast.makeText(MainActivity.this, "验证成功", Toast.LENGTH_SHORT).show();
                } else {
                    Toast.makeText(MainActivity.this, "验证失败!!!", Toast.LENGTH_SHORT).show();
                }
            }
        });
    }
}

2、开始脱壳

2.1关键信息查看

我们先把apk拖到jadx看,发现有关键词“qihoo”相关的,且发现包名相关目录下仅有一个R文件


image.png

2.2安装我们的apk和BlackDex32

image.png

2.3打开BlackDex,且选择需要脱壳App

image.png

2.4等待脱壳完毕

image.png image.png

2.5脱壳完毕,我们需要把dex拿到桌面,且进行观察

代码量比较少,所以出来的基本都是cookie开头,有些我们拖出来能看到cookie和hook开头的。实际情况我们仅仅需要cookie开头的即可。


image.png

2.6按照规则修改dex名字

我们打开一个比较大的app之后(别的App;用来和Demo做对比),发现它的dex名字和构成如下:


image.png

所以也需要把我们自己的改成classes、classes2、......


image.png

2.6将修改后的dex替换原包dex

打开方式用zip打开或者将其后缀修改为.zip,然后进行覆盖替换;然后把再次改回apk格式


image.png
image.png

2.7修改之后直接查看源代码

image.png

找到我们编写的代码路径:


image.png

指令被抽取,我们转为看smali指令部分。


image.png

这里有smali部分是有的,说明jadx的解析能力不强。我们转到GDA看看

image.png

在相关内部类中找到核心代码。即脱壳完成。

3、注意事项

jadx虽然查看代码比较友好,但是其反编译能力一般。 GDA的反编译能力强一些建议结合查看。dex的指令被抽取需要修复Dex文件,如果具有能力,有ELF文件结构基础可以使用010自行修改。 或者使用其他工具修复dex结构。
逆向虽有趣,切勿用于非法用途!

上一篇下一篇

猜你喜欢

热点阅读