草庐IT

安全$容器

全部标签

php - 在 PHP 中使用 session ID 作为文件名是否安全?

在PHP网络应用程序中,我使用sessionID作为文件名。在某个时候,这些文件被删除,代码如下unlink('tmp/'.session_id());我知道用户可以更改他/她的sessionID。因此我想知道是否可以将sessionID更改为类似“/../../etc/passwd”的内容。我现在的问题是,这种“黑客攻击”是否可能,以及我如何才能最好地保护我的代码。预先感谢您的回答!评论:我知道用户劫持其他用户session的危害和预防方法,目前我的情况不是这个问题。 最佳答案 除非你有一个非常搞砸的设置,否则用户将永远无法直接更

PHP LDAP 查询以获取特定安全组的成员

我正在努力让LDAP查询工作以给我安全组的成员。我们的事件目录结构设置为DC=domain,DC=co,dc=uk然后我们有一个名为公司用户的OU,其中有一个用于IT和标准的OU。我们在其中创建了用户所以我设置为CN=myname,OU=IT,OU=companyusers,DC=domain,DC=co,dc=uk安全组是CN=Test,OU=SecurityGroup,DC=domain,DC=co,dc=uk我是其中的一员。我有一个运行LDAP查询的PHP页面,该查询设置为具有OU=Companyusers,DC=domain,DC=co,dc=uk的DN,过滤器为(&(obje

php - 通过电子邮件发送 POST 的 print_r 没有任何安全漏洞,对吗?

这可能有点菜鸟问题,抱歉。这种代码没有任何安全漏洞吗?我一直在到处使用它,但想确保我不会留下漏洞。$body=print_r($_POST,true);mail($to,$subject,$body,$headers,"-f$from_address"); 最佳答案 不,这不安全。但您可能会逃脱它,因为您需要其他设置不当的系统来让黑客通过。详情电子邮件的“正常”安全问题是众所周知的:始终审查进入标题的任何内容以防止标题注入(inject);最简单的方法是删除换行符(或拒绝发送任何换行符:表示有人在进行黑客攻击/测试)。这不是您提出的

php - parse_ini_file() 出于安全原因已被禁用 - 替代方案?

parse_ini_file()有什么替代方案吗?真的有那么危险吗?是禁用它的充分理由,还是我可以以某种方式说服管理员它是安全的?parse_ini_file()hasbeendisabledforsecurityreasons我已经找到这个错误的意思了errordescription我在这段代码中使用(有一些拼写错误的问题,但它在一个主机上解决并工作正常但在另一个主机上没有,因为禁用该功能)mycode 最佳答案 老实说,我找不到合理的理由来禁用该功能,但是,如果parse_ini_string()可用并且您还可以阅读文件,您应该

php - 如何在 Symfony2 服务容器中设置 Doctrine MongoDB 存储库

如何在我的Symfony2应用程序中正确设置服务容器以支持自定义文档存储库?我目前拥有的是:services:acme.repository_user:class:Acme\Repository\UserRepositoryarguments:[@doctrine.odm.mongodb.document_manager]但是,当我查看我的UserRepository继承的DocumentRepository类的构造函数时,我可以看到以下参数:publicfunction__construct(DocumentManager$dm,UnitOfWork$uow,Mapping\Clas

php - 安全地限制 API 速率,防止 IP 地址欺骗

我正在使用PHP、MySQL和Redis开发API,并希望对特定调用进行速率限制。API位于CloudFlare后面。为实现这一点,我将增加每个IP地址每小时在Redis中进行的特定调用的计数,如果超过限制,将显示错误。但是,我相信我遇到了IP地址欺骗问题。我知道如果真正的客户欺骗了他们的IP地址,他们将永远不会收到回复,但这对于诸如创建帐户电话之类的电话来说可能不是必需的。客户端可以通过注册多个具有不同IP的帐户来有效地发起DoS攻击,同时始终避开速率限制。这会导致我的系统发送大量欢迎电子邮件(导致我的服务器被标记为垃圾邮件),并且如果他们的电子邮件帐户被恶意注册,可能会阻止用户注册

php - mysqli_real_escape_string() 中默认字符集的安全隐患是什么意思?

在mysqli_real_escape_string()的PHP文档中,写道CautionSecurity:thedefaultcharactersetThecharactersetmustbeseteitherattheserverlevel,orwiththeAPIfunctionmysqli_set_charset()forittoaffectmysqli_real_escape_string().来源mysqli_real_escape_string在关于字符集的进一步链接中,提到Thecharactersetshouldbeunderstoodanddefined,asith

php - 设置从主机到 docker 容器的 PHP 路径

我知道这是一个相当愚蠢的问题,但我有以下问题。我使用Docker一年多了,还有一个编辑器来更改我的程序,它是一个卷。我没有安装php,因为它只在容器内运行,就像我的几乎所有其他服务器程序(如sql、apache)一样。现在我安装了visualstudiocode,它找不到php的路径来使用intellisense。我知道我可以在我的docker-compose或Dockerfile中设置环境路径来为我的容器设置环境。但是容器在运行时与外部隔离,除了像dockercp这样的命令。是否可以设置从我的主机到容器机器的路径,以便visualstudio代码可以在容器内找到PHP并将其用于智能感

php - Symfony 如何在我的服务中获取容器

我有symfony项目和在这个项目中,我有自己的服务,这个服务又大又复杂,有自己的依赖关系等……我想创建facade对于此服务,目的是在controllers中使用我的服务,例如:$myService=$this->container->get('service_from_my_domain');我的问题-是如何在我的门面内部访问container以访问服务的依赖项。我只知道一种方法——在yaml配置中将依赖项注入(inject)服务。但是还有别的办法吗?喜欢:$dependency=Container::getInstance()->get('my_dependency_servic

php - 我的 CSRF 保护方法安全吗?

我一直在使用PHP进行自己的CSRF保护。根据我的阅读,我决定使用cookie来实现我的保护,但我对我的方法是否能抵御CSRF攻击感到有点困惑。所以我的方法如下:用户发送登录请求服务器检查是否设置了CSRFtoken,如果没有,则创建一个并将其存储在session中,并使用该token创建一个Cookie通过检查它是否在POST请求中来验证CSRFtoken,如果不在$_COOKIE中则检查token如果token无效则发回消息...我决定使用cookie来存储token,因为这适用于Ajax请求,而且我不必在每次使用AjaxPOST时都包含它。令我感到困惑的是,攻击者不能只发出请求吗