依靠 VPN 生存——探索 VPN 后利用技术

执行摘要

在这篇博文中,Akamai 研究人员强调了被忽视的 VPN 后利用威胁;也就是说,我们讨论了威胁行为者在入侵 VPN 服务器后可以用来进一步升级入侵的技术。

我们的发现包括影响 Ivanti Connect Secure 和 FortiGate VPN 的几个漏洞。

除了漏洞之外,我们还详细介绍了一组可能影响 Ivanti Connect Secure 和 FortiGate 产品以及其他 VPN 服务器的无修复技术。

我们的研究表明,在许多情况下,受到感染的 VPN 服务器可以让攻击者轻松控制网络中的其他关键资产。

这篇博文旨在提高人们对这些风险的认识,并提出防御者应遵循的最佳实践,以最大限度地降低 VPN 后利用技术的风险。
介绍
我们都听过这样的故事:VPN 服务器中发现了一个严重漏洞。该漏洞被广泛利用。管理员匆忙修补。恐慌在社交媒体上蔓延。

去年对于 VPN 安全来说相当艰难——似乎每隔 一个月 就会有一个关键漏洞被修补或被威胁者在野外利用。尽管这种活动在 2023 年显著增加,但这并不是什么新鲜事。攻击者长期以来一直试图利用 VPN 服务器,因为它们可以通过互联网访问,暴露了丰富的攻击面,而且通常缺乏安全性和监控。

从历史上看,VPN服务器主要被滥用来实现一个目标 — 初始访问。攻击者会破坏面向互联网的 VPN 服务器,并将其作为进入内部网络的滩头阵地,从而进行入侵。

虽然这种方法非常有效,但我们还是问自己:对 VPN 服务器的控制是否应该仅仅被视为网络的网关?

我们想看看还有什么可能。

以下博客文章探讨了 VPN 后利用技术,这些技术可被已经通过其他手段(漏洞、窃取凭证等)入侵 VPN 服务器的攻击者利用来实现其他目标。

依靠 VPN 生活

威胁行为者执行后利用技术的主要方法是针对设备的操作系统。获得远程代码执行 (RCE) 后,攻击者可以在设备操作系统上植入自定义植入物。从这一点开始,威胁行为者可以控制 VPN 的各个方面;例如,他们可以挂钩函数以泄露敏感信息,尝试通过操纵日志来逃避检测,或者修改系统配置以保持设备上的持久性。

虽然这种方法有很多优点,但它也有一个主要缺点——成本高昂。由于设备通常运行在定制的强化操作系统上,因此开发和维护 VPN 设备的定制植入物所需的工作量可能很大。这意味着 VPN 后利用技术通常仅由顶级国家威胁行为者使用。

探索不同的方法

我们决定探索一种不同的方法——一种“更简单”的 VPN 后利用形式。我们决定滥用设备的现有功能,而不是依赖在操作系统上运行的自定义植入。我们问自己:攻击者在仅使用 VPN 管理界面时能做什么?

这种方法,我们称之为“依靠 VPN 生活”,至少有两个优点。

这种类型的访问比完整的 RCE 更容易获得——可以通过身份验证绕过漏洞、弱凭证或网络钓鱼获得对管理界面的访问权限。

这种方法更具成本效益,因为我们避免了开发自定义有效载荷的努力。

作为我们的测试对象,我们选择市场上领先的两款 VPN 服务器——Ivanti Connect Secure 和 FortiGate。我们发现了 2 个 CVE 和一组不可修复技术,这些技术可被控制 VPN 服务器的攻击者用来接管网络中的其他关键资产,从而有可能将VPN 入侵转变为整个网络入侵。

虽然我们的研究结果主要集中在 FortiGate 和 Ivanti 上,但我们相信,我们发现的技术变体可能与其他 VPN 服务器和边缘设备相关。

滥用远程身份验证服务器

VPN 服务器处理的一些最有趣的资产是外部凭证。尽管 VPN 服务器支持使用本地用户进行身份验证,但在许多情况下会使用外部身份验证服务器。

管理员可以选择使用现有的身份提供商来验证用户身份,而不是为每个用户维护一组单独的凭证。用户将其“正常”凭证发送到 VPN 服务器,然后通过远程身份验证服务器进行验证(图 1)。


为此目的可以使用几种类型的身份验证服务器 - 其中主要的两个选项是 LDAP 和 RADIUS。

我们发现了一些技术,这些技术可以让攻击者利用这种行为来破坏这些外部凭证,从而有可能让攻击者获得对网络中其他资源的访问权限。

拦截 LDAP 凭证

VPN 的一个非常流行的身份验证服务器选项是 LDAP,最常见的是 Active Directory (AD) 域控制器。通过此配置,用户可以通过其域凭据访问 VPN,这是一个非常方便的选择。

配置 LDAP 身份验证服务器时,需要提供 AD 服务帐户的凭据,以允许 VPN 查询用户信息。FortiGate 中此配置的示例如图 2 所示。


当用户尝试使用 LDAP 凭据向 FortiGate 或 Ivanti 进行身份验证时

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ETAS工具链自动化实战指南<二>

----自动化不仅是一种技术,更是一种思维方式,它将帮助我们在快节奏的工作环境中保持领先! 目录 往期推荐 RTA-A2L工具概览 RTA-A2L的输出文件 常用命令行参数 场景1:通过 MCSD 文件来生成 .a2l 文件并更新地址 命令用法 命…

比Maven快2~10倍的编译工具mvnd简介与实战

概述 maven-mvnd,可简称(或缩写)mvnd,the Maven Daemon。Apache Maven团队借鉴Gradle和Takari后开发的更快的构建工具。mvnd内嵌Maven,开发者可无缝从Maven迁移到mvnd。 参考资料:GitHub。 mvnd中会启动…

【数据结构篇】~二叉树(堆)

【数据结构篇】~二叉树(堆) 二叉树1.树2.树的组成3.二叉树4.堆1.向上调整算法2.向下调整算法3.堆排序 4.topk问题源码 二叉树 1.树 树的概念与结构​ 树是一种非线性的数据结构,它是由 n(n>0) 个有限结点组成一个…

BUG——GT911上电后中断一直触发

版型:正点原子 I.MX6UL MINI板 屏幕:7寸 1024*600 ATK-MD0700R V1.4 我的建议是买7寸屏幕就不要Mini板,因为Mini板太小装不下7寸屏幕,你需要一个更大的板子 简介: 算是作为一个后来者对这一现象的补充。解决方案就…

linux memory cgroup的memory.move_charge_at_immigrate含义

1.内核文档 上面的例子说明: 最开始某个进程是在cgroup A中,后面要迁移到cgroup B中,那么进程的内存计数是否要完全迁入B中,就是通过memory.move_charge_at_immigrate控制,如果目标cgroup也就是B设置了1到该字段中&am…

DBeaver安装使用

文章目录 简介支持的数据库支持的系统 下载安装DBeaver使用修改Maven下载jar地址窗口->首选项连接->驱动->Maven配置仓库地址 选择需要连接的数据库进行连接 简介 DBeaver 是一个通用的数据库管理工具和 SQL 客户端,支持 MySQL, PostgreSQL, Oracle, DB2,…

进存销系统

摘 要 伴随着我国全面推动信息化的趋势,我国的很多行业都在朝着互联网的方向进发。商品销售行业也有很多挑战。这次论文介绍的进存销系统就是为了能够解决当前传统商品进存销存在的问题,使得商品进存销能够更加有效率。电商智能化管理必不可少的帮手有进…

【VIsion Master】机器视觉软件二次开发(C#版本)学习笔记

0.前言 最近接手新项目,用海康威视旗下的HIK ROBOT Vision Master机器视觉软件做二次开发相关的项目,写一篇博客记录一下学习过程。 参考视频:https://www.bilibili.com/video/BV1tq4y1j7RP?p1 其他参考资料:软件自带的开发文档…

学习2d直线拟合-2

参考文章 直线拟合算法(续:加权最小二乘)_加权拟合直线法-CSDN博客 对比了参考文中和opencv中的直线拟合权重,不知道理解的对不对,前者是权重平方,后者没有平方 QtWidgetsApplication1::QtWidgetsApplic…

Excel中的“块”操作

在Excel中,有offset、index、indirect三个对“区域”操作的函数,是较高版本Excel中“块”操作的利器。 (笔记模板由python脚本于2024年08月20日 19:25:21创建,本篇笔记适合喜欢用Excel处理数据的coder翻阅) 【学习的细节是欢悦的历程】 Pytho…

幅频特性曲线分析及使用WPF绘制

文章目录 1、一阶惯性环节的幅频特性曲线分析及绘制2、二阶系统的幅频特性曲线分析及绘制3、一般的系统4、上位机代码实现4.1 一阶惯性系统4.2 二阶系统 5、稳定裕度5.1 幅值裕度5.2 相角裕度 参考 1、一阶惯性环节的幅频特性曲线分析及绘制 这里的a和b可以根据系统的不同修改,…

网络udp及ipc内存共享

大字符串找小字符串 调试 1. 信号处理函数注册:•一旦使用 signal 函数注册了信号处理函数,该函数就会一直有效,直到程序结束或者显式地取消注册。2. 注册多次的影响:•如果多次注册同一信号的处理函数,最后一次注册的…

【记录】基于Windows系统安装rust环境的过程

到官网下载安装包【入门 - Rust 程序设计语言 (rust-lang.org)】 ![[Pasted image 20240703142911.png]] 选择1,快速安装 选择编译配置,1为标准 安装完成 验证是否安装完毕 rustc --versioncargo --version验证成功!

UneMeta创始人讲述自己在Web3+IP领域创业的心路历程

昨日,UneMeta创始人,Ann_tyrion在X分享了一篇推文,分享了自己在探索Web3与IP产业结合过程中的心路历程,她并没有像很多项目方那样一味的讲述宏大的叙事,而是字里行间透露出对这个行业的探索和不断给自己充实信念&#…

自动操作一键数据恢复/电子取证

对磁盘模拟扫描修复丢失数据的实验。 先挂载题目磁盘VHD。 Windows系统中打开磁盘管理,-操作,-附加VHD 可以看到已经加载出题目磁盘,接下来打开RStudio数据恢复软件,对其进行扫描。 操作找回丢失/被删除的数据 可以看到已经加载出…

DRF——pagination分页模块

文章目录 分页继承APIView类用法1.PageNumberPagination2.LimitOffsetPagination3.CursorPagination 继承GenericAPIView派生类用法1.PageNumberPagination2.LimitOffsetPagination3.CursorPagination 分页 在查看数据列表的API中,如果 数据量 比较大,肯…

【前端基础篇】JavaScript之DOM介绍

文章目录 WebAPI背景知识什么是WebAPI什么是APIAPI参考文档 DOM基本概念什么是DOMDOM树查找HTML元素方法概览1. document.getElementById(id)2.document.getElementsByTagName(name)3. document.getElementsByClassName(name)4. document.querySelector(CSS选择器)5. document.…

如何免费获取乡镇级边界数据geoJson数据

如何免费获取乡镇级边界数据geoJson数据 我们可以通过 阿里云数据可视化平台 ,可以获取到中国各个省份/区级/县级的json数据,但是区级和县级,并没有包含街道和乡镇的数据 获取乡镇级边界数据 1.下载bigemap全能版 安装好后选择你要导出的…

Graphpad Prism for Mac 医学绘图软件教程

Mac分享吧 文章目录 效果一、下载软件二、开始安装1、双击运行软件,将其从左侧拖入右侧文件夹中,等待安装完毕2、应用程序显示软件图标,表示安装成功 三、运行测试安装完成!!! 效果 一、下载软件 下载软件…

关于jupyter notebook 的输出 (outputs )

jupyter notebook 的输出 (outputs )在元素达到一定的个数后,就会按一行一个元素进行展示,百来个还好,一旦过千,那滚轮势必撸冒烟,所以能不能解决呢? 先看个例子, 一个找质数、合数的函数 cal3&…