问题标签 [secure-coding]
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.
android - 如何在爬虫中安全地使用用户输入的凭据?
我正在创建一个应用程序,用户必须在其中为第三方网站提供他的凭据。我的应用程序使用此凭据登录该网站以通过 Jsoup 执行一些自动化任务。
我看到的问题是,当凭据从应用程序发送到网站时,它们可能会被拦截。有什么办法可以加密这些数据吗?
凭证不是用于特别关键的服务,它与金钱或类似的东西无关,但我仍然不想暴露密码。
javascript - 前端加密:整个会话期间在哪里存储密码?
目前我们正在开发一个小型应用程序,我们在基于 Rails 的后端中存储来自基于 JS 的图形编辑器(想想这个的增强版)的一堆 JSON 数据。我们希望允许用户存储加密的数据(AES、RSA 等),作为应用程序维护者,我们不可能解密我们数据库中的内容——当然,只要有一个强密码。没有用户帐户管理,什么都没有。人们只能通过秘密链接创建和编辑他们的图表,仅此而已。
在编辑或保存当前状态之前,将需要密码来加密/解密进出数据库的图形。现在,我们现在面临的概念性问题如下:
我们是否在整个会话期间存储密码?如果不是,用户每次刷新浏览器或想要将其图形的当前状态保存到数据库时都必须输入密码。不舒服...
如果 - 从软件工程的角度来看 - 这是适用的:这种信息一般存储在哪里?除了 cookie,我们还有哪些选择?
如果是这样 - 我们是否必须存储纯密码,或者有没有办法以某种方式加密密码,以便在 cookie 被盗的情况下,攻击者将面临更困难的游戏获取密码?
java - 如何保护我的 android 应用免受 RESKIN 侵害?
经过长时间的努力开发一个应用程序,有了一个创意,然后把它放在应用程序商店里。我对我的应用程序被复制和重新设计感到震惊。我的天啊。
那些人他们只是更改颜色主题和应用程序名称,然后他们将我们的应用程序放在他们的名称中。
Hense,是否有任何技术解决方案或方法来防止和保护我们的应用程序免受这种违规行为。
先感谢您。
c# - Checkmarx 堆检查漏洞 WebAPI
我已经构建了一个 ASP.NET WebAPI 2 应用程序,并且我的一个控制器有一个允许用户登录的方法,如下所示:
LoginDto 类:
在使用 Checkmarx 工具进行漏洞检查后,我收到了一份报告,上面写着:
/ /***/Controllers/AccountController.cs的第55行的方法索引 定义了UserPassword,它被指定包含用户密码。但是,虽然后来将明文密码分配给 UserPassword,但此变量永远不会从内存中清除。
我知道字符串是不可变的,并且会在内存中保留一段不确定的时间。
该工具(checkmarx)有一个建议说:
具体建议 - .NET:
- 与其将密码存储在不可变的字符串中,不如使用加密的内存对象,例如 SecureString 或 ProtectedData。
我发现其他建议也说我使用SecureString而不是字符串来操作/存储用户密码,但我认为这仅适用于 MVC 或 WPF 应用程序,我不知道如何在 ASP.NET WebAPI 上应用它2 上下文,我必须在其中公开与语言无关的服务。
任何人对我如何在 ASP.NET WebAPI 2 上实现这种安全级别(或者即使可能)有任何建议?
linux - 带有 C 的 Linux 沙箱,安全吗?
作为我的学士学位论文的一部分,我正在为 TCP 服务开发一个通用蜜罐。
我目前正在使用 Chroot、Linux 命名空间、安全计算和功能来提供某种沙盒。
我的问题是:我有什么需要注意的地方吗?由于我必须在沙箱中挂载/proc,我很好奇它是否会影响主机系统的整体安全性。
(顺便说一句,用户命名空间不是一个选项。)
/* 编辑 */
更清楚一点:我正在使用功能(7)和 libseccomp 来限制对 root 和非 root 用户的系统调用等功能的访问。
但是 /proc 例如 /proc/sys/* 中的文件呢?我应该像 firejail 那样将带有空绑定挂载的文件/目录列入黑名单吗?
node.js - 如何为 node.js / express.js 应用程序创建管理部分
坦率地说,我仍然(我觉得)在 Node/Express/MongoDB/Mongoose 中构建相对较新,所以如果这些问题听起来很愚蠢,请原谅。
因此,我正在尝试为我正在开发的一个小型 Web 应用程序创建一个自定义管理部分,当然,这将允许我添加少量内容、管理该内容等。我知道那里有很多框架,比如Keystone.js 甚至 Strapi 来制作快速 API,但我只想从头开始解决这个问题。所以随之而来的是几个问题......
1) Express.js 应用程序的管理文件结构。我应该将管理文件与我的实际应用程序完全分开吗?此外,如果我这样做,我如何将 2 个不同的服务器(1 个用于应用程序,1 个用于管理区域)保留在一个域下,并可以互换使用它们来访问一个或另一个?我目前构建的应用程序带有通往管理部分的路由,该部分仍然是我整个应用程序的一部分(我确定这可能不是一种好的构建方式)。
我目前的结构:
如果我将它移动到这样的结构:
我将如何保持路由正常工作,甚至更多,使用两个单独的 app.js 文件?
2)(真的不是一个问题,但我想我会列出它)我想尝试将这一切都放在一个域中。我不认为这个应用程序是一个庞然大物,而且我个人也很想在未来的应用程序中使用这个迷你 CMS。我想让我看到的 WordPress 的开源 CMS 为他们的系统所做的非常相似(尽管我可能错了,再次原谅我的新手)。他们只有同一个域的管理部分。
总而言之,我将如何从头开始成功地为小型 CMS 创建管理部分。再说一次,我知道已经有一些选择,但我有一个很大的想法,我很想实施,没有比直接跳进去更好的学习方法了。感谢您听到我的意见,以及更多,忍受愚蠢的问题!
java - 跨站点历史操作(Checkmarx)
有谁知道如何修复 Checkmarx 漏洞——基于 Java 的应用程序的跨站点历史操作?这是 Checkmarx scan 提供的描述——“该方法可能会泄漏服务器端条件值,从而使用户能够从另一个网站进行跟踪。这可能构成侵犯隐私。”
以下是相关代码:
谷歌搜索后,我发现了一些 Checkmarx 文档,建议在重定向 url 中添加一个随机数。这是文档的链接:https ://www.checkmarx.com/wp-content/uploads/2012/07/XSHM-Cross-site-history-manipulation.pdf
例如:
我尝试了这种方法,但 Checkmarx 扫描仍然显示相同的漏洞。不知道为什么。
web-applications - 为了安全起见,asp.net 中文本框的 HTML 编码
我有 2 个字段一个标签和一个文本框。
Q1。在将数据保存到数据库或在 aspx 页面中显示时应该进行 HTML 编码吗?
Q2。HTML 编码的标签文本在浏览器中正确显示,如 asd < pqr 但在文本框中显示 < 符号的 ascii 值。
由于 asp.net 中的文本框已经默认编码,我们应该在页面上显示之前对其进行解码吗?
Q3.如果文本框值在显示时被解码,那么安全影响是什么?
Q4。如果我在 edittemplateitem.how 中有两种方式绑定的文本框来在显示时解码它的值。
ajax - 如何安全地将敏感信息从客户端(浏览器)传递到服务?
用户在 HTML 文本字段中输入敏感信息,并且需要将此信息传递给第三方服务(通过 https,可能的 ajax 调用)以进行标记化。确保在客户端安全处理此信息(在客户端不留下任何此敏感信息的任何痕迹)的最佳实践是什么?
ios - 尝试覆盖支持安全编码但不编译
我正在将旧代码转换为使用 SecureCoding 的 Swift 4。Apple 文档说这是一项要求,但是我的代码无法编译。我尝试更改 static、func、var 和 class 之间的声明,但是这些都不能转换为 Swift 4。
这是我尝试进行覆盖的代码:
显示错误,表示方法没有覆盖其超类中的任何方法。 参考文件
这是包含解决方案的完整更新代码: