问题标签 [client-side-attacks]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1435 浏览

javascript - 如何在脚本标签内使用 html 编码的 xss 攻击向量触发 xss?

我正在阅读 OWASP XSS 预防备忘单,并陷入了一些理解:

为什么我不能只用 HTML 实体编码不受信任的数据

HTML 实体编码适用于您放入 HTML 文档正文(例如<div>标签内)的不受信任的数据。它甚至适用于进入属性的不受信任的数据,特别是如果您热衷于在属性周围使用引号。<script>但是,如果您将不受信任的数据放在任何地方的标签中,或者像 onmouseover 这样的事件处理程序属性中,或者在 CSS 中,或者在 URL 中,则 HTML 实体编码不起作用。因此,即使您在任何地方都使用 HTML 实体编码方法,您仍然很可能容易受到 XSS 的攻击。您必须对要放入不受信任数据的 HTML 文档部分使用编码语法。这就是以下规则的全部内容。

我无法创建有效的 POC,html 编码的 xss 攻击向量如何在<script>标签内触发 xss

帮助我理解这一点。

0 投票
1 回答
31 浏览

python - socket连接后可以对受害者的机器进行哪些攻击?

我有一个任务,我需要在与 python 的套接字连接后实现三个攻击。我已经进行了套接字连接并实施了勒索软件和键盘记录器。我需要更多的攻击实现。除了这两个之外,任何人都可以建议我一种可以在客户端/受害者方面执行的攻击吗?

0 投票
2 回答
117 浏览

javascript - 如何完全防止 Web 表单输入文本项更改

我有这个简单的网络表单

此表单将用于添加和更新。

插入时我没有问题,但更新时我不想让用户更新或更改其项目的值id= "id_cmp_no"

我使用 javascript 代码将其设置为readonly propertytrue但这不是 100% 的解决方案,因为用户可以使用浏览器检查工具并查看页面源并在提交表单之前更改它的值,因此readonly property没有用。

我可以覆盖它的onchange事件以防止它的值发生变化,即使page source使用检查工具改变了值。

任何人都可以帮助,提前谢谢你

0 投票
2 回答
362 浏览

javascript - 如何防止黑客在电子商务中修改产品价格

我确信这是一个非常普遍的问题,但我在网上找不到任何关于它的信息。我有一个不同产品价格的电子商务网站。然后我使用 Javascript 计算总价格,但我应该将每个定价值存储在哪里以避免被黑客入侵?

我遵循的一个教程建议通过自定义属性将价格添加到 HTML 文件中的每个项目,例如 data-price="100"。

这很方便而且有效,但我也听说黑客基本上可以篡改 HTML 表单中的任何值,那么如何防止他们将价格更改为 1 而不是 100?在 Javascript 文档中定义值会更安全吗?或者别的地方?最佳做法是什么?

太感谢了!

0 投票
5 回答
490 浏览

cron - 有人知道吗:repo1.criticalnumeric.tech

我发现在公司服务器中有一个使用以下代码运行的 crontab:

如果您访问该 URL,它会显示:

“这是存储库 linux 的官方页面”

这很奇怪,我们的工程师都没有在 crontab 上添加这个,这让我觉得这可能是一次攻击。

有什么想法吗?

0 投票
2 回答
424 浏览

rest - 保护对 API 端点的客户端调用的最佳实践

我正在构建一个应用程序,我需要在客户端前端应用程序中向外部 API 发出请求,而我对如何最大限度地保证这一点感到有点茫然,以便只能转发有效的请求到这个外部 API,而不是任何人想要的。

作为安全性的第一步,我已经做到了,客户端应用程序不能直接与外部 API 对话,而是必须访问我们自己的服务器端 API,然后将请求代理到外部 API,以便访问外部 API 的凭据至少单独存储在服务器端而不是客户端。

然而,这导致了同样的基本问题——我如何保护我用来验证从客户端应用程序向我们自己的服务器端应用程序发出的请求的任何凭证/身份验证系统?

问题是这是一个在线餐厅订购服务,因此我们不希望用户在能够下订单之前使用用户名和密码进行身份验证,因此触发外部 API 调用的下订单不是t 封闭在任何用户名/密码方案之后,并且必须可供前端应用程序的所有消费者使用。

这里的最佳安全实践是什么?我已启用 CORS 白名单作为最低限度的做法,这样理论上我们的服务器端 API 端点只允许来自我们自己域的请求,但如果有人选择欺骗原始 URL,CORS 会被轻易绕过。

还有哪些其他选择?我确定我一定是遗漏了一些琐碎的事情,因为这对于已建立的最佳实践来说一定是一个非常普遍的问题,但我只是不知何故找不到它。

谢谢!

0 投票
3 回答
126 浏览

http - 为什么我们应该在 API 的 HTTP 响应中包含 CSP 标头?

OWASP建议在 API 响应中使用Content-Security-Policy: frame-ancestors 'none',以避免拖放式点击劫持攻击。

但是,CSP 规范似乎表明,在加载 HTML 页面后,相同上下文中的任何其他 CSP 规则都将被丢弃而无效。这在我关于 CSP 工作原理的心智模型中是有道理的,但如果 OWASP 推荐它,那么我肯定会遗漏一些东西。

在 HTML 页面已经加载并且“主”CSP 已经评估之后,谁能解释 XHR 请求中的 CSP 标头如何提高安全性?这在浏览器中是如何工作的?

0 投票
0 回答
44 浏览

reactjs - 捆绑的 localhost javascript 正试图由用户注入我的网站。(由 Sentry 报告的错误和性能跟踪工具)

我可以在 Sentry 报告中看到,连同我的供应商~main-6319dfea084cb55e85bf.js、main-6319dfea084cb55e85bf.js和其他 resource.scripts 和 resource.css 文件,我可以看到https://localhost:49506/7pp3ab609c5236b3bf34c2b621ac79ba.js脚本是被注入并且还触发了GET https://localhost:49506/storage/userIdGET https://localhost:49506/storage/pendingRequests api 调用。

攻击者从 EDGE 浏览器尝试了这个。该应用程序是使用 typescript 和 Reactjs 开发的。

我的问题是,

  1. 它是什么类型的攻击?
  2. 我该如何处理?

另外,如果有任何其他信息,请在此处发布。

提前致谢。

0 投票
0 回答
17 浏览

client - 我的页面上的 XSS 攻击用于测试和解决问题

我想在本地测试 XSS,所以我编写了一个 HTML 页面并通过

../index.html?q=alert(123)

或者

../index.html?q=%3Cscript%3Ealert(123)%3C/script%3E

但输出中没有显示警报,我的工作哪里出错了?