加密情况

首先我们到顺F官网,下载顺F速运APP,当然,是Android版,毕竟穷。

接下来,得看看怎么用,当然顺便用Wireshark抓包,点那个显眼的立即登录按钮。

使用手机号登录,随便敲敲,看看报文情况。

原来数据是HTTP承载的,host为ezgo.sf-express.com,POST体内为BASE64编码,使用Fiddler自带工具尝试解码,得到的是十六进制数据串,看样子,数据进行了加密,那只能从APK中去查找算法和密钥了。

上Android Killer。

咦,被加壳了,爱加密的壳呀,只能看看能不能脱壳了。

找密钥学算法

经过一番折腾,第一层皮被脱掉了,但是DEX里面很多函数被抽取掉了,看样子,爱加M的壳用了点功,再仔细看看,里面还是有些东西没有被抽取掉,大部分是一些第三方库。

查找下BASE64算法和URL,竟然找到了。

看样子,爱加M把关键的加密方法给漏掉了,就随便忽悠了下,顺丰速运程序员哥哥估计哭晕在厕所了。

我们找到了密钥,16字节,四个int,就是上图中的f.c变量。

然后,找到了算法,这是什么算法呢。下面介绍一点技巧,通过关键数据获取算法的技巧。

一般来说,大部分软件都会使用加密算法,但是,它们都不会自创算法,而是使用一些经典的常见的算法。

我们分析算法,需要找到算法的特征,特征包括什么呢?大数和逻辑。

在算法smali里,找到了几个整数。那我们就去网上搜索吧,一番搜索,就得到了算法。

使用算法和密钥,试一试,果然解出了结果。

params={"requstParams":{"mobileRegion":"CN","mobile":"18454312344","codeType":"06"},"method":"user.sendPublicCaptcha"}

再看看其他数据,也都能解呀。

自己动手试试,看看能不能找到顺F速运使用的加密算法名称,找完后,发送“顺顺顺”获取答案。

长按进行关注。

顺F速运,你被爱加M坑了的更多相关文章

  1. 顺F速运国际版,你的密码漏点了

    - 加密情况分析 对APP的分析过程,当然首先是安装,使用,抓包啦. 同样地,登录,抓包看看. 使用账号密码登录. - 壳呢? 虽然直接解密了顺F国际版的加密数据,但还是有必要看看它的APK. 经过分 ...

  2. F. Gourmet and Banquet(贪心加二分求值)

    题目链接:http://codeforces.com/problemset/problem/589/F A gourmet came into the banquet hall, where the ...

  3. Angular4项目运行时URL自动加#方法

    import {HashLocationStrategy , LocationStrategy} from '@angular/common'; @NgModule({   declarations: ...

  4. 【转】clang warning 警告清单(备查,建议直接command + F 速查 )

    Warning Message -WCFString-literal input conversion stopped due to an input byte that does not belon ...

  5. Android动态加载入坑指南

    曾几何时,国内各大公司掀起了一股研究Android动态加载的技术,两年多过去了,动态加载技术俨然成了Android开发中必须掌握的技术.那么动态加载技术是什么呢,这里谈谈我的个人看法,如有雷同,纯属偶 ...

  6. 【运维相关】MongoDB那些坑

    前言 某个早期技术债务项目线上有一个mongoDB服务,用途很简单,存一些文件而已.不过用户那边突然报个bug说上边的图片丢失了,起初没当回事认为是代码遇到错了,直到后来看了用户详细的bug复现后,登 ...

  7. 顺F分享,你是在裸奔吗?

    " 对顺F旗下各APP顺藤摸瓜分析--顺F分享." 前文对顺F速运和顺F速运国际版进行了分析,二者使用同一套接口,虽然保护强度不高,但对代码和数据的保护却区别对待,实在让人诧异. ...

  8. Linux运维笔记--第二部

    第2部-重要目录结构详解 1.回顾Linux目录结构知识 /dev/            设备目录 /etc/             系统配置及服务配置文件,启动命令的目录 /proc       ...

  9. extjs4.0 treepanel节点的选中、展开! 数据的重新加载

    1.extjs4.0API较3.0有非常大变化2.多级子父节点的选中和展开.3.数据的重新加载.tree.getStore().load4.节点的移除,从树中根据ID获取节点 tree.getStor ...

随机推荐

  1. 匿名函数,内置函数II,闭包

    1. 匿名函数 匿名函数,顾名思义就是没有名字的函数,那么什么函数没有名字呢?这个就是我们以后面试或者工作中经常用匿名函数 lambda,也叫一句话函数. 现在有一个需求:你们写一个函数,此函数接收两 ...

  2. git如何合并远程2个分支

    1,先检出项目到一个文件夹git clone 2,你检出的项目默认是master,所以现在要查看远程全部分支git branch -a * master remotes/origin/HEAD -&g ...

  3. layui table 分页 序号始终从”1“开始解决方法

    在用Layui table 分页显示数据,用 type:"numbers" 进行显示序号有以下的问题 1.表格自带的分页,page:true 这种分页,在切换页面的时候序号可以正常 ...

  4. 随意看看AtomicInteger类和CAS

    最近在读jdk源码,怎么说呢?感觉收获还行,比看框架源码舒服多了,一些以前就感觉很模糊的概念和一些类的用法也清楚了好多,举个很简单的例子,我在读Integer类的时候,发现了原来这个类自带缓存,看看如 ...

  5. MySQL中if的写法

    关键词:IF --if 判断,如果 device_num 的值为1,则赋值为100,反之为200 SELECT district, shop_name, IF ( device_num , , ) A ...

  6. PHP匿名函数、闭包、function use

    匿名函数,也叫闭包函数(closures) ,允许临时创建一个没有制定名称的函数.最常用作回调函数(callback)参数的值. 闭包函数也可以作为变量的值来使用.PHP将会自动把此种表达式转换成内置 ...

  7. 读书笔记_python网络编程3(6)

    6.TLS/SSL 6.0. 传输层安全协议(TLS, Transport Layer Security)是如今web上应用最广泛的加密方法了,1999年成为互联网标准.前身是安全套接层(SSL, S ...

  8. acwing 60. 礼物的最大价值

    地址 https://www.acwing.com/problem/content/56/ 在一个m×n的棋盘的每一格都放有一个礼物,每个礼物都有一定的价值(价值大于0). 你可以从棋盘的左上角开始拿 ...

  9. LeetCode解题笔记 - 4. Median of Two Sorted Arrays

    There are two sorted arrays nums1 and nums2 of size m and n respectively. Find the median of the two ...

  10. 函数基础实战之ATM和购物车系统

    username_list = [] prize_dict = { '0': "芭比娃娃", '1': "变形金刚", '2': "psp游戏机&qu ...