如果你对漏洞挖掘、逆向工程分析或渗透测试感兴趣的话,我第一个要推荐给你的就是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多种测试

Debugging and Reverse Engineering(调试和逆向工程分析)

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库所需模块

专为渗透测试人员设计的 Python 工具大合集的更多相关文章

  1. 免费DDOS攻击测试工具大合集

    FreeBuf微科普: DoS(Denial Of Service)攻击是指故意的攻击网络协议实现的缺陷或直接通过野蛮手段残忍地耗尽被攻击对象的资源,目的是让目标计算机或网络无法提供正常的服务或资源访 ...

  2. DDOS攻击方式总结以及免费DDOS攻击测试工具大合集

    若有雷同或者不足之处,欢迎指正交流,谢谢! DoS(Denial Of Service)攻击是指故意的攻击网络协议实现的缺陷或直接通过野蛮手段残忍地耗尽被攻击对象的资源,目的是让目标计算机或网络无法提 ...

  3. Kali Linux的发展史,专为数字取证和渗透测试而设计

    Kali Linux拥有非常强大的网络功能,Kali Linux是一个Debian衍生的Linux发行版,专为数字取证和渗透测试而设计.它是由OffensiveSecurityLtd维护和资助,是由M ...

  4. python字符串操作实方法大合集

    python字符串操作实方法大合集,包括了几乎所有常用的python字符串操作,如字符串的替换.删除.截取.复制.连接.比较.查找.分割等,需要的朋友可以参考下:   #1.去空格及特殊符号 s.st ...

  5. 【分享】Python学习资源大合集

    地址:http://www.hejizhan.com/html/xueke/520/x520_03.html Python安装软件合集(Windows)(78) Python教程——游戏编程(13) ...

  6. 手把手教渗透测试人员打造.NET可执行文件

    在进行渗透测试的过程中,我们有时候会希望使用可执行文件来完成某些任务.最近,我们在测试过程中拿下了一个网站,从而获得了一次发动水坑攻击的机会. 原文地址:https://www.peew.pw/blo ...

  7. 前端,Java,产品经理,微信小程序,Python等资源合集大放送

    为了感恩大家长久以来的关注和支持,小编准备了一些福利,整理了包含前端,Java,产品经理,微信小程序,Python,网站源码,Android应用视频教程,微信公众平台开发教程及材料等资源合集大放送. ...

  8. 不容错过的UI设计素材大合集

    免费PSD素材 TETHR by InVision 这是出自InVision的8款PSD文件,其中包含了100个模板和超过500个UI控件.来自InVision和UI8的设计师一同协作完成了这套UI ...

  9. 读书分享全网学习资源大合集,推荐Python学习手册等三本书「01」

    0.前言 在此之前,我已经为准备学习python的小白同学们准备了轻量级但超无敌的python开发利器之visio studio code使用入门系列.详见 1.PYTHON开发利器之VS Code之 ...

随机推荐

  1. Warning: Cannot modify header information原因及解决方案

    相信大多数人在写PHP代码的时候,都遇到过类似"Warning: Cannot send session cookie – headers already sent…“或者”Cannot a ...

  2. python装饰器(基础中的重点)

    一.简单的装饰器 1.为什么要使用装饰器呢? 装饰器的功能:在不修改原函数及其调用方式的情况下对原函数功能进行扩展 装饰器的本质:就是一个闭包函数 那么我们先来看一个简单的装饰器:实现计算每个函数的执 ...

  3. 洛谷P2786 英语1(eng1)- 英语作文——map

    给一手链接 https://www.luogu.com.cn/problem/P2786 拿这道题当map模板练练手qwq #include<cstdio> #include<cst ...

  4. Windows下Nginx的启动、停止、重启等命令

    Windows下Nginx的启动.停止等命令 在Windows下使用Nginx,我们需要掌握一些基本的操作命令,比如:启动.停止Nginx服务,重新载入Nginx等,下面我就进行一些简单的介绍. 假设 ...

  5. centos 7.2 查看时间,精确到毫秒级别

    [root@ ~]# date +'%x %X.%N' 2019年08月06日 11时25分13秒.193666438 [root@commonTest ~]# date --help 用法:date ...

  6. Java并发编程:线程的同步

    Java并发编程:线程的同步 */--> code {color: #FF0000} pre.src {background-color: #002b36; color: #839496;} J ...

  7. Notepad++添加插件Funtion List 支持PHP

    插件下载地址:functionlist插件 配置方法:关闭notepad++; functionlist.dll拷贝到 安装目录/plugins目录下; 下载php.bmp 地址:https://gi ...

  8. BZOJ 5450 轰炸 (强连通缩点+DAG最长路)

    <题目链接> 题目大意: 有n座城市,城市之间建立了m条有向的地下通道.你需要发起若干轮轰炸,每轮可以轰炸任意多个城市.但每次轰炸的城市中,不能存在两个不同的城市i,j满足可以通过地道从城 ...

  9. SQL 一次插入多次数据

    数据插入 INSERT INTO 表名称 VALUES (值1, 值2,....) 指定所要插入数据的列 INSERT INTO table_name (列1, 列2,...) VALUES (值1, ...

  10. XMPP即时通讯协议使用(三)——订阅发布、断开重连与Ping

    package com.testV3; import java.util.List; import org.jivesoftware.smack.ConnectionListener; import ...