当前位置:   article > 正文

Kali linux系统扫描与抓包教程(仅作网络安全测试)_kali linux漏洞扫描教程

kali linux漏洞扫描教程

Kali是基于Debian的Linux发行版
Kali Linux 包含上百个安全相关工具
-如:渗透测试、安全检测、密码安全、反向工程等
官网:kali.org
下载地址:https://www.kali.org/downloads/

扫描的作用

以获取一些公开/非公开信息为目的:

  • 检测潜在的风险
  • 查找可以攻击目标
  • 收集设备/主机/系统/软件信息
  • 发现可利用的安全漏洞

典型的扫描方式

  • Scan 主动监测
  • Sniff 被动监听/嗅探
  • Capture 数据包捕获(抓包)

常见安全分析工具

  • 扫描器 : NMAP
  • 协议分析 : tcpdump WireShark

NMAP扫描

是一款强大的网络探测利器工具
支持多种探测技术

  • ping 扫描
  • 多端口扫描
  • TCP/IP 指纹校验

准备实验学习环境:

给kali虚拟机配置IP地址:
$ ip a s #查看网卡设备名称(设备名)
$ nmcli connection show #查看网络连接名称(网卡名)
$ sudo nmcli connection modify "Wired connection 1" ipv4.method manual ipv4.addr 192.168.4.40/24 autoconnect yes
#配置IP地址,autoconnect设置网卡开机自动激活

ip查看.png

使用nmap扫描来获取指定主机/网段的相关信息

1)基本用法
基本用法:
# nmap [扫描类型] [选项] <扫描目标 ...>
#常用的扫描类型
# -sS,TCP SYN扫描(半开)
# -sT,TCP 连接扫描(全开)
# -sU,UDP扫描
# -sP,ICMP扫描
# -A,目标系统全面分析

2)检查192.168.4.7主机是否可以ping通(这里假设有192.168.4.7主机)

[kali@kali ~]$ sudo nmap  -sP  192.168.4.7

nmap.png

3)检查192.168.4.0/24网段内哪些主机可ping通(用-n选项可以不执行DNS解析)

[kali@kali ~]$ sudo nmap  -n  -sP  192.168.4.0/24

4.png

4)检查目标主机所开启的TCP服务

[kali@kali ~]$ sudo nmap -sT 192.168.4.254

5.png

5)检查192.168.4.0/24网段内哪些主机开启了FTP、SSH服务

[kali@kali ~]$ sudo nmap -p 21-22 192.168.4.0/24

6.png

6)检查目标主机所开启的UDP服务(会非常的慢)

  1. [kali@kali ~]$ sudo nmap -sU 192.168.4.7 #指定-sU扫描UDP
  2. [kali@kali ~]$ sudo nmap -sU -p 53 192.168.4.7

8.png

7)全面分析目标主机192.168.4.100和192.168.4.7的操作系统信息

[kali@kali ~]$ sudo nmap -A 192.168.4.100,7

9.png

使用nmap执行脚本扫描

1)准备一台Vsftpd服务器(192.168.4.7主机操作)

  1. [root@proxy ~]# yum -y install vsftpd
  2. [root@proxy ~]# systemctl restart vsftpd
  3. [root@proxy ~]# useradd tom
  4. [root@proxy ~]# echo 123 | passwd --stdin tom

2)FTP相关扫描脚本(在kali主机操作)
相关脚本存放目录:/usr/share/nmap/scripts/。

  1. [kali@kali ~]$ sudo nmap --script=ftp-anon.nse 192.168.4.7 -p 21 #匿名访问扫描
  2. [kali@kali ~]$ sudo nmap --script=ftp-syst.nse 192.168.4.7 -p 21 #扫描ftp软件相关信息(如版本号,是否有带宽限制,超时时间等)
  3. [kali@kali ~]$ sudo nmap --script=ftp-vsftpd-backdoor.nse 192.168.4.7 -p 21 #后门扫描
  4. [kali@kali ~]$ sudo nmap --script=ftp-brute.nse 192.168.4.7 -p 21 #暴力破解密码

3)SSH相关扫描(在kali主机操作)

  1. [kali@kali ~]$ sudo nmap --script=ssh-brute.nse 192.168.4.7 -p 22 #暴力破解ssh密码
  2. [kali@kali ~]$ sudo vi /tmp/users.lst #新建文件,存储账户信息
  3. root
  4. tom
  5. [kali@kali ~]$ sudo vi /tmp/pass.lst #新建文件,存储密码信息
  6. 123456
  7. 654321
  8. [kali@kali ~]$ sudo nmap --script=ssh-brute.nse --script-args userdb=/tmp/users.lst,passdb=/tmp/pass.lst 192.168.4.5 -p 22 #使用自己创建的账户和密码本暴力破解ssh密码

在192.168.4.7主机可以查看日志

[root@proxy ~]# tail  /var/log/secure                   #查看日志

4)HTTP相关扫描(kali主机操作)这里假设192.168.4.7有http服务

  1. [kali@kali ~]$ sudo nmap --script=http-methods.nse 192.168.4.7 -p 80 #请求方法扫描(如get,post,header等)
  2. [kali@kali ~]$ sudo nmap --script=http-sql-injection.nse 192.168.4.7 -p 80 #SQL注入扫描

备注:SQL注入是指web应用程序对用户输入数据的合法性没有判断或过滤不严,攻击者可以在web应用程序中事先定义好的查询语句的结尾上添加额外的SQL语句,在管理员不知情的情况下实现非法操作,以此来实现欺骗数据库服务器执行非授权的任意查询,从而进一步得到相应的数据信息。
SQL注入是将Web页面的原URL、表单域或数据包输入的参数,修改拼接成SQL语句,传递给Web服务器,进而传给数据库服务器以执行数据库命令。

5)SMB相关扫描(kali主机操作) 这里假设有一台windows主机192.168.137.4

  1. [kali@kali ~]$ sudo nmap --script=smb-brute.nse 192.168.137.4
  2. [kali@kali ~]$ sudo nmap --script=smb-brute.nse --script-args=userdb=/密码本,passdb=/密码本 192.168.137.4

6)暴力破解密码(kali主机操作)

  1. [kali@kali ~]$ sudo john --single /etc/shadow #破解傻瓜式密码
  2. [kali@kali ~]$ sudo john /etc/shadow #字典暴力破解(随时ctrl+c终止)
  3. [kali@kali ~]$ sudo john --wordlist=密码本 /etc/shadow #使用自定义密码本破解
  4. [kali@kali ~]$ sudo john --show /etc/shadow #显示破解的密码

使用tcpdump分析FTP访问中的明文交换信息

1)启用tcpdump命令行抓包(kali虚拟机操作)
执行tcpdump命令行,添加适当的过滤条件,只抓取访问主机192.168.4.7的21端口的数据通信 ,并转换为ASCII码格式的易读文本。这里假设,192.168.4.7主机有vsftpd服务,并且已经启动

  1. [kali@kali ~]$ sudo tcpdump -i 网卡名称 -A host 192.168.4.7 and tcp port 21
  2. tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
  3. listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
  4. .. .. #进入等待捕获数据包的状态

#监控选项如下:
# -i,指定监控的网络接口(默认监听第一个网卡)
# -A,转换为 ACSII 码,以方便阅读
# -w,将数据包信息保存到指定文件
# -r,从指定文件读取数据包信息
#tcpdump的过滤条件:
# 类型:host(主机)、net(网段)、port(端口)、portrange(端口范围)
# 方向:src(源地址)、dst(目标地址)
# 协议:tcp、udp、ip、wlan、arp、……
# 多个条件组合:and、or、not

3)执行FTP访问,并观察tcpdump抓包结果,另开一个终端从kali主机访问主机192.168.4.7的vsftpd服务

  1. [kali@kali ~]$ ftp 192.168.4.7
  2. Connected to 192.168.4.7 (192.168.4.7).
  3. 220 (vsFTPd 3.0.2)
  4. Name (192.168.4.7:root): tom #输入用户名
  5. 331 Please specify the password.
  6. Password: #输入密码123
  7. 530 Login incorrect.
  8. Login failed.
  9. ftp>quit #退出

观察抓包的结果(在kali主机观察tcpdump抓包的结果):

4)再次使用tcpdump抓包,使用-w选项可以将抓取的数据包另存为文件,方便后期慢慢分析。

[kali@kali ~]$ sudo tcpdump  -i 网卡名称  -A  -w  ftp.cap host 192.168.4.7  and  tcp  port  21                          #抓包并保存

tcpdump命令的-r选项,可以去读之前抓取的历史数据文件

[kali@kali ~]$ sudo tcpdump  -A  -r  ftp.cap | egrep  '(USER|PASS)'    #分析数据包



作者:一个小运维
链接:https://www.jianshu.com/p/60b615a14d42

相关资源:

Redis数据的导出和导入 - Dcsdn 

GitOps 初探 - Dcsdn 

java 对Redis的导入和导出 - Dcsdn

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/一键难忘520/article/detail/1002752
推荐阅读
相关标签
  

闽ICP备14008679号