Auteur Sujet: Point sur l'IPTV et l'IPRadio autour de TVradioZap  (Lu 49818 fois)

Optix et 3 Invités sur ce sujet

artemus24

  • Abonné SFR fibre FttH
  • *
  • Messages: 2 203
  • Montignac Lascaux (24)
Point sur l'IPTV et l'IPRadio autour de TVradioZap
« Réponse #204 le: Hier à 11:04:37 »
@ Rooot : Quelle protection ?
Je n'utilise pas les navigateurs mais l'application M3U.IPTV.

jeremyp3

  • Abonné Orange Fibre
  • *
  • Messages: 794
  • Pau (64)
Point sur l'IPTV et l'IPRadio autour de TVradioZap
« Réponse #205 le: Hier à 11:11:19 »
aucun problème ici pour passer le m3u8 a ffmpeg sans rien de spécial. juste le lien.

rooot

  • Abonné RED by SFR fibre FttH
  • *
  • Messages: 2 844
  • 🔵🔵🔵🔵⚪⚪⚪⚪🔴🔴🔴🔴
Point sur l'IPTV et l'IPRadio autour de TVradioZap
« Réponse #206 le: Hier à 11:11:50 »
http-referrer=https://www.netplus.chsi tu retires cette ligne, est-ce que ca fonctionne ? si oui alors c'est que ce n'est pas necessaire.
si ca ne fonctionne pas c'est qu'il est indispensable de faire croire au serveur web qui sert le m3u8 que la requete provient de "https://www.netplus.ch" et non d'un lien direct ou bien d'un autre site.

par ailleur, je vien de créer un m3u avec les infos que tu as donné et chez moi ca ne fonctionne pas, j'ai toujours un time out.
j'ai essayé en ligne de commande aussi et c'est pareil :
C:\Program Files\VideoLAN\VLC>vlc --http-referrer="https://www.netplus.ch" --http-user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0 Safari/537.36" --network-caching=2000 "https://viamotionhsi.netplus.ch/live/eds/novo19/browser-HLS8/novo19.m3u8"

rooot

  • Abonné RED by SFR fibre FttH
  • *
  • Messages: 2 844
  • 🔵🔵🔵🔵⚪⚪⚪⚪🔴🔴🔴🔴
Point sur l'IPTV et l'IPRadio autour de TVradioZap
« Réponse #207 le: Hier à 11:14:57 »
aucun problème ici pour passer le m3u8 a ffmpeg sans rien de spécial. juste le lien.
si tu mets cette url dans un navigateur, ca te telecharge le m3u8 ?

edit : je viens de tester avec un VPN, effectivement je parviens a télécharger le fichier, mon IP doit etre blacklistée chez eux.

et j'arrive a lire le fichier, avec un vpn, depuis un player en ligne : https://viloud.tv/hls-stream-tester/
donc ces 2 lignes ne sont pas utiles
#EXTVLCOPT:http-referrer=https://www.netplus.ch
#EXTVLCOPT:http-user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0 Safari/537.36

il y a juste un ban geoip peut etre ?

artemus24

  • Abonné SFR fibre FttH
  • *
  • Messages: 2 203
  • Montignac Lascaux (24)
Point sur l'IPTV et l'IPRadio autour de TVradioZap
« Réponse #208 le: Hier à 11:47:51 »
@  Rooot : je ne cherche pas à savoir si c'est utile ou pas mais à faire proprement la déclarative pour que cela fonctionne partout.

rooot

  • Abonné RED by SFR fibre FttH
  • *
  • Messages: 2 844
  • 🔵🔵🔵🔵⚪⚪⚪⚪🔴🔴🔴🔴
Point sur l'IPTV et l'IPRadio autour de TVradioZap
« Réponse #209 le: Hier à 13:29:48 »
@  Rooot : je ne cherche pas à savoir si c'est utile ou pas mais à faire proprement la déclarative pour que cela fonctionne partout.
Ce que tu cherches a faire ne concerne que toi, ça n'empèche pas ces 2 lignes d'êtres inutiles car elles n'apportent rien.
Pour moi, quand je vois un referer et un user-agent d'indiqués, ca veut dire que c'est indispensable pour contourner une exigence du côté serveur, sans quoi ça ne marcherait pas.
si tu veux alourdir ton fichier avec des lignes inutiles, pas de souci, je suis sur qu'il y a encore 5 ou 6 headers inutiles que tu peux encore ajouter pour faire plus propre  ;D

F6FLT

  • Abonné Orange Fibre
  • *
  • Messages: 642
  • 44
    • TVradioZap
Point sur l'IPTV et l'IPRadio autour de TVradioZap
« Réponse #210 le: Hier à 14:10:11 »
ha ok, il y a une protection pour empecher le telechargement direct depuis le navigateur donc.

Oui et non. Le lien https://viamotionhsi.netplus.ch/live/eds/novo19/browser-HLS8/novo19.m3u8 mis dans la barre d'adresse du navigateur est bien traité. C'est un simple lien de redirection, comme peut l'être un lien court, vers une adresse de type :
https://cache1a.netplus.ch/tok_ey[...]yD6fg==/live/eds/novo19/browser-HLS8/novo19.m3u8
qui est le m3u8 "master", qui te fournit la liste des M3U8 "media" dont celui que tu choisiras te fournira la liste des trames TS des flux réels.

Avec Vivaldi (la base est Chrome), un clic droit sur le lien téléchargé à la première adresse, te donne la seconde adresse car c'est l'adresse réellement téléchargée. Donc il n'y a là aucune protection et tu peux avoir l'adresse utile.

Là où ça se complique, c'est si tu veux faire ça depuis la page d'un autre site, par exemple depuis un lecteur embarqué dans une page comme celle de TVradioZap ou un script JS qui tournerait sur un autre site. On entre dans le "cross-domain", autrement dit l'obtention de contenu d'un domaine http à partir d'un autre domaine http. Ceci est extrêmement contrôlé par les navigateurs, pour des questions de sécurité, pas de faille à ma connaissance. Si un site ne veut pas autoriser l'exploitation de ses contenus depuis un autre domaine que le sien ou ceux accrédités, il le peut très facilement. C'est ce que fait Net+ mais partiellement.  Net+ te refuse le premier m3u8... mais pas le second !

Alors comme le second est le fichier utile, que ce fichier utile a la même adresse quelque soit celui qui la demande au lien de redirection, il suffit de le demander par un autre moyen, par exemple par un serveur. Un serveur, contrairement à un navigateur, n'est pas soumis aux interdictions du cross-domain, il peut heureusement accéder à tous les liens du WEB. C'est aussi le cas des applis audio/vidéo et de tout ce qui est hors navigateur, donc le 1er lien s'ouvre avec VLC.

F6FLT

  • Abonné Orange Fibre
  • *
  • Messages: 642
  • 44
    • TVradioZap
Point sur l'IPTV et l'IPRadio autour de TVradioZap
« Réponse #211 le: Hier à 14:12:46 »
On continue l'analyse :

Le lien M3U8 media utile indiqué plus haut possède une séquence qui commence par tok_key et finit par "==", ce qui est typique d'un codage d'infos en base 64, très utilisé partout. Le décodage te donne les infos requises de l'url. Dans le cas présent on obtient :
?{"alg":"HS512","typ":"JWT"}{"exp":"1757898143","sip":"","path":"/live/eds/novo19/browser-HLS8/","session_cdn_id":"0a9c1edf417486b6","session_id":"","client_id":"","device_id":"","max_sessions":0,"session_duration":0,"url":"https://10.0.229.23","session_timeout":0,"aud":"53","sources":[38]} "tbgfhw;\o1>\3
.rl-eo

"exp" est la date UNIX d'expiration du lien. L'IP 10.0.229.23 est une IP privée a priori sans rapport avec celui qui télécharge mais je ne suis pas un spécialiste. On voit qu'il y a une référence de session, j'ignore à quoi elle peut servir ainsi que les autres champs. Et après ""sources":[38]" et la dernière accolade, c'est le cheksum. Là c'est bien une protection, car si on ignore la façon de calculer le checksum, un lien créé avec des infos arbitraires qu'on voudrait mettre, ne sera pas valide.

Cette façon de faire est très commune. Je l'ai explicitée car c'est très banal et très courant, y compris dans le domaine du streaming. On a rien de bien méchant ici.
D'autres liens fournissent bien plus d'infos sur celui qui streame, ses matériels, ses applis, l'IP d'où vient le lien... infos qu'on se repasse entre services de connivence et entre domaines différents. Si vous saviez tout le fatras de trafic qui se fait derrière notre dos, vous seriez horrifié. Connaître les liens qu'utilise un site dans votre navigateur n'est pas tenter de hacker un site, c'est lui qui vous les fournit, ces liens, mais surveiller son hygiène.

rooot

  • Abonné RED by SFR fibre FttH
  • *
  • Messages: 2 844
  • 🔵🔵🔵🔵⚪⚪⚪⚪🔴🔴🔴🔴
Point sur l'IPTV et l'IPRadio autour de TVradioZap
« Réponse #212 le: Hier à 15:37:15 »
Oui et non.
ce n'est pas oui et non, c'est non tout court dans mon cas. c'est pourquoi j'en ai déduit sur le coup que sans ces headers il n'était pas possible de récupérer le fichier, mais finalement ce n'est pas ca, en passant par un VPN je parviens bien a récupérer le fichier et afficher le flux video.
il y a probablement un blocage géoip, je ne vois pas trop pourquoi mon ip serait blacklisté.

artemus24

  • Abonné SFR fibre FttH
  • *
  • Messages: 2 203
  • Montignac Lascaux (24)
Point sur l'IPTV et l'IPRadio autour de TVradioZap
« Réponse #213 le: Hier à 15:59:32 »
@ Rooot : Sous Debian Trixie, j'ai eu besoin de faire ces déclaratives avec FFMPEG, ainsi qu'avec les players comme mpv.

Si je passe par le site web de m3u-iptv, je ne peux pas lire les flux iptv de netplus.tv. Je suppose qu'il y a un blocage je ne sais où alors que par l'application m3u-iptv dans mon téléviseur samsung ou celle installé dans windows 10 pro fonctionne parfaitement.

Je ne vais pas faire du spécifique pour chaque player que ce soit sous windows, debian ou mon téléviseur SamSung. J'ai une seul playlist "tnt.m3u", une autre nommé "netplus.m3u", ... que j'utilise un peu partout. Comme qui dirait, le plus peu le moins.

F6FLT

  • Abonné Orange Fibre
  • *
  • Messages: 642
  • 44
    • TVradioZap
Point sur l'IPTV et l'IPRadio autour de TVradioZap
« Réponse #214 le: Hier à 18:58:41 »
ce n'est pas oui et non, c'est non tout court dans mon cas. c'est pourquoi j'en ai déduit sur le coup que sans ces headers il n'était pas possible de récupérer le fichier, mais finalement ce n'est pas ca, en passant par un VPN je parviens bien a récupérer le fichier et afficher le flux video.
il y a probablement un blocage géoip, je ne vois pas trop pourquoi mon ip serait blacklisté.

Oui, c'est bizarre. Je viens de vérifier avec m3u-iptv et Smarters IPTV Pro dans un émulateur Android, et avec une liste de lecture avec Novo9 en seule chaîne.
Les 2 applis affichent sans problème la chaîne. J'ai modifié le "user-agent", l'ai laissé vide puis rempli avec un texte de n'importe quoi, et ça marche toujours. Aucun "referrer" n'a été utilisé.

Le problème est sûrement ailleurs. Jusqu'à présent, c'est seulement dans le navigateur que j'ai constaté un problème.

Au tout début que j'ai mis du Net+ dans tvrz, ça marchait. Puis ça n'a plus marché. J'ai embarqué alors un autre player m3u8 d'un autre domaine que tvradiozap.eu, spécifiquement pour les liens net+, et ça a remarché. Mais un ou 2 jours plus tard, ça ne marchait plus. J'ai alors remplacé le 1er player par un second d'un 3ème domaine, et ça a remarché. Mais rebelotte ! Le lendemain, ça ne marchait plus. Ils sont très joueurs, les Helvètes  :). Je pense qu'ils blackboulaient au fur et à mesure les noms de domaine des players, mais seulement pour le m3u8 au lien https://viamotionhsi.netp..., pas pour le m3u8 (ni les trames) vers lequel le 1er redirige (peut-être que c'est impossible parce qu'en cache, ou qu'ils n'ont pas la main au niveau des url redirigées mais louent un service de streaming technique... je n'en sais rien).

J'ai alors fait un script qui récupère simplement le lien "master" vers lequel le lien https://viamotionhsi.netp... nous redirige. Et là tout a bien marché à nouveau dans le player standard de tvrz. Un navigateur est très bavard pour passer plein d'infos sur ta config au service à l'autre bout, dont le domaine. Par contre les applis hors navigateur ne fournissent rien sauf le user-agent qu'on peut modifier à souhait, donc au final je ne vois pas du tout pourquoi ça coince chez toi, sauf si ton appli tournait sur un nom de domaine.
Il faudrait que tu mettes en route un traceur http pour qu'on voit les échanges.

F6FLT

  • Abonné Orange Fibre
  • *
  • Messages: 642
  • 44
    • TVradioZap
Point sur l'IPTV et l'IPRadio autour de TVradioZap
« Réponse #215 le: Hier à 19:19:43 »
@rooot

Le lien de tvrz, par exemple https://tvradiozap.eu/tools/np-m3u8.php/novo19.m3u8, fait exactement la même chose que https://viamotionhsi.netplus.ch/live/eds/novo19/browser-HLS8/novo19.m3u8 : rediriger vers le même m3u8 master. Mais sans aucune restriction.
Si ce lien marche dans ton player et pas le second, c'est bien que nos voisins d'Helvitie savent quelque chose sur ta config qui ne leur plait pas.