Smali与Java文件的相互转换与运行
2023-10-17
## Java代码转Smali代码 假设有java源文件test.java 1. 通过javac将java文件转换成class文件: 执行`javac test.java`生成`Test.class`文件 2. 通过dx.jar将class文件转换成dex文件: 执行`dx --dex --output=./Test.dex Test.class`生成`Test.dex`文件 3. 通过bak
查看更多
 
Dalvik虚拟机解释语言:Smali
2023-10-14
## Smali与Baksmali介绍 1. Dalvik是冰岛的一个渔村,在冰岛语中,Smali表示汇编,Baksmali表示反汇编 2. Smali语法大致基于Jasmin与Dedexer的语法 3. Smali语法用来标记Dalvik字节码,并支持dex格式的全部功能,如注释、调试信息、行信息等 4. Smali对应Java的smali文件转化成dex文件的汇编器 5. Baksmali对
查看更多
 
kotlin学习-数据类型
2022-08-22
[官方文档地址](https://kotlinlang.org/docs/basic-types.html) # 基本数据类型 ## Number 1. 数字中间可以用_拼接增加可读性,如:123_000、123_000.000_123 2. 使用类型+?标记数据可为空,当为可空时,每次赋值都是一个新的引用地址,此时使用===返回false,但是在JVM环境下,会对-128至127的数字做内
查看更多
 
AST交互-非连续判断三元表达式转if语句
2022-08-21
通常使用`三元表达式转switch语句`的代码可以完成大部分的三元表达式代码美化需求,但是如果三元表达式的判断条件不是连续数字时,此时更适合转为if/else语句,如代码: ```javascript function _$du() { var _$$I; _$$I = _$gf[++_$f1]; _$$I <= 37 ? _$$I <= 24 ? (_$fx =
查看更多
 
AST交互-三元表达式转switch语句
2022-08-16
这两年前端代码加密进化很大,为了在逆向过程中不那么累,我们需要使用babel修改网站源码,改成我们调试不那么累的代码,如将三元表达式语句代码改成switch语句代码。 我们找到网站实际代码如下: ```javascript if (_$j7 <= 63) _$j7 <= 15 ? _$j7 <= 3 ? _$j7 <= 0 ? (_$kb = _$jA[--_$g3], _$kb =
查看更多
 
AST交互-if语句转switch语句
2022-08-14
这两年前端代码加密进化很大,为了在逆向过程中不那么累,我们需要使用babel修改网站源码,改成我们调试不那么累的代码,如将if语句代码改成switch语句代码。 我们找到网站实际代码如下: ```javascript while (1) { _$a9 = _$kI[_$iW++]; if (_$a9 < 12) { if (_$a9 < 4) { if (_$a9
查看更多
 
\@babel|traverse使用教程
2022-08-13
## 资源 官方文档:https://babeljs.io/docs/babel-traverse K哥文章:https://mp.weixin.qq.com/s/fIbPuNMs5FRADJE5MOZXgA ## 说明 安装命令: `npm install --save @babel/traverse` `@babel/traverse`是babel的核心组件之一,需要与`@babel
查看更多
 
\@babel|types使用教程
2022-08-10
## 资源 官方文档:https://babeljs.io/docs/babel-types ## 说明 `@babel/types`这个包对于搞`TypeScript`肯定熟悉,写ts肯定会引入一个types的包,用到的类型定义都是从这个包导出来,`@babel/types`除了提供类型外还提供了对应的检测方法与构造方法。 包引入:`const t = require("@babel/t
查看更多
 
\@babel|parser使用教程
2022-08-10
## 资源 官方文档:https://www.babeljs.cn/docs/babel-parser 在线AST工具:https://astexplorer.net/ ## 说明 `@babel/parser`是Babel最重要的包之一,用于词法分析,即将JavaScript代码转换成AST树,最常见的就是前端中配合webpack打包代码。 包安装:`npm install @babe
查看更多
 
使用ssh_config管理ssh密钥
2022-07-21
## 前言 我们用ssh公钥与git仓库做代码存储交互,提供代码存管的平台有很多,如Github、Bitbucket、Gitlab等,通常我们生成一次key后在多平台共用,但是如果是单个平台就有多个用户管理多个仓库时这种方式就不适用了。 网上有很多这方面的教程,中文的基本上都是这个抄袭那个抄来抄去,还云里雾里,因此做下记录,提供用法来源和使用示例 可直接访问[ssh_config](http
查看更多
default