首页
社区
课程
招聘
[未解决,已结帖] [求助]一个java反编译与结果不一样 求原因所在 200.00雪花
发表于: 2019-2-18 21:12 2041

[未解决,已结帖] [求助]一个java反编译与结果不一样 求原因所在 200.00雪花

2019-2-18 21:12
2041
调用处先构造了a类 然后调用了a(byte[],int,int)这个方法我用xphook  调用此方法前传入参数为
data1:F8 01 04 01 B0 18 F4 21 CC 63 D8 C7 48 D6 2E AD 43 73 F3 FD 1E E7 B9 29 36 B9 FE FE 5E 9A 28 10 77 BB 54 FE E7 31 CC 0D 51 A1 22 EF B7 6E 84 83 ED E2 E7 8A 26 C4 57 C5 33 62 DF 35 5D D9 F6 3E 03 43 3D 41 65 54 50 FF 14 FB 59 89 33 71 7E 27 3D B4 43 CC D8 77 D3 F4 B7 4E D1 28 30 1A AF CD 83 5B 5A 42 88 5B 68 EC 2D 00 DA 33 A9 12 93 18 45 43 7F 4F E0 B1 B4 6B E0 92 53 90 B2 D9 EE 23 E2 54 88 FA BA F5 A9 D3 79 B4 BF 01 59 DA 11 84 3C 17 09 26 14 4E 0F 86 E5 2D 30 98 4D 85 76 FD 98 3F E3 53 FD 65 64 33 4E 4E 6B A8 FC 84 18 99 E7 5A A9 9F 39 1F 0A 1F 49 C8 F3 8B C4 6B EC 01 97 B2 BD C1 6D F2 EB 6E 8F 45 53 30 3C 71 E8 29 10 41 59 44 BA B7 89 85 B1 47 C4 57 AC 6F F6 26 68 1A 7D 54 62 D7 03 BC 93 02 70 E0 91 AF D9 9A E9 69 D7 7E 01 22 2B 50 DC 84 整数1:4整数1:246
调用后参数为
F8 01 04 01 00 00 00 39 00 00 80 48 D2 7B 01 00 08 03 00 00 00 17 66 01 31 00 01 31 67 01 30 01 0A 31 35 39 33 30 38 36 34 39 36 02 20 61 35 35 61 32 63 65 64 31 36 64 39 37 62 36 32 63 65 34 30 33 35 61 30 64 65 38 38 65 65 39 34 64 01 31 65 01 31 04 01 31 05 24 39 66 64 30 65 64 31 34 2D 65 39 32 39 2D 34 66 30 32 2D 39 39 30 35 2D 34 31 62 62 38 37 63 36 30 66 32 39 06 09 E5 95 A6 E5 95 A6 E5 95 A6 07 0D 31 35 35 30 34 39 34 32 31 36 33 31 35 08 01 30 6E 01 31 09 06 31 32 33 34 35 36 6C 01 31 0B 20 31 61 63 66 39 65 64 62 34 32 37 39 34 66 39 38 38 39 65 37 36 63 31 34 39 32 35 37 32 66 37 33 6D 01 31 0C 12 31 30 36 39 31 30 32 32 35 30 30 30 33 30 30 36 30 31 6B 01 31 0E 0D 31 35 35 30 30 32 33 35 30 30 39 30 36 69 01 30 11 00 14 01 30 整数1:4整数1:246

所以可知就是这个方法进行的解密动作 但是我copy出这个方法执行出来结果却不一样


求问题所在与解决方法


[课程]Linux pwn 探索篇!

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 466
活跃值: (1167)
能力值: ( LV9,RANK:153 )
在线值:
发帖
回帖
粉丝
2
smali转java有时候不准确,最好看smali调用
2019-2-19 13:53
0
雪    币: 28961
活跃值: (7443)
能力值: ( LV15,RANK:3306 )
在线值:
发帖
回帖
粉丝
3
// 设置rc4密钥
void a(byte[] key);

// rc4加解密
void a(byte[] buf, int offset, int len);

只贴出加密前后的数据, 没有贴出密钥, 难道是没有调用设置密钥那个函数?
又或者虽然有设置密钥, 但是没有使用它之前设置的(随机生成的)key, 而自己又调用那段代码随机生成了一个新的key? 
最后于 2019-2-19 15:12 被风间仁编辑 ,原因:
2019-2-19 15:05
0
雪    币: 1366
活跃值: (5584)
能力值: ( LV3,RANK:25 )
在线值:
发帖
回帖
粉丝
4
你在运行代码前,打印一下此时的全局变量的值,是不是和你的值一致。
2019-2-20 08:44
0
雪    币: 916
活跃值: (3434)
能力值: ( LV8,RANK:120 )
在线值:
发帖
回帖
粉丝
5
网易的rc4是白盒的。(不知道你这个是不是)
2019-2-20 10:42
0
雪    币: 3622
活跃值: (2559)
能力值: ( LV6,RANK:83 )
在线值:
发帖
回帖
粉丝
6
发代码出来帮你调试
2019-2-21 13:09
0
游客
登录 | 注册 方可回帖
返回
//