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__

获取函数所属空间下可使用的模块、方法及变量(用于访问全局变量)

...

相关推荐
IvanCodes30 分钟前
Python 数据处理(十三):JSON、CSV 与数据序列化
开发语言·python
Patrick在香港1 小时前
Claude 工具调用返回空:8 次失败里只有 1 次状态码不对,其余全带 200
爬虫·python·api·claude·香港
Web3&Basketball2 小时前
CRM Agent 后训练实战:3 倍更少错误
python·架构·大模型·agent·推理
AIFQuant3 小时前
ETF行情API接入踩坑记:从报错到跑通的七个问题
python·金融·区块链·etf·基金
GPU实战笔记4 小时前
云端 Python 开发:JupyterLab 还是 VS Code Remote-SSH?
python·vs code·jupyterlab·remote-ssh·远程开发
狗狗狗狗狗乐啊4 小时前
搭一个 AI 对话工作台 AChat:从 0 到可用的完整记录(一)
python·react.js·ai编程
白猫不黑5 小时前
Python实现简易Web弱口令爆破与防护方案
python·web安全·计算机·网络安全·黑客·信息安全·渗透测试
kuuailetianzi6 小时前
Python初识:定位、优势与发展历程
python
guoran_shini6 小时前
LLM微调-训练垂类问答模型
python·lora·sft
basketball6166 小时前
Python FastAPI 介绍以及常用方法
python·fastapi·vllm·ai infra