专栏首页北京马哥教育专为渗透测试人员设计的Python工具大合集

专为渗透测试人员设计的Python工具大合集

如果你对漏洞挖掘、逆向工程分析或渗透测试感兴趣的话,我第一个要推荐给你的就是Python编程语言。Python不仅语法简单上手容易,而且它还有大量功能强大的库和程序可供我们使用。在这篇文章中,我们会给大家介绍其中的部分工具。

注:本文罗列出来的工具绝大部分都是采用Python编写的,其中有一小部分还使用了C语言库。

Network(网络)

l Scapy :一款强大的交互式数据报分析工具,可用作发送、嗅探、解析和伪造网络数据包。

l pypcap 、 Pcapy 和 pylibpcap :配合libpcap一起使用的数据包捕获模块

l libdnet :底层网络工具,含接口查询和以太网帧传输等功能

l dpkt :可以快速简单地创建或解析数据包

l Impacket :制作和解码网络数据包,支持NMB和SMB等高级协议

l pynids :封装了libnids,可用于数据包嗅探、消除IP碎片、TCP流再封装和端口扫描检测

l Dirtbags py-pcap :读取pcap文件

l flowgrep :使用正则表达式检索数据包payload

l Knock Subdomain Scan :使用字典(wordlist)对特定域名进行子域名枚举

l Mallory :可扩展的TCP/UDP中间人代理,支持对非标准协议进行实时修改

l Pytbull :灵活的IDS/IPS测试框架,包含300多种测试

调试和逆向工程分析

l Paimei :逆向分析框架,包含PyDBG、PIDA和pGRAPH

l Immunity Debugger :用于加速漏洞利用程序的开发,辅助漏洞挖掘以及恶意软件分析,拥有完整的图形用户界面,并提供了命令行调试器

l mona.py :一款挖洞插件

l IDAPython :IDA Pro插件,整合了Python编程语言,并支持在IDA Pro中运行脚本

l PyEMU :支持脚本的完整IA-32模拟器,用于恶意软件分析

l pefile :读取并操作PE文件

l pydasm :提供了libdasmx86反汇编库的访问接口

l PyDbgEng :封装了微软WindowsDebugging引擎

l uhooker :拦截DLL内部的API调用,查看内存中可执行文件的任意地址

l diStorm :针对AMD64的反汇编库,遵循BSD许可协议

l python-ptrace :使用ptrace的调试器

l vdb/vtrace :vtrace是一款通过Python调试API的跨平台工具,vdb是vtrace所使用的调试器

l Androguard :可用于对Android应用进行逆向分析

Fuzzing(模糊测试)

l Sulley : 集合了大量可扩展组件的模糊测试开发框架

l Peach Fuzzing Platform : 基于生成和变异的模糊测试框架(可扩展性强)

l antiparser : 模糊测试工具,提供了故障注入API

l TAOF :包含ProxyFuzz,一款中间人网络模糊测试器

l untidy :通用的XML模糊测试器

l Powerfuzzer :高度自动化和完全可定制的Web模糊测试器

l SMUDGE

l Mistress :通过畸形数据测试文件格式和协议的工具,基于预定义模式

l Fuzzbox :多媒体编解码模糊测试器

l Forensic Fuzzing Tools :可生成模糊测试文件和模糊测试文件系统,文件系统中包含取证工具和测试系统

l Windows IPC Fuzzing Tools :利用Windows进程间通信机制来对应用程序进行模糊测试的工具

l WSBang :用于对Web服务进行自动化安全测试的Python工具

l Construct :解析和构建数据结构的代码库

l fuzzer.py (feliam) :FelipeAndres Manzano 设计的一款简单的模糊测试工具

l Fusil :编写模糊测试程序的代码库

Web

l Requests :一个简单友好的HTTP库

l HTTPie :有好的类cURL命令行HTTP客户端

l ProxMon :处理代理日志,报告发现的问题

l WSMap :寻找Web服务节点,扫描文件

l Twill :通过命令行接口浏览Web,支持自动化Web测试

l Ghost.py :Webkit Web客户端

l Windmill :允许我们自动化测试和调试Web应用的Web测试工具

l FunkLoad :该工具允许加载多功能的Web应用测试组件

l spynner :支持Javascript/AJAX的可编程Web浏览模块

l python-spidermonkey :桥接Mozilla SpiderMonkeyJavaScript引擎,允许对JavaScript脚本和函数进行测试和调用

l mitmproxy :支持SSL的HTTP代理,可通过命令行接口实时拦截和编辑网络流量

l pathod / pathoc :可向HTTP客户端和服务求提供畸形测试用例

Forensics(信息取证)

l Volatility :从RAM样本中提取数据

l LibForensics :开发数字取证应用的代码库

l TrIDLib :通过代码签名识别文件类型

l aft :Android取证工具

Malware Analysis(恶意软件分析)

l pyew :命令行十六进制编辑器和反汇编工具,主要用于分析恶意软件

l Exefilter :过滤邮件、Web页面或文件中的文件格式,检测常见文件格式并能移除活动内容

l pyClamAV :向Python软件中添加病毒检测功能

l jsunpack-n :通用的JavaScript拆包工具,可枚举浏览器功能并检测漏洞,针对的是浏览器和浏览器插件漏洞

l yara-python :识别和分类恶意软件样本

l phoneyc :纯蜜罐系统

PDF

l Didier Stevens’ PDF tools : 分析、识别和创建PDF文件,包括 PDFiD 、 pdf-parser 、 make-pdf 和mPDF

l Opaf :开源PDF分析框架,可将PDF转换成可分析和修改的XML树

l Origapy :封装了Origami Ruby模块,可对PDF文件进行安全审查

l pyPDF :纯PDF工具,可提取、合并、加密和解密PDF内容

l PDFMiner :从PDF文件中提取文字内容

l python-poppler-qt4 :绑定了Poppler PDF库,支持Qt4

杂项

l InlineEgg :Python工具箱,可用于编写小型汇编程序

l Exomind :开发开源智能模块的框架,以社交网络服务、搜索引擎和即时消息为中心

l RevHosts :根据给定IP地址枚举出虚拟主机

l simplejson :使用了 Google AJAX API 的JSON解码/编码器

l PyMangle :用于创建渗透测试工具所用字典(Wordlist)的命令行工具/代码库

l Hachoir :查看和编辑代码流中的数据域

l py-mangle :另一款用于创建渗透测试工具所用字典(Wordlist)的命令行工具/代码库

其他有用的库和工具

l IPython :多功能增强型交互式Python Shell

l Beautiful Soup :爬虫可能会用到的HTML解析器

l Mayavi :3D科学数据虚拟化工具

l RTGraph3D :创建3D动态图像

l Twisted :事件驱动型网络引擎

l Suds :用于Web服务的轻量级SOAP客户端

l M2Crypto :最完整的OpenSSL封装器

l NetworkX :图形库

l Pandas :可提供高性能数据结构的数据分析工具

l pyparsing :通用解析模块

l lxml :采用Python编写的功能丰富且易于使用的XML和HTML工具

l Whoosh :纯Python实现的全功能文本索引、搜索库

l Pexpect :控制或实现其他程序的自动化,类似Don Libes `Expect` system

l Sikuli :虚拟化技术,通过截图实现搜索和自动化GUI,可利用 Jython 进行脚本扩展

l PyQt + PySide :Qt应用框架和GUI库所需模块

作者:Alpha_h4ck 来源:http://www.freebuf.com/sectool/138779.html

本文分享自微信公众号 - 马哥Linux运维(magedu-Linux),作者:Alpha_h4ck

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-07-04

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 别掉队!2020年将出现的7种新兴自动化Web测试趋势,你知道吗?

    在最近几年中,技术以多种形式发展。从开发到测试再到持续交付,我们已经看到了IT行业的许多变化。但是,软件测试过程遇到了最积极的变化,特别是在测试过程中引入自动化...

    小小科
  • 十个免费的 Web 压力测试工具

    本文列举了是十个免费工具,可以用来进行Web的负载/压力测试的。这样你就可以知道你的服务器以及你的WEB应用能够扛得住多少的并发量,以及网站性能。 0. Gr...

    小小科
  • 十大企业级Linux服务器安全防护要点

    糖豆贴心提醒,本文阅读时间8分钟 随着开源系统Linux的盛行,其在大中型企业的应用也在逐渐普及,很多企业的应用服务都是构筑在其之上,例如Web服务、数据库服...

    小小科
  • 专为渗透测试人员设计的 Python 工具大合集

    如果你对漏洞挖掘、逆向工程分析或渗透测试感兴趣的话,我第一个要推荐给你的就是Python编程语言。Python不仅语法简单上手容易,而且它还有大量功能强大的库和...

    企鹅号小编
  • 《软件测试52讲》读书笔记 —— 为什么要做自动化测试

    要实现稳定的自动化测试,被测软件的开发过程必须规范,比如:GUI上的控件命名如果没有任何规则可寻,就会造成GUI自动化的控件识别与定位不稳定,影响效率

    小菠萝测试笔记
  • 如何设计、挑选有效的回归测试用例

    其实最有效的回归测试方法建立在开发测试库的基础上;开发在创建测试库,每次生成程序的新版本时都可以运行这些用例。

    软件测试君
  • Python进行自动化测试工具

    在自动化测试里Python用途很广,但是市面上测试工具不是很多,这里主要介绍的是一些Python测试的框架

    py3study
  • 缺陷趋势分析

    来源:https://blog.csdn.net/jdhellfire/article/details/54868966

    小老鼠
  • excel里面空白的单元格如何用0去填充

    学到老
  • DeepLearning.ai学习笔记(二)改善深层神经网络:超参数调试、正则化以及优化--week3 超参数调试、Batch正则化和程序框架

    一、调试处理 week2中提到有如下的超参数: α hidden units mini-batch size β layers learning rate de...

    marsggbo

扫码关注云+社区

领取腾讯云代金券