文章目录

  • 前言
  • 一、业务描述
  • 二、手机上用到的app
    • 1.Linux Deploy
    • 2.Busybox
    • 3.ADB工具安装器
    • 4.JuiceSSH
  • 三、Linux Deploy安装
  • 总结

前言

总所周知,我们的安卓手机操作系统本身就是基于linux进行开发的,我们只要获取到root权限,理论上就可以将我们的手机当做服务器来使用。道路千千万,有的是方法去实现,本篇文章博主将带大家感受一下我去年接手的一个项目用的一系列操作以及相关的app,硬生生把手机变成我们的服务器。不要觉得不敢相信,会有人用手机当服务器?有些东西还真没办法用我们常规得方式去实现,我接手得项目是某知名社交app的逆向采集,必须借助安卓手机的环境。好开始进入正文。。。。。。


一、业务描述

指令1:adb forward tcp:27042 tcp:27042

这个项目的采集方式是通过frida动态插桩的方式,给app开个口,让数据从这个口留出来,说白了就是植入js脚本,通过修改进程的方式得到数据。那正常的hook流程就是手机usb连接电脑,通过 指令1 将手机上的frida端口映射到电脑上,这样相当于你电脑上的某个端口可以直接访问app的进程了,再通过python将js脚本植入到app的进程中,当app去调用我们插桩的点时,数据将会被frida拦截,这样就拿到数据啦。

到这里就有一个问题了:如果我们对数据需求量不多的时候,比如app的签名或者token之类有时效性的东西我们不会一直去拿,采用手机usb连接电脑的形式可行,那对数据的需求量比较大呢?明显满足不了我们的(对了,这里得提醒一下我逆向的app必须要账号登录、借助安卓环境、还有风控之类的一系列因素,无法像正常的爬虫一样直接做一个接口的形式)。

前辈的解决方案就是:把手机变成服务器的骚操作,就是把手机usb连接电脑的形式变成一个整体,后续我们就可以再 “电脑” 上通过接口、队列等消息中间件把数据传出去了。

二、手机上用到的app

1.Linux Deploy

下载地址:https://github.com/meefik/linuxdeploy/releases
作用:它其实就是一个容器,这样就支持在手机上运行linux了,虽然手机原本就支持linux,但是有些操作啥的还是不方便或者不支持。在这里我们可以把它直接看成正常的电脑或者服务器,只要安装一下adb工具后,就可以连接到手机了,这就是上面提到的 “手机usb连接电脑” 中的电脑了。具体可以看README.md的介绍

2.Busybox

下载地址:https://github.com/meefik/busybox/releases
作用:它的作用比较简单,它集成了众多最常用Linux命令和工具,在这里就是扩展linux指令。具体可以看README.md的介绍

3.ADB工具安装器

下载地址:https://www.coolapk.com/apk/crixec.adbtoolkitsinstall
辅助作用:它的作用是进行网络ADB调试,在这里就是打开手机的 tcp 5555 端口,这个端口是adb不需要验证就可以连接上你手机的,有风险。那这里为什么要这样用呢?正常我们手机用usb连接电脑会弹出验证,是否同意电脑连接的提示,过一段时间后过期了你还是要去验证,这个地方相当于做一个简化人为去确认

4.JuiceSSH

下载地址:http://www.2265.com/soft/253746.html
辅助作用:它其实就是一个控制台,我们输入指令的app,没啥实质性的用途。

三、Linux Deploy安装

这里不贴图文了,现在项目没这样部署了,因为太垃圾了(手动滑稽),这里就用之前做的笔记说明吧,感兴趣可以去网上找找更详细的安装方法。

a.左上角三横–>设置–>PATH变量 设置为/system/xbin–>锁定wifi–>CPU唤醒–>开机自动启动

b.右下角属性–>发行版本 CentOS–>架构 aarch64–>发行版GUN/Linux版本 7–>启用SSH–>源地址 http://mirrors.aliyun.com/centos/(没有使用本地镜像可以使用源地址)

c.右上角三点–>安装

d.ftp://ftpuser:ftp123@xxx.xxx.xxx.xxx下载linux.img镜像放到SDK中,安装类型为镜像文件,安装路径为${WXTERNAL_STORAGE}/linxu.img

安装成功:看下图,都是done,否则就有问题,具体的问题我之前也忘记收集了,可以自行网上查阅

测试:我们用ssh进行连接测试


总结

以上就是某流量最大的社交App逆向采集的前期部署方案了,总得来说就解决了一个问题:把手机usb连接电脑变成一个整体得服务器。我文章中有吐槽垃圾,我可不是否定前辈的工作成果,我之前接盘的时候那是真的搞吐了,知识点、东西不多,但是真的耗人力,不是很稳定。然后你看看部署过程,每台手机都得这样,首先要刷手机安装app,然后去Linux Deploy容器里面部署环境、拉代码等一系列操作,最后还要各种测试环境,正常部署一台设备到有数据被hook差不多要2-3个小时吧,然后我之前运维天天往机房跑,就是老是宕机,所以我说他垃圾。

后续会这个我是优化和自己搭的一个框架,这个框架是基于frida,pc 和 phone 的逆向采集模式都可以兼容
来瞧瞧吧

最后最后,文章中用到的一些技术在我主页都可以学到。分享不易,希望各位看官动动手指点个赞和关注吧,我会为大家带来一些有趣和有技术的分享,谢谢~~~

如何将手机变成一个(Linux)服务器相关推荐

  1. 用废旧手机搭建一个Linux服务器,附有免费下载文件

    因为手机 CPU.内存.储存都合适,还有丰富的接口:蓝牙.WIFI.Mirco B,而且手机的异构多核心架构,更加省电,比树莓派强不少呢.下面进入正题,不写代码就可以打造自己的服务器.(踩了很多坑,这 ...

  2. (一)专题介绍:移动端安卓手机改造成linux服务器linux服务器中安装软件、部署前后端分离项目实战

    快捷目录 前言 一.涉及到的相关技术简介 二.具体实现过程及踩坑杂谈 1.安卓手机改造成linux系统实现方案 2.改造后的手机Linux中软件的安装 3.手机Linux中安装MySQL5.7踩坑实录 ...

  3. linux服务器如何访问,如何连接一个Linux服务器

    如何连接一个Linux服务器 本文中提到的Linux服务器,是一台安装Ubuntu系统的工作站. Linux服务器端准备工作 首先需要在Linux服务器上安装openssh-server,打开Linu ...

  4. 远程访问手机搭建的Linux服务器

    欢迎点击「算法与编程之美」↑关注我们! 本文首发于微信公众号:"算法与编程之美",欢迎关注,及时了解更多此系列文章. 欢迎加入团队圈子!与作者面对面!直接点击! 在上一篇文章< ...

  5. 手机上搭建Linux服务器

    安装SSHD 安装sshd apt update && apt upgrade # 更新终端软件包 apt install openssh 启动sshd sshd 设置sshd自启动 ...

  6. 改造Android手机为,便携式linux服务器,跑tomcat

    环境设备 1) 闲置安卓手机一部,我的是 oppoR7. 要获取root权限.如果总root失败可以刷下机. 2) 可以开热点的 windows电脑一部,我的是win10家庭版. 2.需要的软件 1) ...

  7. JuiceSSH--ssh安卓手机客户端管理linux服务器

    一 JuiceSSH简介 JuiceSSH是一个安卓终端客户端支持包括SSH,Local Shell,Mosh 和Telnet. 特点: 1 全彩色终端/SSH客户端 2 弹出式键盘包含常用的字符 3 ...

  8. 如何把安卓系统刷成linux,废旧Android手机如何改造成Linux服务器?

    搭建所谓的Linux的过程还是挺简单的,在很久之前我就玩过.不过如今年纪确实也不小了,没了当年那一股冲劲儿,这也属实是一个令人悲伤的事情. 书归正传,能问出这个问题,已经算得上是有一些计算机基础了.不 ...

  9. 废旧Android手机如何改造成Linux服务器?

    搭建所谓的Linux的过程还是挺简单的,在很久之前我就玩过.不过如今年纪确实也不小了,没了当年那一股冲劲儿,这也属实是一个令人悲伤的事情. 书归正传,能问出这个问题,已经算得上是有一些计算机基础了.不 ...

  10. 快速云:利用废旧安卓手机改造linux服务器

    如今手机迭代的速度相对来说比较快,旧的手机也慢慢被替代下来,但是手机基本还是能用的.那旧的安卓手机还可以废物利用,如:变成linux服务器,废话不多说看看效果. 所需材料及设备 ·正常使用的安卓手机 ...

最新文章

  1. GAN的统一架构与WGAN
  2. jsp:请求转发和重定向
  3. RTSP协议转换RTMP直播协议
  4. 快速获取csv数量_【数量技术宅|数据爬虫系列分享】如何获取免费的数字货币历史数据...
  5. 异常:This application has no explicit mapping for /error, so you are seeing this as a fallback.
  6. 某级数的前两项A1=1,A2=1,以后各项具有如下关系:An=An-2+2An-1。使用非递归的算法求解满足要求的n值的程序。
  7. c#项目 java项目_c#项目转Java项目!!!!!
  8. Flask 发布 1.0 稳定版
  9. 在Vue文件中引用模块的相对路径“@“符号表示什么意思?
  10. 如何在Mac上的一个“预览”窗口中显示若干文件
  11. 计算机创新设计2大赛获奖作品3Done,走向3D创意世界——3Done创客设计比赛
  12. ppt flash无法播放解决方法
  13. STM32接电机驱动,杜邦线供电,然后反烧问题
  14. 5G手机的赛点争夺战
  15. php 图片外链限制,将新浪微博图床图片保存到本地解决限制外链的方法
  16. 园林景观cad_5+ 园林景观设计PSD树木建筑人物鸟瞰图效果图ps后期分层素材库配景A...
  17. 【笔记】PS制作身份证复印件
  18. 实验六 文本串的加密解密
  19. origin做双Y轴折线图的具体步骤
  20. 2021年Java发展怎么样?现在学了Java技术出来是否还能找到工作?

热门文章

  1. 名字的漂亮度问题求解——华为OJ题目
  2. 信息安全系统设计基础第十三周学习总结
  3. php strtotime坑,php中strtotime函数的坑
  4. Java初级必做习题2
  5. 【转载】用JS\JQUERY获取地址栏参数的方法
  6. Python学习日记-第二十四天-飞机大战(敌机出场设计)
  7. 【论文写作-1】Word中如何引用参考文献之交叉引用参考文献
  8. Ansys Zemax | 如何在序列模式下模拟分光棱镜
  9. Android复习之旅--简单使用Dialog
  10. 手把手教你搭建Scala开发环境 步骤详细