关于两段加密数据,有谁能看出来加密方式吗?

2016-01-06 10:27:35 +08:00
 xia0chun
因工作需要大量查询一批手机号的余额,之前是通过抓中国移动手机客户端的数据来用程序模拟移动客户端进行查询的,奈何元旦之后移动客户端升级了,再次抓包之后发现手机密码段的加密方式变了。

数据 1 : TSqtMYkhZ9HiJ/ltpTSW1XA1wddqg12AGM7U3H03i495Qu0BeopKcYvGF83XrwasuYQvA8xdmZJ14BA/nihBIIVmLPW8ruItFV5Km5aTUbxBqXzDWmAwlEoxoQJgb/cmlGop1t1RYjzQtNajmMgw/fI6R2jLGzozUm/GWP9jPUc=

数据 2 :
iFoa9WcKquDtEj5AIqcexRbWKFK+qpB4B7cFwm2ZwWQMKhKoCVlB4AnmAK3A6bWbQxTgt6yRNcSI0XphKf0/hW8K3Kj+EdWynYWVVmu+mn2fy6ab3RqPJeaO0QKX+TGEprqHT8TFmw6fH7wl32T4J1JMlh+rJ7Kk604TU2vSmw0=

这两段就是抓包得来的登录过程中客户端向服务器提交的密码,已知该手机号的密码是“ 123123 ”,怀疑是混合了当前时间,因为过一段时间之后再用当前密码登录就会提示超时。

由于本人才疏学浅,有哪位朋友能帮忙吗?在此先行感谢。

ps :有没有办法逆向工程移动客户端得到加密方式?
3418 次点击
所在节点    问与答
25 条回复
lution
2016-01-06 10:46:20 +08:00
第一眼看以为是 base64 编码,但是试了一下不是,不过加密的方式也许是同一个思路。因为移动拿回来密文之后至少需要解密出里面包含的时间戳和密码,所以很大程度这个加密 /解密方式是可逆的。

如果从客户端下手的话,找个安卓客户端尝试反编译找一下登陆这块对密码加密的算法是最直接的,如果行不通的话,反向可以试试多提交几组密码,记住对应的时间戳,或者两台设备,在同一秒提交提交位数相同的弱口令( 8 个 1 , 8 个 2 )看一下密文的规律。

对这个挺感兴趣的,楼主不妨再放些数据来讨论下。
ooxxcc
2016-01-06 10:55:25 +08:00
感觉像 AES 后 base64 编码
gclover
2016-01-06 10:55:41 +08:00
能提供下原来的密文和加密方式吗,移动这种规模的一般不会大概,所以我才加密方式可能改动不大,只是加了盐
ooxxcc
2016-01-06 10:55:56 +08:00
只看这个很难猜,上反编译吧
xia0chun
2016-01-06 10:56:58 +08:00
@lution 又抓了几组数据,完全没有共同点,唯一的共同点应该是最后一位都是“=”

2016-01-06 10:52:25
e3RBGq541jmRlHgm5EKbxK2lDFZeda6BmO79GyKNLUN\/ooDzNAt5VEwwO3tJqXLwGI8xkBhGTnX3tTUlxcilmn+bTqdfECv4HV60dNoUNlwcmOrD+6WXBWzwi9k\/HSjC+EbVZ45x4JHrm12dZoXc8MeUJOZUUhO4iZmJZiflX2k=

2016-01-06 10:54:14
YxRmpSG8nPAEn9dBwAgYPsDamytXKBUpy7WxvsBLYE0u2LSZuc3Id7O4ji3IpsHe3WNMDeMRUucgBBoJdNv8rPRKfF70q5L9Dxiz9IbmveOdG\/A4ubetXoUohJ0msKSfNdIGyykZnK7JofX0iKLy1VrBEVPOVkn2ViEQMOkIAJw=

2016-01-06 10:56:18
KWmymOdxDRsq0bDjJpXWb3YdAqPmcDwWkS+aellkRwugid6NA8hUiAEHMO\/NvyRj5k6Jx+Eqc+uc3DOEPGGJtuyVH0MsAqdbrD7lNDw6+tbQulxzO6XR9LztujMyse3CVWREyrKWiUzGzNOX9AF76EHmtgQhnJAOd2UuJ++Q2os=

对 Java 一窍不通,因此逆向 APK 也做不到呀 :(
xia0chun
2016-01-06 10:58:47 +08:00
@gclover 手机的密码是“ 123123 ”,密文就是文中提到的数据。不知道明文中包含多少数据,猜测含有当前时间。
gclover
2016-01-06 11:02:53 +08:00
@xia0chun 我意思是他们客户端升级之前你们抓的包
xia0chun
2016-01-06 11:07:01 +08:00
@gclover
之前抓到的也是一段密文如下,只不过是固定不变的,应该是不包含时间戳,所以只需要把该密文依样发过去就可以了,现在每次的密文是变化的,超时就会失效。

A/yMrYPDyBU2qQKm0XU1koTE9xxN46My1bHU/zOOeQLhkYYTcEuu0OF31r1v5hqhwHn27RZY9piSnaQTPqGZAP4iDUWQy+nnZ0Tz+/Nim1edMhypBYANW3jo5h+Kd22fCabRREGIYL5coE/iKDtDVRAa1xxJC+U/BeP6OC/CfPM=
leozy2014
2016-01-06 11:08:06 +08:00
貌似移动交话费的私人网点有移动 vpn 内网,找朋友借用,直接从系统查,方便多了。。。
xia0chun
2016-01-06 11:13:04 +08:00
@leozy2014 我们的系统中有 4000+号码,并且结账日还不相同,因此需要两三天就查一次以防欠费,之前也找过移动公司,但是人家不给开接口....
mug
2016-01-06 11:17:36 +08:00
除了反编译客户端看代码应该没其它方法了。
nilai
2016-01-06 11:18:58 +08:00
AES  如果更安全点的就应该是 rsa+aes 了
felixzhu
2016-01-06 11:18:59 +08:00
我推荐楼主找找移动端网页来看,一般来说网页版是比较好分析的
royzheng
2016-01-06 11:20:27 +08:00
楼主 联系方式?我也正在研究这个 共同讨论下
xiaoding
2016-01-06 13:31:03 +08:00
加密方式应该是 aes
base64 不是一种加密方式,只是一种编码方式,起不到加密的作用
一般最后的 = 或者==都是占位符,因为 base64 , ase256 等等都需要字符串是特定长度的整数倍
如果对于楼主来说逆向 apk 比较麻烦,不妨换个思路,移动的接口千千万,木桶理论,总归能找到比较弱的接口,我这里有,但是我也要用,就不透露了~
jasontse
2016-01-06 13:36:23 +08:00
Rijndael?
akira
2016-01-06 14:17:01 +08:00
最简单的办法肯定是找人帮你逆向出算法了,要么就是去找 web 接口。
lshero
2016-01-06 14:19:00 +08:00
加密后就别想着解密了,从网上营业厅或者 WAP 的角度入手吧
robinlovemaggie
2016-01-06 15:34:33 +08:00
登录一般是双向非对称加密,非登录一般是对称加密,前者是 rsa ,后者 aes
目前几乎没有技术可以做到 rsa-1024 破解吧?除非你有足够强的计算能力和时间
ayouwei
2016-01-06 15:56:01 +08:00
应该是用 base64 编码过的密文, 可能 rsa 或者 aes 加密过,反向很难吧

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/248687

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX