专栏首页FreeBuf暗链隐藏的N种姿势

暗链隐藏的N种姿势

一、介绍

暗链也称黑链,即隐蔽链接,是黑帽SEO的作弊手法之一,其目的就是利用高权重网站外链来提升自身站点排名。 一般来说,暗链是由攻击者入侵网站后植入的,暗链在网页页面上不可见或者极易被忽略,但是搜索引擎仍然可以通过分析网页的源代码收录这些链接,如果有大量网站甚至一些高权重的网站都链向它们,积少成多,可以迅速提高权重,获得高额流量。

暗链指向的网站绝大多数是博彩、非法游戏私服、虚假医疗、办证等黑灰色产业,其中博彩类域名数量最多。而暗链宿主往往是权重较高的网页,例如政府网站、教育网站等。

正常的网站首页

查看源代码

隐藏了黑链的源代码

二、暗链隐藏方式

暗链主要利用CSS、JS来控制链接的隐藏方式,通过对大量样本的分析,本文总结了几种常用挂暗链的手法。

1、 链接位于页面可见范围之外。可以将position位置属性设置成负数,则链接无法显示在可见页面之内。

2、链接颜色与背景色相同,链接文字使用低像素。

3、利用跑马灯marquee属性,链接以跑马灯形式迅速闪现,跑马灯的长宽设置很小,同时将闪现的频率设置很大,使得查看页面时不会有任何影响。

4、利用display:none和visibility:hidden隐藏区域里的内容。

以上四种是惯用的挂暗链的方法,但目前的搜索引擎也开始对这些方法进行识别和打击,如果代码没有任何处理的话,那么这些外链将有可能全部被降权。即便如此,这几种仍然是目前最常见的暗链隐藏方法。为了不被搜索引擎识别,攻击者利用JS向页面中写入ccs样式,并设置其属性,见5,6。由于搜索引擎对这种JS代码的内部实质意义还无法识别,因此也成为了挂暗链的一种常见形式。

5、利用JS向页面中写入ccs样式。

注:除了设置display:none属性外,也可以设置前面我们提到的其他隐藏方法。

6、利用JS修改样式属性

7、利用遮挡层隐藏暗链。z-index属性可以设置元素的堆叠顺序,z-index值越小其堆叠顺序越靠后,因此可以利用其它层来遮挡暗链。

8、利用iframe创建隐藏的内联框架

marginWidth,marginHeight为0 则无法显示内联框,可隐藏暗链。

9、利用重定向机制。在跳转之前的页面写入不相关的链接,通过快速跳转到正常页面,使用户无法察觉。

利用setTimeout 在跳转到正常页面index.html之前有0.1s停留在当前页面,页面中的暗链不易被察觉。

10、利用<meta>标签插入链接。位于网页html源码头部内的<meta>标签,提供有关页面的元信息,是搜索引擎判定网页内容的主要根据, 攻击者可以在标签中插入大量与网页不相关的词语以及链接。

三、总结

以上总结了挂暗链的常用手法,相信还有一些其他方式被攻击者利用,不难发现凡是可以隐藏文本信息的地方都可以挂暗链,比如我们可以通过创建下拉菜单,将非法链接混合在合法菜单之中,如果菜单足够长或者没人去点击的话,也很难察觉。

被植入暗链的网页不仅对于网站本身的信誉形象产生负面影响,更严重扰乱了搜索引擎排名机制。为了防止网站被挂黑链,我们还需加强对网站的监管,采取一些防范措施,比如定期查看网站的源代码,使用站长工作检查黑链、死链,定期进行网站漏洞检测、漏洞修复、后门检测等,提高网站安全性等。

四、参考

[1]http://thief.one/2016/10/09/%E9%BB%91%E5%B8%BDSEO%E4%B9%8B%E5%9F%BA%E7%A1%80%E7%9F%A5%E8%AF%86/

[2] http://blog.sina.com.cn/s/blog_c206a2c30101e5xq.html

[3] 基于统计机器学习的互联网暗链检测方法

本文分享自微信公众号 - FreeBuf(freebuf),作者:ArkTeam/XJ

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-05-17

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 涨姿势:如何让你的Google账户更安全

    如果你使用Gmail作为你主要的电子邮件,或者长期依赖于谷歌提供的服务,再或者你是“Google脑残粉”……那么这篇文章就值得你来读读。本文将指导你重新审视并重...

    FB客服
  • 从APK解密到批量获取他人信息

    0x00.背景 APK是AndroidPackage的缩写,即Android安装包(apk)。APK是类似Symbian Sis或Sisx的文件格式。通过将A...

    FB客服
  • 破解之美:利用ECB加密缺陷突破cookie加密

    密码学诞生于古人类社会,例如古希腊斯巴达的密码棒、欧洲中世纪时期的密码栏、阿伯提发明的密码盘等。古代的密码学是一门加密隐蔽的学科,而现代密码学定义为加密与解密,...

    FB客服
  • 兔子的个数-java

    码农笔录
  • PostgreSQL WAL LOG 与时间线timeline 与rejoin node 错误

    问题的起因是,在做repmgr 恢复的时候,经常有同学说恢复的时候, repmgr rejion node 的时候pg_rewind 会报错,与时间线有关。(p...

    AustinDatabases
  • 笔记整理-Python

    pip install flask -i https://mirrors.aliyun.com/pypi/simple/

    古道无仙
  • Qt技巧-枚举与字符串互相转换

    Qt君
  • Spring的事务传播行为

    先举一个Spring的嵌套例子 ServiceA {     void methodA() {         ServiceB.methodB();    ...

    冷冷
  • 基于B/S在线答疑系统介绍

    该在线答疑系统采用了mvc模式进行开发,model层主要用于数据模型的建立以及与后台数据库的交互连接,view(视图层)主要有jsp构成,负责页面的动态显示,c...

    葆宁
  • R语言巨灾风险下再保险合同定价研究案例:广义线性模型和帕累托分布分析

    excel电子表格的问题在于某些列可能具有预先指定的格式(例如,损失为000,000,000格式)

    拓端

扫码关注云+社区

领取腾讯云代金券