是否可以让用户在HTTPS安全站点上的表单中输入信息,然后使用PHP将该信息安全地发送到电子邮件地址?您如何加密电子邮件以确保从HTTPS站点发送电子邮件和通过HTTPS电子邮件检查电子邮件之间的安全性?这有多可行?潜在的陷阱是什么? 最佳答案 您可以使用PGP加密电子邮件或S/MIME.这些将需要您的客户端的特殊支持才能解密。大多数网络邮件提供商没有这个(尽管可能有例如Firefox扩展来使其工作)。除了像PGP或S/MIME这样的端到端加密之外,它确实是行不通的,因为电子邮件的明文遗留问题:可以使用TLS(使用SMTLSTART
在用户通过身份验证的那一刻,我需要检查他的角色以将他重定向到正确的页面(两个不同的角色对应两个不同的页面)。我没有在文档中找到如何覆盖login_check。从bundle开始,它使用security.yml配置代理告诉引擎转到一个唯一的默认页面。有什么线索吗?同样的注销问题。 最佳答案 如果我没理解错的话,你想将新登录/注销的用户重定向到适当的路由取决于它的作用?Here是关于如何使用表单处理程序对登录/注销进行重定向的教程。 关于php-在Symfony2和FOSUserBundle
我一直在互联网上搜索加密数据库密码的最佳选择。我发现password_hash()是最佳选择,但后来我发现它仅适用于PHP5.5+。显然我的主机有5.3.27版。我一直在寻找最佳选择,但找不到任何好的选择。 最佳答案 下面的库为您提供了phphttps://github.com/ircmaxell/password_compat.git 关于php-PHP5.3.27中password_hash的最佳替代方案?,我们在StackOverflow上找到一个类似的问题:
准备好的语句不允许参数化表名。为了确保无法插入任何代码,我想使用ctype_alnum来验证进入数据库模块的所有表名(删除下划线后),以保护应用程序免受其他部分错误的影响。functioninsert($table){if(!ctype_alnum(str_replace("_","",$table)))thrownewException("Invalidtablename");$sql="INSERTINTO$tableVALUESvalue=:value";#...prepareandexecute}是否存在这不足以抵御的攻击?我在想例如multibytecharacterexpl
我目前在我的cms中使用以下代码来检查访问者是否以管理员身份登录,以便他可以编辑当前页面:if($_SESSION['admin']=="1"){echo"edit";}但我担心代码不安全。用户不能轻易修改$_session变量吗?什么是更安全的做法? 最佳答案 不,这是一个很好的方法。用户不能修改$_SESSION全局,除非他有权访问您的服务器。请记住远离客户端cookie。为了使其更加安全,一个好方法是存储IP地址并检查它在每个请求之间保持不变。 关于php-PHPsession变量
我正在制作一个登录/注销类,让用户登录,根据用户的选择设置cookie。用户输入他们的电子邮件/密码并检查数据库,电子邮件/密码组合存在创建一个session,并设置一个cookie(使用用户ID)并重定向用户......然后我有一个记录用户的功能通过获取保存在该cookie中的用户ID,检查该用户ID是否存在,然后再次将用户数据保存在session中……我想知道是否有人看到这有什么潜在的错误/不安全。简短的例子,我相信你们可以理解它的要点......functionlogin($email,$password,$remember){//Checkthedatabaseforemail
一如既往,我想提前对您提供的所有帮助和意见表示感谢。我有一个特定的网站,我是该网站的Web开发人员,但遇到了一个独特的问题。似乎有某种东西以某种方式进入了我网站上的每个PHP文件并添加了一些恶意代码。我已经多次从每个页面删除代码并更改FTP和DB密码,但无济于事。添加的代码如下所示-eval(base64_decode(string))-string为3024个字符。不确定是否有其他人遇到过这个问题,或者是否有人对如何保护我的php代码有任何想法。再次感谢。 最佳答案 服务器本身可能会受到损害。向您的虚拟主机报告问题。他们的reac
我有一个脚本可以让用户将文本文件(PDF或doc)上传到服务器,然后计划将它们转换为原始文本。但是在文件被转换之前,它是原始格式,这让我担心病毒和各种讨厌的东西。关于我需要做什么来最小化这些未知文件的风险的任何想法。如何检查它是否干净,或者它是否是它声称的格式并且它不会使服务器崩溃。 最佳答案 正如我对Aerik的评论,但这确实是问题的答案。如果您的PHP>=5.3,请使用finfo_file()。如果您有旧版本的PHP,您可以使用mime_content_type()(不太可靠)或从PECL加载文件信息扩展。这两个函数都返回文件的
假设我有一些PHP代码在Web服务器中运行,例如,运行一个简单的CakePHP应用程序。从这个应用程序,我想偶尔与某些服务器建立TLS连接以交换一些数据。这通常是如何完成的?(我对PHP没有什么经验。)建议使用哪些PHP插件或库或其他任何东西来完成TLS连接?从哪里开始寻找一些好的地方?(我最初的Google搜索给了我一个巨大的噪声信号比。)将X509私钥放在网络服务器上会涉及哪些安全问题?要建立TLS连接,我将需要X509证书和相应的私钥,可能是PEM文件或DER文件,或者在Javakeystore中,等等。该私钥是否会位于网络根目录下易受攻击的地方?这通常是如何处理的?安全问题是什
我想知道你们采取了哪些措施来防止下载的插件成为恶意插件?比如wordpress做了什么来保证你下载的插件不是简单的执行unlink('/')我假设它部分取决于下载者安装插件以使用他或她自己的判断力,但插件系统是否采取措施将运行第3方插件的安全风险降至最低?谢谢!马特·穆勒 最佳答案 简单的答案:您不能以编程方式执行此操作。根本做不到。当然,Wordpress有某种验证器来确定该插件是否完全有害,但无法确定它是否安全。我今年夏天在Mozilla实习,我正在研究验证器,它会在附加组件提交到addons.mozilla.org时对其进行扫