对所有包含" undefined“的非现有页面的请求”

时间:2015-03-20 07:13:47

标签: javascript http undefined server

自2014年10月20日以来,我们的日志中出现了一些奇怪的请求。他们每天增加到几十个,所以虽然不是一个大问题,但找到原因仍然很有趣。

早些时候:

REQUEST[/en/undefinedsf_main.jsp?clientVersion=null&dlsource=null&CTID=null&userId=userIdFail&statsReporter=false] REFERER[http://colnect.com/en/coins]
REQUEST[/fr/undefined/GoogleExtension/deals.html?url=http://colnect.com&subid=STERKLY&appName=HypeNet&pos=2&frameId=buaovbluurbavptkwyaybzjrqweypsbavwrviv] REFERER[http://colnect.com/fr]
REQUEST[/br/stamps/undefined49507173c45043eba6dfb9da540e52de&chnl=slmbBRex&evt=DailyPing&prd=vbates&seg=1&ext=1&rnd=65983fb77b62e25cc2a8ef15af18273d] REFERER[http://colnect.com/br/stamps/countries]

目前的一些:

REQ[/ru/collectors/collector/undefined] REF[http://colnect.com/ru/collectors/collector/jokitsos]
REQ[/th/collectors/collector/undefined] REF[http://colnect.com/th/collectors/collector/VRABEC]
REQUEST[/en/account/undefined] REFERER[http://colnect.com/en/account/request_password]
REQUEST[/pt/stamps/undefined] REFERER[http://colnect.com/pt/stamps/years]

有些请求是登录成员,有些则不是。

我猜他们浏览器上的一些Javascript试图通过一些未初始化的变量调用url,因此" undefined"。

原因可能类似于Odd requests to non-existing pages that all include "6_S3_"(可能是恶意软件),但我想知道这可能是另一个原因。

我确实怀疑它是我们客户端Javascript的一个错误,因为每天大约有一百万次页面浏览量会产生几十个这样的请求。

有什么想法吗?是值得追求的吗?

2 个答案:

答案 0 :(得分:6)

这是一个很大的问题,但它并非来自你。

使用 self-signed root certificate 进行 Javascript Injection 攻击(客户机恶意软件)。

具体而言,sf_main.htmldeals.html已与 Superfish 相关联,而 reports 最近一直在联想。由于联想一直在推动其新的PC系列,最近的攻击已经爆发了 Man-in-the-middle

这些 claims 攻击首先是劫持客户端的请求,然后注入 HTML Javascript

有这么多undefined符号的原因是因为 Superfish ,对它的名字来说是真的,它可以利用插件,扩展和库来利用它们的预期名称,代币和路径。这是蛮力 XSS

哦,不,我该怎么办?

小。不多。

由于请求在客户端计算机上被劫持并且被http request劫持,您将不会知道其中的区别。您可以尝试“捕获”某些敌对的“指标”,但现在您正在进行反恶意软件的工作。

联想{{3}}

  

SuperFish完全禁用了服务器端交互(因为   1月)关于所有联想产品,以便软件产品没有   更长时间的活动,有效地禁用了所有产品的SuperFish   市场

虽然我相信在西方世界有严重市场利益的中国联想的诚意,但我不相信中国恶意软件公司 Superfish 这个词。

对您而言,这些攻击不是您的客户

除非您在大型银行或热门社交网站工作,否则像 Superfish 这样的恶意软件极不可能专门针对您。您的客户的银行和社交网络帐户存在风险,但不是因为您做了或可以采取任何措施来阻止它。

与往常一样,客户端钓鱼攻击的治疗方法是良好的客户端保护。

答案 1 :(得分:4)

  

有什么想法吗?

这里似乎有两种不同的选择:

  1. 您的代码中存在错误导致生成错误的网址
  2. 有(搜索)机器人尝试解析您的Javascript并且无法正确执行此操作。
  3. (客户端扩展正在惹麻烦)
  4. 要区分这两者,您需要设置更具体的日志记录。例如,将用户代理添加到包含字符串undefined的任何日志行将回答此问题。如果您的代码导致问题,您还希望记录referer标题,因为它会在哪个页面上显示生成错误的网址。

    识别问题的另一种方法是,如果您的网站上运行了分析解决方案,例如Google Analytics,则可以非常轻松地将报告限制为仅包含url的{​​{1}}。如果没有此类请求,您可以断定它必须是机器人(因为它不会导致客户端分析代码运行),否则它会提供所有信息以识别导致此问题的位置。

    最后,最好包含一个javascript错误日志记录解决方案(最简单的形式是undefined处理程序,其中包含对window.onerror的ajax请求。如果您的代码正在生成\log.something很可能也会触发一些错误。

      

    值得追求吗?

    如果用户实际上被提供无效页面,那么是的,这肯定是需要调查的。

相关问题