Android安全与逆向分析进阶

VIP免费
2024-11-14 26 0 89.61KB 17 页 5.9玖币
侵权投诉
Android 逆向
常见加密算法:
古典密码学(以字符为基本加密单元)
移位密码/错位密码
替代密码/置换密码
现代密码学(以信息块为基本加密单元)
哈希算法
非对称加密与解密
椭圆曲线
数字签名
数据分组与校验
散列函数
用于数据完整性校验
MD 消息摘要算法
SHA 安全散列算法
MAC 消息认证算法
CRC 循环冗余校验算法
对称加密算法
加密密钥==解密密钥
流密码:指加密时每次加密一位或一个字节的明文。
同步流密码
同步性 无错误传递性 主动攻击性
音频/视频数据提供版权保护
自同步流密码
自同步性 错误传递有限性
主动攻击性 明文统计扩散性
RC4/SEAL
分组密码(http://www.seacha.com/tools/):指加密时将明文分
成固定长度的组,用同一密钥和算法对每一块加密,输出也是固
定长度的密文。
常用于网络加密
安全性=>扩散/混乱原则
实现性=>软件/硬件
ECB 电子密码本模式
CBC 密文链接模式
CFB 密文反馈模式
OFB 输出反馈模式
CTR 计数器模式
DES
DESede/3DES/Triple DES
AES
TEA/XTEA/XXTEA
DEA
PBE
非对称加密算法
加密密钥!=解密密钥
公钥==>对外公开
私钥==>对外保密
私钥加密==>公钥解密
公钥加密==>私钥解密
DH 密钥交换算法
基于因子分解
RSA 数据加密/解密 数字签名
基于离散对数
ElGameal 数据加密/解密 数字签名
DSS 数据签名标准=>DSA 数字签名
ECC 椭圆曲线加密算法
使用对称加密算法对数据进行加密与解密,使用非对称加密算法
对对称加密算法所使用的密钥进行加密与解密。
数字签名
私钥==>签名
公钥==>验证
单向认证
双向认证
RSA
DSA
ECC+DSA==>ECDSA 椭圆曲线数字签名算法
认证/鉴别服务
数据完整性服务
抗否认性服务
数字证书
消息摘要算法
对称加密算法
非对称加密算法
数字签名
鉴别/认证
数据保密性
数据完整性
抗否认性
证书管理
KeyTool
构建自签名证书
构建 CA 签发证书
OpenSSL
根证书
服务器证书
客户端证书
密钥库==>管理私钥
数字证书==>管理公钥
加密/解密
签名/验证
X.509
服务器数字证书
协议加解密分析:
协议与安全协议(分析协议关键是先抓包,再解密)
概念:协议就是服务器与客户端交互信息的一种规则
客户端和服务器连接:实质都是连接服务器的 IP 地址和开放端口
POST:客户端提交数据给服务器
GET:客户端获取服务器数据
http,ftp,smtp:应用层
tcp,udp:传输层
IP:网络层
帧相关协议:数据链路层
HTTP/HTTP2
HTTPS 协议=>https 是基于 sll/tls 的 http 协议
ssl 协议=>安全套接字层
tls 协议=>传输层安全
socket=>tcp/udp=>http/ftp
抓包工具
http/https
fiddler/charels
socket/tcp
抓网
wireshark/sniffer
防止代理
小米 wifi+wpe
不到包原因:
1、如游副本,有的就是有包。
2.iddler 只能抓 HTTP/HTTPS,如果是 socket 抓不到的。
3、在态调试时,走到发包的地
tcpdump+Wireshark:
adb shell tcpdump -p -vv -s 0 -w /sdcard/capture.pcap 抓包
ctrl+c 结束抓包
adb pull /sdcard/capture.pcap 出文件
应用他人第三方我们大裨益很大程降低我们
务成本,子:
1、制作自动登录工具,协议加密算法so 我们可的加密函数,
送我们的协议。
2.相对他人 so 中某个函数情况进行深入分析,如果在软件分析,不但
信息繁杂而且受制我们可个函数,放开发的软
进行分析。
3、感觉他人 so 的功能非常错,己项目中
见,能够调第三方 so 会帮助我们很快决利重写看似麻烦问题,一
来说第三方 so 加进自己项目,有种典型需求一个就是有别
工程意图深入了解,并二次开发,是开发性需求;第二个就是有别
工程甚至只1个 so,意图利个 so 的分函数帮助我们完成地,
是逆向性需求
Dex文件构:
1.dex文件的数据
u1/uint8_t=>表示 1 字节的无符
u2/uint16_t=>表示 2 字节的无符
u4/uint32_t=>表示 4 字节的无符
u8/unit64_t=>表示 8 字节的无符
sleb128=>有符leb128可变长度为 1-5 字节
uleb128=>无符leb128可变长度为 1-5 字节
uleb128p1=>无符leb128 值1可变长度为 1-5 字节
2.dex文件整体结
struct DexFile {
DexHeader
DexStringId
DexTypeId
DexProtoId//对 DexType 进一步
DexFieldId
DexMethodId
DexClassDef
DexData
DexLink
}
索引为线
3.DEX 的内存映射
静态类似xxxItem
ClassObject 由六分组成:
PDvmDex:// DEX 文件字
super://超类
sfields://对应 DexClassData 的 staticFields 静态
iFields://对应 DexClassData 的 instanceFields 实
directMethods://对应 DexClassData 的 directMethods 法字
virtualMethods:///对应 DexClassData virtualMethods 虚方法字
DexClassDef : class_def_item
DexClassData: class_data_item
DexFiled(staticFields): sfileds
DexFiled(instanceFields): ifileds
DexMethod(directMethods):directMethods
DexMethod(virtualMethods):virtualMethods
DexCode: code_item
ELF 文件构:
linux elf 文件windows pe 文件 Android ELF 文件。
因为 Android 操作系内核采用 Linux 内核框架实现。
ELF 文件整体结构:
ELF Header-->ELF 文件的位置是固定的
Segment Header Table-->ELF 程序头描述的是的相关信息
.init
.text
.rodata
.data
.symtab号表
.line
.strtab 字符串表
Section Header Table-->ELF 节头表描述的是节的信息
静态用节
readelf 的使用:
-h:解析 ELF 文件
-l :解析程序头表
-S :解析节头表
arsc 文件:
arsc 文件解析
xml 文件:
xml 文件解析及工具
xml 加密
xml 和 arsc 十六加密:
摘要:

Android逆向常见加密算法:古典密码学(以字符为基本加密单元)移位密码/错位密码替代密码/置换密码现代密码学(以信息块为基本加密单元)哈希算法非对称加密与解密椭圆曲线数字签名数据分组与校验散列函数用于数据完整性校验MD消息摘要算法SHA安全散列算法MAC消息认证算法CRC循环冗余校验算法对称加密算法加密密钥==解密密钥流密码:指加密时每次加密一位或一个字节的明文。同步流密码同步性无错误传递性主动攻击性音频/视频数据提供版权保护自同步流密码自同步性错误传递有限性主动攻击性明文统计扩散性RC4/SEAL分组密码(http://www.seacha.com/tools/):指加密时将明文分成固定...

展开>> 收起<<
Android安全与逆向分析进阶.docx

共17页,预览5页

还剩页未读, 继续阅读

声明:本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。玖贝云文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知玖贝云文库,我们立即给予删除!

相关推荐

分类:计算机 价格:5.9玖币 属性:17 页 大小:89.61KB 格式:DOCX 时间:2024-11-14

开通VIP享超值会员特权

  • 多端同步记录
  • 高速下载文档
  • 免费文档工具
  • 分享文档赚钱
  • 每日登录抽奖
  • 优质衍生服务
/ 17
客服
关注