首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

攻击者如何使用 XLL 恶意软件感染系统

在我们看到的活动中,带有恶意 XLL 附件或链接的电子邮件被发送给用户。双击附件打开 Microsoft Excel,提示用户安装并激活加载项。 图 1 – 打开 XLL 文件时向用户显示的提示。...您可以通过查看资源名称或同样存储在资源部分中的 XML 定义文件来识别包含 Excel 加载项代码的文件。 图 5 – Excel-DNA XML 定义。...一旦数据被解密,它就会包含三个 DLL 名称、五个 API 函数名称、有效负载的 URL 以及存储有效负载的本地文件的路径。...使用解密的 DLL 名称,恶意软件首先通过进程环境块 (PEB) 遍历InLoadOrderModuleList正确解析基地址,然后使用它们找到它希望调用的 API 函数的地址。...图 10 – DLL 模块地址解析函数。 然后,恶意软件使用解析后的 API 函数从 Web 服务器下载有效负载,将其存储在本地,然后执行。

2.2K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    使用VBA加载宏小心 Workbook.FullName 属性

    Workbook.FullName在VBA中是一个非常常用的属性,返回的是工作簿的全路径,首先查看一下帮助文件: 返回对象的名称(以字符串表示),包括其磁盘路径。String 型,只读。...可以看到路径中故意修改的字符被保存在了FullName中,但是文件名被还原回了磁盘上正确的名称。...看到这里,联系平时使用Windows系统经验,应该能想到,这是因为Windows系统在查找文件的时候,是忽略大小写的,所以虽然手动修改了一些字母的大小写,Workbooks.Open仍然可以正确的打开文件...但是,存在这样一种场景: 对经常使用VBA的人来说,会写一些常用的功能制作为加载宏使用,使用过加载宏的应该知道,一旦加载宏被移动了位置,会出现如下提示: ?...说明加载宏在设置加载的时候,路径就被保存起来了,在这种情况下,如果路径中仅仅是修改了字母的大小写(测试文件名修改没有影响),加载宏打开时不会出问题的,但是,路径其实已经被修改了。

    1.5K40

    攻击者开始使用 XLL 文件进行攻击

    △ 文件资源段结构 其中包含 Excel-DNA 项目组件以及加载项,可以通过查看资源名或者同样存储在资源中的 XML 定义文件来识别包含 Excel 加载项的 XLL 文件。...△ XML 文件 包含恶意代码的加载项是使用 .NET 开发的,位于 MODDNA资源中。要分析该恶意代码,需要将资源保存到硬盘并使用 LZMA 算法进行解压缩。...△ .NET 文件代码 使用 Excel-DNA 项目创建的 XLL 文件也可以使用项目提供的脚本自动解压缩,该脚本将 XLL 文件的路径作为参数,然后提取、解压缩并将资源保存到文件夹中。...样本首先通过进程环境块(PEB)遍历 InLoadOrderModuleList正确解析所需 DLL 的基址,然后再找到希望调用的 API 函数地址。...△ 解析加载模块 然后,恶意软件使用解析后的 API 函数下载 Payload 并将其存储执行。

    1.5K10

    Excelize 发布 2.0.2 版本, Go 语言最受欢迎的 Excel 基础库

    Open XML 标准。...相比较其他的开源类库,Excelize 支持写入原本带有图片(表)、透视表和切片器等复杂样式的文档,还支持向 Excel 文档中插入图片与图表,并且在保存后不会丢失文档原有样式,可以应用于各类报表系统中...issue #434 修复由于内部合并单元格偏移量计算错误导致的部分情况下使用 RemoveRow() 删除行出现下标越界问题,解决 issue #437 修复部分情况下数据验证下拉菜单中的公式失效问题...修复在循环迭代中调用 Save() 方法保存导致的文档损坏问题,解决 issue #443 提升文档内部 workbook.xml.rels 中相对路径格式解析的兼容性,解决 issue #442 修复部分情况下...,删除带有合并单元格的文档所导致的文件损坏问题 修复部分情况下设置保护工作表属性失效的情况,解决 issue #454 修复部分情况下 GetSheetName 获取工作表名称为空的问题, 解决 issue

    1.4K11

    数据存储和传输文件之XML使用和解析详解

    文档的书写规则 分类: DTD Schema 解析:操作xml文档,将文档中的数据读取到内存中 操作xml文档 解析xml的方式 xml常见的解析器 Jsoup 快速入门 代码 对象的使用: Jsoup...(单双都可)引起来 标签必须正确关闭 xml标签名称区分大小写 快速入门 约束:规定xml文档的书写规则 作为框架的使用者(程序员): 能够在xml中引入约束文档 能够简单的读懂约束文档 分类: DTD:一种简单的约束技术 Schema:一种复杂的约束技术...DTD 引入dtd文档到xml文档中 内部dtd:将约束规则定义在xml文档中 外部dtd:将约束的规则定义在外部的dtd文件中 本地:<!...:选择器 使用的方法:Elements select(String cssQuery) 语法:参考Selector类中定义的语法 XPath:XPath即为XML路径语言,它是一种用来确定XML(标准通用标记语言的子集

    1.3K30

    VBA专题10-9:使用VBA操控Excel界面之在功能区中添加自定义按钮控件

    带有Mso图像0和1)的标记为Attn Sh的组。...选项卡元素: idMso属性的值是内置选项卡的名称。本例中,TabInsert是“插入”选项卡的idMso。如果要在其他内置选项卡中插入按钮,那就使用其他选项卡的idMso替换掉TabInsert。...如果要使用自已设计的图像,只需使用image属性替换掉imageMso属性。 onAction属性是一个回调属性。该属性的值是在单击按钮时要执行的VBA过程的名称。 5....在Insert0回调过程中的参数control有3个属性: ID:在XML代码中指定的控件的id。 Context:包含该功能区的活动窗口。...Context.Caption是出现在该窗口标题栏中的名称,本例中,为该工作簿的名称。 Tag:XML代码中元素(本例中是按钮元素)的tag属性的值。通常,标签用于识别控件执行的操作。

    5.2K30

    VBA专题10-14:使用VBA操控Excel界面之在功能区中添加自定义库控件

    如果选择Office 2010 Custom UI Part,只需使用下列代码替换xmlns属性的命名空间: 的图像文件,并单击打开。 该图像文件的副本被插入,删除原始文件不影响插入的文件。 注意:在图像文件的文件名中避免使用空字符,否则不能正确地引用文件。 6....如果需要,可右击在Custom UI Editor中插入的图像来改变其ID。如图1所示。 ? 图1 7. 复制并粘贴下列XML代码: ?...在Excel中打开该文件。 12. 按Alt+F11键激活VBE。 13. 插入一个标准的VBA模块,并粘贴在步骤9中复制的回调代码。 14. 在过程中添加一个MsgBox语句来测试控件。...图2 代替上述第4步和第5步中手工插入图像,可以通过使用VBA过程使用相同的图像填充库。通过赋VBA过程的名称到loadImage回调属性来实现。下面列出了XML代码和VBA代码: ?

    3.1K10

    xml笔记

    属性值必须使用引号(单双都可)引起来 5. 标签必须正确关闭 6. xml标签名称区分大小写 * 快速入门: xml version='1.0' ?...[CDATA[ 数据 ]]> * 约束:规定xml文档的书写规则 * 作为框架的使用者(程序员): 1. 能够在xml中引入约束文档 2....Schema:一种复杂的约束技术 * DTD: * 引入dtd文档到xml文档中 * 内部dtd:将约束规则定义在xml文档中 * 外部dtd:将约束的规则定义在外部的...解析(读取):将文档中的数据读取到内存中 2. 写入:将内存中的数据保存到xml文档中。持久化的存储 * 解析xml的方式: 1....XPath:XPath即为XML路径语言,它是一种用来确定XML(标准通用标记语言的子集)文档中某部分位置的语言 * 使用Jsoup的Xpath需要额外导入jar包。

    5610

    读取Excel的文本框,除了解析xml还可以用python调用VBA

    本来准备用lxml作xpath解析xml,但实际测试发现,这些xml文件存在大量的命名空间,解析起来异常复杂,试了好几个普通的xml解析的库,可以顺利解析,但我觉得还不如正则方便,所以我最终选择了使用正则表达式作...xml的方法还是挺麻烦的,在写完上面的方法后我灵机一动,VBA不就有现成的读取文本框的方法吗?...使用xlwings解决需求 苹果电脑是不支持VBA的,上面调用VBA的代码对于苹果电脑来说无效,但所幸的是xlwings在0.21.4版本中新增了访问文本框文本的属性text。...没有这个属性,请注意升级: pip install xlwings -U 总结 读取excel中的数据,基本没有VBA干不了的事,python调用VBA也很简单,直接使用pywin32即可。...这样VBA与直接解析xml的优劣势就非常明显了: VBA是excel应用直接支持的API,代码编写起来相对很简单,但执行效率低下。苹果电脑无法使用VBA,可以使用xlwings已经封装好的方法实现。

    2.7K20

    前端基础-XML

    属性值必须使用引号(单双都可)引起来 5. 标签必须正确关闭 6. xml标签名称区分大小写 * 快速入门: xml version='1.0' ?...[CDATA[ 数据 ]]> * 约束:规定xml文档的书写规则 * 作为框架的使用者(程序员): 1. 能够在xml中引入约束文档 2....Schema:一种复杂的约束技术 * DTD: * 引入dtd文档到xml文档中 * 内部dtd:将约束规则定义在xml文档中 * 外部dtd:将约束的规则定义在外部的dtd...解析:操作xml文档,将文档中的数据读取到内存中 * 操作xml文档 1. 解析(读取):将文档中的数据读取到内存中 2. 写入:将内存中的数据保存到xml文档中。...XPath:XPath即为XML路径语言,它是一种用来确定XML(标准通用标记语言的子集)文档中某部分位置的语言 * 使用Jsoup的Xpath需要额外导入jar包。

    67420

    使用%XML.TextReader

    具体地说,该类提供了导航格式良好的XML文档并查看其中信息(元素、属性、注释、名称空间URI等)的方法。该类还基于DTD或XML架构提供完整的文档验证。...如果未声明字符编码,InterSystems IRIS将使用前面的“输入和输出的字符编码”中描述的默认值。如果这些默认值不正确,请修改XML声明,使其指定实际使用的字符集。...整体结构法应执行以下部分或全部操作:通过以下方法之一的第一个参数指定文档源:MethodFirst ArgumentParseFile()文件名,带有完整路径。...可用的属性包括名称、值、深度等。根据需要继续在文档中导航并获取属性值。...若要返回到元素(如果适用),请使用MoveToElement()。如果需要,可以使用Rewind()方法返回到文档的开头(第一个节点之前)。这是唯一可以在源代码中倒退的方法。

    52920

    Excel编程周末速成班第24课:调试和发布应用程序

    在某些情况下使用整数类型可能会导致舍入错误和bugs。 调试工具 几乎所有bugs都是由两个因素导致的——单独工作或组合工作: 程序执行接收到错误的路径。 一个或多个变量取不正确的值。...你也可以使用相同的技术来删除断点。带有断点的行在深色背景上显示为浅色文本,在相邻页边空白处显示一个圆圈图标,如图24-1所示。你可以根据需要在程序中设置任意多个断点。 ?...检查变量的最简单方法是在中断模式下。只需将鼠标指针停留在代码中变量的名称上,VBA就会弹出一个带有当前值的小窗口。如果这还不够,VBA提供了更复杂的监视工具。...图24-2:“添加监视”对话框 接着,按照下列步骤操作: 1.在“表达式”框中输入监视表达式。如果光标位于变量或属性名称上,或者你已在代码中选择了表达式,则将在此处自动输入。...大多数bugs是由于变量取不正确的值和/或程序执行分支不正确造成的。 可以在程序中的任何位置设置断点,以强制程序在该点暂停。 当程序在中断模式下暂停时,可以单步执行代码以查找错误。

    5.8K10

    VBA编写Ribbon Custom UI编辑器04——解析xml

    01 定义结构 目标是要把customUI.xml解析为二维数组,数组的第0行记录的是属性,第一列记录的是元素,其他地方存储的是属性的值。...同时因为xml本身是树形结构的,所以同时也记录下这些信息,这里使用左孩子右兄弟的结构来记录,所以,首先定义需要生成的数据结构: '属性 Public Type Attri Key As String...02 状态机解析 要从Ribbon xml中解析元素、属性、属性的值,需要逐个去读取xml中的字符,判断状态,然后执行相应的操作。...XML '记录XML.Nodes的下一个位置 Private pNodeNext As Long '记录当前正在处理的Node在XML.Nodes中的Index Private pNode As Long...,直到超过了文本长度 Do While pNext < iStrXMLLen '使用CallByName调用相应状态的函数 state = VBA.CallByName

    1.2K20

    XML快速入门学习笔记

    在 Unix 和 Mac OSX 中,使用 LF 来存储新行;在旧的 Mac 系统中,使用 CR 来存储新行。 XML 以 LF 存储换行。...WeiyiGeek.xslt的xml ---- 0x03 命名空间 描述:在 XML 中,元素名称是由开发者定义的,当两个不同的文档使用相同的元素名时,就会发生命名冲突。 ?...WeiyiGeek. (1) 使用前缀来避免命名冲突 当在 XML 中使用前缀时,一个所谓的用于前缀的命名空间必须被定义(绑定至名字空间),命名空间是在元素的开始标签的 xmlns 属性中定义的。...1.首先引入W3C的名称空间(固定的值),然后可以使用其提供的标签了; #在根节点上,使用属性xmlns(xml namespace:XML名称空间) xmlns="http://www.w3.org...名称空间的作用(Namespace):写在元素的时候,可以指定该元素使用的是哪一套约束规则;如果一个XML想指定它的约束规则常用于约束文档中; 假设使用的是DTD那么一个xml只能指定一个DTD,不能指定多个

    8.9K20

    XML快速入门学习笔记

    在 Unix 和 Mac OSX 中,使用 LF 来存储新行;在旧的 Mac 系统中,使用 CR 来存储新行。 XML 以 LF 存储换行。...---- 0x03 命名空间 描述:在 XML 中,元素名称是由开发者定义的,当两个不同的文档使用相同的元素名时,就会发生命名冲突。...WeiyiGeek. (1) 使用前缀来避免命名冲突 当在 XML 中使用前缀时,一个所谓的用于前缀的命名空间必须被定义(绑定至名字空间),命名空间是在元素的开始标签的 xmlns 属性中定义的。...1.首先引入W3C的名称空间(固定的值),然后可以使用其提供的标签了; #在根节点上,使用属性xmlns(xml namespace:XML名称空间) xmlns="http://www.w3.org...名称空间的作用(Namespace):写在元素的时候,可以指定该元素使用的是哪一套约束规则;如果一个XML想指定它的约束规则常用于约束文档中; 假设使用的是DTD那么一个xml只能指定一个DTD,不能指定多个

    6.8K30

    【Java Web_07】XML

    XML的基本语法 ① 基本语法: * xml文档的后缀名 .xml * xml首行必须定义为文档声明 * xml文档中有且仅有一个根标签 * 属性值必须使用引号(单双都可...)引起来 * 标签必须正确关闭 * xml标签名称区分大小写 # XML语法严格,标签自定义,主要用来存储数据 # CDATA 区【 使用方式 ① 得到一个指向XML文档的 输入流 * FileInputStream fis = new FileInputStream("文件路径"); ② 创建一个XML读取对象(SAXReader...选择器 ① 使用方法 * Elements select(String cssQuery) ② cssQuery * css中的查询方法 ③ 示例 //1.获取student.xml...查找当前节点的 父节点 * 【@】 用于在路径表达式中, 加入属性判断 - [@属性名] 表示必须存在某属性 - [@属性名='值']

    37420

    VBA解析复合文档00

    最可能接触到的就是一个名称叫做Thumbs.db的文件,只要操作电脑,打开了图片,系统就会在图片的同一个文件夹下生成这样一个文件,但默认是隐藏的,所以一般也看不到!...2007版本以上的Office文件,如果编写了VBA代码,在文件的压缩包里,会有个vbaProject.bin文件,也是使用复合文档结构来存储的。...01 深入了解Excel的文件结构 解析复合文档,能够更加深入理解Excel的文件结构,虽然2007版本以上的Excel已经 换成了xml标记语言存储,但是VBA代码相关的vbaProject.bin...02 直接读取Excel VBA数据 如果想不打开Excel文件来读取Excel的数据,一般使用ADO技术就能做到。...但是如果想要直接获取VBA代码,就只能通过解析文件结构获取,通过解析复合文档,解析出模块的数据流,再进一步进行解析就可以。

    1.3K10
    领券