【安卓安全】透明代理定向抓APP包

这篇具有很好参考价值的文章主要介绍了【安卓安全】透明代理定向抓APP包。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

参考了以下大佬的文章:
文章一
文章二
文章三

工具:iptables + redsocks2 + Charles

前期准备

配置charls证书

要使用charles抓https的流量,就需要正确配置证书,并将证书设置为系统证书,这里开始踩了坑,我只是配置了用户证书,在安卓7之后的版本中,一般的直接安装证书,只是安装到用户证书,而要想实现抓app包,只能是系统证书。
安卓透明代理,android,安全,ssl
证书下载保存后 为cer或pem后缀,此时不能直接装在手机里,需要进行一些转换。
进入到安卓系统证书目录:/system/etc/security/cacerts
安卓透明代理,android,安全,ssl
可以看到都是一串字符加上 .0 这样的后缀,这里前面的字符生成是有讲究的
证书的名称可以用openssl获取,用命令计算出证书的名字:
Cer格式
openssl x509 -inform DER -subject_hash_old -in 1.cer
Pem格式
openssl x509 -inform PEM -subject_hash_old -in 1.pem
安卓透明代理,android,安全,ssl
这串字符就是前面的名字了,之后直接重命名就行了,网上有文章还要用命令,没必要,而且会出错。
安卓透明代理,android,安全,ssl
之后把该文件push到手机上,这个时候直接放在 /system/etc/security/cacerts 目录下是失败的,会显示该目录只读(root后)。此时需要新的挂载点

# 创建一个临时目录,保存当前证书
mkdir /sdcard/tmp/
# 复制现有证书到临时目录
cp /system/etc/security/cacerts/* /sdcard/tmp/
# 创建内存挂载
mount -t tmpfs tmpfs /system/etc/security/cacerts
# 将现有证书复制回 tmpfs 挂载
mv /sdcard/tmp/* /system/etc/security/cacerts/
# 更新 perms 和 selinux
chown root:root /system/etc/security/cacerts/* 
chmod 644 /system/etc/security/cacerts/* 
chcon u:object_r:system_file:s0 /system/etc/security/cacerts/*

ok了
这下证书就配置完成了
后面不出意外的话就能抓到并解密https了
安卓透明代理,android,安全,ssl

查询UID

打开相应应用,使用ps -ef命令查询到应用uid
安卓透明代理,android,安全,ssl
通常是u0_a236这样的,那么后面的命令,uid相关的可以写成u0_a236,也可以写成10236这样。

iptables + redsocks2转发

https://mp.weixin.qq.com/s/P0ESUUXBmq2aQnrqDHsDaw

下面就要改iptables了,首先可以保存下配置文件(重启也可恢复
iptables-save > /data/local/tmp/iptables.rules
恢复iptables
iptables-restore /data/local/tmp/iptables.rules
下面的命令将uid为10428所请求的在0-65535端口上的tcp流量,转发到127.0.0.1:16666,但是排除了来自127.0.0.1的请求
iptables -t nat -A OUTPUT -p tcp ! -d 127.0.0.1 -m owner --uid-owner 10428 --dport 0:65535 -j DNAT --to-destination 127.0.0.1:16666
透明代理直接设置为Charles的透明代理地址,对于https将会出现invalid first line in request错误,只有http的请求数据会被正常解析

文章四

接下来下载并配置redsocks转发流量
可直接下载编译好的:https://fh0.github.io/assets/android-redsocks2.tgz

创建配置文件,名为redsocks.conf,内容如下:

base {
    log_debug = off;
    log_info = on;
    log = stderr;
    daemon = off;
    redirector = iptables;
}

redsocks {
    bind = "127.0.0.1:16666";
    relay = "192.168.1.14:8889";
    type = socks5;
    autoproxy = 0;
    timeout = 13;
}

其中bind就是透明代理地址,relay就是Charles的代理地址
注意这里配置文件最好在linux环境下生成,我在win生成的配置文件失败了

现在把redsocks.conf和redsocks2_arm push到/data/local/tmp
然后在root用户下运行redsocks2_arm64即可

adb push redsocks2_arm64 /data/local/tmp/redsocks
adb shell chmod +x /data/local/tmp/redsocks
adb shell
su
cd /data/local/tmp
./redsocks

如果是只想对特定端口抓包,那么应该使用-m multiport --dports 80,443这样来限定一个或者多个端口

iptables -t nat -A OUTPUT -p tcp ! -d 127.0.0.1 -m owner --uid-owner 10428 -m multiport --dports 80,443 -j DNAT --to-destination 127.0.0.1:16666

结束了?

按理来说应该可以了,但是我抓的这个app
竟然还做了证书检测!
搞了半天 我一直以为是我配置错了 下面绕过检测就行了
objection直接就有命令
objection -g 12313213 explore -s 'android sslpinning disable'
这样就成了
安卓透明代理,android,安全,ssl文章来源地址https://www.toymoban.com/news/detail-619483.html

到了这里,关于【安卓安全】透明代理定向抓APP包的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Android大作业:安卓开发图书管理系统APP

    Android Studio开发项目图书管理系统项目视频展示: 点击进入图书管理系统项目视频 现在是一个信息高度发达的时代,伴随着科技的进步,文化的汲取,人们对于图书信息的了解与掌握也达到了一定的高度。尤其是学生对于知识的渴求更是与日俱增。图书馆作为学生学习知识的

    2024年02月07日
    浏览(51)
  • 安卓APP证书Android签名证书.keystore文件制作生成

    将app发布到应用宝时,而上传安装包时提示如下图时, 但您或您的团队从未上传该应用,您可以通过认领功能认领应用。认领成功后该应用会自动转入您的账户下,同时保留应用全部数据,您可以在应用管理中进行管理。 1.点击认领应用 ,确认需认领应用的包名是否是你的

    2024年02月02日
    浏览(39)
  • 基于安卓android微信小程序的旅游app系统

    随着人民生活水平的提高,旅游业已经越来越大众化,而旅游业的核心是信息,不论是对旅游管理部门、对旅游企业,或是对旅游者而言,有效的获取旅游信息,都显得特别重要.自助定制游将使旅游相关信息管理工作规范化、信息化、程序化,提供旅游景点、旅游线路,旅游新闻等服务

    2024年02月06日
    浏览(38)
  • Android安卓开发大作业---模拟电影票小程序APP

    完整项目结构: 登录注册UI设计: 登录成功跳转个人信息界面: 签到功能: 电影主页: (上下图片可以左右滑动查看热映电影) 查看所有热映电影: (可以上下滑动) 选择一部电影查看详细信息: 点击购票: 选位置: (左上角会出现一个定位预览界面,高度还原小程序

    2024年02月04日
    浏览(116)
  • Android,ios,安卓app推送消息通知,java后台向手机推送app的通知教程

    个推是商用级的移动应用消息推送云服务供应商,客户端 SDK 支持 Android 和 iOS 两大平台,开发者集成 SDK 后,可以通过个推强大的 web 端及丰富的 API 开放接口,发送推送消息、统计分析推送效果。可有效提高 App 活跃度,增加用户留存率。 如果您还没有个推 账号,可在 个推

    2024年02月04日
    浏览(32)
  • Android安卓实战项目(2)---健身UI APP(源码在文末)

    1.大致浏览 2.功能介绍 (1)功能一 第一个界面点击后可以弹出图像,如图: (2)功能二 界面二的控件可以通过滑动下拉条来调解 MainActivity.java PopupActivity.java FitnessMove.java 链接:https://pan.baidu.com/s/1fE-Koh-VmnFOxNKF9CsQNA?pwd=jynl 提取码:jynl 有开发需求私信作者 15135757306

    2024年02月15日
    浏览(34)
  • 基于安卓Android的房屋租赁系统APP(源码+文档+部署+讲解)

    毕设帮助、技术解答、源码交流 联系方式见文末。 房屋租赁App设计的目的是为用户提供房源信息、租房订单、房源资讯等方面的平台。 与PC端应用程序相比,房屋租赁App的设计主要面向于房主,旨在为管理员和租客、房主提供一个房屋租赁App。租客可以通过APP及时查看房源

    2024年02月22日
    浏览(33)
  • 基于安卓Android的校园点餐系统APP(源码+文档+部署+讲解)

    毕设帮助、技术解答、源码交流 联系方式见文末。 使用点餐系统app相对传统点餐管理方式具备很多优点:首先可以大幅提高点餐信息检索,只需输入点餐相关信息就能在数秒内反馈想要的结果;其次可存储大量的点餐信息,同时点餐信息安全性有更高的保障;相比纸质文件

    2024年04月16日
    浏览(32)
  • 基于安卓系统(android)记事本APP管理系统设计与实现

    目录 摘要 I Abstract II 1 绪论 1.1 课题来源、目的和意义 1 1.2 国内外基本研究情况 1 2 需求分析 2.1 用户需求 4 2.2 功能需求 4 2.3 数据库选择 6 2.4 性能需求 6 3 概要设计 3.1 功能概要设计 7 3.2 数据库概要设计 13 4 详细设计 4.1 功能设计 15 4.2 数据库设计 30 5 系统功能实现 5.1 系统架

    2024年02月11日
    浏览(31)
  • Android实现App内自动升级,适配了安卓7、8及以上版本

            应用发布后,要实现灰度升级控制,如果只依赖各家应用市场是不够的,还需要自己在应用中控制升级逻辑。并且每家应用市场上新审核也是一件很麻烦的事情,尤其像至简网格这样的应用,甚至没在应用市场上架,更不可能依赖它们了。所以必须要在应用中实现自

    2024年02月10日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包