CTF-安恒十二月月赛部分writeup

这次题目都比较简单蛤,连我这菜鸡都能做几道。

WEB1-ezweb2

打开网站,啥也没有,审计源代码,还是啥都没有,也没什么功能菜单,扫了一下目录,扫到了admin.php,但是提示:你不是管理员。好吧,抓个包看看

解一下码--:

将user改为admin,发现直接跳转到了admin.php页面。

这个框试了一下是可以执行命令的,ls

但是ls / 却错误,ls -l 也是错误,应该是过滤了空格通过 $IFS 可以绕过

cat /ffLAG_404 也就是cat$IFS/ffLAG_404即可读取flag

flag为:flag{6f1d95159e3b90ed28186c518dd15e8c}

WEB2-easy

是一道代码审计题

代码如下

<?php
@error_reporting(1);
include 'flag.php';
class baby
{
public $file;
function __toString()
{
if(isset($this->file))
{
$filename = "./{$this->file}";
if (file_get_contents($filename))
{
return file_get_contents($filename);
}
}
}
}
if (isset($_GET['data']))
{
$data = $_GET['data'];
preg_match('/[oc]:\d+:/i',$data,$matches);
if(count($matches))
{
die('Hacker!');
}
else
{
$good = unserialize($data);
echo $good;
}
}
else
{
highlight_file("./index.php");
}
?>

unserialize 一眼就看到了是反序列化题目,

用户类定义了一个__toString为了让应用程序能够将类作为一个字符串输出(echo $good),而且其他类也可能定义了一个类允许__toString读取某个文件。

那么构造反序列化字符串即可读取任意文件,但是题目存在正则筛选,preg_match('/[oc]:\d+:/i',$data,$matches);筛掉了[oc]:数字:。

如果正常的反序列化payload:O:4:"baby":1:{s:4:"file";s:8:"flag.php";}中前面的O:4:符合正则的条件,因此将其绕过即可。利用符号+就不会正则匹配到数字

所以payload为:O:+4:"baby":1:{s:4:"file";s:8:"flag.php";}

注:使用burp可以直接提交,使用url或者hackbar需要url编码一下

flag为flag{ad2328a2c3f0933c053fd3c6f28f6143}

MISC2-签到

关注官方微信号 回答脑筋急转弯即可 答案为蜗牛

MISC3-学习资料

题目只有一个txt可以打开

比较两个压缩包

其crc32值是相同的,因此可以使用明文攻击。将备忘录单独拿出来压缩为一个压缩包。然后和加密的压缩包进行明文攻击。

N年以后--

word隐写嘿嘿,套路1检查文档

有是有,但是找半天,后来发现flag在图片后面......

所以flag为flag{edaa144c91a4e5b817e4a18cbdb78879}

其实把word后缀改为zip,打开找word/document.xml即可

MISC4-juju

压缩包里只有一张png图,一顿测试后,发现在kali打不开

那就是说图片的文件内容肯定被改了,题目提示说有11只猪,但是png只有几只,所以大概知道是什么了

上winhex

这两个位置决定着图片的高度,如果更改它的值,图片高度也会发生变化,值越大图片越长

改了后面的参数几次还是没出来,所以直接该前一位 02为22

好了,图片够长了

base的格式,但是不是base64,是base32,解一下得到flag

所以flag为flag{a213072327f762855e475779eb081ca3}

CTF-安恒18年十二月月赛部分writeup的更多相关文章

  1. CTF-安恒18年十一月月赛部分writeup

    安恒十一月月赛writeup 昨天做了一下十一月的题目,不才只做出来几道 签到web1 这个是十月的原题,因为忘了截图所以只能提供思路 Web消息头包含了登陆框的密码 输入密码后进入上传页面,上传一句 ...

  2. CTF-安恒19年二月月赛部分writeup

    CTF-安恒19年二月月赛部分writeup MISC1-来玩个游戏吧 题目: 第一关,一眼可以看出是盲文,之前做过类似题目 拿到在线网站解一下 ??41402abc4b2a76b9719d91101 ...

  3. CTF-安恒19年一月月赛部分writeup

    CTF-安恒19年一月月赛部分writeup MISC1-赢战2019 是一道图片隐写题 linux下可以正常打开图片,首先到binwalk分析一下. 里面有东西,foremost分离一下 有一张二维 ...

  4. 【CTF】2019湖湘杯 miscmisc writeup

    题目来源:2019湖湘杯 题目链接:https://adworld.xctf.org.cn/task/answer?type=misc&number=1&grade=1&id= ...

  5. 安恒杯2月月赛-应该不是xss

    1. 打开题目一看,是个留言板 2. 查看源码发现有几个js文件 依次打开发现在main.js里存在这样一段代码 3. 访问 /#login是登录的界面,/#chgpass是修改密码的界面,其中修改密 ...

  6. 安恒杯11月月赛web题目-ezsql详细记录

    通过此题目可以学习到 1.通过load_file+like来盲注获取文件内容 2.php魔术方法__get函数的用法 3.bypass  linux命令过滤 题目中给了注册和登录的功能,没有源码泄露 ...

  7. 2018安恒杯11月月赛 MISC

    题目放评论了 Numeric password 这次隐写没有按照套路出牌,很强. 记录一下 看来自主学习的能力很有待提高. 打开Numeric password.txt 中华文化博大精深,近日在教小外 ...

  8. 安恒2018年三月月赛MISC蜘蛛侠呀

    到处都是知识盲区hhh 下载了out.pcap之后,里面有很多ICMP包 看到ttl之后联想到西湖论剑里面的一道杂项题,无果 看WP知道可以使用wireshark的tshark命令提取流量包里面的文件 ...

  9. 【CTF】CTFHub 技能树 文件头检查 writeup

    PHP一句话木马 <?php @eval($_POST["pass"]);?> <?php eval($_REQUEST["pass"]);? ...

随机推荐

  1. 传递给数据库 'model' 中的日志扫描操作的日志扫描号无效

    状况描述:在服务器的管理中重新启动MSSQLSERVER启动后马上又停止   通过"事件查看器" 发现 错误: ,严重度: ,状态: LSN(::)无效.该 LSN 是传递给数据库 ...

  2. 沉淀再出发:Tomcat的实现原理

    沉淀再出发:Tomcat的实现原理 一.前言 在我们接触java之后,相信大家都编写过服务器程序,这个时候就需要用到Tomcat了.Tomcat 服务器是一个开源的轻量级Web应用服务器,在中小型系统 ...

  3. 【最强】微软Tech Summit 2017动手实验室教程

    [最强]微软Tech Summit 2017动手实验室教程 原创 2017-11-07 MSPrecious MSPrecious成长荟 这是! 你绝对找不到的教程! Ignite2016的教程你找到 ...

  4. Git在eclipse中的配置

    1:git在eclipse中的配置 windows - >preferences->team->git->configuration 点击add Entry key值:输入 u ...

  5. java一些使用

    随机数.输入.byte数组和string转换 一些可能会使用到的方法.供及时查找 ########################random类使用 Random random = new Rando ...

  6. charles license key

    Download: http://www.charlesproxy.com/ (Official Web-site) Registered name: anthony ortolani License ...

  7. Swap是个什么东东?

    要明白这个首先要知道什么是保护模式和实模式.以前的操作系统是实模式,例如dos.每个时候只有一个进程在跑,这个进程使用全部的物理内存.后来发展到保护模式,分时多进程.一个CPU上跑多个进程, 但进程不 ...

  8. vue笔记2

    vue项目目录 <pre> ├── build // 构建服务和webpack配置 ├── config // 项目不同环境的配置 ├── dist // 项目build目录 ├── in ...

  9. CATransition:视图替换动画:子视图的增删查改

    CATransition通常用于通过CALayer控制UIView内子控件的过渡动画,比如删除子控件,添加子控件,切换两个子控件等. 用于子视图的增删查改:

  10. 面向对象的JavaScript --- 封装

    面向对象的JavaScript --- 封装 封装 封装的目的是将信息隐藏.一般而言,我们讨论的封装是封装数据和封装实现.真正的封装为更广义的封装,不仅包括封装数据和封装实现,还包括封装类型和封装变化 ...