WEB安全漏洞扫描及其审计

发布时间 2023-11-26 09:40:24作者: CLLWA

一. 实验目的

(1)掌握网络漏洞扫描的原理和方法

(2)复习Nmap的使用命令和kali的使用

(3)学习开源扫描工具Nikto的使用

二. 实验环境

Windows7虚拟机一台,kali虚拟机一台

 

三. 实验工具

VMWare、PHPStudy、Nilto、Nmap

四. 实验步骤

(1)在靶机上面安装phpstudy

 

 

(2) 查看攻击机(KALI)和靶机(windows7)的IP地址。

 

 

 

(3)打开kali虚拟机,确保kali虚拟机能够联网,且和靶机相互ping通

 

 

(4)在kali上打开nikto工具,该工具默认扫描80 和443端口。

 

 

(5)通过 nikto -list-plugins 来查看插件信息。在使用nikto进行网站扫描的时候,默认加载全部插件。每个插件的具体信息请访问项目的github文档

 

 

(6)在靶机上面开启了phpstudy的服务

 

 

(7)使用nikto对网站进行常规扫描

(a)对靶机windows7开启常规扫描

 

 

 

可以看到,服务器是Apache/2.4.39版本,对anti-clickjacking X-Frame-Options header没有进行防护缺少X-Frame-Options头部信息会造成点击劫持(ClickJacking)的漏洞。这是一种视觉上的欺骗手段。

扫描结果提示the host is vulnerable to xst说明主机存在XST漏洞,即跨站追踪漏洞(Cross-Site Tracing)。XST是一种突破JavaScript访问HTTP请求头部敏感信息受限的方法。

 

(b)尝试指定端口扫描

使用命令:nikto -h IP/Hostname -p 端口号

 

 

(8)尝试使用Nikto进行批量扫描

在桌面上编写文件url_list,放入你想扫描的网址,并保存

 

 

在桌面上打开终端,并输入命令:Nikto -host 文件名

 

 

没有扫除结果,猜想可能是开启phpstudy的服务不对,开启ngnix,关闭apache

 

 

 

 

仍然没有结果

(9)在桌面上打开终端,输出文件

使用命令:nikto -h IP/Hostname -o 文件名.html -F htm

文件被输出在当前路径下

 

 

 

(10)打开刚刚输出的文件,进行查看和分析

 

 

 

五. 实验感想(总结、对实验的讨论、不足之处......)

【总结参考】

这次的实验让我掌握了nikto的使用命令并且复习了nmap的使用

 

 

六. 实验思考

1、web漏洞扫描常用的工具有哪些?AWVS, BP, SQLMAP,

2、漏洞扫描器的主要功能?扫描出web网站的漏洞

3、对于web漏洞扫描有哪些防范措施?

  1. 定期进行安全审计和漏洞扫描:确保你的网站和应用程序定期进行安全审计和漏洞扫描,及时发现并修复潜在的安全风险。
  2. 强化输入验证和输出编码:对于用户输入的数据,应进行严格的验证和过滤,以防止恶意输入或代码注入。同时,对输出数据进行适当的编码,以防止跨站脚本攻击(XSS)等安全问题。
  3. 更新和升级软件:及时更新和升级你的网站和应用程序所使用的软件,以确保其具有最新的安全补丁和功能改进。
  4. 限制文件上传功能:对于文件上传功能,应严格限制上传的文件类型和后缀,并对上传的文件进行安全检查,以防止恶意文件上传和代码注入。
  5. 实施访问控制和权限管理:根据业务需求和安全策略,对网站和应用程序实施适当的访问控制和权限管理,确保只有授权的用户才能访问敏感数据和功能。
  6. 使用安全的密码策略:强制使用安全的密码策略,包括密码长度、复杂度、更换频率等,以增强网站和应用程序的安全性。
  7. 配置安全日志和监控:配置安全日志和监控机制,记录网站和应用程序的所有活动,以便及时发现并应对潜在的安全威胁。
  8. 定期备份数据:定期备份网站和应用程序的数据,以防止数据丢失或损坏,同时也可以在发生安全事件时提供备份数据。