安全测试从入门到精通_网络基础与HTTPS

文章目录

  • 第11章:网络基础与HTTPS详解
    • [11.1 网络分层模型 --- 理解数据怎么"旅行"](#11.1 网络分层模型 — 理解数据怎么"旅行")
      • [🧠 为什么需要网络分层?](#🧠 为什么需要网络分层?)
      • [📚 TCP/IP 四层模型](#📚 TCP/IP 四层模型)
      • [🎯 安全测试中最重要的网络知识](#🎯 安全测试中最重要的网络知识)
    • [11.2 HTTPS 与 TLS --- 互联网的"保险箱"](#11.2 HTTPS 与 TLS — 互联网的"保险箱")
      • [🧠 什么是HTTPS?](#🧠 什么是HTTPS?)
      • [🔐 TLS握手过程 --- 加密是怎么建立的?](#🔐 TLS握手过程 — 加密是怎么建立的?)
      • [🔍 安全测试人员必须知道的HTTPS知识](#🔍 安全测试人员必须知道的HTTPS知识)
      • [⚠️ HTTPS不等同于"安全"](#⚠️ HTTPS不等同于"安全")
    • [11.3 网络排查工具 --- 理解"为什么连不上"](#11.3 网络排查工具 — 理解"为什么连不上")
      • [🔧 日常排查](#🔧 日常排查)
    • [📝 本章小结](#📝 本章小结)
      • [🧠 本章练习](#🧠 本章练习)

第11章:网络基础与HTTPS详解

本章目标:补全安全测试所需的网络基础知识,深入理解 TCP/IP 分层、HTTPS 加密原理,以及它们在安全测试中的意义。


11.1 网络分层模型 --- 理解数据怎么"旅行"

🧠 为什么需要网络分层?

想象你要寄一封信给远方的朋友:

复制代码
你(应用层):
  "帮我寄这封信到北京"

物流公司(传输层):
  "好的,用顺丰次日达,快递单号 SF123"

快递员(网络层):
  "我看看路线...飞机到北京,再转同城快递"

火车/飞机(链路层):
  "包裹正在运输中..."

每一层各司其职,上层不需要关心下层怎么实现的

📚 TCP/IP 四层模型

安全测试中大部分时间都在和应用层【打交道,但理解底层有助于你排查问题和绕过防御。
#mermaid-svg-BCC691NF4iuWv2R9{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-BCC691NF4iuWv2R9 .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-BCC691NF4iuWv2R9 .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-BCC691NF4iuWv2R9 .error-icon{fill:#552222;}#mermaid-svg-BCC691NF4iuWv2R9 .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-BCC691NF4iuWv2R9 .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-BCC691NF4iuWv2R9 .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-BCC691NF4iuWv2R9 .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-BCC691NF4iuWv2R9 .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-BCC691NF4iuWv2R9 .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-BCC691NF4iuWv2R9 .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-BCC691NF4iuWv2R9 .marker{fill:#333333;stroke:#333333;}#mermaid-svg-BCC691NF4iuWv2R9 .marker.cross{stroke:#333333;}#mermaid-svg-BCC691NF4iuWv2R9 svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-BCC691NF4iuWv2R9 p{margin:0;}#mermaid-svg-BCC691NF4iuWv2R9 .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-BCC691NF4iuWv2R9 .cluster-label text{fill:#333;}#mermaid-svg-BCC691NF4iuWv2R9 .cluster-label span{color:#333;}#mermaid-svg-BCC691NF4iuWv2R9 .cluster-label span p{background-color:transparent;}#mermaid-svg-BCC691NF4iuWv2R9 .label text,#mermaid-svg-BCC691NF4iuWv2R9 span{fill:#333;color:#333;}#mermaid-svg-BCC691NF4iuWv2R9 .node rect,#mermaid-svg-BCC691NF4iuWv2R9 .node circle,#mermaid-svg-BCC691NF4iuWv2R9 .node ellipse,#mermaid-svg-BCC691NF4iuWv2R9 .node polygon,#mermaid-svg-BCC691NF4iuWv2R9 .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-BCC691NF4iuWv2R9 .rough-node .label text,#mermaid-svg-BCC691NF4iuWv2R9 .node .label text,#mermaid-svg-BCC691NF4iuWv2R9 .image-shape .label,#mermaid-svg-BCC691NF4iuWv2R9 .icon-shape .label{text-anchor:middle;}#mermaid-svg-BCC691NF4iuWv2R9 .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-BCC691NF4iuWv2R9 .rough-node .label,#mermaid-svg-BCC691NF4iuWv2R9 .node .label,#mermaid-svg-BCC691NF4iuWv2R9 .image-shape .label,#mermaid-svg-BCC691NF4iuWv2R9 .icon-shape .label{text-align:center;}#mermaid-svg-BCC691NF4iuWv2R9 .node.clickable{cursor:pointer;}#mermaid-svg-BCC691NF4iuWv2R9 .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-BCC691NF4iuWv2R9 .arrowheadPath{fill:#333333;}#mermaid-svg-BCC691NF4iuWv2R9 .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-BCC691NF4iuWv2R9 .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-BCC691NF4iuWv2R9 .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-BCC691NF4iuWv2R9 .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-BCC691NF4iuWv2R9 .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-BCC691NF4iuWv2R9 .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-BCC691NF4iuWv2R9 .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-BCC691NF4iuWv2R9 .cluster text{fill:#333;}#mermaid-svg-BCC691NF4iuWv2R9 .cluster span{color:#333;}#mermaid-svg-BCC691NF4iuWv2R9 div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-BCC691NF4iuWv2R9 .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-BCC691NF4iuWv2R9 rect.text{fill:none;stroke-width:0;}#mermaid-svg-BCC691NF4iuWv2R9 .icon-shape,#mermaid-svg-BCC691NF4iuWv2R9 .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-BCC691NF4iuWv2R9 .icon-shape p,#mermaid-svg-BCC691NF4iuWv2R9 .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-BCC691NF4iuWv2R9 .icon-shape .label rect,#mermaid-svg-BCC691NF4iuWv2R9 .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-BCC691NF4iuWv2R9 .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-BCC691NF4iuWv2R9 .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-BCC691NF4iuWv2R9 :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} TCP/IP 四层模型
第4层: 应用层 Application

HTTP / HTTPS / FTP / SSH / DNS
第3层: 传输层 Transport

TCP / UDP
第2层: 网络层 Internet

IP / ICMP / ARP
第1层: 网络接口层 Link

Ethernet / WiFi
数据 (Data)
数据段 (Segment)

源端口:xxxx → 目标端口:80
数据包 (Packet)

源IP:1.2.3.4 → 目标IP:5.6.7.8
数据帧 (Frame)

源MAC:AA:BB → 目标MAC:CC:DD

🎯 安全测试中最重要的网络知识

1. IP地址 --- 网络上的"门牌号"

复制代码
IPv4: 192.168.1.1 (32位,4组数字)
IPv6: fe80::1 (128位,更长的地址)

内网IP段(一般外部不能直接访问):
  10.0.0.0 - 10.255.255.255   (大公司内网)
  172.16.0.0 - 172.31.255.255  (中公司内网)
  192.168.0.0 - 192.168.255.255 (家庭/小公司内网)
  127.0.0.1                     (本机localhost)
  
特殊IP:
  0.0.0.0 - 所有地址
  127.0.0.1 - 本机回环地址
  169.254.x.x - DHCP失败时的自动分配

2. 端口 --- 计算机上的"门"

复制代码
一台服务器上可以运行很多服务,每个服务占用一个端口:
  ┌──────────────────────────────────────┐
  │            服务器 (1.2.3.4)           │
  │  ┌────────┐ ┌────────┐ ┌──────────┐  │
  │  │  SSH   │ │  Web   │ │ Database │  │
  │  │ :22 🚪 │ │ :80 🚪 │ │ :3306 🚪 │  │
  │  └────────┘ └────────┘ └──────────┘  │
  └──────────────────────────────────────┘

常用端口:
  21    FTP(文件传输)
  22    SSH(安全Shell,远程登录)
  23    Telnet(远程登录,明文,不安全)
  25    SMTP(发邮件)
  53    DNS(域名解析)
  80    HTTP(网页,明文)
  443   HTTPS(加密网页)
  3306  MySQL(数据库)
  3389  RDP(Windows远程桌面)
  5432  PostgreSQL(数据库)
  6379  Redis(缓存数据库)
  8080  HTTP备用(常被用于Tomcat/Jenkins等)
  27017 MongoDB(NoSQL数据库)

🗣️ 作者说 :端口扫描(Nmap)就是在问目标服务器:"1000个门🚪,哪些是开着的?" 如果开了不该开的门(比如数据库端口暴露在外网),那可能就是攻击者进入的入口。

3. TCP vs UDP --- 两种不同的"送信方式"

复制代码
TCP(可靠,像挂号信):
  ✅ 确保送到,会重发
  ✅ 按顺序到达
  ❌ 速度相对慢
  用于: HTTP, HTTPS, SSH, FTP, 邮件

UDP(快速,像明信片):
  ❌ 不保证送到
  ❌ 可能乱序
  ✅ 速度非常快
  用于: DNS, 视频通话, 游戏, DHCP

安全测试关注点

复制代码
TCP的服务(如Web SSH database)→ 通常更重要,需要重点测试
UDP的服务(如DNS)→ 容易被忽略但也很重要

11.2 HTTPS 与 TLS --- 互联网的"保险箱"

🧠 什么是HTTPS?

HTTP + TLS = HTTPS

HTTP 是明信片------任何人沿途都可以看 到内容。

HTTPS 是加密信件------只有收件人才能打开看。
#mermaid-svg-xdTK2dNRdRRtN0mf{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-xdTK2dNRdRRtN0mf .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-xdTK2dNRdRRtN0mf .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-xdTK2dNRdRRtN0mf .error-icon{fill:#552222;}#mermaid-svg-xdTK2dNRdRRtN0mf .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-xdTK2dNRdRRtN0mf .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-xdTK2dNRdRRtN0mf .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-xdTK2dNRdRRtN0mf .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-xdTK2dNRdRRtN0mf .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-xdTK2dNRdRRtN0mf .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-xdTK2dNRdRRtN0mf .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-xdTK2dNRdRRtN0mf .marker{fill:#333333;stroke:#333333;}#mermaid-svg-xdTK2dNRdRRtN0mf .marker.cross{stroke:#333333;}#mermaid-svg-xdTK2dNRdRRtN0mf svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-xdTK2dNRdRRtN0mf p{margin:0;}#mermaid-svg-xdTK2dNRdRRtN0mf .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-xdTK2dNRdRRtN0mf .cluster-label text{fill:#333;}#mermaid-svg-xdTK2dNRdRRtN0mf .cluster-label span{color:#333;}#mermaid-svg-xdTK2dNRdRRtN0mf .cluster-label span p{background-color:transparent;}#mermaid-svg-xdTK2dNRdRRtN0mf .label text,#mermaid-svg-xdTK2dNRdRRtN0mf span{fill:#333;color:#333;}#mermaid-svg-xdTK2dNRdRRtN0mf .node rect,#mermaid-svg-xdTK2dNRdRRtN0mf .node circle,#mermaid-svg-xdTK2dNRdRRtN0mf .node ellipse,#mermaid-svg-xdTK2dNRdRRtN0mf .node polygon,#mermaid-svg-xdTK2dNRdRRtN0mf .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-xdTK2dNRdRRtN0mf .rough-node .label text,#mermaid-svg-xdTK2dNRdRRtN0mf .node .label text,#mermaid-svg-xdTK2dNRdRRtN0mf .image-shape .label,#mermaid-svg-xdTK2dNRdRRtN0mf .icon-shape .label{text-anchor:middle;}#mermaid-svg-xdTK2dNRdRRtN0mf .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-xdTK2dNRdRRtN0mf .rough-node .label,#mermaid-svg-xdTK2dNRdRRtN0mf .node .label,#mermaid-svg-xdTK2dNRdRRtN0mf .image-shape .label,#mermaid-svg-xdTK2dNRdRRtN0mf .icon-shape .label{text-align:center;}#mermaid-svg-xdTK2dNRdRRtN0mf .node.clickable{cursor:pointer;}#mermaid-svg-xdTK2dNRdRRtN0mf .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-xdTK2dNRdRRtN0mf .arrowheadPath{fill:#333333;}#mermaid-svg-xdTK2dNRdRRtN0mf .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-xdTK2dNRdRRtN0mf .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-xdTK2dNRdRRtN0mf .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-xdTK2dNRdRRtN0mf .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-xdTK2dNRdRRtN0mf .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-xdTK2dNRdRRtN0mf .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-xdTK2dNRdRRtN0mf .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-xdTK2dNRdRRtN0mf .cluster text{fill:#333;}#mermaid-svg-xdTK2dNRdRRtN0mf .cluster span{color:#333;}#mermaid-svg-xdTK2dNRdRRtN0mf div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-xdTK2dNRdRRtN0mf .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-xdTK2dNRdRRtN0mf rect.text{fill:none;stroke-width:0;}#mermaid-svg-xdTK2dNRdRRtN0mf .icon-shape,#mermaid-svg-xdTK2dNRdRRtN0mf .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-xdTK2dNRdRRtN0mf .icon-shape p,#mermaid-svg-xdTK2dNRdRRtN0mf .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-xdTK2dNRdRRtN0mf .icon-shape .label rect,#mermaid-svg-xdTK2dNRdRRtN0mf .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-xdTK2dNRdRRtN0mf .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-xdTK2dNRdRRtN0mf .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-xdTK2dNRdRRtN0mf :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} HTTPS - 加密传输

输入密码: abc123
加密传输

乱码: x7#9k@2!
服务器解密

密码: abc123
👿 攻击者

看到的是乱码,没用!
HTTP - 明文传输

输入密码: abc123
明文传输

密码: abc123
服务器
👿 攻击者

看到你的密码了!

🔐 TLS握手过程 --- 加密是怎么建立的?

当你的浏览器访问 HTTPS 网站时,背后发生了一次复杂的"握手":
服务器 客户端(浏览器) 服务器 客户端(浏览器) #mermaid-svg-cmILyBYfpLAPnDl4{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-cmILyBYfpLAPnDl4 .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-cmILyBYfpLAPnDl4 .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-cmILyBYfpLAPnDl4 .error-icon{fill:#552222;}#mermaid-svg-cmILyBYfpLAPnDl4 .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-cmILyBYfpLAPnDl4 .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-cmILyBYfpLAPnDl4 .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-cmILyBYfpLAPnDl4 .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-cmILyBYfpLAPnDl4 .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-cmILyBYfpLAPnDl4 .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-cmILyBYfpLAPnDl4 .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-cmILyBYfpLAPnDl4 .marker{fill:#333333;stroke:#333333;}#mermaid-svg-cmILyBYfpLAPnDl4 .marker.cross{stroke:#333333;}#mermaid-svg-cmILyBYfpLAPnDl4 svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-cmILyBYfpLAPnDl4 p{margin:0;}#mermaid-svg-cmILyBYfpLAPnDl4 .actor{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-cmILyBYfpLAPnDl4 text.actor>tspan{fill:black;stroke:none;}#mermaid-svg-cmILyBYfpLAPnDl4 .actor-line{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);}#mermaid-svg-cmILyBYfpLAPnDl4 .innerArc{stroke-width:1.5;stroke-dasharray:none;}#mermaid-svg-cmILyBYfpLAPnDl4 .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:#333;}#mermaid-svg-cmILyBYfpLAPnDl4 .messageLine1{stroke-width:1.5;stroke-dasharray:2,2;stroke:#333;}#mermaid-svg-cmILyBYfpLAPnDl4 #arrowhead path{fill:#333;stroke:#333;}#mermaid-svg-cmILyBYfpLAPnDl4 .sequenceNumber{fill:white;}#mermaid-svg-cmILyBYfpLAPnDl4 #sequencenumber{fill:#333;}#mermaid-svg-cmILyBYfpLAPnDl4 #crosshead path{fill:#333;stroke:#333;}#mermaid-svg-cmILyBYfpLAPnDl4 .messageText{fill:#333;stroke:none;}#mermaid-svg-cmILyBYfpLAPnDl4 .labelBox{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-cmILyBYfpLAPnDl4 .labelText,#mermaid-svg-cmILyBYfpLAPnDl4 .labelText>tspan{fill:black;stroke:none;}#mermaid-svg-cmILyBYfpLAPnDl4 .loopText,#mermaid-svg-cmILyBYfpLAPnDl4 .loopText>tspan{fill:black;stroke:none;}#mermaid-svg-cmILyBYfpLAPnDl4 .loopLine{stroke-width:2px;stroke-dasharray:2,2;stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);}#mermaid-svg-cmILyBYfpLAPnDl4 .note{stroke:#aaaa33;fill:#fff5ad;}#mermaid-svg-cmILyBYfpLAPnDl4 .noteText,#mermaid-svg-cmILyBYfpLAPnDl4 .noteText>tspan{fill:black;stroke:none;}#mermaid-svg-cmILyBYfpLAPnDl4 .activation0{fill:#f4f4f4;stroke:#666;}#mermaid-svg-cmILyBYfpLAPnDl4 .activation1{fill:#f4f4f4;stroke:#666;}#mermaid-svg-cmILyBYfpLAPnDl4 .activation2{fill:#f4f4f4;stroke:#666;}#mermaid-svg-cmILyBYfpLAPnDl4 .actorPopupMenu{position:absolute;}#mermaid-svg-cmILyBYfpLAPnDl4 .actorPopupMenuPanel{position:absolute;fill:#ECECFF;box-shadow:0px 8px 16px 0px rgba(0,0,0,0.2);filter:drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4));}#mermaid-svg-cmILyBYfpLAPnDl4 .actor-man line{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-cmILyBYfpLAPnDl4 .actor-man circle,#mermaid-svg-cmILyBYfpLAPnDl4 line{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;stroke-width:2px;}#mermaid-svg-cmILyBYfpLAPnDl4 :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 从现在开始,所有数据都是加密的! 你好!我想建立安全连接 (Client Hello: 支持的加密套件列表) 好的!用这个加密套件 (Server Hello + 服务器证书) 验证服务器证书 1. 证书是否由可信CA签发? 2. 域名是否匹配? 3. 是否过期? 用你的公钥加密一个"会话密钥" (加密后的Pre-Master Secret) 用私钥解密得到会话密钥 好的!开始加密通信 (Finished - 加密握手消息确认) 开始用会话密钥加密通信 (Application Data over TLS)

简化版(用生活例子理解)

复制代码
你: "我要寄个保险箱给你,你能打开吗?"
服务器: "这是我的锁🔒(公钥),只有我有钥匙🔑(私钥)能打开"
你: 把贵重物品放进保险箱,用服务器的锁锁上
你: "保险箱锁好了,寄给你!"
服务器: 用自己的钥匙打开 → 看到内容
第三者: 即使拿到保险箱,没有钥匙也打不开!

🔍 安全测试人员必须知道的HTTPS知识

1. 混合加密机制

复制代码
HTTPS 用了两种加密方式:

非对称加密(公钥+私钥):
  - 用于握手阶段,交换会话密钥
  - 速度慢,但安全
  - 比如 RSA, ECDSA
  
对称加密(同一密钥加解密):
  - 用于握手后的数据通信
  - 速度快
  - 比如 AES, ChaCha20
  
完美搭配: 用非对称加密安全地传递密钥
          再用对称密钥加密后续的海量数据

2. SSL/TLS 证书验证

复制代码
当Burp Suite拦截HTTPS流量时,它在做什么?

正常情况:
  浏览器 → 网站的证书 → 验证通过 → 建立加密连接

使用Burp时:
  浏览器 → Burp的假证书 → 浏览器信任了Burp的CA → 建立加密连接
         → Burp解密流量 → 再用网站真证书请求网站 → 拿到响应
         → Burp加密响应 → 返回给浏览器

⚠️ 这就是为什么你要安装Burp的CA证书------
    你告诉浏览器"信任Burp",Burp才能解密HTTPS!

3. 常见的TLS配置问题(安全测试检查点)

bash 复制代码
# 检查目标HTTPS配置是否安全
nmap --script ssl-enum-ciphers -p 443 target.com

# 输出将会显示:
# - 支持的TLS版本(TLS 1.2/1.3? 还是过时的SSLv3?)
# - 支持的加密套件(是否支持弱加密?)
# - 是否支持前向安全性

# 安全配置基准:
✅ 支持 TLS 1.2 和 TLS 1.3
✅ 禁用 SSLv2, SSLv3, TLS 1.0, TLS 1.1
✅ 禁用弱加密套件(RC4, DES, 3DES)
✅ 使用前向保密(ECDHE/DHE)
✅ HSTS头部配置

⚠️ HTTPS不等同于"安全"

很多初学者会犯的错误:以为网站用了HTTPS就是安全的
渲染错误: Mermaid 渲染失败: Parse error on line 8: ...--> P4[身份认证漏洞仍然有

一句话 :HTTPS只保证你的数据"在传输过程中"不被偷看或篡改。但应用的漏洞一个都不少------就像你把钱装进了防弹运钞车,但如果运钞员监守自盗(业务逻辑漏洞),运钞车再结实也没用。


11.3 网络排查工具 --- 理解"为什么连不上"

🔧 日常排查

bash 复制代码
# 1. ping --- 目标"还活着"吗?
ping -c 4 target.com
# 有回复 → 网络通畅
# 没回复 → 可能目标挂了/防火墙拦截/网络不通

# 2. traceroute --- 看看数据怎么走的
traceroute target.com
# 显示每一跳的路由器
# 安全用途: 判断CDN、判断目标是否用了云服务

# 3. curl --- 模拟HTTP请求
curl -v http://target.com  # 显示详细的请求和响应
curl -k https://target.com # 跳过证书验证(测试用)
curl -x http://127.0.0.1:8080 target.com # 通过代理发送

# 4. nc (netcat) --- TCP的"瑞士军刀"
nc -v target.com 80        # 测试80端口是否开放
echo "GET / HTTP/1.1\r\nHost: target.com\r\n\r\n" | nc target.com 80
# 手动发送HTTP请求(不经过浏览器)

📝 本章小结

#mermaid-svg-OpaYj38nA4dd80qM{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-OpaYj38nA4dd80qM .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-OpaYj38nA4dd80qM .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-OpaYj38nA4dd80qM .error-icon{fill:#552222;}#mermaid-svg-OpaYj38nA4dd80qM .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-OpaYj38nA4dd80qM .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-OpaYj38nA4dd80qM .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-OpaYj38nA4dd80qM .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-OpaYj38nA4dd80qM .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-OpaYj38nA4dd80qM .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-OpaYj38nA4dd80qM .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-OpaYj38nA4dd80qM .marker{fill:#333333;stroke:#333333;}#mermaid-svg-OpaYj38nA4dd80qM .marker.cross{stroke:#333333;}#mermaid-svg-OpaYj38nA4dd80qM svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-OpaYj38nA4dd80qM p{margin:0;}#mermaid-svg-OpaYj38nA4dd80qM .edge{stroke-width:3;}#mermaid-svg-OpaYj38nA4dd80qM .section--1 rect,#mermaid-svg-OpaYj38nA4dd80qM .section--1 path,#mermaid-svg-OpaYj38nA4dd80qM .section--1 circle,#mermaid-svg-OpaYj38nA4dd80qM .section--1 polygon,#mermaid-svg-OpaYj38nA4dd80qM .section--1 path{fill:hsl(240, 100%, 76.2745098039%);}#mermaid-svg-OpaYj38nA4dd80qM .section--1 text{fill:#ffffff;}#mermaid-svg-OpaYj38nA4dd80qM .node-icon--1{font-size:40px;color:#ffffff;}#mermaid-svg-OpaYj38nA4dd80qM .section-edge--1{stroke:hsl(240, 100%, 76.2745098039%);}#mermaid-svg-OpaYj38nA4dd80qM .edge-depth--1{stroke-width:17;}#mermaid-svg-OpaYj38nA4dd80qM .section--1 line{stroke:hsl(60, 100%, 86.2745098039%);stroke-width:3;}#mermaid-svg-OpaYj38nA4dd80qM .disabled,#mermaid-svg-OpaYj38nA4dd80qM .disabled circle,#mermaid-svg-OpaYj38nA4dd80qM .disabled text{fill:lightgray;}#mermaid-svg-OpaYj38nA4dd80qM .disabled text{fill:#efefef;}#mermaid-svg-OpaYj38nA4dd80qM .section-0 rect,#mermaid-svg-OpaYj38nA4dd80qM .section-0 path,#mermaid-svg-OpaYj38nA4dd80qM .section-0 circle,#mermaid-svg-OpaYj38nA4dd80qM .section-0 polygon,#mermaid-svg-OpaYj38nA4dd80qM .section-0 path{fill:hsl(60, 100%, 73.5294117647%);}#mermaid-svg-OpaYj38nA4dd80qM .section-0 text{fill:black;}#mermaid-svg-OpaYj38nA4dd80qM .node-icon-0{font-size:40px;color:black;}#mermaid-svg-OpaYj38nA4dd80qM .section-edge-0{stroke:hsl(60, 100%, 73.5294117647%);}#mermaid-svg-OpaYj38nA4dd80qM .edge-depth-0{stroke-width:14;}#mermaid-svg-OpaYj38nA4dd80qM .section-0 line{stroke:hsl(240, 100%, 83.5294117647%);stroke-width:3;}#mermaid-svg-OpaYj38nA4dd80qM .disabled,#mermaid-svg-OpaYj38nA4dd80qM .disabled circle,#mermaid-svg-OpaYj38nA4dd80qM .disabled text{fill:lightgray;}#mermaid-svg-OpaYj38nA4dd80qM .disabled text{fill:#efefef;}#mermaid-svg-OpaYj38nA4dd80qM .section-1 rect,#mermaid-svg-OpaYj38nA4dd80qM .section-1 path,#mermaid-svg-OpaYj38nA4dd80qM .section-1 circle,#mermaid-svg-OpaYj38nA4dd80qM .section-1 polygon,#mermaid-svg-OpaYj38nA4dd80qM .section-1 path{fill:hsl(80, 100%, 76.2745098039%);}#mermaid-svg-OpaYj38nA4dd80qM .section-1 text{fill:black;}#mermaid-svg-OpaYj38nA4dd80qM .node-icon-1{font-size:40px;color:black;}#mermaid-svg-OpaYj38nA4dd80qM .section-edge-1{stroke:hsl(80, 100%, 76.2745098039%);}#mermaid-svg-OpaYj38nA4dd80qM .edge-depth-1{stroke-width:11;}#mermaid-svg-OpaYj38nA4dd80qM .section-1 line{stroke:hsl(260, 100%, 86.2745098039%);stroke-width:3;}#mermaid-svg-OpaYj38nA4dd80qM .disabled,#mermaid-svg-OpaYj38nA4dd80qM .disabled circle,#mermaid-svg-OpaYj38nA4dd80qM .disabled text{fill:lightgray;}#mermaid-svg-OpaYj38nA4dd80qM .disabled text{fill:#efefef;}#mermaid-svg-OpaYj38nA4dd80qM .section-2 rect,#mermaid-svg-OpaYj38nA4dd80qM .section-2 path,#mermaid-svg-OpaYj38nA4dd80qM .section-2 circle,#mermaid-svg-OpaYj38nA4dd80qM .section-2 polygon,#mermaid-svg-OpaYj38nA4dd80qM .section-2 path{fill:hsl(270, 100%, 76.2745098039%);}#mermaid-svg-OpaYj38nA4dd80qM .section-2 text{fill:#ffffff;}#mermaid-svg-OpaYj38nA4dd80qM .node-icon-2{font-size:40px;color:#ffffff;}#mermaid-svg-OpaYj38nA4dd80qM .section-edge-2{stroke:hsl(270, 100%, 76.2745098039%);}#mermaid-svg-OpaYj38nA4dd80qM .edge-depth-2{stroke-width:8;}#mermaid-svg-OpaYj38nA4dd80qM .section-2 line{stroke:hsl(90, 100%, 86.2745098039%);stroke-width:3;}#mermaid-svg-OpaYj38nA4dd80qM .disabled,#mermaid-svg-OpaYj38nA4dd80qM .disabled circle,#mermaid-svg-OpaYj38nA4dd80qM .disabled text{fill:lightgray;}#mermaid-svg-OpaYj38nA4dd80qM .disabled text{fill:#efefef;}#mermaid-svg-OpaYj38nA4dd80qM .section-3 rect,#mermaid-svg-OpaYj38nA4dd80qM .section-3 path,#mermaid-svg-OpaYj38nA4dd80qM .section-3 circle,#mermaid-svg-OpaYj38nA4dd80qM .section-3 polygon,#mermaid-svg-OpaYj38nA4dd80qM .section-3 path{fill:hsl(300, 100%, 76.2745098039%);}#mermaid-svg-OpaYj38nA4dd80qM .section-3 text{fill:black;}#mermaid-svg-OpaYj38nA4dd80qM .node-icon-3{font-size:40px;color:black;}#mermaid-svg-OpaYj38nA4dd80qM .section-edge-3{stroke:hsl(300, 100%, 76.2745098039%);}#mermaid-svg-OpaYj38nA4dd80qM .edge-depth-3{stroke-width:5;}#mermaid-svg-OpaYj38nA4dd80qM .section-3 line{stroke:hsl(120, 100%, 86.2745098039%);stroke-width:3;}#mermaid-svg-OpaYj38nA4dd80qM .disabled,#mermaid-svg-OpaYj38nA4dd80qM .disabled circle,#mermaid-svg-OpaYj38nA4dd80qM .disabled text{fill:lightgray;}#mermaid-svg-OpaYj38nA4dd80qM .disabled text{fill:#efefef;}#mermaid-svg-OpaYj38nA4dd80qM .section-4 rect,#mermaid-svg-OpaYj38nA4dd80qM .section-4 path,#mermaid-svg-OpaYj38nA4dd80qM .section-4 circle,#mermaid-svg-OpaYj38nA4dd80qM .section-4 polygon,#mermaid-svg-OpaYj38nA4dd80qM .section-4 path{fill:hsl(330, 100%, 76.2745098039%);}#mermaid-svg-OpaYj38nA4dd80qM .section-4 text{fill:black;}#mermaid-svg-OpaYj38nA4dd80qM .node-icon-4{font-size:40px;color:black;}#mermaid-svg-OpaYj38nA4dd80qM .section-edge-4{stroke:hsl(330, 100%, 76.2745098039%);}#mermaid-svg-OpaYj38nA4dd80qM .edge-depth-4{stroke-width:2;}#mermaid-svg-OpaYj38nA4dd80qM .section-4 line{stroke:hsl(150, 100%, 86.2745098039%);stroke-width:3;}#mermaid-svg-OpaYj38nA4dd80qM .disabled,#mermaid-svg-OpaYj38nA4dd80qM .disabled circle,#mermaid-svg-OpaYj38nA4dd80qM .disabled text{fill:lightgray;}#mermaid-svg-OpaYj38nA4dd80qM .disabled text{fill:#efefef;}#mermaid-svg-OpaYj38nA4dd80qM .section-5 rect,#mermaid-svg-OpaYj38nA4dd80qM .section-5 path,#mermaid-svg-OpaYj38nA4dd80qM .section-5 circle,#mermaid-svg-OpaYj38nA4dd80qM .section-5 polygon,#mermaid-svg-OpaYj38nA4dd80qM .section-5 path{fill:hsl(0, 100%, 76.2745098039%);}#mermaid-svg-OpaYj38nA4dd80qM .section-5 text{fill:black;}#mermaid-svg-OpaYj38nA4dd80qM .node-icon-5{font-size:40px;color:black;}#mermaid-svg-OpaYj38nA4dd80qM .section-edge-5{stroke:hsl(0, 100%, 76.2745098039%);}#mermaid-svg-OpaYj38nA4dd80qM .edge-depth-5{stroke-width:-1;}#mermaid-svg-OpaYj38nA4dd80qM .section-5 line{stroke:hsl(180, 100%, 86.2745098039%);stroke-width:3;}#mermaid-svg-OpaYj38nA4dd80qM .disabled,#mermaid-svg-OpaYj38nA4dd80qM .disabled circle,#mermaid-svg-OpaYj38nA4dd80qM .disabled text{fill:lightgray;}#mermaid-svg-OpaYj38nA4dd80qM .disabled text{fill:#efefef;}#mermaid-svg-OpaYj38nA4dd80qM .section-6 rect,#mermaid-svg-OpaYj38nA4dd80qM .section-6 path,#mermaid-svg-OpaYj38nA4dd80qM .section-6 circle,#mermaid-svg-OpaYj38nA4dd80qM .section-6 polygon,#mermaid-svg-OpaYj38nA4dd80qM .section-6 path{fill:hsl(30, 100%, 76.2745098039%);}#mermaid-svg-OpaYj38nA4dd80qM .section-6 text{fill:black;}#mermaid-svg-OpaYj38nA4dd80qM .node-icon-6{font-size:40px;color:black;}#mermaid-svg-OpaYj38nA4dd80qM .section-edge-6{stroke:hsl(30, 100%, 76.2745098039%);}#mermaid-svg-OpaYj38nA4dd80qM .edge-depth-6{stroke-width:-4;}#mermaid-svg-OpaYj38nA4dd80qM .section-6 line{stroke:hsl(210, 100%, 86.2745098039%);stroke-width:3;}#mermaid-svg-OpaYj38nA4dd80qM .disabled,#mermaid-svg-OpaYj38nA4dd80qM .disabled circle,#mermaid-svg-OpaYj38nA4dd80qM .disabled text{fill:lightgray;}#mermaid-svg-OpaYj38nA4dd80qM .disabled text{fill:#efefef;}#mermaid-svg-OpaYj38nA4dd80qM .section-7 rect,#mermaid-svg-OpaYj38nA4dd80qM .section-7 path,#mermaid-svg-OpaYj38nA4dd80qM .section-7 circle,#mermaid-svg-OpaYj38nA4dd80qM .section-7 polygon,#mermaid-svg-OpaYj38nA4dd80qM .section-7 path{fill:hsl(90, 100%, 76.2745098039%);}#mermaid-svg-OpaYj38nA4dd80qM .section-7 text{fill:black;}#mermaid-svg-OpaYj38nA4dd80qM .node-icon-7{font-size:40px;color:black;}#mermaid-svg-OpaYj38nA4dd80qM .section-edge-7{stroke:hsl(90, 100%, 76.2745098039%);}#mermaid-svg-OpaYj38nA4dd80qM .edge-depth-7{stroke-width:-7;}#mermaid-svg-OpaYj38nA4dd80qM .section-7 line{stroke:hsl(270, 100%, 86.2745098039%);stroke-width:3;}#mermaid-svg-OpaYj38nA4dd80qM .disabled,#mermaid-svg-OpaYj38nA4dd80qM .disabled circle,#mermaid-svg-OpaYj38nA4dd80qM .disabled text{fill:lightgray;}#mermaid-svg-OpaYj38nA4dd80qM .disabled text{fill:#efefef;}#mermaid-svg-OpaYj38nA4dd80qM .section-8 rect,#mermaid-svg-OpaYj38nA4dd80qM .section-8 path,#mermaid-svg-OpaYj38nA4dd80qM .section-8 circle,#mermaid-svg-OpaYj38nA4dd80qM .section-8 polygon,#mermaid-svg-OpaYj38nA4dd80qM .section-8 path{fill:hsl(150, 100%, 76.2745098039%);}#mermaid-svg-OpaYj38nA4dd80qM .section-8 text{fill:black;}#mermaid-svg-OpaYj38nA4dd80qM .node-icon-8{font-size:40px;color:black;}#mermaid-svg-OpaYj38nA4dd80qM .section-edge-8{stroke:hsl(150, 100%, 76.2745098039%);}#mermaid-svg-OpaYj38nA4dd80qM .edge-depth-8{stroke-width:-10;}#mermaid-svg-OpaYj38nA4dd80qM .section-8 line{stroke:hsl(330, 100%, 86.2745098039%);stroke-width:3;}#mermaid-svg-OpaYj38nA4dd80qM .disabled,#mermaid-svg-OpaYj38nA4dd80qM .disabled circle,#mermaid-svg-OpaYj38nA4dd80qM .disabled text{fill:lightgray;}#mermaid-svg-OpaYj38nA4dd80qM .disabled text{fill:#efefef;}#mermaid-svg-OpaYj38nA4dd80qM .section-9 rect,#mermaid-svg-OpaYj38nA4dd80qM .section-9 path,#mermaid-svg-OpaYj38nA4dd80qM .section-9 circle,#mermaid-svg-OpaYj38nA4dd80qM .section-9 polygon,#mermaid-svg-OpaYj38nA4dd80qM .section-9 path{fill:hsl(180, 100%, 76.2745098039%);}#mermaid-svg-OpaYj38nA4dd80qM .section-9 text{fill:black;}#mermaid-svg-OpaYj38nA4dd80qM .node-icon-9{font-size:40px;color:black;}#mermaid-svg-OpaYj38nA4dd80qM .section-edge-9{stroke:hsl(180, 100%, 76.2745098039%);}#mermaid-svg-OpaYj38nA4dd80qM .edge-depth-9{stroke-width:-13;}#mermaid-svg-OpaYj38nA4dd80qM .section-9 line{stroke:hsl(0, 100%, 86.2745098039%);stroke-width:3;}#mermaid-svg-OpaYj38nA4dd80qM .disabled,#mermaid-svg-OpaYj38nA4dd80qM .disabled circle,#mermaid-svg-OpaYj38nA4dd80qM .disabled text{fill:lightgray;}#mermaid-svg-OpaYj38nA4dd80qM .disabled text{fill:#efefef;}#mermaid-svg-OpaYj38nA4dd80qM .section-10 rect,#mermaid-svg-OpaYj38nA4dd80qM .section-10 path,#mermaid-svg-OpaYj38nA4dd80qM .section-10 circle,#mermaid-svg-OpaYj38nA4dd80qM .section-10 polygon,#mermaid-svg-OpaYj38nA4dd80qM .section-10 path{fill:hsl(210, 100%, 76.2745098039%);}#mermaid-svg-OpaYj38nA4dd80qM .section-10 text{fill:black;}#mermaid-svg-OpaYj38nA4dd80qM .node-icon-10{font-size:40px;color:black;}#mermaid-svg-OpaYj38nA4dd80qM .section-edge-10{stroke:hsl(210, 100%, 76.2745098039%);}#mermaid-svg-OpaYj38nA4dd80qM .edge-depth-10{stroke-width:-16;}#mermaid-svg-OpaYj38nA4dd80qM .section-10 line{stroke:hsl(30, 100%, 86.2745098039%);stroke-width:3;}#mermaid-svg-OpaYj38nA4dd80qM .disabled,#mermaid-svg-OpaYj38nA4dd80qM .disabled circle,#mermaid-svg-OpaYj38nA4dd80qM .disabled text{fill:lightgray;}#mermaid-svg-OpaYj38nA4dd80qM .disabled text{fill:#efefef;}#mermaid-svg-OpaYj38nA4dd80qM .section-root rect,#mermaid-svg-OpaYj38nA4dd80qM .section-root path,#mermaid-svg-OpaYj38nA4dd80qM .section-root circle,#mermaid-svg-OpaYj38nA4dd80qM .section-root polygon{fill:hsl(240, 100%, 46.2745098039%);}#mermaid-svg-OpaYj38nA4dd80qM .section-root text{fill:#ffffff;}#mermaid-svg-OpaYj38nA4dd80qM .section-root span{color:#ffffff;}#mermaid-svg-OpaYj38nA4dd80qM .section-2 span{color:#ffffff;}#mermaid-svg-OpaYj38nA4dd80qM .icon-container{height:100%;display:flex;justify-content:center;align-items:center;}#mermaid-svg-OpaYj38nA4dd80qM .edge{fill:none;}#mermaid-svg-OpaYj38nA4dd80qM .mindmap-node-label{dy:1em;alignment-baseline:middle;text-anchor:middle;dominant-baseline:middle;text-align:center;}#mermaid-svg-OpaYj38nA4dd80qM :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 网络基础
TCP/IP模型
应用层-HTTP/HTTPS
传输层-TCP/UDP
网络层-IP地址
链路层-MAC地址
端口
80-HTTP
443-HTTPS
22-SSH
3306-MySQL
HTTPS
TLS握手
证书验证
混合加密
不是完整的"安全"
排查工具
ping连通性
nc端口测试
curl请求模拟
traceroute路由

🧠 本章练习

练习1:端口扫描实操

选择一个你授权的目标,使用 Nmap 扫描:

bash 复制代码
nmap -sV -sC -p 22,80,443,8080 target.com
  1. 开了哪些端口?
  2. 每个端口上是什么服务?
  3. 有没有意料之外的端口?
    练习2:HTTPS配置检查

使用在线工具(如 SSL Labs)或 Nmap 检查目标站点的 HTTPS 配置:

bash 复制代码
nmap --script ssl-enum-ciphers -p 443 target.com
  1. 支持哪些TLS版本?
  2. 有没有不安全的加密套件?
  3. 有没有配置HSTS?
    练习3:用curl绕过代理
bash 复制代码
# 不经过代理,直接请求(绕过Burp)
curl -k https://target.com

# 经过代理
curl -x http://127.0.0.1:8080 -k https://target.com

观察两种方式的结果有什么不同?


返回目录

相关推荐
IpdataCloud3 小时前
担心IP暴露隐私?用安全IP查询工具自查,三步配置网络出口
网络·tcp/ip·安全·ip
xy34533 小时前
wireshark 如何捕获信息
网络·测试工具·渗透测试·wireshark
2601_963771373 小时前
How to Scale Your WordPress Store Traffic in 2026
前端·php·plugin
玖玥拾4 小时前
C# 语言进阶(十五)C# 游戏服务端 MySQL 数据库
服务器·开发语言·网络·数据库·mysql·c#
一个有温度的技术博主6 小时前
【VulnHub 实战】DC-1 靶机渗透测试笔记(一):信息收集与主机发现
服务器·网络·笔记
白帽小阳6 小时前
2026前端面试题!(附答案及解析)
javascript·网络·python·安全·web安全·网络安全·护网行动
右耳朵猫AI7 小时前
PHP周刊2026W28 | 安全更新、Laravel 13.18、Twig 3.28
开发语言·php·laravel
罗政7 小时前
PDF 批量合并工具:本地 AI 自动排序、识别正文日期与合同编号
数据库·pdf·php
hehelm8 小时前
Linux网络编程—TCP字典翻译系统
linux·开发语言·网络·c++·tcp/ip
持力行8 小时前
D-BUS会话总线
运维·网络