TryHackMe 第2天 | Pre Security (上)

news2024/12/22 19:41:55

该学习路径讲解了网络安全入门的必备技术知识,比如计算机网络、网络协议、Linux命令、Windows设置等内容。本篇博客将记录第一项:计算机网络

Network Fundamentals

What is networking?

网络就是相互连接的事物,我们的人际关系也可以抽象为一种网络。在计算机领域中,网络由各种设备(包括笔记本电脑、手机、监控摄像头等)组成。互联网则是一个巨大的网络,它由许许多多连接在一起的小网络组成,这些小网络被称为 private networks(专用网络),而将这些专用网络连接起来的网络被称为 public networks (公共网络)或者 Internet (互联网)

互联网图示

网络虽然将不同设备连接起来,但是仍然需要标识各种设备,以便在网络中快速地找到它们。一般有两种标识:

  • IP (Internet protocol) 地址
  • MAC (Media access control) 地址
IP & MAC address

IP 地址可以在某一段时间内用来识别网络中的某一主机。当前使用的 IP 地址基本还是遵循IPv4协议,但是由于互联网上的设备数量不断增长,继续使用IPv4 将导致 IP 地址资源短缺(IPv4 可以分配 2 ^ 32 个 IP 地址)。因此人们提出了 IPv6 协议来解决这一问题(IPv6 可以分配 2 ^ 128 个 IP 地址),并且效率更高。

网络中的所有设备都有一个物理网络接口,它是设备主板上的一块微芯片板 (microchip board) ,该网络接口在出厂时被分配了唯一的地址,这就是 MAC 地址。MAC 地址由 12 个字符的十六进制数组成,其中前 6 个字符标识制造该网络接口的公司,后 6 个字符是唯一的数字。

关于MAC地址,虽然MAC地址是唯一的,但是它也可以被“伪造”,从而实现“欺骗”。我们可以将网络中的设备A的MAC地址修改为另一个设备B的MAC地址(是的,MAC地址是可以修改的,但这种修改不是修改网络接口的MAC地址),这样A在网络中就可以“伪装”成B了。

Ping

Ping 是最基本的网络工具之一。Ping 使用 ICMP (Internet control message protocol,互联网控制报文协议)来确定设备间连接的性能,比如查看连接是否存在或者是否可靠。

Intro to LAN

LAN (Local area network,局域网)。多年来人们一直尝试和实施各种网络设计,这种网络设计也被称为 topology (拓扑结构)。

LAN topologies

常见的局域网拓扑结构有如下几种:

  • Star topology,星型拓扑。优点:更具可扩展性。缺点:成本较高,维护难度较高

  • Bus topology,总线拓扑。优点:容易搭建,成本较低。缺点:传输效率低,面对故障时几乎没有冗余。

  • Ring topology,环形拓扑。优点:设备直连,无需布线;方向固定,易于排除故障。缺点:传输效率较低;设备若故障则整个网络将中断。

switch & router

Switch(交换机)是网络中的专用设备,用于汇聚多个其他设备,这些不同的设备插入交换机的不同端口。交换机会记录哪个端口连接了哪个设备(通过MAC地址),因此当交换机收到数据包时可以直接将其发送到指定的目标,而无需像集线器一样广播出去,减少了网络流量。

Router (路由器)用于连接网络,并在网络之间传递数据。“路由”就是对数据在网络间传输过程的称呼。

交换机和路由器可以相互连接。通过为数据增加多条路径,可以提高网络的冗余度(也可以理解为可靠性)。这样可以保证当一条路径出现故障时,还有另一条路径可以使用,虽然会使网络性能降低,数据传输时间受影响,但起码保证了服务不会停止。

Subnetting

Subnetting (子网划分)是指将一个网络分割成更小的微型网络。在企业中,一般有多个部门,那就可以通过子网划分将一个网络分割成多个小网络,分配给不同部门。

子网划分通过 子网掩码 实现。子网划分有许多好处,比如在安全上,子网划分将一个网络分割成若干个互相分离、互不影响的小网络,保证了用户隐私,同时又能保证这些小网络与互联网正常连接。

ARP & DHCP protocol

ARP (Address resolution protocol) 协议工作在数据链路层。简单来说,ARP协议允许设备将其 MAC 地址与网络上的 IP 地址关联起来。网络中的每台设备都有一个缓存,在ARP协议中,缓存存储了网络上其他设备的 IP 地址和 MAC地址对应关系。ARP协议的工作流程如下图所示:

IP 地址可以手动分配,但大部分时候还是通过 DHCP (Dynamic host configuration protocol) 协议来自动分配 IP 地址。DHCP 的工作流程如下图所示:

OSI model

OSI model (Open systems interconnection model,开放系统互连模型) 是网络中使用的基本模型。该模型提供了一个框架,规定了所有联网设备如何发送、接受和解释数据。当设备在与其他设备进行通信时,它们在网络上可能拥有不同的功能和设计,直接通信可能会面临不兼容的问题。而如果按照OSI模型的统一性,它们在网络上发送的数据就可以被其他设备理解。

OSI模型分为七层,如下图所示:

由上到下进行简短介绍:

  • Application,应用层。制定协议和规则来确定用户如何与发送或接收的数据进行交互。
  • Presentation,表示层。本层充当了数据与应用层之间的数据转换器,将不同格式的数据转换为某种格式,使对端设备可以正确识别。
  • Session,会话层。利用传输层提供的端到端服务,向表示层提供会话服务。注意,此处的会话建立在两个网络应用之间
  • Transport,传输层。本层在网络数据传输中起着至关重要的作用,它建立了两个节点端到端之间的数据传输服务。
  • Network,网络层。本层负责数据包在网络中的路由与转发。
  • Data link,数据链路层。控制网络层与物理层之间的通信,将网络层中的数据封装成可被物理层传输的帧。
  • Physical,物理层。通过网络中的硬件物理组件,以二进制数字系统传输数据。

Packets & frames

Packets (数据包)和 frames (帧)都是小块数据,但在OSI模型中,它们是两码事。帧位于数据链路层,它将网络层数据进行封装,使用MAC地址进行传输。因此可以简单理解为:当涉及IP地址时,它就是数据包;而如果经过封装,讨论的就是帧

Ports

Port,在计算机领域中是“端口”的意思,但在英文中,还有另一个解释:港口。

确实,我们希望港口与停靠的船只一一对应,我们不希望本该给渔船停靠的港口给邮轮占去。端口亦然,端口规定了当前端口要提供的服务,只有端口对应,才能正确提供服务。

目前许多常见应用程序、软件、协议等都有自己固定的端口:

  • FTP (File transfer protocol),端口 21
  • SSH (Secure shell),端口 22
  • HTTP (Hypertext transfer protocol),端口 80
  • HTTPS (Hypertext transfer protocol secure),端口 443
  • SMB (Server message block),端口 445
  • RDP (Remote desktop protocol),端口 3389
  • ……

Extending your network

Port forwarding

Port forwarding (端口转发)是将应用程序和服务连接到互联网的重要组成部分,如果没有端口转发的话,服务只能提供给同一个直连网络内的设备。

如上图所示,此时只有两台与路由器直连的主机才能访问到 192.168.1.10 的 80 端口服务,互联网上的主机是无法访问到的。

而端口转发可以使互联网设备也能访问到该 80 端口上的服务。

端口转发示意图

如上图所示,将 192.168.1.10 的 80 端口服务转发给 82.62.51.70 的 80 端口上。此时 Network 2 中的主机就可以通过访问 82.62.51.70 的 80 端口访问到 192.168.1.10 的 80 端口上的服务。

Firewalls

防火墙是网络中的一种设备,它一般位于内外网的边界,用于负责确定允许哪些流量可以进出。

有两大类防火墙:

  • Stateful,有状态防火墙。这种防火墙根据连接的全部信息,通过整个连接来确定用户行为。该防火墙会消耗较多资源。
  • Stateless,无状态防火墙。这种防火墙使用一组静态规则来确定是否接受单个数据包,虽然该防火墙消耗资源少,但比较笨,因为它只对其中定义的规则生效。
VPN

VPN (Virtual private network,虚拟专用网络),通过在互联网上创建相互之间的专用路径(或称为隧道),允许不同网络上的设备进行安全通信,在隧道内连接的设备形成各自的专用网络。

如上图所示,企业内部分为两个网络,两个网络中的主机无法直接互相通信。然而 VPN 技术却可以为Network 1 和 Network 2 中的设备组建一个专用网络,使其可以通过 VPN 连接进行直接通信。

总结起来,VPN 有如下优点:

  • 允许连接不同地理位置的网络。
  • 提供加密
  • 提供匿名性

目前实现 VPN 有如下技术:

  • PPP,该技术使用 PPTP 进行身份验证和数据加密,使用私钥与证书进行确认,若两者匹配才可以建立 VPN 连接。该技术本身无法离开网络,即 不可被路由。
  • PPTP (Point-to-point tunneling protocol),点对点隧道协议是允许 PPP 传输和离开网络的技术。PPTP 的设置比较简单,但加密性略差。
  • IPsec (Internet protocol security),互联网协议安全,利用现有的 IP 框架对数据进行加密。它的设置比较困难,但其加密性十分强大,且支持许多设备。
VLAN

之前有讲过 交换机 和 路由器,当时说交换机运行在第二层,实际上也有可以运行在第三层的交换机,它们比二层交换机更复杂,可以履行路由器的部分职责。简而言之,三层交换机可以向设备发送帧,也可以使用 IP 协议将数据包路由到其他设备上。

VLAN (Virtual local area network),虚拟局域网技术可以将网络中的特定设备虚拟分割开,这意味着它们都能连接到互联网上,但是被分开处理。这种技术提供了安全性。该技术可以使用交换机(二层、三层均可)来实现,如下图所示:

图中尽管主机都连接在同一个交换机上,但由于 VLAN 技术,它们之间无法直接连通。

此处讲讲二层交换机和三层交换机在 VLAN 上的区别。

二层交换机实际上就可以实现 VLAN 功能,但当不同 VLAN 的设备有通信需求时,二层交换机无法满足这一需求,需要添加额外的路由器才可以实现该功能。

而三层交换机由于可以履行路由器的部分职责,因此可以直接只使用一台三层交换机就可以实现不同 VLAN 之间的通信需求。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2151913.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Liveweb视频汇聚平台支持GB28181转RTMP、HLS、RTSP、FLV格式播放方案

GB28181协议凭借其在安防流媒体行业独有的大统一地位,目前已经在各种安防项目上使用。雪亮工程、幼儿园监控、智慧工地、物流监控等等项目上目前都需要接入安防摄像头或平台进行直播、回放。而GB28181协议作为国家推荐标准,目前基本所有厂家的安防摄像头…

[Unity Demo]从零开始制作空洞骑士Hollow Knight第六集:制作小骑士完整的跳跃落地行为

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、制作一个完整的小骑士跳跃落地行为 1.制作动画以及UNITY编辑器编辑2.使用代码实现完整的跳跃落地行为控制3.更多要考虑到的点总结 前言 大家好久不见&…

【CSS Tricks】如何做一个粒子效果的logo

效果展示 代码展示 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" /><title>粒子效果Logo</title>…

VUE面试题(单页应用及其首屏加载速度慢的问题)

目录 一、单页应用 1.概念 2.单页面应用的优缺点 二、多页面应用&#xff1a; 1.概念 2.区别 三、SPA的实现 1.原理 2.方式&#xff1a; 3.Hash与History模式有什么区别 四、首屏加载速度慢如何优化 1.什么是首屏加载&#xff1f; 2.首屏加载慢的原因 3.如何解决…

OpenCV特征检测(2)边缘检测函数Canny()的使用

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 使用 Canny 算法 48在图像中查找边缘。 该函数使用 Canny 算法在输入图像中查找边缘&#xff0c;并在输出地图 edges 中标记它们。在 threshold1…

【0332】Postgres内核 start background worker(s)

0. 相关联文件 postmaster.cilist.h1. 启动 background worker(s) Postgres内核在 PostmasterMain() 函数中初始化 postmaster 守护进程时候,通过 maybe_start_bgworkers() 函数开始尝试启动 background worker(s)。 若时机恰当,则启动 background worker(s)。 作为一种附带…

基于云的补丁管理

什么是云补丁 云补丁或基于云的补丁管理是指扫描和检测缺失补丁、测试补丁并将它们部署到所需系统的过程&#xff0c;所有这些都通过基于云的控制台或软件完成。虽然补丁管理工作流程通常保持不变&#xff0c;但基于云的补丁管理的主要区别在于&#xff0c;整个过程仅通过基于…

iOS 18 适配 Xcode 16 问题

在适配 iOS 18 xcode 16时遇到的问题&#xff0c;记录一下。 1. 使用xcode 16 iOS 18 运行App时遇到&#xff0c;APP 的icon 出现空白现象。 原先APP icon 设置方案。 暂时解决方案&#xff1a; 2、

Python 低层多线程接口_thread的用法

_thread是python标准库中的一个低层多线程API&#xff0c;可以在进程中启动线程来处理任务&#xff0c;并且提供了简单的锁机制来控制共享资源的同步访问。本文就_thread模块的用法和特性做个简单的演示。 文章目录 一、进程和线程的区别二、_thread模块的用法2.1 派生线程2.2…

Percona发布开源DBaaS平台;阿里云RDS发布全球多活数据库(GAD);Redshift支持自然语言生成SQL

重要更新 1. 云栖大会于本周四/五在杭州举行&#xff0c;周五上午云栖主论坛阿里云数据库负责人李飞飞将发表《从数据到智能&#xff1a;DataAI驱动的云原生数据库》演讲&#xff0c;另外&#xff0c;还有多场次的数据库专场&#xff0c;感兴趣的可以现场或在线观看&#xff1a…

个人小结(2.0)

离谱&#xff0c;困扰着几周的问题今天偶然发现了解决方法。 问题如下&#xff1a;就是对应的模块引入爆红&#xff0c;但是单击进入引入的文件没有问题 然后它的提示是&#xff1a; 无法找到模块“../views/screen/index.vue”的声明文件。“c:/Users/10834/Desktop/0716_pro…

vue-使用refs取值,打印出来是个数组??

背景&#xff1a; 经常使用$refs去获取组件实例&#xff0c;一般都是拿到实例对象&#xff0c;这次去取值的时候发现&#xff0c;拿到的竟然是个数组。 原因&#xff1a; 这是vue的特性,自动把v-for里面的ref展开成数组的形式&#xff0c;哪怕你的ref名字是唯一的&#xff01…

DataX--Web:图形化界面简化大数据任务管理

在处理大数据任务时&#xff0c;频繁地修改配置文件或编写脚本可能会变得繁琐且容易出错。DataX Web提供了一个图形化界面&#xff0c;旨在简化这些操作&#xff0c;让用户通过直观的界面管理数据同步任务。 DataX Web简介 DataX Web是一个开源项目&#xff0c;它允许用户通过…

帧率和丢帧分析理论

一、丢帧问题概述 应用丢帧通常指的是在应用程序的界面绘制过程中&#xff0c;由于某些原因导致界面绘制的帧率下降&#xff0c;从而造成界面卡顿、动画不流畅等问题。以60Hz刷新率为例子&#xff0c;想要达到每秒60帧&#xff08;即60fps&#xff09;的流畅体验&#xff0c;每…

Python 序列( 列表 字典 元组 集合)

列表简介&#xff1a; 1.列表&#xff1a;用于存储任意数目、任意类型的数据集合。 2.列表是内置可变序列&#xff0c;是包含多个元素的有序连续的内存空间。列表的标准语法格式&#xff1a;a[10,20,30,40]其中&#xff0c;10,20,30,40这些称为&#xff1a;列表a的元素。 3.…

海外云市场分析

海外云市场数据洞察 2024 H1 季度数据 H1季度,全球云基础设施服务指数同比增长21%,达到798亿美元 (相比去年增加134亿美元),三大云服务提供商— AWS,微软Azure 和GCP 营收总增长率为24%,占总市场66%。 其中三大云厂商同比营收增长排序(2024 H1):微软 31%,G…

用户态缓存:环形缓冲区(Ring Buffer)

目录 环形缓冲区&#xff08;Ring Buffer&#xff09;简介 为什么选择环形缓冲区&#xff1f; 代码解析 1. 头文件与类型定义 1.1 头文件保护符 1.2 包含必要的标准库 1.3 类型定义 2. 环形缓冲区结构体 2.1 结构体成员解释 3. 辅助宏与内联函数 3.1 min 宏 3.2 is…

【Python报错已解决】xlrd.biffh.XLRDError: Excel xlsx file; not supported

&#x1f3ac; 鸽芷咕&#xff1a;个人主页 &#x1f525; 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想&#xff0c;就是为了理想的生活! 专栏介绍 在软件开发和日常使用中&#xff0c;BUG是不可避免的。本专栏致力于为广大开发者和技术爱好者提供一个关于BUG解决的经…

最新LinPay码支付 免签支付系统源码 免授权版本(含搭建教程)

最新LinPay码支付 免签支付系统源码 免授权版本 服务集成商兼容市面所有易支付&#xff0c;兼容所有商城LinPay是专为个人站长打造的聚合免签系统&#xff0c;拥有卓越的性能和丰富的功能。它采用全新轻量化的界面UI&#xff0c;让您能更方便快捷地解决知识付费和运营赞助的难…

中间件知识点-消息中间件(Rabbitmq)一

消息中间件介绍 MQ的作用(优点)主要有以下三个方面&#xff1a; a.异步 b.解耦 c.削峰 MQ的作用(缺点)主要有以下三个方面&#xff1a; a.系统可用性降低 b.系统复杂度提高 c.存在消息一致性问题需要解决 备注&#xff1a; 引入MQ后系统的复杂度会大大提高。 以前服务之间可以…