ctf.show 愚人杯

这篇具有很好参考价值的文章主要介绍了ctf.show 愚人杯。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、奇怪的压缩包

下载附件解压提示要密码

ctf.show 愚人杯

使用010editor打开,发现frFlags 和 deFlags 的值都被修改了,这就会造成压缩包的伪加密,

将它们都改回0。

ctf.show 愚人杯

ctf.show 愚人杯

 另存为一个文件再打开,没有密码提示了

ctf.show 愚人杯

 解压发现图片并不完整,反正高度并不够的,下面还有内容没有显示出来ctf.show 愚人杯

 放入010editor,可以看到CRC也报错了,看来高度确实被修改了

ctf.show 愚人杯

 我们把高度修长

ctf.show 愚人杯

 另存为再打开

ctf.show 愚人杯

5oSa5Lq66lqC5b+r5LmQ77yB77yB77yB

应该是一段密文, 我尝试了很多密码解密但是并没有找到什么特别的信息

便再次用010editor打开看,又找到了一个key

ctf.show 愚人杯

eXVyZW5qaWU=

这个就很明显,是base64,解码得到 yurenjie

ctf.show 愚人杯

 继续加入密钥去尝试解密但是依旧没有得到什么特殊信息,不知道是什么加密。

因为当时侧重点在伪加密的那个压缩包解开的图片上去了,其实这张图片还隐藏了一个压缩包

ctf.show 愚人杯

密码就是图片结尾key的base64解码

ctf.show 愚人杯用010editor打开后发现crc报错ctf.show 愚人杯

 将高度修长 ,打开即可正常显示flagctf.show 愚人杯

 

2、哇库哇库2

附件也是一个加密的压缩包,在注释里找到了密码的提示

ctf.show 愚人杯

Σ(1/(n!))是一个特殊的级数,它的值就是e,保留十二位有效数字并四舍五入,结果为2.71828182846(注意这里要加上小数点)

可惜hint.png打开是坏的

ctf.show 愚人杯

拖进kali并没有发现什么

ctf.show 愚人杯ctf.show 愚人杯

ctf.show 愚人杯 ctf.show 愚人杯

 尝试修复这张png图片,它的文件头格式就不对

ctf.show 愚人杯

PNG图像格式文件由文件署名和数据块组成
文件署名域:

8字节的PNG文件署名域用来识别该文件是不是PNG文件。

该域的值是:89 50 4E 47 0D 0A 1A 0A  (十六进制)

数据块:包括关键数据块和辅助数据块

每个数据块都由4个域组成:

Length(长度)

Chunk Type Code(数据块类型码)

Chunk Data(数据块实际内容)

CRC(循环冗余检测)

关键数据块:
文件头数据块IHDR
 它包含有PNG文件中存储的图像数据的基本信息,并要作为第一个数据块出现在PNG数据流中,而且一个PNG数据流中只能有一个文件数据块。

文件头数据块包括:

Width

Height

Bit depth

ColorType

Compression method

Filter method

lnterlace methodl byte

调色板数据块PLTE:

它包含有与索引彩色图像相关的彩色变换数据,仅与索引彩色图像有关,而且要放在图像数据块之前。真彩色的PNG数据流也可以有调色板的数据块,目的是便于非真彩色显示程序用它来量化图像数据,从而显示该图像。

结构如下:

颜色|字节|意义

Red        0=黑色,255=红
Green     0=黑色,255=绿色
Blue        0=黑色,255=蓝色

PLTE数据块是定义图像的调色板信息,PLTE可以包含1~256个调色板信息,每个调色板信息有3个字节组成,因此调色板数据块包含的最大字节数为768,调色板的长度应该是3倍数,否则,这将是一个非法的调色板。

对于索引图像,调色板信息是必须的,调色板的颜色索引从0开始编号,然后是1..2..,调色板的颜色数不能超过色深中规定的颜色数(如图像色深为4的时候,调色板中的颜色数不可超过2^4=16)否则,这将导致PNG图像不合法。

图像数据块IDAT:它存储实际的数据,即图像真正的数据信息,在数据流中可包含多个连续的图像数据块。

图像结束数据IEND:
它用来标记PNG文件或者数据流已经结束,并且必须要放在文件的尾部。

如果我们仔细看PNG文件,我们会发现,文件的结尾12个字符看起来总是:
00 00 00 00 49 45 4E 44 AE 42 60 82

IEND数据块的长度总是0(00 00 00 00,除非人为加入信息),数据标识总是IEND(49 45 4E 44),因此,CRC码也总是AE 42 60 82.

除了表示数据块开始的IHDR必须放在最前面,表示PNG文件结束的IEND数据块放在最后面之外,其他数据块的存放顺序没有限制。

辅助数据块:

1.背景颜色数据块bkGD
2.基色和白色度数据块cHRM(所谓白色度是指当R=G=B=最大值时在显示器上产生的白色度)
3.图像透明数据块tRNS
4.物理像素尺寸数据块pHYs

除了开头,发现文件结尾处也被修改了

ctf.show 愚人杯

 分别对开头和结尾进行修正

ctf.show 愚人杯ctf.show 愚人杯

 但是另存为后打开还是有问题ctf.show 愚人杯

ctf.show 愚人杯

ctf.show 愚人杯

 什么都找不到...

 文本也并没有发现存在零宽隐写,由于hint图片没搞出来,对那段word也不知道方向ctf.show 愚人杯

ctf.show 愚人杯

3、easy_base

将给的密文4C455A5645334C44474A55484D5A42544F5132574956525A50464E464F4E4C474D4656454D334359474A554751564B4949493255535532464E42544643504A35

放进随波逐流

ctf.show 愚人杯

发现这是一个base16编码,解码后得到

LEZVE3LDGJUHMZBTOQ2WIVRZPFNFONLGMFVEM3CYGJUGQVKIII2USU2FNBTFCPJ5

继续

ctf.show 愚人杯

 进行了base32解码,得到

Y3Rmc2hvd3t5dV9yZW5fajFlX2hhUHB5ISEhfQ==

这很明显是base64了,再次解码

ctf.show 愚人杯

 拿到flag

ctfshow{yu_ren_j1e_haPpy!!!}

ctf.show 愚人杯

 4、easy_checkin

将附件解压后放进IDL,找到main函数想进行反编译

ctf.show 愚人杯

ctf.show 愚人杯

报错了...我ida当时装错位置了那个32位的也没找到,我打算重装

ctf.show 愚人杯

 发现只启用了 NX(No eXecute,数据不可执行)保护机制

 5、easy_signin

ctf.show 愚人杯

发现 index.php 被重定向了,Location:/?img=ZmFjZS5wbmc=

curl 命令:用来请求 Web 服务器,它的名字就是客户端(client)的 URL 工具的意思

curl 默认是不进行重定向的,如果要进行重定向,需要加上-L参数

curl -L 网页地址

加上 -o 参数可以保存网页源代码到本地

curl -o  名字.txt  网页地址  -L

加上-i参数可以看到响应报文

curl -i 网页地址

还是不知道怎么处理这种被重定向的网页(错的,这里并没有被重定向,因为存在参数img)

ctf.show 愚人杯

 御剑也没有扫到什么

ctf.show 愚人杯

 ctf.show 愚人杯

 这个里面的内容在kali保存后也没有找到相关东西

PHP伪协议...知识盲区 

随便给img传入一个值

ctf.show 愚人杯

报错,且发现存在file_get_contents()函数

文件包含时用PHP伪协议

可能遇到的文件包含函数:
1、include 2、require 3、include_once 4、require_once 5、highlight_file

6、show_source 7、flie 8、readfile 9、file_get_contents 10、file_put_contents 11、fopen

eg:

php://filter/read=convert.base64-encode/resource=[文件名]读取文件源码(针对php文件需要base64编码)

php://input + [POST DATA]执行php代码

若有写入权限,写入一句话木马

构造这道题的payload

php://filter/read=convert.base64-encode/resource=index.php

ctf.show 愚人杯

查看源码,发现一段base64编码

UEQ5d2FIQUtMeW9LSXlBdEtpMGdZMjlrYVc1bk9pQjFkR1l0T0NBdEtpMEtJeUJBUVhWMGFHOXlPaUJvTVhoaENpTWdRRVJoZEdVNklDQWdNakF5TXkwd015MHlOeUF4TURvek1Eb3pNQW9qSUVCTVlYTjBJRTF2WkdsbWFXVmtJR0o1T2lBZ0lHZ3hlR0VLSXlCQVRHRnpkQ0JOYjJScFptbGxaQ0IwYVcxbE9pQXlNREl6TFRBekxUSTRJREV5T2pFMU9qTXpDaU1nUUdWdFlXbHNPaUJvTVhoaFFHTjBabVZ5TG1OdmJRb2pJRUJzYVc1ck9pQm9kSFJ3Y3pvdkwyTjBabVZ5TG1OdmJRb0tLaThLQ2lScGJXRm5aVDBrWDBkRlZGc25hVzFuSjEwN0Nnb2tabXhoWnlBOUlDSmpkR1p6YUc5M2V6Z3dPREkzT0RGbExXRTBNVEl0TkRCbE1TMWlNVGhoTFRnMk5XTTFOemRsTWpVNU1YMGlPd3BwWmlocGMzTmxkQ2drYVcxaFoyVXBLWHNLQ1NScGJXRm5aU0E5SUdKaGMyVTJORjlrWldOdlpHVW9KR2x0WVdkbEtUc0tDU1JrWVhSaElEMGdZbUZ6WlRZMFgyVnVZMjlrWlNobWFXeGxYMmRsZEY5amIyNTBaVzUwY3lna2FXMWhaMlVwS1RzS0NXVmphRzhnSWp4cGJXY2djM0pqUFNka1lYUmhPbWx0WVdkbEwzQnVaenRpWVhObE5qUXNKR1JoZEdFbkx6NGlPd3A5Wld4elpYc0tDU1JwYldGblpTQTlJR0poYzJVMk5GOWxibU52WkdVb0ltWmhZMlV1Y0c1bklpazdDZ2xvWldGa1pYSW9JbXh2WTJGMGFXOXVPaTgvYVcxblBTSXVKR2x0WVdkbEtUc0tmUW9LQ2dvSw==

进行base64解码

PD9waHAKLyoKIyAtKi0gY29kaW5nOiB1dGYtOCAtKi0KIyBAQXV0aG9yOiBoMXhhCiMgQERhdGU6ICAgMjAyMy0wMy0yNyAxMDozMDozMAojIEBMYXN0IE1vZGlmaWVkIGJ5OiAgIGgxeGEKIyBATGFzdCBNb2RpZmllZCB0aW1lOiAyMDIzLTAzLTI4IDEyOjE1OjMzCiMgQGVtYWlsOiBoMXhhQGN0ZmVyLmNvbQojIEBsaW5rOiBodHRwczovL2N0ZmVyLmNvbQoKKi8KCiRpbWFnZT0kX0dFVFsnaW1nJ107CgokZmxhZyA9ICJjdGZzaG93ezgwODI3ODFlLWE0MTItNDBlMS1iMThhLTg2NWM1NzdlMjU5MX0iOwppZihpc3NldCgkaW1hZ2UpKXsKCSRpbWFnZSA9IGJhc2U2NF9kZWNvZGUoJGltYWdlKTsKCSRkYXRhID0gYmFzZTY0X2VuY29kZShmaWxlX2dldF9jb250ZW50cygkaW1hZ2UpKTsKCWVjaG8gIjxpbWcgc3JjPSdkYXRhOmltYWdlL3BuZztiYXNlNjQsJGRhdGEnLz4iOwp9ZWxzZXsKCSRpbWFnZSA9IGJhc2U2NF9lbmNvZGUoImZhY2UucG5nIik7CgloZWFkZXIoImxvY2F0aW9uOi8/aW1nPSIuJGltYWdlKTsKfQoKCgoK

二次base64解码

<?php
/*
# -*- coding: utf-8 -*-
# @Author: h1xa
# @Date:   2023-03-27 10:30:30
# @Last Modified by:   h1xa
# @Last Modified time: 2023-03-28 12:15:33
# @email: h1xa@ctfer.com
# @link: https://ctfer.com

*/

$image=$_GET['img'];

$flag = "ctfshow{8082781e-a412-40e1-b18a-865c577e2591}";
if(isset($image)){
    $image = base64_decode($image);
    $data = base64_encode(file_get_contents($image));
    echo "<img src='data:image/png;base64,$data'/>";
}else{
    $image = base64_encode("face.png");
    header("location:/?img=".$image);
}

拿到flag 

ctfshow{8082781e-a412-40e1-b18a-865c577e2591}

这里也可以直接将 index.php 进行base64编码后传给img

ctf.show 愚人杯

查看源码并对其进行base64解码得到flag

ctf.show 愚人杯

ctf.show 愚人杯


 文章来源地址https://www.toymoban.com/news/detail-415359.html

到了这里,关于ctf.show 愚人杯的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux中文件的打包压缩、解压,下载到本地——zip,tar指令等

    目录 1 .zip后缀名:         1.1 zip指令         1.2 unzip指令 2 .tar后缀名 3. sz 指令 4. rz 指令 5. scp指令 语法:zip [namefile.zip]  [namefile]... 功能:将目录或者文件压缩成zip格式 常用选项:         -r : 递归处理,将指定目录下的所有文件和子目录一并处理。 语法:unzip [namefil

    2024年01月24日
    浏览(39)
  • 微信小程序下载zip压缩包后解压,并且打开文件查看的内容

            在开发pc端后台管理系统的时候,经常会遇到这样的需求:下载zip到本地,然后用户双击压缩包,并借助电脑端的压缩软件打开压缩包,就可以查看里面的word、excel、pdf文件里面的内容。(这种需求,毫无疑问,对于我们前端开发工程师来说,已经是习以为常了)。

    2024年02月08日
    浏览(42)
  • CTF show逆向5

    没有壳,32位文件 同时注意到附件里的dll文件 找到主函数 分别看看sub_4020B0 sub_4015BD 这两个函数 我发现一般看到MessageBoxA函数,都需要动态调试 动调看到 这里直接进行了返回,返回到了主函数 执行sub_4015BD函数 步入这个函数单步调试 发现Str[1]==1判断没有执行,直接跳过 看看

    2024年01月21日
    浏览(25)
  • CTF-Show-爆破系列

    burp的四种爆破模式: 上述内容来自:https://blog.csdn.net/m0_74097148/article/details/128901184 下载题目中给定的字典。打开页面发现是一个登录框,猜测用户名为admin,密码直接使用burp来进行字典爆破。 字典的内容为: 尝试填写表单数据(admin admin)并抓包: 发现并没有我们输入的adm

    2024年03月09日
    浏览(32)
  • CTF-Show-信息搜集系列

    前端程序员进行开发时,并没有将注释进行删除,导致信息泄露。 这道题在上一道题的基础上做了限制(前端),不让使用快捷键(f12)以及右键打开开发者工具。 那么,我们可以找到chrome浏览器的更多工具,在这个选项中,打开开发者工具,即可绕过。 另一种解法: 没思

    2024年03月09日
    浏览(39)
  • 小白刷题CTF show web方向

    右键查看源代码,再使用在线解密,就可以得出答案了 admin\\\' or 1=1 或者 1 or 1=1 可以登录 查询几个字段: 1\\\' or 1=1 order by 3 # 使用此语句,判断列数。 order by 3不会出错,但是order by 4就没有显示了,因此判断共有3列。 ORDER BY 子句中的数字(如 ORDER BY 4)通常表示 按照查询结果中

    2024年03月14日
    浏览(27)
  • CTF-Show密码学【摩斯码、培根密码】

    萌新 密码33 题目名称 :我想吃培根 题目描述 :-- — .-. … . …–.- … … …–.- -.-. — — .-… …–.- -… …- - …–.- -… .- -.-. — -. …–.- … … …–.- -.-. — — .-… . .-. …–.- – – -… -… – -… – -… – – – -… -… -… /-- -… – -… -… --/ – – – – – /-- -… -… –

    2024年02月11日
    浏览(30)
  • CTF show----web 解题笔记(web签到~web6)

    目录 web签到题 web2 考查点: 1.判断sql注入回显位置 2.查当前数据库名称 3.查看数据库表的数量 4.查表的名字 5.查flag表列的数量 6.查flag表列的名字 7.查flag表记录的数量 8.查flag表记录值 web3 web4 web5  web6 where is flag? 直接F12去找一下   找到   Y3Rmc2hvd3s1YzYyZWE0Mi04M2E5LTRhNDUtODRiM

    2023年04月18日
    浏览(32)
  • CTF-Show密码学【Base64、栅栏密码、16进制】

    萌新_密码13 初步分析 我们首先面对一串看起来符合16进制特征的密文,附带了一个工具下载链接。根据描述,我们下载并打开工具,发现其中包含了一个 16进制编辑器 和一个栅 栏密码加解密 工具。 根据这些线索,我们可以确定这是一串 16进制密文 。为了进行解密,我们需

    2024年02月10日
    浏览(37)
  • CTF-Show密码学:ZIP文件密码破解【暴力破解】

    萌新 隐写23 题目内容: 文件的主人喜欢用生日做密码,而且还是个90后。 在这个题目中,我们有以下已知条件: 文件的主人喜欢用生日做密码 - 这个条件告诉我们,密码可能是一个八位的纯数字密码,因为大多数人的生日在公历中都可以用八位数字表示(例如,19901231表示

    2024年02月10日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包