木馬(python)反沙箱

前言

完成免殺任務之后迅速上線了某個目標,開啟了這次木馬的釣魚生涯

但是這種被丟到沙箱里 然后給你上線一大堆沒用的虛擬機

把你的遠控搞得一團亂糟糟不說 還容易增加你shellcode被暴露的風險


反沙箱虛擬機操作

習慣用python我就用python 寫了

而且我只挑了幾個我認為準確率比較高的方法

開機時間檢測

沙箱檢測木馬文件一般都是運行完就關機的,所以可以根據開機時間來判斷是不是真實的運行狀況

開機時間長短來判斷是否是沙箱虛擬機

boot_time = psutil.boot_time()???????????????????????????????????????? # 開機時間長短來判斷是否是沙箱虛擬機

boot_time_obj = datetime.fromtimestamp(boot_time)

h = boot_time_obj.hour

m = boot_time_obj.minute

s = boot_time_obj.second

b = int(h)*3600 + int(m)*60 + int(s)

now_time = datetime.now()

h = now_time.hour

m = now_time.minute

s = now_time.second

a = int(h)*3600 + int(m)*60 + int(s)

running_time = a - b

if running_time > 600:

? ? tkinter.messagebox.showinfo('Windows提示', '開機運行時間正常顯示')

else:tkinter.messagebox.showerror('Windows提示', '檢測到運行環(huán)境為虛擬機')

這里是與600秒作比較,也就是判斷機器是否運行超過10分鐘

正常機器運行

虛擬機運行

檢測CPU核心數(shù)

大多數(shù)pc擁有4核心cpu,許多在線檢測的虛擬機沙盤是2核心,我們可以通過核心數(shù)來判斷是否為真實機器或檢測用的虛擬沙箱。

? ? #檢測CPU核心數(shù)

? ? num_cpu = multiprocessing.cpu_count()

? ? if num_cpu > 3:

? ? ? ? tkinter.messagebox.showinfo('Windows提示', '正??蛻舳诉\行')

? ? else:tkinter.messagebox.showerror('Windows提示', '檢測到運行環(huán)境為虛擬機')

虛擬機(兩個):


檢測臨時文件數(shù)

正常使用的系統(tǒng),其中用戶的臨時文件夾中有一定數(shù)量的臨時文件,可以通過判斷臨時文件夾內的文件數(shù)量來檢測是否在沙箱中運行。

? ? ? ? #檢測系統(tǒng)臨時文件的數(shù)量

? ? ? ? path = 'C:\Windows\Temp'

? ? ? ? files = os.listdir(path)

? ? ? ? fold_num = len(files)

? ? ? ? if fold_num > 20:

? ? ? ? ? ? tkinter.messagebox.showinfo('Windows提示', '正??蛻舳诉\行')

? ? ? ? else:tkinter.messagebox.showerror('Windows提示', '檢測到運行環(huán)境為虛擬機')

傳到沙箱看一下


檢測臨時文件數(shù)的時候報了個高風險,可以換個寫法或者直接直接用計算temp文件夾大小來替代目錄遍歷

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容