123个Python渗透测试工具,当然不仅于渗透~

如果你想参与漏洞研究、逆向工程和渗透,我建议你时候用Python语言。Python已经有很多完善可用的库,我将在这里把他们列出来。

这个清单里的工具大部分都是Python写成的,一部分是现有C库的Python绑定,这些库在Python中都可以简单使用。

一些强力工具(pentest frameworks、bluetooth smashers、web application vulnerability scanners、war-dialers等)被排除在外,原因是部分工具在德国法律上有一点争议——就算最高法院曾经认定过。这个清单的主要目的是为了帮助白帽黑客,所以我还是怂一点。

Network

  • Scapy, Scapy3k:发送,嗅探和剖析并伪造网络数据包,可以做交互式应用或单纯的作为库来使用
  • pypcap, Pcapy and pylibpcap:几个不同的libpcap捆绑Python库
  • libdnet:低级别的网络路由器,可用于接口查找和以太网帧转发
  • dpkt: 快速、轻量级的数据包创建、解析工具,适用于基本TCP/IP协议
  • Impacket: 探测和解码网络数据包,支持更高级别协议比如NMB和SMB
  • pynids:libnids封装提供嗅探,IP碎片整理,TCP流重组和端口扫描检测
  • Dirtbags py-pcap:无需libpcap即可读取pcap文件
  • flowgrep:通过正则表达式查找数据包中的 Payloads
  • Knock Subdomain Scan:通过字典枚举目标域上的子域名
  • SubBrute: 快速子域枚举工具
  • Mallory:可扩展的TCP / UDP中间代理,支持即时修改非标准协议
  • Pytbull:灵活的IDS / IPS测试框架(配有300多个测试用例)
  • Spoodle:大量子域名+Poodle漏洞扫描器
  • SMBMap:枚举域中的Samba共享驱动器

调试和逆向工程

  • Paimei:逆向工程框架,包含PyDBG, PIDA, pGRAPH
  • Immunity Debugger可脚本化的GUI和命令行调试工具
  • mona.py:Immunity Debugger 中的扩展,用于代替 pvefindaddr
  • IDAPython:DA pro 中的插件,集成 Python 编程语言,允许脚本在 IDA Pro 中执行
  • PyEMU:全脚本实现的英特尔32位仿真器,用于恶意软件分析
  • pefile:读取并处理 PE 文件
  • pydasm:ibdasm x86反汇编库的Python接口
  • PyDbgEng:Python封装的微软视窗操作系统调试引擎
  • uhooker:截获 DLL 或内存中任意地址可执行文件的 API 调用
  • diStorm:AMD64平台下的反汇编库,通过BSD许可
  • Frida:一个动态的工具框架,可以将脚本注入到运行的进程中
  • python-ptrace: Python语言写成的应用ptrace的调试器(Linux,BSD和Darwin系统调用跟踪进程)
  • vdb / vtrace:vtrace是一个Python实现的跨平台进程调试API,vdb是一个应用该API的调试器
  • Androguard:安卓应用程序的逆向分析工具
  • Capstone:一个轻量级的多平台多架构支持的反汇编框架。支持包括ARM,ARM64,MIPS和x86/x64平台
  • Keystone:一个轻量级的多平台多架构支持的汇编框架
  • PyBFD:GNU 二进制文件描述(BFD)库的 Python 接口
  • CHIPSEC:分析硬件,系统固件(BIOS / UEFI)和平台组件等PC平台安全性的框架。

模糊测试

  • afl-python:用于纯Python代码的American fuzzy lop
  • Sulley:一个模糊器开发和模糊测试的框架,由多个可扩展的构件组成的
  • Peach Fuzzing Platform:扩展的模糊测试框架(v2版本 是用 Python 语言编写的)
  • antiparser:模糊测试和故障注入的 API
  • TAOF:(The Art of Fuzzing, 模糊的艺术)包含 ProxyFuzz, 一个中间人网络模糊测试工具
  • untidy:针对 XML 模糊测试工具
  • Powerfuzzer:高度自动化和可完全定制的 Web 模糊测试工具
  • SMUDGE
  • 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 库
  • lxml:便于使用的XML、HTML处理库,类似于Requests
  • HTTPie:人性化的类似 cURL 命令行的 HTTP 客户端
  • ProxMon:处理代理日志和报告发现的问题
  • WSMap:寻找 Web 服务器和发现文件
  • Twill:从命令行界面浏览网页。支持自动化网络测试
  • Ghost.py:Python 写的 WebKit Web 客户端
  • Windmill:Web 测试工具帮助你轻松实现自动化调试 Web 应用
  • FunkLoad:Web 功能和负载测试
  • spynner:Python 写的 Web浏览模块支持 Javascript/AJAX
  • python-spidermonkey:是 Mozilla JS 引擎在 Python 上的移植,允许调用 Javascript 脚本和函数
  • mitmproxy:支持 SSL 的 HTTP 代理。可以在控制台接口实时检查和编辑网络流量
  • pathod / pathoc:病态的守护程序/客户端,用于折磨HTTP客户端和服务器
  • spidy:简单的命令行网页抓取器,具有页面下载和单词刮除功能

取证

  • Volatility:从 RAM 中提取数据
  • Rekall: Google 开发的内存分析框架
  • LibForensics:数字取证应用程序库
  • TrIDLib:Python 实现的从二进制签名中识别文件类型
  • aft:安卓取证工具集恶意软件分析

恶意软件分析

  • pyew:命令行十六进制编辑器和反汇编工具,主要用于分析恶意软件
  • Exefilter:过滤 E-mail,网页和文件中的特定文件格式。可以检测很多常见文件格式,也可以移除文档内容
  • pyClamAV:增加你 Python 软件的病毒检测能力
  • jsunpack-n:通用 JavaScript 解释器,通过模仿浏览器功能来检测针对目标浏览器和浏览器插件的漏洞利用
  • yara-python:恶意软件样本进行识别和分类
  • phoneyc:纯 Python 实现的蜜罐
  • CapTipper:分析,研究和重放 PCAP 文件中的 HTTP 恶意流量

PDF

  • peepdf:Python 编写的PDF文件分析工具,可以帮助检测恶意的PDF文件
  • Didier Stevens' PDF tools:析,识别和创建 PDF 文件(包含PDFiD,pdf-parser,make-pdf 和 mPDF)
  • Opaf:开放 PDF 分析框架,可以将 PDF 转化为 XML 树从而进行分析和修改
  • Origapy:Ruby 工具Origami的 Python 接口,用于审查 PDF 文件
  • pyPDF2:Python PDF 工具包包含:信息提取,拆分,合并,制作,加密和解密等等
  • PDFMiner:从 PDF 文件中提取文本
  • python-poppler-qt4:Python 写的 Poppler PDF 库,支持 Qt4

杂项

  • InlineEgg:使用 Python 编写的具有一系列小功能的工具箱
  • Exomind:一种旨在通过社交网络提供针对性攻击的工具。(原文是:围绕社交网络服务、搜索引擎和即时消息为中心创建装饰图形、开源智能模块的框架(framework for building decorated graphs and developing open-source intelligence modules and ideas, centered on social network services, search engines and instant messaging)感觉直接翻译原文不太到位,所以我找了一下官网,发现官网描述简单粗暴:)
  • RevHosts:枚举指定 IP 地址包含的虚拟hosts
  • simplejson:JSON 编码和解码器,例如使用Google's AJAX API
  • PyMangle:命令行工具和一个创建用于渗透测试使用字典的库
  • Hachoir:查看和编辑二进制流
  • py-mangle: 重复项
  • wmiexec.py:通过WMI快速轻松地执行Powershell命令
  • Pentestly:Python和Powershell内部渗透测试框架
  • hacklib: 黑客爱好者的工具包:词语破解,密码猜测,反向外壳等简单工具

其他有用的库或工具

  • IPython: 增强的交互式Python shell,具有许多功能,用于对象内省,系统shell访问以及自己的特殊命令系统
  • Beautiful Soup: 用于抓取的优化版HTML解析器
  • matplotlib: 制作2维图形
  • Mayavi: 三维科学数据的可视化与绘图
  • RTGraph3D: 在三维空间中创建动态图
  • Twisted: 事件驱动的网络引擎
  • Suds: 用于web服务的轻量级SOAP客户端
  • M2Crypto: 最完整的OpenSSL包装
  • NetworkX: 图像库(边、节点)
  • Pandas:提供高性能,易于使用的数据结构和数据分析工具的库
  • pyparsing:通用解析模块
  • lxml:Python中用来处理XML和HTML的功能最多、最宜于使用的库
  • Whoosh:用Python实现的快速,有特色的全文索引和搜索库
  • Pexpect: 控制和自动化其他程序,类似于Don Libes`Expect`系统
  • Sikuli:使用屏幕截图实现搜索和自动化GUI的可视化技术,可在Jython中运行
  • PyQt and PySide:ython 捆绑的 Qt 应用程序框架和 GUI 库

书籍

  • Violent Python 作者:TJ O'Connor。一本黑客、取证分析师、渗透测试员和安全工程师的cookbook
  • Grey Hat Python 作者:Justin Seitz。用于黑客和逆向工程的Python编程书
  • Black Hat Python 作者:Justin Seitz。用于黑客和渗透测试的Python编程
  • Python Penetration Testing Essentials 作者:Mohit。使用Python的特性实现最佳渗透效果
  • Python for Secret Agents 作者:Steven F. Lott。使用Python分析,加密和发现智能数据
  • Python Web Penetration Testing Cookbook 作者:Cameron Buchanan等。超过60个用于Web应用程序测试的Python用例
  • Learning Penetration Testing with Python 作者:Christopher Duffy。利用Python脚本执行有效和高效的渗透测试
  • Python Forensics 作者:Chet Hosmer。发明和共享数字取证技术的工作台
  • The Beginner's Guide to IDAPython 作者:Alexander Hanel

演讲、幻灯片和文章

  • Python & Reverse Engineering Software 作者:Alexander Hanel
  • Python Arsenal for Reverse Engineering 作者:Dmitriy Evdokimov于2016年RUCTF
  • SecurityTube Python Scripting Expert (SPSE) 是一个Vivek Ramachandran提供认证的在线课堂
  • SANS提供了课程SEC573: Python for Penetration Testers.
  • Python Arsenal for Reverse Engineering 是一个有大量逆向工程工具的合集
  • 一篇来源于SANS的关于可用于取证分析的Python库的文章(PDF)
  • 想要找到更多Python库,请查看PyPI的Python包索引

这里有123个黑客必备的Python工具!的更多相关文章

  1. 6个炫酷又好用的 Python 工具,个个都很奔放呀

    贝多芬写完<第九交响曲>后说:it's done:耶稣在被处死前说:it is done:<指环王>结尾摧毁魔戒后Frodo说:it's done! 我整理完这6个Python ...

  2. 八款Android 开发者必备的小工具

    Photo from https://www.airpair.com 在做Android 开发过程中,会遇到一些小的问题,虽然自己动手也能解决,但是有了一些小工具,解决这些问题就得心应手了,今天就为大 ...

  3. 10款Mac上程序员装机必备的开发工具推荐和下载

    10款Mac上程序员装机必备的开发工具推荐和下载 使用Mac的用户主要有两大类:设计师和程序员,为各位程序员童鞋推荐10个Mac上非常棒的开发工具和辅助工具,分享软件专题[10款Mac上程序员装机必备 ...

  4. python工具 - 批量文件重命名

    日常工作中经常会遇到这样的情况,需要将某个文件夹下的文件按着一定的规则进行重命名,当文件数量及其庞大的时候手工一个一个的去修需要耗费大量的时间,以下python工具可以协助批量修改文件名. 场景:某文 ...

  5. 借助python工具从word文件中抽取相关表的定义,最后组装建表语句-非常好

    借助python工具从word文件中抽取表的定义,最后组装建表语句-非常好 --如有转载请以超链接的方式注明原文章出处,谢谢大家.请尊重每一位乐于分享的原创者 1.python脚本 ## -*- co ...

  6. 数据分析常用的python工具和SQL语句

    select symbol, "price.*" from stocks :使用正则表达式来指定列查询 select count(*), avg(salary) from empl ...

  7. 精通Docker的50个必备教程、工具、资源

    Docker 已经震惊了软件开发界.它提供了一种根据 DevOps 方法打包和输送应用程序的便捷方法. 最近我们发布了 51 个必备的 Docker 工具列表①,但工具不是完全精通容器化所需的唯一东西 ...

  8. 新版.Net开发必备十大工具(转)

    Snippet Compiler Snippet Compiler是一个基于 Windows 的小型应用程序,你可以通过它来编写.编译和运行代码.如果你具有较小的代码段,并且你不想创建完整的 Visu ...

  9. python工具

    目录 Python工具 1. argparse 2. tqdm 3. os, shutil 4. csv Python工具 1. argparse import argparse parser = a ...

随机推荐

  1. java做微信支付notify_url异步通知服务端的写法

    最近团队在接入微信支付,APP和JSAPI的接口都需要填写一个notify_url回调地址,但是坑爹的官方文档并没有找到JSAPI模式的java版的demo,所以不得不自己看文档写了一个接受微信异步通 ...

  2. jQuery memory&unique&stopOnfalse

    memory:保持以前的值,将添加到这个列表的后面的最新的值立即执行调用任何回调 (像一个递延 Deferred). 回调函数是从异步队列Deferred分离出来的,所以很多的接口设计都是为了契合De ...

  3. Codeforces 449 B. Jzzhu and Cities

    堆优化dijkstra,假设哪条铁路能够被更新,就把相应铁路删除. B. Jzzhu and Cities time limit per test 2 seconds memory limit per ...

  4. prism behavior图示

    原文:prism behavior图示 怕以后丢失,还是发一下,看起来可能会比较乱

  5. Win7使用初体验

    作者:朱金灿 来源:http://blog.csdn.net/clever101 最近装了个Win7旗舰版.随着年纪渐大,我对软件使用越来越趋于务实,不再追求最新版本,因为我评价一个好软件的标准是适用 ...

  6. Android于popWindow写弹出菜单

    1.什么是popWindow? popWindow这是对话的方式!文字解说android的方式来使用对话框,这就是所谓的popWindow. 2.popWindow特征 Android的对话框有两种: ...

  7. HDU 3153 Pencils from the 19th Century(数学)

    主题链接:http://acm.hdu.edu.cn/showproblem.php?pid=3153 Problem Description Before "automaton" ...

  8. MyEclipse和Eclipse区别与联系

    Eclipse:IBM花了4千万美金来开发这个IDE(Integrated Development Environment).第一版1.0在2001年11月释出,随后逐渐受到欢迎.Eclipse已经成 ...

  9. Theano 编程核心

    1. 求偏导.更新以及模型的训练 以 LogisticRegression 为例: 求损失函数关于参数的偏导: import theano.tensor as T g_W = T.gradient(c ...

  10. Java踩坑之路

    陆陆续续学Java也快一年多了,从开始的一窍不通到现在的初窥门径,我努力过,迷茫过,痛过,乐过,反思过,沉淀过.趁着新年,我希望能把这些东西记下来,就当是我一路走来的脚印. 一.初识网站应用 记得第一 ...