【kali-权限提升】(4.2.6)社会工程学工具包(上):中间人攻击原理

本文主要是介绍【kali-权限提升】(4.2.6)社会工程学工具包(上):中间人攻击原理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

一、中间人攻击

1.1、概述:

1.2、利用原理:

二、示例

2.1、ARP欺骗原理

ARP欺骗原理:

2.2、利用过程:

第一步:攻陷一台计算机

第二步:欺骗主机

结果:


一、中间人攻击

1.1、概述:

中间人攻击,简称“MITM攻击"是一种间接的入侵攻击。
通过各种技术手段, 将入侵者控制的一台计算机虚拟放在网络连接中的两台通信计算机之间, 这台计算机就称为“中间人”。使用Ettercap工具实现中间人攻击。


这类攻击者不只是被动监视其他用户的流量,而且会动态更改某些流量,这类攻击往往更加复杂,但确实可以在各种常见的情形(如无线公共热点和共享的办公网络)中实施


许多应用程序使用HTTP传输非敏感数据, 如产品说明和帮助页面。如果这些内容使用绝对URL实现任何脚本包含,攻击者就可以利用主动中间人攻击攻破同一域上受HTTPS保护的请求


许多知名Web应用程序都采用绝对URL包含通过HTTP传送的脚本,在这种情况下, 活跃的中间人攻击者当然可以通过修改任何HTTP响应来执行任意脚本代码。但由于同源策略通常会将通过HTTP和HTTPS加载的内容视为属于不同来源,攻击者并不能利用这种攻击截获使用HTTPS访问的内容


攻击者可以通过修改任何HTTP响应来构建重定向, 或在其他响应中重写链接目标, 从而诱使用户通过HTTPS加载同一页面,当用户通过HTTPS加载帮助页面时,其浏览器将使用HTTP执行指定的脚本包含,攻击者可以在包含脚本的响应中返回任意脚本代码,该脚本将在HTTPS响应中执行允许攻击者截获通过HTTPS访问的所有内容


即使所攻击的应用程序并不使用普通HTTP传送任何内容,但攻击者仍然可以通过向任何其
他域提出HTTP请求来返回重定向,从而诱使用户使用普通HTTP向目标域提出请求,虽然应用程序本身可能不会监听端口80上的HTTP请求,但攻击者可以拦截这些诱发的请求,并在这些请求的响应中返回任意内容。在这种情况下,攻击者可以采用各种技巧来攻击应用程序域的HTTPS来源

1.2、利用原理:

在传输数据的过程中存在有漏洞,通过使用各种技术手段对目标主机进行攻击


当主机之间进行通信时, 通过封装数据包进而转发到目标主机上。转发的数据包中包括源IP地址、目标IP地址及MAC地址。但是当主机在自己的缓存表中找不到目标主机的地址时, 它会发送ARP广播, 在此过程中就可能被其他攻击者冒充目标主机


1、攻击者可以使用通过普通HTTP传送的响应来设置或更新HTTPS请求使用的cookie值,即使cookie最初通过HTTPS设置并被标记为安全,攻击者仍然可以这样做,如果有任何cookie值由在HTTPS来源中运行的脚本代码以危险的方式进行处理, 攻击者就可以利用cookie注入攻击、通过该cookie来实施XSS攻击

2、一些浏览器扩展并不能正确隔离通过HTTP和HTTPS加载的内容,并将这些内容视为属于同一来源。这时攻击者的脚本(由诱发的HTTP请求的响应返回)就可以利用此类扩展来读取或写入用户使用HTTPS访问的页面的内容



二、示例

2.1、ARP欺骗原理

实施中间人攻击时, 攻击者常考虑的方式是ARP欺骗或DNS欺骗等。

ARP欺骗原理:

ARP欺骗并不是使网络无法正常通信, 面是通过冒充网关或其他主机使得到达网关或主机的数据流通过攻击主机进行转发。通过转发流量可以对流量进行控制和查看,从而得到信息。

ARP欺骗主机的流程

当主机A和主机B之间通信时, 如果主机A的ARP缓存表中没有找到主机B的MAC地址时, 主机A将会向整个局域网中所有计算机发送ARP广播,广播后整个局域网中的计算机都收到了该数据。这时候, 主机C响应主机A,说我是主机B,我的MAC地扯是XX-XX-XX-XX-XX-XX,主机A收到地蚧后就会重新更新自己的缓冲表。当主机A再次与主机B通信时, 该数据将被转发到攻击主机(主机C)上, 则该数据流会经过主机C转发到主机B

2.2、利用过程:

第一步:攻陷一台计算机

通过ARP注入攻击的方法以实现ARP欺骗, 通过ARP欺骗的方法控制主机A与其他主机间的流报及机密信息。


第二步:欺骗主机

攻击成功后, 主机B就可以在这个网络中使用中间人的身份,转发或查看主机A和其他主机间的数据流


结果:

简而言之:A与C之间的通信都会通过主机B传输

(1)在这个局域网中当主机A向主机C发送请求, 该数据将首先被发送到主机B上

(2)数据流经主机B转发到主机C

(3)主机C收到数据以为是主机A直接发送的。此时主机C将响应主机A的请求,该数据流会被主机B转发到主机A上

(4)主机A收到响应后, 将登录主机C,主机A登录时的用户名及密码, 将会被主机B收到

这篇关于【kali-权限提升】(4.2.6)社会工程学工具包(上):中间人攻击原理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/773377

相关文章

Android 悬浮窗开发示例((动态权限请求 | 前台服务和通知 | 悬浮窗创建 )

《Android悬浮窗开发示例((动态权限请求|前台服务和通知|悬浮窗创建)》本文介绍了Android悬浮窗的实现效果,包括动态权限请求、前台服务和通知的使用,悬浮窗权限需要动态申请并引导... 目录一、悬浮窗 动态权限请求1、动态请求权限2、悬浮窗权限说明3、检查动态权限4、申请动态权限5、权限设置完毕后

浅析如何使用Swagger生成带权限控制的API文档

《浅析如何使用Swagger生成带权限控制的API文档》当涉及到权限控制时,如何生成既安全又详细的API文档就成了一个关键问题,所以这篇文章小编就来和大家好好聊聊如何用Swagger来生成带有... 目录准备工作配置 Swagger权限控制给 API 加上权限注解查看文档注意事项在咱们的开发工作里,API

MySQL中的MVCC底层原理解读

《MySQL中的MVCC底层原理解读》本文详细介绍了MySQL中的多版本并发控制(MVCC)机制,包括版本链、ReadView以及在不同事务隔离级别下MVCC的工作原理,通过一个具体的示例演示了在可重... 目录简介ReadView版本链演示过程总结简介MVCC(Multi-Version Concurr

使用DeepSeek API 结合VSCode提升开发效率

《使用DeepSeekAPI结合VSCode提升开发效率》:本文主要介绍DeepSeekAPI与VisualStudioCode(VSCode)结合使用,以提升软件开发效率,具有一定的参考价值... 目录引言准备工作安装必要的 VSCode 扩展配置 DeepSeek API1. 创建 API 请求文件2.

Java访问修饰符public、private、protected及默认访问权限详解

《Java访问修饰符public、private、protected及默认访问权限详解》:本文主要介绍Java访问修饰符public、private、protected及默认访问权限的相关资料,每... 目录前言1. public 访问修饰符特点:示例:适用场景:2. private 访问修饰符特点:示例:

C#使用yield关键字实现提升迭代性能与效率

《C#使用yield关键字实现提升迭代性能与效率》yield关键字在C#中简化了数据迭代的方式,实现了按需生成数据,自动维护迭代状态,本文主要来聊聊如何使用yield关键字实现提升迭代性能与效率,感兴... 目录前言传统迭代和yield迭代方式对比yield延迟加载按需获取数据yield break显式示迭

Redis主从/哨兵机制原理分析

《Redis主从/哨兵机制原理分析》本文介绍了Redis的主从复制和哨兵机制,主从复制实现了数据的热备份和负载均衡,而哨兵机制可以监控Redis集群,实现自动故障转移,哨兵机制通过监控、下线、选举和故... 目录一、主从复制1.1 什么是主从复制1.2 主从复制的作用1.3 主从复制原理1.3.1 全量复制

Redis主从复制的原理分析

《Redis主从复制的原理分析》Redis主从复制通过将数据镜像到多个从节点,实现高可用性和扩展性,主从复制包括初次全量同步和增量同步两个阶段,为优化复制性能,可以采用AOF持久化、调整复制超时时间、... 目录Redis主从复制的原理主从复制概述配置主从复制数据同步过程复制一致性与延迟故障转移机制监控与维

SpringCloud配置动态更新原理解析

《SpringCloud配置动态更新原理解析》在微服务架构的浩瀚星海中,服务配置的动态更新如同魔法一般,能够让应用在不重启的情况下,实时响应配置的变更,SpringCloud作为微服务架构中的佼佼者,... 目录一、SpringBoot、Cloud配置的读取二、SpringCloud配置动态刷新三、更新@R

Linux中chmod权限设置方式

《Linux中chmod权限设置方式》本文介绍了Linux系统中文件和目录权限的设置方法,包括chmod、chown和chgrp命令的使用,以及权限模式和符号模式的详细说明,通过这些命令,用户可以灵活... 目录设置基本权限命令:chmod1、权限介绍2、chmod命令常见用法和示例3、文件权限详解4、ch