草庐IT

安全证书

全部标签

php - 我在使用 Curl 和 SSL 证书时遇到错误

我有一个问题。当您将带有CURL库的POST请求发送到HTTPS时收到错误:SSL证书问题,请验证CA证书是否正常。详细信息:错误:14090086:SSL例程:SSL3_GET_SERVER_CERTIFICATE:证书验证失败。使用当前证书。我尝试了来自http://www.startssl.com/certs/的各种证书和来自http://curl.haxx.se/docs/caextract.html告诉我错误的原因是什么?这是代码POST请求:curl_setopt($process,CURLOPT_USERAGENT,$this->user_agent);curl_seto

php - 这个 PDO 代码对 SQL 注入(inject)足够安全吗?

这个问题在这里已经有了答案:ArePDOpreparedstatementssufficienttopreventSQLinjection?(7个答案)关闭9年前。正如标题所说:这段代码对SQL注入(inject)足够安全吗?有没有更好的方法来防止SQL注入(inject)?setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);$db->setAttribute(PDO::ATTR_EMULATE_PREPARES,false);$query=$db->prepare("INSERTINTO`$usertable`(first_n

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 - 在本地 Laravel Homestead 服务器上验证自签名证书

我遵循了以下创建SSL证书的详细信息,因此我可以使用https通过Laravel的Homestead运行本地测试站点。Addinghttpscertonhomesteadvm一切正常,但是当通过https://查看测试域时,我在Chrome的地址栏上看到一个红叉。它表示该证书由于是自签名的且未经第三方验证而不受信任。有什么办法可以解决这个问题吗?这样我就可以让我的HTTPS本地域受到Chrome的信任并像在线一样工作? 最佳答案 Chrome不再允许您导出证书。您需要使用其他支持此功能的浏览器(例如firefox),或者只需将生成的

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 - 苹果官网推送: Signature verification of push package failed, 但是苹果证书没问题

我正在尝试使用Codeigniter向Safari实现Web推送通知,我正在关注AppleGuide我创建了一个库来创建基于此connorlacombe的推送包github项目。这是我的图书馆:initialize($config);}log_message("debug","AppleClassInitialized");}publicfunctioninitialize($config=array()){if(empty($config["certificate_path"])||empty($config["certificate_password"])||empty($conf