代码点火器中的 XSS 过滤不会阻止 SQL 注入吗?


does XSS filtering in codeigniter doesn't prevent SQL injections?

我读了一些东西,在codeigniter中的XSS clean在SQL注入中不会阻止,它不应该在输入中使用,但它应该在输出中使用,这是真的...请任何人解释一下..那么如何防止在编码点火器中注入SQL为止。

谢谢你重播我..对不起英语不好..

首先,这两个主题都不是特定于 CodeIgniter 的。但是CodeIgniter有特定的方法来处理其中的一些问题。请阅读 https://ellislab.com/codeigniter/user-guide/general/security.html

请记住,CodeIgniter 不会将您从任何这些攻击中拯救出来,您必须了解这两种攻击的工作原理。

重要的是要了解这是两种不同的攻击,与任何攻击一样,它们可以耦合在一起。例如,使用 XSS/CSRF 通过 SQL 注入来执行 SQL。指向管理员等的特制链接。

XSS 是指攻击者可以注入要在客户端执行的代码。例如,在代码中放置<script>标记。如果您输出用户提供的数据而没有对其进行清理或验证,通常会发生这种情况。通常,这可能是他们的用户名,帖子标题,$ _GET数据等。除了脚本标签之外,还有更多方法可以在客户端执行脚本,因此请务必阅读该主题。为避免这种情况,请始终从任何来源转义用户输入的数据。您可以阅读更多相关信息 https://www.owasp.org/index.php/Cross-site_Scripting_%28XSS%29

SQL

注入是指攻击者可以出于恶意目的更改 SQL 查询。避免注入的最常见方法是确保在将每个输入传递给查询之前对其进行转义。使用预准备语句也有很大帮助。在CodeIgniter中,你经常使用"ActiveRecord"数据库的东西,它为你转义了输入。您可以阅读有关它的更多信息,包括示例 https://www.owasp.org/index.php/SQL_Injection

您还应该阅读 https://www.owasp.org/index.php/Top_10_2013-Top_10 并熟悉最常见的攻击。