作者:hacker 日期:2022-10-25 分类:网络安全
今天小编要跟大家分享的文章是关于开源Web应用的安全测试工具汇总。Web应用安全测试可对Web应用程序执行功能测试,找到尽可能多的安全问题,大大降低黑客入侵几率。
在研究并推荐一些最佳的开源Web应用安全测试工具之前,让我们首先了解一下安全测试的定义、功用和价值。
一、安全测试的定义
安全测试可以提高信息系统中的数据安全性,防止未经批准的用户访问。在Web应用安全范畴中,成功的安全测试可以保护Web应用程序免受严重的恶意软件和其他恶意威胁的侵害,这些恶意软件和恶意威胁可能导致Web应用程序崩溃或产生意外行为。
安全测试有助于在初始阶段解决Web应用程序的各种漏洞和缺陷。此外,它还有助于测试应用程序的代码安全性。Web安全测试涵盖的主要领域是:
·认证方式
·授权书
·可用性
·保密
·一致性
·不可否认
二、安全测试的目的
全球范围内的组织和专业人员都使用安全测试来确保其Web应用程序和信息系统的安全性。实施安全测试的主要目的是:
·帮助提高产品的安全性和保质期
·在开发初期识别并修复各种安全问题
·评估当前状态下的稳定性
三、为什么我们需要重视Web安全测试
·避免性能不一致
·避免失去客户信任
·避免以安全漏洞的形式丢失重要信息
·防止身份不明的用户盗窃信息
·从意外故障中恢复
·节省解决安全问题所需的额外费用
目前市场上有很多免费、付费和开源工具可用来检查Web应用程序中的漏洞和缺陷。关于开源工具,除了免费之外,最大的优点是可以自定义它们,以符合您的特定要求。
以下,是我们推荐的十大开源安全测试列表:
1、Arachni
Arachni面向渗透测试人员和管理员的旨在识别Web应用程序中的安全问题。该开源安全测试工具能够发现许多漏洞,包括:
·无效的重定向
·本地和远程文件包含
·SQL注入
·XSS注射
主要亮点:
·即时部署
·模块化,高性能Ruby框架
·多平台支持
下载:
2、劫掠者
便携式Grabber旨在扫描小型Web应用程序,包括论坛和个人网站。轻量级的安全测试工具没有GUI界面,并且使用Python编写。Grabber发现的漏洞包括:
·备份文件验证
·跨站脚本
·文件包含
·简单的AJAX验证
·SQL注入
主要亮点:
·生成统计分析文件
·简单便携
·支持JS代码分析
下载:-
3、IronWasp
IronWasp是一种开放源代码,功能强大的扫描工具,能够发现25种以上的Web应用程序漏洞。此外,它还可以检测误报和误报。Iron
Wasp可帮助暴露各种漏洞,包括:
·身份验证失败
·跨站脚本
·CSRF
·隐藏参数
·特权提升
主要亮点:
·通过插件或模块可扩展地用C#、Python、Ruby或VB.NET编写
·基于GUI
·以HTML和RTF格式生成报告
下载:
4、Nogotofail
Nogotofail是Google开发的网络流量安全测试工具,一款轻量级的应用程序,能够检测TLS/
SSL漏洞和配置错误。Nogotofail暴露的漏洞包括:
·MiTM攻击
·SSL证书验证问题
·SSL注入
·TLS注入
主要亮点:
·易于使用
·轻巧的
·易于部署
·支持设置为路由器、代理或VPN服务器
下载:
5、SonarQube
另一个值得推荐的开源安全测试工具是SonarQube。除了公开漏洞外,它还用于衡量Web应用程序的源代码质量。尽管使用Java编写,SonarQube仍能够分析20多种编程语言。此外,它可以通过持续集成工具轻松地集成到Jenkins之类的产品中。SonarQube发现的问题以绿色或红色突出显示。前者代表低风险的漏洞和问题,而后者则代表严重的漏洞和问题。对于高级用户,可以通过命令提示符进行访问。对于那些相对较新的测试人员,有一个交互式GUI。SonarQube暴露的一些漏洞包括:
·跨站脚本
·拒绝服务(DoS)攻击
·HTTP响应拆分
·内存损坏
·SQL注入
主要亮点:
·检测棘手的问题
·DevOps集成
·设置pullrequests请求分析
·支持短期和长期代码分支的质量跟踪
·提供QualityGate
·可视化项目历史
下载:
6、SQLMap
SQLMap完全免费,可以实现网站数据库中SQL注入漏洞检测和利用过程的自动化。该安全测试工具附带一个功能强大的测试引擎,能够支持6种类型的SQL注入技术:
·基于布尔的盲注
·基于错误
·带外
·堆叠查询
·基于时间的盲注
·UNION查询
主要亮点:
·自动化查找SQL注入漏洞的过程
·也可以用于网站的安全测试
·强大的检测引擎
·支持多种数据库,包括MySQL、Oracle和PostgreSQL
下载:
7、W3af
W3af是最受Python开发者喜欢的Web应用程序安全测试框架之一。该工具覆盖Web应用程序中超过200多种类型的安全问题,包括:
·SQL盲注
·缓冲区溢出
·跨站脚本
·CSRF
·不安全的DAV配置
主要亮点:
·认证支持
·易于上手
·提供直观的GUI界面
·输出可以记录到控制台,文件或电子邮件中
下载:
8、Wapiti
Wapiti是领先的Web应用程序安全测试工具之一,它是SourceForge和devloop提供的免费的开源项目。Wapiti可执行黑盒测试,检查Web应用程序是否存在安全漏洞。由于是命令行应用程序,因此了解Wapiti使用的各种命令非常重要。Wapiti对于经验丰富的人来说易于使用,但对于新手来说却是一个的考验。但请放心,您可以在官方文档中找到所有Wapiti说明。为了检查脚本是否易受攻击,Wapiti注入了有效负载。该开源安全测试工具同时支持GET和POSTHTTP攻击方法。Wapiti暴露的漏洞包括:
·命令执行检测
·CRLF注射
·数据库注入
·档案披露
·Shellshock或Bash错误
·SSRF(服务器端请求伪造)
·可以绕开的.htaccess弱配置
·XSS注入
·XXE注入
主要亮点:
·允许通过不同的方法进行身份验证,包括Kerberos和NTLM
·带有buster模块,可以暴力破解目标Web服务器上的目录和文件名
·操作类似fuzzer
·同时支持GET和POSTHTTP方法进行攻击
下载:
9、Wfuzz
Wfuzz是用Python开发的,普遍用于暴力破解Web应用程序。该开源安全测试工具没有GUI界面,只能通过命令行使用。Wfuzz暴露的漏洞包括:
·LDAP注入
·SQL注入
·XSS注入
主要亮点:
·认证支持
·Cookiesfuzzing
·多线程
·多注入点
·支持代理和SOCK
下载:
10、Zed攻击代理(ZAP)
ZAP或ZedAttack
Proxy由OWASP(开放Web应用程序安全项目)开发,是一种跨多平台,开放源代码Web应用程序安全测试工具。ZAP用于在开发和测试阶段查找Web应用程序中的许多安全漏洞。由于其直观的GUI,新手和专家都可以轻松使用Zed
AttachProxy。安全测试工具支持高级用户的命令行访问。除了是最著名的OWASP
项目之一,ZAP还是当之无愧的Web安全测试旗舰产品。ZAP用Java编写。除了用作扫描程序外,ZAP还可以用来拦截代理以手动测试网页。ZAP暴露的漏洞包括:
·应用错误披露
·非HttpOnlyCookie标识
·缺少反CSRF令牌和安全标头
·私人IP披露
·URL重写中的会话ID
·SQL注入
·XSS注入
主要亮点:
·自动扫描
·易于使用
·多平台
·基于休息的API
·支持身份验证
·使用传统而强大的AJAX蜘蛛
下载:
以上就是小编今天为大家分享的关于开源Web应用的安全测试工具汇总的文章,希望本篇文章能够对大家有所帮助,想要了解更多Web相关知识记得关注北大青鸟Web培训官网,最后祝愿小伙伴们工作顺利。
公众号:白帽子左一
领取配套练手靶场、安全全套课程及工具...
在安服仔的日子里,发现其他人输出的渗透测试报告结果不规范,主要在报告质量、内容、字体、及修复方案中存在诸多问题,而且 大部分安服仔需要对每次的项目结果进行统计整理,方便后续跟踪复测。
因此研发了 Savior—渗透测试报告辅助生成系统 , 起这个名字也是为了拯救大多数渗透测试工程师,
告别繁琐的渗透测试报告编写过程及漏洞统计过程。
前端 : Ant Design Pro
后端 : Django REST Framework
数据库 : Mysql
用户管理 : 主要是方便统计漏洞的发现者,后续可能大概也许会添加漏洞统计模块,根据提交数据、漏洞类型、时间等进行统计报表,当前用户管理模块仅允许通过Django后台进行修改,前端只负责展示,主要是我太懒了。
项目管理 : 根据项目的不同可上传项目的专属渗透测报告模板,并可以根据需要进行模板自定义模板(/Demo/demo.docx);
模板自定义 : 不用修改源代码,仅需修改word即可进行模板自定义;
整改建议管理 : 此平台主要就是为了体现标准化输出,因此可通过内置漏洞描述及修复建议进行快速输出,并支持自定义修改(/Demo/常规WEB渗透测试漏洞描述及修复方法.docx);
一键生成: 通过提交报告模块,内联项目模板,快速生成渗透测试报告,真正达到了一键生成,并确保报告内数据准确、字体统一、格式标准;
自动邮件: 在生成报告后可通过用户管理配置的自动邮件发送功能进行邮件通知,可自定义邮件模板,这样再报告给客户的时候就可以直接转发了(暖男功能);
漏洞统计: 每次渗透过后,需要挨个查找报告进行统计整理,现在只要提交报告后,后台会自动联动;
漏洞报表一键导出
漏洞跟踪: 增加了漏洞状态字段,创建报告后,漏洞状态默认为新增,漏洞管理模块可进行复测,包括已整改、未整改两种状态;
Demo :
演示账号 :admin
演示密码 : Savior@404
首先将代码clone到本地:
Docker部署
我们推荐使用Docker进行部署,相对于源码部署更为简单和快速。
部署前请务必先安装 Docker 及 docker-compose 。
修改配置文件
首先复制根目录的 .env.docker 并重命名为 .env , 修改其中的Email Settings和initial Administrator配置。
这两个配置分别控制邮件提醒,以及初始管理帐号密码及邮箱。
同时需要注意以下两点:
1. 务必把邮箱修改为自己邮箱,不然可能会出现非预期错误!
2. 如果使用阿里云、腾讯云服务器,请使用smtp的ssl协议,两家云厂商默认封禁了25端口。
一键启动
访问 即可看到页面。
修改启动端口
如果想修改启动端口,可以修改docker-compose.yaml文件中web容器的ports。
默认为8000:8000,比如要修改为8080端口可改为8080:8000。
所需环境:
前端环境
环境变量设置 创建字符集为utf-8编码的数据库。
复制**.env.docker为.env**,并配置数据库、邮箱、管理员等信息。
后端环境
源码部署环境:
前台页面 :
Django管理后台:
其中Savior平台包含两个后台页面。考虑到安全性,目前用户管理、项目管理托管于Django管理后台(主要是这两个模块不会写),其余功能均可通过前台页面实现。
前台页面 :
Django管理后台 :
访问Django管理后台: ,
请完善API用户的Name、Avatar、Autosentmail三个字段,分别控制报告的作者、头像(图片Url)、生成报告后自动发送渗透测试报告到邮箱。
访问Django管理后台:
请通过APIProjects进行添加项目,可根据不通项目选择不通的渗透测试报告模板。
参数说明:Project logo(项目Logo)、Project center(项目名称)、Project description(项目描述)、Project template(渗透测试报告模板,目前标准模板可使用Demo/demo.docx,如需自定义模板,请参考模版自定义部分)
访问 可进入Savior平台,通过个人设置整改设置添加漏洞模板可进行设置漏洞类型、漏洞描述、修复建议从而达到标准化。
目前整理了一些通用的修复建议模板,请参考Demo/常规WEB渗透测试漏洞描述及修复方法.docx。
目前根据我经常使用的渗透测试报告模板生成了一个demo版本(请参考/Demo/demo.docx)。
当然您也可以根据自己的需求进行模板自定义,其中仅需在WORD模板中进行参数替换,目前Savior中具体参数如下:
以下漏洞详情请利用{%tr for vuls in vuls %}{%tr endfor %}进行循环遍历。
如想列出所有漏洞URL,则使用参数{%tr for vuls in vuls %}{{item.vul_url}}{%tr endfor %}
注: Savior平台渗透测试模板遵循Jinja2语法,更多内容请参考
如果我们完善了用户信息、项目管理、整改设置后,就可以通过前端页面进行创建报告,其大概流程如下:首先完善报告的基本信息。
选择漏洞管理的添加漏洞功能。选择漏洞类型后,漏洞名称、漏洞描述、修复建议会根据整改设置进行自动联动,并可根据需求进行自定义修改。
需要注意的是漏洞详情处如果需要插入XSS语句,请进行url编码后进行输入!
注: 未提交前请勿刷新页面,此时漏洞详情保存为前端。提交后会自动生成渗透测试报告并进行下载。
打开报告会提示更新域,更新请选择是,再选择更新整个目录,此问题主要是为了更新目录,不然渗透测试报告中目录无法自动更新。
如果在用户管理打开了Autosentmail功能,渗透测试报告会自动发送至我们邮箱,方便转给甲方爸爸。
访问Savior平台,选择漏洞列表可进行漏洞统计并进行漏洞复测。
其中漏洞包含三个状态(新发现、已修复、未修复)。
通过选择导出数据功能,可将漏洞列表导出为Excle。
用户管理、项目管理迁移至前端
大数据看板
感谢 echo503 提供的项目帮助
感谢 lp0int 提供的项目帮助
项目框架及 Docker 部署参考 Github-Monitor:( )
原文地址:
网络
Scapy, Scapy3k: 发送http渗透测试工具,嗅探,分析和伪造网络数据包。可用作交互式包处理程序或单独作为一个库
pypcap, Pcapy, 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个测试样例)
调试和逆向工程
Paimei: 逆向工程框架,包含PyDBG, PIDA , pGRAPH
Immunity Debugger: 脚本 GUI 和命令行调试器
mona.py: Immunity Debugger 中的扩展,用于代替 pvefindaddr
IDAPython: IDA pro 中的插件,集成 Python 编程语言,允许脚本在 IDA Pro 中执行
PyEMU: 全脚本实现的英特尔32位仿真器,用于恶意软件分析
pefile: 读取并处理 PE 文件
pydasm: Python 封装的libdasm
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 模糊测试工具
SMUDGE: 纯 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: 处理代理日志和报告发现的问题
WSMap: 寻找 Web 服务器和发现文件
Twill: 从命令行界面浏览网页。支持自动化网络测试
Ghost.py: Python 写的 WebKit Web 客户端
Windmill: Web 测试工具帮助http渗透测试工具你轻松实现自动化调试 Web 应用
FunkLoad: Web 功能和负载测试
spynner: Python 写的 Web浏览模块支持 Javascript/AJAX
python-spidermonkey: 是 Mozilla JS 引擎在 Python 上的移植,允许调用 Javascript 脚本和函数
mitmproxy: 支持 SSL 的 HTTP 代理。可以在控制台接口实时检查和编辑网络流量
pathod/pathoc: 变态的 HTTP/S 守护进程,用于测试和折磨 HTTP 客户端
建议使用Acunetix Web Vulnerability Scanner 8,网上有最新版的专业版下载。
Acunetix Web Vulnerability Scanner的功能AcuSensor 技术
自动的客户端脚本分析器,允许对 Ajax 和 Web 2.0 应用程序进行安全性测试。
业内最先进且深入的 SQL 注入和跨站脚本测试
高级渗透测试工具,例如 HTTP Editor 和 HTTP Fuzzer
可视化宏记录器帮助您轻松测试 web 表格和受密码保护的区域
支持含有 CAPTHCA 的页面,单个开始指令和 Two Factor(双因素)验证机制
丰富的报告功能,包括 VISA PCI 依从性报告
高速的多线程扫描器轻松检索成千上万个页面
智能爬行程序检测 web 服务器类型和应用程序语言
Acunetix 检索并分析网站,包括 flash 内容、SOAP 和 AJAX
端口扫描 web 服务器并对在服务器上运行的网络服务执行安全检查
已有5位网友发表了看法:
访客 评论于 [2022-10-25 16:08:29] 回复
盖Web应用程序中超过200多种类型的安全问题,包括:·SQL盲注·缓冲区溢出·跨站脚本·CSRF·不安全的DAV配置主要亮点:·认证支持·易于上手·提供直观的GUI界面·输出可以记录到控制台,文件或电子邮件中下载:8、WapitiWapiti是领先的Web应用程序安全测试工具之一
访客 评论于 [2022-10-25 18:46:06] 回复
嗅探,分析和伪造网络数据包。可用作交互式包处理程序或单独作为一个库pypcap, Pcapy, pylibpcap: 几个不同 libpcap 捆绑的python库libdnet: 低级
访客 评论于 [2022-10-25 19:37:28] 回复
露·URL重写中的会话ID·SQL注入·XSS注入主要亮点:·自动扫描·易于使用·多平台·基于休息的API·支持身份验证·使用传统而强大的AJAX蜘蛛下载:以上就是小编今天为大家分享的关于开源Web应用的安全测试工具汇总的
访客 评论于 [2022-10-25 13:01:51] 回复
目Logo)、Project center(项目名称)、Project description(项目描述)、Project template(渗透测试报告模板,目前标准模板可使用Demo/demo.docx,如需自定义模板,请参考模版自定义部分) 访问 可进入Sa
访客 评论于 [2022-10-25 16:41:29] 回复
一键生成,并确保报告内数据准确、字体统一、格式标准; 自动邮件: 在生成报告后可通过用户管理配置的自动邮件发送功能进行邮件通知,可自定义邮件模板,这样再报告给客户的时候就可以直接转发了(暖男功能); 漏洞统计: 每次渗透过后,需要挨个查找报告进行统计整理,现在只要提交报