php - 试图弄清楚如何 "hide"图像和源代码

标签 php jquery

我正在(慢慢地)学习如何使我的网站更加安全。我正在查看《D&D Beyond》,注意到一些我以前从未见过的东西,我想了解更多。

  1. 当您查看源代码时,部分源代码不会显示。

这很难解释。我试图在另一篇文章中解释它,但收到了大量尖刻的评论。我告诉你,我知道我看到了什么。我想知道这怎么可能以及如何复制它。

我通常使用 PHP/JQuery 编写,因此我主要想使用这些语言了解更多信息。

示例: 您可以使用角色生成器创建角色,然后查看角色表。角色统计数据的主要部分包含在一个非常大的父 div 中:“.character_sheet”

如果您手动将字符表保存到桌面,您可以看到此部分的 HTML。如果您在 Firefox 中检查此部分,您还可以看到数据。但是,如果您在浏览器中尝试按 CTRL+U,则不会显示此部分中的 HTML。如果您尝试curl/fopen/file_get_contents

,它也不会出现

此外,图像通过正常方式是不可见的。 例如:我知道如何禁用网站上的右键单击,但如果有人想要拍摄我的图像,他们所要做的就是打开我的源代码并查看图像网址并从那里保存它。

在 D&D Beyond 网站上,我可以调出 Firefox 的 Web 检查器,查看图像应该在的位置,查看 CSS,然后……什么也没有。没有指向图像的链接,而该链接在该位置。我不知道他们如何在没有 css/html 的情况下显示图像。我很想知道这是如何完成的。

如果有人有任何见解/猜测/等,并且可以为我指明正确的方向以了解更多信息,我将非常感激!

最佳答案

服务器端代码(例如 PHP)始终对访问者隐藏(除非您存在某种安全漏洞)。

访问者始终可以看到 HTML、JavaScript 和 CSS 等客户端代码。即使您无法立即在 DOM 中看到它,它也会隐藏在某个地方。

最有可能的情况是它隐藏在嵌入的 .js 中或.css文件,其看起来类似于以下内容:

<script src="scripts.js"></script>
<link rel="stylesheet" type="text/css" href="theme.css">

HTML 可以通过 JavaScript 输出到页面,这不会显示在 DOM 中(尽管它会显示为 PHP echo )。 HTML 也可以通过使用 <iframe> 来“隐藏” 标签和 HTML imports

JavaScript 有多种可能被掩盖/畸形的方式,因此很难追踪。您可能会在 DOM/.js 中发现一些奇怪的、“不可读”的代码文件,进而可以输出 HTML 本身。

关于php - 试图弄清楚如何 "hide"图像和源代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55389480/

相关文章:

php - 通过命令行运行时如何连接到数据库

jquery - 创建表单后添加 jquery 验证

javascript - 从网站 url 调用 jQuery 对话框

jquery - 在元素存在之前注册 DOM 事件

javascript - 如何告诉浏览器使用 JQuery 清空字段,然后调用该函数?

javascript - 在 JS (Wordpress) 中获取帖子数

javascript - 新手: uncertain where to go next with isotope filtering

php - MVC如何更方便?

php - 如何创建 csv 文件而不在文件中插入表格元素

javascript - 用jquery打印出data属性值