python flask 魔术方法

魔术方法 作用
_init_ 对象的初始化方法
_class_ 返回对象所属的类
_module_ 返回类所在的模块
_mro_ 返回类的调用顺序,可以找到其父类(用于找父类)
_base_ 获取类的直接父类(用于找父类)
_bases_ 获取父类的元组,按它们出现的先后排序(用于找父类)
_dict_ 返回当前类的函数、属性、全局变量等
_subclasses_ 返回所有仍处于活动状态的引用的列表,列表按定义顺序排列(用于找子类)
_globals_ 获取函数所属空间下可使用的模块、方法及变量(用于访问全局变量)
_import_ 用于导入模块,经常用于导入os模块
_builtins_ 返回Python中的内置函数,如eval

在这里插入图片描述

拿BUGKU的题目来测试一下:
在这里插入图片描述

1. class

".__class__

转换URL编码后:{ {%27%27.class}}
在这里插入图片描述

  • ”:引号表示字符串的意思
  • 加上__class__,就是查看它的类

2. base

.__base__

在这里插入图片描述
就是查看它的上级类也就是父类

3. subclasses

由于object已经是最上面的父类了,所以我们查看它的子类

.__subclasses __() 

看到有很多我们寻找我们能执行命令的类比如:os._wrap_close,然后它是在返回结果的第118位,所以我们在.__subclasses __()加上[117] //列表从0开始计算个数
在这里插入图片描述

4. globals

.__globals__

获取函数所属空间下可使用的模块、方法及变量(用于访问全局变量)
在这里插入图片描述

相关推荐

  1. PHP魔术方法详解

    2024-02-07 11:16:01       43 阅读
  2. Python jupyter notebook 自定义魔术方法

    2024-02-07 11:16:01       50 阅读
  3. python私有函数和__XX__魔术方法

    2024-02-07 11:16:01       33 阅读
  4. PHP反序列化漏洞-魔术方法绕过

    2024-02-07 11:16:01       62 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-02-07 11:16:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-07 11:16:01       100 阅读
  3. 在Django里面运行非项目文件

    2024-02-07 11:16:01       82 阅读
  4. Python语言-面向对象

    2024-02-07 11:16:01       91 阅读

热门阅读

  1. Linux在云计算领域的重要作用

    2024-02-07 11:16:01       60 阅读
  2. 关于发布部署的简述实践和若干思考

    2024-02-07 11:16:01       56 阅读
  3. 为什么要用建造者模式

    2024-02-07 11:16:01       51 阅读
  4. curl调用带csv文件和json参数的http接口

    2024-02-07 11:16:01       59 阅读
  5. 十分钟学会WebSocket

    2024-02-07 11:16:01       51 阅读
  6. 【嵌入式开发】29

    2024-02-07 11:16:01       49 阅读
  7. 每天一个数据分析题(一百五十三)

    2024-02-07 11:16:01       55 阅读
  8. C语言学习(8)—— 输入输出

    2024-02-07 11:16:01       45 阅读
  9. 每日一题 力扣LCP30.魔塔游戏

    2024-02-07 11:16:01       46 阅读
  10. MongoDB数据迁移

    2024-02-07 11:16:01       53 阅读
  11. 大语言模型微调数据集(2)

    2024-02-07 11:16:01       56 阅读