18
mars
'11

Meeting HZV du 5 mars 2011

Publié le 18 mars 2011

J'avais posté il y a quelques semaines sur le site d'HZV le PDF du workshop que j'ai animé au dernier meeting, sans plus. Ce meeting a été streamé, et enregistré (via livestream). J'ai pris le temps de retoucher la vidéo cette semaine, et je la mets donc à disposition ainsi que l'application Android nommée "Crackoid", qui a servi d'exemple durant ce workshop

Vidéo du workshop (Ogg Vorbis, 2h40)

Bon je sais, la vidéo est loin d'être de bonne qualité, mais que voulez-vous, on a fait avec les moyens du bord. Pour le prochain meeting, on a investi dans une caméra HD 720p, qui permettra d'avoir une bien meilleure résolution.

<center><video controls> <source src="http://hackerzvoice.net/repo_hzv/meetings/hzvmeet-workshop-android.ogg"> </video></center>

Pour ceux qui ne peuvent visualiser la vidéo, elle est disponible en téléchargement ici

Crackme Android & slides

Le crackme Android que j'avais développé à l'occasion de ce meet est aussi disponible en téléchargement, ici.

Pour rappel, les slides sont téléchargeables au format PDF ici

En espérant que ces ressources pourront vous être utile pour de futures analyses d'application !

13
févr.
'11

Le "piège à couillon" de TF1

Publié le 13 février 2011

Mise à jour [16/02/2011] - TF1 a modifié son lecteur Flash et remplacé la méthode incriminée par une version propre, nommée "hasRedirect". La version du player analysée dans cet article était la 4.0.80, celle actuellement en place sur les sites de WAT et TF1 est désormais la 4.0.81 .

Article original du 13/02/2011:

Je me suis (encore) penché sur la sécurité des applications Flash, notamment à cause de la médiatisation du streaming et du tintouin que cela a causé vis-à-vis de l'Hadopi, en espérant trouver quelque-chose du côté de TF1 et M6 (ces deux sociétés ont misé il y a quelques années sur le streaming, avec leur service de "catch-up" TV).

Et j'ai trouvé un truc bien cocasse.

Le player flash de WAT + une méthode bizarre

La plateforme WAT est une plateforme de diffusion de vidéo, propriété de TF1 qui s'en sert aussi de socle pour la diffusion des vidéos de "catch-up", via le protocole RTMPE (pur streaming). Il n'y a donc plus de problème de fuites de vidéos au format FLV, comme j'ai pu l'aborder dans un pécédent post.

Cette plateforme s'articule autour d'un lecteur vidéo développé maison, et intégré notamment dans les sites de WAT (http://www.wat.fr) et de TF1 vidéos (http://videos.tf1.fr). C'est en plongeant les mains dans le code de ce lecteur maison que j'ai pu identifier une routine peu commune:

override public function get hasPiegeACouillon() : Boolean
*
    if (isEmbedMode)
    {
        return PlayerDataManager.getInstance().flashVars.hasRedirect == "1";
    *
return super.hasPiegeACouillon;
}

Et là je suis resté coincé entre le rire et l'étouffement. Je me suis ensuite demandé à quoi servait cette méthode particulière, car des fois on trouve ce genre de choses dans des objets Flash sans qu'elles soient réellement fonctionnelles.

Investigation

J'ai donc fouillé dans le code désassemblé, et j'ai pu identifier la référence à cette méthode:

case "BAR_CLICKED":
                *
                    if (super.playerState.currentErrorType == PlayerState.ERROR_TYPE_RSYND)
                    {
                        PlayerUtil.openPage(PlayerContextManager.getInstance().currentContextRules.targetCouillon);
                        return;
                    *
                    if (PlayerContextManager.getInstance().currentContextName == PlayerContext.CONTEXT_PLAYER_PUB || PlayerContextManager.getInstance().currentContextRules.hasPiegeACouillon && !(super.playerDataManager.flashVars.playerType == "watPlayer" && super.playerState.currentMediaObject.media.visibleOnWAT != false))
                    *
                        if (PlayerContextManager.getInstance().currentContextName == PlayerContext.CONTEXT_PLAYER_PUB || super.playerDataManager.flashVars.playerType == "watPlayer" && super.playerState.currentMediaObject.media.visibleOnWAT != false || super.playerDataManager.flashVars.playerType == "tf1Player" && super.playerDataManager.flashVars.permalink != null)
                        {
                            PlayerUtil.openPage(PlayerContextManager.getInstance().currentContextRules.targetCouillon);
                        *
                    }
                    else if (super.playerState.currentPlayerState == PlayerState.CURRENT_PLAYER_STATE_WAITING)
                    *
                        super.playerState.currentPlayerState = PlayerState.CURRENT_PLAYER_STATE_PAUSING;
                    *
                    else
                    *
                        super.playerState.wishPlayerState = PlayerState.WISH_PLAYER_STATE_PLAY;
                    *
                    break;
                }

Traduisez par: "Si un couillon clique sur la pub, alors on le redirige sur le site concernant la pub" (targetCouillon). On voit clairement que pour les développeurs, la pub est un simple piège à couillons.

Le mot de la fin

J'espère que cette bourde ne traduit pas une considération en place chez TF1, qui consiste à considérer les internautes comme des "couillons", parce que sinon ils sont bien mal partis. De plus, je pense sincèrement que les annonceurs de TF1 et de WAT apprécieront leur humour (ou pas).

<article43|flattr>

30
nov.
'10

Flattr & Numerama.fr

Publié le 30 novembre 2010

Numerama.fr, le site d'actualités publié par PressTIC, s'est associé avec Flattr afin de fournir à ses lecteurs la possibilité de rétribuer Numerama mais aussi les membres participant à la vie du site. Flattr est un service de micro-paiement communautaire innovant, lancé par l'ancien porte-parole de The Pirate Bay, Peter Sunde en avril 2010 (source Numerama).

J'avais alors créé un compte pour me rendre compte de ce que c'était, sans pour autant accrocher (on ne pouvait faire des transferts qu'avec paypal). Or depuis peu, le transfert via le paiement en ligne est disponible, et j'ai donc réactivé mon compte afin d'une part de pouvoir rétribuer Numérama (que je consulte allègrement) et d'autres trucs comme le très apprécié Babozor et sa grotte du barbu, ou mon ami Korben. Le principe du micro-paiement mis en oeuvre par Flattr est super simple: vous créditez votre compte Flattr d'un montant fixe (vos "Means"), et vous décidez d'un montant à verser par mois aux "trucs" que vous aimez, et qui sont référencés sur Flattr. Rien de plus simple pour les rétribuer, il suffit de cliquer sur le bouton Flattr apposé sur le site de Korben par exemple ou sur celui de la grotte du barbu, et Flattr se charge de calculer la part reversée à chacun des trucs que vous avez apprécié (et "Flattré").

J'en ai donc profité pour ajouter un bouton Flattr à ce site, afin de voir si ca peut au moins rembourser l'hébergement à l'année (en supposant que vous trouviez ce site un tant soit peu utile). Pour les amateurs de iJaw (l'extension Firefox pour downloader les zics de jiwa -- PoC) ou ceux qui aiment DShark (mon projet de sniffer sur Nintendo DS), vous pouvez supporter le développement en "Flattrant" ;). Rien d'obligatoire, surtout en cette période de crise économique.

Cette initiative est tout de même à saluer, car elle est désormais abordable (bien que le site de flattr soit toujours en anglais), et peut vous permettre de vous faire rétribuer et de rétribuer les initiatives ou les personnes que vous jugez méritantes. Numerara espère aussi via ce moyen récupérer un brin de financement, et favoriser les articles reflétant une recherche autant dans le fond que dans la forme plutôt que de la reprise de dépêche pure et simple.

<article42|flattr>



Les contenus disponibles sur ce blog sont publiés sous licence Creative Commons BY-NC-SA.
Vous pouvez réutiliser tout ou partie de ces contenus à condition de citer l'auteur et l'origine, vous ne pouvez en faire une utilisation commerciale, et enfin vous devez partager tout travail ou œuvre dérivée sous les mêmes conditions — c'est-à-dire avec la même licence d'utilisation Creative Commons.