内容导读:导航目录:1、有哪些值得推荐的Python开发工具?2、渗透测试的工具一般是用什么语言写的?Windows和Linux平台的软件应该差别3、用Python写过哪些的小工具4、Python渗透测试工具都有哪些5、...……
导航目录:
- 1、有哪些值得推荐的 Python 开发工具?
- 2、渗透测试的工具一般是用什么语言写的?Windows和Linux平台的软件应该差别
- 3、用Python写过哪些的小工具
- 4、Python渗透测试工具都有哪些
- 5、用python搞渗透可以不
有哪些值得推荐的 Python 开发工具?
之一款:最强终端 Upterm
它是一个全平台的终端,可以说是终端里的IDE,有着强大的自动补全功能,之前的名字叫做:BlackWindow。有人跟他说这个名字不利于社区推广,改名叫Upterm之后现在已经17000+Star了。
第二款:交互式解释器 PtPython
一个交互式的Python解释器,支持语法高亮、提示,甚至是VIM和emacs的键入模式。
第三款:包管理必备 Anaconda
强烈推荐:Anaconda。它能帮你安装许多麻烦的东西,包括:Python环境、pip包管理工具、常用的库、配置好环境路径等等。这些小事情小白自己一个个去做的话,容易遇到各种问题,也容易造成挫败感。如果你想用Python搞数据方面的事情,安装它就可以了,它甚至开发了一套JIT的解释器Numba。所以Anaconda有了JIT之后,对线上科学计算效率要求比较高的东西也可以搞定了。
第四款:编辑器 Sublime3
如果你是小白的话,推荐从PyCharm开始上手,但是有时候写一些轻量的小脚本,就会想到轻量级一点的工具。Sublime3很多地方都有了极大的提升,并且用起来比原来还要简单,配合安装Anaconda或CodeIntel插件,可以让Sublime3拥有近乎IDE的体验。
第五款:前端在线编辑器 CodeSandbox
虽然这个不算是真正意义上的Python开发工具,但如果后端工程师想要写前端的话,这个在线编辑器太方便了,节省了后端工程师的生命。不用安装npm的几千个包了,它已经在云端完成了,才让你直接就可以上手写代码、看效果。对于React、Vue这些主流前端框架都支持。
第六款:Python Tutor
Python Tutor是一个免费教育工具,可帮助学生攻克编程学习中的基础障碍,理解每一行源代码在程序执行时在计算机中的过程。通过这个工具,教师或学生可以直接在web浏览器中编写Python代码,并逐步可视化地运行程序。
第七款:IPython
如何进行交互式编程?没错,就是通过IPython。IPython相对于Python自带的shell要好用的多,并且能够支持代码缩进、TAB键补全代码等功能。如果进行交互式编程,这是不可缺少的工具。
第八款:Jupyter Notebook
Jupyter Notebook就像一个草稿本,能将文本注释、数学方程、代码和可视化内容全部组合到一个易于共享的文档中,以Web页面的方式展示,它是数据分析、机器学习的必备工具。
第九款:Pycharm
Pycharm是程序员常常使用的开发工具,简单、易用,并且能够设置不同的主题模式,根据自己的喜好来设置代码风格。
第十款:Python Tutor
这个工具可能对初学者比较有用,而对于中高级程序员则用处较少。这个工具的特色是能够清楚的理解每一行代码是如何在计算机中执行的,中高级程序员一般通过分步调试可以实现类似的功能。这个工具对于最初接触Python、最初来学习编程的同学还是非常有用的,初学者可以体验一下。
渗透测试的工具一般是用什么语言写的?Windows和Linux平台的软件应该差别
常用是python,有的工具是用C++和java写的,所以更好多学习一门语言
用Python写过哪些的小工具
为了逃避学校布置的美术作业,写过一个画素描的程序。
从后再也不担心美术作业了。
也就是利用Python的PIL库来 将彩色图片转化为素描效果的图片
更新说明:
前面那个程序写的太粗糙了,不好意思拿出来分享,重新写了一遍,加上了GUI图形界面。
配置环境:
windows 10
python 3.5
image.py
from PIL import Image
import numpy as np
import os
import join
import time
def image(sta,end,depths=10):
a = np.asarray(Image.open(sta).convert('L')).astype('float')
depth = depths # (0-100)
grad = np.gradient(a) # 取图像灰度的梯度值
grad_x, grad_y = grad # 分别取横纵图像梯度值
grad_x = grad_x * depth / 100.
grad_y = grad_y * depth / 100.
A = np.sqrt(grad_x ** 2 + grad_y ** 2 + 1.)
uni_x = grad_x / A
uni_y = grad_y / A
uni_z = 1. / A
vec_el = np.pi / 2.2 # 光源的俯视角度,弧度值
vec_az = np.pi / 4. # 光源的方位角度,弧度值
dx = np.cos(vec_el) * np.cos(vec_az) # 光源对x 轴的影响
dy = np.cos(vec_el) * np.sin(vec_az) # 光源对y 轴的影响
dz = np.sin(vec_el) # 光源对z 轴的影响
b = 255 * (dx * uni_x + dy * uni_y + dz * uni_z) # 光源归一化
b = b.clip(0, 255)
im = Image.fromarray(b.astype('uint8')) # 重构图像
im.save(end)
def mains(numbers):
number = int(numbers)
startss = os.listdir(".\输入----图片")
time.sleep(2)
for starts in startss:
start = ''.join(starts)
print('正在转化--图片: ' + start)
sta = './' + '输入----图片/' + start
end = './' + '输出----图片/' + 'HD_20' + start
image(sta=sta,end=end,depths=number)
简单来说,就是利用python的Numpy库,将图像降维转化为数字化的数据,之后对数据进行操作,再利用pillow库将操作好的数据转化为素描效果的图片。
GUI图形界面程序
main.py
import os
from image import mains
from tkinter import *
def exists_mkdir():
if os.path.exists('输出----图片') and os.path.exists('输入----图片'):
pass
else:
os.mkdir('输出----图片')
os.mkdir('输入----图片')
def images():
try:
s1 = e1.get()
a = mains(s1)
c["text"] = "我们的程序运行成功了"
except Exception:
c["text"] = "程序运行出错了,可能是缺少了两个配置文件"
#创建程序运行需要的工作目录
exists_mkdir()
tk = Tk()
# 设置窗口大小和位置
tk.geometry('430x350+80+60')
# 不允许改变窗口大小
tk.resizable(False, False)
## 用来显示Label组件
tk.title('素描图生成器')
w1 = Label(tk,text='作者博客:')
w = Label(tk,text='')
w2 = Label(tk,text='欢迎使用:')
w3 = Label(tk,text='步骤一:将需要转化的图片放入 输入----图片 文件夹下')
w4 = Label(tk,text='步骤二:输入 0-100的数值,数值越大,颜色越深。--------标准参数是 10 ')
w5 = Label(tk,text='步骤三:点击确认 运行程序 等待出现提示')
w6 = Label(tk,text='步骤四:到输入----图片 文件夹找到素描图')
w1.grid(row=0,column=0,sticky=W)
w.grid(row=1,column=0,sticky=W)
w2.grid(row=2,column=0,sticky=W)
w3.grid(row=3,column=0,sticky=W)
w4.grid(row=4,column=0,sticky=W)
w5.grid(row=5,column=0,sticky=W)
w6.grid(row=6,column=0,sticky=W)
l = Label(tk,text="输入 0-100的数值")
l.grid(row=8,column=0,sticky=E)
## 用来显示输入框
e1 = Entry(tk)
e1.grid(row=10,column=0,sticky=E)
## 用来显示Button
b = Button(tk,text='确定',command=images)
b.grid(row=12,column=0,sticky=E)
c = Label(tk,text="",background="yellow")
c.grid(row = 15)
# 启动消息主循环
tk.mainloop()
运行效果:
这个程序我用pyinstaller做成exe文件了。
Python渗透测试工具都有哪些
***
Scapy, Scapy3k: 发送,嗅探,分析和伪造 *** 数据包。可用作交互式包处理程序或单独作为一个库
pypcap, Pcapy, pylibpcap: 几个不同 libpcap 捆绑的python库
libdnet: 低级 *** 路由,包括端口查看和以太网帧的转发
dpkt: 快速,轻量数据包创建和分析,面向基本的 TCP/IP 协议
Impacket: 伪造和解码 *** 数据包,支持高级协议如 NMB 和 *** B
pynids: libnids 封装提供 *** 嗅探,IP 包碎片重组,TCP 流重组和端口扫描侦查
Dirtbags py-pcap: 无需 libpcap 库支持读取 pcap 文件
flowgrep: 通过正则表达式查找数据包中的 Payloads
Knock Subdomain Scan: 通过字典枚举目标子域名
SubBrute: 快速的子域名枚举工具
Mallory: 可扩展的 TCP/UDP 中间人 *** 工具,可以实时修改非标准协议
Pytbull: 灵活的 IDS/IPS 测试框架(附带超过300个测试样例)
调试和逆向工程
Paimei: 逆向工程框架,包含PyDBG, PIDA , pGRAPH
Immunity Debugger: 脚本 GUI 和命令行调试器
mona.py: Immunity Debugger 中的扩展,用于代替 pvefindaddr
IDAPython: IDA pro 中的插件,集成 Python 编程语言,允许脚本在 IDA Pro 中执行
PyEMU: 全脚本实现的英特尔32位仿真器,用于恶意软件分析
pefile: 读取并处理 PE 文件
pyda *** : Python 封装的libda ***
PyDbgEng: Python 封装的微软 Windows 调试引擎
uhooker: 截获 DLL 或内存中任意地址可执行文件的 API 调用
diStorm: AMD64 下的反汇编库
python-ptrace: Python 写的使用 ptrace 的调试器
vdb/vtrace: vtrace 是用 Python 实现的跨平台调试 API, vdb 是使用它的调试器
Androguard: 安卓应用程序的逆向分析工具
Capstone: 一个轻量级的多平台多架构支持的反汇编框架。支持包括ARM,ARM64,MIPS和x86/x64平台
PyBFD: GNU 二进制文件描述(BFD)库的 Python 接口
Fuzzing
Sulley: 一个模糊器开发和模糊测试的框架,由多个可扩展的构件组成的
Peach Fuzzing Platform: 可扩展的模糊测试框架(v2版本 是用 Python 语言编写的)
antiparser: 模糊测试和故障注入的 API
TAOF: (The Art of Fuzzing, 模糊的艺术)包含 ProxyFuzz, 一个中间人 *** 模糊测试工具
untidy: 针对 XML 模糊测试工具
Powerfuzzer: 高度自动化和可完全定制的 Web 模糊测试工具
*** UDGE: 纯 Python 实现的 *** 协议模糊测试
Mistress: 基于预设模式,侦测实时文件格式和侦测畸形数据中的协议
Fuzzbox: 媒体多编码器的模糊测试
Forensic Fuzzing Tools: 通过生成模糊测试用的文件,文件系统和包含模糊测试文件的文件系统,来测试取证工具的鲁棒性
Windows IPC Fuzzing Tools: 使用 Windows 进程间通信机制进行模糊测试的工具
WSBang: 基于 Web 服务自动化测试 SOAP 安全性
Construct: 用于解析和构建数据格式(二进制或文本)的库
fuzzer.py(feliam): 由 Felipe Andres Manzano 编写的简单模糊测试工具
Fusil: 用于编写模糊测试程序的 Python 库
Web
Requests: 优雅,简单,人性化的 HTTP 库
HTTPie: 人性化的类似 cURL 命令行的 HTTP 客户端
ProxMon: 处理 *** 日志和报告发现的问题
W *** ap: 寻找 Web 服务器和发现文件
Twill: 从命令行界面浏览网页。支持自动化 *** 测试
Ghost.py: Python 写的 WebKit Web 客户端
Windmill: Web 测试工具帮助你轻松实现自动化调试 Web 应用
FunkLoad: Web 功能和负载测试
spynner: Python 写的 Web浏览模块支持 Javascript/AJAX
python-spidermonkey: 是 Mozilla *** 引擎在 Python 上的移植,允许调用 Javascript 脚本和函数
mitmproxy: 支持 SSL 的 HTTP *** 。可以在控制台接口实时检查和编辑 *** 流量
pathod/pathoc: 变态的 HTTP/S 守护进程,用于测试和折磨 HTTP 客户端
用python搞渗透可以不
可以的
python是一种很方便的脚本语言
写成脚本去进行渗透