使用 PDO 序列化数据是否危险

2024-01-28

I have 8 input type text. name=favour_01

我做那8个input进入一个array and serialize it

i use PDO将其保存到数据库中。

比反序列化它的输出

$favour[]='apple'; $favour[]='banana';

$favours = serialize($favours);

prepare(...

$food->bindValue(':favours', $favours, PDO::PARAM_STR);

这安全吗?我读过序列化输入很容易受到攻击。

我没有为此使用任何课程,这是我读过的一篇文章https://www.owasp.org/index.php/PHP_Object_Injection https://www.owasp.org/index.php/PHP_Object_Injection


仅当序列化的数据包含敏感信息时,序列化数据才会存在安全风险。风险在于您序列化包含密码的数据,然后将序列化的表单存储在不安全的地方。

反序列化如果您尝试对从不受信任的来源获取的数据进行反序列化,则数据会存在安全风险。反序列化过程可以实例化对象,因此数据输入可能会执行您意想不到的操作。

从安全角度来看,序列化一个简单的值数组以将其绑定到 SQL 参数是可以的,但请记住,您将无法在数据库中有效地搜索该序列化数组中的特定值。基本上你的数据库变成了一个黑匣子:你可以将整个数组填充到其中,然后取出整个数组进行反序列化,但是你无法使用 SQL 轻松读取或写入数组的单个元素。

更好的做法是创建一个子表并在该表中每行存储一个元素。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 PDO 序列化数据是否危险 的相关文章

  • preg_match 所有以@开头的单词?

    我对正则表达式不太确定 所以我不得不问你 如何用 PHP 判断字符串中是否包含以 开头的单词 例如我有一个像 This is for codeworxx 这样的字符串 我很抱歉 但我没有任何起点 希望你能帮忙 谢谢 萨沙 好的 谢谢你的结果
  • 如何通过 PDO 使用密码哈希来使我的代码更安全? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我的代码实际上可以工作 但它一点也不安全 我不想使用 MD5 因为它不是那么安全 我一直在查找密码哈希 但我不确定如何将其合并到我的代
  • php 或 zend 中国际电话号码验证的正则表达式是什么?

    我有一个 zend 表单 其中有一个电话号码字段 并且必须检查验证器 我决定为此使用正则表达式 我搜索了谷歌 但我得到的结果不起作用 谁能给我提供正则表达式 这是我的代码 phone new Zend Form Element Text p
  • Godaddy 托管上的 CakePHP 控制台

    我一直在努力让我的 CakePHP 网站在 Godaddy 网格托管 帐户上运行 我的蛋糕应用程序设置是从帐户的子目录托管的 并且可以通过子域访问 我必须调整我的 htaccess 文件才能使其正常工作 现在我需要让 CakePHP 控制台
  • 如何销毁一个物体?

    据我所知 很少 有两种方法 var new object Then Method 1 Set to null var null Method 2 Unset unset var 还有其他更好的方法吗 我在这里吹毛求疵吗 您正在寻找unset
  • 从单个 javascript 函数向两个不同的 PHP 脚本发送两个 Ajax 请求

    是否可以同时向两个或多个 Php 脚本发送 Ajax 请求 我知道这可以串行实现 从 1 获取响应 然后从另一个获取响应 但我想知道是否可以同时实现 请协助我使用以下代码 function calShowUpload if http rea
  • ajax 会增加还是降低安全性?

    我正在创建一个网站 到目前为止它是纯 PHP 的 我在想 既然很少有人没有启用 JavaScript 我想知道为什么 也许我应该将我的网站创建为一个完全 PHP 的网站 而不使用任何 AJAX 难道是我想错了 可以肯定的是 如果我实施一些
  • Laravel 5.6 - 注册表无法正常工作并且不显示任何错误

    在我最近的一个项目中 定制登记表不管用 当我单击注册按钮时 它会重新加载注册表单 不会打印任何错误 并且不会将数据插入数据库中 这是注册表的外观 这里是移民文件代码 public function up Schema create user
  • 获取目录中最后修改的文件

    有没有办法只选择目录中的最后一个文件 扩展名jpg png gif 或者我是否必须解析整个目录并使用进行检查filemtime 是的 你必须通读它们 但由于目录访问已被缓存 因此您不必真正担心它 files array merge glob
  • .htaccess 在动态文件夹名称中加载索引

    我在 htaccess 加载动态文件夹名称中的索引时遇到问题 这是我的目录结构 root products gt this is constant folder name 而不是使用 GET 获取产品 url root products i
  • 我的 PHP 代码不会将记录插入到 mySQL 数据库表中[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我的网站上
  • 对更改运行 PHPUnit 测试

    每当磁盘上的文件发生更改时 我想运行 PHPUnit 测试 或至少其中的一个子集 与您可以使用 进行的操作非常相似 咕噜手表 https github com gruntjs grunt contrib watch blob master
  • 通过 SOAP 的 Gmt php 或 UTC C# 等效项

    is C DateTime UtcNow和 PHPdate c 是等价的 我怀疑 因为当我肥皂时 我得到了 C
  • 如果文件名减去扩展名,.htaccess url 重写行为将被覆盖。与网址相同

    我正在尝试整理 URL 并从中删除 php 扩展名等 我位于网站的基本文件夹中 因此没有可以优先处理的父 htaccess 文件或其他文件 这是我的 htaccess 代码 RewriteEngine On RewriteRule give
  • 如何在php中关闭夏令时

    我有这行代码将夏令时设置为 打开 将其设置为 关闭 的正确方法是什么 is daylight saving On rcmail config dst active bool date I date I 这是一个大写字母 i 当当前默认时区
  • 在 Windows 上查看 PHP 文件夹

    我正在编写一个简单的 PHP 脚本来监视文件夹及其子文件夹的任何更改 新文件 修改 删除 然后执行操作 我将使用 Windows 上的命令行运行此脚本php f script php 我一直在寻找一种在 Windows 上观看具有 PHP
  • 由于未定义符号,PECL solr 未加载:curl_easy_getinfo

    我正在尝试加载 PECL solr 扩展 我尝试使用 pecl install solr 并下载并使用 phpize configure make 来安装它 在这两种情况下 扩展安装时都没有错误 但在 apache 重新启动后 或在命令行上
  • PHPunit - 错误

    当 PHPunit 框架不希望发生的错误发生时 测试会停止 PHP 会抛出错误 但 PHPunit 不会记录这是一个错误 我如何确保 PHPunit 将其记录为错误 免责声明 我是 PHPUnit 的新手 我也试图弄清楚 发生错误时会发生什
  • 使用 PHP 创建图表并导出为 PDF

    我正在寻找有关使用 PHP 创建图表的建议 我还希望能够将这些图表导出到 PDF 文档 我目前正在使用谷歌图表 但我不喜欢将我的所有信息发送到谷歌的想法 我更喜欢自己的托管解决方案 我见过很多 Flash 解决方案 但我不知道有什么方法可以
  • 使用 md5 加密的 PHP 和 Mysql 查询出现问题

    我使用普通的 php mysql 插入查询并使用 md5 加密密码 这是插入查询 sql mysql query INSERT INTO user username password role approved values usernam

随机推荐

  • 应用程序可以强制设备睡眠吗?

    有没有办法通过应用程序让 iPhone 进入睡眠模式 如果是 我该怎么做 Thanks Tee 不在公共 API 中 可能有一些私有的东西 但您无法在应用程序商店中使用它 我所知道的处理睡眠模式的唯一方法是能够在应用程序运行时禁用睡眠 UI
  • 签名验证期间发生 Java 异常(解码签名字节时出错)

    我必须验证证书 我不是密码学专家 所以可能我做错了一些事情 或所有事情 当代码到达最后一步时 boolean b sig verify CertSign 它会引发异常 java security SignatureException 解码签
  • WPF - 有没有办法从 Canvas.Children 中删除特定的子项?

    我正在开发一个图表控件 在其中绘制 分析范围 它只是图表上的两条垂直线 当我想更改分析范围时 就会出现问题 因为我不知道如何仅删除两条分析范围线 所以我最终会清除图表并再次绘制实际数据值等等 有没有办法标记这些 UI 元素 即分析范围是网格
  • 无法在 Xcode 4.5 中为单个 ViewController 类加载两个笔尖 (.XIB) [重复]

    这个问题在这里已经有答案了 提前抱歉 我知道已经有很多类似的问题了 我尝试了所有解决方案 但没有任何一个对我有用 我正在使用 Xcode 4 5 2 并使用两个用于 iphone 5 ios 6 的 xib1 gt 根视图控制器5以及所有其
  • 将过滤器应用于数据集时,不在 gridview 中显示数据

    我的gridview在过滤时不显示数据 protected void Page Load object sender EventArgs e OleDbConnection conn new OleDbConnection Provider
  • 如何向 request.POST 添加信息?

    当用户使用表单创建内容时 所有信息都通过表单提交 该表单通过 AJAX 调用发送到以下视图 def goal create request if request method POST user request user request P
  • AS3 中的 Mixin 或 Trait 实现?

    我正在寻找有关如何实施的想法混合 特质 http debasishg blogspot com 2006 04 scala compose classes with mixins htmlAS3 中的样式系统 我希望能够将多个类组合成一个对
  • 如何显示 UIWebView 的滚动指示器

    我有一个UIWebView对于某些内容 我需要使其滚动指示器在短时间内可见 例如 UIScrollView flashScrollIndicators 知道如何做到这一点吗 从 iOS 5 0 开始 现在可以通过访问 scrollview
  • 在某些设备上,选项菜单不会出现在操作栏中

    我的操作栏中有一个选项菜单 但它不会出现在某些具有硬件菜单按钮的设备上 尽管有硬件按钮 我必须让它出现在操作栏中 我该怎么做 把这个放在你的onCreate method try ViewConfiguration config ViewC
  • Controller.User 在单元测试期间为 Null

    我的控制器操作方法中有以下代码 if User Identity IsAuthenticated 看起来效果很好 但是当我运行调用此操作的单元测试时 它失败了 因为User一片空白 谁能建议处理这个问题的最佳方法 我是否必须仅为单元测试而重
  • 在 IIS 8.0 上设置 asp.net 项目时出现 HTTP 错误 404.17

    我正在尝试在 Windows 8 计算机上的 IIS 8 0 上设置现有的 asp net 应用程序 但它给出了以下错误消息 HTTP Error 404 17 Not Found The requested content appears
  • 如何解组包含 DIFFGR 的 XML 代码

    JAXB 新手 我正在尝试解组XML 文档 我用的是xjc从 XSD 文件构建 DataSet 和 ObjectFactory 的命令
  • SwipeRefreshLayout 选项卡布局。 Webview无法向上滚动

    好的 我有一个选项卡视图 其中有一个网络视图 一个列表视图和一些其他页面 我希望能够执行 SwipeRefreshLayout 来刷新每个项目 我在每一页上都有这个工作 但是 当我在网络视图中向下滚动时 我无法向上滚动 它触发刷新并重建它
  • 删除最后一项时 UICollectionView 崩溃

    每当删除项目时 我都会尝试更新 uicollection 视图 所有单元格都删除得很好 但如果我删除该集合视图中的最后一个单元格 应用程序就会崩溃 并且我已将 self collectionview performBatchUpdates
  • 如何在 R 中最大化函数内的矩阵乘法

    我正在尝试最大化维度为 2x2 的矩阵参数的可能性 似然函数需要传入几个固定矩阵参数 似然也是其函数 数据 表示为 Y 和协方差矩阵 Sigma star 我将其作为下三角矩阵传递 对于计算是必要的 但我想保持这些固定并对此运行优化函数 在
  • 将指定的初始值设定项与未命名的嵌套数据类型一起使用

    我想知道是否可以在结构的未命名数据成员中使用指定的初始值设定项 哎呀 拗口 但是 是的 这是做我想做的事情的最干净的方法 如果我有 typedef struct MainStruct union uint8 t a8 16 uint64 t
  • 无法安装 Windows 版 GitHub

    当我尝试为 Windows 安装 github 时收到此错误 Application cannot be started Contact the application vendor 错误日志产生了这样的结果 PLATFORM VERSIO
  • 如何向控件添加工具提示?

    我想显示一个ToolTip当鼠标悬停在控件上时 如何在代码中以及设计器中创建工具提示 Here http msdn microsoft com en us library system windows forms tooltip aspx是
  • 如何自动将 String @RequestBody 解析为 json

    我有一个端点 它应该读取字符串值作为正文 RestController public class EndpointsController RequestMapping method RequestMethod PUT value api m
  • 使用 PDO 序列化数据是否危险

    I have 8 input type text name favour 01 我做那8个input进入一个array and serialize it i use PDO将其保存到数据库中 比反序列化它的输出 favour apple f