![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
CTF刷题记录
~羽~.
只是野蛮生长
展开
-
XCTF:unfinish(2018网鼎杯)(SQL二次注入)
见到这题,我就和上面的图片是一样的(很形象)扫出个注册页面简单fuzz,可以知道他过滤了逗号和information,没有逗号,就防止了报错注入,因为注册界面一般是insert语句。又把information这个SQL注入中重要的数据库过滤了。然后就很难。正确思路应该是二次注入当注册时用户名使用:1' and '0当注册时用户名为:1' and '1所以这里是存在二次注入的。在mysql中,+只能当做运算符。...原创 2021-09-14 16:42:08 · 1101 阅读 · 0 评论 -
XCTF:ics-07
看源码。<?php session_start(); if (!isset($_GET[page])) { show_source(__FILE__); die(); } if (isset($_GET[page]) && $_GET[page] != 'index.php') { include('flag.php'); }else { header('Location: ?pag...原创 2021-09-09 12:05:15 · 346 阅读 · 0 评论 -
Xctf:CAT
尝试了很多命令执行的,发现并不是命令执行而在URL中具备URL解析功能可以在URL中输入%79 尝试。然后就是一个Djiano的特性和PHP的特性。在报错信息中可以找到不看看dalao的wp我怎么做啊...原创 2021-07-23 15:32:04 · 479 阅读 · 0 评论 -
攻防世界:web2
原创 2021-07-23 12:57:34 · 206 阅读 · 0 评论 -
BUUCTF:[极客大挑战 2019]BabySQL 1
输入:1'1判断是单引号注入输入:1' order by 1#1发现过滤了or,by尝试双写注入输入:1' oorrder bbyy 4#1是四列输入:1' ununionion seselectlect 1,database(),3#1输入:1' ununionion seselectlect 1,2,group_concat(table_name) ffromrom infoorrmation_schema...原创 2021-07-22 15:40:21 · 269 阅读 · 0 评论 -
Buuctf:[SUCTF 2019]CheckIn1
一个文件上传的题。过滤了比较多的敏感后缀。然后检查了文件内容,不允许包含<?所以导致我很多不含shell的图片都上传不成功。很离谱!!!!!反正我现在还没找到可以上传成功的图片,因为我发现好多图片都含有<?很迷,为什么题目这样去设计。知识点:文件幻术头检查.user.ini一句话木马(JS版)...原创 2021-07-22 14:55:50 · 146 阅读 · 0 评论 -
攻防世界:mfw
几个页面点开看一看,有个Git,自然想到Git源码泄露扫一下,还真有然后用GitHack来下载一下源码。OK!有个flag.php 就先查看这个文件在index.php 中有这样的代码。<?phpif (isset($_GET['page'])) { $page = $_GET['page'];} else { $page = "home";}$file = "templates/" . $page . ".php";// I h...原创 2021-07-21 15:24:06 · 101 阅读 · 0 评论 -
攻防世界:shrine
import flaskimport osapp = flask.Flask(__name__)app.config['FLAG'] = os.environ.pop('FLAG')@app.route('/')def index(): return open(__file__).read()@app.route('/shrine/<path:shrine>')def shrine(shrine): def safe_jinja(s): .原创 2021-07-21 13:51:17 · 203 阅读 · 0 评论 -
BUUctf:[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")){//要读取$text的文件中的内容,要读到“welcome to the zjctf"才可以。 echo "<br>&l...原创 2021-07-20 14:02:28 · 222 阅读 · 0 评论 -
BuuCTF:[极客大挑战 2019]BuyFlag 1
为什么要把user=0 改成user=1知道的可以告诉我原创 2021-07-19 13:52:44 · 470 阅读 · 1 评论 -
BUUCTF:[RoarCTF 2019]Easy Calc1
就是这样一个界面。查看源码提示有waf。这里JS读取了calc.php这个页面的数据。查看这个页面:果然:黑名单过滤了一些字符。每当我输入字母,他就会直接报错,虽然不是黑名单中的字符,怎么也报错了,那就应该是一个waf的拦截了。这里要绕waf,要绕过黑名单,最后用eval()函数执行PHP代码。网上学的方法:地址利用PHP字符串解析特性绕过waf:我们知道PHP将查询字符串(在URL或正文中)转换为内部$_GET或的关联数组$_POST。...原创 2021-07-14 12:06:35 · 223 阅读 · 0 评论 -
BUUctfweb:[BJDCTF2020]Easy MD5
搞得像个SQL注入一样,忍不住'#了一下。后面就不太找得到突破点了。看来下WP结果意想不到。Hint: select * from 'admin' where password=md5($pass,true)响应头里面有个这个。查查md5函数md5函数在指定了true的时候,是返回的原始 16 字符二进制格式。可能会返回这样子的字符串:'or’6\xc9]\x99\xe9!r,\xf9\xedb\x1和SQL语句拼接就可以是:select * from ‘a...原创 2021-07-12 12:12:09 · 320 阅读 · 0 评论 -
Buuctf:[极客大挑战 2019]LoveSQL1
随便输入11果然。1'1原创 2021-07-09 16:52:25 · 270 阅读 · 0 评论 -
BUUctf-web:[ACTF2020 新生赛]Exec1
1、|(就是按位或),直接执行|后面的语句2、||(就是逻辑或),如果前面命令是错的那么就执行后面的语句,否则只执行前面的语句3、&(就是按位与),&前面和后面命令都要执行,无论前面真假4、&&(就是逻辑与),如果前面为假,后面的命令也不执行,如果前面为真则执行两条命令5、; 前后都执行,无论前面真假,同&,(linux也有)通过这个连通符进行命令执行。123456 | cat /flag...原创 2021-07-08 17:20:19 · 363 阅读 · 0 评论 -
BUUCTF-web:[SUCTF 2019]EasySQL1
实验一下:11'1'#1#判断个数字型但是联合注入时:返回Nonono.可能被过滤了。不过还可以堆叠注入。1;show databases;1;show tables;有个Flag表。可是怎么样我都查不到表中的内容。看看WP因为无论输入什么时,都返回所以后端的SQL语句select $_GET['query'] || flag from flag是这样的。解法一:payload:*,1查询语...原创 2021-07-08 16:32:55 · 250 阅读 · 0 评论 -
BUUCTF:[GXYCTF2019]BabyUpload1
文件上传漏洞。不过这里我要吐槽一下,这个题首先他不允许传.png文件,再者.jpg文件不能大,打了也报错,传不上去。可想而知,我当时在做这个题的时候跟见了鬼一样难受,什么文件都传不了。接着做题吧:试着传一个PHP文件,告诉我不能传ph开头的文件后缀名,所以这里表示后端把所有php和php的别名都封死了。根据之前upload-labs积累的绕过姿势,还可以上传.htaccess文件。再次上传一句话木马时,又被拦截了,这里应该是后端检测了文件内容。盲猜检测<...原创 2021-07-07 19:34:18 · 3076 阅读 · 1 评论 -
BUUCTF-web:[ACTF2020 新生赛]Upload1
文件上传漏洞:有个前端检查,有个后端黑名单,过滤了php后缀。绕过方法:原创 2021-07-07 12:54:23 · 634 阅读 · 0 评论 -
Buuctf-web:[极客大挑战 2019]PHP1
这个撸猫游戏还挺好玩的哈哈哈哈回来做题。你既然有网站备份文件,那我扫一下。扫出一个www.zip文件下载下来。解压。看到GET 数据传入点,下面还有一个反序列化函数。指向class.php就是一个反序列化的题目:推荐先看看这个题目:另一个类似的题目<?phpclass Name{ public $username = 'nonono'; public $password = 'yesyes'; public f...原创 2021-07-06 21:03:12 · 208 阅读 · 2 评论 -
Buuctf:[极客大挑战 2019]Upload1
这里挺离谱的,我传什么图片上去都说是not image!我靠!!!!!非常难受。看了下wp说可以传GIF,可是试了一下也不行。就很迷惑。随后决定硬来,直接传马。就是这样传的。原创 2021-07-06 17:04:07 · 159 阅读 · 0 评论 -
Buuctf_web:Http
老实说这一步在HTML中找这个链接我是没想到的,也没找到这个。我的目光都被几个绿色的注释吸引了。我甚至还去扫了一下:这里可以看到一个secret.php 文件。有秘密就要去看看。从这里开始就明白为什么题目要叫Http了。关于http不知道的就先了解一下吧抓包改请求头。返回这个:再改:再返回这个再改:最终拿到了...原创 2021-07-05 20:20:13 · 217 阅读 · 0 评论 -
[极客大挑战 2019]EasySQL1
看着网站超级炫酷。经典no one 面具。SQL注入嘛,两个地方都可以输入数据。随便试试。admin123456返回:看来这是正常回显了经典1'以后很明显字符型。输入1' or 1=1 没想到就出来了...原创 2021-07-05 12:24:10 · 170 阅读 · 0 评论 -
BugKu_安慰奖
解码告诉我有备份文件。找到这个<?phpheader("Content-Type: text/html;charset=utf-8");error_reporting(0);echo "<!-- YmFja3Vwcw== -->";class ctf{ protected $username = 'hack'; protected $cmd = 'NULL'; public function __construct($u...原创 2021-07-02 16:31:50 · 189 阅读 · 2 评论 -
Buuctf-web:easy_tornado
就一个一个打开看看就好了再看看这个URL,你很难没点什么想法!做题就是要大胆的尝试。把filename写成:/fllllllllllllag这个的时候。发现一些返回好像msg的值会被回显。又根据前面render函数,还有题目所给的tornad,想到ssti.在Tornado的前端页面模板中,datetime是指向python中datetime这个模块,Tornado提供了一些对象别名来快速访问对象,成功回显。看到一些类。...原创 2021-07-01 14:04:48 · 149 阅读 · 0 评论 -
BugKu_web-聪明的PHP(smarty 模板注入)
一开始叫传个值进去。得到源码:smarty模板注入成功,说明存在模板注入,存在命令执行。接着就是找flag了。这里过滤了很多关键词不过我们依然可以用passthru和tac来读取flag注意:flag不在当前目录下,要进行目录跳转。ls ../ls -al /看到一个奇怪的数字目录读取他tac /_13883...原创 2021-06-30 19:29:46 · 278 阅读 · 2 评论 -
BugKu_No one knows regex better than me
进入第一个if绕过第二个if,进入else主要记录一下第三个正则表达式。if(preg_match("/\\|\056\160\150\x70/i",$third))这里有个优先级的问题,当匹配字符串中有字符串转义时,先进行字符串转义,然后进行正则匹配的相关转义。\x是16进制数,\nnn是8进制数。056-46-.160-112-p150-104-h70--112-p字符串转义后结果是if(preg_match("/\\|\056\160\1...原创 2021-06-29 17:11:28 · 368 阅读 · 1 评论 -
BugKu_web_source
源代码这个是假的在kali扫描dirb http://114.67.246.176:17328/看到有git相关的文件把它下载下来:wget -r http://114.67.246.176:17328/.git,下载完毕后进入文件位置:使用命令:git reflog在使用git show 命令查看flag。一个一个试...原创 2021-06-29 16:21:35 · 592 阅读 · 1 评论 -
BuuCTF _随便注_easy_sql
常规方法试试水可以看到表内所有的内容用联合注入到这里的时候发现了过滤,过滤掉了很多关键字。不过show没过滤。换方法:堆叠注入堆叠注入1、看所有的库2、看所有的表3、看表的内容:1'; show columns from 表名; #(数字串为表名的表操作时要加反引号)看不到内容MySQL 的 show、rename 和 alter 命令:show 可以用于查看当前数据库,当前表,以及表中的...原创 2021-06-29 14:25:23 · 223 阅读 · 0 评论 -
攻防世界Web_php_unserialize
反序列化学习很明显的一个反序列化的题目:通过反序列化函数,进入Demo函数,通过其中的__destruct()函数得到flag提示告诉我们秘密在fl4g.php中本地序列化一下这里因为有个私密变量,所以本地序列化会有些问题。改一下进行base64编码:当然交这个上去就触发了拦截这里很明显是正则表达式拦截的要绕过这个preg_match('/[oc]:\d+:/i',$var)只需要在4前面写个+记住各种绕过姿势。对了还有...原创 2021-06-28 22:59:58 · 159 阅读 · 2 评论 -
攻防世界_Web_python_template_injection
ssti模板注入;检验原创 2021-06-20 13:23:11 · 107 阅读 · 0 评论 -
攻防世界_web_upload1
一个文件上传漏洞查看源码:应该是个前端过滤。试着传一张图片上去。上传成功且返回了图片地址。查看一下:可以看到。所以思路就是将一句话木马文件后缀改成jpg绕过前端过滤,再用BP抓包将文件后缀改回来,用蚁剑链接。...原创 2021-06-19 09:39:51 · 125 阅读 · 0 评论 -
BugKu_web_FileUpload
文件上传.一开始原创 2021-06-18 15:31:06 · 101 阅读 · 0 评论 -
BugKu_web_PHP2
<?php// php版本:5.4.44header("Content-type: text/html; charset=utf-8");highlight_file(__FILE__);class evil{ public $hint; public function __construct($hint){ $this->hint = $hint; } public function __destruct(){ if($t.原创 2021-06-17 22:35:46 · 181 阅读 · 1 评论 -
攻防世界 web—PHP2
就给一句话,问我能不能浏览页面。那就点烂我的鼠标。也没看到其他的东西御剑扫描也没有看到。最后就是输入:index.phps也是够坑人的记住也就好了。再次复习一下php的别名:php2,php3,php5,phtml,pht,phtm.有点乱的源码。意思也就是要求id传入的参数在一开始的时候本质和被URL解码后的值不能一样而id的值又要=admin那就很明显了。URL二次编码id=%2561%2564%256D%2569%256E就可以得到...原创 2021-06-15 22:57:03 · 181 阅读 · 0 评论 -
攻防世界web ——NaNNaNNaNNaN-Batman
没有网页,有个文件下载原创 2021-06-15 22:08:03 · 126 阅读 · 0 评论 -
攻防世界 WEB-NewsCent(SQL注入)
xian原创 2021-06-13 23:53:19 · 306 阅读 · 1 评论 -
攻防世界——warmup
da原创 2021-06-12 22:18:25 · 158 阅读 · 0 评论 -
攻防世界ics-06
御剑一通扫,url都打开看看,页面也随便点点,只能打开这个:没什么思路甚至把2017-03-20弄了上去。当然没用。结果后来查看WP只是一个URL爆破:发现id=2333时不一样:怪不得要提示什么送分题!!!...原创 2021-06-12 23:52:50 · 108 阅读 · 4 评论 -
BugKu _web35
假原创 2021-06-09 19:29:12 · 86 阅读 · 0 评论 -
BugKu_web32
文件shanc原创 2021-05-31 21:16:30 · 90 阅读 · 2 评论 -
BugKu_web30
dai原创 2021-05-30 11:09:32 · 114 阅读 · 1 评论