构建属于自己的恶意软件特征库

摘要:
2.安装clamavapt-getinstallclamav3.其他环境其他环境请参考如下URL:http://www.clamav.net/doc/install.html0x02ClamAV恶意软件特征库1.特征库位置特征库默认安装位置在/usr/lib/clamav/目录下,main.cvd即是主要特征库,daily.cvd则是每日增量式更新的特征码库。我们利用clamav发现我们自己编译的木马是没有被发现的。

引自http://blog.sina.com.cn/s/blog_e8e60bc00102vjz9.html

感谢阿里云安全 的分享

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

我们查杀一下:

构建属于自己的恶意软件特征库

0x04参考文献

http://infosec4breakfast.blogspot.com/2013/06/fun-with-clamav.html

https://github.com/vrtadmin/clamav-devel/raw/master/docs/signatures.pdf

文章来自:@cnbird2008@阿里云安全#鸟哥谈安全#系列,转载请注明出处。

免责声明:文章转载自《构建属于自己的恶意软件特征库》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇常用控件2OnZoom 基于Apache Hudi的流批一体架构实践下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

SVN的配置和使用

1、svn是代替cvs而衍生出来的一种新的版本控制器系统。他的图标是个小龟。2、1)备份数据2)、项目同步 3)、进行版本控制。3、svn版本控制器的原理 项目组成员A上传代码,然后项目组成员B下载下来。然后进行协同开发。4、安装1)、服务器端软件(提示重启必须的不要重启) 2)、客户端软件 3)、中文语言包5、说了怎样去建立版本库,就是怎样去在你的电脑上...

WINCE快捷方式详解(转载)

1.WINCE快捷方式结构 WINCE的快捷方式和WIN2K,XP的不同,只是一个后缀名为.LNK的文本文件.其格式如下: 数字#路径 比如,有个快捷方式写法如下: 23#\Windows\ToolViewer.exe 指的是指向WINDOWS文件夹下的Toolviewer.exe可执行文件.数字究竟代表的是什么意思,我也不太清楚;有一说法是#后的ACS...

macOS软件推荐&避雷指南 让mac更像windows的装机必备软件

网络上有很多macOS软件推荐的文章,但是那些文章大部分有下面的问题: 没有结合使用场景 没有差评。从来不会说一个软件有什么缺点,是否稳定。 所以这篇文章就围绕下面2点展开: 安装哪些软件,可以让macOS的体验更加接近 windows 10。 同类型其他软件存在的问题,也就是标题中的“避雷”。毕竟软件好不好,全靠同行衬托。根据这个列表,你能快速排...

NetAnalyzer笔记 之 十三 NetAnalyzer 6.0 的使用方法 -- 2.抓包与数据选择

1.  NetAnalyzer使用方法 1.1.数据获取 通过上面的说明,我们已经可以很快的获取到网络数据了,但是,仅仅知道上面内容却远远不够。 在NetAnalyzer中将数据加载到软件有三种方式。   数据文件   字节字符串录入   网卡采集   抓包开始菜单 在开始标签中数据包组合数据采集组包含了这三种功能点 数据文件,很多的数据采集软件都具备...

winform安装项目、安装包的制作、部署

① 1,解决方案—添加—新建项目—其他项目类型—安装和部署—安装项目,输入名称Setup,点“确定” 2,添加主输出:单击左侧“应用程序文件夹”,右侧右键—添加—项目输出-主输出-确定。 3,添加开始程序中的文件夹:右击左侧“用户的程序菜单”—添加—文件夹,自己设置名称。 4,添加开始程序中和桌面的主程序快捷方式:左侧单击刚新建的文件夹--右侧右键—创建新...

搜狗拼音输入法LINUX版安装

搜狗拼音输入法LINUX版官方下载: http://pinyin.sogou.com/linux/?r=pinyin 一、添加fcitx的nightlyPPA 在终端中输入: sudo add-apt-repository ppa:fcitx-team/nightlysudo apt-get update 二、安装fcitx,搜狗输入法附加组件 打开软件中...