我有一组 REST 服务,它们使用类似于 OWASP 的同步器令牌模式 ( https://www.owasp.org/index.php/Cross-Site_Request_Forgery_(CSRF)_Prevention_Cheat_Sheet ) 的方式受 CSRF 保护。* REST 使用 Java 和 JAX-RS 实现 * 安全性使用 Spring Security CSRF 令牌实现 * HTTP PUT、POST 和 DELETE 受到保护
在我的 Web 应用程序启动时,我在 HTML 页面中写入正确的 CSRF 令牌,然后应用程序将令牌作为“X-CSRF-HEADER”包含在每个请求的请求标头中。
我还有直接访问 URL 的客户端(例如,curl 命令行和其他)。
备用客户端需要以某种方式获取 CSRF 令牌(当然是在经过身份验证之后)。
将令牌作为 GET 请求的 HTTP 响应标头包含在内是否安全?如果是这样,那么我可以将其包含在响应标头中,并且客户端可以将其读出并将其包含在将来的请求标头中。
这样安全吗?
我正在开发一个网络应用程序。现在从安全角度来看,密码从客户端发送到服务器时需要加盐散列。 现在我的问题是,如果我随机生成一个盐,将它附加到密码并散列组合,如何验证这个密码。由于生成的盐是随机的,盐+密码组合的哈希值每次都会不同。 如果我将生成的盐和用户凭据一起发送到服务器,这将暴露盐。暴露的盐会造成类似的麻烦,因为试图破解密码的人可以在暴露的盐上附加不同的密码以获取哈希值并进行匹配。我已经检查了许多网站和有关堆栈溢出的问题,但没有完全符合我的需要。
有一些工具可以读取浏览器的内存并窃取输入的密码。因此,客户端也需要加盐哈希。
预防存储型 XSS的最佳方法是什么?
第一个解决方案的问题是数据可能被修改(字符编码、部分或全部删除......)。这可能会改变应用程序的行为,尤其是对于显示问题。
我有一些旧的 ColdFusion 代码。它最初是为 CF9 编写的,但现在在 CF 2016 上运行。
应用程序.cfc
local.esapi = createObject("java", "org.owasp.esapi.ESAPI");
application.esapiEncoder = local.esapi.encoder()
Run Code Online (Sandbox Code Playgroud)
很久以后
常规页面
form.Reason = application.esapiEncoder.encodeForHtml(form.Reason);
Run Code Online (Sandbox Code Playgroud)
我正在考虑用
form.Reason = encodeForHTML(form.Reason);
Run Code Online (Sandbox Code Playgroud)
这些功能一样吗?
我开始从 NVD XML feed 转向 JSON feed(因为从 2019 年 10 月起将不再支持 XML)。现在我很难理解标签及其使用目的。
例如:
“配置”中的“操作员”标签有什么用途?
“affects”标签列出了与该 CVE-ID 关联的所有易受攻击的库,那么“configuration”标签有什么用呢?因为它们内部指定的信息似乎只是影响标签的重复,除了 cpeId 之外,cpeId 也可以在影响标签内指定。
我尝试在 NVD 网站上搜索任何此类相关文档,但没有找到。JSON 模式没有提及细节或目的(如预期)。
请指出是否创建了任何相关文档。
使用 OWASP ZAP 2.8.0 进行自动扫描后,我有带有 javascript 文件(moxiejs 库)的“应用程序错误披露”。网站基于 wordpress 更新到最新版本。如何修复这个漏洞?还是误报?
Medium (Medium) Application Error Disclosure
Description
This page contains an error/warning message that may disclose sensitive information like the location of the file that produced the unhandled exception. This information can be used to launch further attacks against the web application. The alert could be a false positive if the error message is found inside a documentation page.
URL http://x.x.x.x/wordpress/wp-includes/js/plupload/moxie.min.js?ver=1.3.5
Method GET
Evidence Internal Server Error
Instances 1
Solution
Review …Run Code Online (Sandbox Code Playgroud) 我正在尝试将依赖项检查添加到我的 JenkinsFile 中,但没有成功。
插件安装和配置完成。
全局工具配置
名称:Vulnerability5
自动安装(选中)
版本:dependency-check 5.2.4
pipeline {
agent any
tools {
nodejs "node8"
dependency-check "vulnerability5"
}
stages {
stage('Install Deps') {
steps {
//Install dependecies
sh 'yarn install'
}
}
stage('Dependency Check') {
steps {
// Run OWASP Dependency Check
dependencyCheck additionalArguments: '-f "HTML, XML,CSV" -s .'
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
在工具中添加依赖项检查会破坏管道文件。知道我缺少什么吗?
dependencies owasp jenkins jenkins-pipeline owasp-dependency-check
我知道一种方法是使用“https://dzone.com/articles/automate-zap-security-tests-with-selenium-webdrive-1”
但是是否有直接命令可以通过 OWASP ZAP 扫描我们的 selenium 应用程序执行情况?
我认为这应该是一个完整的项目。很少有网站可以公开访问或无需登录。
我已经运行 OWASP ZAP 工具来识别使用Angular 10和spring-boot开发的应用程序中的漏洞问题。我发现以下 URL缺少反点击劫持标头漏洞。
我需要知道如何通过停止此调用或任何其他方法来解决此问题。
有许多安全原因导致人们想要删除没有响应的HTTP连接(例如,OWASP的SSL最佳实践).如果可以在服务器级别检测到这些,那么这没什么大不了的.但是,如果您只能在应用程序级别检测到这种情况呢?
Rails,或者更普遍的Rack,是否有任何标准方法告诉服务器在没有响应的情况下断开连接?如果没有,是否有一些标准的标题可以在常见的Web服务器中实现(我在想Nginx或Apache)?即使没有标准头,是否有合理的方法来配置该行为?这是傻瓜的差事吗?
owasp ×10
security ×5
zap ×2
angular ×1
coldfusion ×1
csrf ×1
dependencies ×1
esapi ×1
google-api ×1
java ×1
javascript ×1
jenkins ×1
nginx ×1
rack ×1
rest ×1
saltedhash ×1
sha256 ×1
shell ×1
typescript ×1
xss ×1
zapier-cli ×1