1.PDF文件完全可视的结构

< Towards Adversarial Malware Detection : Lessons Learned from PDF-based Attacks>
1.内容储存的一般结构
Header // 由%引入,单文本包含PDF版本信息
Body

//一系列的对象,定义了文件执行操作,还可以包含压缩的,未压缩的嵌入式数据,每个对象都有一个唯一的参考号,通常由序列号0 obj1,number为正确的对象号,每个对象以endobj结束。
第一个数 : 对象数
第二个数:编辑次数
《》:内部是对象的内容
Cross-Reference(X-Ref) Table

// 偏移量列表,指示文件中每个对象的位置,这样就提供了精确位置指示,交叉引用表由标记xref引入,其后是数字序列,其最后一个指示文件中对象的总数。
0 8:对象是从0开始对象8结束
0000000000 65535f: 0000000000 是起始地址 65535是生产号,也是最大生产号 不可修改,f是free
后续 000000009 为第一个对象的地址 00000是生产号 , 0未编辑过。 n代表类型 可编辑
Trailer

//尾Trailer 开始
size 8 :代表对象数有8个
root 1 0 R :代表根对象的对象号为1
553:为Cross reference table 的偏移地址,可以在里面找到所有的对象的相对地址,进而访问。
PDF恶意软件的运行方式
JavaScript和/ JS用于执行JavaScript代码
/ Names,/ OpenAction,/ AA用于执行自动操作
/ EmbeddedFile和/ F用于打开嵌入式文件
/ AcroForm执行表单
相关的漏洞

Javascript-based Attacks被分为以下四种攻击
1.API-based overflow
通常利用错误的参数解析来分析属于PDF解析库的特定API调用,使攻击者能够执行缓冲区溢出或基于ROP(return-oriented programming)的攻击,一种利用代码复用作为手段的攻击。
2.Use-After-Free
基于使用之前已释放(但未重新初始化)的内存区域,通常会使程序崩溃,但是,可能允许易受攻击的程序中执行任意代码。
3.Malformed Data
在运行解压缩时压缩格式错误的数据触法,此类型数据通常储存在流中。
4.Type confusion
可能会影响void指针作为参数接受的函数,通常检查指向对象的某些字节来推断指针类型。但可以操作这些字节使得无效指针类型也可以识别为有效,从而允许执行任意代码。
Actionscript-based Attacks被分为三种攻击
通过Adobe Reader对Adobe Flash技术的支持使得Flash内容可视化,利用Reader的一种方法是通过嵌入恶意的ShockWave Flash(SWF)文件和ActionScript 代码来触发其Flash组件的漏洞。 通常,此代码与javascript结合使用。
1.memory Corruption
当内存中特殊指针指向其他被攻击者控制的内存区域时被某种方式损坏,可能会发生此漏洞。
2.ByteCode Verification
此漏洞使攻击者可以在未初始化的内存区域执行代码
3.Corrupted File Loading
解析特定的,损坏的视频文件时触发漏洞
Flash马上被弃用,且需两部分运行才可以触发1.actionscript 2.javascript。
File Embedding

PDF malware相关推荐

  1. 对深度学习的逃逸攻击 — 探究人工智能系统中的安全盲区

    ISC 2017中国互联网安全大会举办了人工智能安全论坛. 我们把论坛总结成为一系列文章,本文为系列中的第二篇. 作者: 肖奇学1, 许伟林2, 李康1  (1. 来自 360 Team Seri0u ...

  2. BlueTeam 应急

    应急 免责声明 本文档仅供学习和研究使用,请勿使用文中的技术源码用于非法用途,任何人造成的任何负面影响,与本人无关. 应急离不开调查取证,请配合 取证 使用 大纲 威胁情报 情报中心 样本分析检测 恶 ...

  3. malware analysis、Sandbox Principles、Design Implementation

    catalog 0. 引言 1. sandbox introduction 2. Sandboxie 3. seccomp(short for secure computing mode): API级 ...

  4. 感染神经网络模型的病毒 AI malware EvilModel: Hiding Malware Inside of Neural Network Models

    感染神经网络模型的病毒 EvilModel: Hiding Malware Inside of Neural Network Models code https://arxiv.org/pdf/210 ...

  5. 论文阅读笔记-You Are What You Do: Hunting Stealthy Malware via Data Provenance Analysis

    NDSS You Are What You Do: Hunting Stealthy Malware via Data Provenance Analysis 链接:https://www.ndss- ...

  6. 对抗机器学习:Generating Adversarial Malware Examples for Black-box Attacks Based on GAN

    论文url https://arxiv.org/pdf/1702.05983.pdf @article{hu2017generating, title={Generating adversarial ...

  7. 论文 MalwareTextDB:A Database for Annotated Malware Articles 解读

    论文 MalwareTextDB:A Database for Annotated Malware Articles 解读 文章目录 论文 MalwareTextDB:A Database for A ...

  8. 【2016阿里安全峰会】风声与暗算,无中又生有:威胁情报应用的那些事儿【附PDF下载】...

    一年一度的阿里安全峰会创立于 2014 年,每年在7月举办,今年已是第三届,今年于7月13-14日在北京国家会议中心举办.阿里安全峰会旨在促进亚太区信息安全行业发展,为本地区信息安全组织.信息安全专业 ...

  9. [计算机专业英文术语]Malware Payload, 正确的中文名应该是什么?

    [简介] 常用网名: 猪头三 出生日期: 1981.XX.XX 个人网站: http://www.x86asm.org QQ交流: 643439947 编程生涯: 2001年~至今[共16年] 职业生 ...

最新文章

  1. Java中的多态(for myself)
  2. struts2 mysql 分页代码_Struts2 + MySQL 实现分页
  3. 技术实操丨HBase 2.X版本的元数据修复及一种数据迁移方式
  4. mosquitto源码分析(五)
  5. vue scss @font-face 路径问题
  6. QCon北京2015:移动开发最佳实践专题前瞻
  7. mysql数据库中实现内连接、左连接、右连接
  8. 阶段1 语言基础+高级_1-3-Java语言高级_09-基础加强_第1节 基础加强_2_Junit_测试概述...
  9. 使用dom4j把XML文件解析成JavaBean
  10. 盘点vivo手机的HiFi之路 极致的信仰
  11. 纤维过滤器和石英砂过滤器的区别
  12. Shim特性是什么?
  13. 【精品计划0】蓝桥杯 摔手机
  14. 逗比学CTF.day8
  15. c语言实现定积分运算
  16. VCN中文编程平台的优势(三)——企业的社会责任
  17. 2. 匈牙利命名法
  18. Java Web应用开发_04javaWeb基础
  19. 用數學計算演化原理的科學家:諾瓦克
  20. PLC实训 — 传感器介绍

热门文章

  1. 【图像分类】2018-CBAM ECCV
  2. 2.4移动Web网页开发——响应式布局(含媒体查询和bootstrap)
  3. nvidia linux 黑屏,Ubuntu卡logo、卡住、黑屏无法正常启动、屏幕和键盘背光无法调节等一系列问题的罪恢祸首:NVIDIA显卡驱动...
  4. 计算机英语新词的认知语义阐释论文,计算机英文专业论文题目 计算机英文论文题目怎样定...
  5. SQL注入(使用sqli-labs案例以及sqlmap自动化注入工具)
  6. 强化学习实践:DDQN—LunarLander月球登入初探
  7. linux 创建多级目录
  8. Shell脚本入门 03:字符串与数组
  9. 如何写好一份在线TOB的产品说明文档,这六点很重要
  10. [Java 游戏编程]STG类游戏的实现3-EnemyBulletCollision