问题标签 [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.

0 投票
2 回答
1382 浏览

authentication - 我想弄清楚 cookie/会话变量如何交互以验证用户会话

---我一直在尝试使用 cookie/会话 ID,但在理解这些概念时遇到了一些困难。我正在开发一个 Debian 发行版。使用 Burp 捕获/更改请求/响应。我所知道的如下。

一种。Cookie 存储在客户端计算机数据库的 /root/.mozilla/firefox/pya18ecc.default/cookies.sqlite 中。在 moz_cookies 表中。我正在使用 sqlite3 来访问数据库。

湾。会话变量存储在服务器上的 /var/lib/PHP5 中。

服务器上的 PHP 代码如下

  1. 当我发送请求(1)时,它看起来像这样。

请求(1)

  1. response(1) 是一个登录页面(基本 HTTP 身份验证)

回应(1)

----直到这里没有会话ID或cookies的交换。(如果我错了,提示我?)

  1. 我回复了用户名和密码,请求(2)是

请求(2)

---- 在转发上述请求时,我观察到在转发响应(2)之前,我已经在 /var/lib/PHP5 中收到了 Session id: cl5mi7tbhdnobpv8kkau7thjo6。那是因为服务器已经创建了相同的内容并准备在响应中转发它 (2)

  1. 响应(2)是

回应(2)

----现在在检查 SELECT * FROM moz_cookies 时,我没有看到任何保存在客户端 m/c 上的 cookie。那么他们在哪里得救呢?(这是我的第一个问题)

  1. 接下来,我从服务器中删除了会话变量“cl5mi7tbhdnobpv8kkau7thjo6”,并再次点击了客户端浏览器上的刷新按钮。请求(3)/响应(3)如下

请求(3)

回应(3)

-----现在服务器再次在 /var/lib/PHP5 下设置了相同的会话变量。服务器不应该识别会话变量吗?另外,如果由于保存的 Cookie 而发生这种情况,那么为什么我无法在 moz_cookies 表下看到它们.....请解释一下?(这是我的第二个问题)

0 投票
2 回答
375 浏览

java - JAVA - 可能的 SQL 注入

所以我有这段代码:

出于教育目的,即使我知道输入来自何处,SQL 语句是否也不会受到 SQL 注入的影响?

0 投票
0 回答
63 浏览

google-chrome - SSL 与 Chrome

我正在开发几个我只是安装证书的网站。Chrome(版本 42.0.2311.135 m)报告“此页面正在尝试从未经授权的来源加载脚本”的错误。我在 IE 或 FireFox 中没有收到任何错误。

我看到错误的页面

自从使用 SSL 以来,我似乎对(安全)嵌入式内容的结果好坏参半。

感谢您提供的任何指导。

戴夫

0 投票
1 回答
906 浏览

assembly - 出于安全原因学习组装

如果出于安全原因我想学习装配,我应该从哪里开始?我想如果我想避免错误,最好的办法就是知道你在做什么。如果我将有符号整数转换为无符号整数会发生什么。一旦我收到一条奇怪的错误消息,即变量未正确对齐。当时我不知道对齐是什么。

0 投票
2 回答
2017 浏览

java - 使用 java.io.File.createTempFile 时出现 Veracode 不安全临时文件错误

我需要创建一个临时文件并将一些数据存储到其中。为此,我编写了以下代码:

它确实工作得很好,但是当我将此代码提交给Veracode 时,我收到“不安全的临时文件(CWE ID 377)”错误。我认为使用SecureRandom会使攻击者无法预测临时文件名。

在不让 Veracode 不高兴的情况下生成临时文件的正确方法是什么?

0 投票
2 回答
416 浏览

java - Appscan 源码版 - SQL 注入

我正在使用 Appscan 源代码版本进行 Java 安全编码。它在我的应用程序中报告 SQL 注入。问题是我们在代码中动态生成查询,所以我不能使用准备好的语句。相反,我必须使用 e Esapi.encoder().encodeForSql(new OracleCodec(), query)。AppScan 不认为这可以缓解 SQL 注入问题。

此代码另外不适用于ESAPI.encoder()

我该如何解决这个问题?

0 投票
1 回答
542 浏览

asp.net - 在 ASP.NET 中向开发人员隐藏 ConnectionString

我的老板给了我一个任务。他希望办公室的 ASP.NET 和 C# 开发人员应该远离实时数据库,为此,我必须制作一个 dll,每个 ASP.NET 项目都将引用它,并且 dll 将 SqlConnection 对象提供给项目,但是开发人员不应该通过调试器或任何其他方式读取连接字符串,并且数据访问的所有其他属性应该对用户隐藏,开发人员将在测试环境中工作,但在部署到 live 后,它们将被我的 dll 引用,这将给他们带有隐藏连接字符串的连接对象。

我怎样才能完成这项任务?

0 投票
6 回答
10119 浏览

python - Python 的安全编码指南

查看 CERT 安全标准(例如:https ://www.securecoding.cert.org ),有一些特定的标准,有很好的和坏的代码的例子,对于 C、C++、Java,甚至 Perl,但不是Python。是否有任何 Python 特定的标准作为指南,最好有可用的示例?

http://www.pythonsecurity.org/似乎关注 Python 本身的安全问题,以及构建替代 Python 二进制文件来解决这些问题。一个崇高但最近不活跃的事业。我正在寻找可以指导开发人员不做什么和做什么的东西。

0 投票
2 回答
10338 浏览

java - 过滤Java(或Scala)中的向上路径遍历

是否有任何标准库方法可以过滤掉包含特殊遍历序列的路径,例如../向上目录遍历的所有其他复杂形式,以保护文件路径 API 输入不向上遍历给定的“根”路径?

我有一个包含根文件夹值成员的类,以及一个接受递归删除路径的成员函数。我的目标是使这个 API 安全,过滤掉提供给它的任何输入路径——这将转换为根文件夹值以上的路径。目的是该类将被广泛用于删除根路径下的文件,但它永远不会触及根路径之上的任何内容。

这类似于更广泛的路径遍历攻击

过于严格的方法(即可能导致误报)可能适用于我的特定用例,如果这可以简化事情,而且我当前的需求是文件系统路径而不是 Web 路径(尽管,等效的 Web 模块清酒理论上可能在这里工作)。

0 投票
1 回答
661 浏览

python - Python 字典和使用 pymysql 的参数化 MySQL(安全编码)

我对在 python 中进行数据库驱动的编码非常陌生.. 和 python 也是如此。我正在尝试编写一些代码来获取字典输出,对其进行参数化(以避免将 SQL 注入作为良好做法)并将输出放入 mysql 数据库中的单独列中。代码执行和输出告诉我我的参数化等显然做错了,这主要是我需要帮助的地方。

字典输出如下:

代码如下:

数据库结构如下:

将 try/except 排除在外会显示以下回溯: