第7章 ClamAV软件分析和 与使用 恶意代码防范课件.ppt

第7章 ClamAV软件分析和 与使用 恶意代码防范课件.ppt

  1. 1、本文档共46页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第7章 ClamAV软件分析和 与使用 恶意代码防范课件.ppt

函数名称:cli_loaddb() 函数功能:该函数完成对.db文件的解析,并加载到引擎中。它首先初始化各种类型的匹配器的根结构。然后从文件中读入部分数据到缓存中,调用cli_parse_add()将其加入引擎。 函数名称:cli_parse_add() 函数功能:解析病毒特征代码库中的一条记录,并通过cli_ac_addsig()将其加入到引擎。 函数名称:cil_ac_addsig() 函数功能:该函数完成添加一个段的工作。 函数名称:cli_ac_addpatt() 函数功能:更新转移矩阵,添加匹配模式。 (4) clamdscan模块 clamdscan的运行流程是:读取并解析命令行参数、读取并解析clamd.conf配置文件的参数、建立到服务端(clamd)的socket、向socket写入待扫描的文件名(或者file descriptor)和扫描方式。该模块主要涉及clamdscan.c和clinet.c两个文件。 clamdscan.c 函数名称:main() 函数功能:该函数主要是解析一些配置信息,创建连接clamd的信息,然后通过client()函数与clamd交互,并打印最后的统计信息。 函数名称:reload_server_database() 函数功能:通过该函数重新加载clamd的病毒特征代码库。 1896 1920 1987 2006 信息安全工程学院 School of Information Security Engineering 信息安全工程学院 College of Information Security Engineering ClamAV软件分析与使用 刘功申 上海交通大学信息安全工程学院 本章学习目标 了解ClamAV引擎的框架 了解ClamAV的核心代码 掌握ClamAV使用方法 本章内容 ClamAV的总体结构 ClamAV的使用说明 安装配置 源代码分析 章节实验 1 ClamAV的总体结构 ClamAV vs OAV 相同点: ClamAV和OAV两个防病毒软件非常类似,二者都是使用匹配特征代码的方式来检查病毒,甚至它们的病毒特征代码库都是一样的 不同点: ClamAV是在clamd启动时将病毒特征代码库加载入内存,并且根据文件类型把特征代码库进行了分类。在内存中,为每种文件类型对应的特征代码库建立了一棵庞大的树,然后,在这棵树为核心数据结构,使用有限自动机来进行匹配。 而OAV则是对每个特征码做一个HASH,匹配的时候先匹配HASH,从而缩小了匹配范围,最后再逐个匹配。 ClamAV使用C语言编制,而OAV使用java语言 freshclam:更新病毒特征代码库的程序。 libclamav:病毒扫描函数库,这是核心算法部分。 sigtool:clamav管理工具,可以查看病毒特征代码库文件(.cvd)的信息、解压病毒特征代码库.cvd文件、制作病毒特征代码库文件等。 clamav-milter:email扫描器。在该组件的配合下,ClamAV可以完成对邮件服务器的病毒扫描工作。 clamuko:在Linux/FreeBSD系统中,为了实现on-access病毒扫描功能,必须安装dazuko组件,这就是所谓的clamuko。 freshclam.conf:用于配置病毒特征库升级程序(freshclam)。 clamd.conf:用于配置 clamd和clamscan程序。 2 ClamAV使用 命令 命令解释 PING 检查守护进程的状态 VERSION 输出版本信息 RELOAD 重新加载数据库 SHUTDOWN 正常退出 SCAN file/directory? 扫描文件或目录,同时支持压缩文件 RAWSCAN file/directory? 扫描文件或目录,但是考虑文件类型 CONTSCAN file/directory? 扫描文件或目录,并且找到病毒后仍继续扫描 MULTISCAN file/directory? 使用多线程扫描文件或目录 INSTREAM? 扫描流,输入的格式如下:?长度数据,其中长度用无符号四字节整数表示数据的字节数,数据是实际的数据。扫描以长度=0表征结束,另外总长度不能超过配置文件中设置的流最大长度StreamMaxLength,否则连接将被关闭 FILDES? Unix特有的,根据文件描述符进行扫描 STATS? 返回服务端的队列状态信息以及内存的使用情况 IDSESSION, END? 用来发起或结束一个会话,这样,就能在一个连接中,进行多次不同的扫描,省去建立新的连接。 STREAM?(deprecated, use?INSTREAM?instead)? 废弃 工具名 功能介绍 Clamscan 最简单的扫描工具

文档评论(0)

yuzongxu123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档