此代码段中CURL的用途是什么?恶意吗?

时间:2019-06-05 19:56:10

标签: php security

我在从网站上下载的代码中找到了此功能。有人可以解释此代码段的CURL部分吗?谢谢:)

con <- dbConnect("...", encoding = "latin1")

注意:example.com已替换为我在代码中找到的恶意网站URL。

1 个答案:

答案 0 :(得分:0)

CURL代码仅将$url内容下载到本地文件;唯一的“恶意”方面似乎是作者不希望目标服务器轻易阻止下载。为此,尝试了以下两种方法:

curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)");

  

将用户代理设置为Googlebot,这可能是为了避免   服务器端的用户代理阻止(例如,该站点不太可能   想要阻止Google搜寻器)或从分析中删除的方法   这样下载内容将引起服务器管理员的注意。

curl_setopt($ch, CURLOPT_HTTPHEADER, array("REMOTE_ADDR: $ip","HTTP_X_FORWARDED_FOR: $ip"));

  

在页面上设置X-Forwarded-ForRemote-Addr标头   请求一个随机IP地址。服务器可能会尝试使用这些   标头,以确定客户端原始源IP和此随机   该地址可能最终被记录在访问日志中,从而掩盖了   请求的来源并减少请求被请求的可能性   被阻止。

这两种方法都可能使对日志文件的随意检查变得愚蠢,但任何有资格的管理员都可以轻松检测到。