一时兴起,我最近决定将我创建的第一个合适的网站放到我用于开发的本地 Web 服务器上。我认为这将是一个很好的环境来注入一些 SQL,因为我知道存在缺陷,并且该站点仅用于我自己的个人开发。
无论如何,要直截了当地说,经过几次尝试后,我能得到的最远的结果就是让页面返回一个错误的语句。我试图进入我设置的特定测试帐户,(如果结果返回多个帐户,则会引发错误,所以我没想到选择 1=1 工作的每个用户名),但每次我得到一个就像我输入了一个正常的、不正确的密码一样。我查看了 PHP 代码,结果发现我在查询之前对密码进行了哈希处理,因此攻击在可能造成任何伤害之前就被哈希处理了。
作为一个整体的 web 安全新手,并且对 web 开发感兴趣,我想知道这种SQL 注入预防方法是否存在任何漏洞,因为我预计没有考虑过。澄清一下,这并不意味着“看,我发现了一些新东西”,因为在信息安全方面有比我自己更明亮的火花,我可能已经知道了这一点,但我想知道为什么这可能不适合作为安全机制。