BGP

BGP全称是Border Gateway Protocol,翻译成中文是边界网关协议,用于全球各个AS之间的路由。它的地位是毋庸置疑的,如果没有它就没有全球的因特网。因为全球各个AS都等价的维护一个BGP也带来一些安全性问题,只要任意一个节点的BGP信息配置失误都可能对全球网络产生影响。

像国内BAT这样的企业都是通过互联网交换中心用BGP与其他各大运营商建立的连接关系对外提供服务的。当然更多的中小型公司没有实力自己另起一个AS与运营商建立BGP邻居,这时他们可以“寄生”在其他运营商中来对外提供服务(比如我接入联通的网络,使用联通提供的ip地址来对外提供服务。此时对于其他AS的网民来讲我就是联通提供给他们的服务)。

注:每一个AS都是一个独立的整体网络,一个AS所有者可以是一家公司,也可以是一个组织。一个组织内的服务器想要对因特网上的网民提供服务就需要通过BGP将自己AS内的ip地址宣告给其他AS,好让其他AS内的用户知道你这有响应服务提供。 换言之,一个AS就好像一个部落,你要想和其他部落进行贸易往来就需要修条路通往其他部落,这条路就是BGP。

因为全球的AS都是用BGP来学习路由,所以我们只需要对BGP稍微“动点手脚”就可以达到流量劫持的目的,下面介绍两种常用方法:

背景:1.1.1.0/24属于AS100并通过BGP路由宣告出去,AS200和AS300的用户通过BGP学习到1.1.1.0/24的路由,实际访问的时候将流量转发至AS100 

   

1、利用“地理位置”对流量进行截胡:AS400经过攻击者操控后,将本不属于它的1.1.1.0/24网段宣告进BGP,这样AS200和AS300就从两个方向都学到了1.1.1.0/24的路由。AS200和AS300这时会比较两个方向的AS-PATH属性,哪个短走哪边,结果AS300发现从AS400发来的AS-PATH经过的路径更少,然后将本应该给AS100的1.1.1.0/24的流量就丢给了AS400,AS400从而达成了流量劫持的目的。

2、更细的子网掩码:AS400经过攻击者操控后,宣告一个子网掩码更细的网段1.1.1.0/25进BGP,这样AS200和AS300的路由表中的就都学到了一条更精细化的路由1.1.1.0/25。根据“子网掩码越大越优先”的路由选路原则,AS200和AS300此后就会将1.1.1.0/25的流量转发至AS400,AS400从而达成了流量劫持的目的。

总结:BGP网络是全球所有人共同维护的一张网络,你对BGP的任何一次操作都可能影响全球用户,所以在对BGP进行操作时一定要小心再小心!

通过BGP实现流量劫持的更多相关文章

  1. 【流量劫持】躲避 HSTS 的 HTTPS 劫持

    前言 HSTS 的出现,对 HTTPS 劫持带来莫大的挑战. 不过,HSTS 也不是万能的,它只能解决 SSLStrip 这类劫持方式.但仔细想想,SSLStrip 这种算劫持吗? 劫持 vs 钓鱼 ...

  2. 【流量劫持】SSLStrip 的未来 —— HTTPS 前端劫持

    前言 在之前介绍的流量劫持文章里,曾提到一种『HTTPS 向下降级』的方案 -- 将页面中的 HTTPS 超链接全都替换成 HTTP 版本,让用户始终以明文的形式进行通信. 看到这,也许大家都会想到一 ...

  3. WiFi流量劫持—— JS脚本缓存投毒

    在上一篇<WiFi流量劫持—— 浏览任意页面即可中毒>构思了一个时光机原型,让我们的脚本通过HTTP缓存机制,在未来的某个时刻被执行,因此我们可以实现超大范围的入侵了. 基于此原理,我们用 ...

  4. htaccess文件还可以被用来把访问网站的流量劫持到黑客的网站

    看是否有文件上传操作(POST方法), IPREMOVED--[01/Mar/2013:06:16:48-0600]"POST/uploads/monthly_10_2012/view.ph ...

  5. HTTPS-能否避免流量劫持

    流量劫持是什么? EtherDream在一篇科普文章<>中详细介绍了流量劫持途径和方式. 流量劫持是一种古老的攻击方式,比如早已见惯的广告弹窗等,很多人已经对此麻木,并认为流量劫持不会造成 ...

  6. 关于全站https必要性http流量劫持、dns劫持等相关技术

    关于全站https必要性http流量劫持.dns劫持等相关技术 微信已经要求微信支付,申请退款功能必须12月7号之前必须使用https证书了(其他目前为建议使用https),IOS也是2017年1月1 ...

  7. Linux-某电商网站流量劫持案例分析与思考

    [前言] 自腾讯与京东建立了战略合作关系之后,笔者网上购物就首选京东了.某天在家里访问京东首页的时候突然吃惊地发现浏览器突然跳到了第三方网站再回到京东,心里第一个反应就是中木马了. 竟然有这样的事,一 ...

  8. Web流量劫持

    BadTunnel实战之远程劫持任意内网主机流量 http://www.freebuf.com/articles/web/109345.html http://blog.csdn.net/ts__cf ...

  9. 如何使用HTTPS防止流量劫持

    何为流量劫持 前不久小米等六家互联网公司发表联合声明,呼吁运营商打击流量劫持.流量劫持最直观的表现,就是网页上被插入了一些乱七八糟的广告/弹窗之类的内容.比如这样: 网页右下角被插入了游戏的广告. 流 ...

随机推荐

  1. Hadoop完全分布式集群搭建

    Hadoop的运行模式 Hadoop一般有三种运行模式,分别是: 单机模式(Standalone Mode),默认情况下,Hadoop即处于该模式,使用本地文件系统,而不是分布式文件系统.,用于开发和 ...

  2. 4个点让你彻底明白Redis的各项功能

    前言 先看一下Redis是一个什么东西.官方简介解释到: Redis是一个基于BSD开源的项目,是一个把结构化的数据放在内存中的一个存储系统,你可以把它作为数据库,缓存和消息中间件来使用.同时支持st ...

  3. 【CHRIS RICHARDSON 微服务系列】事件驱动的数据管理-5

    编者的话 |本文来自 Nginx 官方博客,是「Chris Richardson 微服务」系列的第五篇文章.第一篇文章介绍了微服务架构模式,并且讨论了使用微服务的优缺点:第二和第三篇描述了微服务架构模 ...

  4. [转]JVM参数使用手册

    内存分配相关 Xms 英文释义:Initial heap size(in bytes) 中文释义:堆区初始值 使用方法:-Xms2g 或 -XX:InitialHeapSize=2048m Xmx 英 ...

  5. [ASP.NET Core 3框架揭秘] 配置[4]:将配置绑定为对象

    虽然应用程序可以直接利用通过IConfigurationBuilder对象创建的IConfiguration对象来提取配置数据,但是我们更倾向于将其转换成一个POCO对象,以面向对象的方式来使用配置, ...

  6. Oracle Proc编程性能优化经验

    Proc 是Oracle提供的一种数据库操作的API.它是基于ESql技术的,需要预编译后才可以变成普通c代码,非常不直观,使用起来不太方便,阅读也存在困难. 因为这些问题导致程序员平时开发中会出现一 ...

  7. jquery实现商品sku多属性选择(商品详情页)

    转载于https://blog.csdn.net/csdn924618338/article/details/51455595 实现效果 源码 <!DOCTYPE HTML> <ht ...

  8. BOM对象——History

    BOM对象--History <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...

  9. Pikachu-Sql Inject

    Pikachu-Sql Inject 在owasp发布的top10排行榜里,注入漏洞一直是危害排名第一的漏洞,其中注入漏洞里面首当其冲的就是数据库注入漏洞. 一个严重的SQL注入漏洞,可能会直接导致一 ...

  10. DiskCatalogMaker for Mac常见问题解答

    DiskCatalogMaker for Mac是Mac上简单实用的磁盘管理工具,可以帮助您对多张光盘使用批量扫描模式, 生成缩略图图像选项,更加清晰,并请将其快速编目引擎与其他编目人员比较,在本篇文 ...