X-NUCA联赛WEB赛前指导write-up
第一关
审查代码发现有隐藏的连接,访问,flag一闪而过。打开burpsuite,设置好代理,然后重新访问,在历史里找相应的回复包,得到flag。
第二关
审查元素 修改按钮为可用 抓获一个POST包
但是数据项是有问题的“q1=2015&q2=lol+&q3=22&success=false”
提交显示fail
页面确实给的是q1q2q3,标签是q1q2q4,而且有JS会把lol改成lol+
修改回来q1=2016&q2=lol&q3=22&success=true 提交
第三关
已经是Admin 注意Member参数要base64解密出来是普通的 要改成Admin经过base64加密后的
第四关
构造绕过 V1很简单 5位类似”2017X“字符串 V2需要一个多维数组 V3用%00截断
第五关
登陆进去之后看了前两个人的page参数是MD5值 分别做了解bob317 sam429 推测密码是名字+3位数字
C语言写了一个程序 生成了1000个哈希字典 放进burpsuite暴力破解
有效值:e0abf23f3c6783eb43992635dfbe0d8f
回复包里有flag
第六关
referer注入 sqlmap跑 “sqlmap -u -level 3 -p referer”再加上曝库表列的命令,表多,建议分开跑。
第七关
上传,burp注意改一下内容就好了
第八关
进入关卡后头标签里面有一个JS如下:
p="60,105,102,114,97,109,101,32,104,101,105,103,104,116,61,48,32,119,105,100,116,104,61,48,32,115,114,
99,61,34,46,47,
102,108,48,97,46,112,104,112,34,62"
p=eval("String.fromCharCode("+p+")");
document.write(p);
转化一下,
访问http://218.76.35.75:20123/fl0a.php 提示flag is $flag
$flag是一个php变量 传参是POST方式 参数得去数据包里面找 挂上代理抓包
cookie字段里面有flag参数
第九关
变量覆盖。直接在url里传参就可以了,注意引号有限制,不要带。
第十关
burp下抓到提交的内容会到一个img标签里 闭合标签用onerror=alert()弹出 不要出现引号 否则弹不出来
第11关
包含漏洞 /flag应该是一个文件 page参数给/flag 访问后说flag不在这里 调试下页面 有提示flag在
62a72cb2f3d5e7fc0284da9f21e66c9f.php
访问后得到flag
第12关
发送个的数据包包含的user=Bob&guess=990 提示要用admin 将user=admin guess参数丢进burp里面跑所有的3位数组合 某个回复包就是flag
第13关
简单的社工思想猜一下表和列 然后下面是盲祝的格式
http://218.76.35.75:20101/?name=guest' UNION ALL SELECT NULL,null,concat(database(),0x3a,user()) -- -
构造一下查询flag就出来了
第14关
图片马 合成传上去就好
第15关
曝出目录 访问flag文件 只能用|和&
第16题
审计JS 尤其注意这一点 urlkey提示隐藏了一个文件 js是可以直接访问的 这个三元组是记分板显示的内容 具体调试一下就能得到文件名 然后弹出flag
};
this.mayAdd = function(a) {
if (this.scores.length < this.maxscores) return 1E6 < a && (a = new p, a.set("urlkey",
"webqwer" [1] + "100.js", 864E5)),
!0;
for (var b = this.scores.length - 1; 0 <= b; --b) if (this.scores[b].score < a) return 1E6
< a && (a = new p, a.set("urlkey", "webqwer" [1] + "100.js", 864E5)),
!0;
return ! 1
};
第17题
抓包得到密码 是一个哈希 要解密 然后提交时注意的地方:XFF是伪造IP的,referer伪造来源,数据参数要解密
第18题
kindeditor4.1.7 有曝出路径的漏洞
file_manager_json.php曝出路径 访问指定文件得到flag
第19题
脑洞真大啊!! AWVS曝出了web目录 有一个.git文件夹 下载源代码之后发现hack.php都没闭合完整 后来想起来 如果这里被修改了 是要记入到git记录中的 下载了objects中的内容 通过查看修改记录flag
第20题
Flask SSTI漏洞 可以利用内建函数 或者调用其它可利用的模块 具体百度”Flask SSTI“并参考函数手册
http://218.76.35.75:20102/?data={{help()}}报错 然后页面回显曝出了flag文件 然后用内建文件调用调用这个文件 得到flag
X-NUCA联赛WEB赛前指导write-up的更多相关文章
- web实验指导书和课后习题参考答案
实验指导书 :http://course.baidu.com/view/daf55bd026fff705cc170add.html 课后习题参考答案:http://wenku.baidu.com/li ...
- 全国高校网安联赛Web专场~WriteUp
1.Sign 题目:Good Luck!flag{X-nuca@GoodLuck!} Flag直接写在题目上了,flag{X-nuca@GoodLuck!} 2.BaseCoding 提示:这是编码不 ...
- X-NUCA 2017 web专题赛训练题 阳光总在风雨后和default wp
0X0.前言 X-NUCA 2017来了,想起2016 web专题赛,题目都打不开,希望这次主办方能够搞好点吧!还没开赛,依照惯例会有赛前指导,放一些训练题让CTFer们好感受一下题目. 题目有一大 ...
- 服务器学习笔记之servlet
初衷 想学习下服务器这边的知识,制定了一条学习路线:java8--->servlet--->springMvc--->springBoot--->springCloud.在此当 ...
- 将 Django 应用程序部署到生产服务器
原文出自: http://www.ibm.com/developerworks/cn/opensource/os-django/ 比较有启发性质的一篇文章,会避免很多弯路 Django 是一个基于 P ...
- 访客至上的Web、移动可用性设计--指导原则
文章出自:听云博客 关于可用性设计,之前写过一个“纸上谈兵”版本的,那篇帖子主要是根据A/B test的方式来进行的. 但是最近找了本Steve krug写的Don't make me think,我 ...
- 精通Web Analytics 2.0 (13) 第十一章:变身分析忍者的指导原则
精通Web Analytics 2.0 : 用户中心科学与在线统计艺术 第十一章:变身分析忍者的指导原则 这个激动人心的一章,分析了几乎所有工作的各个方面. 目标很简单:使用成熟的方法来帮助避免淹死的 ...
- 【ZZ】Web开发的入门指导 | 菜鸟教程
Web开发的入门指导 http://www.runoob.com/w3cnote/a-beginners-guide-to-web-development.html
- Web可用性设计的247条指导方针
首页可用性设计 首页元素要清晰的关注用户的关键任务(避免“增加功能倾向(featuritis)”) 如果网站比较大,那么首页应包含搜索输入框 首页要十分清楚的提供产品(内容)分类 在首页或首页内一次点 ...
随机推荐
- mysqldump进行数据库的全备时,备份数据库的顺序是什么,就是先备份哪个库,然后再备份哪个库
需求描述: 今天在用mysqldump工具进行数据库的备份的时候,突然想了一个问题,比如我有10个库要进行备份 那么是先备份哪个,然后再备份哪个呢,所以,做了实验,验证下. 操作过程: 1.使用--a ...
- android 开发者资源下载地址记录(转+补充)
https如果无法下载的话将下面的:https://dl-ssl 部分改为 http://dl (1)Android SDK (Android SDK主安装包,包含SDK Manager.AVD Ma ...
- 设置jQuery validate插件错误提示位置
参照上一篇bootstrap布局注册表单 使用校验插件默认位置显示提示信息,发现错误提示信息换行了,由于增加了提示信息,表单显示高度也增加了,如下 默认提示信息位置代码为 将错误提示设置其显示在右边, ...
- fgetc read缓冲机制区别
read属于系统调用,它的缓存是基于内核的缓冲,是记在内核空间的. 而fgetc是标准函数, 是在用户空间I/O缓冲区的 比如用fgetc读一个字节,fgetc有可能从内核中预读1024个字节到I/O ...
- C语言编程基础学习字符型数据的ASCII码值为何是负数?
C语言是面向过程的,而C++是面向对象的 C和C++的区别: C是一个结构化语言,它的重点在于算法和数据结构.C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现 ...
- php 升级后 htmlspecialchars 返回空 的解决方案
今天将php版本升级到5.3.0以上(我升级到php5.4.13)的版本后发现一个问题 htmlspecialchars 函数返回为空.查了资料后,发现新版本对htmlspecialchars这个函数 ...
- Delphi 单元
单元(unit)是组成Pascal程序的单独的源代码模块,单元有函数和过程组成,这些函数和过程能被主程序调用.一个单元至少要有unit语句,interface,和implementation三部分,也 ...
- 开源的PaaS方案:在OpenStack上部署CloudFoundry (一)简介
目录(?)[-] OpenStack简介 OpenStack是一个美国国家航空航天局和Rackspace合作研发的以Apache许可证授权并且是一个自由软件和开放源代码项目 OpenStack是一个云 ...
- 【Android M】获取屏幕锁定的相关信息:“无”,“滑动”,“PIN码”,"图案","密码"
ENV: Android M 6.0.1 import android.os.UserHandle; import com.android.internal.widget.LockPa ...
- sencha touch 入门系列 (九) sencha touch 布局layout
布局用来描述你应用程序中组件的大小和位置,在sencha touch中,为我们提供了下面几种布局: 1.HBox: HBox及horizontal box布局,我们这里将其称为水平布局,下面是一段演示 ...