草庐IT

SECURITY

全部标签

php - 带有自定义选民的 Symfony @Security 注释

我编写了一个自定义投票器来检查用户是否是他正在尝试编辑的一本书的所有者。因此我使用“@Security”注解来保护Controller:@Security("is_granted('BookVoter::ATTRIBUTE_OWNER',book)")这就是我希望@Security注释看起来像的样子,但它仅在我编写以下内容时有效:@Security("is_granted('OWNER',book)")我不想“硬编码”“OWNER”字符串,它在我的BookVoter中是一个常量。有什么想法可以实现吗?问候。 最佳答案 您传递给@Se

php安全问题

这是漫长的一天,但我似乎无法在自己的脑海中选择哪个更好,或者我是否应该同时使用两者。基本上我应该使用什么来清理用户输入的值。它是htmlentities还是preg_match函数?然后,如果该值进入sql查询,我将使用mysql_real_escape_string函数,但只有在我将其更改为准备好的语句之后,我才能删除它。或者同时使用htmlentities和preg_match是个好主意吗? 最佳答案 你为什么不直接在你的previousquestion中问这个?在进行任何转义之前使用preg_match,以确保数据符合您期望的

php - 在 siteurl 上测试 wordpress 站点的 SQL 注入(inject)

我有一个客户,他的wordpress网站被iframe骗子攻击了两次。每次他们将iframe代码注入(inject)网站内容时。这是最后一次,今天,他们只是将wp_options中的siteurl更改为他们的iframe代码。结果很明显,似乎只是搞砸了依赖于的脚本的路径我无法确定它是密码泄露(在FTP或WordPress本身上)还是SQL注入(inject)来更改siteurl。由于唯一改变的是siteurl,我想可能是SQL注入(inject)。你有什么想法?有什么方法可以扫描站点以发现潜在的SQL注入(inject)漏洞?网站上唯一活跃的插件是contactform7和google

PHP strpos() 返回奇怪的结果

我已经为我的网络应用编写了一个基本的“安全检查程序”。我需要看一眼用户提交的代码是否包含恶意内容。这是我现在正在运行的代码的屏幕截图:http://cl.ly/677a6dc40034f096697f这里是PHP代码我正在使用这三位代码:Securityanalysis-//Thecontrollerfunctionsecuritycheck($html,$css,$js){//Thecodeisthehtml,css,andjs,appendedtogether.We'rescanningitall.$code=$html."".$css."".$js;//$insecureisou

php - 如何保护高流量网站的成员(member)照片

在实际项目(交友网站)​​中,我有以下场景:成员(member)可以上传照片(主要个人资料)并创建相册并将照片分配给它。现在成员(member)可以选择只允许注册成员(member)、高级成员(member)或他收藏的成员(member)访问相册。最简单的解决方案是隐藏相册,但如果有权访问的人将照片的srcurl发布到照片,那么拥有该url的每个人都可以访问它。我看到flickr和facebook以一种很好的方式保护它们,但我如何实现它而不需要多次查询数据库并复制用户身份验证/session。照片将存储在自己的服务器上(varnish/nginx)。有没有人知道如何在高流量的情况下做到

php - 如何使用php正确建立文件路径?

我有一个目录和一个动态文件名。有没有什么函数可以确保无法从指定目录跳出?例如:secure_path('/tmp/','file.txt')->/tmp/file.txtsecure_path('/tmp/','../file.txt')->/tmp/file.txt 最佳答案 如果您只在单个目录中工作,而不在下面的子目录中工作$file="/tmp/".basename($input);它应该在输入中给定的任何路径末尾为您提供文件名,并将其附加到您想要的目录。 关于php-如何使用ph

php - 处理失败的 nonce 验证的最佳方法是什么?

我对随机数的理解很模糊,但有点困惑。nonce验证失败时的正确响应是什么?在什么情况下nonce验证会失败?对真正的用户有什么风险? 最佳答案 表单随机数的目标通常有两个:确保数据只提交一次,并确保用户实际提交。第二点帮助防御跨站请求伪造:http://en.wikipedia.org/wiki/Cross-site_request_forgery处理它们取决于上下文。如果用户正在填写表单并且nonce失败,请刷新页面(预填充数据),说一些良性的事情,例如“糟糕,出现问题,请检查您的输入并再次提交”。有效用户可以点击提交,攻击将被阻

php - API 安全 : how to restrict access by domain?

我公开了一个简单的API,需要确保只有授权用户才能访问它。我将提供一个APIkey来进行身份验证。但是,我还想将APIkey关联到某个域(意思是,它应该只有在从授权域使用时才有效)。如果从授权域访问,我如何检查API端?HTTP_REFERER显然不可靠。有什么建议吗? 最佳答案 您要公开哪种API?有许多不同类型的API-我假设您没有公开操作系统的API...假设您想要公开一些网络应用程序的API,您可以看看OAuth,它基于回调URL-您可以只阻止某些域通过回调URL被调用。阅读更多关于OAuth的信息.

php - 向用户公开 php 模板引擎?

我想在我的Web应用程序中构建一个报表生成器。用户通过站点的其他部分收集数据,然后应该能够生成“报告”,他/她可以在其中以文档样式的方式使用所述数据。我希望用户能够使用基本的数学功能,获取/设置他们自己的变量等。我想为什么要重新发明轮子?如果我允许用​​户使用类似TwigTemplateEngine的内容编写报告并且只允许他们使用某些扩展,这看起来是否合理安全?Twig模板已经删除了标记中的所有php,除了基本的字符串更改等之外,您可以使用的强大功能不多。让我知道您的想法。 最佳答案 Twig有一个相当强大的sandboxexten

php - 脚本在 HTTP 服务器上的可见性

如果我有一个带有各种HTML页面和各种PHP(或其他)脚本的http服务器,那么如果我尝试查看代码(如在Chrome的查看源代码工具中),则不会显示PHP代码,这就像出色地。我想知道代码的安全性如何?将密码硬编码到脚本中是否安全? 最佳答案 您的PHP代码唯一可能暴露的情况是脚本以某种方式被视为“非PHP”并作为原始文本提供。如果您的服务器配置是正确的,那么代码对于基于Web的泄漏是“安全的”。也就是说,最好将应保持私有(private)的关键信息(用户名/密码、配置变量、数据库DSN等...)放在一个单独的文件中,该文件保存在站点