
Buuctf刷题篇
Buuctf刷题篇
paidx0
主要记录日常学习笔记和有意思题目的题解,静下心来学习少说多做。
成长只有从试错中一步步靠近。
展开
-
[CISCN2021 Quals]upload(PNG-IDAT块嵌入马)
[CISCN2021 Quals]upload(PNG-IDAT块嵌入马)原创 2022-09-17 15:40:03 · 613 阅读 · 0 评论 -
[HFCTF 2021 Final]easyflask
[HFCTF 2021 Final]easyflask原创 2022-08-31 12:35:47 · 422 阅读 · 0 评论 -
[网鼎杯 2020 青龙组]notes(Undefsafe原型链污染)
[网鼎杯 2020 青龙组]notes(Undefsafe原型链污染)原创 2022-08-30 21:47:36 · 761 阅读 · 0 评论 -
[FBCTF2019]Event(flask 伪造签名)
[FBCTF2019]Event(flask 伪造签名)原创 2022-08-27 15:02:25 · 332 阅读 · 0 评论 -
[SWPU2019]Web3
[SWPU2019]Web3原创 2022-08-27 14:06:45 · 326 阅读 · 0 评论 -
[CSAWQual 2016]i_got_id(Perl ARGV)
[CSAWQual 2016]i_got_id(Perl ARGV)原创 2022-08-27 13:06:33 · 401 阅读 · 0 评论 -
[HarekazeCTF2019]Easy Notes(session伪造)
[HarekazeCTF2019]Easy Notes(session伪造)原创 2022-08-24 16:31:51 · 600 阅读 · 0 评论 -
[羊城杯 2020]Blackcat
[羊城杯 2020]Blackcat原创 2022-08-23 02:11:51 · 632 阅读 · 0 评论 -
[羊城杯 2020]Easyphp2
[羊城杯 2020]Easyphp2原创 2022-08-23 01:20:35 · 474 阅读 · 0 评论 -
[watevrCTF-2019]Pickle Store
[watevrCTF-2019]Pickle Store原创 2022-08-21 22:08:04 · 358 阅读 · 0 评论 -
[GoogleCTF2019 Quals]Bnv(本地DTD文件与XXE学习)
[GoogleCTF2019 Quals]Bnv(本地DTD文件与XXE学习)原创 2022-08-17 16:46:42 · 398 阅读 · 0 评论 -
[HFCTF2020]BabyUpload
[HFCTF2020]BabyUpload。原创 2022-08-17 03:51:15 · 195 阅读 · 0 评论 -
[SUCTF 2018]MultiSQL(mysql预编译)
[SUCTF 2018]MultiSQL(mysql预编译)原创 2022-07-12 05:42:45 · 447 阅读 · 0 评论 -
[安洵杯 2019]不是文件上传
[安洵杯 2019]不是文件上传原创 2022-07-01 11:47:58 · 160 阅读 · 0 评论 -
[GYCTF2020]Ezsqli
[GYCTF2020]Ezsqli原创 2022-06-03 16:41:41 · 326 阅读 · 0 评论 -
[网鼎杯2018]Unfinish
先随便注册个号进来,找了一圈没什么特别的,注意到可能也就用户名那里可以二次注入,登录时被读出来测试一下可以看见,确实是做了一个判断,二次注入可以fuzz一下,有一些过滤102 就是 f ,那没错了import requestsfrom bs4 import BeautifulSoupimport timeurl = 'http://85ee117f-5e9c-40d1-9280-ac80cdc5079c.node4.buuoj.cn:81/'result = ''for .原创 2022-04-30 08:13:25 · 201 阅读 · 0 评论 -
[HFCTF2020]JustEscape
考点 :nodejs vm逃逸没学过先做个记录wappalyzer 检测出 php 和 nodejs,居然都自爆不是PHP了,那就试试是不是 nodejs让他异常 /run.php?code=Error().stackError at vm.js:1:1 at Script.runInContext (vm.js:131:20) at VM.run (/app/node_modules/vm2/lib/main.js:219:62) at /app/server.原创 2022-04-30 06:54:26 · 384 阅读 · 0 评论 -
[N1CTF 2018]eating_cms
试了一会SQL注入,不是那么好注入,佬说有个注册页 register.php,就注册个号先进去看看注意到page参数,大概率就是可以读文件了,所以开读guest.php<?phpif (FLAG_SIG != 1){ die("you can not visit it directly ");}include "templates/guest.html";?>user.php<?phprequire_once("function.php");if( !..原创 2022-04-30 06:09:45 · 290 阅读 · 0 评论 -
[GYCTF2020]EasyThinking
搜了一下thinkPHP6 的洞,看到一个可以RCE的洞,就赶紧试试ThinkPHP 6.0.1 漏洞分析(任意文件操作)利用方式大概就是首先 session文件的命名我们是可控的,通常是 sess_+ PHPSESSID 的值 命名的注意:这里 PHPSESSID是32位其次,会把提交的 key 写入到 session 文件,所以利用就是想办法把payload写到可控的session文件中先注册个账号,然后抓登录的包,把 PHPSESSID改成 PHPSESSID=123456781234567原创 2022-04-29 23:19:40 · 1284 阅读 · 0 评论 -
[NCTF2019]SQLi
robotx.txt 下放了个提示 hint.txt$black_list = "/limit|by|substr|mid|,|admin|benchmark|like|or|char|union|substring|select|greatest|%00|\'|=| |in|<|>|-|\.|\(\)|#|and|if|database|users|where|table|concat|insert|join|having|sleep/i";If $_POST['passwd'] =原创 2022-04-29 22:07:06 · 292 阅读 · 0 评论 -
[SUCTF 2019]Pythonginx(Idna与utf-8编码漏洞)
每天一题,记录学习题目直接给了源码 @app.route('/getUrl', methods=['GET', 'POST'])def getUrl(): url = request.args.get("url") host = parse.urlparse(url).hostname if host == 'suctf.cc': return "我扌 your problem? 111" parts = list(urlsplit(ur原创 2021-08-28 23:41:00 · 2361 阅读 · 4 评论 -
[CISCN 2019 初赛]Love Math
直接看题题目禁用了一些黑名单,然后可以用一些数学函数的白名单,还正则禁用了字母数字的混合字符串。一步一步来看首先肯定是想办法构造这种形式?c=system('cat /flag')?c=($_GET[a])($_GET[b])&a=system&b=cat /flag?c=($_GET[acos])($_GET[pi])&acos=system&pi=cat /flag现在关键是 $_GET 怎么利用数学函数构造知识点base_convert()函数原创 2021-08-27 18:44:55 · 376 阅读 · 1 评论 -
[湖南省赛2019]Findme
题目有点恶心,直接开始首先给了五张图片,其中一张是无法打开的1.png第一张图猜测是被改了宽高的压缩图,丢进010看报了CRC的错,那就爆破正确的宽高吧import zlibimport structfilename = r'C:\Users\Administrator\Downloads\1.png'with open(filename, 'rb') as f: all_b = f.read() crc32key = int(all_b[29:33].hex(), 16)原创 2021-10-11 17:31:00 · 270 阅读 · 1 评论 -
[De1CTF 2019]SSRF Me
知识点1、python代码审计2、SSRF给了个提示,感动#! /usr/bin/env python# #encoding=utf-8from flask import Flaskfrom flask import requestimport socketimport hashlibimport urllibimport sysimport osimport jsonreload(sys)sys.setdefaultencoding('latin1')app = Fla原创 2021-08-23 01:00:49 · 219 阅读 · 4 评论 -
[NPUCTF2020]ReadlezPHP
每天一题,记录学习首先注意到的就是右键看不了源码,那就直接抓包来看,可恶,注意到有一个隐藏的 <a href="./time.php?source"></a> 标签去访问这个./time.php?source 看看,很明显就是一道反序列化的题目代码很简单,就是$a和$b形成嵌套$b($a) 来执行就行了注意一下eval和assert的区别eval和assert二者都可以执行PHP语句。只不过是,eval规范更加严格一些,必须符合PHP代码要求。而assert则没有那原创 2021-09-03 19:06:53 · 178 阅读 · 1 评论 -
[SWPU2019]Web1(无列名注入)
每天一题,记录学习题目有几个地方把我坑惨了,哈哈哈首先试了一下注册一个admin账号,然后就发现admin已经被注册然后就开始试了一堆admin的密码进行爆破,人傻了,考点压根就不在这。直接注册一个号进去看看发布广告的位置又让我想起了 XSS,然后就又上当了其实这是一道SQL注入的题目,太坑了吧通过简单的测试,过滤了空格,or,and,--+,#等等因为这里过滤了 or,所以information_schema库自然是也用不成了,所以就用到了无列名的注入方式具体用法可以看看我的另原创 2021-08-30 19:31:31 · 442 阅读 · 2 评论 -
[SCTF2019]电单车
前言一道有意思的 misc,记录一下,又是不知道的知识,哈哈哈[SCTF2019]电单车题目给的是一段音频,播放就是一个解锁的声音 ’次’用Adobe Audition 打开可以看见一段一段的信号然后以短的为 0,长的为 1进行替换0 0111010010101010011000100知识点PT2242信号:前面4bit表示同步码,中间的20bit表示地址码,后面的4bit表示功能码,最后一位是停止码。也就是 0。。。01110100101010100110。0010。0所以最后的fl原创 2021-09-16 10:50:50 · 1409 阅读 · 1 评论 -
[网鼎杯 2020 朱雀组]phpweb
每天一题,记录学习猜测这里大概是调用了date() 函数,抓包看看,和猜测是一样的那么接下来就好办了,前面是函数,后面是参数读个文件看看<?php $disable_fun = array("exec","shell_exec","system","passthru","proc_open","show_source","phpinfo","popen","dl","eval","proc_terminate","touch","escapeshellcmd","escapes原创 2021-09-07 20:08:10 · 122 阅读 · 1 评论 -
[MRCTF2020]Ezpop
[MRCTF2020]Ezpop就像题目说的,又是一道反序列化的 pop 链的题,直接给了源码几个小知识1、__get() 是访问不存在的成员变量时调用的。2、__set() 是设置不存在的成员变量时调用的。举个例子<?phpclass Test{ public $c=0; public $arr=array(); public function __set($x,$y){ echo $x . "\n"; echo $y .原创 2021-09-03 21:39:28 · 233 阅读 · 1 评论 -
[WUSTCTF2020]朴实无华
每天一题,记录学习打开界面啥也没有,抓包也没提示的,一般就是要扫他的目录了,直接上御剑访问看到fAke_f1agggg.php,打开居然假的 flag没有头绪就抓包看看,会有惊喜下面是源码,但是有中文乱码,改编码为Unicode即可//level 1if (isset($_GET['num'])){ $num = $_GET['num']; if(intval($num) < 2020 && intval($num + 1) > 2021){原创 2021-09-07 23:46:18 · 130 阅读 · 1 评论 -
[0CTF 2016]piapiapia(反序列化逃逸)
偷了三天懒没有学习,哈哈哈,通宵看完了扫黑风暴开始做题打开环境,第一时间以为是SQL注入,用sqlmap跑了一下,并不是找了一下也没有什么东西,就去扫一下他的敏感目录,扫到www.zip,下载下来先用Seay快速审计一下,再去细看代码逻辑知识点1、代码审计2、反序列化逃逸来一起看看代码吧先看看可能存在文件读取的profile.php首先想到的就是利用反序列化,然后文件读取,继续跟进$profile = $user->show_profile($username);再看in原创 2021-09-02 16:09:39 · 797 阅读 · 2 评论 -
[SUCTF 2019]EasyWeb(bypass open_basedir)
<?phpfunction get_the_flag(){ // webadmin will remove your upload file every 20 min!!!! $userdir = "upload/tmp_".md5($_SERVER['REMOTE_ADDR']); if(!file_exists($userdir)){ mkdir($userdir); } if(!empty($_FILES["file"])){原创 2021-11-08 13:43:33 · 280 阅读 · 0 评论 -
[SWPUCTF 2018]SimplePHP(phar反序列化)
首先看到是个文件上传,先看源码,源码里有个file.php?file=可以读文件,简单的都看了一下,主要注意力放在 class.php 和 function.phpfunction.php<?php //show_source(__FILE__); include "base.php"; header("Content-type: text/html;charset=utf-8"); error_reporting(0); function upload_file_do() { .原创 2021-11-06 18:45:36 · 3260 阅读 · 0 评论 -
[BJDCTF2020]EzPHP(create_function利用)
前言额,题目是没有做出来,环境多少是有点问题,我这么菜只能敢怒不敢言了至于什么问题后面我会提到,只能跟着大佬的思路复现一下了题目还是能学到很多打开环境界面还是挺帅的,哈哈哈,不浪费时间,F12+base32新的页面1nD3x.php代码审计<?phphighlight_file(__FILE__);error_reporting(0); $file = "1nD3x.php";$shana = $_GET['shana'];$passwd = $_GET['passwd原创 2021-11-11 21:44:25 · 826 阅读 · 0 评论 -
ZJCTF 2019-NiZhuanSiWei
ZJCTF 2019-NiZhuanSiWei<?php $text = $_GET["text"];$file = $_GET["file"];$password = $_GET["password"];if(isset($text)&&(file_get_contents($text,'r')==="welcome to the zjctf")){ echo "<br><h1>".file_get_contents($text,'r').原创 2021-08-17 16:15:24 · 210 阅读 · 1 评论 -
GWCTF 2019-我有一个数据库
GWCTF 2019-我有一个数据库像这种什么也没有告诉的题目,一般先去看一看robots.txt,还是没有就githack,dirsearch一下,一般总会给点什么东西的。再不然就御剑扫呗一般先注意版本,然后去找有什么爆出的漏洞可以利用这里phpmyadmin4.8.1确实有可以利用的phpmyadmin4.8.1远程文件包含漏洞(CVE-2018-12613)漏洞利用payload?target=db_sql.php%253f/../../../../../../../../etc原创 2021-08-17 22:20:07 · 286 阅读 · 0 评论 -
[安洵杯 2019]easy_web
呜呜呜,web狗没法活啊随便看看,发现有东西被隐藏了在抓包看看还有什么隐藏的东西果然是有东西的,base64解码看看,结果是个图片,也就是那个表情包猜测这里应该是利用了对象包含,所以尝试把源码拉出来看看果然没错,表情包就是被下载的,所以这个就是源码base64解码<?phperror_reporting(E_ALL || ~ E_NOTICE);header('content-type:text/html;charset=utf-8');$cmd = $_GET['cmd.原创 2021-08-21 21:44:08 · 202 阅读 · 2 评论 -
RoarCTF 2019-Easy calc
RoarCTF 2019-Easy calc查看源码有新的页面,然后访问 calc.php,然后还有WAF<?phperror_reporting(0);if(!isset($_GET['num'])){ show_source(__FILE__);}else{ $str = $_GET['num']; $blacklist = [' ', '\t', '\r', '\n','\'', '"', '`', '\[', '\]','\$','\\',原创 2021-08-17 12:16:36 · 264 阅读 · 0 评论 -
[HDCTF2019]信号分析
前言一道有意思的Misc的题,记录一下,用于区别之前做过的一道类似的题,这次好像是什么汽车遥控杆的信号[SCTF2019]电单车题目给了个 .wav 文件,又因为题目叫做信号分析,所以直接用Adobe Audition 打开分析了适当缩放,会发现是一段一段重复的信号,所以只需要分析一段根据之前做过的电单车的信号分析,先把它们转化成0和1长的是1,短的是0最后得到0101010101010101000000110PT2242信号:前面4bit表示同步码,中间的20bit表示地址码,后面原创 2021-11-12 19:18:21 · 1283 阅读 · 0 评论 -
buuctf VoIP
知识盲点首先要知道 VoIP是什么,他是一种类似于现在的语音电话吧题目给的就是一段这样的流量包wireshark 是可以播放这种流量包的点击播放流然后后面就开始了英语听力时间,flag就藏在这段音频中,简直离谱flag{9001IVR}...原创 2021-09-16 12:50:48 · 1228 阅读 · 0 评论