声明
学习视频来自B站UP主 泷羽sec,如涉及侵权马上删除文章 笔记的只是方便各位师傅学习知识,以下网站只涉及学习内容,其他的都与本人无关,切莫逾越法律红线,否则后果自负
关于超文本协议和内外网划分的那些事儿-http、https
- 渗透测试角度中http协议有哪些攻击面?
- 域名有哪些呢?有哪些级别呢?
- 内外网划分
- 什么是内网(局域网)?
- 如何实现内网保护呢?
- 什么是外网?
- 如何区分公网地址和私网地址?
- 什么是公网地址?
- 什么是私网地址?
- **IANA保留的私网ip地址有哪些?**
- 实践是检验真理的唯一标准
## 超文本协议 ### 什么是超文本协议? 超文本协议(Hypertext Protocol)通常是指超文本传输协议(HTTP,HyperText Transfer Protocol),它是一种用于分布式、协作式、超媒体信息系统的互联网协议。HTTP 是互联网上应用最为广泛的协议之一,它定义了客户端(如浏览器)与服务器之间请求和响应的格式。 HTTP 定义了一系列的方法(也称为动词),如 GET、POST、PUT、DELETE 等,用于指定要对资源执行的操作。 当然http协议有很多的请求类型,以及请求体参数,响应体参数,实际上网站的请求和响应都是有很多的类型还有自定义的类型 ### http协议由什么组成? 请求/响应模型:
HTTP 基于客户端-服务器模型,客户端(如浏览器)向服务器发送请求,服务器处理请求后返回响应。
方法(HTTP 动词):
HTTP 定义了一系列的方法来执行不同的操作,常用的方法包括:
GET
:请求从服务器检索特定资源。
POST
:向服务器提交数据进行处理请求(例如提交表单或上传文件)。
PUT
:请求将指定资源的状态更改为请求中提供的内容。
DELETE
:请求删除指定的资源。
HEAD
:请求获取与GET请求相同的响应,但没有响应体。
PATCH
:对资源进行部分修改。
状态码:
HTTP 响应包含状态码,表示请求的结果。状态码分为几类:
1xx
:指示信息 - 请求收到,继续处理。
2xx
:成功 - 请求已成功被服务器接收、理解、并接受。
3xx
:重定向 - 需要后续操作才能完成请求。
4xx
:客户端错误 - 请求包含语法错误或无法完成请求。
5xx
:服务器错误 - 服务器在处理请求的过程中发生了错误。
头部(Headers):
HTTP 请求和响应都包含头部字段,它们提供了关于请求/响应的额外信息,例如:
Host
:请求的服务器域名。
User-Agent
:发出请求的客户端信息。
Accept
:客户端能够处理的媒体类型。
Content-Type
:请求或响应的媒体类型。
Content-Length
:请求或响应体的长度。
Set-Cookie
:服务器向客户端设置 Cookie。
Cookie
:客户端发送给服务器的 Cookie。
消息体(Body):
HTTP 请求和响应可以包含一个消息体,用于传输数据。例如,在 POST 请求中,消息体通常包含要提交的数据。
版本号:
每个 HTTP 消息都会指定使用的 HTTP 版本号,如 HTTP/1.1 或 HTTP/2。
持久连接和管道化:
HTTP/1.1 支持持久连接(Connection: keep-alive),允许在同一个 TCP 连接上发送多个 HTTP 请求/响应,减少了建立和关闭连接的开销。
HTTP/1.1 还支持管道化(pipelining),允许客户端在等待服务器响应时,继续发送请求。
安全性:
HTTP 协议本身不提供加密,但可以通过 HTTPS(HTTP Secure)来实现加密传输,HTTPS 在 HTTP 下层使用 SSL/TLS 协议来保证数据传输的安全性。
渗透测试角度中http协议有哪些攻击面?
常见的攻击面咱就不说了,大多数的时候还是抓包、改包最常见,BurpSuite你值得拥有
1、输入验证和输出验证
SQL注入:攻击者注入SQL命令以操纵数据库。
跨站脚本(XSS):攻击者注入恶意脚本,影响其他用户。
命令注入:攻击者注入系统命令执行。
文件上传漏洞:上传恶意文件执行。
http协议之url:
https://www.baidu.com/web/579.html?replytocom=22#respond
分析如下:协议://域名:端口/虚拟目录/文件名?参数#描点
协议有很多,不能只是了解http协议,常见的协议如下,自行使用和了解
HTTP(超文本传输协议):
用于从网站传输超文本到本地浏览器的传输协议。
HTTPS(安全超文本传输协议):
HTTP的安全版本,通过SSL/TLS提供加密传输。
FTP(文件传输协议):
用于在网络上进行文件传输。
SFTP(安全文件传输协议):
FTP的安全版本,使用SSH协议进行文件传输。
SMTP(简单邮件传输协议):
用于发送电子邮件。
POP3(邮局协议第三版):
用于接收电子邮件。
IMAP(互联网消息访问协议):
用于访问和管理电子邮件服务器上的邮件。
SSH(安全外壳协议):
用于加密方式远程登录和其他网络服务。
Telnet:
用于远程登录到计算机系统,但不如SSH安全。
TCP/IP(传输控制协议/互联网协议):
互联网通信的基础协议,定义了电子设备如何在网络上进行数据交换。
UDP(用户数据报协议):
一种无连接的网络协议,常用于需要快速传输但可以容忍丢包的应用,如视频流和在线游戏。
DNS(域名系统):
将域名转换为IP地址的系统。
SNMP(简单网络管理协议):
用于网络管理,监控网络设备的状态。
RTP(实时传输协议):
用于传输实时数据,如音频和视频。
RTSP(实时流协议):
控制流媒体服务器的协议。
SOAP(简单对象访问协议):
一种协议,用于在网络应用程序之间交换结构化信息。
REST(表述性状态转移):
一种软件架构风格,用于设计网络服务。
GraphQL:
一种用于API的查询语言,允许客户端指定它们需要的数据结构。
WebSocket:
一种在单个TCP连接上进行全双工通信的协议。
CoAP(受限应用协议):
为物联网环境设计的协议,适用于资源受限的设备。
这里面我认为最有用的是websocket、http、https、ftp等协议在网站中是最常用的。
域名有哪些呢?有哪些级别呢?
常见的域名:
.com
:商业用途,是最常见的顶级域名之一。
.org
:非营利组织或组织机构。
.net
:网络服务提供商,最初用于网络技术社区。
.edu
:教育机构,如大学和学院。
.gov
:政府机构。
.mil
:军事机构。
.int
:国际组织。
.biz
:商业网站。
.info
:提供信息的网站。
.name
:个人或家族网站。
.pro
:专业人士或专业团体。
.cc
:Cocos (Keeling) Islands的国别域名,也常用于商业网站。
.tv
:电视或视频内容网站,也是Tuvalu的国别域名。
.me
:个人网站或博客。
.co
:公司或商业网站,也是哥伦比亚的国别域名。
.io
:科技或创新项目,也是英属印度洋领地的国别域名。
.asia
:亚洲地区的域名。
.eu
:欧洲联盟的域名。
.in
:印度的国别域名。
.co.uk
:英国的商业域名。
域名的级别:
顶级域名(TLD):如上所述,是域名结构的最高层级,例如.com、.org、.net等。
二级域名:位于顶级域名之下,通常是注册者选择的域名,如example.com中的example。
子域名:位于二级域名之前,用于进一步组织网站内容,如sub.example.com中的sub。
还有一些国家顶级域名,这个就在介绍了,大家可以自行gpt,该说不说,jp us uk的必须收集一下
完整的域名示例:sub.blog.example.com
,其中sub
是子域名,blog
是三级域名,example
是二级域名,com
是顶级域名,根域名是隐含的,根域名也就是jp us uk等顶级域名。
内外网划分
什么是内网(局域网)?
内网(Internal Network)是指一个组织内部的私有网络,它通常不直接与外部网络(如互联网)相连,或者通过严格的安全措施与外部网络隔离
定义:
内网是组织内部使用的网络,它连接了组织内部的计算机、服务器、打印机和其他网络设备,用于内部通信和资源共享。内网的设计旨在保护组织的敏感数据和关键业务系统不受外部威胁的侵害
内网的目的:
保护内部网络不受外部攻击。
控制内部数据的流出,防止数据泄露。
确保关键业务系统的安全性和稳定性。
如何实现内网保护呢?
防火墙(Firewall):最基本的安全设备,用于控制进出内网的数据流。
路由器(Router):用于在不同网络之间转发数据包,通常配置有访问控制列表(ACL)来限制流量。
虚拟私人网络(VPN):允许远程用户通过加密的通道安全地访问内网资源。
入侵检测系统(IDS)/入侵防御系统(IPS):监控网络流量,检测并响应潜在的攻击。
网络隔离(Network Segmentation):将内网进一步划分为多个子网,以减少潜在的攻击面。
实际中,内网渗透最难的就是防火墙,绕过防火墙实践复杂繁琐,实际操作中思路最重要,社工最重要。
什么是外网?
外网是一个开放的网络,它不受单一组织或国家的控制,任何人都可以通过互联网服务提供商(ISP)连接到这个网络。外网允许不同计算机系统之间进行通信,无论它们位于世界的哪个角落。
外网地址的特点:
全球性:互联网连接了全球各地的计算机,形成了一个巨大的信息共享平台。
开放性:互联网对所有人开放,用户可以自由访问和发布信息。
互联性:不同的网络通过标准化的协议(如TCP/IP)相互连接,实现数据的无缝传输。
动态性:互联网的内容和结构是动态变化的,新的网站和资源不断出现,旧的可能会消失。
多样性:互联网上的信息和资源非常丰富多样,包括文本、图片、视频、音频等。
匿名性:虽然实名制在某些地区和场合被要求,但互联网仍然提供了一定程度的匿名性,用户可以选择匿名或使用化名发布信息。
可扩展性:互联网的架构允许其不断扩展,新的用户和网络可以轻松加入。
依赖性:现代社会对互联网的依赖性越来越强,它已成为商业、教育、娱乐和通信的重要工具。
如何区分公网地址和私网地址?
什么是公网地址?
公网地址是在整个互联网中唯一的IP地址,可以被全球任何地方的设备识别和访问。公网地址由互联网号码分配机构(IANA)及其下属机构如互联网注册管理机构(InterNIC)等分配和管理。
公网地址的特点:
特点:
全球唯一性:每个公网IP地址在全球范围内都是唯一的,不会与任何其他设备冲突。
可路由性:公网地址可以在互联网上被路由,意味着数据包可以通过公网地址从一个网络传输到另一个网络。
动态分配:公网IP地址可以是静态的,也可以是动态分配的(如通过DHCP)。静态公网IP地址通常需要购买,而动态公网IP地址则由ISP在用户连接时临时分配。
成本:由于公网IP地址资源有限,静态公网IP地址可能需要支付额外费用。
什么是私网地址?
私网地址是专门为组织内部网络使用的IP地址,不会在互联网上直接路由。私网地址由互联网号码分配机构(IANA)保留,以供在私有网络中使用。
私网地址的特点:
非唯一性:私网IP地址在不同私有网络中可以重复使用,因为它们不会在互联网上直接通信。
不可路由性:私网地址在互联网上不可直接路由,需要通过网络地址转换(NAT)技术将私网地址映射到公网地址,以便与外部网络通信。
免费使用:私网IP地址是免费提供的,组织可以在内部网络中自由使用。
**节省资源:**由于公网IP地址资源有限,使用私网地址可以节省公网IP地址资源。
安全性:私网地址的使用可以在一定程度上提高网络安全性,因为它们不会直接暴露在互联网上。
IANA保留的私网ip地址有哪些?
IPv4:
10.0.0.0 - 10.255.255.255
172.16.0.0 - 172.31.255.255
192.168.0.0 - 192.168.255.255
IPv6:
FC00::/7
FD00::/8
互联网上的公网地址有哪些呢?
IPv4的公网地址范围非常广泛,除了上述私网地址之外,其余的都是公网地址。由于IPv4地址资源有限,许多地址已经被分配和使用。
2000::/3:这是全球单播地址的范围,包括了大多数公网IPv6地址。
2001::/32:这是提供给特定提供商的地址范围,用于全球路由。
什么是IANA?
IANA(Internet Assigned Numbers Authority),即互联网号码分配机构,是一个负责全球互联网资源分配和标识符管理的重要组织。
一般来说私有网段c端:192.168.xxxx.xxxx开始的很多都是个人用户的,公网地址也有很多,多用于企业、网站、pc客户端、app端之类的
计算机网络的知识远远不止这些,比如子网掩码、子网划分、网络拓扑,思科设备、防火墙,搭建一个网络的过程是需要不断积累网络相关知识才可以的,所以,若是对网络感兴趣,对渗透有帮助,需要系统学习下计算机网络原理
这章节分享比较简单,下期我会和大家分享使用k8s+docker,三台ubuntu服务器搭建一个master节点,两个worker节点的小集群。