成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

我們一起聊聊UPNP和DLNA協(xié)議

網(wǎng)絡(luò) 通信技術(shù)
通用即插即用(英語(yǔ):Universal Plug and Play,簡(jiǎn)稱UPnP)是由“通用即插即用論壇”(UPnP? Forum)推廣的一套網(wǎng)絡(luò)協(xié)議。 UPnP這個(gè)概念是從即插即用(Plug-and-play)派生而來(lái)的,即插即用是一種熱拔插技術(shù)。

前言

沒(méi)有情情愛(ài)愛(ài),只有技術(shù)相伴,給大家分享一下UPnP和DLNA協(xié)議;

UPnP的概念

通用即插即用(英語(yǔ):Universal Plug and Play,簡(jiǎn)稱UPnP)是由“通用即插即用論壇”(UPnP? Forum)推廣的一套網(wǎng)絡(luò)協(xié)議。該協(xié)議的目標(biāo)是使家庭網(wǎng)絡(luò)(數(shù)據(jù)共享、通信和娛樂(lè))和公司網(wǎng)絡(luò)中的各種設(shè)備能夠相互無(wú)縫連接,并簡(jiǎn)化相關(guān)網(wǎng)絡(luò)的實(shí)現(xiàn)。UPnP通過(guò)定義和發(fā)布基于開(kāi)放、因特網(wǎng)通訊網(wǎng)協(xié)議標(biāo)準(zhǔn)的UPnP設(shè)備控制協(xié)議來(lái)實(shí)現(xiàn)這一目標(biāo)。 UPnP這個(gè)概念是從即插即用(Plug-and-play)派生而來(lái)的,即插即用是一種熱拔插技術(shù)。

通俗點(diǎn)講目前一般都用在路由器上面,如下截圖所示

關(guān)于UPnP協(xié)議棧;

關(guān)于UPnP工作流程

1.尋址

DHCP協(xié)議;

2.發(fā)現(xiàn)

使用的是SSDP協(xié)議,這是一個(gè)工作在UDP上的HTTP協(xié)議

3.描述

通過(guò)掃描端口,遍歷路徑,可以發(fā)現(xiàn)路由器的UPnP服務(wù)接口;當(dāng)然每家廠商有自己的固定路徑后綴,也可以網(wǎng)上搜索

<?xml version="1.0"?>
<root xmlns="urn:schemas-upnp-org:device-1-0">
<specVersion>
<major>1</major>
<minor>0</minor>
</specVersion>
<device>
<deviceType>urn:schemas-upnp-org:device:InternetGatewayDevice:1</deviceType> //設(shè)備類型,格式為:“urn:schemas-upnp-org:device:deviceType:v”,這里deviceType和v是由設(shè)備定義的。
<presentationURL>http://192.168.0.1:80</presentationURL>
<friendlyName>Wireless N Router MW313R</friendlyName> //一個(gè)更加友好的設(shè)備名
<manufacturer>MERCURY</manufacturer> //制造商
<manufacturerURL>http://www.mercurycom.com.cn</manufacturerURL>
<modelDescription>MW313R 5.0</modelDescription>
<modelName>MW313R</modelName>
<modelNumber>5.0</modelNumber>
<UDN>uuid:upnp-InternetGatewayDevice-4D5A5C269D27</UDN> //設(shè)備的UUID
<UPC>123456789001</UPC>
<serviceList>
<service>
<serviceType>urn:schemas-upnp-org:service:Layer3Forwarding:1</serviceType>
<serviceId>urn:upnp-org:serviceId:L3Forwarding1</serviceId>
<controlURL>/l3f</controlURL> //用于控制的URL
<eventSubURL>/l3f</eventSubURL> //用于訂閱事件的URL
<SCPDURL>/l3f.xml</SCPDURL> //服務(wù)描述的URL
</service>
</serviceList>
<deviceList>
<device>
<deviceType>urn:schemas-upnp-org:device:WANDevice:1</deviceType>
<friendlyName>WAN Device</friendlyName>
<manufacturer>MERCURY</manufacturer>
<manufacturerURL>http://www.mercurycom.com.cn</manufacturerURL>
<modelDescription>WAN Device</modelDescription>
<modelName>WAN Device</modelName>
<modelNumber>1.0</modelNumber>
<modelURL></modelURL>
<serialNumber>12345678900001</serialNumber>
<UDN>uuid:upnp-WANDevice-4D5A5C269D27</UDN>
<UPC>123456789001</UPC>
<serviceList>
<service>
<serviceType>urn:schemas-upnp-org:service:WANCommonInterfaceConfig:1</serviceType>
<serviceId>urn:upnp-org:serviceId:WANCommonInterfaceConfig</serviceId>
<controlURL>/ifc</controlURL>
<eventSubURL>/ifc</eventSubURL>
<SCPDURL>/ifc.xml</SCPDURL>
</service>
</serviceList>
<deviceList>
<device>
<deviceType>urn:schemas-upnp-org:device:WANConnectionDevice:1</deviceType>
<friendlyName>WAN Connection Device</friendlyName>
<manufacturer>MERCURY</manufacturer>
<manufacturerURL>http://www.mercurycom.com.cn</manufacturerURL>
<modelDescription>WAN Connection Device</modelDescription>
<modelName>WAN Connection Device</modelName>
<modelNumber>1</modelNumber>
<modelURL></modelURL>
<serialNumber>12345678900001</serialNumber>
<UDN>uuid:upnp-WANConnectionDevice-4D5A5C269D27</UDN>
<UPC>123456789001</UPC>
<serviceList>
<service>
<serviceType>urn:schemas-upnp-org:service:WANIPConnection:1</serviceType>
<serviceId>urn:upnp-org:serviceId:WANIPConnection</serviceId>
<controlURL>/ipc</controlURL>
<eventSubURL>/ipc</eventSubURL>
<SCPDURL>/ipc.xml</SCPDURL>
</service>
</serviceList>
</device>
</deviceList>
</device>
</deviceList>
</device>
</root>

4.控制

使用SOAP協(xié)議來(lái)完成控制

5.事件

通過(guò)返回xml消息,使用GENA格式

UPnP相關(guān)測(cè)試

miranda

了解到原來(lái)kali是自帶這個(gè)工具,但是新版本刪掉了,找到了github的源文件,可以使用;https://github.com/0x90/miranda-upnp

沒(méi)太清楚為什么新版kali刪掉這個(gè)工具,但是了解下來(lái),UPnP基本上路由器都會(huì)默認(rèn)開(kāi)啟,雖然UPnP協(xié)議沒(méi)有任何身份驗(yàn)證機(jī)制,但是實(shí)際利用場(chǎng)景還是比較弱,如果路由器是公網(wǎng)ip還說(shuō)可以建一條出網(wǎng)的通道,一般來(lái)說(shuō)路由器是局域網(wǎng)ip,然后能開(kāi)啟的場(chǎng)景下也就已經(jīng)進(jìn)入內(nèi)網(wǎng)了,其他出網(wǎng)的辦法也很多,UPnP協(xié)議也只是建一條轉(zhuǎn)發(fā)路由,前提還得是轉(zhuǎn)發(fā)的ip存在問(wèn)題

掃描模式:

  • pcap:被動(dòng)發(fā)現(xiàn)設(shè)備通過(guò)嗅探設(shè)備接入網(wǎng)絡(luò)時(shí)發(fā)送的NOTIFY消息獲取設(shè)備信息。
  • msearch:通過(guò)主動(dòng)發(fā)送M-serach消息來(lái)發(fā)現(xiàn)設(shè)備。(一般使用msearch比較快) 測(cè)試下來(lái),我是msearch發(fā)現(xiàn)不了,但是用msearch掃描了一段時(shí)間后,切pcap就可以立馬出現(xiàn)結(jié)果

信息獲取

發(fā)現(xiàn)設(shè)備后可用host命令來(lái)查看詳細(xì)信息。

  • host list:查看發(fā)現(xiàn)的設(shè)備列表;
  • host get:獲取信息(查詢summary之前需執(zhí)行);
  • host info:顯示查詢到的信息(n為設(shè)備在列表中的編號(hào));
  • host summary 0 :顯示xml文件的摘要信息;

利用

host info 0 deviceList //設(shè)備列表,或者說(shuō)設(shè)備信息
host info 0 deviceList WANConnectionDevice services //設(shè)備服務(wù)列表

host info 0 deviceList WANConnectionDevice services WANIPConnection serviceStateVariables //服務(wù)狀態(tài)列表
host info 0 deviceList WANConnectionDevice services WANIPConnection actions //服務(wù)控制列表,操作功能

host send 0 WANConnectionDevice WANIPConnection AddPortMapping //規(guī)則配置

登陸后臺(tái)可以看到規(guī)則已配置,并且生效了

其他功能解析,這部分其實(shí)有些是廠商自定義的,有些是默認(rèn)自帶的功能

AddPortMapping : {}
GetNATRSIPStatus : {}
GetGenericPortMappingEntry : {}
GetSpecificPortMappingEntry : {}
ForceTermination : {}
GetExternalIPAddress : {}
GetConnectionTypeInfo : {}
GetStatusInfo : {}
SetConnectionType : {}
DeletePortMapping : {}
RequestConnection : {}

小技巧:由于發(fā)現(xiàn)upnp服務(wù)比較困難,掉線或者退出進(jìn)程后,需要重新發(fā)現(xiàn),又只能等;找了一下,官方提供了存儲(chǔ)和恢復(fù)的功能

upnp> save info 0 wrt54g
Host info for '192.168.1.1:2869' saved to 'info_wrt54g.mir'

upnp> save data wrt54g
Host data saved to 'struct_wrt54g.mir'

upnp> load struct_wrt54g.mir
Host data restored:
[0] 192.168.1.1:2869

DLNA簡(jiǎn)要概述

數(shù)字生活網(wǎng)絡(luò)聯(lián)盟(英語(yǔ):Digital Living Network Alliance,簡(jiǎn)稱:DLNA)是一個(gè)由消費(fèi)性電子、移動(dòng)電話以及電腦廠商組成的聯(lián)盟組織。該組織的目標(biāo)在于創(chuàng)建一套可以使得各廠商的產(chǎn)品互相連接,互相適應(yīng)的工業(yè)標(biāo)準(zhǔn),從而為消費(fèi)者實(shí)現(xiàn)數(shù)字化生活。聯(lián)盟成員包括飛利浦、三星電子、松下、惠普、索尼、微軟、英特爾和諾基亞在內(nèi)的眾多業(yè)界領(lǐng)袖。

其實(shí)DLNA應(yīng)該是一系列協(xié)議棧的組合統(tǒng)稱,并不是一個(gè)單獨(dú)的協(xié)議

NetWorking Connectivity 網(wǎng)絡(luò)互聯(lián)方式:802.3 以太網(wǎng),802.11WiFi,802.15 藍(lán)牙;

NetWorking Stack 網(wǎng)絡(luò)協(xié)議棧:IPv4、IPv6;

Device Discovery&Control 設(shè)備發(fā)現(xiàn)和控制:UPnP,具體參考UPnP的相關(guān)文檔;

Media Management媒體管理:識(shí)別、管理、分發(fā)、記錄;

Media Transport 媒體傳輸:HTTP;

Media Formats媒體格式:各種音頻圖片格式:avi、rmvb、mkv;

Remote UI 遠(yuǎn)程用戶接口:接口;

可以看到風(fēng)險(xiǎn)點(diǎn)主要在3、5、7, 3的分析還是參考 UPnP部分章節(jié),5、7也就是常規(guī)的http服務(wù),由于不管是DLNA的設(shè)計(jì)還是UPnP原協(xié)議的設(shè)計(jì)均不存在認(rèn)證授權(quán)這一環(huán)節(jié),主要是服務(wù)發(fā)現(xiàn),以及請(qǐng)求構(gòu)造;只要進(jìn)入局域網(wǎng)能夠連接服務(wù),均可以任意調(diào)用服務(wù);

由于手上沒(méi)有DLNA服務(wù)的設(shè)備,可以參考: https://breezetemple.github.io/2019/02/25/dlan-introduction/。

從文章中可以發(fā)現(xiàn),不管是DLNA還是UPnP,都是通過(guò)soap來(lái)完成控制調(diào)用,格式也都是xml; 但是miranda-upnp是針對(duì)upnp的,不知道是否也能發(fā)現(xiàn)基于UPnP的DLNA服務(wù),即使能發(fā)現(xiàn)估計(jì)后續(xù)的服務(wù)發(fā)現(xiàn)需要調(diào)整源碼的xml解析;具體參考源代碼解析。

總結(jié)

不管是UPnP還是DLNA都是不存在驗(yàn)證授權(quán)機(jī)制,也就是說(shuō)只要進(jìn)入局域網(wǎng)就可以任意調(diào)用,如果只是UPnP,一般用于路由器上路由配置,鏈路轉(zhuǎn)發(fā),然后服務(wù)一般默認(rèn)開(kāi)啟,這個(gè)利用場(chǎng)景相對(duì)風(fēng)險(xiǎn)較低一些,因?yàn)樾枰谄渌O(shè)備存在問(wèn)題,且路由器為公網(wǎng)ip的情況,才能實(shí)現(xiàn)公網(wǎng)直接訪問(wèn)的利用場(chǎng)景,其他場(chǎng)景的利用都是沒(méi)有必要使用到這個(gè)場(chǎng)景的(也可能是我沒(méi)有想到);DLNA服務(wù)一般用于投屏,這個(gè)就是直接可以利用的;然后還有特殊場(chǎng)景,視頻流拉取,操作指令控制等。

留個(gè)坑,miranda源代碼解析;

參考:

https://blog.csdn.net/braddoris/article/details/41646789

https://breezetemple.github.io/2019/02/25/dlan-introduction/

https://github.com/CharonChui/AndroidNote/blob/master/VideoDevelopment/DLNA%E7%AE%80%E4%BB%8B.md

責(zé)任編輯:武曉燕 來(lái)源: FreeBuf.COM
相關(guān)推薦

2022-02-23 08:41:58

NATIPv4IPv6

2023-12-28 09:55:08

隊(duì)列數(shù)據(jù)結(jié)構(gòu)存儲(chǔ)

2023-08-10 08:28:46

網(wǎng)絡(luò)編程通信

2023-08-04 08:20:56

DockerfileDocker工具

2023-06-30 08:18:51

敏捷開(kāi)發(fā)模式

2022-05-24 08:21:16

數(shù)據(jù)安全API

2023-09-10 21:42:31

2023-05-31 08:42:02

管理產(chǎn)品技術(shù)項(xiàng)目

2021-08-27 07:06:10

IOJava抽象

2024-02-20 21:34:16

循環(huán)GolangGo

2022-12-07 09:01:14

布局容器VStack?

2023-10-31 09:04:21

CPU調(diào)度Java

2024-01-15 08:41:25

SwiftTypeScrip語(yǔ)法

2023-10-31 08:10:24

域名域名解析服務(wù)器

2024-11-28 09:57:50

C#事件發(fā)布器

2021-08-12 07:49:24

mysql

2023-07-24 09:41:08

自動(dòng)駕駛技術(shù)交通

2022-10-08 00:00:05

SQL機(jī)制結(jié)構(gòu)

2024-07-26 09:47:28

2023-03-26 23:47:32

Go內(nèi)存模型
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 91九色porny首页最多播放 | 欧洲精品一区 | 欧美午夜精品 | 一区二区播放 | 亚洲精品欧美一区二区三区 | 四虎影音| 久久新视频 | 精品视频网 | 国产精品夜色一区二区三区 | 久久久久国产精品一区二区 | 亚洲成av片人久久久 | 亚洲午夜在线 | av网站免费观看 | 久久毛片| 懂色中文一区二区在线播放 | 日日日视频 | 97成人免费| 日日夜夜精品免费视频 | 久久国产精品免费视频 | 黄色在线网站 | 欧美激情一区二区三级高清视频 | av中文字幕在线观看 | 欧美一区在线视频 | 国产精品久久久久无码av | 国产一区二区在线视频 | 1级毛片 | 国产日韩免费视频 | 看一级黄色毛片 | 亚洲欧美一区在线 | 久久免费精品 | 色婷婷影院 | 成人国产精品久久 | 国产一区二区三区色淫影院 | 国产精品激情 | 在线免费国产视频 | av网站免费观看 | 亚洲二区视频 | 日韩一区二区在线看 | 国产精品久久久亚洲 | 高清一区二区三区 | 色必久久|