常见的网站劫持手法和排查思路:利用301重定向劫持
优采云 发布时间: 2021-04-26 19:30常见的网站劫持手法和排查思路:利用301重定向劫持
攻击者入侵网站后,他经常通过恶意劫持流量来获利,从而实现流量获利。有些黑帽劫持策略是无法防止的,并且很难发现正常访问行为中的异常情况。今天,我将与您分享常见的网站劫持技术和故障排除想法。
我们可以基于常见的劫持技术,基于不同的隐藏目的进行简单的分类:
1、将爬虫与用户正常访问分开,实现搜索引擎快照劫持
2、将移动端与PC端的访问分开,实现移动端的流量劫持
3、根据用户访问来源进行判断,实现特定来源网站劫持
4、如果获取管理员的真实IP地址,实现特定区域的流量劫持
5、按照访问路径/关键词/时间段设置,实现特定路径/关键词/时间段的流量劫持
基于上述内容,有很多方法可以实现它,例如客户端js劫持,服务器代码劫持,301重定向,恶意反向代理,IIS模块劫持等。
0 1、客户端js劫持
将js脚本插入网页,并使用js重定向URL。通常情况下,使用js混淆和加密会增加识别的难度。
如下:通过js劫持来自搜索引擎的流量。
var s=document.referrer;
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'; }
故障排除思路:检查网页的源代码或通过捕获数据包来分析http流量,找到插入源代码中的js代码,并在删除js代码后将其恢复。
0 2、服务器代码劫持
网站源代码被篡改,并且恶意代码被引入主页或配置文件中。
如下:通过判断用户代理和引荐来源来执行快照劫持。
故障排除思路:检查网站主页上介绍了哪些文件,依次访问相关文件的源代码,确认可疑代码,并在删除收录的文件后恢复。备份网站源代码和文件完整性验证非常重要,可以帮助我们在成千上万行代码中快速找到恶意代码。
0 3、 nginx反向代理劫持
我遇到了网站,它已使网页防篡改,并且无法通过修改网站的源代码进行劫持。攻击者可以修改nginx的配置文件,通过常规规则匹配url链接,并配置proxy_pass来实现url劫持。
location ~ /[0-9a-z]+sc
{
proxy_pass https://www.xxxx.com/;
}
故障排除思路:总结URL劫持的规律,中间件配置文件也是一个值得关注的地方。
0 4、使用301重定向进行劫持