安全矩阵

 找回密码
 立即注册
搜索
查看: 2460|回复: 0

常见网站劫持案例及解析

[复制链接]

114

主题

158

帖子

640

积分

高级会员

Rank: 4

积分
640
发表于 2021-3-29 22:09:47 | 显示全部楼层 |阅读模式
常见网站劫持案例及解析


原创 Bypass
来自于公众号:Bypass
原文链接:
https://mp.weixin.qq.com/s?__biz=MzA3NzE2MjgwMg==&mid=2448906900&idx=1&sn=8c0ed16128f5f5322f6a12e7f8a827e1&chksm=8b55cac9bc2243df00ea236e4a86a289045e926739822a32e05e800d11441319d2d638606a4e&mpshare=1&scene=23&srcid=0329EoE2DkNDSHf8s2IPWAjZ&sharer_sharetime=1616985380254&sharer_shareid=ff83fe2fe7db7fcd8a1fcbc183d841c4#rd

攻击者在入侵网站后,常常会通过恶意劫持流量来获取收益,从而实现流量变现。有一些黑帽劫持的手法堪称防不胜防,正常的访问行为很难发现异常。今天给大家分享一下常见的网站劫持手法和排查思路。
我们可以按照基于不同隐藏目的的常见劫持手法,来做一个简单的分类:
1、将爬虫与用户正常访问分开,实现搜索引擎快照劫持
2、将移动端与PC端的访问分开,实现移动端的流量劫持
3、根据用户访问来源进行判断,实现特定来源网站劫持
4、如果获取管理员的真实IP地址,实现特定区域的流量劫持
5、按照访问路径/关键词/时间段设置,实现特定路径/关键词/时间段的流量劫持基于以上,实现的方式有很多种,比如客户端js劫持、服务端代码劫持、301重定向、恶意反向代理、IIS模块劫持等。



01、客户端js劫持


在网页中插入js脚本,通过js进行url跳转,一般情况下,会通过js混淆加密来增加识别难度。
如下:通过js劫持从搜索引擎中来的流量。

  1. <script>var s=document.referrer;
  2. if(s.indexOf("baidu")>0||s.indexOf("soso")>0||s.indexOf("google")>0||s.indexOf("yahoo")>0||s.indexOf("sogou")>0||s.indexOf("youdao")>0||s.indexOf("bing")>0){self.location='http://www.xxxx.com';
  3. }</script>
复制代码


排查思路:查看网页源代码或者抓包分析http流量,找到源代码中插入的js代码,删除js代码后恢复。


02、服务端代码劫持


网站源码被篡改,在首页或配置文件中引入恶意代码。
如下:通过判断User-agent与Referer,进行快照劫持。

  1. <?php
  2. error_reporting(0);
  3. //判断是否为百度蜘蛛,然后进行内容劫持
  4. if(stripos($_SERVER["HTTP_USER_AGENT"],"baidu")>-1){
  5. $file = file_get_contents('http://www.xxxx.com');
  6. echo $file;
  7. exit;
  8. }
  9. //判断是否来自百度搜索,然后进行url跳转
  10. if(stristr ($_SERVER['HTTP_REFERER'],"baidu.com")) {
  11. Header("Location: http://www.xxxx.com/");//指定跳转
  12. exit;
  13. }
  14. ?>
复制代码



排查思路:查看网站首页引入了哪些文件,依次访问相关的文件源码,确认可疑的代码,去除包含文件后恢复。备份网站源码及文件完整性验证非常重要,可以帮助我们在上万行的代码中快速找到恶意代码。

03、nginx反向代理劫持


以前遇到过一个网站做了网页防篡改,无法通过修改网站源码劫持,攻击者通过修改nginx的配置文件,通过正则匹配url链接,配置proxy_pass代理转发实现url劫持。

  1. location ~ /[0-9a-z]+sc {
  2.     proxy_pass  https://www.xxxx.com/;
  3. }
复制代码



排查思路:总结url劫持规律,中间件配置文件也是需要关注的位置。

04、利用301重定向劫持


通过HTTP重定向实现301劫持。
  1. <httpRedirect enabled="true" destination="http://www.xxxx.com/1.php" childOnly="true" httpResponseStatus="Permanent" />
复制代码

排查思路:可以检查网站根目录下的配置文件web.config,确认是否有相关设置。


05、IIS恶意模块劫持


这种手法相对比较隐蔽,网站目录中查不到webshell和挂马页面,但使用特定的路径、Referer或者UA访问,页面会加载暗链。




排查思路:排查加载的异常dll文件,如没


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2024-11-29 00:53 , Processed in 0.012261 second(s), 18 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表