首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >了解PHP和MySQL安全的基础知识

了解PHP和MySQL安全的基础知识
EN

Stack Overflow用户
提问于 2014-07-15 22:58:43
回答 1查看 339关注 0票数 0

我一直避免学习PHP和MySQL,因为我在互联网上读到的关于PHP不是一种安全语言的内容,以及数据库的安全风险(SQL等)。

我想要了解的主要问题是,PHP/MySQL代码的糟糕通常会造成何种类型的破坏。换句话说,在编写糟糕的代码、数据库中的信息或整个服务器时,我们要冒什么风险?

我知道这可能是一个复杂的话题,但我只想简单地解释一下,当数据库或PHP脚本被破坏时,什么信息通常会受到影响。

  1. 当数据库被破坏时,这是否意味着整个服务器可能面临风险,或者仅仅是数据库及其内容?

  1. 当PHP脚本被破坏时,这是否意味着整个服务器可能面临风险,或者仅仅是脚本和任何与内容相关的内容?

  1. 在创建数据库时,什么是最重要的安全措施,即数据库的连接?

对于这些基本的问题,我很抱歉,但在我继续前进之前,我需要理解这一点。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-15 23:13:23

关于SQL注入..。当数据直接连接到命令中时,有可能将数据混淆为命令。这在任何情况下都是正确的,但我们在web应用程序上的SQL注入攻击中看到了很多这种情况。例如:

代码语言:javascript
复制
$evil_user_input = '0; DELETE FROM someTable WHERE 1=1';
mysql_query('SELECT * FROM someOtherTable WHERE fieldA = ' . $evil_user_input);

实际上,您一次只能运行一个查询,因此您必须非常狡猾,但这里的要点是,如果不转义以便在SQL中使用,数据应该是什么可能是不明确的。这超出了安全范围。假设您有一个用户键入引号的字段。现在您已经破坏了SQL,代码崩溃了。

1-当数据库被破坏时,这是否意味着整个服务器可能面临风险,或者仅仅是数据库及其内容? 2-当PHP脚本被破坏时,这是否意味着整个服务器可能面临风险,或者仅仅是脚本和任何相关内容?

现在,当数据库被破坏,或者您的脚本被破坏时,就不可能概括出问题的所在。这一切都取决于攻击是什么。你不能肯定地说,任何事情都是真正孤立的,因为许多攻击都依赖于许多碎片。当事情发生时,您需要使用日志和其他证据来确定发生了什么,然后修复它。

3.在创建数据库时,什么是最重要的安全措施,即数据库的连接?

正确使用准备好的/参数化语句,您不必担心SQL注入攻击。到数据库服务器本身的连接应该在安全隧道上。大多数数据库连线协议本身都不安全..。它们是为速度而造的。如果您在本地主机上访问数据,则不需要隧道操作。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24769545

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档