我想知道是否有人可以告诉我是否存在通过连接到不位于“本地主机”(即通过IP地址)的MySQL数据库而可能发生的任何潜在安全漏洞? 最佳答案 是的,由于不保护与数据库的连接,确实会发生违规行为。这是一个网络安全问题,而不是应用程序安全问题。因此,这个答案完全取决于您的网络拓扑。如果攻击者可以访问您网络的某个部分,那么您必须使用加密技术来保护自己。例如,你有一个恶意的人破坏了你网络上的一台机器,然后他们可以进行ARPSpoofing攻击“嗅探”甚至交换网络上的MITM设备。这可用于查看流入和流出数据库的所有数据,或修改数据库对特定查询(
好的,我提前为这个问题道歉,因为它太宽泛了。基本上,我开发的系统涉及:用户可以注册帐户的网站。此过程将在服务器上为该帐户创建一个新数据库。用Java编写的客户端外部应用程序。这将访问数据库中的数据,以便为用户执行有用的操作。在第一点中创建的数据库本身。我的问题是关于应实现哪些安全措施以确保数据库安全以及如何安全地传输数据。我的担忧是:MySQL数据库实际上是如何安全的?当我在注册帐户时创建数据库时,是否需要为该数据库设置密码?这会加密数据库吗?这足以阻止某人访问数据吗?Java很容易反编译。假设我要将帐户数据库的登录数据存储在主数据库中,我如何保护该数据库并以不需要我硬编码连接到该数据
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭5年前。Improvethisquestion此时用户可以在我的网站上创建一个帐户(username,password,email)这将在数据库中创建一个条目,用于存储用户名、密码的哈希值和电子邮件地址,并将用户级别设置为0。之后,它将发送一封电子邮件,其中包含包含id的url用户名和哈希密码的新哈希值。$emailhash=password_hash($passwordHash,PASSWORD_BCRYPT,$options);$
将密码存储在session变量中是否安全?例如,用法将采用提交给自身的表单。例如更改分类页面,用户首先输入密码,然后如果pass=ok,显示更改分类的表单。全部在同一个php页面上。但是每当在php页面的“更改”部分上传图片时,表单必须再次提交给自己。我是否应该在这里使用商店session密码来验证用户是否确实是用户,并且它是安全的?换句话说,存储这样的东西安全吗:if($pass==$row['password']){//Ifpasswordwascorrect$_SESSION['pass_ok']='1';}谢谢 最佳答案 C
我被要求处理由另一位程序员建立的网站的安全问题。到目前为止,我还没有看到任何代码,所以我现在不做假设了,我想介绍一下我的基础。托管该站点的小组进行了安全检查,发现他们的代码容易受到SQL注入(inject)攻击。示例:www.example.com/code.php?pid=2&ID=35(GET参数ID易受SQL注入(inject)攻击)现在,因为我是新手,我已经解释过我可能会与主机一起解决问题,但他们的网站仍然需要由对安全有更深入了解的人来检查。因此,为了处理潜在的SQL注入(inject)(并且没有看到代码),我会使用mysql_real_escape_string:$query
不久前我开始从事网络开发。我现在知道了一些东西,但我真的很担心可能出现的安全问题。我知道像preg_replace这样的简单安全解决方案,但我对此没有信心。因此,我想请您提供可应用于以下情况的任何类型的“通用”安全标准。正如我提到的,我不是专业人士,所以如果您可以从简单但有用的东西开始,那就太好了。如果可能,您能否提供示例?我确实看过php手册,但我想从其他人那里了解更多信息。这是我在项目中使用的一些典型的MySQL/PHP东西。您能否提出任何改进建议以提高它们的安全性?$sql=mysql_query("SELECT*FROMstoriesWHEREshowing=1ORDERBYc
我有一个网站,如果登录成功,我会在其中创建UserIDsession。$email=mysql_real_escape_string($_POST["email"]);if(LOGINSUCCESSFUL){$_SESSION['userID']=$email;}然后在我向MySql输入任何数据的整个站点中,我从$_SESSION['userID']插入user_id我不知道它有多安全,如果不安全,请建议我使用任何安全的方法来完成这一切。 最佳答案 从根本上说,它没有任何问题-正如Barmar所说,您存储在$_SESSION中的任何
向用户显示由数据库自动递增的实际ID是否存在安全风险?你能举一些实际的例子来说明人们可以用它做什么危险吗? 最佳答案 不,它在许多情况下使用。如果您的网站以其他方式存在漏洞,比如SQL注入(inject)或XSS,他们可能会使用该ID来做一些有害的事情。但永远不要单独使用ID。只需查看您在SO的个人资料,您的ID就是243414 关于php-是否总是需要向用户隐藏mysql生成的id?,我们在StackOverflow上找到一个类似的问题: https://s
我知道我需要将我的登录信息存储在我的网络根目录之外,以防Apache被破解,但我不确定我的“网络根目录”是什么,在哪里存储我的登录信息,以及如何从PHP访问它们.谁能解释一下? 最佳答案 您的网络根目录,在PHP中是$_SERVER['DOCUMENT_ROOT'],是您的网络服务器(在本例中为Apache)指向特定主机的文件系统上的文件夹。例如,如果您将这段代码放在您的index.php文件中并访问您的域名(或子域名),它会告诉您您的网站根目录。它应该是类似/home/some_user/public_html或/var/www的
我希望能够防止重复的SQL文本字段行。也就是说,如果第1行的名称字段已定义为“JohnSmith”,我不希望它能够添加另一个“JohnSmith”(尽管该名称可能很常见)。我试过检查它在插入时是否存在,但问题是,如果你同时打开两个浏览器窗口并同时单击提交,它们都会检查,检查将清除,然后它们'如果它们足够靠近,我们都会插入。哦,这是在PHP站点上。谢谢! 最佳答案 CREATEUNIQUEINDEXidxnameONtablename(fieldname);添加此索引将确保fieldname字段的重复条目不会记录到tablename表