ctf题目writeup(8)
2019.2.11
南京邮电的ctf平台:
地址http://ctf.nuptzj.cn/challenges#
他们好像搭新的平台了。。。我注册弄了好半天。。。
1.

签到题,打开网址:

查看一下页面源代码:

2.

这道题很熟悉,就是找 md5后开头为0e的 然后传参就行了:
比如 ?a=s878926199a

nctf{md5_collision_is_easy}
3.


这里查看页面源代码:

这里最大长度是10 肯定不够 改成12什么的,足够我们输入 zhimakaimen

nctf{follow_me_to_exploit}
4.

打开后:

查看页面源代码,没发现什么有用的。试了试把index.html改成Index.php也不行。
就把图片保存到本地,notepad++打开:
最后一行:

nctf{photo_can_also_hid3_msg}
5.

这道题打开后是这样的:

打开后查看页面源代码(总共需要三次) 分别是 S0.html S0.htm 404.htm



最后进入404.html:

这个后退没什么用。直接查看源代码:

这段注释 竖着看 就是flag
nctf{this_is_a_fl4g}
6.

打开后这样:

这里需要用unicode看:

去百度一下aaencode
http://utf-8.jp/public/aaencode.html
原来是一种颜文字的加密方式,直接用这个加解密就行了:

nctf{javascript_aaencode}
7.


这里点开后是这样:

其实不知道原理,自己是误打误撞地,因为我在第一页就查看了源代码

然后从这里点链接:

可能正常的方式是抓包吧。这里一路查看源代码没想到就通了。。
8.

这道题以前做过,抓包 吧referer改成 http://www.google.com 就行

nctf{http_referer}
9.

这道题涉及到了 php中一种加密方式,gzinflate(base64)加密,破解的方法就是把eval改成echo即可:

nctf{gzip_base64_hhhhhh}
10.

这道题直接抓包(不能像上一道题那样直接查看源代码了)

看样子是302跳转。。。
nctf{this_is_302_redirect}
11.

打开页面是空白的,查看源代码也什么都没有,尝试抓包:

然后发现 cookie是 login=0 结合提示,0==not,那么1就是真,改成login=1 :

nctf{cookie_is_different_from_session}
12.

打开后有个提示:

直接进去:

所以就是 我们要进入 sql.php这个网址 通过给id赋值,得到flag。
而再明显不过,1024就是我们想要读取的内容。但是这里被过滤了,不过他用的是 intval 这里用1024.1这样的小数 经过intval变换也会变成1024

nctf{query_in_mysql}
13.

看到这提示就想到了啥,利用/x00截断:

这里就构造 nctf= 的形式。
这里需要是数字,而且还得和#biubiubiu符合 strpos函数

所以就得需要利用到 /x00
有两种方式
可以构造 ?nctf[]=1
(利用数组,php中大多函数都无法处理数组,很多题都可以这么做)

或者利用截断,使两个函数都可以利用到:
?nctf=1%00#biubiubiu
nctf{use_00_to_jieduan}
14.


这里就是利用数组,?a[]=1&b[]=2

nctf{php_is_so_cool}
15.


这道题用到了变量覆盖漏洞。
说白了就是两个变量相等,导致变量被覆盖掉。

要注意这里是post方式 需要用到hackbar。
nctf{bian_liang_fu_gai!}
16.

这里大概意思就是 需要等于 54975581388 但是不能和他一样 ,用数组也无法绕过。
所以采用十六进制:
?key=0xccccccccc

nctf{follow_your_dream}
17.


jsfuck直接搞:

进这个网页瞅瞅:

tip在脑袋里,就是header呗。

tip是 history of bash 直接百度下这是啥:

所以直接访问/.bash_history 试试。

那就接着访问/flagbak.zip 发现直接下载这个压缩包了。解压后得到flag

nctf{bash_history_means_what}
18.

R1pDVE1NWlhHUTNETU4yQ0dZWkRNTUpYR00zREtNWldHTTJES1JSV0dJM0RDTlpUR1kyVEdNWlRHSTJVTU5SUkdaQ1RNTkJWSVkzREVOUlJHNFpUTU5KVEdFWlRNTjJF
先base64 再base32 最后base16



nctf{base64_base32_and_base16}
19.

其实不用python也行。。。直接base64在线一直解密就好了:

nctf{please_use_python_to_decode_base64}
20.

密文:iEJqak3pjIaZ0NzLiITLwWTqzqGAtW2oyOTq1A3pzqas
加密方式:1. 翻转明文
2. 将明文的每个字符的ascii码加1
3. base64编码
4. 翻转
5. rot13编码
所以我们解密就是:
1. rot13编码
2. 翻转
3. base64解码
4. 将密文的每个字符的ascii减1
5. 翻转密文
代码:
<?php function decode($str){ $m = base64_decode(strrev(str_rot13($str))); $n = null; $c = null; for($i=0;$i<strlen($m);$i++){ $c = substr($m,$i,1) ; $n = ord($c)-1; $c = chr($n); $r = $r.$c; } $r = strrev($r); echo $r; } decode("iEJqak3pjIaZ0NzLiITLwWTqzqGAtW2oyOTq1A3pzqas"); ?>
解出:nctf{rot13_and_base64_and_strrev}
21.

这个就是随机的 base64 32 16
可以用脚本,也可以咱们先解密看结果因为这三种都有不同的地方。

或者写脚本
答案:nctf{random_mixed_base64_encode}
今天到这。。累了。
ctf题目writeup(8)的更多相关文章
- ctf题目writeup(9)
继续刷题,找到一个 什么 蓝鲸安全的ctf平台 地址:http://whalectf.xin/challenges (话说这些ctf平台长得好像) 1. 放到converter试一下: 在用十六进制转 ...
- ctf题目writeup(7)
2019.2.10 过年休息归来,继续做题. bugku的web题,地址:https://ctf.bugku.com/challenges 1. http://123.206.87.240:8002/ ...
- ctf题目writeup(6)
2019.2.2 依旧是bugku上面的题目,地址:https://ctf.bugku.com/challenges 1. 解压后是60多个out.zip,都是真加密,里面都是1kb的data.txt ...
- ctf题目writeup(5)
2019.2.1 今天继续bugku的隐写杂项题:题目链接:https://ctf.bugku.com/challenges 1. 这道题下载后用wireshark打开...看了好久也没看出个所以然, ...
- ctf题目writeup(4)
2019.1.31 题目:这次都是web的了...(自己只略接触隐写杂项web这些简单的东西...) 题目地址:https://www.ichunqiu.com/battalion 1. 打开链接: ...
- ctf题目writeup(1)
2019/1/28 题目来源:爱春秋 https://www.ichunqiu.com/battalion?t=1 1. 该文件是一个音频文件: 首先打开听了一下,有短促的长的....刚开始以为是摩斯 ...
- ctf题目writeup(3)
题目地址: https://www.ichunqiu.com/battalion 1. 这个是个mp3,给的校验是为了下载下来的. 下来之后丢进audicity中 放大后根据那个音块的宽度来确定是 . ...
- ctf题目writeup(2)
2019.1.29 题目地址: https://www.ichunqiu.com/battalion 1. 点开链接: include "flag.php";$a = @$_REQ ...
- 攻防世界 WEB 高手进阶区 TokyoWesterns CTF shrine Writeup
攻防世界 WEB 高手进阶区 TokyoWesterns CTF shrine Writeup 题目介绍 题目考点 模板注入 Writeup 进入题目 import flask import os a ...
随机推荐
- Mysql Order By 注入总结
前言 最近在做一些漏洞盒子后台项目的总结,在盒子多期众测项目中,发现注入类的漏洞占比较大.其中Order By注入型的漏洞也占挺大一部分比例,这类漏洞也是白帽子乐意提交的类型(奖金高.被过滤概率小). ...
- React学习笔记 - 元素渲染
React Learn Note 3 React学习笔记(三) 标签(空格分隔): React JavaScript 二.元素渲染 元素是构成react应用的最小单位. 元素是普通的对象. 元素是构成 ...
- JavaScript获取当前网页的源码
通过 outerHTML document.documentElement.outerHTML 通过异步请求 $.get(window.location.href,function(res){ con ...
- JavaScript 面向对象编程(四)的常用方法、属性总结
面向对象的属性.方法.操作符总结,都是干货.想深入掌握面向对象的程序设计模式,必须掌握一下知识点.下列知识点注重于实现,原理还请借鉴<javascript高级程序设计> (基于javasc ...
- python入门14 字典dict
字典dict是无序的key:value格式的数据序列 #coding:utf-8 #/usr/bin/python """ 2018-11-11 dinghanhua 字 ...
- POJ 2155 Matrix【二维树状数组+YY(区间计数)】
题目链接:http://poj.org/problem?id=2155 Matrix Time Limit: 3000MS Memory Limit: 65536K Total Submissio ...
- 【洛谷P2577】[ZJOI2005]午餐
午餐 题目链接 DP题都辣么毒瘤的么.. 首先,看一下题解 我们就有了思路: 贪心:显然,让吃饭慢的先打饭,sort一遍(证明?不存在的.. DP:f[i][j][k]表示前i个人,窗口1的打饭时间为 ...
- img的空白内容如何处理
给img加一个 vertical-align: bottom;
- 代替eval执行字符串表达式
function eval2(str) { var Fn = Function; return new Fn('return ' + str)(); }
- 基于 UIImagePickerController 的拓展封装 - iOS
基于 UIImagePickerController 的拓展,分别支持调用相机.相册的功能,其中相机可以设置默认调用前后摄像头; 简单对此进行了封装和实现,其中还有很多点可以继续挖掘和优化,该版本具体 ...