[英]how sanitize input codeigniter 3?
首先,我应该提醒您,我已经阅读了这篇文章和其他一些关于我的问题的文章,但大多数文章几乎都已经过时了,大约 3 年前。
现在我正在使用 CodeIgniter 3,我想知道什么是我的数据的最佳清理过滤器,我在插入数据库之前从用户那里检索它们。
这是我的网站注册的,我不知道注册的是哪种用户,我不能相信他们。 我想在将所有输入插入数据库之前对其进行消毒可能会很危险我不知道input
类足以对其进行消毒吗?
请告诉我 codeigniter 消毒功能!
我已经阅读了 codeigniter 文档中的安全类,但我想确定一下。
根据Docs , input
类执行以下操作:
所以,这就解决了SQL注入和XSS的问题。 对于大多数用途,这已经足够了。
要启用XSS
保护,请使用:
$val = $this->input->post('some_data', TRUE); // last param enables XSS protection.
此外,您可能想研究CSRF
保护。 但是,如果您正在执行 ajax 调用,启用它有点棘手。
在接受任何数据到您的应用程序之前,无论是来自表单提交的 POST 数据还是 URI 数据,您都必须遵循以下步骤:
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
一切都取决于开发人员。frameworks 只会提供一个结构来构建您的应用程序。如果您编写核心 php,您将更安全。
更多链接:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.