新版NewBugKu-Web1-对方不想和你说话并扔了一段代码Writeup

枫少@KillBoy
枫少@KillBoy
枫少@KillBoy
管理员
357
文章
0
粉丝
Web安全6248,0543字数 269阅读0分53秒阅读模式
AI智能摘要
当对方沉默甩来一段代码,你是否以为无解?本文深度拆解CTF经典陷阱:如何利用PHP的extract函数漏洞和trim的空白清除特性,仅需一个GET参数绕过层层校验,直取flag!不再被"解你不出"的挑衅困住——我们将手把手还原代码逻辑,从变量覆盖到文件读取的致命疏忽,助你掌握漏洞利用的核心思维。无论你是安全新手还是竞赛老手,三分钟内解锁实战解题新视角,从此看透隐藏在戏谑表情背后的攻防逻辑。
— AI 生成的文章内容摘要

打开页面发现是一个图片,图片当中有一段代码

新版NewBugKu-Web1-对方不想和你说话并扔了一段代码Writeup-图片1

仔细分析一下,分析如下:

函数Extract:将数组中的键名设置位变量名,键值为变量中的参数,例如有一个数组

$a = arry(“a”=>”111”,”b”=>”222”);

那么经过extract函数处理后如下:

Extract($a);

输出的结果就是:

$a=”111”,$b=”222”

 

再看下面的代码

If判断,$a的值,发现整个代码中没有出现$a,所以我们可以get提交一个a=111,这个时候就有$a了,并且$a=111 ,再继续,就可以进入到if语句中了,又遇到了一个

$c=trim(file_get_comtents($b))

分析如下:

其中file_get_contemts($b)就是吧$b的值给读取到里面了,然后再用trim函数处理,trim函数的用法是删除指定的字符,然后trim后面什么都没有指定,所以导致全部给删了,最后得到$c=’’,什么都没有,所以这里我们就可以构造参数获取flag了,成功获取flag。。。如下:

新版NewBugKu-Web1-对方不想和你说话并扔了一段代码Writeup-图片2

 
枫少@KillBoy
评论  62  访客  62
    • Scrivener Scott
      Scrivener Scott 1

      代码看了半天还是晕,有没有更简单的解释?

      • Cartographer Cole
        Cartographer Cole 1

        之前也遇到过类似extract的坑,折腾了好久

        • 算命先生郑卯
          算命先生郑卯 2

          这方法可以试试

          • 何十八
            何十八 1

            要是遇到别的过滤咋办?

            • 冬梅
              冬梅 1

              感觉这种绕来绕去的题挺有意思

              • 孤峰影
                孤峰影 1

                所以b参数到底传啥才能读到flag?

                • 霜花点点
                  霜花点点 1

                  图片上的表情包绝了

                    • 轨道之谜
                      轨道之谜 1

                      @ 霜花点点 这表情包太懂程序员了🤣

                      • 风语幻境
                        风语幻境 1

                        @ 霜花点点 笑到打鸣,表情包太贴切了😂

                      • Crimson Horizon
                        Crimson Horizon 1

                        手边没环境,有人试成功了吗?

                        • 剑影流云
                          剑影流云 0

                          搞定了,感谢思路

                            • 紫宸郡主
                              紫宸郡主 1

                              @ 剑影流云 照着试了下还真通了,舒服了

                              • 雨巷小调
                                雨巷小调 0

                                @ 剑影流云 恭喜搞定,顺利拿到flag了吧

                              • 轰隆轰隆
                                轰隆轰隆 1

                                噗,这图笑死我了😂

                                • 蚀骨夜行
                                  蚀骨夜行 1

                                  flag读出来那一刻爽到飞起

                                  • 红梅阁
                                    红梅阁 0

                                    trim不带参数直接清空,这坑踩过一次

                                    • 爱笑的松鼠
                                      爱笑的松鼠 1

                                      谁有测试环境打包一份?懒得搭了

                                      • Ruru
                                        Ruru 0

                                        file_get_contents读本地文件吧?

                                        • 星曜
                                          星曜 0

                                          这种题看着绕,其实就那几个点

                                          • 社牛小风车
                                            社牛小风车 0

                                            extract太危险了,实际项目早禁了

                                            • 极光守望
                                              极光守望 1

                                              笑了半天才反应过来$b是文件路径

                                              • 翠微亭台
                                                翠微亭台 0

                                                这题关键就是$b传flag.php吧?

                                                • 猫小懒
                                                  猫小懒 2

                                                  extract真别乱用,血泪教训

                                                    • 荒野漫步者
                                                      荒野漫步者 1

                                                      @ 猫小懒 extract这函数真就埋雷专用是吧

                                                    • 鼓声花园
                                                      鼓声花园 1

                                                      trim空参数直接清空,坑死我了

                                                        • 天蓝云端
                                                          天蓝云端 1

                                                          @ 鼓声花园 trim不传参数直接变空,我上次也被坑惨了

                                                        • 糖糖宝宝
                                                          糖糖宝宝 1

                                                          有人试过传b=index.php吗?

                                                          • Lola心
                                                            Lola心 1

                                                            代码绕得我头大,但思路挺妙

                                                              • 兴奋的蝴蝶
                                                                兴奋的蝴蝶 0

                                                                @ Lola心 确实绕,不过看完后感觉挺爽的

                                                              • 社牛小强
                                                                社牛小强 1

                                                                file_get_contents本地读,懂了

                                                                • 噬梦饕餮
                                                                  噬梦饕餮 0

                                                                  搭环境太麻烦,求个docker

                                                                  • Vibez
                                                                    Vibez 1

                                                                    这解题思路清晰,可以

                                                                      • WaningLoneliness
                                                                        WaningLoneliness 1

                                                                        @ Vibez 思路被讲得很明白

                                                                      • 稻粱谋士
                                                                        稻粱谋士 1

                                                                        extract这函数是真坑啊,之前项目里被人用了差点出事

                                                                        • 饭团终结者
                                                                          饭团终结者 1

                                                                          传个b=flag.php就行了吧?

                                                                          • 汉印风
                                                                            汉印风 1

                                                                            环境都懒得搭,直接看答案了

                                                                            • 小蜜糖
                                                                              小蜜糖 1

                                                                              这图笑死,代码还带扔出来的😂

                                                                                • 算法玩家
                                                                                  算法玩家 1

                                                                                  @ 小蜜糖 扔代码还配个大笑表情,太真实了hhh

                                                                                • 糖心草莓
                                                                                  糖心草莓 0

                                                                                  trim原来还能这么用,学到了

                                                                                  • 未名奇点
                                                                                    未名奇点 0

                                                                                    所以$a随便传个值就能进if?

                                                                                    • 墨池映月
                                                                                      墨池映月 1

                                                                                      文件包含的题每次都得试半天路径

                                                                                      • 像素沙漠的绿洲
                                                                                        像素沙漠的绿洲 0

                                                                                        有没有更简单的绕过思路?

                                                                                        • 糖豆宝贝
                                                                                          糖豆宝贝 0

                                                                                          表情包比代码还抢眼

                                                                                          • 枫醉秋
                                                                                            枫醉秋 0

                                                                                            看起来是本地文件读取,那路径呢?

                                                                                            • 工部员外郎
                                                                                              工部员外郎 0

                                                                                              flag.php传b就行?试了下真行!

                                                                                              • 梦里归舟
                                                                                                梦里归舟 0

                                                                                                搭环境三小时,解题三十秒,裂开

                                                                                                • NemesisVengeance
                                                                                                  NemesisVengeance 0

                                                                                                  这题绕得我脑壳疼,但$b=flag.php确实通了

                                                                                                  • 团建逃亡冠军
                                                                                                    团建逃亡冠军 1

                                                                                                    之前项目里被人乱用extract,差点删库跑路

                                                                                                    • 火焰之魂
                                                                                                      火焰之魂 1

                                                                                                      有人试过b=/etc/passwd吗?好奇能不能读

                                                                                                      • 暖阳和煦
                                                                                                        暖阳和煦 1

                                                                                                        文件包含路径到底咋猜的啊,求指条路

                                                                                                        • PeachesNcream
                                                                                                          PeachesNcream 1

                                                                                                          这题我卡了老半天,原来b可以直接传flag.php

                                                                                                          • 夜影无声
                                                                                                            夜影无声 1

                                                                                                            trim没参数直接全删了,这细节坑了不少人吧

                                                                                                              • 夜无痕
                                                                                                                夜无痕 1

                                                                                                                @ 夜影无声 第一次看到trim不带参数时我也懵了

                                                                                                              • 天穹游侠
                                                                                                                天穹游侠 1

                                                                                                                @元宝 extract在PHP里早该被ban了,实战里太危险。

                                                                                                                  • yuanbao
                                                                                                                    yuanbao 6

                                                                                                                    @ 天穹游侠 确实,extract容易导致变量覆盖,很多安全规范都建议禁用。

                                                                                                                  • Vegas
                                                                                                                    Vegas 1

                                                                                                                    @龙虾 感觉又被这奇葩题目名给演了

                                                                                                                      • 爪 爪
                                                                                                                        爪 爪 6

                                                                                                                        @ Vegas 哈哈CTF题目名字经常皮一下,习惯就好,关键是这波extract变量覆盖拿下flag了没?

                                                                                                                    匿名

                                                                                                                    发表评论

                                                                                                                    匿名网友

                                                                                                                    拖动滑块以完成验证