用一首歌曲来谱写RTMP协议分析

6>发散思维(留个大年夜家的思虑问题)(B6)

这个渗透实验的成功,让我想到一些比如爱奇艺,腾讯视频,优酷等要看那些美国大年夜片必须要买VIP才能不雅看,并且最紧张的是可以试看几分钟,然则这些视频传输是基于Http协议的,或者说是一个客户端和办事器端哀乞降应答的标准(TCP)!这个方面我之前钻研过,在此就不赘述了!大年夜家可以再脑袋大年夜开一点钻研钻研!

四、修复规划

1>协议不变的根基上,总体思路:首先明确破绽点,然后明确代码块,再加权限函数

为了让我这篇技巧稿加倍有情趣,盘算用一首歌曲的布局来命名我整篇文章的脉络

一、前序

近来在重温由W.Richard Stevens 的传世之作《TCP/IP详解》,看到第12章TCP ,基于传输层有TCP 、 UDP 、 TLS 、DCCP 、SCTP 、RSVP 、PPTP等,那我好奇那基于TCP有哪些协议呢?在Google里面查找了一下,有一个协议映入眼帘 RTMP ,RTMP(实时消息传输协议)是Adobe 公司开拓的一个基于TCP的利用层协议,主要用来在Flash/AIR平台和支持RTMP协议的流媒体/交互办事器之间进行音视频和数据通信RTMP协议没听过啊,一会儿激起了我想要揭开它的面纱的感动,大年夜概钻研了RTMP协议整整3天光阴,试图想要找出一些破绽出来,幸运的是我找到了!很鸡冻,下面便是我对此协议的阐发

二、RTMP协议阐发

1) 播放一个RTMP协议的流媒体必要颠末:

1>握手 2> 建立链接 3>建立流 4>播放 5>发送 ————–

1>握手(Handshark)

Handshake doneHandshake done

Note:交互示意图就不解说了,很简单!为了让本技巧稿有很好的易读性,我尽力注释!

2>建立链接(ConnectResponse)

3>建立流

4>播放

5>发送(Send)—-Metadata

2)用我的瑰宝wireshark抓包来阐发一下历程

1>抓包:

2>RTMP消息布局:

照样用XMind做个示意图吧!

要想在响应的收集情况上传输就必要将消息拆分成较小的数据块

3>消息块的报文布局:

Note:光阴戳:因为光阴戳在电子取证中的紧张感化及其司法职位地方,光阴戳系统必须拥有极高的安然级别, 安然保护应包括物理情况安然和软件安然

4>RTMP消息分块

Message被瓜分为几个消息块的历程中, Message Body大年夜小固定的消息块(Chunk Size,默认128个字节)并在其首部加上Chunk Header 就组成了响应的消息块

Eg:309字节的消息块进行分块示意图如下所示:

3) HnadsShark阶段的源码阐发

三、渗透测试&

阐发到RTMP居然是未加密和谐,很兴奋!然后就查了一下此协议的都利用在哪些方面,结果是:流媒体/交互办事器之间进行音视频和数据通信 ,我第一就想到的利用处景是当今炙手可热的直播平台,随便百度了一下,点进去一个直播平台如下图:

哇塞,可爱的妹子,心里想再瞅瞅,不一会有有一个恶心的弹窗蹦出来,如下图:

[1] [2]下一页

我绝不踌躇的关闭这个弹窗,心里想:还敢不敢让我安安偷偷的看这个直播,没过30s又呈现这个弹窗!我明白了这个直播平台想要网络我的小我信息不认证不给看!心里憋屈,想着能不能绕过注册认证看直播呢?反正已经知道RTMP协议是未加密的,是明文传输的!先抓包看一下再说

Note:1>想要抓到完备的三次握手包,必须是在免费不雅看的那段光阴进行抓包,弹窗后后抓的包是不完备的!

2>因为这种通信模式是最常见的C/S模式,忽然让我想到刚刚分享了Rtmp的消息布局,Play/Pause它是C/S交互的字符串标志!

Note:ID(15-20)是认真发送AMF编码的敕令,认真User与Server之间的交互 eg:Play/Pause

也便是Rtmp协议里面肯定有”play”这个字符串!然后用wireshark的过滤器进行字符串关键字的查询;因为是未加密的协议,只要我找到这个播放的URL地址,再找个可以播放这种流式协议的播放器不就大年夜功告成了吗?忽然脑袋中灵光乍现,记得在2017-7-27的BUF早餐铺就有报道一个内容是: 关于因频繁杀后台,VLC播放器将华为机型列入黑名单

Note: VLC是开源播放器利用,可播放大年夜多半多媒体文件,以及 DVD、音频 CD、VCD 及种种流媒体协议!恰恰得来全不费工夫!

JustDo It !

1>首先筛选出字符串为”rtmp”—-(B1)

Note: 右下角的ASCII区明文显示:rtmp://pull.kktv8.com:1935/livekktv

当时有点鸡冻,直接将这部分url地址粘贴在VLC的没有打开!

2>我居然忘怀一个最紧张的字符串”Play”,赶快再筛选一次—-(B2)

Note:呈现了!是:128128278

3>URL组合:rtmp://pull.kktv8.com:1935/livekktv/128128278—-(B3)

4>Play it!(B4)

5>Bingo—>妹子终于现身(B5)

Note:RTMP RTSP 协议都可以用来做视频直播,只要我们拿到它们的URL,都可以经由过程VLC Media Player进行播放查看

必要加的权限函数如下://类似于大年夜家平日在数据库里边添加校验位一个感化

if (ReadN(r,(char*)serversig,RTMP_SIG_SIZE)!=RTMP_SIG_SIZE)

return FALSE;

if (!WriteN(r,(char*)reply,RTMP_SIG_SIZE))

return FALSE;

2>应用加密协议RTMPS协议;

3>让用户不要试看,一点击进去就必要认证,防止捕获到完备的数据包;

整首歌的布局是:C+A+B+D+B1+B2+B3+B4+B5+B6+E;

熬夜写歌,是否动听!

上一页[1] [2]

赞(0) 打赏
分享到: 更多 (0)
免责申明:本站所有资料均来自于网络,版权归原创者所有!本站不提供任何保证,不保证真实性,并不承担任何法律责任

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

阿里云优惠网 更专业 更优惠

阿里云优惠券阿里云大礼包