【THM】Protocols and Servers 2(协议和服务器 2
介绍
协议和服务器房间涵盖了许多协议:
- 远程登录
- HTTP协议
- 文件传输协议
- 邮件传输协议
- POP3
- IMAP
实现这些协议的服务器会受到不同类型的攻击。仅举几例,请考虑:
- 嗅探攻击(网络数据包捕获)
- 中间人 ( MITM ) 攻击
- 密码攻击(身份验证攻击)
- 漏洞
从安全的角度来看,我们始终需要思考我们的目标是保护什么;考虑安全三元组:机密性、完整性和可用性 ( CIA )。保密是指使通信内容可供预期各方访问。完整性是指确保发送的任何数据在到达目的地时都是准确、一致和完整的。最后,可用性是指我们需要时能够访问服务。不同的政党对这三者的侧重点有所不同。例如,保密性是情报机构的最高优先级。网上银行将最注重交易的完整性。对于任何通过投放广告赚钱的平台来说,可用性是最重要的。
知道我们正在保护机密性、完整性和可用性 ( CIA ),攻击的目的是造成披露、更改和破坏 ( DAD )。下图反映了这一点。
这些攻击直接影响系统的安全。例如,网络数据包捕获违反机密性并导致信息泄露。成功的密码攻击也可能导致信息泄露。另一方面,中间人 ( MITM ) 攻击会破坏系统的完整性,因为它可以更改通信的数据。我们将在这个房间重点关注这三种攻击,因为这些攻击是协议设计和服务器实现不可或缺的一部分。
漏洞的范围更广,被利用的漏洞对目标系统的影响也不同。例如,利用拒绝服务(DoS)漏洞可能会影响系统的可用性,而利用远程代码执行(RCE)漏洞可能会导致更严重的损害。值得注意的是,漏洞本身就会产生风险;仅当漏洞被利用时才会造成损害。我们不会在这个房间讨论漏洞,因为他们有自己的模块,漏洞研究。
该会议室将重点讨论如何升级或替换协议以防止泄露和更改,即保护传输数据的机密性和完整性。我们将推荐涵盖其他主题的其他模块。
此外,我们引入Hydra来查找弱密码。
嗅探攻击
嗅探攻击是指利用网络抓包工具来收集目标的信息。当协议以明文方式通信时,第三方可以捕获交换的数据进行分析。如果数据在传输过程中未加密,则简单的网络数据包捕获可能会泄露信息,例如私人消息的内容和登录凭据。
只要用户具有适当的权限( Linux上的 root 权限和 MS Windows 上的管理员权限),就可以使用以太网 (802.3) 网卡进行嗅探攻击。有许多程序可用于捕获网络数据包。我们考虑以下几点:
- Tcpdump是一个免费的开源命令行界面 ( CLI ) 程序,已被移植到许多操作系统上。
- Wireshark是一款免费的开源图形用户界面 (GUI) 程序,适用于多种操作系统,包括Linux、macOS 和 MS Windows。
- Tshark 是Wireshark 的CLI替代品。
有几种专门的工具可以捕获密码甚至完整的消息;然而,这仍然可以通过 Tcpdump 和 Wireshark 来实现,但需要付出一些额外的努力。
考虑一个用户使用POP3检查他的电子邮件。首先,我们将使用 Tcpdump 尝试捕获用户名和密码。在下面的终端输出中,我们使用了命令sudo tcpdump port 110 -A
。在解释此命令之前,我们应该提到此攻击需要访问网络流量,例如通过窃听器或具有端口镜像的交换机。或者,如果我们发起成功的中间人 ( MITM ) 攻击,我们就可以访问交换的流量。
我们需要sudo
因为数据包捕获需要 root 权限。我们希望将捕获和显示的数据包数量限制为与POP3服务器交换的数据包数量。我们知道POP3使用端口 110,因此我们使用port 110
.最后,我们希望以 ASCII 格式显示捕获的数据包的内容,因此我们添加了-A
.
pentester@TryHackMe$ sudo tcpdump port 110 -A
[...]
09:05:15.132861 IP 10.20.30.1.58386 > 10.20.30.148.pop3: Flags [P.], seq 1:13, ack 19, win 502, options [nop,nop,TS val 423360697 ecr 3958275530], length 12
E..@.V@.@.g.
...
......n......"............
.;....}.USER frank
09:05:15.133465 IP 10.20.30.148.pop3 > 10.20.30.1.58386: Flags [.], ack 13, win 510, options [nop,nop,TS val 3958280553 ecr 423360697], length 0
E..4..@.@.O~
...
....n....".........?P.....
...i.;..
09:05:15.133610 IP 10.20.30.148.pop3 > 10.20.30.1.58386: Flags [P.], seq 19:43, ack 13, win 510, options [nop,nop,TS val 3958280553 ecr 423360697], length 24
E..L..@.@.Oe
...
....n....".........<-.....
...i.;..+OK Password required.
09:05:15.133660 IP 10.20.30.1.58386 > 10.20.30.148.pop3: Flags [.], ack 43, win 502, options [nop,nop,TS val 423360698 ecr 3958280553], length 0
E..4.W@.@.g.
...
......n......".....??.....
.;.....i
09:05:22.852695 IP 10.20.30.1.58386 > 10.20.30.148.pop3: Flags [P.], seq 13:28, ack 43, win 502, options [nop,nop,TS val 423368417 ecr 3958280553], length 15
E..C.X@.@.g.
...
......n......".....6......
.<.....iPASS D2xc9CgD
[...]
在上面的终端输出中,我们删除了不重要的数据包,以帮助您更好地关注重要的数据包。特别是,用户名和密码均在各自的数据包中发送。第一个数据包明确显示“USER Frank”,而最后一个数据包则显示密码“PASS D2xc9CgD”。
我们也可以使用 Wireshark 来达到相同的结果。在下面的 Wireshark 窗口中,我们可以看到我们已pop
在筛选字段中输入。现在我们已经过滤了我们感兴趣的流量,我们可以看到用户名和密码被捕获。
相关文章:

【THM】Protocols and Servers 2(协议和服务器 2
介绍 协议和服务器房间涵盖了许多协议: 远程登录HTTP协议文件传输协议邮件传输协议POP3IMAP实现这些协议的服务器会受到不同类型的攻击。仅举几例,请考虑: 嗅探攻击(网络数据包捕获)中间人 ( MITM ) 攻击密码攻击(身份验证攻击)漏洞从安全的角度来看,我们始终需要思考…...

阿里云服务器可以干什么?阿里云服务器主要用途是干嘛的?
阿里云服务器可以干嘛?能干啥你还不知道么!简单来讲可用来搭建网站、个人博客、企业官网、论坛、电子商务、AI、LLM大语言模型、测试环境等,阿里云百科aliyunbaike.com整理阿里云服务器的用途: 阿里云服务器活动 aliyunbaike.com…...
LeetCode hoot100-22
160. 相交链表给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回 null 。这道题几分钟就写出来了。应该是几年前做过,这种思想还能一直记得。所以算法题是不会白做的。 我的…...

蓝桥杯 经验技巧篇
1. 注意事项 👨🏫 官方通知 👨🏫 资料文档 时间:4月13日 9:00~13:00 (时长 4小时)物品 准考证(赛前一周开放下载,自行打印)学生证身份证笔、水、外套&a…...

QMC5883芯片I2C驱动开发指南
这个芯片纯国产挺好用的,电路很好设计,我这垃圾焊功,纯手焊,,居然能用。 第一部分 硬件连接 画的很简陋,看看就可以了。 第二部分 软件驱动 I2C的具体时序实现需要自己搞定!! 2…...

缓存击穿以及解决方案
1.定义 缓存击穿问题也叫热点Key问题,就是一个被高并发访问并且缓存重建业务较复杂的key突然失效了,无数的请求访问会在瞬间给数据库带来巨大的冲击。 问题描述:假设线程1在查询缓存之后,本来应该去查询数据库,然后把…...

【电路笔记】-逻辑非门
逻辑非门 文章目录 逻辑非门1、概述2、晶体管逻辑非门3、六角施密特反相器逻辑非门是所有逻辑门中最基本的,通常称为反相缓冲器或简称为反相器。 1、概述 反相非门是单输入器件,其输出电平通常为逻辑电平“1”,当其单个输入为逻辑电平“1”时,输出电平变为“低”至逻辑电平…...

vue-element-admin vue3版本搭建
要搭建一个基于Vue 3版本的vue-element-admin项目,你可以按照以下步骤进行: 首先,确保你的开发环境已经安装了Node.js和npm。Node.js是一个JavaScript运行环境,而npm则是Node.js的包管理器,它们将帮助你安装和管理Vue…...

大话设计模式——11.桥接模式(Bridge Pattern)
简介 将抽象部分与它的实现部分分离,使它们可以独立变化。 UML图: 应用场景: 系统需要在构建的抽象化角色和具体化角色之间增加更多的灵活性不想使用继承导致系统类的个数急剧增加某个类存在多个变化维度使用继承方式容易出现类的膨胀 示例…...
新概念英语1:Lesson 25学习笔记
新概念英语1:Lesson 25学习笔记 There is a refrigerator in the kitchen There be句型是英语中一个常用的表达方法,它表示某个地方或某个情况存在某种事物或人。 there是引导词,本身无意义 句型基本上就是Therebe动词主语地点/时间 be动…...

Java 8 内存管理原理解析及内存故障排查实践
介绍Java8虚拟机的内存区域划分、内存垃圾回收工作原理解析、虚拟机内存分配配置,介绍各垃圾收集器优缺点及场景应用、实践内存故障场景排查诊断,方便读者面临内存故障时有一个明确的思路和方向。 一、背景 Java是一种流行的编程语言,可以在不…...

RH850从0搭建Autosar开发环境【3X】- Davinci Configurator之RTE模块配置详解(上)
RTE模块配置详解 - 上 一、RTE模块配置实操1.1 打开RTE模块1.2 RTE模块错误消除在这里插入图片描述 这里我们利用工具的自动处理功能。二、Configurator工具Validation总结本节我们就手把手详解RTE配置实现,其实也没有什么过多的操作。。。这个模块更多是工具自动处理的。 一、…...

小米汽车su7全色系展示源码
源码简介 小米汽车全色系展示源码,小米汽车su7全色系展示源码 安装教程 纯HTML,直接将压缩包上传网站目录解压即可 首页截图 源码下载 小米汽车su7全色系展示源码-小8源码屋源码简介 小米汽车全色系展示源码,小米汽车su7全色系展示源码 …...

钉钉事件订阅前缀树算法gin框架解析
当钉钉监测到发生一些事件,如下图 此处举例三个事件user_add_org、user_change_org、user_leave_org,传统的做法是,我们写三个if条件,类似下图 这样字符串匹配效率比较低,于是联想到gin框架中的路由匹配算法࿰…...

React18从入门到实战
文章目录 一、React环境的搭建二、项目文件的介绍(1)package.json,他是项目存放依赖包的地方,里面包括了一些项目核心包及下载的其他插件包(2)src文件夹是项目源码目录,平时开发页面就在其中&am…...

【漏洞复现】某科技X2Modbus网关多个漏洞
漏洞描述 最近某科技X2Modbus网关出了一个GetUser的信息泄露的漏洞,但是经过审计发现该系统80%以上的接口均是未授权的,没有添加相应的鉴权机制,以下列举多个未授权接口以及获取相关敏感信息的接口。 免责声明 技术文章仅供参考,任何个人和组织使用网络应当遵守宪法法律…...

专业140+总410+国防科技大学831信号与系统考研经验国防科大电子信息与通信,真题,大纲,参考书。
应群里同学要求,总结一下我自己的复习经历,希望对大家有所借鉴,报考国防科技大学,专业课831信号与系统140,总分410,大家以前一直认为国防科技大学时军校,从而很少关注这所军中清华,现…...

【Linux】进程管理(2):进程控制
一、进程创建:fork函数 我们在命令行中输入man fork 即可得到fork函数的函数接口的函数的使用方法。 我们可以看到,fork函数位于man手册的第2部分,由于第2部分通常是用于描述系统调用和库函数,所以我们可以了解到fork函数实际是一…...

组合数(费马小定理, 快速幂)
给定 n 组询问,每组询问给定两个整数 a,b,请你输出 Cbamod(1097)的值。 输入格式 第一行包含整数 n。 接下来 n 行,每行包含一组 a 和 b。 输出格式 共 n 行,每行输出一个询问的解。 数据范围 1≤n≤10000, 1≤…...

VMware Esxi安装群辉系统
群晖的网络存储产品具有强大的操作系统,提供了各种应用程序和服务,包括文件共享、数据备份、多媒体管理、远程访问等。用户可以通过简单直观的界面来管理他们的存储设备,并且可以根据自己的需求扩展设备的功能。总的来说,群晖的产…...

IoT/HCIP实验-3/LiteOS操作系统内核实验(任务、内存、信号量、CMSIS..)
文章目录 概述HelloWorld 工程C/C配置编译器主配置Makefile脚本烧录器主配置运行结果程序调用栈 任务管理实验实验结果osal 系统适配层osal_task_create 其他实验实验源码内存管理实验互斥锁实验信号量实验 CMISIS接口实验还是得JlINKCMSIS 简介LiteOS->CMSIS任务间消息交互…...
Angular微前端架构:Module Federation + ngx-build-plus (Webpack)
以下是一个完整的 Angular 微前端示例,其中使用的是 Module Federation 和 npx-build-plus 实现了主应用(Shell)与子应用(Remote)的集成。 🛠️ 项目结构 angular-mf/ ├── shell-app/ # 主应用&…...
PAN/FPN
import torch import torch.nn as nn import torch.nn.functional as F import mathclass LowResQueryHighResKVAttention(nn.Module):"""方案 1: 低分辨率特征 (Query) 查询高分辨率特征 (Key, Value).输出分辨率与低分辨率输入相同。"""def __…...
Go 语言并发编程基础:无缓冲与有缓冲通道
在上一章节中,我们了解了 Channel 的基本用法。本章将重点分析 Go 中通道的两种类型 —— 无缓冲通道与有缓冲通道,它们在并发编程中各具特点和应用场景。 一、通道的基本分类 类型定义形式特点无缓冲通道make(chan T)发送和接收都必须准备好࿰…...

Python训练营-Day26-函数专题1:函数定义与参数
题目1:计算圆的面积 任务: 编写一个名为 calculate_circle_area 的函数,该函数接收圆的半径 radius 作为参数,并返回圆的面积。圆的面积 π * radius (可以使用 math.pi 作为 π 的值)要求:函数接收一个位置参数 radi…...
第八部分:阶段项目 6:构建 React 前端应用
现在,是时候将你学到的 React 基础知识付诸实践,构建一个简单的前端应用来模拟与后端 API 的交互了。在这个阶段,你可以先使用模拟数据,或者如果你的后端 API(阶段项目 5)已经搭建好,可以直接连…...

对象回调初步研究
_OBJECT_TYPE结构分析 在介绍什么是对象回调前,首先要熟悉下结构 以我们上篇线程回调介绍过的导出的PsProcessType 结构为例,用_OBJECT_TYPE这个结构来解析它,0x80处就是今天要介绍的回调链表,但是先不着急,先把目光…...

数据分析六部曲?
引言 上一章我们说到了数据分析六部曲,何谓六部曲呢? 其实啊,数据分析没那么难,只要掌握了下面这六个步骤,也就是数据分析六部曲,就算你是个啥都不懂的小白,也能慢慢上手做数据分析啦。 第一…...

【Java多线程从青铜到王者】单例设计模式(八)
wait和sleep的区别 我们的wait也是提供了一个还有超时时间的版本,sleep也是可以指定时间的,也就是说时间一到就会解除阻塞,继续执行 wait和sleep都能被提前唤醒(虽然时间还没有到也可以提前唤醒),wait能被notify提前唤醒…...

篇章一 论坛系统——前置知识
目录 1.软件开发 1.1 软件的生命周期 1.2 面向对象 1.3 CS、BS架构 1.CS架构编辑 2.BS架构 1.4 软件需求 1.需求分类 2.需求获取 1.5 需求分析 1. 工作内容 1.6 面向对象分析 1.OOA的任务 2.统一建模语言UML 3. 用例模型 3.1 用例图的元素 3.2 建立用例模型 …...