当前位置: 首页 > news >正文

网站开发课程知识点总结图片自动生成器

网站开发课程知识点总结,图片自动生成器,国开行网站毕业申请怎么做,网站模板案例1 、什么是反序列化操作? - 类型转换 - PHP & JavaEE & Python (见图) 序列化:对象转换为数组或字符串等格式 反序列化:将数组或字符串等格式转换成对象 serialize() // 将对象转换成一个字符串 unseri…
1 、什么是反序列化操作? - 类型转换
- PHP & JavaEE & Python (见图)
序列化:对象转换为数组或字符串等格式
反序列化:将数组或字符串等格式转换成对象
serialize() // 将对象转换成一个字符串
unserialize() // 将字符串还原成一个对象
2 、常见 PHP 魔术方法? - 对象逻辑(见图)
__construct(): // 当对象 new 的时候会自动调用
__destruct() // 当对象被销毁时会被自动调用
__sleep(): //serialize() 执行时被自动调用
__wakeup(): //unserialize() 时会被自动调用
__invoke(): // 当尝试以调用函数的方法调用一个对象时会被自动调用
__toString(): // 把类当作字符串使用时触发
__call(): // 调用某个方法 , 若方法存在 , 则调用 ; 若不存在 , 则会去调用 __call
数。
__callStatic(): // 在静态上下文中调用不可访问的方法时触发
__get(): // 读取对象属性时 , 若存在 , 则返回属性值 ; 若不存在,则会调用 __get 函数
__set(): // 设置对象的属性时 , 若属性存在 , 则赋值 ; 若不存在 , 则调用 __set 函数。
__isset(): // 在不可访问的属性上调用 isset() empty() 触发
__unset(): // 在不可访问的属性上使用 unset() 时触发
__set_state() ,调用 var_export() 导出类时,此静态方法会被调用
__clone() ,当对象复制完成时调用
__autoload() ,尝试加载未定义的类
__debugInfo() ,打印所需调试信息
3 、为什么会出现安全漏洞?
原理:未对用户输入的序列化字符串进行检测,导致攻击者可以控制反序列化过程,从而
导致代码执行, SQL 注入,目录遍历等不可控后果。在反序列化的过程中自动触发了某些
魔术方法。当进行反序列化的时候就有可能会触发对象中的一些魔术方法。
<?php
class B{
public $cmd='ipconfig';
public function __destruct(){
system($this->cmd);
}
}
http://www.dtcms.com/a/585234.html

相关文章:

  • 【STL——常用遍历与查找算法】
  • 牛客网华为在线编程题
  • 29网站建设全部400网站总机 阿里云
  • 第四章 依赖项属性
  • wpf 结合 HALCON 编程 学习知识点列表有哪些?如何学习?
  • 学习C#调用OpenXml操作word文档的基本用法(5:Style类分析-3)
  • 系统运维Day03_FTP与磁盘挂载
  • 嘉兴网站备案去哪里优化网站是什么意思
  • SQL笔试题(2)
  • MATLAB/Simulink三机九节点
  • JVM 内存结构与 GC 调优全景图
  • 4.3.5【2024统考真题】
  • 如何进行MSSQL提权?sp_oacreate、sp_oamethod和沙盒提权以及xp_regwrighte提权
  • AI大模型开发架构设计(23)——LangChain技术架构和关键技术深度剖析
  • JavaScript 中的 void 关键字详解
  • 智能演示时代:8款免费AI PPT生成工具全面评测
  • 实验室建设网站网站开发公司经营范围
  • 怎样做能直接上传微信的视频网站钢结构招聘网最新招聘信息
  • 什么是缓存
  • 电力设备多模态数据融合与自适应阈值在线状态评估
  • 顺序表vector--------练习题8题解
  • 百度C++实习生面试题深度解析
  • rnn lstm transformer mamba
  • 卷积神经网络(CNN)全面解析
  • 50_AI智能体运维部署之集成LangSmith实现全链路追踪:AI系统的可观测性实践
  • Java 9 + 模块化系统实战:从 Jar 地狱到模块解耦的架构升级​
  • 及时通讯桌面端应用基vue+GO
  • 三个常听到的消息/中间件MQTT RabbitMQ Kafka
  • QML学习笔记(五十四)QML与C++交互:数据转换——QVariantList与QVariantMap
  • Linux的基础IO流