我想/正忙于完全重写我的整个网站。在这一点上,我正在研究我所谓的“成员和安全引擎”。我已经阅读了很多关于安全性和 SQL 注入的内容,而且非常复杂。附言。我的网站更像是一种爱好,而不是拥有约 250 多名会员的专业赚钱网站。
对于用户名和密码,我只允许使用字符 az、AZ 和 0-9。if(isset(post))
我在-function中检查这个:
if(ctype_alnum(mysql_real_escape_string(stripslashes($string))) == false) {
header to error-page; exit;}
else {continu with script}
对密码和用户名都进行了此检查。
当有人尝试使用未知用户名或使用错误密码的已知用户名登录时,该操作将记录(插入)在一个特殊的表中,包括 IP 地址。在尝试使用未知用户名登录 10 次或使用错误密码尝试登录 6 次后,IP 地址被禁止进入会员区域,并且在所有非会员页面上,表格和提交表格均未显示,并且无法使用,因为这个IP块。我什至在提交表单时将此 ip-check 作为一行...如果 ip 在表中,则标题(到错误页面);出口;。
我的问题:
- 将 IP 地址放在字符串中时是否必须进行安全检查?当尝试使用未知用户或错误密码登录时,
$xip = $_SERVER['REMOTE_ADDR'];
它会插入表中。$xip
- 这是一个(相当)安全的环境,可以防止黑客攻击和 SQL 注入吗?
- 如果不?我非常感谢帮助和建议(非常感谢在这里编写完整的解决方案,但是当您将我发送到解决方案的正确路径时,我会学到更多)
- 当我从
$_cookie
或检索此信息时,是否还必须运行“ctype_alnum”检查$_session
?
附言。我是荷兰人,所以几乎我所有的表名、列名、表单输入字段名等都有一个荷兰语单词。我仍在努力,但是当站点完成后,您将不会在我的站点上找到“密码”、“通行证”、“用户”、“用户 ID”或任何类似的词。