打开下载的Mayday.txt文件:
温柔 知足突然好想你  拥抱突然好想你  拥抱温柔 知足温柔 知足突然好想你  拥抱突然好想你  拥抱温柔 知足温柔 知足突然好想你  拥抱突然好想你  拥抱温柔 知足突然好想你  拥抱突然好想你  拥抱温柔 知足温柔 知足温柔 知足突然好想你  拥抱突然好想你  拥抱温柔 知足温柔 知足温柔 知足温柔 知足突然好想你  拥抱温柔 知足突然好想你  拥抱突然好想你  拥抱温柔 知足温柔 知足突然好想你  拥抱突然好想你  拥抱突然好想你  拥抱温柔 知足突然好想你  拥抱突然好想你  拥抱突然好想你  拥抱突然好想你  拥抱温柔 知足突然好想你  拥抱突然好想你  拥抱温柔 知足突然好想你  拥抱温柔 知足温柔 知足突然好想你  拥抱温柔 知足温柔 知足突然好想你  拥抱温柔 知足突然好想你  拥抱温柔 知足突然好想你  拥抱温柔 知足温柔 知足突然好想你  拥抱突然好想你  拥抱温柔 知足突然好想你  拥抱温柔 知足温柔 知足温柔 知足温柔 知足突然好想你  拥抱突然好想你  拥抱温柔 知足突然好想你  拥抱温柔 知足温柔 知足温柔 知足温柔 知足突然好想你  拥抱突然好想你  拥抱温柔 知足突然好想你  拥抱温柔 知足突然好想你  拥抱突然好想你  拥抱突然好想你  拥抱突然好想你  拥抱突然好想你  拥抱温柔 知足突然好想你  拥抱温柔 知足突然好想你  拥抱温柔 知足突然好想你  拥抱突然好想你  拥抱突然好想你  拥抱温柔 知足突然好想你  拥抱温柔 知足温柔 知足温柔 知足突然好想你  拥抱温柔 知足突然好想你  拥抱温柔 知足突然好想你  拥抱温柔 知足温柔 知足突然好想你  拥抱突然好想你  拥抱温柔 知足温柔 知足温柔 知足突然好想你  拥抱温柔 知足温柔 知足温柔 知足温柔 知足突然好想你  拥抱突然好想你  拥抱温柔 知足突然好想你  拥抱温柔 知足温柔 知足突然好想你  拥抱突然好想你  拥抱突然好想你  拥抱突然好想你  拥抱温柔 知足突然好想你  拥抱温柔 知足温柔 知足突然好想你  拥抱突然好想你  拥抱温柔 知足突然好想你  拥抱温柔 知足突然好想你  拥抱温柔 知足温柔 知足温柔 知足突然好想你  拥抱温柔 知足突然好想你  拥抱温柔 知足突然好想你  拥抱突然好想你  拥抱突然好想你  拥抱突然好想你  拥抱突然好想你  拥抱温柔 知足突然好想你  拥抱
看了很久,没看出什么。看了提示才知道空格有问题,一个空格对应'0' ,两个空格对应'1'
没得说,写脚本吧。
Mayday1(C语言):
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
//利用fscanf()遇到空格会停止读取,fgets()可以读取空格的特性
void main()
{       
        char str[256] = { 0 };
        char str1, str2;
        int i = 0;
        FILE *fp;
        fp = fopen("Mayday.txt", "r");
        if (fp != NULL)
        {
               while (!feof(fp))
               {
                       fscanf(fp, "%s", str);
                       if (!feof(fp))
                              str1 = fgetc(fp);
                       if(!feof(fp))
                              str2 = fgetc(fp);
                       if (str1 == str2)
                       {
                              printf("%d", 1);
                              i++;
                              if (i % 8 == 0)
                                      printf("%c", ' ');
                       }
                              
                       else
                       {
                              printf("%d", 0);
                              i++;
                              if (i % 8 == 0)
                                      printf("%c", ' ');
                       }
                              
               }
               fclose(fp);
        }
        else
               printf("文件不存在!");
        printf("\nend!");
}
最后那个1忽略
 
然后二进制转文本即可得到flag:
 
Mayday2(C语言):
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
void main()
{
        
        
        char str1,str2;
        int i=0;
        FILE* fp;
        fp = fopen("Mayday.txt", "r");
        if (fp != NULL)        //文件不为空
        {
               while (!feof(fp))         //文件未结束,就循环
               {
                       str1 = fgetc(fp);
                       if (str1 == ' ')   //读取到空格符,进入判断
                       {
                              
                              str2 = fgetc(fp); //读取空格字符的下一个字符
 
                              if (str2 == ' ') //根据条件打印0或1
                              {
                                      printf("%d", 1);
                                      i++;
                                      if (i % 8 == 0)
                                             printf("%c", ' ');
                              }
                              if (str2 != ' ')
                              {
                                      printf("%d", 0);
                                      i++;
                                      if (i % 8 == 0)
                                             printf("%c", ' ');
                              }
                       }
               }
               fclose(fp);
        }
        else
               printf("文件不存在!");
        printf("\nend!");
}
 
 
Mayday3(py):
        //逻辑和Mayday2是一样的
with open('Mayday.txt', 'r',) as fp:
    ch1 = fp.read(1)
    i = 0
    while ch1:
 
 
        ch1 = fp.read(1)
        if ch1 == ' ':
            ch2 = fp.read(1)
            if ' ' in ch2:
                print(1, end='')
                i=i+1
                if i % 8 ==0:
                    print(' ')
            else:
                print(0, end='')
                i=i+1
                if i % 8 == 0:
                    print(' ')
 
 
    print("\nend!")
 

CTF-Mayday的更多相关文章

  1. 个人CTF资源聚合

    i春秋 幻泉 CTF入门课程笔记 视频地址 能力 思维能力 快速学习能力 技术能力 基础 编程基础 (c语言 汇编语言 脚本语言) 数学基础 (算法 密码学) 脑洞 (天马行空的想象推理) 体力耐力( ...

  2. 暑假CTF训练一

    暑假CTF训练一 围在栅栏中的爱 题目: 最近一直在好奇一个问题,QWE到底等不等于ABC? -.- .. --.- .-.. .-- - ..-. -.-. --.- --. -. ... --- ...

  3. Sharif University CTF 2016 -- Login to System (PWN 200)

    EN: It's easy to find out where is the bug : .text:0000000000400DE4 ; void *start_routine(void *).te ...

  4. 入CTF坑必不可少的地方-保持更新

    0x00 前言 没有交易,没有买卖,没有排名,纯属分享:p 0x01 CTF介绍 CTF领域指南CTF介绍大全CTF赛事预告 0x02 CTF练习 BIN:reversingpwnableexploi ...

  5. v0lt CTF安全工具包

    0×00 v0lt v0lt是一个我尝试重组每一个我使用过的/现在在使用的/将来要用的用python开发的安全领域CTF工具.实践任务可能会采用bash脚本来解决,但我认为Python更具有灵活性,这 ...

  6. 参加 Tokyo Westerns / MMA CTF 2nd 2016 经验与感悟 TWCTF 2016 WriteUp

    洒家近期参加了 Tokyo Westerns / MMA CTF 2nd 2016(TWCTF) 比赛,不得不说国际赛的玩法比国内赛更有玩头,有的题给洒家一种一看就知道怎么做,但是做出来还需要洒家拍一 ...

  7. Security Tools (Contain CTF tools)

    From now on I will start to have fun with CTF and other security games or challenges. And I am going ...

  8. 隐写-CTF中图片隐藏文件分离方法总结

    0x00 前言 在安全的大趋势下,信息安全越来越来受到国家和企业的重视,所以CTF比赛场次越来越多,而且比赛形式也不断的创新,题目也更加新颖有趣,对选手的综合信息安全能力有一个较好的考验,当然更好的是 ...

  9. 如何在CTF中当搅屎棍

    论如何在CTF比赛中搅屎 0×00 前言 不能搅屎的CTF不是好CTF,不能搅屎的题目不是好题目. 我很赞成phithon神的一句话,"比赛就是和他人竞争的过程,通过各种手段阻止对手拿分我觉 ...

  10. CTF中那些脑洞大开的编码和加密

    0x00 前言 正文开始之前先闲扯几句吧,玩CTF的小伙伴也许会遇到类似这样的问题:表哥,你知道这是什么加密吗?其实CTF中脑洞密码题(非现代加密方式)一般都是各种古典密码的变形,一般出题者会对密文进 ...

随机推荐

  1. dhtmlxtree动态加载节点数据的小随笔

    最近做了一个这个东西,颇有些感触,随笔记录一下自己的过程. 首先特别感谢:https://blog.csdn.net/cfl20121314/article/details/46852591,对我的帮 ...

  2. (1)dotnet开源电商系统-brnshop&brnMall 和老外开发的nopCommerce(dotnet两套电商来PK--第一篇)

    一直想做电商软件,但是实在不想学PHP了,所以前后关注了这两个开源电商系统.一个是国人出品的,一个据说是俄罗斯人写得(不知道对不对).目前两个开源软件都在学习了解中,以下的博文可能会涉及到这两套系统, ...

  3. Match 基因匹配 题解(From luoguBlog)

    N<=20000!N2的LCS要原地爆炸. 去您妈的优化考场上有分就行TLE60真香嘿嘿嘿 然而这显然是个板子只不过像我这样见识短浅的蒟蒻不知道罢了 正解: 某大佬的博客 转化为lis后二分 复 ...

  4. Python 文件操作 day2

    一.打开文件的模式1:读.写.追加 1.r读:读模式,只能读,不能写,打开不存在的文件会报错:可省略'r',因为不写默认是读模式 f = open('filename',encoding='utf-8 ...

  5. Selenium3+python自动化 -JS处理滚动条

    selenium并不是万能的,有时候页面上操作无法实现的,这时候就需要借助JS来完成了. 常见场景: 当页面上的元素超过一屏后,想操作屏幕下方的元素,是不能直接定位到,会报元素不可见的. 这时候需要借 ...

  6. php第九节课

    面向对象 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3 ...

  7. centos7安装mwget下载资源,提升下载速度

    1.安装mwget wget http://jaist.dl.sourceforge.net/project/kmphpfm/mwget/0.1/mwget_0.1.0.orig.tar.bz2 ta ...

  8. mysql 基础教程

    创建数据库: CREATE DATABASE --DATABASE 或者 SCHEMA数据库集合 IF NOT EXISTS db_name CHARACTER SET utf8 COLLATE ut ...

  9. Spring Boot-整合redis(六)

    redis安装 参考:https://www.cnblogs.com/LQBlog/p/9214517.html 单机版 1.添加pom依赖 <!-- Spring Boot Reids 依赖 ...

  10. 通过winrm使用powershell远程管理服务器

    原文地址 在Linux中,我们可以使用安全的SSH方便的进行远程管理.但在Windows下,除了不安全的Telnet以外,从Windows Server 2008开始提供了另外一种命令行原创管理方式, ...