生成私钥

生成一个ca.key私钥签名

然后用私钥生成一个伪造证书服务器的根证书

生成一个伪造证书服务器的根证书ca.crt

在攻击主机启动路由转发功能

或者echo 1 > /proc/sys/net/ipv4/ip_forward

因为sslsplit工作在特定的端口上,设置端口转发

先查看本地需要用到的端口(80、443)是否被其他的程序占用

先看80端口

将占用80端口的程序结束掉

查看443端口

443没有被占用

80端口重定向到8080端口

443端口重定向到8443端口

将邮件提交代理(MSA)、SMTPS、IMAPS、POP3S重定向到8443端口

进行arp欺骗

这样目标主机就认为网关的mac地址是攻击者的mac地址了,本来要发给路由器的流量都发给了攻击者

启动sslsplit

sslsplit的作用是调用伪造证书服务器根证书(ca.crt)针对不同网站签发不同的证书,比如:针对百度伪造类似百度的证书,针对淘宝伪造类似淘宝的证书

建立一个数据存放目录

开启

访问淘宝,就会出现以下报错

如果继续浏览此网站时

在/test/logdir的日志文件里面就有获取到的明文信息,包括cookie、用户名、密码等

这样的报错必定会引起目标的警觉,如果要让目标主机访问时不报错,需要在目标主机上安装伪造证书服务器的根证书,让其信任

将刚刚生成的ca.crt拷贝到目标主机上

安装

导入成功之后再去访问淘宝就不会有报错出现

SSL、TLS中间人攻击的更多相关文章

  1. SSL/TLS中间人攻击

    准备:kali.xp kali ip:192.168.14.157 目标ip:192.168.14.158 目标网关:192.168.14.2 使用工具:ettercap.sslstrip.arpsp ...

  2. 小白日记53:kali渗透测试之Web渗透-SSL、TLS中间人攻击(SSLsplit,Mitmproxy,SSLstrip),拒绝服务攻击

    SSL.TLS中间人攻击 SSL中间人攻击 攻击者位于客户端和服务器通信链路中 利用方法: ARP地址欺骗 修改DHCP服务器 (存在就近原则) 手动修改网关 修改DNS设置 修改HOSTS文件[高于 ...

  3. 关于ARP欺骗与MITM(中间人攻击)的一些笔记( 二 )

    一直没有折腾啥东西,直到最近kali Linux发布,才回想起应该更新博客了….. 再次说明,这些技术并不是本人原创的,而是以前记录在Evernote的旧内容(排版不是很好,请谅解),本文是继关于AR ...

  4. Https协议简析及中间人攻击原理

    1.基础知识 1.1 对称加密算法 对称加密算法的特点是加密密钥和解密密钥是同一把密钥K,且加解密速度快,典型的对称加密算法有DES.AES等                              ...

  5. SSL/TLS通信

    本文同时发表在https://github.com/zhangyachen/zhangyachen.github.io/issues/31 复习基本概念 对称密码:加密和解密使用同一密匙. 公钥密码: ...

  6. TLS是如何保障数据传输安全(中间人攻击)

    前言 前段时间和同事讨论HTTPS的工作原理,当时对这块知识原理掌握还是靠以前看了一些博客介绍,深度不够,正好我这位同事是密码学专业毕业的,结合他密码学角度对tls加解密这阐述,让我对这块原理有了更进 ...

  7. 方案:抵御 不明SSL证书导致的 中间人攻击

    基于SSL数字证书的中间人攻击已经不是一个新技术了,但是我发现很多人并不清楚这种威胁,甚至感觉无所谓,我相信他们是由于短暂的无知蒙蔽了双眼,希望这篇文章可以让更多的人知道这种攻击方式,并清除这种网络威 ...

  8. [译]SSL/TLS真的被BEAST攻击攻破了吗?真实情况是怎样的?我应该做什么?

    原文链接:https://luxsci.com/blog/is-ssltls-really-broken-by-the-beast-attack-what-is-the-real-story-what ...

  9. SSL/TLS 受诫礼(BAR-MITZVAH)攻击漏洞(CVE-2015-2808)

    最近发现SSL/TLS漏洞已经修改过,但是绿盟扫描器还可以扫描出来,网上看了很多文章,但是能用的比较少,今天刚好有空,就自己写一下. 方法一: 控制面板--->系统和安全--->管理工具- ...

随机推荐

  1. Ruby学习笔记3:Rendering(渲染)和 Redirect(重定向)

    1. Rendering Rendering 是特别要告诉Controller 中的methods,要哪个view file来显示给用户.We can show Views as we wish! E ...

  2. pc

  3. CRC16-CCITT C语言代码

    代码如下,使用空间换时间的方法 #define CRC16_CCITT_SEED 0xFFFF // 该位称为预置值,使用人工算法(长除法)时 需要将除数多项式先与该与职位 异或 ,才能得到最后的除数 ...

  4. SonarQube与Jenkins结合提高代码质量

    首先,为什么需要SonarQube? 1.WriteClean Code 1)全局健康报告  2)关注新增的问题  3)强制QualityGate 4)Issue详情及建议- 详情参考:https:/ ...

  5. 分布式 session

    分布式session的实现方式: 一.Session Replication 方式管理 (即session复制) 简介:将一台机器上的Session数据广播复制到集群中其余机器上 使用场景:机器较少, ...

  6. day40-socket编程

    一.socket介绍 看socket之前,先来回顾一下五层通讯流程: 但实际上从传输层开始以及以下,都是操作系统帮咱们完成的 Socket又称为套接字,它是应用层与TCP/IP协议族通信的中间软件抽象 ...

  7. Druid参考配置

    pom中的maven dependency <dependency>            <groupId>com.alibaba</groupId>       ...

  8. python catch socket timeout

    python catch socket timeout import socket try: # do something. except socket.timeout as e: # socket ...

  9. javascript:FileReader对象(读取文件)

    FileReader对象 1.检测浏览器对FileReader的支持 1 if(window.FileReader) { 2 var fr = new FileReader(); 3 // add y ...

  10. mysql InnoDB引擎支持hash索引吗

    https://blog.csdn.net/doctor_who2004/article/details/77414742