精华内容
下载资源
问答
  • 大厂的流行App都用技术手段检测手机硬件环境,标识用户的唯一性。这样的技术手段有两个目的,一个是为了更加精准的广告投放,另外一个原因是防止被薅羊毛等。其实无论是那种目的都是对个人隐私的侵犯。从Android10...

    大厂的流行App都用技术手段检测手机硬件环境,标识用户的唯一性。这样的技术手段有两个目的,一个是为了更加精准的广告投放,另外一个原因是防止被薅羊毛等。其实无论是那种目的都是对个人隐私的侵犯。从Android10开始,API中已经禁止App读取硬件标识信息了。但是对于10以前的方法我们有没有办法屏蔽这样的行为呢?作为技术宅,闲着蛋疼,决定试一下,看看能在多大程度上阻止App的检测行为(保护自己的隐私)。


    首先来考虑app们都会检测和读取那些内容

    1. 硬件环境: imei,imsi,手机号,mac地址,手机串号,cpu串号等等一大堆。。。

    2. 网络环境: 手机连接的wifi的mac和ssid,手机保存的wifi信息,手机连接的基站信息,手机的DNS和网关信息,也是一大堆

    3. 位置环境: 通过网络环境应该很容易推导出位置,另外一个是传感器数据

    4. 软件环境: 手机安装了那些App的信息,包括app的版本号,md5等

    5. 数据环境: 估计就是sdcard里面存储的一大堆东西了,包括手机里的照片的基本信息,还有联系人等等信息

       


       

    如果直接阻止app读取这些信息,很多应用就起不来了,就像小媳妇一样不和你搞了;所以说还不能霸王硬上弓,只能伪造这些数据给他们读。而且伪造的数据还不能太假,不然直接封号了。反过来说如果不被封,就证明伪造的数据被App认可了。

     

    本次研究的核心就在于如何方便的伪造出数据(相当于是一套马甲)。总体方向有两个一是基于Xposed相关的技术,另一个是直接自己改Rom。

     

    其实Xposed是最简单的方法。由于国内移动互联网安全环境十分恶劣,各个厂商基本把Xposed当成潜在威胁,见到就封。所以如果想把Xposed用到大厂的App上,就不能直接使用,必须要对Xposed的特征做修改。这样使用Xposed基本就不会被识别也不会被封号了。Xposed的另外一个缺点是不能在高版本的android上面使用。

     

    自己改Rom难度也不低,要改很多东西。要改的东西基本就是Xposed需要hook的东西。

     

    我使用了Xposed+改机rom的方式,在App访问涉及身份敏感信息时让他们读到的是马甲上的信息,不让他们读取真实的值。当然也可以指定包名白名单,白名单下的允许读取真实内容。

     

    先说测试和验证方法:提前准备好一系列的相关数据,就是前面的5类内容,以备随时切换。然后用这些信息注册某大厂App的账号,看看是否能注册成功,成功的话,就再跑几天,看看会不会被封。

    目前在一个物理设备上成功注册了几个大厂App的号,分别使用了不同的信息。并且到目前为止还都正常登陆和运行。后面再多测试几个厂家的App看看是否能够经得起考验

    欢迎感兴趣的朋友可以发邮件给我,一起讨论​

    公众号:数字云信息技术

    展开全文
  • 移动手机app开发

    千次阅读 2014-12-04 22:01:46
    App开发,是指专注于手机应用软件开发与服务。 App是application的缩写,通常专指手机上的应用软件,或称手机客户端。另外目前有很多在线app开发[1] 平台,比如应用之星平台很好用。 App开发,是指专注于手机应用...

    App开发,是指专注于手机应用软件开发与服务。 Appapplication的缩写,通常专指手机上的应用软件,或称手机客户端。另外目前有很多在线app开发[1] 平台,比如应用之星平台很好用。

    App开发,是指专注于手机应用软件开发与服务。Appapplication的缩写,通常专指手机上的应用软件,或称手机客户端。苹果公司的App store开创了手机软件业发展的新篇章,使得第三方软件的提供者参与其中的积极性空前高涨。随着智能手机越发普及、用户越发依赖手机软件商店,App开发的市场需求与发展前景也逐渐蓬勃,截止到201212月,App开发已变红海。

    当然移动互联网时代是全民的移动互联网时代,是每个人的时代,也是每个企业的时代。APP便捷了每个人的生活,APP开发让每个企业都开始了移动信息化进程。

     

     

    1. 开发流程

    首先,制作一款APP,必须要有相关的idea,也就是说,第一步是APPidea形成。

    其次,就是通过那些idea来进行APP的主要功能设计以及大概界面构思和设计。

    接着是大功能模块代码编写以及大概的界面模块编写。在界面模块编写之前,开发者可以在模拟器做大的功能开发。但事实上,对于iNotes开发来说,模拟器是不够用,simulator的多触点(multi-touch)支持是非常弱的,很多touch的测试是无法在simulator做的。特别值得注意的是,在功能开发的过程中要注意内存的使用,这也是在iOS开发上最最重要的思维。

    然后把大概的界面和功能连接后,app的大致demo就出来了。值得一提的是,如果有界面设计师,就能节省大量时间。比如界面设计上,可以编写功能模块和设计师同步进行。这样appdemo出来后,基本上可以有界面可以用了。demo出来之后要自己试用和体验几遍,然后根据情况修改。APP0.8左右版本完成后可以加入production的图标和部分UI图片,如果没有大错误后,0.9版本可以尝试寻找beta用户。能够在产品设计和开发过程中,找一部分测试用户参与是非常有必要的。对他们的回馈的方法,可以在app发布后对这些用户发放免费产品。这个做法即可以提高产品质量,又可令到测试用户拿到免费的软件产品。根据测试用户的反馈,重复之前demo出来后的一系列步骤。

    最后在app完成后,加入app icon, iTunesArtwork等等UI元素。反复测试无错误后上传iTunes。之后大概要花7-14天来等候审批。

     

    2. App系统

    主流的四大APP系统:

    1、苹果ios系统版本,开发语言是Objective-C

    2、微软Windows phone7系统版本,开发语言是C#

    3、安卓Android 系统版本,开发语言是Java

    4、塞班symbian系统版本,开发语言是C++

     

    3. APP开发工具

    MOTODEV Studio for Android

    MOTODEV Studio for Android,这是基于Android的开发环境,为开发者们提供新的MOTODEV App Accelerator Program使他们可以开发出更适合摩托罗拉Android手机的应用程序。

     

    J2ME开发插件 Mobile Tools for Java

    Mobile Tools for Java (MTJ) Nokia公司开发的一款 Eclipse插件,用于支持 Java 手机应用程序开发。其前身就是大名鼎鼎的 EclipseME

     

    NOKIA手机开发包 gnokii

    gnokii 是一个NOKIA手机开发包,可支持大多数NOKIA手机的型号。功能无比强大可以修改LOGO,收发短信,拨打/接听电话,编辑铃声。甚至还可以取到对方手机的蜂窝号(Cell ID),从而起到定位的作用。

     

    apk文件修改工具 Root Tools

    RootTools是一个新的[4]Android开发者可以在这一工具软件的支持下,对.apk格式的文件进行再次修改,让程序表现更加出色,满足用户的需求。Root Tools里面自带有很多工具,比如BusyBox,它里面集成压缩了很多Linux的工具和命令,这样软件开发者在对....

     

    IDEAAndroid开发插件 idea-android

    idea-android 是在 IDEA 集成开发环境中开发 Android 应用程序的插件。

     

    Android开发工具 MOTODEV Studio

    MOTODEV Studio是摩托罗拉公司开发的 Android 应用开发工具。这是一个 Eclipse 的插件。该插件同时也提供了 JavaME 应用的开发和 WebUI 的开发功能。

     

    4. 发展背景

    200836日,苹果对外发布了针对iPhone的应用开发包(SDK),供免费下载,以便第三方应用开发人员开发针对iPhoneTouch的应用软件。这使得App开发者们从此有了直接面对用户的机会,同时也催生了国内众多APP开发商的出现。2010年,Android平台在国内手机上呈井喷态势发展,虽说Android平台的应用开发还不那么友好,但许多人仍然坚信APP开发的广阔前景。

     

    5. app数据

    1. 真实用户数:但是获取用户是推广的第一步,然后统计用户数,要注意的是,真正获取到了新的用户,另一个非常重要的数据。

    2、每周、每月活跃度:因为获得的用户数中有一部分以广告、并非主动进入的用户,并及时记录用户转化率、新手引导过程流失情况,而且活动度应该记录好周活跃、月活跃度。

    3. 日留存率、周留存率:这时以保住老客户优先,先统计,日留存率、周留存率、然后在这些用户流失之前想办法提高他们的积极性。

     

    6. APP的意义

    企业APP的意义很广泛,可以有以下几种:

    1、建立自有销售平台

    利用网站、微博、微信、移动客户端的特点,打通社会化营销渠道,提高品牌宣传的渗透度。

    2、二维码应用

    通过二维码应用,实现从线下到线上的无缝连接。

    3、建立强大的用户数据库

    通过会员制度,实现用户行为记录分析,建立用户数据库。

    4、增强数据互通,构建通讯供应链

    实现各系统的数据互通,完善通讯供应链。

    5、建立社会化营销渠道。

    微博、微信、网站、手机客户端都是社会化营销。

     

    7. 市场现状

    APP创新性开发,始终是用户的关注焦点,而商用APP客户端的开发,更得到诸多网络大亨们的一致关注与赞许。“在传统广告、传统互联网与移动互联网融为一个整体的时候,企业和用户之间将可以非常方便地建立一个良性的闭合环:看到你了解你记住你,而这正是企业营销中最为理想的状态,也是互联网最大的价值,或将成为未来的一种新趋势,影响着越来越多的用户和企业主。”

    一开始APP只是作为一种第三方应用的合作形式参与到互联网商业活动中去的,随着互联网越来越开放化,APP作为一种萌生与iphone的盈利模式开始被更多的互联网商业大亨看重,如淘宝开放平台(参考买家应用中心优秀APP:开心赚宝),腾讯的微博开发平台,百度的百度应用平台都是 APP思想的具体表现,一方面可以积聚各种不同类型的网络受众,另一方面借助APP平台获取流量,其中包括大众流量和定向流量。

      随着智能手机和iPad等移动终端设备的普及,人们逐渐习惯了使用APP客户端上网的方式,而目前国内各大电商,均拥有了自己的APP客户端,这标志着,APP客户端的商业使用,已经逐渐普及。

     

    8. 监管政策

    20121210日,工信部电信经济专家委员会秘书长陈金桥在接受媒体采访时表示:"工信部正在建立一个长效的评估体系,对智能手机应用程序、内置软件进行评估和抽查,而且相关的国家实验室和研究院都参与到其中。其次是要将第三方平台纳入管理,成立要备案,运行要监管。而且平台本身的运营也要有所要求,尤其对个人应用开发者要纳入管理体系,如做实名认证等。

     

    9. 解决方案

            1APP制作交付

            APP客户端(iOSAndroidAPP管理后台

      APP下载页面(Web/WapAPP下载对应的二维码

      APP统计平台(VIP专享)APP宣传物料(VIP专享)

      2APP下载服务

      二维码下载(名片、产品包装、官网等)

      线上推广下载(APP StoreAPP Market、百科网站)

      其他辅助下载手段(短信链接下载、微博/微信分享下载、制定APP下载激励政策)

      3APP运营服务

      APP运营网络环境(6个机房、8G带宽、29组集群服务器)

      APP运营系统环境(Unix系统、MySQL数据库、SAAS及容灾备份)

      APP升级服务(APP功能/性能升级、APP后台升级)

      APP版本升级(适配主流的操作系统、分辨率、机型)

      APP运营数据分析

     

    10. 现金流与品牌

    对于一个新创的APP开发团队,现金流尤其重要,因此不少的开发团队都以接外包案子为生,这的确是不错的收入,同时也增加了练兵的机会。但这是快钱,就是代工产业,拼到最后就是接案数以及价格,对于团队的品牌没有多大的加分,更没有留下一个属于自己的产品。开发团队应该在APP数量以及APP品牌上面下点功夫,两条线的策略,一条是以尽可能多数量的APP来开创现金流(不一定是接外包),另一条是开创自有品牌的APP,在这两者之间保持平衡,才有机会找到突破点。如何吸引用户经常性的愿意转发分享也必须纳入考虑,功能与创意都是一时的,用户活跃度才是关键。

     

    APP技术的应用

     

    .视频处理

    AMD显卡驱动中自带的ATI Video Converter便是基于APP技术的视频转码软件,ATI Video Converter并非一个完全基于GPU转码的软件,而是CPU+GPU联合转码。它能够让AMD GPUCPU共同加速,来一起完成以往仅有CPU参与的视频压缩,大大减少压缩时间。与支持NVIDIA CUDA技术的Badaboom视频压缩软件相比,ATI Video Converter拥有更好的转换效率,并支持更多的格式,最重要的是ATI Video Converter是免费的,而Badaboom是收费的。

    .物理加速

      nVIDIA公司非常成功的将PhysX物理引擎,通过CUDA技术与Geforce显卡相结合,诞生了nVIDIA PhysX物理加速技术。为了与之竞争,AMD推出了基于AMD APP技术的“开放物理计划”与之抗衡。开放物理计划联合了HavokBulletPixelux DMM三种物理引擎,基于OpenCL标准和AMD APP技术,将AMD GPU中强大的并行计算能力运用到游戏中去加速物理计算

    .科学研究

      Folding@HomeATI与斯坦福大学合作,在Folding@Home研究项目中利用ATI Radeon X1900作运算加速。这是GPU第一次用于科学研究计算。在AMD收购ATI之后,双方继续进行合作。迄今为止,全球有不计其数的AMD GPU正在基于AMD APP技术折叠蛋白质,以帮助科学家攻克人类疾病。

    展开全文
  • 手机app开发公司亿合科技要是给你一个机会设计一款APP,你会用什么方式做这个APP的登录模块?根据APP的业务模型的不同会有不同的设计方法。如果是偏内容型的APP,需要优先展示内容给用户,当用户需要用到APP中相关...

          手机app开发公司亿合科技要是给你一个机会设计一款APP,你会用什么方式做这个APP的登录模块?根据APP的业务模型的不同会有不同的设计方法。如果是偏内容型的APP,需要优先展示内容给用户,当用户需要用到APP中相关内容时,如评论,收藏,购买等,再引导用户登录。这类的应用如新闻类,音乐类,电商类APP。如果是偏工具型、社交型的APP,这类APP的功能和用户个人账号关联系强,不登录就无法正常使用,那么就需要用户先注册登陆。这类应用如支付类,社交类。

          一、登录的方式

         1、用户名+登录密码

         当用户注册时候,不建议让用户去创建用户名,并且以此用作登录服务的唯一凭证

         优势:用户名不涉及到个人隐私,较安全

         劣势:随着帐号越来越多,用户遗忘帐号名称的可能性也越来越大

         2、邮箱地址+登录密码

         在PC端时代,用户登录时通常是需要用户名/邮箱+密码,所有的用户登录注册基本是围绕着邮箱来做

         优势:用户的邮箱一般都是固定那么1-2个,比如网易邮箱或QQ邮箱,不容易被遗忘,且方便找回密码。用户可在邮箱注册登录之后再修改信息,添加用户名

         劣势:在移动互联网时代,用户在手机上输入邮箱的操作太繁琐,且容易出错

         3、手机号码+密码登录

         手机号具有独特性,常用性,唯一性。作为登录帐号拥有便捷性和易于记忆的特征,同时系统可以更加便捷地为用户发送验证码

         优势:登录名为手机号,很容易记住,而且忘记登录密码了可以使用手机号找回。输入时都是数字方便用户输入

         劣势:手机号等个人隐私一旦被泄露,潜在危害性很大

         4、第三方登录

         现在大部分的APP应用都有预留第三方登录(微博、微信、QQ)来注册/登录,这样的登录方式让用户更加便捷。

         优势:简单、便捷,避免输入

         劣势:无法获取用户个人信息,不利于运营,不利于用户转化

         5、手机号+验证码

         用户输入手机号,凭借收到的验证码即可登录

         优势:无需设置密码,发个验证码就可以了

         劣势:手机号更换,信号不号,手机遗失,这些都有可能造成帐号问题

         二、登录时的注意点

        1、提醒大写锁定

        为用户提供文本提醒或者视觉提醒都有助于避免多次输入错误,降低用户的受挫机率

        2、避免反模式设计

        在设计时,要顺应用户的习惯和交互的规律,让用户可以更好地与界面进行互动,比如:

         a、当用户输入信息失误时,提示用户哪个部分出了问题,引导用户修改

         b、当用户已经拥有帐号的时候,提醒用户已经注册,可使用原帐号登录

         c、当用户输入字段长度大于规定长度时,给予提醒

         3、加上“忘记密码”

         无论什么时候,“忘记密码”都是必须的。把它放在用户登录表单中,一旦用户忘记登录密码,可以第一时间找到解决方法

         4、显示密码

         现在的APP的在设计注册流程中,由于为了兼顾用户体验,密码通常只输入一次,一旦用户记忆或输入错误,用户又需要“忘记密码”,重新设置密码,这无疑增加了用户的操作成本。为用户提供密码显示可以有效的避免这个问题。

         5、去除验证码

         移除验证码可以降低用户的操作成本,有效的提高转化率。为了防止暴力注册,还是可以采取一些措施限制恶意注册的行为

         6、清晰的标识

         让用户明白自己的行为的目的是什么。在登录流程时,提交信息的按钮上就用“登录”,而不是标注“提交”或者“完成”。对于用户而言,这会让用户明白他们的操作和预期是一致的。

    转载于:https://www.cnblogs.com/ehecd/p/6055197.html

    展开全文
  • python 手机app数据爬取

    千次阅读 2019-05-24 23:50:33
    今天向大家介绍app爬取。 文章目录一:爬取主要流程简述二:抓包工具Charles1.Charles的使用2.安装(1)安装链接(2)须知(3)安装后3.证书配置(1)证书配置说明(2)windows系统安装证书配置(3)Android手机安装证书配置4....

    今天向大家介绍app爬取。

    一:爬取主要流程简述

    1.APP的爬取比Web爬取更加容易,反爬虫没有那么强,且大部分数据是以JSON形式传输的,解析简单。

    2.在APP中想要查看请求与响应(类似浏览器的开发者工具监听到的各个网络请求和响应),就需要借助抓包软件。

    3.在抓取之前,需要设置代理将手机处于抓包软件的监听下,就可以用同一网络进行监听,获得所有的网络和请求。

    4.如果是有规则的,就只需要分析即可;如果没有规律,就可以用另一个工具mitmdump对接Python脚本直接处理Response。

    5.抓取肯定不能由人手动完成,还需要做到自动化,还要对App进行自动化控制,可以用库Appium。


    二:抓包工具Charles

    1.Charles的使用

       Charles是一个网络抓包工具,比Fiddler功能更强大,可以进行分析移动App的数据包,获取所有的网络请求和网络内容

    2.安装

    (1)安装链接

       官网:https://www.charlesproxy.com

    (2)须知

       charles是收费软件,但可以免费试用30天。试用期过了,还可以试用,不过每次试用不能超过30分钟,启动有10秒的延迟,但大部分还可以使用。

    (3)安装后

    在这里插入图片描述

    3.证书配置

    (1)证书配置说明

       现在很多网页都在向HTTPS(超文本传输协议的加密版,即HTTP加入SSL层),经过SSL加密更加安全,真实,大部分都由CA机构颁发安全签章(12306不是CA机构颁发,但不被信任)。现在应用HTTPS协议的App通信数据都会是加密的,常规的截包方法是无法识别请求内部的数据的。
       要抓取APP端的数据,要在PC和手机端都安装证书。

    (2)windows系统安装证书配置

       打开Charles,点击Help->SSL Proxying->Install Charles Root Certificate,进入证书的安装页面:
    在这里插入图片描述
       点击安装证书,就会打开证书安装向导,然后点击下一步,此时需要选择证书的存储区域,选择第二个选项”将所有证书放入下列存储”:
    在这里插入图片描述
       然后点击浏览,选择证书存储位置为”受信任的根证书颁发机构”,点击确认并进入下一步:
    在这里插入图片描述

    (3)Android手机安装证书配置

    手机与电脑连接同一个WiFi。
    设置如下:
    可以用操作系统命令ipconfig查看PC端ip:

    在这里插入图片描述
       为10.61.131.172,默认代理端口号为8888。之后代理服务器为电脑的IP地址。端口为8888。设置如下:
    在这里插入图片描述
    会发现360手机的标志
    在这里插入图片描述
    接下来对手机下载证书:
    访问手机访问 chls.pro/ssl ,下载证书:
    在这里插入图片描述
       此时下载的是个.pem 格式的。需要手动更改为.crt 格式,最后随便放进某个文件夹即可:
    在这里插入图片描述
    用手机(我用的360手机)设置里的安全,找到从存储设备安装找到该crt文件进行配置:
    在这里插入图片描述
    此时需要设置锁屏:
    在这里插入图片描述
    就可以完成证书的安装。

    4.开启SSL监听

       点击Proxy->SSLProxying Settings,在弹出的窗口中点击Add按钮,添加需要监听的地址和端口号。需要监听所有的HTTPS请求,可以直接将地址和端口设置为*,即添加*:*设置,就可以抓取所有的HTTPS请求包;如果不配置,抓取的HTTPS请求包状态可能是unknown。
    在这里插入图片描述
    在这里插入图片描述
    这样就指定只监听我们需要的ip和端口的请求和响应。

    5.原理

       Charles运行时会在PC端的8888开启一个代理服务,实际上是一个HTTP/HTTPS的代理。
       可以是用手机通过相同的无线网络连接(这里用的是校园网),设置手机代理为Charles的代理地址,这样手机访问互联网的数据就会经过Charles抓包工具,Charles转发这些数据到真实的服务器,再转发到手机中。这样抓包工具(Charles)就起到了中间人的作用,还有权对请求和响应进行修改。

    6.抓包

       我们可以看到我们已经请求了很多数据了,点击左上角的扫帚按钮即可清空捕获到的所有请求,然后点击第二个监听按钮,表明Charles正在监听App的网络数据流。如下:
    在这里插入图片描述
    抓包后可以看到音乐:
    在这里插入图片描述
       可以通过分析不同的URL请求,获得数据,也可以通过修改数据,得到那些参数是需要的。
    在这里插入图片描述
       这是有规则的,无规则的如果没有规律的url,就可以用另一个工具mitmdump对接Python脚本直接处理Response。



    三:抓包工具mitmproxy(免费的)

    1.简介

       mitmproxy是一个支持HTTP和HTTPS的抓包程序,有类似Fiddler和Charles的功能,但它是一个控制台的形式操作。

    2.关联组件

       mirmproxy还有两个关联组件。一个是mitmdump,是命令行接口,可以对接Python脚本,用Python处理数据;另一个是mitmweb,是一个web程序,可以清楚地查看mitmproxy捕获的请求。

    3.安装和证书配置

    (1)用pip安装

       这个是安装python后就有的安装方法,也是最简单的安装方法,在控制台输入
       Pip install mitmproxy即可,会自动安装mitmdump和mitmweb组件:
    在这里插入图片描述
    但是到最后安装会失败:
    在这里插入图片描述
       是因为安装这个包的 window 系统需要首先安装 Microsoft Visual C++ V14.0以上 才行。
       可以在https://visualstudio.microsoft.com/downloads/
    直接下载即可,安装之后需要c++的库之类的东西都安装了,然后再在命令行进行安装 mitmproxy即可:
    在这里插入图片描述
    然后进入安装目录,我们选择第三个:
    在这里插入图片描述
    在“安装 Visual Studio”屏幕中找到所需的工作负载,选择"使用的桌面开发C++"工作负荷:
    注:这里的文件太大,我直接安装到E盘。
    在这里插入图片描述
    之后再安装就可以安装成功了:
    在这里插入图片描述

    (2)在GitHub或官网上安装

    GitHub:https://github.com/mitmproxy/mitmproxy
    官网:https://mitmproxy.org
    下载地址:https://github.com/mitmproxy/mitmproxy/releases

    3.证书配置

    (1) 产生CA证书

       对于mitmproxy来说,如果想要截获HTTPS请求,也需要设置证书。它在安装后会提供一套CA证书,只要客户端信任了mitmproxy的证书,就可以通过mitmproxy获取HTTPS请求的具体内容,否则无法解析HTTPS请求。
       在cmd中输入命令行接口命令mitmdump,产生CA证书,在用户目录找到CA证书:
    在这里插入图片描述
    在这里插入图片描述
    这里的目录可以自行指定,但必须是在第一次运行mimdump时。
    (2)PC端安装
       电脑是Window系统,因此用mitmproxy-ca.p12,双击后出现导入证书的引导页:
    在这里插入图片描述
    点击下一步,不需要设置密码:
    在这里插入图片描述
    接下来点击下一步,需要选择证书的存储区域,和配置Charles一样:
    在这里插入图片描述
    最后会有警告,选择是即可,证书就安装到我们的电脑上了:
    在这里插入图片描述
    在这里插入图片描述
    (3)手机端安装
       我的手机是Android系统,直接把mitmproxy-ca.pem文件发送到手机上即可。
       配置方法和Charles类似。HTTPS请求。
       手动更改为.crt 格式,最后随便放进某个文件夹即可,用手机(我用的360手机)设置里的安全,找到从存储设备安装找到该crt文件进行配置:
    在这里插入图片描述
    在这里插入图片描述

    4.抓包原理

       在mitmproxy中,会在PC端的8080端口运行,然后开启一个代理服务,就是一个HTTP/HTTPS代理,类似ip代理。
       手机和PC在同一局域网内,设置代理为mitmproxy的代理地址,抓包工具mitmproxy就相当于中间人的作用,数据就会流经抓包工具。这个过程还可以对接mitmdump,抓取到的请求和响应都可以直接用Python来处理,然后分析,存到本地,或存到数据库。

    5.设置代理

       在抓包前需要先设手机局域网置代理为抓包工具mitmproxy代理。

    (1)启动代理服务

       在cmd中输入mitmproxy,会在8080端口运行一个代理服务,由于该命令不支持Windows系统,因此在Windows系统中用mitmdump命令:
    在这里插入图片描述
    用mitmdump启动代理服务,监听8080端口:
    在这里插入图片描述

    (2)设置当前代理

       将手机和电脑连到同一局域网下,先用操作系统命令ipconfig查看PC端当前局域网的ip:
    在这里插入图片描述
    为10.61.131.172,在手机端设置代理如下:
    在这里插入图片描述
    这样就配置好了mitmproxy的代理。

    6.抓包

       运行mitmweb(由于mitmproxy不能用),就可以看到手机上的所有请求:
    在这里插入图片描述
    网页呈现如下:
    在这里插入图片描述
       随便打开一条网络请求,发现和在网页的开发者工具下,监听到的一样:
    在这里插入图片描述
    在这里插入图片描述

    7.mitmproxy的高级功能mitmdump

       上面的功能与方法在Fiddler和Charles中也有,那么mitmproxy的优势何在?
       在mitmproxy中它的强大体现到mitmdump工具,可以对接Python对数据请求进行处理。
       它是mitmproxy的命令行接口,可以对接python程序对请求进行处理,不需要手动截取和分析HTTP请求和响应,进行数据存储和解析都可以通过Python来完成。

    (1)简单获取数据(随便一个app)

    我们先创建一个文件夹:
    在这里插入图片描述
    然后打开转到该文件夹下:
    在这里插入图片描述
       输入mitmdump -w outfile(outfile名称和扩展名可以自定义,文件放到当前cmd打开目录下,也可以用绝对相对路径,但比较麻烦):
    截取广播页面:
    在这里插入图片描述
    在这里插入图片描述
    之后把截获的数据保存到文件夹下:
    在这里插入图片描述
    打开文件,发现好多乱码:
    在这里插入图片描述
    下面会对其进行处理。

    (2)可以指定一个脚本来处理截获的数据:

       Mitmdump -s script.py(脚本名字可以自定义),需要放在cmd当前目录下,也可以用绝对相对路径,但比较麻烦。
    写入如下代码:
    在这里插入图片描述
       就是定义了一个request()方法,参数为url,其实是一个HTTPFlow对象,通过request属性即可获取到当前请求对象。然后打印出请求头,将User-Agent(用户代理,简称 UA,它是一个特殊字符串头,使得服务器能够识别客户使用的操作系统及版本、CPU 类型、浏览器及版本、浏览器渲染引擎、浏览器语言浏览器插件等)修改为MitmProxy。
    运行之后手机端访问http://httpbin.org/get,可以看到请求头:
    在这里插入图片描述
    PC端如下:
    在这里插入图片描述
       手机端请求的Headers实际上就是请求的Headers,User-Agent被修改成了mitmproxy(防反爬),PC端显示修改后的Headers内容,其User-Agent正是MitProxy。
       这样就可以让服务器识别不出我们的是爬虫程序了。

    (3)日志输出

       mitmdump提供了专门的日志输出功能,就是设定输出到控制台的颜色,可以分别为不同级别配置不同的颜色,更加直观:
    在这里插入图片描述
    效果如下:
    在这里插入图片描述

    (4)输出请求数据

       可以输出一些请求信息,比如请求连接(url),请求头(headers),请求Cookies(cookies),请求Host(host),请求方法(method),请求端口(port),请求协议(scheme)等。
       还可以把这些请求的信息进行修改后,再发送到服务器中,这样,服务器返回的可能不是app想请求的网页,这就是为什么一些app打开后却访问到了其他网址的原因。
       也可以通过该用法,通过修改Cookies,添加代理等方式来尽可能避免反爬。
    这里就先进行略过。

    (5)获得响应

       响应就是请求后服务器返回的信息,也就是我们需要的,大部分是json格式文件。
       对于json格式文件,mitmdump也提供了对应的处理接口,就是response()方法。
       我们可以打印各个http/https请求的响应内容,不过text才是我们想要的json格式文件,也可以用content,不过返回的是二进制文件。
    代码如下:
    在这里插入图片描述
    我们先试一下:
    在这里插入图片描述
    内容有些乱,接下来我们就进行分析得到我们需要的数据。



    四:利用mitmproxy进行app数据获取

    1.获取请求url

    获取http/https请求url,也可以认为是接口:
    修改python文件,获得请求的url:
    在这里插入图片描述
    然后停留在该页面:
    在这里插入图片描述
    会发现出现了好多url:
    在这里插入图片描述
    我们一一分析一下,发现接口信息分别是:
    这个接口
    https://images.sanmaoyou.com/img/new_images/5ac83890033ec.jpg
    是GET请求获取文件:
    在这里插入图片描述
    这个接口的为json文件,为GET获取方式:
    在这里插入图片描述
    在这里插入图片描述
    这个接口
    https://images.sanmaoyou.com/audio/library/2018-04/5ac83887c5263.mp3
    是下载音乐,为GET获取方式:
    在这里插入图片描述
    这个接口
    http://sdk-open-phone.getui.com/api.php?format=json&t=1&d=76060FDC1EFFF74C1956225F1DBEE6AF006578C33658C4AF90D802512BF321C8&k=2是POST方式,是传文件。
    我们在向右点击下一个广播,进行验证:
    在这里插入图片描述
       发现基本上,新打开一个广播后,会加载mp3文件,图片文件,比较长的接口就返回json文件:
    在这里插入图片描述

    2.接口url文件

    把接口保存到txt文件中:
    在这里插入图片描述
    发现只有很长的接口才返回json文件。因此下面就需要对这些接口进行筛选。

    3.爬取json

    代码在pa_qu_json.py文件中,需要先创建一个json爬取数据文件夹,爬取后的结果如下:
    在这里插入图片描述
    在这里插入图片描述

    接下来用Python处理即可,这里只是简单爬取。在实际应用中,不是人工的,是用代码自动化进行分析各个请求和响应进行爬取。这里有个跨平台的移动端自动化测试工具,可以很方便地进行自动化爬取,在下一个爬虫博客中会详细讲到,希望大家把宝贵意见提出来一起学习进步。

    展开全文
  • Android手机App安全漏洞整理

    千次阅读 2017-03-07 23:04:09
    APP安全漏洞整理 1.源码安全漏洞 1.1 代码混淆漏洞 当前APK文件的安全性是非常令人堪忧的。APK运行环境依赖的文件/文件夹 res、DEX、主配文件Lib 只有简单的加密或者甚至没有任何加密。诸如apktool这类工具可轻易...
  • 最近在做手机APP自动化测试,需要安appium,并配置环境变量,网上虽然有很多教程,但是随着版本的更新总有各种各样的坑,本文以亲身踏坑经历给大家详细介绍一下如何正确安装appium。 /2 第一步:安装Adroid SDK/ 1、...
  • 手机APP物联网远程控制开关

    万次阅读 2020-09-10 21:17:29
    2 系统总体方案设计 2.1 技术指标 本次毕业设计的主要任务是通过设计软硬件以及相应手机app程序、上位机软件和网页实现一款物联网远程终端控制开关系统,针对较长距离和工业现场环境恶劣,增加远程数据采集和通信的...
  • 前端 uni-app 我对 uni.request 进行了封装,可能请求方式有些不同 <template> <view class="container"> <view> <image class="logoImg" src="@/static/img/logo.jpg"></image>...
  • 下面我从安卓开发的角度,简单写一下如何获取手机设备信息和手机号码 准备条件:一部安卓手机手机SIM卡确保插入手机里、eclipse ADT和Android-sdk开发环境 第一步:新建一个android工程(JinshanTest)...
  • 手机如何遥控电脑开机?如何用手机网络唤醒电脑?现在是冬天,很多朋友都不想起床开电脑...今天就让小编来为大家介绍一款局域网唤醒电脑的App吧!软件名称:局域网唤醒(Wake On Lan)软件版本:1.24软件大小:3.06...
  • 最近在做手机APP自动化测试,需要安appium,并配置环境变量,网上虽然有很多教程,但是随着版本的更新总有各种各样的坑,本文以亲身踏坑经历给大家详细介绍一下如何正确安装appium。 /2 第一步:安装Adroid SDK/ ...
  • 一步一步教你怎么利用arduino+w5100+乐联网开放平台,轻松实现手机app对 arduino 设备的控制。分享给大家。 1 说明 案例说明:使用Arduino+W5100来实现一个乐联网的应用,即通过乐联网手机App控制连接到Arduino+W...
  • 目录1、HTTPS及手机APP抓包1.1、 HTTPS抓包1.2、捕获Firefox HTTPS流量1.3、APP抓包1.3.1、抓Android设备APP包-fiddler设置1.3.2、 抓iOS设备APP包—fiddler设置1.4、Willow插件安装与使用1.4.1、 插件安装1.4.2、 ...
  • 手机APP使用支付宝支付(服务端)

    万次阅读 2018-03-13 17:33:56
    最近本人刚做了手机APP支付宝支付功能,主要分为六步,在这里主要记录代码部分。第一步:创建应用并获取APPID要在您的应用中接入支付宝App支付能力,需要通过创建应用的方式接入蚂蚁相关接口并进行开发,基于对行业...
  • 作为一名常州开发APP公司的UI设计师,我们需要一些规范来约束自己,让工作变得更有条理,更具专业性。在完成APP开发的过程中会有很多的细节需要注意,今天就来为大家讲5个常犯的主要错误以及解决的办法。“设计不是...
  • 本文主要针对 Python for Django 在对接支付宝电脑网站、手机网站、App支付过程中具体实现步骤进行详解; 相信大家支付功能也写了不少,但时间一长,再次用到的时候有些细节难免会忘记,此篇文章就为方便后续快速...
  • Python POST 修改某计步APP的数据

    千次阅读 2018-09-12 09:09:24
    由于策略限制,必须使用传统计步器或者手机APP的方式记录行走步数,且APP必须始终处于运行状态方能计步,这种不合理的方式严重影响了客户体验,但是这一切的一切都没法改变,所以想着能不能通过修改数据包的方式完成...
  • 在开发移动端 app 时可以选择原生 app 和 webapp, 原生 app 体验好,开发成本高,相对的 webapp 体验要差,开发成本低。webapp 要求很低,可以说只要会开发web 站就能开发 webapp,这里不讨论怎么选择,我们讨论...
  • 毕业设计做的是智能家居的题目,要做一个手机蓝牙APP,与下位机实现数据互传; 之前也没做过安卓的东西,但对QT,C++的应用还算熟练,所以用起eclipse来觉得挺好上手,java语言又在很多地方和c++很像,所以个人觉得...
  • ios 收藏app内容或网页到手机桌面

    千次阅读 2015-03-16 15:21:31
    最近看了一篇《保存app内容到手机桌面》感觉挺不错,于是自己参照着也做了一个demo。在此主要记录一些编写demo中遇到的问题。 先感谢下《保存app内容到手机桌面》的原作者,另再附上链接:...
  • app在大行其道的情况下,本人来发表关于app手机wap网站的几个观点,希望对各位同仁有参考价值: 第一点 我们从依附的平台来看: 移动Wap网站:由移动设备的浏览器来支持,只要移动设备支持上网浏览网站...
  • 物联网家居设计全套资料,工程源文件,可直接设计制作,也可自行修改手机APP界面中每一路名称在长按情况下都可以自行修改名称,APP界面无商业标志,安卓学习入门懂一点即可在工程基础上自行添加页面个人标志。...
  • App动态修改图标包名

    2019-08-01 15:07:04
    细心的朋友会发现,现在火热的京东,天猫等app的icon 在手机中不知道什么时候发生了改变,尤其是在618,818等活动,改变了图标,但是奇怪的是我们并没有更新软件,这个图标怎么就变了,作为android开发者就来分析实现...
  • XMind思维导图app手机版使用教程

    千次阅读 2020-01-09 15:24:26
    XMind思维导图app手机版使用教程 XMind思维导图原本是PC端上十分注明的一款软件,使用这款软件能够非常有效的提高你的工作和生活效率,是许多成功人士都选择的一款软件。使用这款软件能够非常好的将自己脑袋中的想法...
  • 单片机HC06蓝牙模块与手机APP

    千次阅读 多人点赞 2019-04-11 20:34:41
    学习HC06蓝牙模块遇到一些问题,特此写下作为记录。 用USB转TTL连接,插到电脑上,发AT怎么也不...4.用电脑串口和手机蓝牙串口APP(接线同上) 手机APP用蓝牙串口,发中文会乱码 自己写的APP,还是中文
  • 关于上传的app标识号和版本号

    千次阅读 2017-12-05 09:47:26
    修改版本号可以在manifest文件中修改Android:versionCode和Android:VersionName属性 ...如果在上传app之后发现app的版本号或者标识号对不上,可以检查这两个地方,或者干脆删除了build.gradle中的versionCode和...
  • 【实验二】通过AppInventor结合sIoT实现手机app控制掌控板的灯和显示内容。 二、实验原理与内容 sIoT可以在局域网上实现mqtt消息的通讯。借助sIoT可以通过手机app实现局域网内的设备操控。 三、实验软硬件环境 硬件...
  • 此次我们要把S7-1200PLC连接到EMCP物联网云平台(简称EMCP),实现电脑Web网页、手机APP和微信对S7-1200PLC(MW1000、MW1002、I0.0)寄存器的远程监控和MW1004和Q0.0的远程读写。 一、准备工作。 1.1在对接前我们需...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 30,568
精华内容 12,227
关键字:

修改手机标识app