漏洞扫描工具学习

发布时间 2023-05-06 23:27:05作者: 数星观月

1、Nessus漏洞扫描

Nessus简介:Nessus号称是世界上最流行的漏洞扫描程序,全世界有超过75000个组织在使用它。该工具提供完整的电脑漏洞扫描服务,并随时更新其漏洞数据库。Nessus不同于传统的漏洞扫描软件,Nessus可同时在本机或远端上遥控,进行系统的漏洞分析扫描。对于渗透测试人员来说, Nessus是必不可少的工具之一 。
nessus在kali中没有内置,我们需要去官网下载安装,nessus官网:http://www.tenable.com/products/nessus/select-your-operating-system。下载下面这个版本,安装到kali中。

 nessus注册需要一个激活码,获取激活码网址:http://www.nessus.org/products/nessus/nessus-plugins/obtain-an-activation-code,选择社区版,填写姓名和邮箱,姓名可以乱填,邮箱要填自己可以收到激活码的。

 使用xshell连接kali,将真实机上下好的安装包拖到xshell中去,使用ls可以看到这个安装包已经到kali中去了,再使用dpkg -i Nessus-10.5.1-debian10_amd64.deb命令安装

 安装好的最后两行有启动nessus服务的提示,按照指示启动nessus服务,打开kali的火狐浏览器,输入https加本机ip(不是主机名)加端口号,有个安全提示选择高级忽视继续,点继续,选择社区版继续,然后点跳过我们已经到官网获取验证码了,然后填写验证码,点继续、继续,填写等会登录的账号密码,然后等下载好nessus需要的插件(当然因为国内网络的问题,插件包可能会出问题,可以提前下载好插件包,将它与安装包一起拖到kali中,在提交它下插件的同时在xshell中输入命令安装插件包,这样就会直接编译插件快很多也不会下载出错)。

 下载好就直接登进去了

 使用/opt/nessus/sbin/nessuscli lsuser命令可以看到nessus有哪些账户,/opt/nessus/sbin/nessuscli chpasswd root命令可以更改账号密码

 真实机安装phpstudy_pro,开启apache和mysql服务,安装dvwa靶场到www下,使用kali中下好的nessus扫描真实机中dvwa看有哪些漏洞。点new scan,选择web application tests,填写扫描的一些参数(扫描名,扫描真实主机ip),保存点lunch,等待扫描完成。扫完之后可以看到有很多的漏洞,点进去还可以查看漏洞的详细信息。

2、Nikto漏洞扫描

Nikto是一款开源的( GPL )网页服务器扫描器,它可以对网页服务器进行全面的多种扫描,包含超过3300种有潜在危险的文件CGIs ;超过625种服务器版本;超过230种特定服务器问题。可以扫出服务器和应用程序信息漏洞和一些敏感文件,这是nikto主要扫描方向,web代码这些应用层的信息是扫不出来的。kali中内置有nikto,输入nikto可以查看使用nikto命令和其用途。

nikto #nikto命令和其用途

nikto -list-plugins #查看nikto中的插件

使用nikto -host http://192.168.149.15/DVWA-master扫描一下真实机开启的dvwa靶场目录,可以看到服务器和应用程序版本的一些信息和目录下的一些敏感文件信息

扫描多个站点的话,使用vim test.txt创建一个文件,往文件里面写入需要扫描的地址,使用nikto -host test.txt会一个一个扫描里面的站点。

nikto还可以扫描https协议的网站,使用nikto -host www.baidu.com -port 443 -ssl命令扫描一下使用https协议的百度。

保留扫描信息,使用nikto -host www.baidu.com -port 443 -ssl -output /root/baidu.txt命令将扫描的信息存放到baidu.txt文件中,使用cat /root/baidu.txt可以查看扫描信息。

结合nmap使用,自动发现并扫描,使用nmap -p80 192.168.107.0/24 -oG - |nikto -host -命令扫描80端口开放存活主机并进行详细扫描。

-evasion #使用LibWhisker中对IDS(入侵检测系统)的躲避技术,可使用以下几种类型:
1随机URL编码(非UTF-8方式)
2自选择路径(/./)
3过早结束的URL
4优先考虑长随机字符串
5参数欺骗
6使用TAB作为命令的分隔符
7使用变化的URL
8使用Windows路径分隔符"\”

Nikto-交互式命令,作用:报告当前扫描状态,在扫描过程中键入回车,再键入以下相关内容(注意区分大小写)
v#详细模式开/关
d #调试模式开/关
e #错误报告开/关
p #打开/关闭进度报告
r #重定向显示开/关
c #打开/关闭cookie显示
a #授权显示开/关
q #退出
N #下一个主机,扫描的host.txt文件时,扫下一一个
P #暂停

3、Skipfish漏洞扫描

Skipfish简介:谷歌创建的Web应用程序安全扫描程序,是一种活跃的Web应用程序安全侦察工具。它通过执行递归爬网和基于字典的探针为目标站点准备交互式站点地图。然后使用许多活动(但希望无中断)安全检查的输出对结果映射进行注释。该工具生成的最终报告旨在作为专业Web应用程序安全评估的基础。

特点:高速:纯C代码,高度优化的HTTP处理,最小的CPU占用空间-通过响应式目标轻松实现每秒2000个请求; 易于使用:启发式支持各种古怪的Web框架和混合技术站点,具有自动学习功能,动态词表创建和表单自动完成;尖端的安全逻辑:高质量,低误报,差异安全检查,能够发现一系列微妙的缺陷,包括盲注射矢量。
kali中内置有skipfish,扫描结果不输出到命令行,会生成一个html文件。使用skipfish -o text http://192.168.149.15命令将扫描结果生成到text目录下。

想要扫描多个网址,使用vim 文件名将多个地址写入,然后将单个地址换成这个文件。

dpkg在kali中负责管理deb后缀名的文件,包括安装、瞎看、删除。使用命令dpkg -L skipfish查看安装skipfish有哪些包,

-o #指定扫描的内容存放位置
@url.txt #可以扫描多个目标URL ,把要扫描的URL放在url.txt
-S #指定字典
dpkg -L skipfish| grep wI #自带的字典文件路径,查找隐藏目录的字典,现在好多网站都会有不想让用户发现的目录
-I #只检查有指定字符串的URL

-X #不检查包含指定字符串的URL,logout_php文件就不去扫描,不然就退出了
-K #不对指定参数进行Fuzz测试。
--config #指定配置文件

-D #跨站点爬另一个域,当扫描的站点中出现D后面站点的超链接就会跳转到D后面的站点进行扫描

man skipfish #man手册

在浏览器中使用file协议打开刚开始扫描保存的文件

 4、AVWS扫描漏洞