Python实现PPPOE攻击工具,秒杀拨号上网

PPPOE攻击

前言

大家可能对PPPOE不是很熟悉,但是肯定对拨号上网非常熟悉,拨号上网就是用的这种通信协议。一般PPPOE认证上网主要用于校园网或者小区网中,拨号界面如下图所示。

但是PPPOE这种通信协议,是有一些安全漏洞的。下面从三个方面讲解一下PPPOE的攻击方式,以及如何使用Python实现攻击工具。恰西电的认证方式就是这样,可以搞一搞。

第一种方式

账号密码窃取

对于PPPOE认证上网的过程如下图所示,分为发现阶段和会话阶段,发现阶段分为PADI,PADO,PADR,PADS。

其中窃取账号密码的问题就出现在第一步PADI。PPPOE客户端进行连接时,在PADI阶段会发送一个广播包,寻找局域网中的PPPOE服务器,从而完成认证。

这时候我们需要做的是伪装成PPPOE服务器,回复请求信息,抢先和客户端通信,并强制客户端使用明文传输方式,从而获取账号和密码。下面我们通过wireshark抓一下数据包,更加直观的观察一下寻找PPPOE服务器的过程。点击宽带连接,使用Wireshark监听,会发现广播包,这时候pppoe服务器会进行回复。

攻击场景:在本机电脑上开启PPPOE欺骗程序,开始进行监听,并在局域网中的其他电脑上进行宽带连接,观察欺骗效果。如下图所示,已经成功欺骗出了账号和密码。

窃取账号的部分代码内容如下

第二种方式

客户端断网攻击

拨号客户端(宽带连接)与 PPPOE服务器成功连接后,那服务器是如何表示客户端呢?通俗的说,服务器必须要知道客户端是哪一个,这样通信才不能错乱。PPPOE采用的是分配ID的方式,也就是给每个客户端随机分配一个int型的整数。通过wireshark抓包,我们可以清晰地看到ID的分配。

乍一听是没有问题,但是问题正在于ID的范围,为int类型。PPPOE服务器通过分配给客户端一个1-65535的值来唯一标识客户端。只要知道对方电脑MAC地址,循环发送65535个PADT断网包,即可以实现断网攻击,而对方电脑的MAC可以通过ARP请求获得。

什么是PADT断网包?通过wireshark抓包,咱们看一下断网包的内容。断开宽带连接,使用Wireshark监听,会发现PADT断网包,进行数据帧分析和模拟即可。

攻击场景:一台电脑运行断网程序,通过ARP请求获取对方电脑MAC地址,模拟PADT包,将另外一台电脑的宽带连接断掉。

断网攻击的部分代码内容如下

第三种方式

服务器DoS攻击

DoS攻击是针对PPPOE服务器的,其实原理很简单。现在基本上高级点的路由,对ARP洪水攻击都做了很好的防护,对大量的arp包进行了过滤,但是对PPPOE包却没有做防护,使大量的PPPOE包可以直达PPPOE服务器,从而打垮服务器,这样会导致大规模的断网,西电的就是这样。大约三分钟左右,整栋楼的网络都会断掉。不演示了,可能会有“生命”危险。。。。。。

Dos攻击的部分代码内容如下

最后

完整代码

Python实现的PPPOE攻击工具,使用了scapy包,可不要和爬虫框架scrapy混淆了。scapy是一款非常优秀的网络协议工具包,具有发包和收包的功能,非常强大。接下来我们会接着讲解这个scapy包,至于PPPOE攻击工具的完整代码,我会优先上传到知识星球中,运行之前记得安装scapy,更多干货欢迎加入知识星球。

原文发布于微信公众号 - 七夜安全博客(qiye_safe)

原文发表时间:2018-05-04

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏walterlv - 吕毅的博客

在 Windows 安装期间将 MBR 磁盘转换为 GPT 磁盘

2018-02-22 14:13

442
来自专栏tiane12

请勿在VPS上安装360杀毒软件及360安全卫士

1773
来自专栏小文博客

飞行堡垒fx50jk(gtx850m i5-4200h)直播装固态-小文’s blog

1072
来自专栏北京马哥教育

如何保证Linux服务器的安全

很少见有人马上为一台新安装的服务器做安全措施,然而我们生活所在的这个社会使得这件事情是必要的。不过为什么仍旧这么多人把它拖在最后?我已经做了相同的事情,它常常可...

2667
来自专栏Jerry的SAP技术分享

CRM中间件里的CSA队列有什么用

我们有时候会在中间件的事务码SMQ2即Inbound队列查看器里观察到以CSA开头的队列:

2645
来自专栏Jerry的SAP技术分享

CRM中间件里的CSA队列有什么用

我们有时候会在中间件的事务码SMQ2即Inbound队列查看器里观察到以CSA开头的队列:

27610
来自专栏Youngxj

初涉网络安全技术,这些专业术语你知道多少?

1874
来自专栏尚国

EOS节点远程代码执行漏洞细节

漏洞存在于在 libraries/chain/webassembly/binaryen.cpp文件的78行,

764
来自专栏zhisheng

SpringBoot ActiveMQ 整合使用

介绍 ActiveMQ 它是 Apache 出品,最流行的,能力强劲的开源消息总线。ActiveMQ 是一个完全支持 JMS1.1 和 J2EE 1.4 规范的...

3328
来自专栏VMCloud

如何分析 WindowsDump:Dump 起源与初始设置(一)

Microsoft 推出 Dump 机制在宕机时先进行蓝屏收集宕机前状态,并且可以捕获到导致异常的关键错误,当 Windows 出现异常 Crash 时 Win...

2420

扫码关注云+社区