免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 5308 | 回复: 15
打印 上一主题 下一主题

an AVscan(扫毒引擎) write by perl [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-08-14 15:19 |只看该作者 |倒序浏览
不多说了,随便玩玩……
默认用当前目录下的sig特征库……(随便找个文件夹放样本)
可以工作在windows、linux等平台……
#!/usr/bin/perl -w

die "Usage: AVScan.pl sample_derectory\n" if(@ARGV!=1);
open SIG,"<SIG"[ color][color="#0000CC];
chdir $ARGV[0] or die "Can't open the sample derectory!\n";
while(<SIG>)
{
    s/\x0D//;
    if(/^(.*):1:\*:(.*)$/)
    {
        push @name,$1;
        $line_sig=$2;
        $line_sig=~s#(.{2})#\\x$1#g;

        push @sig,$line_sig;
    }
}
foreach (<*>)
{
    open FILE,$_ or (warn "Can't load $_!\n"),next;
    $sample_name=$_;
    @sample=<FILE>;
    $sample_str=join '',@sample;
    $i=0;    #the sig index

    foreach (@sig)
    {
        if($sample_str=~/$_/)
        {
            printf("%-25s FOUND!Infected with $name[$i]\n",$sample_name);
            last;
        }
        else
        { $i++;}
    }
    printf("%-25s NOT FOUND!\n",$sample_name) if($i==@sig);
}


[ 本帖最后由 wellfroggy 于 2008-8-14 20:50 编辑 ]

AVscan.rar

734 Bytes, 下载次数: 55

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
2 [报告]
发表于 2008-08-14 15:50 |只看该作者
1,代码写的不好;
2,功能等同于 grep。

论坛徽章:
0
3 [报告]
发表于 2008-08-14 16:12 |只看该作者
最低级的AVscan引擎本来就是grep,哈哈……

论坛徽章:
0
4 [报告]
发表于 2008-08-14 17:19 |只看该作者
更新一下:
支持*操作符 匹配任意长度字符
支持??操作符匹配一个任意字符
添加了;
$line_sig=~s#([^*?]{2})#\\x$1#g;                #format pattern: add \x to every char except '*' and '?'
$line_sig=~s#\*#.*#g;                        #format pattern: replace '*' to '.*'
$line_sig=~s#\?\?#.{1}#g;                        #format pattern: replace '?' to '.{1}'
修改了:
if($sample_str=~/$_/s)

[ 本帖最后由 wellfroggy 于 2008-8-14 23:57 编辑 ]

AVscan.rar

827 Bytes, 下载次数: 33

update AVscan

论坛徽章:
0
5 [报告]
发表于 2008-08-14 20:53 |只看该作者
原帖由 flw 于 2008-8-14 15:50 发表
1,代码写的不好;
2,功能等同于 grep。

老大就是老大啊,请教老大用Perl多少年了呢?
:wink:

论坛徽章:
0
6 [报告]
发表于 2008-08-14 21:21 |只看该作者
答:两个半星期……

论坛徽章:
0
7 [报告]
发表于 2008-08-15 10:15 |只看该作者

论坛徽章:
0
8 [报告]
发表于 2008-08-16 14:24 |只看该作者

回复 #1 wellfroggy 的帖子

强悍!
拜!

论坛徽章:
0
9 [报告]
发表于 2008-08-16 14:28 |只看该作者

回复 #6 wellfroggy 的帖子

我是问flw老大。
:wink:

论坛徽章:
0
10 [报告]
发表于 2008-08-17 12:34 |只看该作者
只能说这段代码的效率太低,扫描一遍整个计算机上的文件,你要用多久呢?
完全没有考虑算法的问题。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP