抓包:Android不走代理的请求

article/2025/8/27 22:20:44

测试用例

测试应用有两个按钮,分别用 HttpURLConnectionOkhttp3 请求 https://www.baidu.com/。注意:两个请求都加入了 Proxy.NO_PROXY

//HttpURLConnection请求https://tcc.taobao.com/cc/json/mobile_tel_segment.htm?tel=13812371237
public void getHtmlByUrlconnection(String path) throws Exception {URL url = new URL(path);HttpURLConnection conn = (HttpURLConnection) url.openConnection(Proxy.NO_PROXY); // openConnection(Proxy.NO_PROXY)是关键conn.setConnectTimeout(5000);conn.setRequestMethod("GET");if (conn.getResponseCode() == 200) {InputStream inStream = conn.getInputStream();ByteArrayOutputStream outStream = new ByteArrayOutputStream();byte[] buffer = new byte[1024];int len = 0;while ((len = inStream.read(buffer)) != -1) {outStream.write(buffer, 0, len);}inStream.close();String res = new String(outStream.toByteArray(), "UTF-8");Log.d("GRAB", res);}
}//OkHTTP3请求https://tcc.taobao.com/cc/json/mobile_tel_segment.htm?tel=13923542345
public void getHtmlByOkhttp3(String path) {OkHttpClient okHttpClient = new OkHttpClient().newBuilder().proxy(Proxy.NO_PROXY).build(); // proxy(Proxy.NO_PROXY)是关键final Request request = new Request.Builder().url(path).get().build();Call call = okHttpClient.newCall(request);call.enqueue(new Callback() {@Overridepublic void onFailure(Call call, IOException e) {Log.d("GRAB", "onFailure: ");}@Overridepublic void onResponse(Call call, Response response) throws IOException {Log.d("GRAB", "onResponse: " + response.body().string());}});
}

可以看到,基于代理抓包的Fiddler不再有效,我们可以从网络更底层或者函数本身入手解决。
在这里插入图片描述
 

HttpCanary

Android平台抓包工具,功能非常强大,基于传输层,连TCP UDP也能抓。首先去其设置中安装证书(Android7.0+注意要系统证书)。
在这里插入图片描述
操作比较简单,不多赘述了,可以看到用此工具可以抓到不走代理的包。
在这里插入图片描述
 

Hook相关函数

使用Frida Hook掉设置代理的函数:

function hookProxy() {Java.perform(function () {let URL = Java.use("java.net.URL");URL.openConnection.overload("java.net.Proxy").implementation = function (arg1) {console.log("hook了HttpURLConnection")return this.openConnection();}let Builer = Java.use("okhttp3.OkHttpClient$Builder");let newBuilder = Builer.$new();Builer.proxy.overload("java.net.Proxy").implementation = function (arg1) {console.log("hook了okhttp3")return newBuilder;}});
}

运行:
在这里插入图片描述


http://chatgpt.dhexx.cn/article/dbjdUtLi.shtml

相关文章

python爬虫——selenium+chrome使用代理

先看下本文中的知识点: python selenium库安装chrome webdirver的下载安装seleniumchrome使用代理进阶学习 搭建开发环境: selenium库chrome webdirver谷歌浏览器 >7.9 PS:安装了的同学可以跳过了接着下一步,没安装的同学跟…

python 爬虫 客户端_python爬虫

爬虫简介 什么是爬虫? 爬虫:就是抓取网页数据的程序。 HTTP和HTTPS HTTP协议(HyperText Transfer Protocol,超文本传输协议):是一种发布和接收 HTML页面的方法。 HTTPS(Hypertext Transfer Protocol over Secure Socket Layer)简单…

爬虫从入门到精通(7) | 常见反爬-代理IP的使用

目录 一、 为什么要使用代理IP? 二、代理IP的原理 三、代理IP的作用 四、代理IP的分类 ​ 1.根据代理的协议区分 2.根据匿名程度区分 五、在requests模块中如何设置代理 一、 为什么要使用代理IP? 使用自己本地的IP 利用爬虫技术获取某个网站信息的时…

爬虫手册06 代理池和代理服务器搭建

免费代理池的搭建 参考资料:Python3 网络爬虫开发实战(第二版) 一. 学习目标 : 参考《第9章 代理的使用》9.2节搭建自己私有的代理IP池。 二. 实验环境: 阿里云或腾讯云的服务器,我是在打折和新用户优…

我裂开了,教给他如何搭建和使用代理服务器,他居然用来做这么不正经的事(爬虫,代理ip)

代码是正经代码,但是程序员正不正经就不知道了。 ​ 前言 在使用爬虫对某些网站进行爬取时,为了不让网站发现我们的ip,模拟其他用户ip地址去访问网站。也就相当于间接的去访问网站,流程如图: 我们使用到代理服务器&…

Python爬虫进阶 - win和linux下selenium使用代理

目录 Windows selenium配置 下载地址 Chrome Chromedriver 版本对应关系 实践测试 操作元素 浏览器操作 获取元素信息 鼠标操作 实战demo selenium添加代理 Linux selenium配置 检查服务器环境 下载安装第三方库(最简单版) 实践测试 代码…

Python自助爬虫代理ip模块

短小无比的前言: 代理对于爬虫来说可是很重要的一环,尤其在对于大量数据的时候,一不小心自己ip挂了,要么你换网,要么你等个几小时恢复 之后你上网查阅了种种办法,跨越种种艰难险阻,数以堆计的bu…

python爬虫之requests库使用代理方式

在看这篇文章之前,需要大家掌握的知识技能: python基础html基础http状态码 让我们看看这篇文章中有哪些知识点: get方法post方法header参数,模拟用户data参数,提交数据proxies参数,使用代理进阶学习 安装…

爬虫代理IP哪家好?

前言 随着大数据时代的到来,爬虫已经成了获取数据的必不可少的方式,做过爬虫的想必都深有体会,爬取的时候莫名其妙 IP 就被网站封掉了,毕竟各大网站也不想自己的数据被轻易地爬走。 对于爬虫来说,为了解决封禁 IP 的问题,一个有效的方式就是使用代理,使用代理之后可以让…

Python爬虫基础-使用代理

为什么需要代理? 我们爬取数据的时候,开始可以正常爬取,但是过了一段时间,网站可能就会提示“您的IP访问频率过高”,然后就无法正常访问网站。 这是因为网站采取了反爬策略,某个ip访问频率超过一个阈值后&…

Python爬取代理IP

在一些网页的内容爬取过程中,有时候在单位时间内如果我们发送的请求次数过多,网站就可能会封掉我们的IP地址,这时候为了保证我们的爬虫的正常运行,我们就要使用代理IP。 下面来介绍如何构建自己的IP池。 我们用快代理来获取代理i…

流量数据分析的方法学习

1、看数字和趋势(以电商网站为例) 2、维度分解 3、用户分群(又叫用户画像) 4、转化漏斗 5、行为轨迹 关注行为轨迹,是为了真实了解用户行为。通过大数据手段,还原用户的行为轨迹,有助于增长团队…

恶意流量分析(一)

在分析恶意样本时,样本可能包含网络行为,比如样本从C2服务器上请求下载后续病毒文件。所以对于在病毒分析的角度,对恶意流量的分析也是不可避免的。在这里通过恶意流量习题(malware-traffic-analysis)对恶意流量进行入…

APP流量分析

分析参数 发送流量、接收流量 流量统计方法 抓包&#xff1a;干扰因素多&#xff0c;其他APP、安卓自带TCP收发长度统计功能 #找到包名 adb shell pm list packsges -3 #找到UID adb shell ps | grep <包名> #找到目录 adb shell cat /proc/9045<uid>/status #…

如何进行网站流量分析(一)

如何进行网站流量分析&#xff08;一&#xff09; 流量分析整体来说是一个内涵非常丰富的体系&#xff0c;整体过程是一个金字塔结构&#xff1a; 金字塔的顶部是网站的目标&#xff1a;投资回报率&#xff08;ROI&#xff09;。 网站流量分析模型举例 1 网站流量质量分析&a…

流量与日志分析

文章目录 1.流量与日志分析1.1系统日志分析1.1.1window系统日志与分析方法1.1.2linux 系统日志与分析方法 1.2 web日志分析iis 日志分析方法apache日志分析**access_log****error_log** nginx日志分析tomcat 日志分析主流日志分析工具使用 1.流量与日志分析 日志&#xff0c;是…

攻防世界—流量分析1

题目&#xff1a;流量分析&#xff0c;你知道这堆流量做了什么事情吗&#xff0c;你能恢复出来flag吗&#xff1f; 拿到附件以后&#xff0c;解压出一个抓包文件&#xff0c;通过wireshark打开&#xff0c;发现大量HTTP报文。 随机查看一个HTTP访问的URL&#xff0c;经过URL解…

流量分析:如何分析数据的波动?

流量分析。 内容分为四部分&#xff1a; 背景&#xff1b; 渠道分析&#xff1b; 转化与价值分析&#xff1b; 流量波动逻辑性分析。 背景 建立产品指标体系和报表之后&#xff0c;分析师和业务方最重要的事情就是每天看各种数据&#xff0c;而这个看数据的过程就是流量分…

网站流量分析数据指标

如果如果把一个网站比作一家超市&#xff0c;运营网站就像打理超市的生意&#xff0c;那么目标就是让访客多停留、多购买、多办几张会员卡。为了达成这个目标&#xff0c;我们先要了解当前的情况&#xff0c;比如有多少人走进了超市、看了多少件产品、多少人办理了会员卡;类似地…

产品流量分析

年底要接的数据需求好多&#xff0c;博客好久没更新了。这次和大家分享一下最近对流量分析的一些理解。 流量是产品获得用户的第一步&#xff0c;没有流量就没有转化与营收。对于流量的分析在产品日常运营效果监控中有着非常重要意义。下面我们就流量的来源与流向分析中需要关…