Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
更改sql权限以防止sql注入_Sql_Security_Prepared Statement_Sql Injection - Fatal编程技术网

更改sql权限以防止sql注入

更改sql权限以防止sql注入,sql,security,prepared-statement,sql-injection,Sql,Security,Prepared Statement,Sql Injection,我目前正在使用PHP和MYSQLi创建一个网站。我已经读了很多关于SQL注入的书。正如在StackExchange的其他问题上所回答的,有两种方法可以防止这种情况发生:使用预处理语句和转义字符串。因为我不能做预先准备好的语句(我试着根据教程和视频来做,但不能让它工作),所以我选择了另一种方法(转义字符串)。我的问题是,若我在我的SQL登录页面上更改了用户的权限,使其只能执行“选择”查询。它能给我提供额外的安全措施,防止用户删除、更改我的数据库等。因为我的网站:- 不要求任何用户注册 指向我的查询

我目前正在使用PHP和MYSQLi创建一个网站。我已经读了很多关于SQL注入的书。正如在StackExchange的其他问题上所回答的,有两种方法可以防止这种情况发生:使用预处理语句和转义字符串。因为我不能做预先准备好的语句(我试着根据教程和视频来做,但不能让它工作),所以我选择了另一种方法(转义字符串)。我的问题是,若我在我的SQL登录页面上更改了用户的权限,使其只能执行“选择”查询。它能给我提供额外的安全措施,防止用户删除、更改我的数据库等。因为我的网站:-

  • 不要求任何用户注册
  • 指向我的查询的唯一文本字段链接用于全文搜索功能(该功能仅对查询使用SELECT,我在该文本字段上有mysqli转义字符串)

  • 最好只授予应用程序的数据库登录权限。如果它不需要执行插入或更新,请不要授予它插入或更新权限


    但是,攻击者可能仍然能够利用SQL注入漏洞,使用select语句读取未经授权的数据,因此您仍然需要保护您的查询不受此影响。

    不幸的是,您完全弄错了(考虑到堆栈溢出中发布的大量垃圾,这也就不足为奇了)

    通过转义字符串来防止它

    它不能阻止注射

    它能给我额外的安全措施吗

    没有

    我不能做事先准备好的陈述


    那就考虑雇个程序员吧。想想你的顾客。毕竟,还有你的生意。比如说,如果你想成为一名公交车司机,你必须买一辆公交车——而不是用木头和粘土做的,这样会危及乘客的安全。这里的情况也完全一样——如果你需要一个网站来销售你的商品——买一个网站,而不是自己创建它

    我只有一个词。这是学习。我喜欢学习新事物。我想学习尽可能多的领域。不是我买不起一个网站,而是我更喜欢自己去做,这样我就可以从a-Z那里了解它。我不想吹牛,但目前我有两个商店,提供电气、空调、管道和网吧服务,经营了4年多,即使我一开始对这个领域一无所知。有趣的是,当我学习这些字段时,我所受到的对待与我现在尝试学习PHP和MYSQL时,你对待我的方式相同。请注意,你已经拒绝学习,确认你放弃了最基本和最重要的工具。然而,有些事情远比事先准备好的声明复杂得多。如果你真的想浪费时间,请三思。至于我的网吧软件。它是由我和我的老朋友用visualfoxpro制作的。我也从零开始学习FoxPro,但现在如果在新的更新中发现任何错误,我相信我自己可以解决它。^不。。即使到现在,我仍然试着做准备好的陈述。但是第一件事是先来的,所以我相信可以在以后做。你好,先生,这可能是很久以前的事了。但我终于完全理解了,能够生成prepared语句并将所有代码完全迁移到prepared语句类型。我的网站目前正在测试阶段,由我的朋友为任何错误。在未来的2-3个月内,我计划再制作2个网站,我有兴趣让您制作其中一个网站(旅行社或电子服务)。一旦我收集到足够的资料,我会通过电子邮件发送给你。