安全防御------SSL VPN篇

目录

一、SSL工作过程

1.SSL握手协议的第一阶段

2.SSL握手协议的第二阶段

3.SSL握手协议的第三阶段​编辑

4.SSL握手协议的第四阶段​编辑

二、SSL预主密钥有什么作用?

三、SSL VPN主要用于那些场景?

四、SSL VPN的实现方式有哪些?

1.虚拟网关

2.WEB代理

3.文件共享

4.端口转发

5.网络扩展

五、SSL VPN客户端安全要求有哪些?

1.主机检查

2.缓存清除

3. 认证授权

六、SSL VPN的实现,防火墙需要放行哪些流量?

七、SSL VPN 功能总结​


一、SSL工作过程

SSL(Secure Sockets Layer)是一种用于保护网络通信安全的协议。SSL的工作过程如下:

客户端发起连接请求:客户端向服务器发送连接请求,请求建立一个安全的SSL连接。

服务器响应:服务器接收到客户端的连接请求后,如果支持SSL协议,就会返回一个数字证书。数字证书包含了服务器的公钥以及其他相关信息,用于证明服务器的身份。

客户端验证服务器的证书:客户端会验证服务器返回的证书的有效性和合法性。验证过程包括检查证书的签名是否可信、证书是否过期、域名是否匹配等。如果验证失败,客户端会中止连接,或者提示用户关于证书不受信任的信息。

客户端生成随机数和密钥:客户端会生成一个随机数作为对称加密算法的密钥,并使用服务器的公钥对该密钥进行加密。

服务器解密密钥:服务器使用自己的私钥来解密客户端发来的密钥。

确立加密算法和参数:客户端和服务器根据各自支持的加密算法列表,选择一个适用的对称加密算法和参数,用于之后的数据加密。之后,客户端和服务器都知道使用同一个对称密钥进行通信。

建立SSL连接:客户端通过对称密钥加密算法加密一条消息,并发送给服务器。服务器收到消息后,使用对称密钥解密,确认连接建立成功。此后,客户端和服务器之间的通信将使用对称密钥进行加密和解密。

安全通信:客户端和服务器使用对称密钥进行加密和解密,保证通信的机密性和完整性。加密数据在传输过程中,即使被截获,也无法理解其中的内容。

1.SSL 握手协议的第一阶段

客户端首先发送 client hello 消息到服务端,服务端收到 client hello 信息后,再发送server hello消息到客户端。

随机数: 32 位时间戳 +28 字节随机序列,用于计算摘要信息和预主密钥或主密钥的参数。

会话 ID :一次性会话 ID ,防止重放攻击。

2.SSL 握手协议的第二阶段

服务器的证书:包含服务端公钥的证书,用于客户端给服务端发送信息时加密。

server key exchange 服务端密钥交换:决定密钥交换的方式,比如 DH,RSA ,会包含密钥交换所需的一系列参数。

3.SSL握手协议的第三阶段![](https://img-

blog.csdnimg.cn/9d11d5c7586b4202a36f7089369ffff8.png)

client key exchange客户端密钥交换:根据服务端随机数算出一个pre-master,发给服务器,服务器收到后根据pre-
master密钥生成一个main-matser。

4.SSL握手协议的第四阶段![](https://img-

blog.csdnimg.cn/ace1990435c34844b598edfd21b27ad0.png)

二、SSL预主密钥有什么作用?

预主密钥结合前面发的客户端随机数和服务器端随机数衍生出一个主密钥。然后主密钥会衍生出三个东西:共享密钥(对称加密的密钥);完整性的密钥(认证密钥);初始化向量。

SSL预主密钥(Pre-Master Secret)是在SSL/TLS握手过程中由客户端生成的一个随机数,用于协商会话密钥。它的作用有以下几个方面:

1.安全性:SSL预主密钥的生成是在客户端和服务器之间进行的,而不是通过网络传输。这样可以确保预主密钥在传输过程中不被窃听或篡改,提高了通信的安全性。
2.密钥协商:SSL握手过程中,客户端和服务器使用预主密钥来生成会话密钥(Session
Key)。会话密钥是用于加密和解密数据的对称密钥。通过使用预主密钥,客户端和服务器可以协商出相同的会话密钥,从而实现安全的通信。
3.前向保密:预主密钥的生成过程中使用了随机数和其他密钥材料,这使得预主密钥具有前向保密性质。前向保密意味着即使在将来主密钥被泄漏,之前的会话仍然是安全的,因为会话密钥的生成是基于预主密钥,预主密钥不会被存储或传输,只在握手时生成。

附:预主密钥和主密钥的关系![](https://img-
blog.csdnimg.cn/39bc0890266343eb8397233825817b2c.png)

三、SSL VPN主要用于那些场景?

SSL VPN是以SSL(Secure Sockets Layer)/TLS(Transport Layer
Security)协议为基础,利用标准浏览器都内置支持SSL/TLS的优势,对其应用功能进行扩展的新型VPN。

有浏览器的设备就可以使用 SSL ,进而使用 SSL VPN ,不需要担心客户端问题,所以 SSL VPN 也能称之为无客户端VPN 。 SSL VPN
在 client to Lan场景下 特别有优势。

SSL VPN和IPsec VPN区别:![](https://img-
blog.csdnimg.cn/d32aaa02f3814b48ac5be19e53f11d03.png)

  • IPSec是网络层保证IP通讯而提供的协议族,以网络层为中心
  • SSL是套接字层保护HTTP通讯的协议,以应用层为中心

优势:

四、SSL VPN的实现方式有哪些?

1.虚拟网关![](https://img-

blog.csdnimg.cn/056fa3b3fa1f4cd98103b203a7a24721.png)

SSL VPN每个虚拟网关可以独立管理,可以配置各自的资源,用户、认证方式,访问控制以及管理员。 并且相互隔离。

2. WEB 代理

使用Web代理,用户只需标准的浏览器,终端不需安装任何客户端软件,就能够实现Web资源的安全访问,比如:内网网页浏览、Outlook Web
Access和iNotes访问。

实现过程:

实现方式:

web-link :使用 activeX 控件方式,对页面进行请求

web 改写:将所请求页面上链接进行改写,其他内容不变。

实现结果:

实现对内网 web 资源的安全访问。

内网 web 资源只有私网地址,在不做 NAT 的情况下,可以通过 SSL VPN 实现对其的代理安全访问。

内网 web 资源只有私网地址,在做 NAT 的情况下,公网用户可以实现对其访问,但是 web 资源没有

使用安全传输协议, SSL VPN 可以实现对其 https 安全访问。

3.文件共享

文件共享主要是通过协议转换技术,将网络文件系统NFS(Network File System)转换成HTTPS(Hypertext Transfer
Protocol Secure)协议,用户直接通过浏览器就能够创建和浏览目录,进行新建、下载、上传、修改、删除文件操作。

实现过程:

实现原理

  • 协议转换:无需客户端,直接通过浏览器访问转为内网文件共享的相应协议格式,使用 activeX 控件。

支持协议

  • SMB windows
  • NFS linux

4.端口转发

SSL协议只应用于浏览器,端口转发是SSL协议的应用扩展。端口转发在应用层控制用户可以访问的应用服务(比如Telnet、远程桌面、FTP(File
Transfer Protocol)和Email)。

实现过程:

实现原理:安装
activeX控件,本质是NAT过程。
![](https://img-
blog.csdnimg.cn/4714c074500345e9a1439935e6e241de.png)

提供内网TCP资源的访问,C/S资源

  • 提供丰富的静态端口的TCP应用

单端口单服务:telnet、SSH、MS、RDP、VNC
单端口多服务:notes
多端口多服务:outlook

  • 动态端口TCP应用
  • 提供端口的访问控制

自动安装运行一个
ActiveX控件,获取到管理端配置的端口转发资源列表(目的服务器IP、端口)。控件将客户端发起的TCP报文与资源列表进行比对,当发现报文的目的IP/Port与资源列表中的表项匹配,则截获报文,开启侦听端口(目的端口经过特定算法得出),并将目的地址改写为回环地址,转发到侦听端口。对该报文加密封装,添加私有报文头,将目的地址设为USG的IP地址,经由侦听端口发往USG。USG收到报文进行解密,发往真实的目的服务器端口。USG收到服务器的响应后,再加密封装回传给用户终端的侦听端口。

5.网络扩展

网络扩展功能是基于SSL协议进行的功能扩展,实现了对所有IP应用的支持,用户远程访问内网资源就像访问局域网一样方便。

在用户端安装网络扩展客户端后,客户端生成的虚拟网卡将截获的原始IP报文经过SSL协议封装后转发至虚拟网关,从而使用户的机器如同工作在企业内网一样,用户能够快速、安全地访问企业内网的所有资源(在没有进行ACL(Access
Control List)访问控制限制的情况下)。![](https://img-
blog.csdnimg.cn/8cceeda1bacc4647bce991935cd7c830.png)

访问模式:
三种流量:去对方内网;去互联网;去本地局域网

全路由模式:三种流量都走隧道,代表本地不能访问互联网,也可通过隧道访问,也可访问本地局域网。
分离模式:对方内网流量走隧道,本地局域网流量走物理网卡,互联网流量不能走。意味着能访问对方内网,能访问本地局域网,不能访问互联网。
手动模式:对方内网流量走隧道,本地局域网流量和互联网流量走物理网卡。意味着都能访问,互联网走本地。

五、SSL VPN客户端安全要求有哪些?

终端安全是在请求内网主机上部署一个软件,通过该软件检查终端的安全性包括:主机检查、缓存清除、认证授权。

1.主机检查

  • 杀毒软件检查
  • 防火墙设置检查
  • 注册表检查
  • 端口检查
  • 进程检查
  • 操作系统检查

2.缓存清除

  • internet临时文件
  • 浏览器自动保存密码
  • cookie记录
  • 浏览器访问历史记录
  • 回收站和最近打开的文件
  • 指定文件或文件夹

3. 认证授权

  • vpndb的认证授权
  • 第三方服务认证授权
  • 数字证书的认证
  • 短信辅助认证

六、SSL VPN的实现,防火墙需要放行哪些流量?

1.SSL/TLS协议流量:SSL VPN 使用 SSL/TLS 协议来进行加密通信,因此防火墙需要允许相关的 SSL/TLS
流量通过。通常情况下,这些流量使用 TCP 端口号 443,可以通过防火墙的规则配置进行放行。
2.VPN控制流量:SSL VPN 需要使用一组专门的协议和端口来进行 VPN 连接的建立、终止和维护,如HTTPS、UDP等。具体取决于所采用的 SSL
VPN 解决方案和配置方式,防火墙需要放行相关的控制流量,以便客户端可以与服务器端正确地进行握手和身份验证。
3.VPN数据流量:一旦 SSL VPN 连接建立成功,数据流量将通过 SSL/TLS 隧道进行传输。防火墙需要放行与 VPN
数据流量相关的端口和协议,以确保数据的正常传输。这些端口和协议也视具体的 SSL VPN 实现而有所不同,可以是TCP、UDP或其他协议。
4.认证和授权服务流量:在一些实现中,SSL VPN
可能需要与认证服务器、授权服务器或其他基础设施进行交互,例如LDAP、RADIUS等。防火墙需要放行与此相关的流量,以确保用户的身份验证和授权过程的正常进行。
5.可选的应用程序特定流量:某些 SSL VPN 实现可以支持特定的应用程序代理,允许用户在 VPN
连接上访问特定的应用程序或服务。如果你使用了这样的应用程序代理功能,防火墙可能需要放行该应用程序所使用的额外端口和协议。

需要注意的是,以上流量需根据具体的 SSL VPN 解决方案和部署配置来确定,可能会有差异。建议参考所使用的 SSL VPN
产品的文档或联系供应商以获取准确的配置要求。此外,为了确保安全性,仅放行必要的流量,并遵循最佳安全实践,如限制访问权限、强化身份验证等。

七、SSL VPN 功能总结![](https://img-

blog.csdnimg.cn/23da42a373294584a643a1501de8e3c4.png)

配置:

接下来我将给各位同学划分一张学习计划表!

学习计划

那么问题又来了,作为萌新小白,我应该先学什么,再学什么?
既然你都问的这么直白了,我就告诉你,零基础应该从什么开始学起:

阶段一:初级网络安全工程师

接下来我将给大家安排一个为期1个月的网络安全初级计划,当你学完后,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web渗透、安全服务、安全分析等岗位;其中,如果你等保模块学的好,还可以从事等保工程师。

综合薪资区间6k~15k

1、网络安全理论知识(2天)
①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)

2、渗透测试基础(1周)
①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等

3、操作系统基础(1周)
①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)

4、计算机网络基础(1周)
①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现

5、数据库基础操作(2天)
①数据库基础
②SQL语言基础
③数据库安全加固

6、Web渗透(1周)
①HTML、CSS和JavaScript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)

那么,到此为止,已经耗时1个月左右。你已经成功成为了一名“脚本小子”。那么你还想接着往下探索吗?

阶段二:中级or高级网络安全工程师(看自己能力)

综合薪资区间15k~30k

7、脚本编程学习(4周)
在网络安全领域。是否具备编程能力是“脚本小子”和真正网络安全工程师的本质区别。在实际的渗透测试过程中,面对复杂多变的网络环境,当常用工具不能满足实际需求的时候,往往需要对现有工具进行扩展,或者编写符合我们要求的工具、自动化脚本,这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中,想要高效地使用自制的脚本工具来实现各种目的,更是需要拥有编程能力。

零基础入门的同学,我建议选择脚本语言Python/PHP/Go/Java中的一种,对常用库进行编程学习
搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP,IDE强烈推荐Sublime;

Python编程学习,学习内容包含:语法、正则、文件、 网络、多线程等常用库,推荐《Python核心编程》,没必要看完

用Python编写漏洞的exp,然后写一个简单的网络爬虫

PHP基本语法学习并书写一个简单的博客系统

熟悉MVC架构,并试着学习一个PHP框架或者Python框架 (可选)

了解Bootstrap的布局或者CSS。

阶段三:顶级网络安全工程师

学习资料分享

当然,只给予计划不给予学习资料的行为无异于耍流氓,这里给大家整理了一份【282G】的网络安全工程师从入门到精通的学习资料包,可点击下方二维码链接领取哦。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值