App如何防止抓包

简介: App安全非常重要,尤其是数据安全。但是我们知道通过Charles等工具可以对App的网络请求进行抓包,如果我们的数据没有进行加密,这样这些信息就会被清楚的提取出来,会被不法分子进行利用。保证数据安全有很多种方法,今天简单聊一聊如何通过简单几步防止抓包。

前言


App安全非常重要,尤其是数据安全。但是我们知道通过Charles等工具可以对App的网络请求进行抓包,如果我们的数据没有进行加密,这样这些信息就会被清楚的提取出来,会被不法分子进行利用。保证数据安全有很多种方法,今天简单聊一聊如何通过简单几步防止抓包。


正文


当我们进行网络请求的时候,一般通过URL的openConnection来建立连接,代码如下:


URLConnection conn = url.openConnection()
复制代码


其实openConnection这个函数还有一个版本,可以传入一个proxy对象,代码如下:


public URLConnection openConnection(Proxy proxy)
    throws java.io.IOException
复制代码


这样我们通过这个函数建立连接时传入一个Proxy.NO_PROXY,即可达到防止抓包的效果,如Charles等抓包工具就无法看到我们的链接信息了,代码如下


URLConnection conn = url.openConnection(Proxy.NO_PROXY)
复制代码


官方对于Proxy.NO_PROXY描述如下:


/**
 * A proxy setting that represents a {@code DIRECT} connection,
 * basically telling the protocol handler not to use any proxying.
 * Used, for instance, to create sockets bypassing any other global
 * proxy settings (like SOCKS):
 * <P>
 * {@code Socket s = new Socket(Proxy.NO_PROXY);}
 *
 */
public final static Proxy NO_PROXY = new Proxy();
// Creates the proxy that represents a {@code DIRECT} connection.
private Proxy() {
    type = Type.DIRECT;
    sa = null;
}
复制代码


我么可以看到NO_PROXY实际上就是type属性为DIRECT的一个Proxy对象,这个type有三种:

  • DIRECT
  • HTTP
  • SOCKS


官方描述如下:


public enum Type {
    /**
     * Represents a direct connection, or the absence of a proxy.
     */
    DIRECT,
    /**
     * Represents proxy for high level protocols such as HTTP or FTP.
     */
    HTTP,
    /**
     * Represents a SOCKS (V4 or V5) proxy.
     */
    SOCKS
};
复制代码


这样因为是直连,所以不走代理。所以Charles等工具就抓不到包了,这样一定程度上保证了数据的安全。

当然这种方式只是通过代理抓不到包,如果直接通过路由还是可以抓包的。


目录
相关文章
|
1月前
|
安全
第二轮学习笔记:三、APP抓包
第二轮学习笔记:三、APP抓包
26 0
|
数据采集 JavaScript 测试技术
史上最全测试开发工具推荐(含自动化、APP性能、稳定性、抓包神器)
在本篇文章中,将给大家推荐14款日常工作中经常用到的测试开发工具神器,涵盖了自动化测试、APP性能测试、稳定性测试、抓包工具等。
2995 0
史上最全测试开发工具推荐(含自动化、APP性能、稳定性、抓包神器)
|
Web App开发 小程序 iOS开发
Fiddler - 抓包手机App、微信小程序等网络请求
Fiddler - 抓包手机App、微信小程序等网络请求
987 0
Fiddler - 抓包手机App、微信小程序等网络请求
|
8天前
|
监控 小程序 前端开发
基础入门-抓包技术&HTTPS协议&WEB&封包监听&网卡模式&APP&小程序
基础入门-抓包技术&HTTPS协议&WEB&封包监听&网卡模式&APP&小程序
|
10月前
|
Android开发 Python
Crack App | 低版本绕过某视频 App (dy) 商品抓包限制(读者投稿 - 将玄学进行到底)
Crack App | 低版本绕过某视频 App (dy) 商品抓包限制(读者投稿 - 将玄学进行到底)
223 0
|
安全 Shell 网络安全
Charles - 夜神模拟器证书安装App抓包
Charles - 夜神模拟器证书安装App抓包 前言 一、软件安装 1.Openssl安装 1.1下载安装 1.2配置环境变量 1.3查看openssl版本,输入命令:openssl version 2.夜神模拟器安装 1.1 下载安装 1.2工具准备,MT管理器 3.Charles安装 二、Charles 安装证书,抓包 1.Charles破解 2.安装证书并导出 3.开启代理模式 4.证书格式化 5.通过MT管理器将证书配置到模拟器中 6.模拟器WiFi填入Charles代理的IP和端口 7.抓包示例
1103 0
Charles - 夜神模拟器证书安装App抓包
|
安全 Android开发 网络虚拟化
APP安全——抓包代理工具的设置
APP安全——抓包代理工具的设置
327 0
|
数据采集 Web App开发 JSON
换吗 APP 抓包及数据采集
换吗 APP 抓包及数据采集
|
安全
第二轮学习笔记:三、APP抓包
第二轮学习笔记:三、APP抓包
87 0
第二轮学习笔记:三、APP抓包
|
安全 Shell 网络安全
Fiddler - 夜神模拟器证书安装App抓包
文章目录 Fiddler- 夜神模拟器证书安装App抓包 前言 一、软件安装 1.Openssl安装 1.1下载安装 1.2配置环境变量 1.3查看openssl版本,输入命令:openssl version 2.夜神模拟器安装 1.1 下载安装 1.2工具准备,MT管理器 3.Fiddler安装 1.1下载安装 二、Fiddler 安装证书 1.安装证书并导出 2.格式化证书 3.通过MT管理器将证书配置到模拟器中 4.模拟器WiFi填入Fiddler代理的IP和端口 5.抓包示例
849 0
Fiddler - 夜神模拟器证书安装App抓包