0x00 简介

最近研究了一些开源的杀毒引擎,总结了一下利用ClamAV(www.clamav.net)来打造属于自己的恶意软件分析特征库。特征库主要包括HASH匹配、文件内容特征库、逻辑特征库、二进制特征码(SHELLCODE)、ASCII特征码。

0x01 ClamAV部署

1.       实验环境

所有实验均在Kali Linux V1.0.9操作系统上。

2.       安装clamav

apt-get install clamav

3.       其他环境

其他环境请参考如下URL: http://www.clamav.net/doc/install.html

0x02 ClamAV恶意软件特征库

1.       特征库位置

特征库默认安装位置在/usr/lib/clamav/目录下,main.cvd即是主要特征库,daily.cvd则是每日增量式更新的特征码库。

2.       解压特征库

root@kali:/var/lib/clamav# sigtool -u ./main.cvd

3.       特征库解释

后缀名称

包含内容

main.ndb

十六进制特征码

main.mdb

Windows PE恶意软件文件的MD5哈希值

main.hdb

已知的恶意软件文件的MD5哈希值

0x03 构造属于自己的恶意软件特征库

下面利用一个免杀木马来构造一个特征库。我们利用clamav发现我们自己编译的木马是没有被发现的。

1.       构造MD5库

a)       生成md5哈希库

sigtool --md5 update.exe >test.hdb

b)       利用test.hdb来查杀

clamscan -d test.hdb update.exe

2.       构造PE头信息特征库

a)       生成PE头信息签名的工具

wget http://hexacorn.com/d/PESectionExtractor.pl

b)       查看PE签名

c)       生成PE头信息签名

sigtool --mdb *.dat >pebase.mdb

d)       利用生成的签名进行检查

clamscan -d pebase.mdb update.exe

3.       构建文件内容特征库

a)       查找特征码

首先利用IDA PRO来查看恶意软件的特征码。

b)       转换成十六进制

c)       利用十六进制特征码构建特征库

在构建特征库之前先看一下可扩展的特征码格式:

SigName:Target:Offset:Hex

字段

含义

SigName

特征码唯一描述的名字

Target

0(任意文件类型)

1(Windows PE可执行文件)

2(对象链接和嵌入OLE)

3(标准化的HTML)

4(Email文件)

5(图像文件)

6(Linux ELF文件)

7(标准化的ASCII文件)

Offset

文件中的偏移量

Hex

十六进制匹配

下面我们构造特征码:

echo 'Malwareupdate:1:*:636d642e657865'>custom.ndb

我们查杀一下:

ClamAV病毒库增加特征码相关推荐

  1. clamav病毒库格式解析

    ​clamav简介 Clam AntiVirus(ClamAV)是免费而且开放源代码的防毒软件,软件与病毒码的的更新皆由社群免费发布.目前ClamAV主要是使用在由Linux.FreeBSD等Unix ...

  2. 用Java整合Clamav病毒库检测病毒

    1. 下载Clamav (具体步骤参考上篇https://blog.csdn.net/qq_47619291/article/details/120050536, 本文不再赘述) 2. 安装依赖包,命 ...

  3. 【CentOS7】Clamav病毒库的安装与部署

    Clamav的安装与部署 简介: Clam AntiVirus(ClamAV)是免费而且开放源代码的防毒软件,软件与病毒码的更新皆由社群免费发布.目前ClamAV主要是使用在由Linux.FreeBS ...

  4. linux病毒库离线升级,更新clamav病毒库的方法

    # Linux CentOS Server Shell Tools # !/bin/bash # qing chu duo yu wen jian he la ji wen jian . rm -rf ...

  5. freshclam更新clamav病毒库失败(connection failed)

    有大佬能帮帮我吗?

  6. clamav的病毒库文件的文件头的信息说明(clamav版本号等)

    Author : Samson Date : 01/04/2022 在开源病毒检测工具clamav中,是通过对病毒库中的病毒特征值来进行对比的,病毒库文件存放于/var/lib/clamav目录下,主 ...

  7. Linux安全体系的ClamAV病毒扫描程序[转]

    > 摘自:http://www.shangshuwu.cn/index.php/Linux安全体系的ClamAV病毒扫描程序 ClamAV是使用广泛且基于GPL License的开放源代码的典型 ...

  8. clamav --reload 加载病毒库源码分析

    基本流程可以参考clamav中clamdscan --version 不生效 我们直接从解析command开始.parse_command函数返回COMMAND_RELOAD类型.然后进入execut ...

  9. Centos安装ClamAV并且设置自动更新病毒库

    265  curl www.baidu.com先看看有网吗?   266  yum install -y pcre* zlib zlib-devel libssl-devel libssl   267 ...

最新文章

  1. 数字图像处理:第三章 灰度直方图
  2. PE转换分区表格式为GPT
  3. 为什么0.1无法被二进制小数精确表示?
  4. LeetCode —— 146. LRU缓存机制(Python)
  5. 使用docker安装设置oracle
  6. linux rm 命令删除文件恢复_rm删除文件空间就释放了吗?天真!
  7. instantclient oracle oci
  8. RGB、HSL、Hex网页色彩码,看完这篇全懂了
  9. Mat 和 Iplimage* 相互转换
  10. 计算机软件工程专业大学排名专科,2020软件工程专业大学排名一览表
  11. delete不起作用 nsis_Delete键为什么不起作用了?
  12. Vbox虚拟机无法启动错误Mark
  13. python 登录新浪微博_模拟登录新浪微博(Python) - 转
  14. 【机器学习 深度学习】通俗讲解集成学习算法
  15. C# GridView綁定RadioButtonList
  16. Latex实践:一个零Latex基础的术渣花了一天半的时间用Latex完成一篇SCI论文编辑
  17. 合工大计算机系汪教授,合肥工业大学计算机与信息学院导师介绍:方宝富
  18. 今年Java面试必问的这些技术面,完整版开放免费下载!
  19. 一线互联网架构师筑基必备技能之Java篇,一招彻底弄懂!
  20. Oracle 11g 学习笔记-14(数据库性能优化)

热门文章

  1. 338. Counting Bits
  2. java面试第十五天
  3. 致力云安全服务模式 安全狗获近5000万融资
  4. 转:FMS 3.5之Hello World!
  5. 鼠标滚动缩放图片效果
  6. JDBC 2.0中的高级数据类型
  7. 面试那点小事,你从未见过的spring boot面试集锦(附详细答案)
  8. 安装PHP5、PHP7
  9. CIO黄嘉粤谈互联网金融与CIO发展
  10. Netty3 源代码分析 - NIO server绑定过程分析