首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到19条相似文献,搜索用时 125 毫秒
1.
写污点值到污点地址漏洞模式检测   总被引:1,自引:0,他引:1  
设备驱动是允许高级程序与硬件设备交互的底层程序.通常设备驱动中的漏洞较之应用程序中的漏洞对计算机系统的安全具有更大的破坏性.写污点值到污点地址是Windows设备驱动程序中频繁出现的一种漏洞模式.首次明确地对该种漏洞模式进行描述,提出一种针对二进制驱动程序中该种漏洞模式的自动检测方法,并实现相应的原型工具T2T-B2C.该方法基于反编译和静态污点分析技术,与其他方法相比,既可以分析C代码,也可以分析本地二进制代码.该工具由T2T和B2C两个组件组成:首先B2C基于反编译技术将二进制文件转换为C语言文件;然后T2T基于静态污点分析技术检测B2C生成的C代码中出现写污点值到污点地址漏洞模式的语句.使用多种反病毒程序中的二进制驱动对T2T-B2C进行了评估,发现了6个未公开漏洞.评估结果表明:该工具是一款可实际应用的漏洞检测工具,可应用于对较大规模的程序进行检测.  相似文献   

2.
软件安全逆向分析中程序结构解析模型设计   总被引:2,自引:0,他引:2  
提出了一种基于二进制文件的程序结构解析模型。该模型通过对二进制文件反汇编,去除汇编文件中的冗余信息,对汇编文件进行静态分析,构建带有索引依赖信息的基本块,并以该基本块为基础提取二进制程序的内部控制流与函数调用关系信息,最后给出程序内部控制流图以及函数调用关系图。该模型不依赖程序的源文件,以二进制文件为分析对象,实用性和通用性比较好;实验结果表明模型对二进制程序内部结构解析具有较高的准确性。  相似文献   

3.
一、构成VB程序的基础知识 (一)VB程序的基本构成 VB是使用项目来管理VB中的应用程序的,通常一个应用程序对应着一个项目。通过查看。MAK制作文件(项目文件),发现VB的应用程序由4种不同类型的文件组成:项目文件(.mak)、自定控制文件(.vbx)、代码模块文件(.frm)。 项目文件(.mak):项目文件是通过选择File菜单中的Newproject来生成的,它包含了所有的文件清单,即.bas、.vbx、.frm。  相似文献   

4.
文本讲述怎样用InstallShield制作PowerBuilder应用程序安装盘的方法和步骤,通过修改代码来配置SQL Anywhere的数据源和ODBC驱动,通过修改代码把应用程序在“开始”菜单的“程序”中和桌面上增加一快捷图标。  相似文献   

5.
Windows应用程序中的图标菜单因其形象生动,给人们留下深刻印象.图标数据存储于相应的图标文件(*.ICO)中,图标文件是Windows程序开发工具中提供的重要图形资源,如果我们了解这种文件的格式,就能把它应用于DOS程序的开发中,起到美化界面的效果.笔者通过对图标文件格式的深入分析,给出了在DOS显示图标文件的C源程序.现将实现原理及程序清单公布出来,以飨读者.  相似文献   

6.
自修改代码混淆方法是一种隐藏程序重要信息的有效技术。为减少代码混淆造成的额外开销而又不影响代码混淆的质量,利用程序流敏感分析方法选择比较重要的指令进行混淆。为提高代码混淆的质量,有效地防止反汇编,提出一个二步比较混淆模型。该模型包括两个子混淆器,混淆器1采用程序流敏感分析方法获得混淆的指令并产生两个混淆代码文件和一个混淆代码映射文件。混淆器2通过比较两个混淆代码文件精确地定位混淆指令在二进制代码中的位置,然后利用混淆代码映射文件对二进制代码进行混淆,以进一步提高代码混淆的质量。通过实验分析,混淆后二进制文件的额外开销只占整个代码的3%左右,并且混淆后的反汇编代码明显异于原始的反汇编代码,甚至出现了一些无法识别的错误指令。  相似文献   

7.
软件开发者经常需要对网格文件以OpenGL等图形处理软件进行物理模型的显示,作为该功能实现的基础,必须对导入网格文件的结构进行解析,以便图形处理。本文在VC平台下,对网格文件进行代码解析,最终通过OpenGL显示其内容,形成网格文件模拟计算显示程序。  相似文献   

8.
Win3.X中的应用程序,除依靠本身的.INI文件记录配置信息外,还要向WIN.INI、SYSTEM.INI两个文件写入信息,有些应用程序在安装时毫不客气的对这两个文件中与自己有关部分进行覆盖,从而引起一些莫名其妙的故障。在Win95中程序将配置信息写入信息注册表,而不再依赖.INI文件,可以认为,Win95中保留.INI文件的主要作用是为了实现对Win3.X程序的兼容。 一、结构 信息注册表是一个由文本域和二进制代码组成的庞大数据库,其内容晦涩难懂。可通过  相似文献   

9.
郭紫薇 《电脑学习》1999,(2):F003-F003
用VC++的AppWizard生成基于文档/视(Doc/View)结构的MFC类库应用程序时,应用程序框架仅提供每一个文档模板对应一个菜单的自动支持。在实际应用中,有时需要在同一文档的不同视(View)中显示完全不同的菜单,由于AppWizard生成的应用程序不直接支持单一文档的多菜单资源,因此需要编程者在应用中添加必要的代码来实现。通过查阅VC++在线帮助文件和相应MFC类库源代码,发现可以利用MFC中一个未公开的虚成员函数CDocument::CetDefuhMnu()来实现同一文档的多个菜单的交替显示。1实现技术当AppWizard生成SDI或MDI应…  相似文献   

10.
西西 《个人电脑》2005,11(6):225-226
在Windows中,对于已经在系统中注册过的文件都会有与之相对应的关联程序,如txt文件与“记事本”程序关联,而.doc文件则与word关联,当双击某类文件时,系统会自动启动其相应的关联程序把它打开。不过.有些类型的文件由于种种原因没有相应的关联程序.所以无法直接打开它们。要打开这样的文件.一般来说我们会首先启动应用程序.然后使用“文件”菜单中的“打开”命令将其打开。  相似文献   

11.
Iain Milne  Glenn Rowe 《Software》2005,35(15):1477-1493
Although the principles of writing compilers and interpreters are well known, we have found that the ideas needed to develop an interpreter for the express purpose of allowing direct interaction with the running code do not yet appear to have been published in an academic context. We describe a programming method that can be used for the production of an interpreter for common object‐oriented languages such as C++, Java and C#. The main purpose of the interpreter is to parse short, relatively simple programs and allow direct interaction between the user and the running code. Such a system is useful for projects such as OGRE, which is an educational tool allowing students to visualize in three‐dimensional graphics the state of a program as it runs. The interpreter works by first parsing the source code and building up a data structure capable of representing the program's source code in a form that can be used to both run the program and extract detailed information from the running program. This extraction allows for novel uses of the interpreter, such as forming the basis for a visualization system that must display and provide such information to the user as they watch their executing program. This paper considers the construction of such an interpreter specifically for C++, but the principles should be the same for other similar languages such as Java and C#. We cover the main tasks required of the programmer to create and use the data structure, highlighting areas such as its design, initial construction during parsing, and techniques required to use it for interpretation. These include the ability for the data structure to intelligently clone subsets of itself when multiple copies of one of its elements are required by the running program, how it handles C++'s complicated function overloading and overriding rules, and how inheritance and polymorphism can be supported. Copyright © 2005 John Wiley & Sons, Ltd.  相似文献   

12.
智能仪表对液晶模块的中文显示、图形显示的需求越来越多,必须了解液晶模块的工作原理及其与单片机硬件接口、软件编程方法才能发挥液晶模块显示直观的优点,文中以带国标中文字库图形点阵液晶显示模块LCM12864ZK为例,介绍了LCM12864ZK的基本功能、工作原理及其与单片机的硬件接口,研究了液晶模块在智能仪表图形和菜单显示应用中的软件设计方法,给出了基于C51的菜单显示关键程序;实践证明,文中提出的液晶模块与单片机硬件接口以及中文菜单和图形程序设计方法是正确可行的.  相似文献   

13.
Petrov  P. Orailoglu  A. 《Micro, IEEE》2004,24(3):21-33
Two program code transformation methodologies reduce the power consumption of instruction communication buses in embedded processors. Aimed at deep-submicron process technologies, these techniques offer an efficient solution for applications in which low power consumption is the key quality factor. We have developed two techniques for power minimization on the instruction bus of embedded processors. The first is compiler-driven register name adjustment (RNA), with the main goal of power minimization on instruction fetch and register file access. The second technique, more general in nature, incorporates transformations into the binary program code and necessitates hardware support on the processor side to efficiently restore the power-optimized program code.  相似文献   

14.
传统的文件相似性检测技术是基于源代码的,针对源代码难以获取的情况,二进制文件比对技术被提出并受到越来越多的关注。总结和分析了四种二进制文件相似性检测技术和主流的检测工具。在提出了二进制文件克隆比对的评价方法的基础上进行了实验测试。该方法针对二进制文件克隆的分类方式,设计了实验流程和相似度的计算标准。结果表明对于连续克隆,不影响调用关系的分割克隆,不影响基本块数量和调用关系的等价替换克隆,采用二进制文件相似性检测比采用基于token的源代码文件相似性检测能得到更准确的检测结果。  相似文献   

15.
用ADO技术实现数据库图像字段的存取   总被引:5,自引:2,他引:5  
古凌岚 《计算机工程与设计》2004,25(8):1388-1389,1392
分析了开发VB应用程序时所遇到的图像文件存取问题,提出了利用ADO技术来实现对图像文件的存取,对ADO技术做了简单介绍,讨论了如何在VB中利用ADO编程来实现对SQLSERVER数据库中的大字段如图像、文档文件的读写,并给出了主要源程序代码。  相似文献   

16.
This paper describes a new method for code space optimization for interpreted languages called LZW‐CC . The method is based on a well‐known and widely used compression algorithm, LZW , which has been adapted to compress executable program code represented as bytecode. Frequently occurring sequences of bytecode instructions are replaced by shorter encodings for newly generated bytecode instructions. The interpreter for the compressed code is modified to recognize and execute those new instructions. When applied to systems where a copy of the interpreter is supplied with each user program, space is saved not only by compressing the program code but also by automatically removing the unused implementation code from the interpreter. The method's implementation within two compiler systems for the programming languages Haskell and Java is described and implementation issues of interest are presented, notably the recalculations of target jumps and the automated tailoring of the interpreter to program code. Applying LZW‐CC to nhc98 Haskell results in bytecode size reduction by up to 15.23% and executable size reduction by up to 11.9%. Java bytecode is reduced by up to 52%. The impact of compression on execution speed is also discussed; the typical speed penalty for Java programs is between 1.8 and 6.6%, while most compressed Haskell executables run faster than the original. Copyright © 2008 John Wiley & Sons, Ltd.  相似文献   

17.
为提高壳的安全性,研究了基于虚拟机的加壳技术.虚拟机通过编译器,把原始字节码编译成伪指令;在执行时,通过虚拟机的解释器把伪指令翻译成原始字节码.设计了伪指令,实现了编译器,并对PE文件补充解释器,构建新的PE头部、节表和节.实验表明,基于虚拟机加壳提高了软件的安全性.  相似文献   

18.
给出了一种带类型注解的汇编器 TAAS的设计与实现 .TAAS分析带有类型注解的汇编代码 ,把类型注解映射进目标文件和可执行文件中 ,产生带有类型注解的二进制代码 ,同时不影响代码的执行语义 .TAAS分析 AT&T语法的汇编程序 ,产生 EL F格式的 x86机器代码 ,并且与 GNU as汇编器完全兼容  相似文献   

19.
虚拟仪器菜单就是在计算机屏幕上显示出仪器的功能和操作过程选择命令,以便使用户能通过对菜单的选择实现对仪器功能的调用,完成测试过程中一切必要的人机对话。用弹出式菜单方式表达虚拟仪器功能和实现对仪器功能的操作,具有简单直观、操作方便的优点和界面友好的效果。文章介绍了基于C语言的虚拟仪器弹出式菜单的程序设计方法。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号