版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第三章計算機(jī)病毒結(jié)構(gòu)分析本章學(xué)習(xí)目標(biāo)掌握計算機(jī)病毒的結(jié)構(gòu)掌握計算機(jī)病毒的工作機(jī)制了解引導(dǎo)型病毒原理了解COM、EXE、NE、PE可執(zhí)行文件格式掌握COM文件病毒原理及實驗掌握PE文件型病毒及實驗總體概念DOS是VXer的樂園(Aver)9x病毒ring3,ring02K病毒主要是ring3Windows文件格式變遷:COMEXE:MZ->NE->PEVxd:LE(16Bit,32Bit)一、計算機(jī)病毒的結(jié)構(gòu)和工作機(jī)制
四大模塊:感染模塊觸發(fā)模塊破壞模塊(表現(xiàn)模塊)引導(dǎo)模塊(主控模塊)兩個狀態(tài):靜態(tài)動態(tài)工作機(jī)制計算機(jī)操作系統(tǒng)啟動過程程序的執(zhí)行是必須要進(jìn)去內(nèi)存之后進(jìn)行執(zhí)行,操作系統(tǒng)也可以看做一個程序的運(yùn)行,從開機(jī)加載到內(nèi)存中執(zhí)行的過程就是系統(tǒng)的啟動。我們先宏觀上看一下整個從CPU加電到操作系統(tǒng)啟動的過程:BIOS程序首先將存儲設(shè)備的引導(dǎo)記錄(BootRecord)載入內(nèi)存,并執(zhí)行引導(dǎo)記錄中的引導(dǎo)程序(Boot);引導(dǎo)程序會將存儲設(shè)備中的操作系統(tǒng)內(nèi)核載入內(nèi)存,并進(jìn)入內(nèi)核的入口點開始執(zhí)行操作系統(tǒng)內(nèi)核完成系統(tǒng)的初始化,允許用戶與操作系統(tǒng)進(jìn)行交互計算機(jī)操作系統(tǒng)啟動過程引導(dǎo)模塊引導(dǎo)前——寄生寄生位置:引導(dǎo)區(qū)可執(zhí)行文件寄生手段:替代法(寄生在引導(dǎo)區(qū)中的病毒常用該法)鏈接法(寄生在文件中的病毒常用該法)引導(dǎo)過程駐留內(nèi)存竊取系統(tǒng)控制權(quán)恢復(fù)系統(tǒng)功能引導(dǎo)區(qū)病毒引導(dǎo)過程搬遷系統(tǒng)引導(dǎo)程序-〉替代為病毒引導(dǎo)程序啟動時-〉病毒引導(dǎo)模塊-〉加載傳染、破壞和觸發(fā)模塊到內(nèi)存-〉使用常駐技術(shù)最后,轉(zhuǎn)向系統(tǒng)引導(dǎo)程序-〉引導(dǎo)系統(tǒng)文件型病毒引導(dǎo)過程修改入口指令-〉替代為跳轉(zhuǎn)到病毒模塊的指令執(zhí)行時-〉跳轉(zhuǎn)到病毒引導(dǎo)模塊-〉病毒引導(dǎo)模塊-〉加載傳染、破壞和觸發(fā)模塊到內(nèi)存-〉使用常駐技術(shù)最后,轉(zhuǎn)向程序的正常執(zhí)行指令-〉執(zhí)行程序感染模塊病毒傳染的條件被動傳染(靜態(tài)時)用戶在進(jìn)行拷貝磁盤或文件時,把一個病毒由一個載體復(fù)制到另一個載體上?;蛘呤峭ㄟ^網(wǎng)絡(luò)上的信息傳遞,把一個病毒程序從一方傳遞到另一方。這種傳染方式叫做計算機(jī)病毒的被動傳染。主動傳染(動態(tài)時)以計算機(jī)系統(tǒng)的運(yùn)行以及病毒程序處于激活狀態(tài)為先決條件。在病毒處于激活的狀態(tài)下,只要傳染條件滿足,病毒程序能主動地把病毒自身傳染給另一個載體或另一個系統(tǒng)。這種傳染方式叫做計算機(jī)病毒的主動傳染。傳染過程系統(tǒng)(程序)運(yùn)行-〉各種模塊進(jìn)入內(nèi)存-〉按多種傳染方式傳染傳染方式立即傳染,即病毒在被執(zhí)行的瞬間,搶在宿主程序開始執(zhí)行前,立即感染磁盤上的其他程序,然后再執(zhí)行宿主程序。駐留內(nèi)存并伺機(jī)傳染,內(nèi)存中的病毒檢查當(dāng)前系統(tǒng)環(huán)境,在執(zhí)行一個程序、瀏覽一個網(wǎng)頁時傳染磁盤上的程序,駐留在系統(tǒng)內(nèi)存中的病毒程序在宿主程序運(yùn)行結(jié)束后,仍可活動,直至關(guān)閉計算機(jī)。文件型病毒傳染機(jī)理首先根據(jù)病毒自己的特定標(biāo)識來判斷該文件是否已感染了該病毒;當(dāng)條件滿足時,將病毒鏈接到文件的特定部位,并存入磁盤中;完成傳染后,繼續(xù)監(jiān)視系統(tǒng)的運(yùn)行,試圖尋找新的攻擊目標(biāo)。文件型病毒傳染途徑加載執(zhí)行文件瀏覽目錄過程創(chuàng)建文件過程
破壞模塊破壞是Vxer(VirusMaker或者ViruseXchanger的簡稱,(有時候中文也叫做毒客),是一群追求完美、極致代碼的病毒程序員)的追求,病毒魅力的體現(xiàn)破壞模塊的功能破壞、破壞、還是破壞……破壞對象系統(tǒng)數(shù)據(jù)區(qū)、文件、內(nèi)存、系統(tǒng)運(yùn)行速度、磁盤、CMOS、主板和網(wǎng)絡(luò)等。破壞的程度觸發(fā)模塊觸發(fā)條件計算機(jī)病毒在傳染和發(fā)作之前,往往要判斷某些特定條件是否滿足,滿足則傳染或發(fā)作,否則不傳染或不發(fā)作或只傳染不發(fā)作,這個條件就是計算機(jī)病毒的觸發(fā)條件。觸發(fā)模塊的目的是調(diào)節(jié)病毒的攻擊性和潛伏性之間的平衡大范圍的感染行為、頻繁的破壞行為可能給用戶以重創(chuàng),但是,它們總是使系統(tǒng)或多或少地出現(xiàn)異常,容易使病毒暴露。而不破壞、不感染又會使病毒失去其特性??捎|發(fā)性是病毒的攻擊性和潛伏性之間的調(diào)整杠桿,可以控制病毒感染和破壞的頻度,兼顧殺傷力和潛伏性。病毒常用的觸發(fā)條件日期觸發(fā)時間觸發(fā)鍵盤觸發(fā)感染觸發(fā)例如,運(yùn)行感染文件個數(shù)觸發(fā)、感染序數(shù)觸發(fā)、感染磁盤數(shù)觸發(fā)、感染失敗觸發(fā)等。啟動觸發(fā)訪問磁盤次數(shù)觸發(fā)CPU型號/主板型號觸發(fā)二、16位操作系統(tǒng)病毒編制技術(shù)
1引導(dǎo)型病毒編制原理2COM、EXE、NE文件結(jié)構(gòu)及運(yùn)行原理3COM文件病毒原理1引導(dǎo)型病毒編制原理PC引導(dǎo)流程加電CPU\BIOS初始化POST自檢引導(dǎo)區(qū)、分區(qū)表檢查發(fā)現(xiàn)操作系統(tǒng)執(zhí)行引導(dǎo)程序引導(dǎo)區(qū)病毒取得控制權(quán)的過程:MBR和分區(qū)表裝載DOS引導(dǎo)區(qū)運(yùn)行DOS引導(dǎo)程序加載IO.sysMSDOS.sys加載DOS1正常的引導(dǎo)過程引導(dǎo)型病毒從軟盤加載到內(nèi)存尋找DOS引導(dǎo)區(qū)的位置將DOS引導(dǎo)區(qū)移動到別的位置病毒將自己寫入原DOS引導(dǎo)區(qū)的位置2用被感染的軟盤啟動MBR和分區(qū)表將病毒的引導(dǎo)程序加載入內(nèi)存運(yùn)行病毒引導(dǎo)程序病毒駐留內(nèi)存原DOS引導(dǎo)程序執(zhí)行并加載DOS系統(tǒng)3病毒在啟動時獲得控制權(quán)2COM\EXE\NE文件結(jié)構(gòu)及運(yùn)行原理COM格式最簡單的可執(zhí)行文件就是DOS下的以COM(CopyOfMemory)文件。COM格式文件最大64KB,內(nèi)含16位程序的二進(jìn)制代碼映像,沒有重定位信息。COM文件包含程序二進(jìn)制代碼的一個絕對映像,也就是說,為了運(yùn)行程序準(zhǔn)確的處理器指令和內(nèi)存中的數(shù)據(jù),DOS通過直接把該映像從文件拷貝到內(nèi)存來加載COM程序,系統(tǒng)不需要作重定位工作。加載COM程序DOS嘗試分配內(nèi)存。因為COM程序必須位于一個64K的段中,所以COM文件的大小不能超過65,024(64K減去用于PSP的256字節(jié)和用于一個起始堆棧的至少256字節(jié))。如果DOS不能為程序、一個PSP、一個起始堆棧分配足夠內(nèi)存,則分配嘗試失敗。否則,DOS分配盡可能多的內(nèi)存(直至所有保留內(nèi)存),即使COM程序本身不能大于64K。在試圖運(yùn)行另一個程序或分配另外的內(nèi)存之前,大部分COM程序釋放任何不需要的內(nèi)存。分配內(nèi)存后,DOS在該內(nèi)存的頭256字節(jié)建立一個PSP(ProgramSegmentPrefix:程序段前綴)。創(chuàng)建PSP后,DOS在PSP后立即開始(偏移100H)加載COM文件,它置SS、DS和ES為PSP的段地址,接著創(chuàng)建一個堆棧。DOS通過把控制傳遞偏移100H處的指令而啟動程序。程序設(shè)計者必須保證COM文件的第一條指令是程序的入口點。因為程序是在偏移100H處加載,因此所有代碼和數(shù)據(jù)偏移也必須相對于100H。匯編語言程序設(shè)計者可通過置程序的初值為100H而保證這一點(例如,通過在源代碼的開始使用語句org100H)。DOS中斷(匯編指令)PSP結(jié)構(gòu)偏移大小
長度(Byte)
說明
0000h
02
中斷20H
0002h
02
以節(jié)計算的內(nèi)存大小(利用它可看出是否感染引導(dǎo)型病毒)
0004h
01
保留
0005h
05
至DOS的長調(diào)用
000Ah
02
INT22H入口IP
000Ch
02
INT22H入口CS
000Eh
02
INT23H入口IP
0010h
02
INT23H入口CS
0012h
02
INT24H入口IP
0014h
02
INT24H入口CS
0016h
02
父進(jìn)程的PSP段值(可測知是否被跟蹤)
0018h
14
存放20個SOFT號
002Ch
02
環(huán)境塊段地址(從中可獲知執(zhí)行的程序名)
002Eh
04
存放用戶棧地址指針
0032h
1E
保留
0050h
03
DOS調(diào)用(INT21H/RETF)
0053h
02
保留
0055h
07
擴(kuò)展的FCB頭
005Ch
10
格式化的FCB1
006Ch
10
格式化的FCB2
007Ch
04
保留
0080h
01
命令行參數(shù)長度
0081h
127
命令行參數(shù)MZ格式MZ格式:COM發(fā)展下去就是MZ格式的可執(zhí)行文件,這是DOS中具有重定位功能的可執(zhí)行文件格式。MZ可執(zhí)行文件內(nèi)含16位代碼,在這些代碼之前加了一個文件頭,文件頭中包括各種說明數(shù)據(jù),例如,第一句可執(zhí)行代碼執(zhí)行指令時所需要的文件入口點、堆棧的位置、重定位表等。裝載過程:操作系統(tǒng)根據(jù)文件頭的信息將代碼部分裝入內(nèi)存,然后根據(jù)重定位表修正代碼,最后在設(shè)置好堆棧后從文件頭中指定的入口開始執(zhí)行。DOS可以把MZ格式的程序放在任何它想要的地方。MZ標(biāo)志MZ文件頭其它信息重定位表的字節(jié)偏移量重定位表重定位表可重定位程序映像二進(jìn)制代碼//MZ格式可執(zhí)行程序文件頭structHeadEXE{WORDwType;//00HMZ標(biāo)志W(wǎng)ORDwLastSecSize;//02H最后扇區(qū)被使用的大小WORDwFileSize;//04H文件大小WORDwRelocNum;//06H重定位項數(shù)WORDwHeadSize;//08H文件頭大小WORDwReqMin;//0AH最小所需內(nèi)存WORDwReqMax;//0CH最大所需內(nèi)存WORDwInitSS;//0EHSS初值WORDwInitSP;//10HSP初值WORDwChkSum;//12H校驗和WORDwInitIP;//14HIP初值WORDwInitCS;//16HCS初值WORDwFirstReloc;//18H第一個重定位項位置WORDwOverlap;//1AH覆蓋WORDwReserved[0x20];//1CH保留WORDwNEOffset;//3CHNE頭位置};
NE格式為了保持對DOS的兼容性并滿足Windows的需要,Win3.x中出現(xiàn)的NE格式的可執(zhí)行文件中保留了MZ格式的頭,同時NE文件又加了一個自己的頭,之后才是可執(zhí)行文件的可執(zhí)行代碼。NE類型包括了EXE、DLL、DRV和FON四種類型的文件。NE格式的關(guān)鍵特性是:它把程序代碼、數(shù)據(jù)、資源隔離在不同的可加載區(qū)中;藉由符號輸入和輸出,實現(xiàn)所謂的運(yùn)行時動態(tài)鏈接。NE裝載16位的NE格式文件裝載程序(NELoader)讀取部分磁盤文件,并生成一個完全不同的數(shù)據(jù)結(jié)構(gòu),在內(nèi)存中建立模塊。當(dāng)代碼或數(shù)據(jù)需要裝入時,裝載程序必須從全局內(nèi)存中分配出一塊,查找原始數(shù)據(jù)在文件的位置,找到位置后再讀取原始的數(shù)據(jù),最后再進(jìn)行一些修正。每一個16位的模塊(Module)要負(fù)責(zé)記住現(xiàn)在使用的所有段選擇符,該選擇符表示該段是否已經(jīng)被拋棄等信息。MS-DOS頭DOS文件頭保留區(qū)域Windows頭偏移DOSStub程序信息塊NE文件頭段表資源表駐留名表模塊引用表引入名字表入口表非駐留名表代碼段和數(shù)據(jù)段程序區(qū)重定位表3COM文件病毒原理感染過程:將開始的3個字節(jié)保存在orgcode中.將這3個字節(jié)更改為0E9H和COM文件的實際大小的二進(jìn)制編碼。將病毒寫入原COM文件的后邊。在病毒的返回部分,將3個字節(jié)改為0E9H和表達(dá)式(當(dāng)前地址-COM文件的實際大小-病毒代碼大?。┑亩M(jìn)制編碼,以便在執(zhí)行完病毒后轉(zhuǎn)向執(zhí)行原程序。三、32位操作系統(tǒng)病毒示例分析
1PE文件結(jié)構(gòu)及其運(yùn)行原理2Win32文件型病毒編制技術(shù)3從ring3到ring0概述1PE文件結(jié)構(gòu)及其運(yùn)行原理
(1)PE文件格式總體結(jié)構(gòu)
PE(PortableExecutable:可移植的執(zhí)行體)是Win32環(huán)境自身所帶的可執(zhí)行文件格式。它的一些特性繼承自Unix的Coff(CommonObjectFileFormat)文件格式??梢浦驳膱?zhí)行體意味著此文件格式是跨win32平臺的,即使Windows運(yùn)行在非Intel的CPU上,任何win32平臺的PE裝載器都能識別和使用該文件格式。當(dāng)然,移植到不同的CPU上PE執(zhí)行體必然得有一些改變。除VxD和16位的Dll外,所有win32執(zhí)行文件都使用PE文件格式。因此,研究PE文件格式是我們洞悉Windows結(jié)構(gòu)的良機(jī)。PE文件結(jié)構(gòu)總體層次分布DOSMZheader‘MZ’格式頭DOSstubDos樁程序PEheaderPE文件頭Sectiontable節(jié)表Section1第1個節(jié)Section2第2個節(jié)……Sectionn第n個節(jié)所有PE文件必須以一個簡單的DOSMZheader開始。有了它,一旦程序在DOS下執(zhí)行,DOS就能識別出這是有效的執(zhí)行體。DOSstub實際上是個有效的EXE,在不支持PE文件格式的操作系統(tǒng)中,它將簡單顯示一個錯誤提示,類似于字符串“該程序不能在DOS模式下運(yùn)行”或者程序員可根據(jù)自己的意圖實現(xiàn)完整的DOS代碼。
PEheader是PE相關(guān)結(jié)構(gòu)IMAGE_NT_HEADERS的簡稱,其中包含了許多PE裝載器用到的重要域。sectiontable(節(jié)表)是節(jié)的索引。PE文件的真正內(nèi)容被劃分成塊,我們稱之為sections(節(jié))。每節(jié)是一塊擁有共同屬性的數(shù)據(jù),比如代碼/數(shù)據(jù)、讀/寫等。把PE文件想象成一邏輯磁盤,PEheader是磁盤的boot扇區(qū),而sections就是各種文件,每種文件自然就有不同屬性如只讀、系統(tǒng)、隱藏、文檔等等。其中節(jié)表就像目錄。值得我們注意的是——節(jié)的劃分是基于各組數(shù)據(jù)的共同屬性而不是邏輯概念。因此,我們不必關(guān)心節(jié)中類似于data,code或其他的邏輯概念。如果數(shù)據(jù)和代碼擁有相同屬性,它們就可以被歸入同一個節(jié)中。節(jié)名稱僅僅是個區(qū)別不同節(jié)的符號而已,類似于data和code等的節(jié)名稱只為了便于識別,惟有節(jié)的屬性設(shè)置決定了節(jié)的特性和功能。如果某塊數(shù)據(jù)想作為只讀屬性,就可以將該塊數(shù)據(jù)放入屬性為只讀的節(jié)中。裝載PE文件的主要步驟第一,當(dāng)PE文件被執(zhí)行,PE裝載器檢查DOSMZheader里的PEheader偏移量。如果找到,則跳轉(zhuǎn)到PEheader。第二,PE裝載器檢查PEheader的有效性。如果有效,就跳轉(zhuǎn)到PEheader的尾部。第三,緊跟PEheader的是節(jié)表。PE裝載器讀取其中的節(jié)索引信息,并采用文件映射方法將這些節(jié)映射到內(nèi)存,同時附上節(jié)表里指定的節(jié)屬性。第四,PE文件映射入內(nèi)存后,PE裝載器將處理PE文件中類似importtable(引入表)邏輯部分。(2)檢驗PE文件的有效性什么樣的PE文件是有效的?只要一些關(guān)鍵數(shù)據(jù)結(jié)構(gòu)有效,我們就認(rèn)為是有效的PE文件了。這個重要數(shù)據(jù)結(jié)構(gòu)就是PEheader。從編程角度看,PEheader實際就是一個IMAGE_NT_HEADERS結(jié)構(gòu)。IMAGE_NT_HEADERS結(jié)構(gòu)的定義如下:IMAGE_NT_HEADERSSTRUCTSignatureddFileHeaderIMAGE_FILE_HEADEROptionalHeaderIMAGE_OPTIONAL_HEADER32IMAGE_NT_HEADERSENDSSignature:該域為PE標(biāo)記,值為50h,45h,00h,00h(PE\0\0)。IMAGE_DOS_SIGNATUREequ5A4DhIMAGE_OS2_SIGNATUREequ454EhIMAGE_OS2_SIGNATURE_LEequ454ChIMAGE_VXD_SIGNATUREequ454ChIMAGE_NT_SIGNATUREequ4550hFileHeader:該結(jié)構(gòu)域包含了關(guān)于PE文件物理分布的信息,比如節(jié)數(shù)目、文件執(zhí)行機(jī)器等。OptionalHeader:該結(jié)構(gòu)域包含了關(guān)于PE文件邏輯分布的信息。定位PEheaderDOSMZheader(IMAGE_DOS_HEADER)包含了指向PEheader的文件偏移量,即e_lfanew。定位步驟為:第一,檢驗文件頭部第一個字的值是否等于IMAGE_DOS_SIGNATURE,是則DOSMZheader有效。第二,一旦證明文件的DOSMZheader有效后,就可用e_lfanew來定位PEheader了。第三,比較PEheader的第一個字的值是否等于IMAGE_NT_SIGNATURE。如果前后兩個值都匹配,那我們就認(rèn)為該文件是一個有效的PE文件。(3)文件頭(FileHeader)文件頭(FileHeader)是IMAGE_NT_HEADERS的一個重要的域。文件頭的表示結(jié)構(gòu)為:IMAGE_FILE_HEADERSTRUCTMachineWORDNumberOfSectionsWORDTimeDateStampddPointerToSymbolTableddNumberOfSymbolsddSizeOfOptionalHeaderWORDCharacteristicsWORDIMAGE_FILE_HEADERENDS域名含義Machine該文件運(yùn)行所要求的CPU。對于Intel平臺,該值是IMAGE_FILE_MACHINE_I386(14Ch)。NumberOfSections文件的節(jié)數(shù)目。如果我們要在文件中增加或刪除一個節(jié),就需要修改這個值。TimeDateStamp文件創(chuàng)建日期和時間。要讓它保持原樣,不要變PointerToSymbolTable用于調(diào)試。NumberOfSymbols用于調(diào)試。SizeOfOptionalHeader指示緊隨本結(jié)構(gòu)之后的OptionalHeader結(jié)構(gòu)大小,必須為有效值。Characteristics關(guān)于文件信息的標(biāo)記,比如文件是exe還是dll。(4)OptionalHeaderOptionalHeader是PEheader中最后,最大,也是最重要的成員,包含了PE文件的邏輯分布信息。該結(jié)構(gòu)共有31個域。虛擬地址(VA——VirtualAddress)RVA(RelativeVirtualAddress,相對虛擬地址)域名含義AddressOfEntryPointPE裝載器準(zhǔn)備運(yùn)行的PE文件的第一個指令的RVA。若您要改變整個執(zhí)行的流程,可以將該值指定到新的RVA,這樣新RVA處的指令首先被執(zhí)行。ImageBasePE文件的優(yōu)先裝載地址。比如,如果該值是400000H,PE裝載器將嘗試把文件裝到虛擬地址空間的400000H處。若該地址區(qū)域已被其他模塊占用,那PE裝載器會選用其他空閑地址。SectionAlignment內(nèi)存中節(jié)對齊的粒度。例如,如果該值是4096(1000H),那么每節(jié)的起始地址必須是4096的倍數(shù)。若第一節(jié)從401000H開始且大小是10個字節(jié),則下一節(jié)必定從402000H開始,即使401000H和402000H之間還有很多空間沒被使用。FileAlignment文件中節(jié)對齊的粒度。含義類似SectionAlignment。MajorSubsystemVersionMinorSubsystemVersionWin32系統(tǒng)版本。SizeOfImage內(nèi)存中整個PE映像體的尺寸。它是所有頭和節(jié)經(jīng)過節(jié)對齊處理后的大小。SizeOfHeaders所有頭+節(jié)表的大小,也就等于文件尺寸減去文件中所有節(jié)的尺寸??梢砸源酥底鳛镻E文件第一節(jié)的文件偏移量。SubsystemNT用來識別PE文件屬于哪個子系統(tǒng)。對于大多數(shù)Win32程序,只有兩類值:WindowsGUI和WindowsCUI(控制臺)。DataDirectoryIMAGE_DATA_DIRECTORY結(jié)構(gòu)數(shù)組。每個結(jié)構(gòu)給出一個重要數(shù)據(jù)結(jié)構(gòu)的RVA,比如引入地址表等。(5)節(jié)表(SectionTable)SectionTable是用來索引節(jié)的數(shù)組結(jié)構(gòu),其詳細(xì)表示為:IMAGE_SIZEOF_SHORT_NAMEequ8
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 貴州城市職業(yè)學(xué)院《操作系統(tǒng)概論》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025年江蘇省安全員C證考試(專職安全員)題庫附答案
- 2025山東省建筑安全員A證考試題庫
- 飼草種植加工基地建設(shè)項目可行性研究報告-畜牧業(yè)需求持續(xù)擴(kuò)大
- 貴陽人文科技學(xué)院《過程設(shè)備機(jī)械基礎(chǔ)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025年江蘇省安全員B證考試題庫及答案
- 廣州現(xiàn)代信息工程職業(yè)技術(shù)學(xué)院《用戶調(diào)研》2023-2024學(xué)年第一學(xué)期期末試卷
- 廣州鐵路職業(yè)技術(shù)學(xué)院《園藝作物育種學(xué)總論》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025年-遼寧省安全員-C證考試(專職安全員)題庫附答案
- 2025遼寧建筑安全員-B證考試題庫及答案
- 農(nóng)作物植保員培訓(xùn)課件
- 2024韓束品牌拆解-蟬媽媽
- 建筑企業(yè)合同管理培訓(xùn)課件
- 非急救轉(zhuǎn)運(yùn)公司計劃書
- 2023年中國軟件行業(yè)基準(zhǔn)數(shù)據(jù)SSM-BK-202310
- 天津市部分區(qū)2023-2024學(xué)年高一上學(xué)期期末練習(xí)生物試題【含答案解析】
- 稀土鋁合金電纜項目招商引資方案
- 人教版六年級數(shù)學(xué)下冊全冊分層作業(yè)設(shè)計含答案
- 面點專業(yè)職業(yè)生涯規(guī)劃與管理
- 紀(jì)梵希服裝營銷方案
- 農(nóng)耕研學(xué)基地可行性方案
評論
0/150
提交評論