一、扫描网站漏洞是要用专业的扫描工具,下面就是介绍几种工具
Nikto
这是一个开源的Web服务器扫描程序,它可以对Web服务器的多种项目进行全面的测试 。其扫描项目和插件经常更新并且可以自动更新 。Nikto可以在尽可能短的周期内测试你的Web服务器,这在其日志文件中相当明显 。不过,如果你想试验一下,它也可以支持 LibWhisker的反IDS方法 。不过,并非每一次检查都可以找出一个安全问题,虽然多数情况下是这样的 。有一些项目是仅提供信息类型的检查,这种检查可以查找一些并不存在安全漏洞的项目,不过Web管理员或安全工程师们并不知道 。
Paros proxy
这是一个对Web应用程序的漏洞进行评估的代理程序,即一个基于JAVA的web代理程序,可以评估Web应用程序的漏洞 。它支持动态地编辑/查看 HTTP/HTTPS,从而改变cookies和表单字段等项目 。它包括一个Web通信记录程序,Web圈套程序,hash 计算器,还有一个可以测试常见的Web应用程序攻击的扫描器 。
WebScarab:
它可以分析使用HTTP和HTTPS协议进行通信的应用程序,WebScarab可以用最简单地形式记录它观察的会话,并允许操作人员以各种方式观查会话 。如果你需要观察一个基于HTTP(S)应用程序的运行状态,那么WebScarabi就可以满足你这种需要 。不管是帮助开发人员调试其它方面的难题,还是允许安全专业人员识别漏洞,它都是一款不错的工具 。
WebInspect:
这是一款强大的Web应用程序扫描程序 。SPI Dynamics的这款应用程序安全评估工具有助于确认Web应用中已知的和未知的漏洞 。它还可以检查一个Web服务器是否正确配置,并会尝试一些常见的 Web攻击,如参数注入、跨站脚本、目录遍历攻击等等 。
Whisker/libwhisker :
Libwhisker是一个Perla模块,适合于HTTP测试 。它可以针对许多已知的安全漏洞,测试HTTP服务器,特别是检测危险CGI的存在 。Whisker是一个使用libwhisker的扫描程序 。
Burpsuite:
这是一个可以用于攻击Web应用程序的集成平台 。Burp套件允许一个攻击者将人工的和自动的技术结合起来,以列举、分析、攻击Web应用程序,或利用这些程序的漏洞 。各种各样的burp工具协同工作,共享信息,并允许将一种工具发现的漏洞形成另外一种工具的基础 。
Wikto:
可以说这是一个Web服务器评估工具,它可以检查Web服务器中的漏洞,并提供与Nikto一样的很多功能,但增加了许多有趣的功能部分,如后端 miner和紧密的google集成 。它为MS.NET环境编写,但用户需要注册才能下载其二进制文件和源代码 。
Acunetix Web Vulnerability Scanner :
这是一款商业级的Web漏洞扫描程序,它可以检查Web应用程序中的漏洞,如SQL注入、跨站脚本攻击、身份验证页上的弱口令长度等 。它拥有一个操作方便的图形用户界面,并且能够创建专业级的Web站点安全审核报告 。
Watchfire AppScan:
这也是一款商业类的Web漏洞扫描程序 。AppScan在应用程序的整个开发周期都提供安全测试,从而测试简化了部件测试和开发早期的安全保证 。它可以扫描许多常见的漏洞,如跨站脚本攻击、HTTP响应拆分漏洞、参数篡改、隐式字段处理、后门/调试选项、缓冲区溢出等等 。
N-Stealth:
N-Stealth是一款商业级的Web服务器安全扫描程序 。它比一些免费的Web扫描程序,如Whisker/libwhisker、 Nikto等的升级频率更高 。还要注意,实际上所有通用的VA工具,如Nessus, ISS Internet Scanner, Retina, SAINT, Sara等都包含Web 扫描部件 。N-Stealth主要为windows平台提供扫描,但并不提供源代码 。
二、漏洞类型及解决方法
1.1. Unix/linux漏洞
升级相应产商的系统版本或查找对应漏洞的补丁文件
1.2. OpenSSH漏洞
OpenSSH 输入验证错误漏洞(CVE-2019-16905)
OpenSSH 命令注入漏洞(CVE-2020-15778)
OpenSSH 安全漏洞(CVE-2021-28041)
修复建议:
一般也是升级相应的OpenSSH版本
1.3Nginx漏洞
1.3.1导致拒绝服务漏洞
HTTP/2是超文本传输协议的第二版,主要用于保证客户机与服务器之间的通信 。HTTP/2中存在资源管理错误漏洞 。攻击者可利用该漏洞导致拒绝服务
修复建议:
目前厂商已发布升级补丁以修复漏洞,详情请关注厂商主页: https://http2.github.io/
1.3.2SSL证书漏洞
SSL/TLS协议信息泄露漏洞(CVE-2016-2183)
TLS是安全传输层协议,用于在两个通信应用程序之间提供保密性和数据完整性 。
TLS, SSH, IPSec协商及其他产品中使用的DES及Triple DES密码存在大约四十亿块的生日界,这可使远程攻击者通过Sweet32攻击,获取纯文本数据
推荐阅读
- Spring MVC 的请求处理机制
- 我的朋友因为 JSON.stringify 差点丢了奖金
- 以太网交换机中的网络延迟是什么呢?
- 要不要走索引?MySQL 的成本分析
- python学习__while True的用法
- 一文读懂Wi-Fi 7
- 如何查找 Windows11 的安装序列号
- 为什么局域网IP通常以192.168开头的
- 使用SpringBoot+Vue开发的智慧小区物业管理系统源码
- 网站降级的常见处理方法是什么?
