‍‍

作者 | 轩辕之风

来源 | 编程技术宇宙(ID:xuanyuancoding)

我是一个监听软件,主人花了好几个晚上才把我开发出来,我的使命是监听网络中的所有流量然后报告给他。

那天,主人给要被监听的电脑小白发了一封电子邮件,邮件中有一个链接,小白一点链接,我就偷偷的被下载到了这台电脑上,开始在背后默默的运行。

太好了,这台电脑上居然没有安全软件,我可以为所欲为了!

我加载了一个驱动程序,开始在内核中劫持网络数据包的接收流程,这下,这台电脑的网络通信,我都能捕获到了!

过了一段时间,我发现这个小白的电脑没有什么有价值的信息,除了打游戏就是看视频。

混杂模式

那天主人在云端给我下达了一个指令:打开网卡混杂模式,监控局域网内所有流量!

我有点不太懂,去请教网卡:“老哥,什么是混杂模式?”

网卡告诉我:“我跟你讲哦,正常情况下,收到数据包后如果发现收件人唔系我,我就丢掉咗。开启混杂模式后,只要收到数据包,唔理收件人系唔系我,我都给你提交上来”

好家伙,这网卡还抄着一口广东腔,难道是华强北产的?

“为什么会收到收件人不是你的数据包呢?”,我有点好奇。

“这你就不知道了吧,咱们这个网络中,所有电脑都连在一个集线器上面,这个家伙可笨了,不管谁给谁发的消息,他都广播出去,所以所有人的通信其实我都能看到,只需要你打开混杂模式就好了”

“那别愣着了,赶紧打开吧”

我激动的让网卡打开了混杂模式,期待监听到别人的通信。

果不其然,一下子就涌来了大量的数据包,搞得我措手不及。

我开始认真工作起来,解析所有的网络通信,把感兴趣的提取下来,汇报给我的主人,主人对我的工作非常满意。

交换机

就这样过了好长一段日子,突然有一天,我发现网络通信中没有了别人的通信,只有小白这台电脑的流量了,我又找上了网卡。

“老哥,谁把你的混杂模式给关了吗?”

“没有啊,你看,这不开着了呢嘛!”

“这就奇怪了,为什么看不到别人通信的流量了?”

“我也母鸡啊,以前经常发生通信冲突,最近这段日子突然也没有了”,网卡说到。

“通信冲突?什么意思?”,我问到。

“集线器不是会广播所有通信嘛,我们所有人都相当于共用了一个线路,别人传输数据的时候就得等着,有时候发到半路上才发现跟别人传输的数据冲突了,就得等会儿重发,我们把这叫CSMA/CD,载波侦听多路访问冲突检测,怪拗口的名字”

原来是这样,但如今这一切都消失了,我感觉事情有些不正常,赶紧把这个消息汇报给了主人,主人得知以后对我做了升级,让我潜入这个家伙那里看看到底发生了什么。

在一个夜深人静的夜晚,顺着网卡老哥连接的那根网线,我偷偷潜入到了网线的那一头,发现了一个黑乎乎的大块头。

好家伙,这个大块头背后有好多网口,连接了好多网线啊,每一个都通向了一台电脑,在背板的铭片上,我还看到这个大块头的名字:交换机。

我决定躲在一旁,偷偷观察它是怎么工作的。

只见这个叫交换机的家伙,拿着一张表格,里面填写了每一个网卡的MAC地址和对应连接的网口,收到数据包后,取出数据包中的目的MAC地址,再找到对应连接的端口,只给这一个端口转发过去,根本没有广播!

这下我总算明白,为什么就算开启混杂模式,也看不到别人的通信了,都怪这个叫交换机的家伙,太可恶了!

不过我有点奇怪,他这个表格是哪里来的,怎么知道哪个网卡对应哪个端口呢,难不成要人工配置,可要是拔了网线换个口插,那不就出错了吗,我百思不得其解,决定再观察观察。

这大晚上的上网的人少,网络流量也少,这一等竟然就是天亮。

第二天,来了一个新的数据包,大块头在它的那张表里面没有找到收件地址,这下有好戏了,看你怎么办。

没想到,这家伙竟然学起了集线器,把这个新的数据包给所有端口都下发下去了,随后发现只有一个端口有响应包过来,然后就把这个端口和这个收件人地址添加到了表格中!好家伙,还挺聪明,会自己学习总结映射关系。

因为担心白天被发现,我不敢久留,撤了回去,随后,我把看到的这些都上报给了主人,没多久,主人再一次对我进行了升级。

ARP欺骗

这一次,我挨个给局域网中的其他电脑发送ARP报文,并在报文中的源IP地址的位置填上了网关(也就是大块头交换机)的IP地址,大伙收到我的报文后,纷纷把网关的MAC地址改成了我所在这台电脑的网卡地址。

好一招偷天换日,所有人都被我蒙在鼓里,他们原来访问互联网要发给网关的数据包,现在都一股脑儿发到了我这边来了,我再转发给真正的网关,我又一次可以监听所有人的网络通信啦!

幸福的日子总是过得很快,没过多久,我发现流量又变少了,不知道谁走漏了风声,它们不再把数据包发到我这里来,而是发给了真正的网关。而且,不管我怎么发送ARP报文欺骗,它们也不再信任我了。

终于有一天,这个电脑小白不知道下载了什么,捆绑安装了一个361杀毒软件,我感觉我的日子快到头了。

我赶紧联系主人,报告我艰难的处境,却发现怎么也连不上了···难道主人也被端了?

《新程序员001:开发者黄金十年》

2001 年创刊,20 年技术见证

人人都是开发者  家家都是技术公司

我偷偷监听了他们的通信流量......相关推荐

  1. electron监听网页_Electron 进程通信

    本文作者:IMWeb laynechen 未经同意,禁止转载 Electron 中的进程分类 在 Electron 中,存在两种进程:主进程和渲染进程. 主进程 (Main Process) 一个 E ...

  2. 行走自由的扫地机器人,可能正在偷偷监听你

    拖着疲惫的身体回到家,辛苦工作了一天的打工人,终于开始了"翻身农奴把歌唱"的生活. 先唤醒年会抽的智能音箱,吩咐它第二天早上叫自己起床上班,再指使前女友送的扫地机器人开始清洁房间, ...

  3. grpc中监听端口添加及绑定

    1.ServerCredentials 分为安全和不安全的两种,实现了添加监听端口 2.端口监听和绑定 其通信图为 ​​​​​​​

  4. 发布订阅模式 仿写Vue事件监听手写js实现

    Vue组件中,可以使用 $emit,$on,$off 分别来分发.监听.取消监听事件实现组件通信,比较方便: 最近空闲时间手撸代码实现了发布订阅模式,可以进行组件通信. 话不多说,直接上代码 /*** ...

  5. wifipumpkin3搭建钓鱼wifi监听用户行为

    wifipumpkin3搭建钓鱼wifi监听用户行为 一.安装wifipumpkin3 git clone https://github.com/P0cL4bs/wifipumpkin3.git cd ...

  6. python scapy sniff timeout_为什么我尝试使用scapy.sniff()函数获取此奇怪的输出,以尝试监听打开的网站的流量?...

    我是Pyhon的新手(主要来自Java),我正在学习Pytohon的课程,该课程适用于Udemy上的安全性,在该课程中提供了一个使用scapy模块实现数据包嗅探器的示例.我正在使用Python 3,这 ...

  7. Socket编程(C语言实现)——TCP协议(网络间通信AF_INET)的流式(SOCK_STREAM)+报式(SOCK_DGRAM)传输【多线程+循环监听】

    Socket编程 目前较为流行的网络编程模型是客户机/服务器通信模式 客户进程向服务器进程发出要求某种服务的请求,服务器进程响应该请求.如图所示,通常,一个服务器进程会同时为多个客户端进程服务,图中服 ...

  8. activemq 开启监听_SpringBoot集成ActiveMQ怎么实现Topic发布/订阅模式通信?

    上一期我们讲了SpringBoot集成activeMQ实现Queue模式点对点通信,这一期我们接着讲SpringBoot集成activeMQ实现Topic发布/订阅模式通信. 发布/订阅模式通信是对点 ...

  9. Android AIDL通信Service死亡监听

    文章目录 一.客户端的监听[服务端]意外死亡 二.服务端监听[客户端]意外死亡 AIDL常用在android服务端与客户端之间的通信中,容易发生客户端或者服务端死亡,无法通知到对端情况,从而造成客户端 ...

最新文章

  1. Go 知识点(07)— 对已经关闭通道进行读写
  2. (原)War3 脚本分析5-基础脚本资源
  3. numpy.where用法
  4. LAPJV算法学习笔记
  5. [译] 如何使用纯函数式 JavaScript 处理脏副作用
  6. ServletConfig接口
  7. 2.1 数个常用的网络命令
  8. 以太坊代码标准是什么_以太坊的包容性开发语言里到底藏着什么秘密?
  9. [渝粤教育] 江西科技师范大学 旅行社经营管理 参考 资料
  10. android放在上个元素的左边代码,控件悬浮在某个控件之上 Android五大布局方式——相对布局(RelativeLayout)属性详解...
  11. linux系统获取光盘信息api,在Visual C#中运用API函数获取系统信息
  12. 不想“被out”?来看看现在的开发者都在做什么
  13. 多校3 1008 Solve this interesting problem
  14. sublime text 2/3 快捷键汇总
  15. 三星 9810 android 9,【极光ROM】-【三星NOTE9 N960X-9810】-【V22.0 Android-Q-TK1】
  16. SPI通信协议_02
  17. 【ProcessOn】在线流程图、思维导图、原型图、UML图制作工具ProcessOn使用
  18. Windows基础 加固
  19. 如何学习verilog,如何快速入门?
  20. RGB和HSV颜色空间

热门文章

  1. 150名打工人被AI判定效率低遭开除,“属实是人工智能,能治工人“
  2. 2020年人工智能领域的最大创新
  3. 「AutoML」激活函数如何进行自动学习和配置
  4. 如何用简单易懂的例子解释隐马尔可夫模型?
  5. AI寒冬论作者:通用人工智能仍是白日梦
  6. SAP MIGO收货界面'批次'分类选项卡里不出现'分类'按钮之对策
  7. 外媒:苹果自动驾驶裁员表明其AI战略发生巨变
  8. SAP WM LQ02 事务代码界面里不能为指定仓库号选择移动类型的问题对策
  9. 业界丨几张图带你看懂人工智能产业
  10. 一文说清AI智能平台