- 博客(21)
- 收藏
- 关注
原创 漏洞12255(缓冲区溢出)、12261(缓冲区溢出)、12258(DoS)
TCP 紧急指针 RCE 漏洞TL;DRTCP 有一种深奥的机制来传输名为紧急数据的 OOB 数据。 通过利用这种机制,攻击者可以使传递给 recv() 系统调用的长度变量即recv() 的一个参数发生下溢,这将导致传递给 recv() 系统调用的缓冲区产生攻击者可控的溢出。 这可能导致在栈、堆或全局数据部分中分配的缓冲区溢出,从而导致远程代码执行。背景知识1 - TCPTCP 是一种传输层协议,是面向字节流的,允许在不可靠的 IP 层上传输有序的字节流,作为 TCP 会话的一部分通过 IP 层传送
2022-11-30 17:29:09
669
1
原创 白皮书笔记八
处理未经请求的反向 ARP 回复 (CVE-2019-12262)发现的最奇怪的漏洞之一是反向 ARP (RARP) 协议中的逻辑错误漏洞。一个处于本地 LAN 上的攻击者可以向目标设备发送未经请求的 RARP 回应数据包(通过其 MAC)。这些反过来又允许他将 IPv4 地址添加到目标设备上接收它们的接口,这可能导致各种拒绝服务攻击。RARP 是早于 DHCP 的旧协议(从 1984 年开始),用于自动网络地址配置。与 DHCP 类似,客户端会广播其要求分配地址的请求,并侦听包含其分配地址的响应。实
2022-04-27 23:33:08
208
原创 白皮书笔记七
五个逻辑错误、DoS 和信息泄漏漏洞除了前面章节中描述的六个 RCE 型漏洞外,我们还发现了另外五个会导致逻辑错误、拒绝服务或信息泄漏的漏洞。这些漏洞在 TCP/IP 堆栈的各个子系统中发现——TCP、IGMP、DHCP,甚至可以在非常古老的反向 ARP(RARP) 协议中发现。下面将具体描述这些漏洞。通过格式错误的 TCP 选项造成 TCP 连接 DoS (CVE-2019-12258)这个问题会影响使用 IPnet 的所有 VxWorks 版本 (6.5及更高版本)。攻击者可以根据一个已存在的
2022-04-27 22:41:15
746
原创 白皮书笔记五
由于竞争条件导致的 TCP 紧急指针状态混淆 (CVE-2019-12263)我们发现的最后一个紧急指针漏洞的变种是影响所有使用 IPnet 堆栈(v6.5 及更高版本)的 VxWorks 设备的竞争条件,并可能导致紧急指针的状态混乱。与前面展示这种状态混淆的结果的示例类似,这种竞争条件可能导致用户任务缓冲区的内存损坏,从而导致在充当 TCP 服务器或 TCP 客户端的目标设备上可触发远程代码执行漏洞。竞争条件的原因是,各种变量作为一个整体来表示紧急指针的状态,但在用户任务访问它们时,内核任务(tNet0
2022-04-27 11:47:07
147
原创 白皮书笔记四
连接到远程主机期间的 TCP 紧急指针状态混淆 (CVE-2019-12261)当一个运行着 VxWorks 系统的目标设备充当 TCP 服务器并且攻击者启动与该服务器的连接时,上述代码流可以实现。另外一个紧急指针漏洞的变体存在于运行着 6.7 版本或更高版本的 VxWorks 设备创建出站 VxWorks 连接时。在这种情况下,目标设备充当客户进程,在目标设备向远程 TCP 端口发送 SYN 报文段之后,TCP 套接字上的 connect() 调用期间可能会出现可利用的状态混淆。如果攻击者使用特制的 S
2022-04-27 11:15:05
110
原创 白皮书笔记三6.9.3及以上
由格式错误的 TCP AO 选项引起的 TCP 紧急指针状态混淆 (CVE-2019-12260)虽然自 VxWorks 版本 6.9.3 以来,上面的 Urgent Pointer = 0 错误已修复,但 iptcp.c 模块同时经历了其他重构。 添加了一些新功能,例如处理一个新添加的 AO TCP 选项,为代码引入了更深层次的错误。在高于 6.9.3 的 VxWorks 版本中,添加了对 TCP AO 选项(身份验证选项,RFC-5925)的支持。这似乎是默认包含的,并且确实得到了我们检查过的产品的
2022-04-26 22:03:32
1965
原创 白皮书笔记二
TCP 紧急指针 RCE 漏洞TL;DRTCP具有一种名为紧急数据的深奥的机制来传输越界的数据。通过利用这种机制,攻击者可以使传递给 recv() 系统调用的长度变量下溢,这将导致攻击者可以控制传递给 recv() 的缓冲区发生溢出。这可能导致在栈、堆或全局数据部分中分配的缓冲区发生溢出,从而导致远程代码执行。背景知识 - TCP 速成课程为了了解在 IPnet 的TCP实现中发现的漏洞,需要一个TCP的快速速成课程。TCP 是一种传输层协议,它允许在不可靠的 IP 层上传输有序的字节流。解释 TC
2022-04-23 23:03:12
1038
原创 URGENT/11 白皮书笔记——远程危害VxWorks的关键漏洞6.9.3及以上
IntroductionArmis 研究人员在 VxWorks 中发现了 11 个零日漏洞,VxWorks 是最流行的实时操作系统 (RTOS),被超过 20 亿台设备使用,包括工业、医疗和企业设备等关键任务设备。把这些漏洞称为 URGENT/11,这些漏洞位于 IPnet、TCP/IP 堆栈中,影响了过去13年的版本,并且是已发现的影响操作系统的漏洞的罕见示例。在其 32 年的历史中,MITRE 仅仅列出了 13 个影响 VxWorks 的 CVE,其中没有一个漏洞像 URGENT/11 那样严重影响核
2022-04-23 14:46:36
5977
翻译 VxWorks的漏洞分析与解决方案
摘要文章简要介绍了VxWorks,分析了操作系统安全的重要性,讨论了 VxWorks 当前暴露的漏洞,并且描述了这些漏洞的风险、攻击路径和受其影响的系统,并在此基础上给出了解决方案。关键字—— VxWorks、漏洞、解决方案一 背景A 关于 VxWorks 的总结随着计算机、Internet 和 EPC 系统网络的快速发展,计算机设备越来越普及,用户可以随时访问和控制信息。嵌入式系统是一种以计算机技术为基础、以应用为中心的特殊计算机系统。它具有灵活的软硬件接口,对功能、可靠性、成本、尺寸和功耗等方
2022-04-21 21:19:29
2535
原创 VxWorks workbench3.2学习笔记七
7 Working in the Project Explorer7.1 IntroductionProject Explorer 是用于处理项目的图形界面。您可以使用它来创建、打开、关闭、修改和构建项目。您还可以使用它来添加或导入应用程序代码、导入或自定义构建规范以及访问您的版本控制系统。各种过滤器、排序机制和查看选项有助于提高项目管理和导航的效率。可以使用 Project Explorer 右上角的箭头打开这些选项的下拉菜单。注意:对于 VxWorks 6.5.3,本章描述的原则适用。但是,有些示
2022-04-20 15:13:47
2316
原创 workbench3.2用户手册学习笔记六
6 Creating User-Defined Projects6.1 IntroductionUser-Defined Projects 假定您作为用户负责设置和维护您自己的构建系统、文件系统内容、makefile 等。用户界面为 user-defined projects 提供以下支持:您可以配置可启动构建实用程序的构建命令。这允许您从工作台GUI开始构建。您可以为构建、重建和清理项目配置不同的规则。您可以在项目资源管理器中创建反映生成文件中规则的生成目标。这允许您直接从“项目资源管理器”中
2022-04-19 16:12:54
856
原创 workbench3.2学习手册笔记五
5 Creating Native Application Projects5.1 Introduction为您的主机环境开发 C/C++ 应用程序应该使用创建本机应用程序项目。您必须获取并安装构建和源代码分析实用程序,因为它们不是随Workbench分发的。Workbench 支持以下实用程序:本机 GNU 2.9x 和 GNU 3.xMicrosoft 开发实用程序:汇编器、编译器、链接器和存档器用于本地开发的编译器随 Wind River Platforms 一起分发,但不随 Workbe
2022-04-19 11:36:32
1158
原创 workbench3.2用户手册学习笔记四
4 Building and Debugging a Sample Project4.1 Introduction本章将向您介绍 wind river workbench,以便您能够在实际操作的环境中熟悉它的透视图、视图和开发概念。本教程针对 VxWorks 6.x 进行了优化。 不需要特殊的硬件或系统设置。您可以在Workbench安装目录中找到球示例程序。注:对于VxWorks 6.5.3,本章中的原则通常适用。但是,由于此示例使用的是可下载内核模块 (DKM) 项目,该项目不适用于 VxWork
2022-04-18 20:54:04
3300
原创 workbench3.2学习笔记三
3 Projects Overview3.1 IntroductionWorkbench 将项目用作可以链接在一起以创建软件系统的逻辑容器。项目资源管理器允许您直观地将项目组织成反映其内部依赖关系以及编译和链接顺序的结构。各种项目类型的预配置模板使您能够使用需要最少输入的向导创建或导入项目。3.2 Specifying Project Locations当您创建一个新项目时,Workbench 会在您的工作空间中创建一个同名目录。对于 Wind River Linux 平台项目,Workben
2022-04-17 14:41:23
2793
原创 workbench3.2用户手册学习笔记二
2 Introduction to Workbench2.1 Introduction本章向您介绍 Wind River Workbench 及其基于 Eclipse 的用户界面 (UI) 的基本功能。完成本章后,您将知道如何执行以下操作:启动 Wind River Workbench,创建工作区并共享工作区设置。使用工作台用户界面执行常规的任务。自定义 Workbench,并导入和导出自定义透视图。2.2 About Wind River WorkbenchWorkbench 是一个集
2022-04-16 17:19:09
6178
原创 workbench3.2用户手册笔记一
workbench3.2用户手册PART 1 Introduction1.1 引言 Wind River Workbench 3.2 是一个基于 Eclipse 的开发套件,它提供了一种有效的方法来开发实时和嵌入式应用程序,同时最大限度地减少对目标系统的干扰。 Wind River Workbench 可在 Windows、Linux 和 Solaris 主机上使用。 本指南解释了如何使用 Workbench 中非特定于目标操作系统的部分。1.2 风河文档 Workbench 客户可以使用多种不同
2022-04-16 09:58:20
2505
原创 C程序设计学习笔记4
第四章 函数4.1 函数定义4.1.1 函数定义的一般形式4.1.2 函数返回4.2 函数参数4.2.1 形式参数4.2.2 实际参数4.2.3 参数传递机制4.2.4 函数调用栈4.2.5 const参数4.2.6 可变参数函数4.3 函数原型与调用4.3.1 函数声明和函数原型4.3.2 库函数的调用方法4.3.3 标准库函数4.4 内联函数4.5 函数调用形式4.5.1 嵌套调用4.5.2 递归调用4.6 作用域和声明周期4.6.1 局部变量4.6.2 全局变
2022-03-24 17:43:26
919
原创 python学习笔记1
1.1python简介1.1.1什么是pythonpython是面向对象的解释型高级编程语言。python本身并非所有的特性和功能都集成到语言核心,而是被设计成可扩充的。它具有丰富和强大的库,能够把用其它语言制作的各种模块很轻松的连结在一起。1.2搭建python开发环境要进行python开发,需要先安装python解释器,因为它是解释型语言,所以需要一个解释器,这样才能运行代码。1.2.3第一个python程序(1)命令行进入python解释器,输入print(“hello world”),
2022-03-23 22:35:24
674
原创 C程序设计学习笔记3
第三章 程序控制结构3.1 语句语句是C程序的最小单位。3.1.1 简单语句简单语句包括表达式语句、函数调用语句和空语句,(1)表达式语句;(2)函数调用语句;(3)空语句;只有一个分号。(4)声明部分;3.1.2 复合语句将多个语句组成的语句序列用一对{}括起来组成的语句称为复合语句,也叫语句块,简称块。复合语句内部可以进行变量定义或类型声明,这些定义或声明仅在复合语句内部可以使用,称为块的局部作用域。3.1.3 注释块注释:/…/行注释://3.1.4 语句的写法一行一句
2022-03-23 16:59:09
1678
原创 C程序设计学习笔记2
第二章 数据类型与表达式2.1 数据类型利用计算机求解问题,首先需要把实际问题的数据引入到计算机中,即在程序中描述这些数据。程序设计语言通过数据类型来描述不同的数据形式,类型是所有程序的基础,它代表着数据的含义和可以对数据所进行的操作。求解问题的基本处理是运算。通过C语言丰富的运算符及其表达式构成实现算法的基本步骤。C语言内置数据类型有基本类型、构造类型、指针类型。基本类型有:整型、浮点型、字符型、空类型构造类型有:数组类型、结构体类型、共用体类型、枚举类型可以由这些内置数据类型构造出自定义数
2022-03-11 20:57:32
1022
原创 C程序设计学习笔记1
第一章 程序设计基础1.1 计算机系统和工作原理1.1.1 计算机系统的组成组成一个完整的计算机系统由硬件系统和软件系统两部分组成,硬件是基础,软件是灵魂。现代计算机系统的基本结构和基本工作原理最初由冯诺依曼提出,以此为基础的计算机称为冯诺依曼计算机,他的主要特点由以下两点:1:计算机由5个基本部分组成,分别是控制器、运算器、存储器、输入设备、输出设备。当计算机在工作时,有两种信息在流动:控制流、数据流。2:采用的是”存储程序“思想,程序与数据均以二进制形式表示,以相同方式存放在存储器中,按地
2022-03-09 22:22:12
840
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人