Windows RT jailbreaké ? Pas si vite, les limitations sont nombreuses

Windows RT jailbreaké ? Pas si vite, les limitations sont nombreuses

D'autant qu'il reste la question de l'intérêt réel

Avatar de l'auteur
Vincent Hermann

Publié dans

Logiciel

07/01/2013 5 minutes
75

Windows RT jailbreaké ? Pas si vite, les limitations sont nombreuses

Windows RT est souvent comparé à iOS dans la mesure où le système est « fermé » : les applications ne peuvent être installées que via la boutique Windows Store. Pourtant, un hacker a réussi à exécuter du code non-signé sur Windows RT dans la partie Bureau, ouvrant la voie à un véritable jailbreak des tablettes équipées du système. Mais de nombreuses barrières se dressent encore.

Microsoft Surface RT

Une limitation artificielle

Windows RT est considéré comme ferme car la source des applications n’est pas au choix de l’utilisateur. Il ne peut installer d’applications tierces que depuis le Windows Store, donc après une validation par Microsoft de ce qui s’y trouve, selon des règles propres. Il s’agit bien sûr d’un changement important vis-à-vis des autres Windows, mais cette version RT n’est utilisée actuellement que sur des tablettes.

 

Un hacker portant le pseudonyme « clrokr » a cependant réussi à exécuter un code de son choix sans passer par le canal habituel. Dans un billet sur son blog Surfsec, il explique avoir utilisé une faille dans le noyau de Windows 8. Puisque RT en est un portage pour architecture ARM, la faille s'y retrouve également. Pour clrokr, l’affaire est donc entendue : la limitation imposée par Microsoft sur RT est totalement artificielle.

Le code d'intégrité

clrokr explique dans son billet qu’au sein du noyau de Windows, on trouve une zone intégralement chiffrée contenant un paramètre nommé « minimum signing level », protégé contre les modifications par le Secure Boot de l’UEFI. De sa valeur dépend la faculté d’exécuter certaines applications :

  • 0 : toutes les applications peuvent s’exécuter, sans exception
  • 4 : les applications ont besoin d’être signées
  • 8 : les applications doivent être approuvées par Microsoft
  • 12 : seules des applications provenant de Microsoft peuvent s’exécuter

Ce paramètre est appelé code d’intégrité. Il définit pour Microsoft le minimum requis pour une application qui souhaite s’exécuter. En temps normal, y compris pour Windows 8 d’ailleurs, il est fixé à 0. En effet, n’importe quel utilisateur de PC classique peut installer et exécuter l’application qu’il souhaite, si tant est qu’elle soit compatible avec la plateforme bien entendu. Sous Windows RT, le code d’intégrité est à 8, nécessitant l’approbation de Microsoft. Dans le cas présent, il s’agit du Windows Store.

 

La difficulté pour changer cette valeur est qu’il ne s’agit en aucun cas d’un paramètre utilisateur. La valeur est fixe (hardcoded) dans le noyau mais elle peut être trouvée en mémoire. C’est l’opération réalisée par clrokr, qui a pu changer la valeur et exécuter un code tiers sur le Bureau de Windows RT. Même si les conséquences peuvent être très significatives, le processus se heurte actuellement à des limitations conséquentes, tant dans sa réalisation que dans la manière dont les développeurs pourraient en profiter.

Des limitations encore conséquentes

D’une part, le code d’intégrité est protégé par le Secure Boot de l’UEFI. Cela signifie qu’à chaque redémarrage de la machine, il reprend la valeur qu’il est censé avoir, donc 8. Il s’agit en effet d’un « simple » changement en mémoire vive, donc toujours temporaire. Il faut donc remettre en place la solution à chaque nouvelle session utilisateur. Il sera difficile de considérer qu’une tablette Windows RT a réellement été jailbreakée tant qu’une solution simple et permanente n’aura pas été trouvée. Et malheureusement pour le hacker, le Secure Boot est obligatoire sur les tablettes ARM et ne peut être désactivé.

 

D’autre part, et c’est sans doute le plus important, les applications réellement disponibles pour le Bureau de Windows RT seront très peu nombreuses. L’explication est simple : une application Win32 devrait avoir été compilée pour ARM. Or, Microsoft ne fournit aucun compilateur ARM avec Visual Studio autre que celui pour WinRT (les API des applications Modern UI). Il faudrait donc passer par un autre compilateur et surtout recompiler spécifiquement une application. Il est certain qu’aucun éditeur ne se lancerait dans une telle opération puisque la plateforme « Win32 ARM » n’est tout simplement pas censée exister. Cependant, les projets open source pourraient avoir une carte à jouer.

Performances, autonomie, intérêt : les questions sont nombreuses

Enfin, même si une solution permanente était trouvée avec applications à la clef, il resterait encore plusieurs difficultés. À commencer par les performances : une puce ARM n’est pas un Core i5 par exemple. Les applications Microsoft intégrées à Windows RT, dont Office 2013, ont été largement modifiées pour correspondre aux contraintes particulières de puissance disponible et de consommation d’énergie. Pas question d'installer n’importe quel jeu : les performances d’une Surface RT ou d’une tablette équivalente sont limitées. En outre, on resterait dans le cadre d’une application de Bureau exécutée sur un écran tactile : si le développeur ne prenait pas soin de prévoir un tel usage, l’interface ne serait donc que très peu adaptée aux doigts.

 

Évidemment, il s’agit là dans tous les cas d’une toute première étape vers une éventuelle exécution plus généralisée des applications Win32 sur Windows RT. Notez cependant qu’avec une telle porte ouverte, les applications .NET offriront une facilité supplémentaire, leur code n’était pas spécifique à une plateforme en particulier. Les intéressés pourront d’ailleurs lire le sujet consacré à ce thème dans les forums de XDA Developers.

Écrit par Vincent Hermann

Tiens, en parlant de ça :

Sommaire de l'article

Introduction

Une limitation artificielle

Commentaires (75)


Merci à Charon pour certaines informations <img data-src=" />


J´ai pas tout compris, mais ça permet aussi de lancer du code nom signé WinRT ? donc des apps “ Modern UI” faites avec Visual Studio comme si on allait làpublier sur le store ?



non ?



La faille ne concerne que le bureau ? étrange ? ou alors c’est que ces différents niveau de sécurité n’existent pas dutout pour Modern UI, et qu’il n’y a donc pour le moment pas de faille ?



(désolé pour le mode boulet, mais c’est pour bien comprendre<img data-src=" />)



La solution serait donc de créer un framwork alternatif pour “copier” modern UI, pour faire des app en mode bureau qui seraient comme des apps Modern UI.


C’est tout de même excellent pour moi!








zogG a écrit :



J´ai pas tout compris, mais ça permet aussi de lancer du code nom signé WinRT ? donc des apps “ Modern UI” faites avec Visual Studio comme si on allait làpublier sur le store ?



non ?



La faille ne concerne que le bureau ? étrange ? ou alors c’est que ces différents niveau de sécurité n’existent pas dutout pour Modern UI, et qu’il n’y a donc pour le moment pas de faille ?



(désolé pour le mode boulet, mais c’est pour bien comprendre<img data-src=" />)



La solution serait donc de créer un framwork alternatif pour “copier” modern UI, pour faire des app en mode bureau qui seraient comme des apps Modern UI.





Windows RT autorise uniquement l’exécution des nouvelles applications WinRT.

Pour Win32 seules des applications ayant un certificat Microsoft(donc que Microsoft) peuvent se lancer.

En utilisant une faille clrokr va changer une variable en mémoire qui autorise l’exécution d’applications Win32 ARM signés numériquement autre que Microsoft.

Par contre ce n’est pas persistant au redémarrage à cause de secure boot.









jb a écrit :



C’est tout de même excellent pour moi!





L’usage reste trop limité pour être utilisable. Si Microsoft a fait ça à la base c’est pour tout passer sur un nouvel os a terme. Ce n’est pas une solution pérenne pour les développeurs. Win32 va surement disparaître ultérieurement sur Windows RT.



Soit tu arrives à porter VLC avec WinRT.

Soit tu attends comme moi (moi je n’ai carrément pas le choix) une vraie solution pour le desktop et tablette (Midori très certainement)









charon.G a écrit :



L’usage reste trop limité pour être utilisable.







Ce jailbreak me permettra de tester des choses plus rapidement qu’avec les autres méthodes…









charon.G a écrit :



Windows RT autorise uniquement l’exécution des nouvelles applications WinRT.

Pour Win32 seules des applications ayant un certificat Microsoft(donc que Microsoft) peuvent se lancer.

En utilisant une faille clrokr va changer une variable en mémoire qui autorise l’exécution d’applications Win32 ARM signés numériquement autre que Microsoft.

Par contre ce n’est pas persistant au redémarrage à cause de secure boot.







Yep, ma question portait sur une application WinRT non signée. Si j’ai bien compris ces niveaux de sécurité qui sont exploitables pour une app Win32 n’existent tout simplement pas pour WinRT, Il n’y a donc pas de faille à exploiter (en tous cas pas celle là)



j’ai bon ? <img data-src=" />



ça peut aussi servir à installer des applis (metro) sans passer par le store ? L’équivalent du “Autoriser les sources inconnues” d’Android ? Utile pour des applications entreprise par exemple.








jb a écrit :



Ce jailbreak me permettra de tester des choses plus rapidement qu’avec les autres méthodes…





D’accord oui parce que se baser sur une faille (surement qui va être colmatée) pour distribuer un logiciel ce n’est pas trop top.









zogG a écrit :



Yep, ma question portait sur une application WinRT non signée. Si j’ai bien compris ces niveaux de sécurité qui sont exploitables pour une app Win32 n’existent tout simplement pas pour WinRT, Il n’y a donc pas de faille à exploiter (en tous cas pas celle là)



j’ai bon ? <img data-src=" />





Pour WinRT la signature des applications est obligatoire que ce soit sur Windows 8 ou Windows RT.









charon.G a écrit :



D’accord oui parce que se baser sur une faille (surement qui va être colmatée) pour distribuer un logiciel ce n’est pas trop top.







Personne n’a parlé de distribution.



Mais win32 c’est des lib, si elles sont pas portées sur arm rien ne fonctionnera jamais.



Il y a un truc que je comprends pas là, c’est du jailbeak ok, c’est une énorme faille de sécurité sûr, mais je vois pas le rapport avec les applis win32 <img data-src=" />








jb a écrit :



Personne n’a parlé de distribution.









C’est tout de même excellent pour moi!



Quand j’ai lu ce commentaire je pensais que tu comptais la dessus pour faire marcher vlc(Win32) sur Windows RT. D’ailleurs je crois que sur xda developer certains essayent de le faire marcher.









jb a écrit :



C’est tout de même excellent pour moi!











jb a écrit :



Ce jailbreak me permettra de tester des choses plus rapidement qu’avec les autres méthodes…







Ok, j’allais dire un truc vis-à-vis de votre portage de VLC, mais donc en l’occurrence, le produit final n’intégrera pas de bypass pour s’exécuter partout (si par ex. usage de librairies privées).



Mais autre question, je comprend bien le besoin de test, mais le framework de dev de Microsoft ne propose pas un environnement de test réel (un peu comme iOS et le compte provisioning incluant le serveur de test de notif. et tutti quanti) qui vous permettrait de tester dans une situation réelle?









satandierbis a écrit :



Mais win32 c’est des lib, si elles sont pas portées sur arm rien ne fonctionnera jamais.



Il y a un truc que je comprends pas là, c’est du jailbeak ok, c’est une énorme faille de sécurité sûr, mais je vois pas le rapport avec les applis win32 <img data-src=" />





Win32 ARM existe sur Windows RT. Windows RT c”est juste un Windows bridé pour le fonctionnement des applications WinRT.









charon.G a écrit :



Quand j’ai lu ce commentaire je pensais que tu comptais la dessus pour faire marcher vlc(Win32) sur Windows RT. D’ailleurs je crois que sur xda developer certains essayent de le faire marcher.







Euh, non, juste pour le développement et pour tester nos tools pour foutre de l’ARM dans des DLL PE depuis gcc/mingw sous Linux :)









jb a écrit :



Euh, non, juste pour le développement et pour tester nos tools pour foutre de l’ARM dans des DLL PE depuis gcc/mingw sous Linux :)





OK <img data-src=" />









charon.G a écrit :



Pour WinRT la signature des applications est obligatoire que ce soit sur Windows 8 ou Windows RT.







Tu veux dire qu’il n’est pas possible de faire un bête hello world WinRT en téléchargeant Visual Studio sur Windows 8 sans étre un dev enregistré ?









zogG a écrit :



Tu veux dire qu’il n’est pas possible de faire un bête hello world WinRT en téléchargeant Visual Studio sur Windows 8 sans étre un dev enregistré ?





Je ne développe pas en WinRT(pour mon projet cette techno c’est mort) . je ne me suis pas intéressé au mécanisme de test des applications Windows 8. Tolor devrait pouvoir répondre.

Par contre la signature pour les applications WinRT est bien obligatoire. Je l’ai lu sur msdn.



avec toutes ces limitations, comment microsoft peut-il il croire au succès de winRT (et de sa tablette ARM) ?…








sashimi a écrit :



avec toutes ces limitations, comment microsoft peut-il il croire au succès de winRT (et de sa tablette ARM) ?…





C’est vrai que les tablettes Windows 7 avec des applications desktop ça a connu un gros succès <img data-src=" />

L’ipad a aussi fait un gros flop.









zogG a écrit :



Tu veux dire qu’il n’est pas possible de faire un bête hello world WinRT en téléchargeant Visual Studio sur Windows 8 sans étre un dev enregistré ?







Ça doit tourner dans un émulateur comme sous windows phone, mais il serait bon de connaitre comment ça fonctionne, ça pourrait m’intéresser. <img data-src=" />









charon.G a écrit :



Win32 ARM existe sur Windows RT. Windows RT c”est juste un Windows bridé pour le fonctionnement des applications WinRT.





Question philosophique:



Comment peut tu connaître l’existence d’une chose qui n’est pas accessible car bloquée ? <img data-src=" />









satandierbis a écrit :



Question philosophique:



Comment peut tu connaître l’existence d’une chose qui n’est pas accessible car bloquée ? <img data-src=" />





Tu crois que Microsoft a réécrit office en WinRT?

Il y a toujours Win32 dans Windows RT. WinRT repose partiellement sur Win32 aussi(api de base)









satandierbis a écrit :



Question philosophique:



Comment peut tu connaître l’existence d’une chose qui n’est pas accessible car bloquée ? <img data-src=" />







Oula, toi tu vas avoir des probèmes <img data-src=" />



Note 1: Je dirais grâce au web?



Note 2: T’as pas tort dans le fond









charon.G a écrit :



Tu crois que Microsoft a réécrit office en WinRT?

Il y a toujours Win32 dans Windows. WinRT repose partiellement sur Win32 aussi(api de base)







Ben non, Microsoft à bien dis que Win32 n’était pas dispo sur les plateforme ARM et que seul WinRT serait utilisable. Résultat, pour faire des applications cross-plateforme, il faut passer à WinRT (hormis s’il y a eu changement de politique, mais je n’en ai pas entendu parler alors)



source PCI









charon.G a écrit :



Tu crois que Microsoft a réécrit office en WinRT?

Il y a toujours Win32 dans Windows RT. WinRT repose partiellement sur Win32 aussi(api de base)





Je crois qu’ils ont portés Office sur WinRT comme ils l’ont porté sur OSX. Et que l’API de base de WinRT peut bien avoir la même signature que l’API de base de win32, pour autant il n’y a pas de win32 sur arm.



Mais je veux bien que win32 soit dieu et que tu sois son prophète <img data-src=" />









sashimi a écrit :



avec toutes ces limitations, comment microsoft peut-il il croire au succès de winRT (et de sa tablette ARM) ?…







De la même manière que Jobs a cru dans l’iPad non ?



quel interet d’acheter un matériel si on ne peut pas faire ce qu’on veut avec ???<img data-src=" /><img data-src=" />








charon.G a écrit :



C’est vrai que les tablettes Windows 7 avec des applications desktop ça a connu un gros succès <img data-src=" />

L’ipad a aussi fait un gros flop.







PAF <img data-src=" />









philoxera a écrit :



quel interet d’acheter un matériel de se convertir si on ne peut pas faire ce qu’on veut avec ???<img data-src=" /><img data-src=" />







<img data-src=" />



Ben voilà, on reste dans le domaine du spirituel <img data-src=" />









sashimi a écrit :



avec toutes ces limitations, comment microsoft peut-il il croire au succès de winRT (et de sa tablette ARM) ?…





Parce que c’est suffisant ?

PErsonnellement, j’ai une Surface. Et je la trouve très bien. Je ne ressens pas de manque d’application ou quoi que ce soit.

Après, matériellement, je la trouve parfois poussive… genre la musique qui se coupe quand on a un grand nombre d’onglets ouverts sur IE… C’est lourdingue.









satandierbis a écrit :



Je crois qu’ils ont portés Office sur WinRT comme ils l’ont porté sur OSX. Et que l’API de base de WinRT peut bien avoir la même signature que l’API de base de win32, pour autant il n’y a pas de win32 sur arm.







Office 2013 est en Win32 dans tous les cas et a été spécialement recompilé pour ARM. Il ne s’agit pas de WinRT. D’ailleurs, si c’était du WinRT, tu ne regarderais pas les applications se lancer depuis le bureau <img data-src=" />



Évidemment que les applications Win32 tournent sous Windows RT.



WinRT inclus un sous-ensemble Win32 et un ensemble de nouvelles APIs.








Vincent_H a écrit :



Office 2013 est en Win32 dans tous les cas et a été spécialement recompilé pour ARM. Il ne s’agit pas de WinRT. D’ailleurs, si c’était du WinRT, tu ne regarderais pas les applications se lancer depuis le bureau <img data-src=" />







Mais dans ce cas, y’a que Microsoft qui peut faire de la recompil pour ARM sur base d’un développement Win32? Je ne comprend plus rien là. La restriction WinRT sur ARM ne s’applique qu’aux développeurs tiers (donc le pékin de base comme nous)?









pti_pingu a écrit :



Mais dans ce cas, y’a que Microsoft qui peut faire de la recompil pour ARM sur base d’un développement Win32? Je ne comprend plus rien là. La restriction WinRT sur ARM ne s’applique qu’aux développeurs tiers (donc le pékin de base comme nous)?







Sur Windows RT, la seule chose qu’un dev peut réaliser, ce sont des applis WinRT, donc passant par le Store. La partie Bureau et les applis Win32, c’est verrouillé : seuls les exécutables fournis avec Windows et Office 2013 (intégré) peuvent se lancer.



Thx <img data-src=" />








pti_pingu a écrit :



Ben non, Microsoft à bien dis que Win32 n’était pas dispo sur les plateforme ARM et que seul WinRT serait utilisable. Résultat, pour faire des applications cross-plateforme, il faut passer à WinRT (hormis s’il y a eu changement de politique, mais je n’en ai pas entendu parler alors)



source PCI







Win32 est disponible, mais uniquement pour Microsoft, donc pour le reste du monde (hors hacker), Win32 n’est pas disponible sur Windows RT.



edit: grillé <img data-src=" />









pti_pingu a écrit :



Mais dans ce cas, y’a que Microsoft qui peut faire de la recompil pour ARM sur base d’un développement Win32? Je ne comprend plus rien là. La restriction WinRT sur ARM ne s’applique qu’aux développeurs tiers (donc le pékin de base comme nous)?





C’est ce que je mettais au dessus ils verifient si le certificat est signé par MS. C’est juste un verrouillage.









satandierbis a écrit :



Mais je veux bien que win32 soit dieu et que tu sois son prophète <img data-src=" />





Me dire ça à moi c’est quand même très fort. <img data-src=" />

Win32 est très loin d’être mon dieu mais il reste indispensable pour le moment.









zogG a écrit :



Win32 est disponible, mais uniquement pour Microsoft, donc pour le reste du monde (hors hacker), Win32 n’est pas disponible sur Windows RT.



edit: grillé <img data-src=" />







C’est ce que je commençais à subodorer. Un peu donc comme les API privés de la concurrence quoi (par contre Andro, ils sont pas vaches, tu peux faire du dev bas niveau et accéder aux fonctions natives, mais à tes risques et périls).



Maintenant, ce qui serait intéressant de savoir, est ce que Microsoft fait cela pour pouvoir proposer des applis plus “complètes” et “intégrées” ou si c’est juste une phase de transition.









zogG a écrit :



Tu veux dire qu’il n’est pas possible de faire un bête hello world WinRT en téléchargeant Visual Studio sur Windows 8 sans étre un dev enregistré ?





Jusqu’à maintenant, je sais que tu peux déployer sur ta propre machine où VS est installé sans avoir obligatoirement de compte développeur.



Par contre, c’est obligatoire si tu veux déployer sur un device autre



Je sais pas par contre si c’est prévu de rester comme ça.









Vincent_H a écrit :



Sur Windows RT, la seule chose qu’un dev peut réaliser, ce sont des applis WinRT, donc passant par le Store. La partie Bureau et les applis Win32, c’est verrouillé : seuls les exécutables fournis avec Windows et Office 2013 (intégré) peuvent se lancer.





WinRT ne signifie pas nécessairement “store”. Il est par exemple possible de lancer des applications modern UI sans passer par le store (sideloading) :http://technet.microsoft.com/en-us/library/hh852635.aspx



Il est également possible d’appeler des fonctions de l’API WinRT depuis le desktop :http://msdn.microsoft.com/en-us/library/windows/desktop/hh920511(v=vs.85).aspx









hadoken a écrit :



WinRT ne signifie pas nécessairement “store”. Il est par exemple possible de lancer des applications modern UI sans passer par le store (sideloading) :http://technet.microsoft.com/en-us/library/hh852635.aspx



Il est également possible d’appeler des fonctions de l’API WinRT depuis le desktop :http://msdn.microsoft.com/en-us/library/windows/desktop/hh920511(v=vs.85).aspx







Ca signifie Store dans une majorité écrasante des cas. On avait abordé la question avec Charon effectivement, notamment quand on parlait de ce qui, à notre sens, manque réellement à Windows 8 : la capacité de lancer des applications ModernUI en fenêtré.









pti_pingu a écrit :



C’est ce que je commençais à subodorer. Un peu donc comme les API privés de la concurrence quoi (par contre Andro, ils sont pas vaches, tu peux faire du dev bas niveau et accéder aux fonctions natives, mais à tes risques et périls).



Maintenant, ce qui serait intéressant de savoir, est ce que Microsoft fait cela pour pouvoir proposer des applis plus “complètes” et “intégrées” ou si c’est juste une phase de transition.







La réponse est simple… à quoi sert l’environnement desktop/win32 sur Windows RT ? Office (un gros dossier pour le porter…) et les autres apps que Microsoft n’a pas encore portée. Bref il faut espérer que ce soit pour la transition et que les MAJ à venir diminuent sa fréquence d’utilisation.



En terme de cohèrence, Windows RT aurait tout à gagner à se séparer définitivement du bureau (au moins visuellement). Je pense que ça participe à la confusion 8/RT chez Mr tout le monde.









Vincent_H a écrit :



Office 2013 est en Win32 dans tous les cas et a été spécialement recompilé pour ARM. Il ne s’agit pas de WinRT. D’ailleurs, si c’était du WinRT, tu ne regarderais pas les applications se lancer depuis le bureau <img data-src=" />











hadoken a écrit :



Il est également possible d’appeler des fonctions de l’API WinRT depuis le desktop :http://msdn.microsoft.com/en-us/library/windows/desktop/hh920511(v=vs.85).aspx





Donc je reste sur mon idée que Office est du winRT



Pour les certificats Win32 sur Windows RT, theverge en a parlé.








satandierbis a écrit :



Donc je reste sur mon idée que Office est du winRT





Non regarde mon lien.

Tu crois vraiment que Microsoft a réécrit un projet comme office en WinRT. Ca prendrait plusieurs années









hadoken a écrit :



WinRT ne signifie pas nécessairement “store”. Il est par exemple possible de lancer des applications modern UI sans passer par le store (sideloading) :http://technet.microsoft.com/en-us/library/hh852635.aspx



Il est également possible d’appeler des fonctions de l’API WinRT depuis le desktop :http://msdn.microsoft.com/en-us/library/windows/desktop/hh920511(v=vs.85).aspx







Oui Microsoft autorise la distribution hors du store pour les entreprises, Apple propose la même chose (et c’est très pratique), mais ça reste quand même très proche, ton app est signée par un certif spécifique c’est tout.



Et tout le monde ne peux pas charger l’app, dans les deux cas il faut des autorisations donc…









satandierbis a écrit :



Je crois qu’ils ont portés Office sur WinRT comme ils l’ont porté sur OSX. Et que l’API de base de WinRT peut bien avoir la même signature que l’API de base de win32, pour autant il n’y a pas de win32 sur arm.



Mais je veux bien que win32 soit dieu et que tu sois son prophète <img data-src=" />





Et bien tu crois mal. Win32 est toujours au coeur de Windows 8 (on verra pour Blue, mais pour l’instant c’est le cas).



Pour le moment, WinRT repose sur Win32, ça peut reposer sur Win32 ou tout autre chose, et il y a des chances qu’à terme ça ne repose d’ailleurs plus du tout sur du Win32, mais ça, c’est transparent pour à la fois l’utilisateur et le dev.



La remarque sur Charon en tant que prophète de Win32 est marrante, vu que lui aussi prédit la mort de Win32 à terme <img data-src=" />









satandierbis a écrit :



Donc je reste sur mon idée que Office est du winRT







Non.

Surtout que techniquement, WinRT ce n’est pas un nouveau runtime…









zogG a écrit :



Tu veux dire qu’il n’est pas possible de faire un bête hello world WinRT en téléchargeant Visual Studio sur Windows 8 sans étre un dev enregistré ?





Ca, tu peux le faire sans avoir besoin d’être dev enregistré (je l’ai fait sur mon ex-Surface). Il suffit de configurer le debug pour qu’il utilise un matériel physique et non l’émulateur.









satandierbis a écrit :



Donc je reste sur mon idée que Office est du winRT







Ma foi, si ça te fait plaisir <img data-src=" />









jb a écrit :



Non.

Surtout que techniquement, WinRT ce n’est pas un nouveau runtime…





Tu pense qu’une API où a été sucrée 90% des fonctions (au pif) et portée sur une nouvelle architecture matérielle n’est pas basée sur un nouveau runtime ?









hadoken a écrit :



WinRT ne signifie pas nécessairement “store”. Il est par exemple possible de lancer des applications modern UI sans passer par le store (sideloading) :http://technet.microsoft.com/en-us/library/hh852635.aspx



Moi je lis “Applies to: Windows 8”, pas sûr que ça marche.









satandierbis a écrit :



Tu pense qu’une API où a été sucrée 90% des fonctions (au pif) et portée sur une nouvelle architecture matérielle n’est pas basée sur un nouveau runtime ?





Je pense qu’il voulait dire que WinRT est plus un framework et pas un runtime techniquement parlant (même si le nom est trompeur)









satandierbis a écrit :



Tu pense qu’une API où a été sucrée 90% des fonctions (au pif) et portée sur une nouvelle architecture matérielle n’est pas basée sur un nouveau runtime ?







Non, je ne pense pas: je sais, car je lis la documentation et je teste.



WinRT ne te bloque les APIs qu’au moment du WACK et du passage sur le store.

La quasi-totalité des APIs Win32 sont disponibles en mode WinRT, si tu sais les chercher.



Idem pour WinRT sous Windows RT.



Et pour ajouter l’utile à l’agréable, il y a des méthodes pour appeler les fonctions interdites tout en passant le WACK.



Exemple de tare de WinRT. <img data-src=" />

http://social.msdn.microsoft.com/Forums/en-US/winappswithnativecode/thread/af1d42e7-773f-45eb-aec1-3c0b3daecb4d



Question:



constructor in public value struct



Réponse:



You can’t do this in C++/CX



Conclusion:



Ho, they cheated again!!!









jb a écrit :



Idem pour WinRT sous Windows RT.





Donc tu as essayé sur un windows RT jailbreaké ?









satandierbis a écrit :



Donc tu as essayé sur un windows RT jailbreaké ?







Non, mais appeler des fonctions Win32 interdites sur un Windows RT, oui.



Et sinon quelqu’un a essayé de charger les fonctions Win32 dynamiquement sous ARM pour voir si on peut se passer des .lib manquants ? :p



Et encore mieux, de recréer les .lib à partir des .dll avec dumpbin et lib ?









Kervala a écrit :



Et sinon quelqu’un a essayé de charger les fonctions Win32 dynamiquement sous ARM pour voir si on peut se passer des .lib manquants ? :p



Et encore mieux, de recréer les .lib à partir des .dll avec dumpbin et lib ?







See above.









jb a écrit :



See above.







Ok merci, je me disais aussi :)










jb a écrit :



WinRT ne te bloque les APIs qu’au moment du WACK et du passage sur le store.

La quasi-totalité des APIs Win32 sont disponibles en mode WinRT, si tu sais les chercher.



Idem pour WinRT sous Windows RT.



Et pour ajouter l’utile à l’agréable, il y a des méthodes pour appeler les fonctions interdites tout en passant le WACK.







C’est pas risqué d’appeler des fonctions interdites ? Enfin si Ms les a interdits pour l’instant doit bien y’avoir une bonne raison ?









arno53 a écrit :



C’est pas risqué d’appeler des fonctions interdites ? Enfin si Ms les a interdits pour l’instant doit bien y’avoir une bonne raison ?







C’est pas recommandé.

Ensuite, y a des raisons qui sont bonnes (sandboxing), d’autres qui sont un peu douteuses (“tous les devs sont des idiots”), et parfois du foutage de gueule pur et simple.









jb a écrit :



C’est pas recommandé.

Ensuite, y a des raisons qui sont bonnes (sandboxing), d’autres qui sont un peu douteuses (“tous les devs sont des idiots”), et parfois du foutage de gueule pur et simple.





Tu as un exemple de “foutage de gueule” (c’est juste par curiosité) ?



Encore un produit a éviter ! <img data-src=" />

Ben oui system, propriétaire et fermé etc, tout vers le contraire des libertés ! (déjà bien restreintes de nos jours)


Pour le foutage de gueule c’est peut etre un manque de temps en attendant Blue et les autres et pour toutes les deprecated en effet ca doit etre une incompatibilité avec le futur midori & co … Du coup pas intérêt de l’utilisé pour VLC !!!! <img data-src=" />



<img data-src=" />


la méthode utilisée (analogie Windows 8/RT) montre en tout cas que les restrictions de WindowsRT sont purement imposées pour des raisons marketing et en aucun cas justifiées par des limitations techniques.

Le secureboot risque de tuer dans l’oeuf le moindre attrait alternatif pour ces tablettes. Ca permettra au moins aux furieux du cyanogen de se concentrer sur des produits plus ouverts. <img data-src=" />









Grawok a écrit :



la méthode utilisée (analogie Windows 8/RT) montre en tout cas que les restrictions de WindowsRT sont purement imposées pour des raisons marketing et en aucun cas justifiées par des limitations techniques.

Le secureboot risque de tuer dans l’oeuf le moindre attrait alternatif pour ces tablettes. Ca permettra au moins aux furieux du cyanogen de se concentrer sur des produits plus ouverts. <img data-src=" />







Eh non <img data-src=" />



Si y’a des limitations c’est bien pour quelque chose : préparer l’arriver d’un nouveau système d’exploitation reposant sur des paradigmes totalement différents du windows que l’on connait … Mais on peut pas lancer un OS sans applications du coup on créer un environnement (winRT) compatible avec le futur (midori) mais qui repose actuellement sur l’existant (win32) respectant certain de ces paradigmes comme l’asynchronisme et le sandboxing de l’application… Alors certes c’est un peu chiant aujourd’hui mais Ms prépare clairement l’avenir avec une vision a long termes des choses (1520 prochaines années).



Un peu de lecture c’est pas récents, et on a mis des noms sur certaines chose mais le mouvement est globalement expliqué.









arno53 a écrit :



Eh non <img data-src=" />



Si y’a des limitations c’est bien pour quelque chose : préparer l’arriver d’un nouveau système d’exploitation reposant sur des paradigmes totalement différents du windows que l’on connait … Mais on peut pas lancer un OS sans applications du coup on créer un environnement (winRT) compatible avec le futur (midori) mais qui repose actuellement sur l’existant (win32) respectant certain de ces paradigmes comme l’asynchronisme et le sandboxing de l’application… Alors certes c’est un peu chiant aujourd’hui mais Ms prépare clairement l’avenir avec une vision a long termes des choses (1520 prochaines années).



Un peu de lecture c’est pas récents, et on a mis des noms sur certaines chose mais le mouvement est globalement expliqué.







ok, merci pour ces explications. C’est quand même un pari risqué de faire table rase en verrouillant à double tour la porte d’entrée des applications winRT. En tout cas, l’interet du jailbreak semble tout de suite moins sexy. <img data-src=" />









hadoken a écrit :



Tu as un exemple de “foutage de gueule” (c’est juste par curiosité) ?







Je ne répondrais pas en public sur ça :)



Le 07/01/2013 à 23h 12







Tolor a écrit :



Jusqu’à maintenant, je sais que tu peux déployer sur ta propre machine où VS est installé sans avoir obligatoirement de compte développeur.



Par contre, c’est obligatoire si tu veux déployer sur un device autre



Je sais pas par contre si c’est prévu de rester comme ça.







<img data-src=" />



MS a réagi, ne considère qu’il n’y a aucun risque de sécurité, et applaudit l’ingéniosité de ceux qui ont trouvé la méthode <img data-src=" />





The scenario outlined is not a security vulnerability and does not pose a threat to Windows RT users. The mechanism described is not something the average user could, or reasonably would, leverage, as it requires local access to a system, local administration rights and a debugger in order to work. In addition, the Windows Store is the only supported method for customers to install applications for Windows RT. There are mechanisms in place to scan for security threats and help ensure apps from the Store are legitimate and can be acquired and used with confidence.



We applaud the ingenuity of the folks who worked this out and the hard work they did to document it. We’ll not guarantee these approaches will be there in future releases.



http://thenextweb.com/microsoft/2013/01/08/microsoft-determines-windows-rt-jailb…








jb a écrit :



Je ne répondrais pas en public sur ça :)





Ok ;)







Tolor a écrit :



MS a réagi, ne considère qu’il n’y a aucun risque de sécurité, et applaudit l’ingéniosité de ceux qui ont trouvé la méthode <img data-src=" />





http://thenextweb.com/microsoft/2013/01/08/microsoft-determines-windows-rt-jailb…





Bah c’est plutôt cool comme réponse <img data-src=" /> Je crois pas qu’il y ait de risques de sécurité effectivement, puisqu’il faut notamment les droits d’admin et des actions utilisateurs très spécifiques.



Sinon dommage que MS n’est pas répondu à





Microsoft, please consider making code signing optional and thereby increasing the value of your Windows RT devices!





<img data-src=" />