warmup(HCTF 2018)】的更多相关文章

为啥想写这道题的wp呢,因为这道题就是照着phpmyadmin 4.8.1 远程文件包含漏洞(CVE-2018-12613)复现出来的 题目 查看源码很容易找到source.php,直接访问 分析 题目的意思也很好理解主要是要这三个条件全部满足,就会进行文件包含 if (! empty($_REQUEST['file']) && is_string($_REQUEST['file']) && emmm::checkFile($_REQUEST['file']) ) { in…
HCTF 2018 Warmup 原题复现:https://gitee.com/xiaohua1998/hctf_2018_warmup 考察知识点:文件包含漏洞(phpmyadmin 4.8.1任意文件包含) 线上平台:https://buuoj.cn(北京联合大学公开的CTF平台) 榆林学院内可使用协会内部的CTF训练平台找到此题 过程 访问页面查看源码发现注释里面的内容访问它 访问获得index.php的源码 payload:http://03b2cc85-7af4-439b-a06e-4…
攻防世界 WEB 高手进阶区 HCTF 2018 warmup Writeup 题目介绍 题目考点 PHP代码审计 Writeup 打开 http://220.249.52.134:37877 常规操作 F12 看源码 url 输入 http://220.249.52.134:37877/source.php 得到 <?php highlight_file(__FILE__); class emmm { public static function checkFile(&$page) { /…
靶场首页 打开靶场后,查看源码即可看到<!--source.php--> 打开source.php页面 代码如下 <?php     highlight_file(__FILE__);     class emmm     {         public static function checkFile(&$page)         {             $whitelist = ["source"=>"source.php&quo…
BUUOJ Web的第一题,其实是很有质量的一道题,但是不知道为什么成了Solved最多的题目,也被师傅们笑称是“劝退题”,这道题的原型应该是来自于phpMyadmin的一个文件包含漏洞(CVE-2018-12613) 解题过程 解题思路 进入题目查看源代码发现提示: 跟进source.php得到源代码: <?php highlight_file(__FILE__); class emmm { public static function checkFile(&$page) { $white…
解题思路 进入页面之后,一个大大的滑稽. 查看源码 查看源码发现有source.php .打开 发现还有一个hint.php.打开发现 由此可知是代码审计了 解题 代码审计 先看此段代码,大致意思是.如果提交过来的file不是空的,并且是字符串,经过了emmm类中,checkFile函数的过滤.那么就执行包含文件.由此可知可能存在文件包含,目录穿越的漏洞.而要包含的就是ffffllllaaaagggg. 现在看如何绕过过滤 主要看这段代码,这段代码的意思是 获取传入的参数位数,然后截取前该位数的…
首先爬一遍整个网站,发现有没注册的时候有“login”,"register",这两个页面,注册一个123用户登录后发现有 "index“,”post“,”logout“,”change password“这四个界面,根据题目提示的admin,猜测是不是要让我用admin来登录这个网站?然后我在login界面输入用户名”admin“,密码”123“(弱口令)结果猝不及防 喵喵喵???还没开始就结束了? 正确的打开方式:总的来说就是欺骗服务器,假装自己是admin buu限制发包…
前言: 最近在BUUCTF刷题,参照师傅们wp后复现一下 0x01 拿到题目后进去如下界面 发现有登录和注册界面,相比是要登录后才能查看想要的信息. 查看页面源代码,看看有没有上面提示,界面如下 提示你不是admin,到这里基本上主要的方向已经有了,就是要以admin用户登录进去,才能查看到flag 0x02 一,弱密码 首先尝试了一下弱密码爆破,结果成功进入,密码是123,然后成功看到flag 二,Unicode欺骗 假设我们不知道admin密码,或者是比较复杂的密码,然后我们注册一个用户,登…
题意:有一个串s,n个串模式串t,问s的子串中长度最小的包含t k次的长度是多少 题解:把所有t建ac自动机,把s在ac自动机上匹配.保存每个模式串在s中出现的位置.这里由于t两两不同最多只有xsqrt(x),x是总长度.然后双指针扫一遍即可 这里有一个很重要的优化技巧,由于ac自动机上不是每个点都是t的结尾,我们把fail向上跳一次变成直接跳到t的结尾,build预处理一下 //#pragma GCC optimize(2) //#pragma GCC optimize(3) //#pragm…
A. Splits time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output Let's define a split of n as a nonincreasing sequence of positive integers, the sum of which is n. For example, the following seque…
A. Alternating Sum 就是个等比数列,特判公比为 $1$ 的情况即可. #include <bits/stdc++.h> using namespace std; ; ; ) { ; while (b) { ) ans = 1LL * ans * a % MOD; a = 1LL * a * a % MOD; b >>= ; } return ans; } int M(int a) { ) a += MOD; if (a >= MOD) a -= MOD; r…
题 OvO http://codeforces.com/contest/963/problem/B CF 963B 964D 解 对于题目要求,显然一开始的树,要求度数为偶数的节点个数为奇数个,通过奇偶讨论显然这个树总节点个数为奇数个. 然后对于每一步分割出来的树林,显然树林中每个树都得满足度数为偶数的节点个数为奇数个,同样地,可以得到树林中每个树的总结点为奇数个 其实上面写的一些是废话,后文并不会用到…… 首先排除度数为偶数的节点有偶数个的树,即已知要讨论的树均满足度数为偶数的节点有奇数个 从…
首先打开页面,查看源码 you are not admin考虑是否为需要登录 后发现右上方有个登录 考虑密码爆破,用户名为admin,密码未知 摔进burpsuite后爆破 后得到密码为123 登录得到flag…
题目链接 攻防世界-Warmup 解题思路 [原题复现]HCTF 2018 Warmup(文件包含)…
极客大挑战 2019]EasySQL-1 直接通过输入万能密码:' or 1=1#实现注入: 思考:服务端sql语句应该为:select * from users where username='xxx' and password='xxx';,但在实际开发中应该更多的是select password from users where username='xxx';然后将获得的密码与输入的密码(可能存在加密)进行比对,因此在实际中此种漏洞应该极少存在. 极客大挑战 2019]Havefun 打开…
Warmup 先看hint   image.png 看url有file参数,感觉可能要用伪协议啥的,试了下,没出东西扫一下目录,发现http://warmup.2018.hctf.io/source.php源码文件源码如下 <?php class emmm { public static function checkFile(&$page) { $whitelist = ["source"=>"source.php","hint&quo…
php中可以使用strpos函数与mb_strpos函数获取指定的字符串在别一个字符串中首次出现的位置,也可以使用它们判断一串字符串中是否包含别一个字符串. PHP strpos() 函数 查找 "php" 在字符串中第一次出现的位置:<?php echo strpos("You love php, I love php too!","php"); ?> 运行结果:9 PHP mb_substr() 函数 <?php echo…
0x00前言: 继上篇的内容,这章总结下二次注入,python脚本,bypass 上篇sql注入总结(一)--2018自我整理 0x01二次注入: 二次注入的原理是在把非法代码添加进数据库里面存储了,因为 \' 这种转义不会把\(反斜杠)代入到数据库中存储,然后在其他地方调用了这个非法代码并且拼接到sql语句中了 简而言之 非法代码 ==存入==> 数据库 #非法代码 \' 这种转义的只会把 ' 存入数据库 数据库中的非法代码字段 ==取出==> 后台语言中的变量中 后台语言变量的非法代码 =…
攻防世界系列 :warmup 1.打开题目,一个贱贱的滑稽表情 F12看到注释内容source.php 2.访问source.php <?php highlight_file(__FILE__); class emmm { public static function checkFile(&$page) { $whitelist = ["source"=>"source.php","hint"=>"hint.p…
http://www.cnblogs.com/shanyou/archive/2010/12/21/1913199.html 有些web应用在可以处理用户访问之前,需要装载很多的数据,或做一些花费很大的初始化处理.今天使用 ASP.NET 的开发人员经常使用应用的Global.asax  文件中的 “Application_Start”事件处理函数来做这些工作(该事件是在第一个请求执行时触发的).他们要么设计定制脚本,周期性地向应用发假的请求,来“唤醒它(wake it up)”,从而在客户访问…
tips:from菜鸡队长 这次去打HCTF决赛,用了这个自己写的WAF,web基本上没被打,被打的漏洞是文件包含漏洞,这个功能在本人这个waf里确实很是捉急,由于只是简单检测了..和php[35]{0,1},导致比赛由于文件包含漏洞web上失分了一次.不过现在不是很想去改进了.这个是比赛专用waf,商业价值几乎为0. 如果是框架写出的web就很好部署了,直接require在重写文件或者数据库文件中,如果是零散的php文件,那也有办法,如果是fastcgi(nginx,IIS比较常见)运行的ph…
http://acm.timus.ru/problem.aspx?space=1&num=2018 真心爱过,怎么能彻底忘掉 题目大意: 长度为n的串,由1和2组成,连续的1不能超过a个,连续的2不能超过b个 dpa[i] 表示长度为i时以a为结尾的串的个数,dpb[i] 类似 求dpa[i]时 需要枚举结尾a的个数就可以了 dpb[i] 类似 #include <iostream> #include <stdio.h> #include <stdlib.h>…
Math.abs(~2018) 某前端群的入门问题长姿势了,一个简单的入门问题却引发了我的思考,深深的体会到自己在学习前端技术的同时忽略遗忘了一些计算机的基础知识. 对于 JS Math对象没什么可说的, Math.abs(x)指的是返回一个数的绝对值,而解题关键在“~2018”,乍一看,这是什么意思,不会是“-2018”符号打错了吧?细思一下才恍然大悟,这是取反操作符,故取相反数得结果为-2018,Math.abs(-2018) 即2018,大功告成!可是,输入进去发现,What!错误!Why…
问题描述 SharePoint Server是一个易于使用的协作平台,目前在越来越多的企业中被应用开来.SharePoint Server是通过网站的形式向最终用户提供服务的,而这个网站是基于ASP.NET 的技术实现的.由于ASP.NET技术的特点,网站启动之后,页面在第一个用户第一次访问的时候,会需要进行所谓的JIT 编译,而这个时间,对于该用户来说,可能会显得有点长.这也是大家普遍反映的问题,为什么第一次要比较慢,而以后就较快了. 另外,由于ASP.NET网站会使用到应用程序池的技术,而应…
http://acm.hdu.edu.cn/showproblem.php?pid=4710 Balls Rearrangement Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 735    Accepted Submission(s): 305 Problem Description Bob has N balls and A b…
http://acm.hdu.edu.cn/showproblem.php?pid=4708 Rotation Lock Puzzle Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Problem Description Alice was felling into a cave. She found a strange door with a number square m…
http://acm.hdu.edu.cn/showproblem.php?pid=4715 Difference Between Primes Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Problem Description All you know Goldbach conjecture.That is to say, Every even integer great…
http://acm.hdu.edu.cn/showproblem.php?pid=4712 Hamming Distance Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 65535/65535 K (Java/Others) Total Submission(s): 1610    Accepted Submission(s): 630 Problem Description (From wikipedia) For bina…
hduoj 4706 Children's Day 2013 ACM/ICPC Asia Regional Online —— Warmup Herding Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 2005    Accepted Submission(s): 563 Problem Description Little Joh…
http://acm.hdu.edu.cn/showproblem.php?pid=4707 Pet Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Problem Description One day, Lin Ji wake up in the morning and found that his pethamster escaped. He searched in th…