加密情况

首先我们到顺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. SSM框架之Spring(2)IOC及依赖注入

    Spring(2)IOC及依赖注入 基于xml配置文件的实现 1.IOC (控制反转-Inversion Of Control) 控制反转(Inversion of Control,缩写为IoC),是 ...

  2. vue-cli 3.0按需引入element-ui

    vue-cli 3.0脚手架初始化项目成功后,如果需要按需引入element-ui,按照官网的教程,会报如下错误: 这个是由于babel编译插件版本问题,需要安装最新的babel编译插件“@babel ...

  3. CSS绘制三角形和箭头,不用再用图片了

    前言 还在用图片制作箭头,三角形,那就太lou了.css可以轻松搞定这一切,而且颜色大小想怎么变就怎么变,还不用担心失真等问题. 先来看看这段代码: /**css*/.d1{ width: 0; he ...

  4. mssql sqlserver text、image字段类型无法使用DISTINCT的处理方法分享

    转自: http://www.maomao365.com/?p=9775  摘要: 下文简述sqlserver数据库中 text image类型无法使用distinct的处理方法分享 实验环境:sql ...

  5. PyCharm设置完自动上传,却不会自动上传任何内容

    Upload changed files automatically to the default server 选择了 Always 下面有一个提示 Default server or group ...

  6. Java之Scanner类

    Scanner类概述 一个可以解析基本类型和字符串的简单文本扫描器.简而言之,Scanner类的功能:可以实现键盘输入数据,到程序当中. 例如,以下代码使用户能够从 System.in 中读取一个数. ...

  7. (day58)十、Cookie、Session、Token、Django中间件

    目录 一.Cookie (一)由来 (二)什么是Cookie (三)Django中操作Cookie (1)设置Cookie (2)获取Cookie (3)删除Cookie 二.Session (一)由 ...

  8. CSP2019 S2滚粗记

    最好分数:100+20+10+64+64+55 最坏分数:100+20+10+64+36+55 咕咕数据分数:100+25+10+64+60+55 CCF官方: 100+35+10+64+36+55= ...

  9. Java面试题的个人总结

    面试总结 第一轮:电话初面 第二轮:技能面谈[技能职位尽量避免多谈处理上的作业] 第三轮:高管复试 第四轮:HR终究供认 一面:首要供认对阿里的意向度(假定异地更会考虑对作业地址(杭州)的意向度!阿里 ...

  10. # Spring 练习ioc 、aop

    Spring 练习 通过学习spring的基础知识,了解了Spring为了降低Java开发的复杂性,采取了以下4种关键策略: 基于POJO的轻量级和最小侵入性编程: 通过依赖注入和面向接口实现松耦合: ...