您当前的位置:   首页 > 新闻中心
移动银行和支付应用程序的安全连接:HTTPS通道
发布时间:2020-03-27 18:05:25   阅读次数:

移动银行和支付应用程序的安全连接:HTTPS通道(图1)

在本文中,我们将介绍什么是HTTPS通道以及如何在移动银行和支付应用程序中使用它。我们还将研究其针对所描述攻击的某些漏洞和补救措施。


为什么我们需要HTTPS?

在HTTP协议中,所有传输中的信息都是清楚的。这意味着任何拦截设备或间谍协议(例如Wireshark)都可以完全重建TCP / IP数据。因此,在移动银行的情况下,使用HTTP是不可行的。


通常,对于此问题有两种可能的补救措施:

  1. 使用IPSEC

  2. 使用HTTPS


以下各节将重点介绍HTTPS。


什么是HTTPS隧道?

HTTPS是一种协议,允许对HTTP流量(移动应用程序和服务器之间的通信)进行端到端加密。HTTPS在内部创建一个安全的“隧道”,可以在其中交换敏感信息。不应将其与IPSEC混淆,后者会将IP协议内部的数据加密。


这种HTTPS安全通道的打开以密钥交换机制为前提,在该机制中,在通道的两侧都建立了对称密钥。通常,密钥交换机制基于Diffie-Hellman密钥交换(DH)。 


这是基于DH的主要密钥交换算法,可与HTTPS一起使用:

  • DH_RSA;

  • DH_DSS;

  • DHE_RSA;

  • DHE_DSS;

  • DH_anon;

  • ECDH_ECDSA;

  • ECDH_RSA;

  • ECDHE_ECDSA;

  • ECDHE_RSA;

  • ECDH_anon。


通过这些密钥交换中的一些,“匿名”交换容易受到中间人攻击。其中一些变体涉及使用必须用于服务器证书的DSA密钥或椭圆曲线密钥。


一旦检查了服务器证书,双方之间就确定了一套通用的算法,并且完成了密钥交换,就执行了握手。然后,发送和接收部分交替对数据进行加密和解密。


HTTPS协议的已知漏洞

HTTPS隧道可以使用以下协议之一:

  • SSL 1.0;

  • SSL 2.0;

  • SSL 3.0;

  • TLS 1.0;

  • TLS 1.1;

  • TLS 1.2;

  • TLS 1.3。


在所有这些协议中,只有TLS 1.2和TLS 1.3仍被认为是安全的。HTTPS协议中使用的几种密码套件也被认为是不安全的。


在下面的内容中,我们研究了一些安全性错误和攻击。无论客户端是在PC上还是在手机上,它们中的一些都处于活动状态。原因:服务器上有打开的侧面-因此,与服务器的联系方式无关。


如果使用不安全的协议通过TLS进行通信,并且可以进行这些攻击,则可以截获通信。因此,移动应用程序必须始终检查协议版本,并通过防止使用弱密码来确保服务器端不存在此类漏洞。 


伤心欲绝

该心血漏洞安全漏洞影响用于HTTPS,OpenSSL的最流行的软件库。OpenSSL已被Apache或Nginx等服务器广泛使用。Heartbleed产生了一个弱点,通过该弱点可以破坏用于HTTPS协议的秘密密钥。这导致攻击者可以截获HTTPS保护的通信。


Heartbleed错误的原理在于客户端发送到服务器的心跳数据包,这是一种仅用于“ ping”服务器以检查常见活动的机制。


该错误非常简单:服务器不会检查收到的内容的长度。这意味着服务器可以将任意数量的内存复制到令人讨厌的缓冲区中。因此,接收器能够从远程服务器提取大量的专用内存。该额外数据可以是任何东西,但也可以包含秘密数据,包括服务器使用的私钥。


当然,OpenSSL已修复并升级到新版本。但是,尚不知道有多少服务器仍在使用错误的OpenSSL版本。在移动银行安全方面,这可能是一个现实问题。


Sweet32

Sweet32是对64位密码的生日攻击。大致来说,Sweet32从使用64位分组密码(例如AES,Triple-DES或Blowfish)的HTTPS连接捕获大约1 TB的数据。然后可以对使用的分组密码执行生日攻击。 


生日悖论是概率论中的一个众所周知的问题。以几个随机的人为一组,两个人有相同生日的概率很重要。


如果我们选择n个人(n <365),则他们两个有相同生日的概率为:

甜32

对于10个人,概率已经是p〜88.3%。


无需赘述,这是生日袭击的主要思想。“较小的” 64位密码块发生的可能性较高。这些用于创建冲突,从而可能篡改HTTPS协议中的身份。 


BEAST

BEAST是Browser Exploit Against SSL/TLS的缩写。


为了使BEAST成为可能,必须满足以下条件:

  • JavaScript在相同的原始策略中注入内容;

  • 网络嗅探;

  • 使用块密码的SSL易受攻击的版本(像RC4这样的流密码不易受到攻击),其中包括TLS 1.0。


由此,可以通过解密SSL会话来访问安全cookie,甚至包括受HTTPOnly标志保护的cookie。 


POODLE

POODLE攻击(在降级的传统加密上填充Oracle)是一种利用某些浏览器处理加密方式的攻击。此漏洞主要针对SSL 3.0。


HTTPS到HTTP重定向攻击

在某些网站中,HTTP版本与HTTPS版本共存,而没有HTTPS重定向。因此,攻击者可以创建代理以将对HTTPS的请求转换为对非HTTPS的请求,而客户端不必注意到这一点。由于然后将流量重定向为HTTP,因此可以截获机密数据。


HTTPS中间人攻击

在这里,我们演示了如何在移动银行业务环境中执行HTTPS中间人攻击。考虑以下使用MTIM代理或SSLsplit来构建中间人HTTPS代理的示例。一旦用户接受了代理证书作为根权限(并且有各种各样的技术来诱使用户这样做),则可以通过这些中间人代理之一来剖析HTTPS流量。 


一种情况可能是:

  •  移动用户连接到Wi-Fi;

  • Wi-Fi热点要求用户信任根证书。

  • 对HTTPS流量进行解密,清除(密码,密钥等),然后重新加密,然后使用来自假装为客户端的代理的即时证书将其发送到银行服务器。


仅当安全性完全基于HTTPS时,此攻击才起作用。如果客户端和服务器之间的数据另外被其他任何密码加密,则将无法正常工作。 


针对HTTPS攻击的一些补救措施

检查证书指纹

证书指纹只是服务器提供的DER编码证书的哈希值。通过采取额外的步骤来根据此类指纹的可信任基础检查这些值,客户端将不会被中间人代理欺骗,后者会向合法服务器颁发即时证书。 


使用完美前向保密(PFS)

如果将来会破坏其(长期)密钥,则PFS可以保护实际会话免遭解密。这对于对抗中间人攻击(例如SSL代理攻击)非常有效。


检查协议,库和密码套件
  • 检查HTTPS协议是否安全(TLS 1.2和1.3是安全协议);

  • 检查是否使用了非越野车库;

  • 检查是否使用了非弱密码套件。


综上所述 

不幸的是,使用HTTPS中间人攻击非常普遍。当使用恶意Wi-Fi网络时,尤其是在移动银行和支付应用程序中。专用于保护数据的HTTPS隧道本身必须通过使用一定数量的预防措施来进行保护,以防止此类攻击。


除此之外

HTTPS除了要对以上方面进行保护之外,对于各级根证书的生命周期管理,以及用户证书、服务器证书等进行有效的、安全的生命周期管理,也是安全的重心。硬件安全模块HSM)是目前全世界范围内公认的最有效的对密钥进行生命周期管理的设备。



揽阁信息可提供的部分安全产品和解决方案信息

联系揽阁信息,您可以获取到更多满足全球合规性要求的信息安全产品资料,以及相关的整体解决方案的相关资料。如:


您还可以得到揽阁信息所提供的优质服务。

揽阁信息 · 值得您信赖的信息安全顾问!


相关阅读

购买咨询电话
021-54410609