sql-injection相关内容

如何在不使用准备好的语句的情况下清理 SQL

对于某些 sql 语句,我不能使用准备好的语句,例如: SELECT MAX(AGE) FROM ? 例如,当我想改变表格时.是否有清理 Java 中的 sql 的实用程序?ruby 中有一个. 解决方案 正确的,准备好的语句查询参数只能用于单个文字值.您不能将参数用于表名、列名、值列表或任何其他 SQL 语法. 因此,您必须将应用程序变量插入 SQL 字符串并适当地引用该字符串 ..
发布时间:2021-12-21 19:23:31 Java开发

PreparedStatement 是否避免了 SQL 注入?

我已阅读并尝试将易受攻击的 sql 查询注入到我的应用程序中.这还不够安全.我只是将 Statement Connection 用于数据库验证和其他插入操作. preparedStatements 安全吗?而且这个说法也会有问题吗? 解决方案 使用字符串连接从任意输入构建查询不会使 PreparedStatement 安全.看看这个例子: preparedStatement = " ..
发布时间:2021-12-21 18:57:27 Java开发

如果我使用存储过程,我是否对 SQL 注入免疫?

让我们谈谈 MySQL 数据库(如果重要的话). 解决方案 不,您不会完全安全.正如其他人提到的,参数化查询总是可行的方法——无论您如何访问数据库. 有点像都市传说,有了触发你就安全了.我认为人们陷入这种错觉的原因是因为大多数人认为您将使用代码中的参数化查询调用过程.但是,如果您不这样做,例如,如果您执行以下操作,那么您就大开眼界了: SqlCommand cmd = new Sq ..
发布时间:2021-12-20 17:05:57 其他开发

JSF 中的 CSRF、XSS 和 SQL 注入攻击预防

我有一个基于 JSF 构建的 Web 应用程序,其中 MySQL 作为数据库.我已经在我的应用程序中实现了防止 CSRF 的代码. 现在由于我的底层框架是 JSF,我想我不必处理 XSS 攻击,因为它已经由 UIComponent 处理了.我没有在任何视图页面中使用任何 JavaScript.即使我使用,我真的需要实现代码来防止 XSS 攻击吗? 对于数据库,我们在所有数据库交互中使用 ..
发布时间:2021-12-20 14:41:14 其他开发

使用参数使用 Like 运算符避免 SQL 查询中的 SQL 注入?

从我的前任那里接过一些代码,我发现了一个使用 Like 运算符的查询: SELECT * FROM 供应商WHERE supply_name like '%'+name+%'; 试图避免 SQL 注入问题并将其参数化,但我不太确定这将如何实现.有什么建议吗? 注意,我需要一个经典 ADO.NET 的解决方案 - 我真的没有能力将这段代码切换到 LINQ 之类的东西. 解决方案 试 ..
发布时间:2021-12-20 14:17:02 其他开发

使用 Magento 方法编写插入查询并注意 SQL 注入

我正在使用 Magento 的功能来插入 &更新查询.我的要求是在执行这些类型的查询时我想处理 SQL 注入.但我无法找到 Magento 如何做到这一点.我提供了一个开始样本.请给我一个完整的例子. getConnection("core_write");$sql = "INSERT INTO Mage_Example(姓名、电子邮件、公司、描述、状态、日期)值 ('$name', '$ema ..
发布时间:2021-12-19 08:44:14 其他开发

Delphi - 防止 SQL 注入

我需要保护应用程序免受 SQL 注入.应用程序正在连接到 Oracle,使用 ADO,并搜索用户名和密码进行身份验证. 从我到现在为止所读到的,最好的方法是使用参数,而不是将整个 SQL 分配为字符串.像这样: query.SQL.Text := 'select * from table_name where name=:Name and id=:ID';查询.准备;query.Param ..
发布时间:2021-12-14 00:01:37 数据库

如何在我的 ASP.NET 应用程序中避免 SQL 注入攻击?

我需要避免在我的 ASP.NET 应用程序中受到 SQL 注入的影响.我如何才能做到这一点? 解决方案 尽管您的问题很笼统,但有一些规则始终适用: 使用参数化查询(SqlCommand 和 SqlParameter)并将用户输入放入参数中. 不要根据未经检查的用户输入构建 SQL 字符串. 不要假设您可以构建一个可以检查用户输入的各种格式错误的清理例程.边缘情况很容易被遗忘.检查 ..
发布时间:2021-12-13 09:40:04 C#/.NET

mysql_real_escape_string() 做什么而addslashes() 没有?

为什么我们需要像 mysql_real_escape_string() 这样的特定于数据库的函数?addlashes() 不能做什么? 暂时忽略参数化查询的优越替代方案,专门使用 addlashes() 的 web 应用程序是否仍然容易受到 SQL 注入的攻击,如果是,怎么办? 解决方案 Addslashes 在处理多字节编码字符串时通常不够好. ..
发布时间:2021-12-13 09:30:11 PHP

使用 Microsoft Access 和 VB.NET 进行 SQL 注入预防

我是 ASP.NET 的初学者,所以我对如何防止 ASP.NET 中的 SQL 注入有一些疑问.我的编程语言是 VB.NET,而不是 C#,而且我使用 Microsoft Access 作为我的数据库. 我的问题是: 如何保护我的数据库免受 SQL 注入? 我一直在阅读其他论坛的帖子,他们说使用参数带有存储过程,参数带有动态 SQL.它们可以在 Microsoft Access 数据 ..
发布时间:2021-12-12 22:47:02 C#/.NET

在使用“database/sql"时如何防止 Go 中的 SQL 注入攻击?

构建我的第一个 web 应用程序并希望更好地理解 SQL 注入 (https://github.com/astaxie/build-web-application-with-golang/blob/master/en/eBook/09.4.md). 仅仅总是使用“database/sql"库并使用“?"构造查询,我可以获得多少针对 SQL 注入的保护?而不是连接字符串?在这种情况下,我还需要 ..
发布时间:2021-12-11 23:25:22 其他开发

如何清理(防止 SQL 注入)SQL Server 中的动态 SQL?

我们有大量依赖动态 SQL 的 SQL Server 存储过程. 存储过程的参数在动态 SQL 语句中使用. 我们需要在这些存储过程中使用标准验证函数来验证这些参数并防止 SQL 注入. 假设我们有这些限制: 我们不能重写程序以不使用动态 SQL 我们不能使用 sp_OACreate 等来使用正则表达式进行验证. 在将参数传递给存储过程之前,我们无法修改调用存储 ..

SQL 注入和 Codeigniter

关于 Codeigniter 及其输入处理能力的一些疑问.有些可能有点奇怪,但他们仍然怀疑. 如果我在 CodeIgniter 中使用 Active Record 类函数,我的输入是否被阻止SQL注入? 我在某处读到它确实如此,但我不明白它是如何做到的?或者为什么? xssclean 是否也以任何方式处理 SQL 注入? 解决方案 我的输入是否可以防止 SQL 注入? ..
发布时间:2021-12-10 13:39:51 其他开发

CodeIgniter 是否会自动防止 SQL 注入?

我刚刚继承了一个项目,因为最后一个开发人员离开了.该项目是基于 Code Igniter 构建的.我以前从未使用过 Code Igniter. 我快速浏览了代码,我看到控制器中的数据库调用如下: $dbResult = $this->db->query("SELECT * FROM users WHERE username = '".$_POST['user_name']."'"); 或 ..
发布时间:2021-12-10 13:14:01 其他开发

SQL注入攻击预防:我从哪里开始

我希望让我的网站免受 SQL 注入攻击.有没有人有任何好的链接来使站点免受 ASP.NET 站点(c#、Web 表单)中的这些类型的攻击? 编辑: 我应该指出我正在使用实体框架 解决方案 第一道也是最好的防线是不要使用动态 SQL. 始终使用参数化查询. 查看 关于 SQL 注入的 OWASP 页面. ..
发布时间:2021-12-08 20:46:49 C#/.NET

如何使用 JPA 和 Hibernate 防止 SQL 注入?

我正在使用休眠开发应用程序.当我尝试创建登录页面时,出现了 Sql 注入的问题.我有以下代码: @Component@Transactional(传播=传播.支持)公共类 LoginInfoDAOImpl 实现 LoginInfoDAO{@自动连线私人会话工厂会话工厂;@覆盖public LoginInfo getLoginInfo(String userName,String password ..
发布时间:2021-12-08 19:29:28 Java开发