2018~第三届南宁市网络安全技术大赛~nnctf~write-up
Web
1.超简单
分值:100 类型:WEB 已解决
题目:超简单的web题 http://gxnnctf.gxsosec.cn:12311/
代码审计
<?php
$white_list = range(0,9);
require_once('flag.php');
if(isset($_REQUEST['no'])){ //非空
$a=$_REQUEST['no'];
if(@ereg("^[0-9]+$", $a) === FALSE){ //必须为数字
echo 'no must be number';
}else{
if(in_array($a,$white_list)){ //数字必须在$white_list白名单里
if(strlen($a)>1){ //但是if(strlen($a))长度必须>1
echo 'you are a great dark phper<br>';
echo "<img src='dark.gif'><br>";
echo $flag;
}else{
echo 'you no dark';
}
}else{
echo 'you are so dark';
}
}
}else
highlight_file(__FILE__);
构造payload的两种方法:
?no=0000
?no=0%00 //erge()函数 %00截断
2.帽子商城
分值:200 类型:WEB 未解决
题目:有帽子你就能变强,去这买几顶帽子吧 http://gxnnctf.gxsosec.cn:12313
3.Sql???
分值:200 类型:WEB 已解决
题目:小明想当一名黑客,于是学习写网站,但他遇到点问题,帮帮他吧 http://gxnnctf.gxsosec.cn:12312/
按照一般思路测试id, 200OK
看到这些首先想到测试ID,是否存在注入,试了各种姿势未果,发现大部分关键字都被过滤,联合注入、盲注都走不通,于是想到可能存在其它辅助漏洞,用御剑扫描工具进行扫描发现http://gxnnctf.gxsosec.cn:12312/网站目录/.git/存在git泄漏,直接利用git恢复工具恢复文件,到这里希望就很大了,仿佛找到了sql大门,当初没有直接想到先扫描一下网站,导致浪费了很多时间 (T_T)
https://github.com/style-404/Git_Extract //git恢复工具
/.git/文件恢复
对index.php进行代码审计
审计发现几乎所有的关键字都被过滤了,但是case when关键字没有被过滤,利用MySQL的case when的特性进行绕过,判断变量是否为空,若为空赋值为2,不为空的话查询结果为1。第一次查询返回2,第二次查询返回1。
case when测试:
条件满足:
1. 参数id在里面进行两次sql查询,第一次需要id=2、第二次需要id=1
2. 参数backdoor=Melonrind
构造payload
http://gxnnctf.gxsosec.cn:12312/?id=case%20when%20@nnctf%20is%20null%20then%20@nnctf:=2%20else%20@nnctf:=@nnctf-1%20end&backdoor=Melonrind
2018~第三届南宁市网络安全技术大赛~nnctf~write-up的更多相关文章
- 第一届合天杯河北科技大学网络安全技术大赛 web6 writeup
- 2017年陕西省网络空间安全技术大赛——种棵树吧——Writeup
2017年陕西省网络空间安全技术大赛——种棵树吧——Writeup 下载下来的zip解压得到两个jpg图片,在Kali中使用binwalk查看文件类型如下图: 有两个发现: 1111.jpg 隐藏了一 ...
- 2017年陕西省网络空间安全技术大赛——一维码——Writeup
<!doctype html> 2017年陕西省网络空间安全技术大赛——一维码——Writeup 先判断下载的文件flag.png确实是png格式的图片后(binwalk, file命令均 ...
- 阿里云IPv6 DDoS防御被工信部认定为“网络安全技术应用试点示范项目”
近日,阿里云数据中心骨干网IPv6 DDoS网络安全防御被工业和信息化部认定为“网络安全技术应用试点示范项目”,本次评选由工业和信息部网络安全管理局发起,从实用性.创新性.先进性.可推广性等维度展 ...
- ACM-ICPC 2018 沈阳赛区网络预赛 K Supreme Number(规律)
https://nanti.jisuanke.com/t/31452 题意 给出一个n (2 ≤ N ≤ 10100 ),找到最接近且小于n的一个数,这个数需要满足每位上的数字构成的集合的每个非空子集 ...
- ACM-ICPC 2018 南京赛区网络预赛 J.sum
A square-free integer is an integer which is indivisible by any square number except 11. For example ...
- Trace 2018徐州icpc网络赛 (二分)(树状数组)
Trace There's a beach in the first quadrant. And from time to time, there are sea waves. A wave ( xx ...
- ACM-ICPC 2018 南京赛区网络预赛 E题
ACM-ICPC 2018 南京赛区网络预赛 E题 题目链接: https://nanti.jisuanke.com/t/30994 Dlsj is competing in a contest wi ...
- ACM-ICPC 2018 南京赛区网络预赛B
题目链接:https://nanti.jisuanke.com/t/30991 Feeling hungry, a cute hamster decides to order some take-aw ...
随机推荐
- show()封装没有想象中那么简单
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Treap与fhq_Treap学习笔记
1.普通Treap 通过左右旋来维护堆的性质 左右旋是不改变中序遍历的 #include<algorithm> #include<iostream> #include<c ...
- 理解图像分割中的卷积(Understand Convolution for Semantic Segmentation)
以最佳的101 layer的ResNet-DUC为基础,添加HDC,实验探究了几种变体: 无扩张卷积(no dilation):对于所有包含扩张卷积,设置r=1r=1 扩张卷积(dilation Co ...
- OpenLayer实现路径运动
近期由于业务的需求,让我这从未想过要碰Web Gis的业余前端开发者,走了Web Gis的开发道路.功能需求很简单,但却也是让自己难为了好几天.如,应该选择那个Gis框架,Gis框架的兼容性如何,直接 ...
- C# RichTextBox 滚动条 滚动到最新行
richTextBox.Select(richTextBox.TextLength, 0); richTextBox.ScrollToCaret();
- GC参考手册 —— GC 调优(基础篇)
GC调优(Tuning Garbage Collection)和其他性能调优是同样的原理.初学者可能会被 200 多个 GC参数弄得一头雾水, 然后随便调整几个来试试结果,又或者修改几行代码来测试.其 ...
- asp.net core系列 43 Web应用 Session分布式存储(in memory与Redis)
一.概述 HTTP 是无状态的协议. 默认情况下,HTTP 请求是不保留用户值或应用状态的独立消息. 本文介绍了几种保留请求间用户数据和应用状态的方法.下面以表格形式列出这些存储方式,本篇专讲Sess ...
- 从零到一详聊如何创建Vue工程及遇到的常见问题
前言 本文也会在github上我的web-study仓库中同步更新,欢迎star. 戳这里,传送 准备工作 判断是否需要FQ或安装镜像,镜像一般可安装国内淘宝镜像,详情可看这里:cnpm npm in ...
- [JavaScript] AMD和CMD概述
1. cmd 和 amd 在浏览器中,受网络和浏览器渲染的制约,不能采用同步加载,只能采用异步加载.于是 AMD 规范应运而生 2. AMD AMD(Asynchronous Module Defin ...
- vue项目,axios请求图片接口,接口返回的是文件流的形式,如何转换成图片?
axios .get('/captcha', { params: param, responseType: 'arraybuffer' }) .then(response => { return ...