抓包调试工具、常规加密分析、常用解混淆代码手段、解决Eval打包

2020-11-17 16:51:31

参考地址 抓包调试工具、常规加密分析、常用解混淆代码手段、解决Eval打包

目录


抓包调试工具

Watch  # 添加监听的变量
Call Stack  # 倒序展示调用的方法次序
Scope  # 断点所在作用域的内容
Breakpoints.  # 断点列表
XHR/fetch Breakpoints  # 请求断点列表,可以添加要断点的url
DOM Breakpoints.  # Dom断点列表。可以添加html改变的事件。比如hover事件
Event Listener Breakpoints. # 可断点的事件监听列表。比如添加鼠标点击事件

常规加密分析流程

1、查看关键字-分析哪些参数是加密的
2、搜索参数名
2.1、查看网络面板的initiator(js发起者)
2.2、xhr断点调试
2.3、脚本hook加密逻辑
3、分析加密
4、补全加密逻辑

常用解混淆代码手段

如果尾巴是括号的情况:1、复制加密混淆的代码2、新开窗口粘贴到js执行3、如果有报错,点击vm,代码解密成功4、如果没有报错,删除最后的括号5、4不行的情况,删除最后的括号添加.toString()

如果尾巴不是括号:1、复制加密混淆的代码2、格式化,找到右半边括号中的内容,复制3、粘贴到js面板中执行,解密成功

解决Eval打包

如果开头是eval方法,可以将eval换成console.log(),或者alert


  • 2020-11-17 17:28:06

    AssemblyScript 开发WebAssembly 教程

    WebAssembly 以及通过 AssemblyScript 的扩展,不会使每个网站都神奇地变得更快,但是这并不重要。 WebAssembly 之所以令人兴奋,是因为它可以使更多的应用在 Web 变得中可行。

  • 2020-11-17 21:15:48

    如何保障 API 接口的安全性?前端如何加密

    一、1. HTTP 请求中的来源识别 二、2. 数据加密 三、3. 数据签名 四、4. 时间戳 五、5. AppID 六、6. 参数整体加密 七、7. 限流 八、8. 黑名单 九、1. 压缩 十、2. 混淆 undefined、3. 加密

  • 2020-11-18 14:34:00

    当你写爬虫抓不到APP请求包的时候该怎么办?

    提示:因为高级篇以后的APP将无法使用很通用的方式处理,每种类型甚至是每个APP的反抓包处理方式都会有差别,所以这个系列以后会以【高级篇-具体类型】的形式来写。

  • 2020-11-21 20:41:51

    Kotlin Sealed class类详解

    Sealed class(密封类) 是一个有特定数量子类的类,看上去和枚举有点类似,所不同的是,在枚举中,我们每个类型只有一个对象(实例);而在密封类中,同一个类可以拥有几个对象。

  • 2020-11-22 20:53:43

    Dagger2之Kotlin写法

    修饰构造方法 修饰变量,在宿主类里,引入要注入的实例

  • 2020-11-22 20:56:13

    Dagger2使用详解

    简单的说,就是一个工厂模式,由Dagger负责创建工厂,帮忙生产instance。遵从Java规范JSR 330,可以使用这些注解。现在不研究Dagger2是如何根据注解去生成工厂的,先来看看工厂是什么东西,理解为什么可以实现了DI(Dependency Injection),如何创建IoC(Inverse of Control)容器。

  • 2020-11-22 21:00:28

    dagger.android--Fragment,BaseFragment

    1 使用Fragment参数来代替Activity参数 2 使用 @FragmentKey来代替@ActivityKey 3 使用HasFragmentInjector来代替@HasActivityInjector 4 AndroidInjection.inject(Fragment)方法,在Fragment的onAttach()中调用,而不是在onCreate()中 5 Fragment的Module添加位置,和Activity是不同的,它取决于Fragment需要的其他依赖注入

  • 2020-11-22 21:12:30

    Dependency Injection with Dagger2,Fragment

    標註@Provides的method若有parameter的話,Dagger會找出其擁有的該型態物件來使用。我們在Module內新增了DataModel將其列入Dagger的管理下,接著在provideFactory()增加parameter變成provideFactory(DataModel dataModel),Dagger就會找出其管理的DataModel給provideFactory使用。