IE浏览器攻击:MS11-003_IE_CSS_IMPORT

news2025/1/31 22:49:42

目录

概述

利用过程

漏洞复现


概述

MS11-003_IE_CSS_IMPORT是指Microsoft Security Bulletin MS11-003中的一个安全漏洞,影响Internet Explorer(IE)浏览器。这个漏洞允许攻击者通过在CSS文件中使用@import规则来加载外部CSS文件,并且绕过浏览器的同源策略。攻击者可以利用这个漏洞进行跨站脚本攻击(XSS)或CSS历史记录窃取等恶意行为。

这个漏洞的成因是IE浏览器在处理CSS文件时没有正确地检查和限制@import规则中的URL。攻击者可以通过构建恶意的CSS文件来加载外部CSS文件,并在其中插入恶意代码。

为了解决这个漏洞,Microsoft发布了安全补丁,修复了IE浏览器中的CSS引入机制,以确保只加载来自同源域的CSS文件。用户被建议及时安装这个安全补丁,以保护自己的系统免受潜在的攻击。

利用过程

MS11-003_IE_CSS_IMPORT漏洞的利用过程可以包括以下步骤:

  1. 攻击者构建恶意的CSS文件:攻击者首先创建一个恶意的CSS文件,其中包含@import规则,用于加载外部的恶意CSS文件或其他资源。攻击者可以利用这个漏洞绕过同源策略,加载恶意代码或进行其他攻击。

  2. 构建恶意的网页:攻击者构建一个包含恶意CSS文件的恶意网页。这个网页可以是一个恶意的网站或通过其他方式传递给受害者。

  3. 用户访问恶意网页:受害者在使用受影响的Internet Explorer浏览器访问恶意网页。

  4. 加载恶意CSS文件:当受害者访问恶意网页时,浏览器会解析网页中的CSS文件。当解析到恶意CSS文件时,浏览器会执行其中的@import规则,并加载外部的恶意CSS文件。

  5. 执行恶意代码:一旦恶意CSS文件被加载,其中的恶意代码将被执行。这可能导致各种攻击,如跨站脚本攻击(XSS)或CSS历史记录窃取。

通过利用MS11-003_IE_CSS_IMPORT漏洞,攻击者可以成功加载外部的恶意CSS文件,并在受害者的浏览器中执行恶意代码,从而获得对受害者系统的控制或窃取敏感信息。

漏洞复现

启用msf 搜索相关漏洞利用模块

查看漏洞模块利用的详细信息

Name: MS11-003 Microsoft Internet Explorer CSS Recursive Import Use After Free

Module: exploit/windows/browser/ms11_003_ie_css_import

Platform: Windows

Arch:

Privileged: No

License: Metasploit Framework License (BSD)

Rank: Good

Disclosed: 2010-11-29

Provided by:

passerby

d0c_s4vage

jduck jduck@metasploit.com

Available targets:

Id Name

-- ----

0 Automatic

1 Internet Explorer 8

2 Internet Explorer 7

3 Internet Explorer 6

4 Debug Target (Crash)

Check supported:

No

Basic options:

Name Current Setting Required Description

---- --------------- -------- -----------

OBFUSCATE true no Enable JavaScript obfuscation

SRVHOST 0.0.0.0 yes The local host to listen on. This must be an address on the local machine or 0.0.0.0

SRVPORT 8080 yes The local port to listen on.

SSL false no Negotiate SSL for incoming connections

SSLCert no Path to a custom SSL certificate (default is randomly generated)

URIPATH no The URI to use for this exploit (default is random)

Payload information:

Space: 1024

Avoid: 1 characters

Description:

This module exploits a memory corruption vulnerability within

Microsoft's HTML engine (mshtml). When parsing an HTML page

containing a recursive CSS import, a C++ object is deleted and later

reused. This leads to arbitrary code execution. This exploit

utilizes a combination of heap spraying and the .NET 2.0

'mscorie.dll' module to bypass DEP and ASLR. This module does not

opt-in to ASLR. As such, this module should be reliable on all

Windows versions with .NET 2.0.50727 installed.

References:

https://cvedetails.com/cve/CVE-2010-3971/

OSVDB (69796)

http://www.securityfocus.com/bid/45246

http://www.wooyun.org/bugs/wooyun-2010-0885

https://seclists.org/fulldisclosure/2010/Dec/110

https://docs.microsoft.com/en-us/security-updates/SecurityBulletins/2011/MS11-003

配置相关参数 开始打payload、

让win7下的ie浏览器访问这个链接

回头看看kali这边打的payload怎么样了

 

已经获得了shell 可以使用screenshot 来验证 shell 是否可用

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Locomotor运动模块】攀爬

文章目录 一、攀爬主体“伪身体”1、“伪身体”的设置2、“伪身体”和“真实身体”,为什么同步移动3、“伪身体”和“真实身体”,碰到墙时不同步的原因①现象②原因③解决 二、攀爬1、需要的组件:“伪身体”、Climbing、Climbable及Interacto…

QT实现任意阶贝塞尔曲线绘制

bezier曲线在编程中的难点在于求取曲线的系数,如果系数确定了那么就可以用微小的直线段画出曲线。bezier曲线的系数也就是bernstein系数,此系数的性质可以自行百度,我们在这里是利用bernstein系数的递推性质求取: 简单举例 两个…

爬楼梯【动态规划】

爬楼梯 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢&#xff1f; class Solution {public int climbStairs(int n) {if (n < 2) return n;//特殊情况处理int dp[] new int[n 1];dp[1] 1;//因为数组索…

20个不可错过的VScode神级插件

VS Code 是我们打发时间时最常用的代码编辑器之一&#xff0c;它是一个多功能伴侣&#xff0c;重新定义了我们软件开发的方式。其轻量级的界面与强大的功能相结合&#xff0c;使其成为全球程序员的首选。但是&#xff0c;普通 VS Code 用户与熟练开发人员的区别在于通过扩展充分…

11. Junit

我们主要学习的是 Junit5. 1. selenium 和 Junit 之间的关系 selenium 和 Junit 之间的关系 就像 Java 和 JavaScript 之间的关系&#xff0c;也就是没有关系。 为什么学习了 selenium 还要学习 Junit 呢&#xff1f; 举个例子&#xff0c;如果 Selenium 编写的自动化测试用…

【图像分割】实战篇(1)传统图像分割

聚类图像分割 K均值聚类是一种常用的聚类算法&#xff0c;它将图像像素分为K个不同的群集&#xff0c;以使每个群集内的像素具有相似的颜色或强度。这可以用于分割具有不同颜色或亮度的对象。 import numpy as np import matplotlib.pyplot as plt from sklearn.cluster impo…

单片机-控制按键点亮LED灯

1、按键电路图 定义四个按键引脚 1、按键按下 为 输入为低电平 2、按键不按下 IO有上拉电阻&#xff0c;为高电平 // 定义 按键的 管教 sbit KEY1 P3^1; sbit KEY2 P3^0; sbit KEY3 P3^2; sbit KEY4 P3^3; 2、LED灯电路图 LED 输出高电平为亮 // 定义LED灯 管教 sbit LED1…

基于SpringBoot2的后台业务管理系统

概述 SpringBoot-Plus 是一个适合大系统拆分成小系统的架构&#xff0c;java快速开发平台&#xff0c;或者是一个微服务系统。其中加入了Thymeleaf数据模板语言代替了之前的JSP页面方式。页面展示采用Layui前端框架&#xff0c;包含了用户管理&#xff0c;角色管理&#xff0c…

获取Linux内核源码

在嵌入式平台上做Linux开发的时候&#xff0c;我们用的kernel都是芯片厂家移植到自家平台上的&#xff0c;但是最初的原生Linux内核的源码是从哪里来的呢&#xff1f;下面我们介绍一下怎么获取原生的Linux源码。 从Linux社区获取内核kernel源码 Linux社区的官方网站是 https:…

【Day-26慢就是快】代码随想录-二叉树-对阵二叉树

给定一个二叉树&#xff0c;检查它是否是镜像对称的。 —————————————————————————————————————————— 分析&#xff1a; 需要比较的是根节点的左右子树&#xff0c;且是两个子树的里侧和外侧的元素是否相等。 根据后序遍历算法&…

Modbus通信协议

Modbus通信协议 一、概述 Modbus通信协议是一种工业现场总线协议标准&#xff0c;常用的Modbus协议有以下三种类型&#xff1a;Modbus TCP、Modbus RTU、Modbus ASCll。 Modbus通信协议解决了通过串行线路在电子设备之间发送信息的问题。该协议在遵循该协议的体系结构中实现主…

网络分层的真实含义

复杂的程序都要分层&#xff0c;这是程序设计的要求。比如&#xff0c;复杂的电商还会分数据库层、缓存层、Compose 层、Controller 层和接入层&#xff0c;每一层专注做本层的事情。 当一个网络包从一个网口经过的时候&#xff0c;你看到了&#xff0c;首先先看看要不要请进来…

如何进行微服务测试?一文4个知识点带入门微服务测试!

关注留言点赞&#xff0c;带你了解最流行的软件开发知识与最新科技行业趋势。 本文将讨论微服务测试的重要性、挑战和最佳实践。 微服务架构是一种越来越流行的构建复杂分布式系统的方法。在此体系结构中&#xff0c;大型应用程序被分成较小的、独立的服务&#xff0c;这些服务…

uniapp 实现滑动元素删除效果

官网地址&#xff1a;uni-app官网 (dcloud.net.cn) 最终效果如下图&#xff1a; 滑动删除需要用到 uni-ui 的 uni-swipe-action 组件和 uni-swipe-action-item 属性名类型可选值默认值是否必填说明left-optionsArray/Object--否左侧选项内容及样式right-optionsArray/Object--…

算法通关村第10关【黄金】| 归并排序

归并排序&#xff08;Merge Sort&#xff09;是一种常见的基于比较的排序算法&#xff0c;它的主要思想是分而治之&#xff08;Divide and Conquer&#xff09;。它的核心思想是将一个大的问题分解为小的子问题&#xff0c;解决子问题&#xff0c;然后将它们合并&#xff08;me…

【论文阅读】Pay Attention to MLPs

作者&#xff1a;Google Research, Brain Team 泛读&#xff1a;只关注其中cv的论述 提出了一个简单的网络架构&#xff0c;gMLP&#xff0c;基于门控的MLPs&#xff0c;并表明它可以像Transformers一样在关键语言和视觉应用中发挥作用 提出了一个基于MLP的没有self-attentio…

一篇文章搞定《实战中的设计模式之Android版》

一篇文章搞定《实战中的设计模式之Android版》 前言单例设计模式模式选用说明场景复现&#xff1a; 构建者设计模式模式选用说明场景复现 工厂设计模式模式选用说明场景复现 策略设计模式模式选用说明场景复现 装饰者设计模式模式选用说明场景复现 适配器设计模式模式选用说明场…

C++--动态规划其他问题

1.一和零 力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台 给你一个二进制字符串数组 strs 和两个整数 m 和 n 。 请你找出并返回 strs 的最大子集的长度&#xff0c;该子集中 最多 有 m 个 0 和 n 个 1 。 如果 x 的所有元素也是 y 的元素&#xff0…

如何使用Cygwin编译最新版的Redis源码,生成适用于Windows的Redis

文章目录 一、准备Cygwin环境二、下载Redis源码三、编译redis-7.2.01. 执行make命令2. 重新执行make命令3. 再次执行make命令4. 将编译后的可执行文件及依赖放到同一个文件夹5. 测试编译生成的可执行程序 四、换其他redis版本重新编译1. 编译redis-7.0.122. 编译redis-6.2.133.…

算法:分治思想处理归并递归问题

文章目录 算法原理实现思路典型例题排序数组数组中的逆序对计算右侧小于当前元素的个数 总结 算法原理 利用归并思想进行分治也是很重要的一种思路&#xff0c;在解决逆序对的问题上有很大的需求空间 于是首先归并排序是首先的&#xff0c;归并排序要能写出来&#xff1a; c…