NCTF-Writeup
南京邮电大学网络攻防训练平台
https://cgctf.nuptsast.com
以下按本人做题的顺序排序
剩余题目待补完。。。
【Web】
1.签到题
nctf{flag_admiaanaaaaaaaaaaa}
网页源码
2.单身二十年
nctf{yougotit_script_now}
由于页面自动跳转,使用工具查看search_key.php页面源码即可
3.SQL注入1
nctf{ni_ye_hui_sql?}
考虑到pass使用md5加密,故在user上注入。由于使用trim去除空格,而mysql除了--外还可使用#作为注释,参考source中SQL写法注入即可
4.SQL注入2
ntcf{union_select_is_wtf}
pass仍然使用md5加密,仍在user上注入。考虑到题目提示的union,联想到令user为空,union select 一段md5值(如123456的md5值),再在pass栏输入原值(123456)即可
5.签到题2
nctf{follow_me_to_exploit}
输入框限制10单位长度,F12审查元素将其改为15后,输入提示即可
6.这题不是WEB
nctf{photo_can_also_hid3_msg}
拖下gif,使用十六进制查看器在文件末尾找到
7.php decode
nctf{gzip_base64_hhhhhh}
将php文件中eval改成echo,执行即可
8.AAencode
nctf{javascript_aaencode}
由于页面读取乱码,将txt文件下载下来,分离出最后一句。先执行前面的,再执行最后一句,放入浏览器console执行即可
9.COOKIE
nctf{cookie_is_different_from_session}
使用fiddler查看发送的数据报文头部,复制内容并将cookie中的login的值0改为1,提交观察返回即可
10.单身一百年也没用
nctf{this_is_302_redirect}
使用fiddler查看发送的数据报文头部即可
11.md5 collision
nctf{md5_collision_is_easy}
借助php处理结果为0e开头的hash函数会误认为其为科学计数法的bug
http://www.freebuf.com/news/67007.html
另:参考王小云博士关于哈希碰撞的研究报告
12.层层递进
nctf{this_is_a_fl4g}
F12打开开发者工具,全部展开,找到一个404.html,双击被注释掉的内容使其格式化后发现flag
13.GBK Injection
nctf{gbk_3sqli}
根据提示,字符集为GBK,考虑在sql结尾加上%d5以将自动补全的\转义掉,同时使用%23(#)注释掉后面的内容(直接用#也会被转义)。默认查询id为1,改为2,3后得到提示the fourth table。参考4,使用union select 1,2,发现返回的是第二个字段。构造sql:union select 1,table_name from information_schema.tables limit n,1查看表名,发现limit 43,1为ctf4表,count该表发现仅1行。由于单引号会被转义,考虑使用ctf4的十六进制值0x63746634,构造sql:union select 1,column_name from information_schema.columns where table_name=0x63746634 limit n,1爆出全部列名,发现第二列为flag列。
考虑到该表仅1行,于是有sql:select flag from ctf4。完整构造语句见下
id=%d5%27%20union%20select%201,flag%20from%20ctf4%20%23where%20table_name=0x63746634%20limit%201,1%23
14.bypass again
nctf{php_is_so_cool}
php中的弱类型问题,==为类型转换后若相等则为true,===必须完全相等。参考11,处理0e开头的字符时,php会认为其为科学计数法,故构造2个字符md5值为0e开头即可
15.综合题
nctf{bash_history_means_what}
复制编码内容放在console中执行,得到1bc29b36f623ba82aaf6724fd3b16718.php,打开页面获得提示“在脑袋里”,在response的header中找到tip:bash history。查看当前目录下的.bash_history文件得到zip -r flagbak.zip,下载该文件并解压得到flag
编码方式参考http://www.freebuf.com/sectool/5352.html
16./x00
nctf{use_00_to_jieduan}
ereg函数为正则匹配,但是根据提示使用/x00即%00可将其截断(ereg漏洞)。又要求传入数据包含#biubiubiu,由于#会将后文内容全部注释,故考虑采用%23代替#,即构造传入参数1%00%23biubiubiu
17.变量覆盖【?】
nctf{AD3FBD8D5928693CA499347C91570AE6}
使用fiddler查看返回的数据报文,指定传入name=meizijiu233即可
18.变量覆盖
nctf{bian_liang_fu_gai}
查看源码,发现post方法有两个参数,pass和thepassword_123。传递参数时指定两者为相同值即可在页面上获得flag
19.起名字真难
nctf{follow_your_dream}
根据源码,要求输入不可为1-9的任意数字,且结果等于54975581388。考虑十六进制转化,发现该值刚好为0xccccccccc,传递该值即可
20.SQL Injection
nctf{sql_injection_is_interesting}
考虑MySQL中\'可转义单引号,根据源码分析发现只要有结果返回即可得到flag。指定username参数为\以转义掉后面的单引号,考虑到password参数的第一个引号将用来闭合username未闭合的引号,同时也为了返回结果,故指定password参数为or 1 #以略去后面的引号,此时又发现#也被过滤,改用%23可获得结果
【Crypto】
1.easy
nctf{this_is_base64_encode}
base64加密,解密即可
2.Keyboard
nctf{areuhack}
键盘字母排列
【Misc】
1.图种
nctf{dssdcmlw}
根据提示,修改后缀名,解压缩得到新的gif
2.Remove Boyfriend
flag{who_am_1}
解析采集的包,得到flag.py,执行发现得到{flag_is_not_here},同时拼接出一张图,将图中的synt{jub_nz_1}替换flag.py中的{synt_vf_abg_urer},得到{flag_who_am_1},改写一下即可
3.MD5
nctf{e9032994dabac08080091151380478a2}
【投机取巧】暴力破解法
考虑:MD5加密算法手动计算
NCTF-Writeup相关推荐
- 南京邮电大学网络攻防训练平台(NCTF)-异性相吸-Writeup
南京邮电大学网络攻防训练平台(NCTF)-异性相吸-Writeup 题目描述 文件下载地址 很明显,文件之间进行亦或就可得到flag,不再多说,直接上脚本 1 #coding:utf-8 2 file ...
- NCTF 南京邮电大学网络攻防训练平台 WriteUp
NCTF 南京邮电大学网络攻防训练平台 WriteUp 不说什么直接上题解 WEB 1.签到题(50) 直接查看网页源码 Flag:nctf{flag_admiaanaaaaaaaaaaa} 2.md ...
- NCTF Crypto WriteUp
http://ctf.nuptzj.cn/challenges Crypto篇: 第一题.第二题.第七题和CG-CTF一样,不写了- 第三题: 说了全家桶,那就python跑吧- Flag:nctf{ ...
- 南邮ctf nctf CG-CTF web题writeup
目录 **CG-CTF链接:** 0x01 签到题 0x02 md5 collision 0x03 签到2 0x04 这题不是WEB 0x05 层层递进 0x06 AAencode 0x07 单身二十 ...
- Writeup of NCTF
南京邮电大学网络攻防训练平台 md5 collision <?php $md51 = md5('QNKCDZO'); $a = @$_GET['a']; $md52 = @md5($a); if ...
- CGCTF平台web题writeup
前言 大概的做了做CGCTF的web题,基本都做出来了,在这整理了一下writeup,其中一些十分简单的题,就大概的写了些,后面一些难题会更详细,需要的可以直接拉倒最后面.共勉. 正文 签到题 10p ...
- 南邮ctf-web的writeup
WEB 签到题 nctf{flag_admiaanaaaaaaaaaaa} ctrl+u或右键查看源代码即可.在CTF比赛中,代码注释.页面隐藏元素.超链接指向的其他页面.HTTP响应头部都可能隐藏f ...
- 南邮CG-CTF—杂项Misc writeup
南邮CG-CTF-杂项Misc writeup Coding Gay 丘比龙De女神 知识点:文件MD5 Remove Boyfriend MD5 图种 注意!! 南邮CG-CTF链接 Coding ...
- CTF平台题库writeup(一)--南邮CTF-WEB(部分)
WEB题 1.签到题 题目:key在哪里? writeup:查看源代码即可获得flag! 2.md5 collision 题目: <?php $md51 = md5('QNKCDZO'); $a ...
- CTF training WriteUp
三周练习和三周考试的writeup 第一周练习 跨站脚本攻击 (XSS) 随便输下面语句 <SCRIPT>alert('XSS')</SCRIPT> <IMG SRC=& ...
最新文章
- Bitcoin Core开发者:提倡使用信用卡进行日常开销而非比特币
- 2057. [ZLXOI2015]殉国
- 9开头的两位数相乘速算法
- owaspbwa tickets
- 悬剑武器库之5种工具学习(shiro检测插件、子域名、信息收集、暴力破解等)
- [51 nod 1238] 最小公倍数之和 V3(杜教筛)
- 应运ajax的几种语言,Ajax指的是什么
- SpringBoot2 整合OAuth2组件,模拟第三方授权访问
- python2.7卸载出问题原因分析_怎么卸载python2.7
- 【7.17总结】 匈牙利算法(二分图最大匹配)
- thymeleaf完善前端界面 | 从0开始构建SpringCloud微服务(4)
- 【Vue】Aliplayer 视音频播放的实践与思考
- Java冻结Excel行或列
- [zz] 导致你创业失败的18个错误 [2007-05-03]
- Ubuntu 和 CentOS 根据命令查找软件包
- oracle执行语句出无效字符,pl/sql动态执行sql语句时报错:ORA-00911: 无效字符 ORA-06512: 在 line 14...
- Zuul网关拦截器配置
- checkedListBoxControl的用法
- 无监督学习 聚类分析②
- 国产CPU产业链的逻辑架构
热门文章
- spoj COT COT2
- 袁国宝:罗永浩直播之道
- 中国大学生学习与发展追踪研究(2007年至今)与中国综合社会调查(2003-2017年)与中国社会状况综合调查(2006-2019年)
- Vue父组件传参数给子组件时,页面崩溃或者报undefined或者数据为空或者执行了两遍
- win10的计算机是哪个版本,Win10七大版本哪个好 Windows10系统各版本功能区别详解...
- 波兰计算机留学,波兰(Rzeczpospolita Polska)留学申请全面解析
- 操作系统的作用及基本特性
- Win10小喇叭红叉叉显示未安装任何音频输出设备怎么解决?
- ajax 传参的三种方式:
- VB.NET读写文本文件方法