草庐IT

SECURITY

全部标签

php - symfony2 以编程方式验证用户

我刚刚完成了本教程:http://symfony.com/doc/current/cookbook/security/api_key_authentication.html(包括“在session中存储身份验证”)它通过apikey工作并授权用户,并成功地将身份验证存储在session中。但是,我不知道如何通过该身份验证方法以编程方式对用户进行身份验证。我试过类似的方法:$user=newUser('admin',null,['ROLE_ADMIN']);$token=newPreAuthenticatedToken($user,null,"secured_area",$user->g

php - mcrypt 已弃用? - 如何在 PHP 中正确加密和保存密码?

我被告知,phpmcrypt已被弃用,我应该使用不同的方法来散列和加盐我的密码。这是我目前所做的:publicfunctionsaveNewUser(array$data){$passwd=$this->mysqli->real_escape_string($datas['passwd']);$options=['cost'=>11,'salt'=>mcrypt_create_iv(22,MCRYPT_DEV_URANDOM)];$hashed_passwd=password_hash($passwd,PASSWORD_BCRYPT,$options);$this->optin_has

php - $_SERVER[REQUEST_METHOD] 是否可操作?

在我正在开发的PHP项目中,我有几个可以是POST或GET的请求。目前,我使用$_SERVER[REQUEST_METHOD]值来确定要使用哪个请求数组。我知道$_REQUEST值可以用cookie操纵,$_SERVER超全局是否容易受到攻击? 最佳答案 $_SERVER超全局变量由PHP使用从Web服务器获取的数据填充。因此,除非攻击者用他自己的Web服务器替换Web服务器,或者对服务器管理非常幸运的缓冲区溢出,否则你没问题。 关于php-$_SERVER[REQUEST_METHOD

php - 如何覆盖 Apache/PHP 存储在/tmp 中的文件的默认权限?

显然,我在Linux上。PHP脚本似乎在“www-data”用户下运行。我还可以看到上传的文件最终位于默认的/tmp目录中,每个文件的名称都以“php”为前缀。我猜都是标准的。所有这些文件的权限是-rw--------即600,用户'www-data',组'www-data'。问题是我有一个PostgresQL数据库服务器在用户“postgres”下运行,它需要能够读取这些文件,因为它将它们的内容插入到数据库中。显然,目前它不能。当然,作为一项规则,数据库查询和功能在任何用户连接到数据库的情况下运行(我也连接为“www-data”),但这里我们讨论的是必须作为“postgres”调用的

php - 如何使用 openssl 验证数字签名

我正在使用第三方信用卡处理服务(Paybox),在交易成功后,该服务会重定向回网站并在URL中添加签名作为防止他人操纵数据的安全措施。它应该证明请求源自此服务。所以我的成功URL看起来像这样:/success.php?signature=[大哈希]我不知道从哪里开始验证这个签名。该服务确实提供了一个公钥,我假设我需要创建一个私钥,但除此之外我不知道太多。我对Linux非常熟悉,而且我知道我必须运行一些openssl命令。我正在用PHP编写验证脚本,它也有原生的openssl()函数。如果有人可以用一些伪代码甚至功能代码将我推向正确的方向,我将不胜感激。谢谢。

php - mysqli 准备好的语句不转义哪些字符?

我正在尝试强化我的一些PHP代码并使用mysqli准备好的语句来更好地验证用户输入并防止注入(inject)攻击。我不再使用mysqli_real_escape_stringasitdoesnotescape%and_.但是,当我将查询创建为mysqli准备语句时,同样的缺陷仍然存在。该查询根据用户名提取用户盐值。我会对密码和其他查找执行类似的操作。代码:$db=newsitedatalayer();if($stmt=$db->_conn->prepare("SELECT`salt`FROMadminsWHERE`username`LIKE?LIMIT1")){$stmt->bind_

PHP AJAX登录,这种方法安全吗?

我刚刚开始使用PHP和MySQL,并创建了一个登录表单,一切正常!现在我想添加ajax,我考虑的第一个方法是使用jQuery$.post方法。我对代码没意见,这里是我将要做什么的快速思路:functionlogin(){$.post('login.php',{username:form.username.value,password:form.password.value})}我只需要知道,这种方法安全吗?如果不安全,我应该考虑什么方法? 最佳答案 它的安全性与任何其他表单提交方法一样安全。

php - 注册时通过电子邮件发送密码

在注册时通过电子邮件向用户发送他们的密码是不是一个可怕的想法-在它被服务器端代码散列并存储到数据库中之前? 最佳答案 如果它是用户输入的,是的,这是个坏主意。电子邮件未加密,可以在您的邮件服务器和他们的邮件服务器之间传输时被拦截,并且有可能被有权访问这两个服务器的人读取。如果是一次性临时密码,风险较小,因为他们应该在不久之后更改它。 关于php-注册时通过电子邮件发送密码,我们在StackOverflow上找到一个类似的问题: https://stackove

php - 移动身份验证器如何工作

我想知道移动验证器是如何工作的(比如Battle.net、rift,有些银行有,等等),所以我可以为我自己的网站制作一个(只是为了好玩)。我了解基础知识:验证器具有与电话相关的代码和与网站相关的代码。用户在网站上输入电话代码。然后可以生成相关的token(使用电话和网站代码)。我只是想知道token是如何创建的。这有标准算法吗?该算法如何工作?任何现有的PHP库都可以做这样的事情(例如)? 最佳答案 看看GoogleAuthenticator.已经有适用于此的iPhone、Android和黑莓应用程序,这是一个既定的协议(proto

php - 可以安全弹出登录吗?

我有一个隐藏在每个页面上的登录表单,并在需要时在点击时显示自己,而不是引发新的页面请求。我注意到,为了使登录真正安全,表单操作应指向https页面,而且登录表单本身也应位于https页面上。有没有一种方法可以使弹出式登录表单安全,而无需将整个网站设为https? 最佳答案 在http://页面上使用(理论上)转到https://的AJAX弹出窗口(或iframe)会带来两个问题:攻击者可以拦截该页面并用他自己的链接替换该链接。这可以防止用户检查它连接到哪个网站。第一个问题与thisquestion有关(不是特定于AJAX弹出窗口,而