在接受任何数据到您的应用程序之前,无论是来自表单提交的 POST 数据、URI 数据,您都必须遵循以下步骤:
- 过滤数据。
- 验证数据以确保其符合正确的类型、长度、大小等(有时这一步可以代替第一步)
- 在将数据提交到数据库之前转义数据。CodeIgniter 提供了以下函数来协助这个过程:
XSS 过滤
此过滤器查找常用技术以将恶意 JavaScript 嵌入到您的数据中
要通过 XSS 过滤器过滤数据,请使用以下xss_clean()
方法:阅读更多
验证数据
CodeIgniter 有一个表单验证库,可帮助您验证、过滤和准备数据
$this->form_validation->set_rules('username', 'Username','trim|required|min_length[5]|max_length[12]');
修剪字段,在必要时检查长度并确保两个密码字段匹配。阅读更多
在插入数据库之前转义所有数据
永远不要在不转义的情况下将信息插入数据库。
有关更多信息,请参阅查询构建器类https://www.codeigniter.com/userguide3/database/query_builder.html
更多信息
Codeigniter 不会让您的应用程序安全看到此https://security.stackexchange.com/questions/97845/how-secure-is-codeigniter-3-x
一切都取决于开发人员。框架只会提供构建应用程序的结构。如果您编写核心 php,您将更加安全。
更多链接:
如何在 PHP 中使用 bcrypt 对密码进行哈希处理?
PDO 准备好的语句是否足以防止 SQL 注入?