2017-6-4 CTF解题报告
1.签到题
扫描二维码得到
ZCTF{WELCOME_TO_20-209}
2.阿斯克的秘密
从前有个叫做阿斯克的人,他写了一句话,聪明的你能明白他写的是什么吗?
int a;
while(scanf("%d",&a)!=EOF)
printf("%c",(char)a);
将里面的数字输入到程序中即可;
3.送小可爱啦!!!
做出这一题的送小可爱一只
用UE打开——搜索“flag”

得到flag {wo_shi_xiao_ke_ai}
4。困在栅栏里的人是谁
下载图片后改扩展名为rar
打开压缩包发现有一个文件

文件里是 4c665f78647770685f21
这是16进制的。我猜答案肯定是字符串的所以转字符串;
根据题目和图片得到线索:栅栏(密码) & 凯撒(密码)
所以把16进制分栏,发现分栏后转不成字符串
那么先转字符串再分栏

分栏后把得到的字符串进行凯撒解密
代码如下:
#include<iostream>
#include<stdio.h>
#include<string.h>
using namespace std;
int main()
{
char c[]={"l_dp_fxwh!"} ;
int l=strlen(c);
for (int i = ; i < ; i++)
{
for (int j = ; j < l; j++)
{
if (c[j] + i > 'z'&&c[j] >= 'a'&&c[j] <= 'z')
{
printf("%c", c[j] + i - );
}
else if (c[j] >= 'a'&&c[j] <= 'z')
printf("%c", c[j] + i);
else
printf("%c", c[j]);
}
printf("\n\n");
}
}
一个一个试,把得到的字符串放程序里跑一遍;
(这个程序只能转小写的,所以里面有个大写字母要改成小写的,最后再改成大写)
发现在5的时候

有个I_am_cute!
别的都不是正常英文;
那就是这个了~
具体操作:
转字符串;
分栏1,2,3.... <-----
程序里跑一遍 |
发现不行,分栏++--------
发现可以,get答案
5.土豪聪
hc有很多txt,每个txt里面都有一笔十分宝贵的财富(也就是一个三位数而已),它们的财富值计算公式如下 value=filename^content 其中^表示乘方,比如5^4=5*5*5*5=625,可是钱多也很苦恼,hc连自己有多少财富值都不知道了, 聪明的你能帮hc算算他有多少财富值吗? 由于数据比较大,请将结果对9973求余
解压后发现有100个txt,每个txt里有一个三位数字;
把这些txt合并到一个里,(百度方法)用cmd命令;

把所有txt输入到111.txt(因为111.txt也在这个范围里,所以合并完这个111.txt也把自己复制了一次)
得到的是没换行的!没关系~

写个程序辣~
#include<iostream>
#include<stdio.h>
#include<fstream>
#include<string>
#define mod 9973
using namespace std;
int pow4(int a, int b) //快速幂,百度有模板
{
int r = , base = a;
while (b) {
if (b & )
{
r *= base; r = r%mod;
}
base *= base;
base %= mod;
b >>= ;
}
return r;
}
int main()
{
ifstream cin("111.txt"); //c++输入流重定向,从文件111.txt输入
string s;
cin >> s; //输入字符串;
int t, sum;
sum = ;
int num = ;
for (int i = ; i < s.size(); )
{
int a = ;
for (t = ; t < ; t++) //每三个是一个数
{
a = a * + s[i] - '';
i++;
}
num++;
sum += pow4(num, a);//快速幂
sum %= mod;
}
cout << sum << endl;
}
然后结果

6。移位密码
明文是小写的
把大括号里的东西换成小写,写个程序辣~
#include<iostream>
#include<stdio.h>
#include<string.h>
#include<fstream>
using namespace std;
int main()
{
char c[] = { "qduqiogkuijyed" };
int l = strlen(c);
for (int i = ; i < ; i++)
{
for (int j = ; j <l; j++)
{
if (c[j] + i > 'z')
{
printf("%c", c[j] + i - );
}
else
printf("%c", c[j]+i);
}
printf("\n\n");
}
}

结果里有一个“aneasyquestion”
这就答案!
7.py交易
用py2.7运行一下发现是个死循环
在线反编译py

把除了循环的代码复制到py控制台里运行
得到

答案就是 pyisinteresting
8.简单逆向
用OD打开
自动步入,就看到了;
也可以直接搜索参考字符串“flag”

9.心急吃不了热豆腐
F12 直接找js文件;
发现里面有一个控制时间的变量,有个输出被注释掉了,把注释去掉,时间改小,再开html如图


10.不存在的
UE打开搜flag,嘻嘻。
安装apk??不存在的
2017-6-4 CTF解题报告的更多相关文章
- 「THUSCH 2017」大魔法师 解题报告
「THUSCH 2017」大魔法师 狗体面太长,帖链接了 思路,维护一个\(1\times 4\)的答案向量表示\(A,B,C,len\),最后一个表示线段树上区间长度,然后每次的操作都有一个转移矩阵 ...
- BZOJ 4864: [BeiJing 2017 Wc]神秘物质 解题报告
4864: [BeiJing 2017 Wc]神秘物质 Description 21ZZ 年,冬. 小诚退休以后, 不知为何重新燃起了对物理学的兴趣. 他从研究所借了些实验仪器,整天研究各种微观粒子. ...
- 2017 Multi-University Training 2 解题报告
Is Derek lying? Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)T ...
- 洛谷 P3747 [六省联考2017]相逢是问候 解题报告
P3747 [六省联考2017]相逢是问候 题目描述 \(\text {Informatik verbindet dich und mich.}\) 信息将你我连结. \(B\) 君希望以维护一个长度 ...
- 2017 Multi-University Training 1 解题报告
Add More Zero Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)T ...
- ACM-ICPC 2017 Asia HongKong 解题报告
ACM-ICPC 2017 Asia HongKong 解题报告 任意门:https://nanti.jisuanke.com/?kw=ACM-ICPC%202017%20Asia%20HongKon ...
- 人生第一场CTF的解题报告(部分)
解题报告 濮元杰部分: 王者归来: 120 场景 小王入职了一段时间,最近有点无聊.Web安全项目不多,白天看着其他项目组的同事忙得热火朝天,小王有点坐不住了,这也许是新人都会有的想法,乐于助人.想到 ...
- 【LeetCode】Island Perimeter 解题报告
[LeetCode]Island Perimeter 解题报告 [LeetCode] https://leetcode.com/problems/island-perimeter/ Total Acc ...
- 【九度OJ】题目1026:又一版 A+B 解题报告
[九度OJ]题目1026:又一版 A+B 解题报告 标签(空格分隔): 九度OJ 原题地址:http://ac.jobdu.com/problem.php?pid=1026 题目描述: 输入两个不超过 ...
随机推荐
- watchdog(IWDG)
1.为了避免程序忙跑跑死了没反应,加上一个看门狗watchdog实时监控着程序,一旦程序没有在规定的时间喂狗,则狗叫使得单片机复位. 2.Independent watchdog(IWDG)内部有时钟 ...
- jquery滚动条事件
<!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8& ...
- Selenium chrome配置不加载图片Python版
环境: windows 7 + Python 3.5.2 + Selenium 3.4.2 + Chrome Driver 2.29 + Chrome 58.0.3029.110 (64-bit) f ...
- mysql数据库和mongodb数据库的相关操作以及两个数据库的区别
在docs命令中执行数据操作 MySQL数据库 先启动MySQL服务器 net start mysql 进入MySQL服务器MySQL -uroot -p(这里写你的数据库密码) (-P是从哪个端口 ...
- Mathematica学习笔记1
非常喜欢Mathematica的"自动草稿纸"的理念,Magic Paper, 唔哈~ Mathematica的矩阵操作和Matlab的风格十分不同. [ ] 是一个Part运算符 ...
- Python3中文件处理
1.txt,xls,doc等文件的使用 f=open("filename","w") 打开一个用于写入的文件,要写入内容时使用f.write("内 ...
- Spring 控制反转
Spring 控制反转 具体内容 Spring 开发框架之中有几个概念DI&IOC.AOP.那么要想理解Spring就必须首先理解控制反转的核心意义是什么? 对于IOC来讲如果直接进行文字的描 ...
- peoplesoft function PSTREENODE 通过 deptid 获得部门树 全路径 名称
create or replace function getUnitFullName(deptid in varchar) return varchar2 is r ); c int; n ); m ...
- 2,返回Json
一,使用Spring Boot默认Json解析框架jackson 1,创建一个实体类Persion package com.zh.json; public class Persion { privat ...
- 移动端em与rem区别
rem与em都是相对单位,我们使用它们的目的就是为了适应各种手机屏幕. rem是根据html根节点来计算的,而em是继承父元素的字体.比如下面一个demo <!doctype html> ...