漏洞分析

50 articles

CVE-2021-24093 Windows图形组件远程执行代码漏洞分析

一、前言

Windows图形组件DWrite库是用于高质量文本呈现的用户模式动态库,DWrite库存在远程代码执行漏洞。目前已有POC,POC可以实现任意地址写任意内容。

基于此我们做了分析,分析后得知字体库文件中的”maxp”表内容存在错误数据时,DWrite库使用此数据计算字体所需内存,导致分配内存过小,程序读取字体库中的数据写入数组并越界写入 到另外一个数据结构中,后续将结构中数据作为指针操作其中内容,写入数据和指针都可控。通过分析补丁,补丁修补方案为:取出”maxp”表的另一字段再加4,比较之前畸形数据得到较大值,以此计算需要分配内存大小。

文章包含如下内容:[......]

Read more

FastJson历史漏洞研究(二)

前言

本文衔接上一篇文章《FastJson历史漏洞研究(一)》,继续探讨一下FastJson的历史漏洞。这次将要介绍的是Fastjson 1.2.47版本存在的漏洞成因以及其利用方式。

Fastjson 1.2.47漏洞分析

Fastjson 1.2.47版本漏洞与上篇文章中介绍的几处漏洞在原理上有着很大的不同。与Fastjson历史上存在的大多数漏洞不同的是,Fastjson 1.2.47版本的漏洞利用在AutoTypeSupport功能未开启时进行

首先来看一下公开的poc

从代码中可见,与以往利用不同的是,[......]

Read more

Fastjson历史漏洞研究(一)

本文衔接上一篇文章《Fastjson 1.2.24反序列化漏洞深度分析》,继续探讨一下FastJson的历史漏洞。

在《Fastjson 1.2.24反序列化漏洞深度分析》一文中,我们以Fastjson 1.2.24反序列化漏洞为基础,详细分析fastjson漏洞的一些细节问题。

Fastjson 1.2.24 版本的远程代码执行漏洞可谓是开辟了近几年来Fastjson漏洞的纪元。在Fastjson 1.2.24版本反序列化漏洞初次披露之后,官方针对这个漏洞进行了修补。然而这个修复方案很快就被发现存在绕过的风险。由于官方的修复方案或多或少都存在着一些问题,随之而来的是一次又一次的绕[......]

Read more

Struts2 S2-059 漏洞分析

一、前言

2020年8月13日,Apache官方发布了一则公告,该公告称Apache Struts2使用某些标签时,会对标签属性值进行二次表达式解析,当标签属性值使用了%{skillName}并且skillName的值用户可以控制,就会造成OGNL表达式执行。

二、漏洞复现

我这里选用的测试环境 Tomcat 7.0.72Java 1.8.0_181Struts 2.2.1,受影响的标签直接使用官网公告给出的例子

测试漏洞URL

http://localhost:8088/S2-059.action?payl[......]

Read more

Fastjson 1.2.24反序列化漏洞深度分析

前言

FastJson是alibaba的一款开源JSON解析库,可用于将Java对象转换为其JSON表示形式,也可以用于将JSON字符串转换为等效的Java对象。近几年来fastjson漏洞层出不穷,本文将会谈谈近几年来fastjson
RCE漏洞的源头:17年fastjson爆出的1.2.24反序列化漏洞。以这个漏洞为基础,详细分析fastjson漏洞的一些细节问题。

关于Fastjson 1.2.24反序列化漏洞,自从17年以来已经有很多人分析过了,一些基础内容本文就不再陈述了。此次漏洞简单来说,就是Fastjson通过parseObject/parse将传入的字符串反序列化为J[......]

Read more

v8利用入门-从越界访问到rce

最近笔者分析了一个chrome v8引擎的漏洞chromium821137,虽然这是一个老的漏洞,但是从漏洞分析利用中我们还是可以学习到v8漏洞利用的一些基础知识,对于入门学习浏览器漏洞利用具有较高的研究价值。

环境搭建

拉取代码

因为众所周知的原因,拉取v8代码需要使用非常规的方法,具体的搭建过程可以参考文末的链接。环境搭建和拉取旧的commit过程中我遇到的主要的坑是代理的问题,需要使用sock5全局代理,并且在使用谷歌的gclient sync命令的时候需要在根目录写一个.boto的配置文件才能使之运行时使用配置的代理;另外一个很重要的点是linux要使用ubuntu的镜像(笔者使[......]

Read more

WebLogic CVE-2020-2551漏洞分析

一、前言

2020年1月15日,Oracle发布了一系列的安全补丁,其中Oracle WebLogic Server产品有高危漏洞,漏洞编号CVE-2020-2551,CVSS评分9.8分,漏洞利用难度低,可基于IIOP协议执行远程代码。

image-20200219153352047

 

经过分析这次漏洞主要原因是错误的过滤JtaTransactionManager类,JtaTransactionManager父类AbstractPlatformTransactionManager在之前的补丁里面就加入到黑名单列表了,T3协议使用的是resolveClass方法去过滤的,resolveClass方法是会读取[......]

Read more

Discuz ML! V3.X 代码注入漏洞深度分析

0×00 前言

Discuz!ML是一个由CodersClub.org创建的多语言,集成,功能齐全的开源网络平台,用于构建像“社交网络”这样的互联网社区。

该引擎基于Comsenz Inc.创建的着名的Discuz!X引擎开发。

 

0×01 漏洞描述

2019年7月11日, Discuz!ML被发现存在一处远程代码执行漏洞,攻击者通过在请求流量的cookie字段中的language参数处插入构造的payload,进行远程代码执行利用,该漏洞利用方式简单,危害性较大。

本次漏洞是由于Discuz! ML对于cookie字段的不恰[......]

Read more

微软RDP服务高危UAF漏洞分析(CVE-2019-0708)

一、简介

 

CVE-2019-0708经微软披露已经有一个多月了,本文将主要围绕以下几个方面介绍该漏洞

 

1、 经过分析验证该漏洞是一个UAF漏洞,引发UAF漏洞的指针是由何时创建以及为何该指针在Free之后又被使用,是本文重点关注的地方。

2、 该漏洞属于RDP协议实现方面的漏洞,文中会列举与该漏洞相关的RDP协议知识。

 

二、RDP协议介绍

2.1 协议简介

远程桌面协议(RDP, Remote Desktop Protocol)是一个多通道(multi-channel)的协议。

RDP协议也是C/S网[......]

Read more

天融信关于Vim和Neovim (CVE-2019-12735) 任意代码执行漏洞的分析

一.  漏洞背景

Vim和Neovim是Unix类操作系统下广泛使用的跨平台文本编辑器,其中Neovim是基于Vim开发的。

Vim/Neovim中的modeline功能可以让用户在文本文件的开头或结尾使用特定代码来控制编辑器的一些行为。这个功能被限制到仅能执行特定set指令,且有沙箱隔离,但:source!指令却可以用来绕过沙箱执行命令。

  • 漏洞编号:    CVE-2019-12735
  • 受影响版本:Vim < 8.1.1365, Neovim < 0.3.6

二.  漏洞成因

Modeline功能会将所有含表达式的语句在沙箱中执行,可能的选项包括’fo[......]

Read more