nmap和nikto扫描

先通过本机的VMware启动Kali攻击机和Metasploitable2靶机

image-20220608192003199

image-20220608192111794

端口扫描

使用 ip addr 或者 ifconfig 先看一下靶机的ip地址

image-20220608192417768

Kali里面使用 nmap + IP 先用默认的方式对靶机进行扫描

事实上nmap的默认扫描方式就是 -sS 也就是SYN扫描,这种扫描方式基于TCP三次握手的前两次,不建立完整连接,因此具有相对的隐蔽性和较高的速度

在改变nmap扫描类型这类参数的时候需要提供root权限,默认扫描则不需要,为了方便,我本次所有命令都使用了root权限

image-20220608194623871

默认扫描会默认扫描1000个最常用的端口,这种方式会显示出扫描目标的端口开放状态以及对应的服务,也会显示靶机的一些其他信息比如MAC地址,甚至nmap的目录里面还会识别出这个靶机的物理设备是来自哪里

这里只扫到了open的端口,实际上也还有其他的端口状态

  • open:端口是开放的
  • closed:端口是关闭的
  • filtered:端口被 Firewall/IDS/IPS 屏蔽,无法确定其状态
  • unfiltered:端口没有被屏蔽,但是否开放需要进一步确定
  • open|filtered:端口是开放的或被屏蔽
  • closed|filtered:端口是关闭的或被屏蔽

如果我们只想要知道某个端口的状态信息怎么办呢,nmap还有个命令参数 -p 可以指定扫描的端口,比如这里我们扫描3306也就是MySQL的常用端口

image-20220608195733948

如果我们还想知道MySQL的版本信息方便后面SQL注入呢,我们可以用 -sV 参数扫描来获取这个服务的版本信息

image-20220608200219439

有的时候我们会想要知道所有的扫描细节,而这些nmap会自动隐藏起来,这时候我们可以用 -v 或者 -vv 来显示这些细节

image-20220608200613432

如果还想要知道我们扫描的靶机操作系统以及版本,我们只需要使用 -O 参数来获取

image-20220608201129705

最后的最后,还有一个最包罗万象的参数 -A,俗称万能扫描,会启动系统版本检测,服务版本检测,脚本扫描和traceroute等功能,当然这个很费时,所以我们继续只扫3306端口

image-20220608203513162

可以看到,针对MySQL这个服务,就扫出来这么多信息,比如协议,版本号,线程ID以及MySQL服务在“握手”时用到的 capabilities flags 一种功能标志

当获取到足够的信息之后,nmap也支持使用脚本进行一些简单的漏洞利用,比如还是这个MySQL服务,可以利用脚本来测试弱口令,爆破密码,实际上我们上面使用 -A 这个参数来全面扫描的时候就已经用到扫描MySQL的一个脚本 mysql-info

image-20220608204141231

nmap同样支持控制扫描速度的功能,使用 -T0-T5 速度由慢到快,一般T0T1是用来躲避IDS(入侵检测系统)的检测,默认速度就是T3,而T4T5一般都会牺牲掉一些准确性来进行高速的扫描

下面是T0T5的速度对比…写到这里我等了T0十分钟,不知道还要多久…13分钟了,笔者实实在在地感受到了这个模式的速度…15分钟了,一想到我上面才写的默认扫描要扫1000个端口我就感觉到恐怖…20分钟了,我有点后悔做这个对比了,但是现在取消掉任务又感觉白等了…由于有事需要离开实验环境了,这个对比只能作废,截止现在,这个T0已经扫了41分钟,我们来对比一下T5的速度,总之,T0是真的真的很慢

image-20220608212525878

漏洞扫描

niktoKali自带的一个web漏洞扫描器,可以识别目标网站,服务器上存在安全隐患的漏洞

我们使用 -h 或者 -host 参数来指定扫描的ip地址或者url地址,只有host选项时nikto是常规扫描模式,下面这些 OSVDB 编号各自代表了不同的网站漏洞,可以到相应的网站上去找到其与 CVE 漏洞编号的对应关系

image-20220609025949594

image-20220611204010713

比如扫描的结果上就会提示很多有可能有信息泄露点敏感目录,比如建站的 Readme.txt 文件,ChangeLog 日志,还有phpmyadmin 是一个数据库管理的后台,phpinfo.php 可能是开发人员的测试页面,可以显示 phpinfo() 的结果

image-20220611204003580

因为nikto默认对80端口进行扫描,但是和nmap一样,nikto也可以支持指定端口进行扫描,使用 -port 参数就可以选择端口了,我们的靶机的网站服务都在80端口上,所以扫不出来什么东西

image-20220611204841034

我们也可以对某一个指定的目录进行扫描,使用 -c + 目录 就可以了

image-20220611205117246

可以看到日志和敏感配置文件都扫到了

在扫描过程中还可以通过一些交互式的命令来显示一些扫描的细节,比如扫描过程中我们输入 p 可以显示扫描进度

image-20220611205538729

猜你喜欢

转载自blog.csdn.net/SimoSimoSimo/article/details/125350144
今日推荐