NOTES DES TRADUCTEURS : Ce prophile a été réalisé sur quelqu'un de complètement saoul ... en dehors des fautes de frappes, des erreurs, et autres, il a été très difficile de trouver un sens dans la pluspart des phrases. Si on ajoute que Tiago aime faire des non-sens et des phrases qui ne veulent dire quelque chose que pour lui ... On vous conseille la version anglaise, qui ne contient pas nos fautes de traductions, mais on pense que de toute façon, elle ne sera pas plus compréhensible que cette version française ... Aryliin et TboWan, pour arsouyes.org phrack.org:~# cat .bash_history ==Phrack Inc.== Volume 0x0b, Issue 0x3f, Phile #0x04 of 0x14 |=---------------=[ P R O P H I L E O N T I A G O ]=-----------------=| |=-----------------------------------------------------------------------=| |=------------------------=[ Phrack Staff ]=-----------------------------=| |=---=[ Specification Pseudo: tiago Alias: module Origine du pseudo: Laisse moi appeler ma mère et demander, juste une seconde... ok; "C'était soit pedro henrique, soir tiago, mais apres avoir cherché des raisons pour trancher on a décidé de lancer une pièce : face". Le trouver: En produisant quoique ce soit pour attirer mon attention et vous aurez le retour attendu. Age de votre corps: 24 Produit en: île paradisiaque dans le sud-est Taille et poids: 178cm, 70kg Urlz: . Ordinateurs: SGI Indy (R4600PC at 100MHz, 128MB RAM, 2GB hdd), Sun Ultra-10 (UltraSparc IIi at 440MHz, 1GB RAM, 9GB hdd), Portable Toshiba Portege 4005 Intel P3 at 800MHz, 512MB RAM, 20GB hdd). Membre de: Teletubbies Projets: Plusieurs aspects de la théorie des ordinateurs. Ingénierie logicielle : interprétation abstraite, transformation de programmes, reverse engineering, etc. Cryptographie appliquée pour le travail. J'aime la conception hardware, le piratage de conception/implémentations de systèmes d'exploitation, l'exploitation de problemes de conception/implémentation de logiciels. Tout ce qui actuellement attire mon attention pour une raison quelconque |=---=[ Choses préférées Femme: je veux un petite pipe, s'il vous plait (en fraçais dans le texte) Voitures: Je ne sais pas conduire Nourriture: taco-taco brrrito-brritooo Alcool: mélangé avec du Benflogin Music: Symantec iz in tha houuuuuuuuuse!!!!! c'mon c'mooooooon sing sing! see tha solution! Symanteeeec, revoooolutiooooon... we give yooooooouuu... sweet soluttiooooonnss o /o o /o/ We! got your personal firewalllz! ... dunt dunt.. -> http://www.phrack.org/symantec_fancyness.mp3, por favor. Films: GOBBLES.avi Livres & auteurs: Héhé, les livres sont cools q:D -- Les trucs qui ont été remarquables récemment. Je lit encore : . Evariste Galois, aimé des dieux, infeld espagnol, par Siglo Veintiuno Editores); . Architecture des ordinateurs: une approche quantitative hennessy & patterson (anglais, par MK); . Synopsis de psychiatrie, kaplan & sadock (anglais, LWW); . L'art de la programmation des ordinateurs, vol. 1-3, knuth (3eme Ed., Addison Wesley) -- <3 dutchy; . Systems and Theories in Psychology, marx & hillix (portugais, by Alvaro Cabral); . Psycologie cognitive et ses implications, anderson (portugais, by LTC); . Théorie axiomatique des ensembles, bernays (anglais, by Dover, 2eme Ed., 1968-1991); . La fin de la modernité : vattimo (portugais, par Martins Fontes); . Fondement pour la métaphysique des mœurs, kant( anglais, par H.J Paton); . Introduction a la métaphysique, heidegger (anglais, par Gregory Fried et Richard Polt); . Principia Mathematica, russel (anglais, par Cambrige Mathematical Library, 2eme Ed., 1927-1997); . Uber formal unentscheidbare Satze der Principia Mathematica und verwandter Systeme, I, gödel (anglais, par B. Meltzer); . Tractatus Logico-Philosoficus, wittgenstein (anglais, par Routledge & Kegan Paul); . A Philosophical Companion to First-Order Logic, hughes (anglais, par R.I.G.); . Liberté et organisation 1814-1914, russel (anglais, par Routhledge); . L'ethique, spinoza (anglais, par Hafner); . La preuve de Gödel, nagel et newman (anglais, par NYU); . La généalogie de la morale, nietzsche (anglais, par Douglas Smith); . Théorie des matrices, perils (anglais, par Dover, 1958-1991); . Algebre moderne, warner (anglais, par Dover, 1965-1990); . Security Assessment: Case Studies for Implementing the NSA -- National Symposium of Albatri; Urls: www.petiteteenager.com J'aime: Faire Héhé Je déteste: Ne pas faire Héhé |=---=[ Vie en trois phrases DG = DH - TDS |=---=[ Passions | Que fais tu actuellement Trop complexe pour etre décrit avec des mots : totallement indécidable; ne peut pas être resolu avec quelque algorithme que ce soit -- que ce soit en anglais ou en portugais, ... Ne peut pas etre reconnu par machine de Turing qui termine quelque soit ses entrées ... sauf les noix de coco ! |=---=[ Quelle recherche as tu fait ou laquelle t'a donné le plus de plaisir Tout ce qui m'arrete, et extra-ordinairement, les questions extra-ordinaires. |=---=[ Experiences mémorables Aller a l'encontre de ma famille et rester toute la nuit devant mon ordinateur. Pour me permettre d'avoir du plaisir et de me sentir mal. Rechercher un travail utopique. Aller dans le Brézil du sud, à Mexico et au Brézil du nord-est pour le trouver. Rencontrer en vrai les gens que j'ai rencontré durant cette quête, voir l'histoire que j'ai vu défiler devant mes yeux a chaque endoit ou je suis passé. Etre saoul, etre sobre, chuter et décroitre. Foirer et faire Héhé encore. Et encore. Ressentir, avoir froid, croire et être agnostique. Se battre. Avoir des filles pour le plaisir, et se détruire pour les leurs. Faire des canulars téléphonques, faire le tour des bars, écrire, compter. Stopper. Chercher des requins, surfer, casser ma destinée. Aller et insciter les gens a faire de meme. Etre. |=---=[ Quotes . HéHé . o/ . /o . J'aimerai être mort ansi je pourrait etre heureux et sauf ! . o . q:D . :S . Tu ferais mieux d'appeler quelqu'un d'intelligent ! . o . :/ . Je préfère avoir 300 bières par mois qu'une éducation formelle . /o/ . <3 |=---=[ Interview ouverte - Questions générales barbantes Q: Quel a été ton premier contact avec les ordinateurs? R: Depuis que je suis tout petit, j'ai l'habitude d'aller chez mes grand-parents le week-end. Quand j'ai eu 8 ans, j'ai commencé a m'amuser a aller renifler du coté du laboratoire éléctronique de mon oncle, situé derrière sa chambre (ce mec a un diplome d'ingénieur en éléctronique à l'heure qu'il est). Des expériences attrayantes autour de ça, je peux dire que j'en était devenu fou -- sérieusement. Des encyclopédies, en passant par des pièces de plastique, jusqu'aux VCR cassés et des TV ouvertes. Certains samedis, quand j'avais 11 an, le petit Tiago jouais dans cette pièce. Je peux me rappeller clairement grimper (style theo) dans le cagibi, chercher après de chouettes objets, quand je suis tombé face à cette boite ; je l'ai prise, je l'ai ouverte, et j'étais face à un ordinateur. Assemblé par une usine brézilienne, c'était un CP200 avec une carte mère basée Z80A CORE. On aurait pu voir le petit Tiago HéHéer pour ce truc merveilleux. Ça a duré 3 mois, jusqu'à ce que le cable qui connectait le clavier ne casse -- R.I.P. 3 mois, c'était assez pour que j'ai les bases du BASIC et abstraire cette chose merveilleuse. Le temps passa et je n'eu plus la possibilité d'avoir un ordinateur. En janvier 1996, j'alla à Sao Paulo, en vacances. Je suis resté avec un oncle, qui avait une compagnie dans laquelle il y avait des machines sous DOS, maintenues par un programmeur Clipper. Je me souvient parfaitement qu'on m'ait "appris" comment allumer l'ordinateur et tapper les touches. Très peu de temps après, on m'apprenait ce jouet fabuleux qu'est PCtool -- vous suivez ? Oui, le petit Tiago de 15 ans, qui pouvait juste allumer la machine, faisait ses premiers pas en reverse engineering. 15 jours, c'est le temps exact où j'ai pu y jouer. Ensuite, plus d'ordinateur. Août 1999, papa rentre à la maison avec une station Packard Bell. C'était un Pentium MMX à 166MHz avec 16 Mo de RAM et 3.1 Go sur un disque dur IBM. Et pas seulement, il y avait aussi du multimédia et cette grande chose qu'est le modem. Il contenait et fonctionnait gràace à Windows 98. Waouw ! Tiago eu son premier ordinateur moderne. Oui. Mais attendez, ou est mon écran noir remplis de nombres inintelligibles tous verts ?! Et Merde ! Frustrations... du temps passe ... Internet ! du temps passe ... ICQ ! du temps passe ... IRC, #hacking. "'lut, clique sur le menu démarrer, exécuter. Maintenant, tape telnet huhu.fancyworld.net 1470" -- l'orgasme -- Il eu lieu jusqu'à ce que je demande ce que signifiaient ces mots magiques. Et alors ça commença... HUUUU ! Coder ! HUHUHUHHUHHU HUHUHUHUHUHUHUHUHUHUHUHUHUHUHUHUHUHUHU :D:D:D q:D o/ o /o/ /o/ /o o/ Oui, mais cette image de chiffres verts sur fond noir n'a jamais quitté mon esprit, et j'ai eu besoin de descendre vers des niveaux plus bas... et j'y suis allé, et je continue, je ne l'atteind jamais, ça n'en fini jamais. Attend, je voudrais faire un commentaire a the belou, lammer : Il n'y a aucun interet a écrire des zéros-day si tu ne les utilises pas! Mais de rien. Q: Quel a été ton premier contact avec la sécurité informatique et a quelle point est-ce important pour toi par rapport a ton interet pour les ordinateurs en général? A: Pour finir avec l'histoire d'au dessus. Apres que j'ai rencontré quelques autres noix de coco qui ont été responsables de ma première véritable aventure en sécurité. Ca a été un grand choc : lire des phrack et faire HUHU, lire du code, ne pas avoir cette putain de solution sur ce qu'il se passe, et avoir été des jours eveillés jusqu'a ce que je puisse me faire une petite idée. Etre ennuyé par les choses "habituelles", faire un doigt aux jeux et pouvoir enfin jouer comme je veux. Quelle importance ? Je me suis transformé en une nouvelle forme de noix de coco. Q: A avoir été relativement séparé de la "scène" en général, quel est ton opinion sur le concept de "La scène" et ta distance par rapport a elle (qui existe certainement) est-elle délibérée? A: A ce que je peux voir, c'est juste une autre société autour de nous. Pendant que se déroulait mon "entrée", je tentais de rester de plus en plus détaché de cette "scène". Mon être a été lancé en dehors de la scène. Tout ce que je voulais était de m'assoir et de hacker. Je ne pouvais pas la digérer et elle ne pouvait pas me digérer. Je me suis assi, j'ai joué, je vous ai regardé les mecs. Q : En fait, est-ce que ce concept de "scène" ne serait pas une espèce de grosse connerie de corrélation sociale et d'acceptabilité ? A : C'est "normal", forcément. rien que je ne vois pas quand je vais à la boulangerie ou un club avec des amis. Les gens "semblent", les gens percoivent, les gens infèrent -- les gens jugent en fonction de leur contexte d'apriori. Que suis-je en train de faire ? Q : Que pense-tu du Phrack Magazine ? Penses-tu qu'il doit être "réssucité" ou continué d'être maintenu ? Si c'est le cas, penses-tu qu'il devrait changer certains themes d'une certaine façon (puisque beaucoup suggèrent que phrack n'est plus un magazine de hacker mais une connerie de fame académique prémachant le travail pour les boites de sécurité informatique) ? Ou préfèrerais-tu que phrack publie exclusivement des critiques de films et des recettes de cuisines ? A : Ça a été responsable de plein de HU cognant dans ma tête. J'ai sauté, je me suis bourré, blessé et guéri. Ça m'a donné des idées, ça m'a mené à plein de résultats, où tout ces résultats entre ces événements ont été responsable de garder cette noix de coco continuer. Continuer est le but, pourquoi s'arreter ? Je commencais à m'ennuyer avec les articles, oui. Mais je pense que c'est plus parce que j'ai changé que parce que le magazine aurait changé. Cependant, je vois quelques grosses tendances d'articles (comme réflection de la scène) convergant toujours vers le même endroit et y restant bloqués, dans une itération ennuyeuse qui ne fini jamais. J'ai joué avec l'environnement d'exécution de Linux et les specs techniques qui y sont liées, mais ensuite, je suis passé à quelque chose d'autre -- mais toujours le même jeux, maintenant avec PalmOS ou simplement en jouant avec l'Optimisation, l'Obfuscation, ou de pirater le drivers IrDA de mon portable. Comment les gens peuvent-il écrire ce que vous appellez des "shellcodes" pour toutes les architectures, systèmes d'exploitations, ABI supportées, ISA supportées, et autres ? N'est-ce pas un problème de récupérer le manuel ? Pourquoi discutter sur le format EMF et le système de liaison dynamique d'une plateforme spécifique sans aucune "améliorations" (prenez le comme un gros boom, je ne pense pas que que ça vaille la peine de définir le mot ici) dans une "technique de hack" ? Je pense que c'est ça qui sucks dans phrack de nos jours. Sur le style académique, j'ai moi-même des problèmes avec le formalisme. Ce que j'apprécie vraiment dans phrack, par exemple, est ce m-niveau de formalisme comparée à l'académique. Je pense qu'il est très intéressant le fait qu'on puisse soumettre une technique de compilation avec quelques restes élémentaires sur le sujet, dans un format non défini ou façon synthaxique. Si les gens derrière ça pense que le contenu est bon, ça va le faire. Bien que je pense aussi qu'un minimum de formalisme soit nécessaire, sinon, ça laisse trop de place à exposer des erreurs, et je ne pense pas qu'il soit cool pour des gens de lire des "Assembly HOW-TO's" qui nous "apprennent" l'utilisation de certaines "instructions" pour une plateforme spécifique, dans un contexte très restreint et fait croire au lecteur qu'il comprenne cet univers. Sur la fame : malhonnète mais attendu -- j'ai envie de vomir chaque fois que je pense aux mythes, cependant, si je régurgite ces mythes seront rendu à l'air libre, comme des ulcères gastriques, venant de moi-même. J'aimerais voir une critique d'une collection /home/PORNO, en fait. Et j'espère vraiment avoir un peut de nourriture dopante française [NDT : dope french food] d'ici la fin de l'année, oh oui. Q : Qu'as-tu à dire à propos de l'opposition whitehat/blackhat qui a reçu plus d'attention ces dernières années et que répondez-vous aux gens qui vous appellent un whitehat parce qu'un de vos projet était de porter PaX ? A : Comment m'appelerait-ont si je courais dans ces cercles et pleurer tout en portant des vêtements oranges ? Teletubbie ? Q : Comment qualiferiez vous l'underground Hacking en 2005 ? Beaucoup de gens pense qu'il n'y a plus d'underground à cause de toutes ces conneries commerciales autours de la sécurité. Des commentaires ? A : Je crois que penser à ça est un act d'oubli. Vous pourriez être capable de déterminer certaines caractéristiques et classifier les entrées et sorties du processus. Cependant, comme le développement du processus deviendrait plus fort, ses force de transformation augmenterait autant, donc, le nombre de "branches-idéales" à l'intérieur de ce groupe social tenderait à augmenter et réagir entre elles. Comment sont Montmartre et Montparnasse de nos jours ? Q : Qui sont tes héros de sécurité informatique et pourquoi ? A : J'ne ai beaucoup, sérieux -- je suis sacrément chanceux de pouvoir rencontrer/connaître certain d'entre eux. Mais quelle différence ça ferait vraiment si je vous les nommaient ? Les héros sont miens, les putains de mythes sont miens. Q: Coxinha+guarana ou échange de 0-day? A: Q : Comment définis-tu le terme "hacker" ? A : Je croit que des références symboliques déterminent un "fait". Une représentation linguistique d'un type de réalité de quelqu'un, à un certain moment. Quand l'Être de cet être change, alors en va la perception de ce fait. Quand nous sont tels, ou même Rien, interraction, l'entropie augmente et les faits tendent à être plus déformés. La technique aide le processus, comme le media d'information devient plus puissant et globalement plus répendu. Consummate Nihilism. Je pense. Q : Continuons, avoues. Tu es brésilien après tout, donc, donne les sites que tu as défacé. A : JOYEUX ANNIVERSAIRE!!!!!!!!!!!!!!!1 Q : Si tu avais du sexe avec route, serais-tu au dessus ou en dessous ? A : Je tenterais les deux. Je tenterais d'autres choses. Par contre, je ne serais vraiment intéressé que par les muscles, tatouages et les armes :D Q.1. : On a entendu que tu étais le type qui avait instruit pageexec@freemail.hu sur Pax. Est-ce vrai ? Q.2. : Quelles étaient tes motivations de porter PaX sous MIPS, quels étaient les plus gros problèmes que tu as rencontré et comment les as tu résolus ? A : Instruit ? Je ne pense pas :>. Il y a cette histoire sur l'impossibilité de PAGEEXEC sous les ordinateurs MIPS, initié par le génial Théorique de Raadt {[1], [2]}. Motivations : je pensais juste que ça serait fun d'essayer de prouver que c'est faut et de jouer un peut. Finalement, j'ai simplement trouvé que j'avais tord. Pour l'instant du moins :> [Attention] J'aimerais prévenir que je suis SAOUL, au Bulas, ayant une chouette soirée du nom de "Tango's bday" : joyeux anniversaire, Tango!!!" pas d'aide, bro ;> juste de la bière et la santé! [Première approche] Essayer de jouer avec le catching system. Raté. [De la mailing liste Linux-MIPS] "PAX ne peut pas être entièrement supporté sous MIPS; l'architecture n'a pas de flag no-exec dans ses pages. La doc de PAX sont des conneries au fait. la protection d'exécution ne requièrent pas une division des TLB et de toutes façons, les uTLB MIPS sont divisées." -- Ralf [Réponse] (Malgré le fait que Ralf, un de mes allemands fantaisistes, a raté complètement le truc du projet PaX) Je vois que MIPS a des TLB divisées, mais elles ne peuvent pas être distinguées au niveau logiciel, d'un autre côté. Donc, quand un défaut de page a lieu, je ne vois pas comment un morceau de (non-micrododé) gestionnaire d'exception puisse savoir si le I-Fetch est fait depuis la "zone de code" ou une tentative d'exécution d'une charge utile injectée dans la mémoire supposée ne contenir que des données lisibles/inscriptibles. Plus le fait que la JTLB contient des références vers les données et le code ensemble dans un cache de translation d'adresses. Plus la situation comme les translations démappées kseg0 et kseg1, qui auront lieu en debors de tout TLB (dont l'adresse virtuelle est soustraite de 0x80000000 et 0xA0000000 respectivement pour avoir la localisation physique), faisant, comme vous avez mentionné, que diviser les uTLB (sans compter le cas special kseg2). Mais PAX fait aussi attention à la sécurité niveau noyau. Même si MIPs divisait les unités de cache (ce qui peut être vérifié séparément par logiciel) ne rendrait pas l'approche faisable car si vous avez un morceau de données précédement mise en D-cache (chargement/stockage) la ligne du cache devrait être invalidée et le contexte sauvé dans l'I-cache avant que l'étape du pipe I-Fetch ne réussisse. En fait, la protection d'exécution (de manière générale) ne requièrt pas de TLB divisée. D'autres solutions conçues et implémentées par PAX sont SEGMEXEC (utilisant des fonctionnalités spécifiques de segmentation sur les coeurs basés x86), et MPROTECT. La dernière utilise vm_flags pour controler toutes les états de correspondance mémoire, garantissant qu'ils ne détiennent jamais VM_WRITE | VM_MAYWRITE en même temps que VM_EXEC | VM_MAYEXEC. Mais comme la solution devient plus complexe, elle tend a avoir plus d'implications. D'abord, elle ne serait pas aussi simple et "automatique" que le contrôle par page. Un autre point est que cette solution de préviendra pas des attaques au niveau noyau et donc, parmis d'autres, n'importe quelle corruption dans ce niveau permettrait une manipulation directe des flags de mapping des tâches. Finalement, un problème connu est celui d'un attaquant qui est capable d'écrire sur le système de fichier et re requérir qu'un fichier soit mappé en pépoire comme PROT_EXEC. En d'autres mots, oui il est possible de réaliser la protection d'exécutions d'une autre manière, mais pas aussi précise qu'au niveau des pages. [Seconde approche] "Plus le fait que la JTLB contient des références vers les données et le code ensemble dans un cache de translation d'adresses." a été d'un problème vers une solution, quand on en a discuté avec l'équipe de PaX. L'extrait : "Plusieurs correspondances : si plus d'une entrée dans la TLB correspond à une adresse virtuelle translatée, l'opération est non définie." de [3]. L'algorithme : - Depuis le gestionnaire d'exception Refill, vérifier le fetching type { * _EPC = EPC; * if CP0(Cause(BD)) [ . _EPC += 4; ] * compare ( CP0(_EPC) , CP0(BadVaddr) ) [ . if TRUE ( I-Fetch ); . else ( D-Fetch ); ] * I-Fetch [ . construit le PTE valide et le charge normelement dans la J-TLB ; ] * D-Fetch [ . contruit un PTE valide et le charge dans la J-TLB; . le forcer à être chargé dans notre gentille entrée dans le D-TLB ( __asm__ __volatile__ ("lw %0,0(%1)" : "=r" (user_data) : "r" (address)); ) . construire un PTE invalide, pour le même ASID/VPN, marqué par PaX ( static inline pte_t pte_mkpax(pte_t pte) { pte_val(pte) &=~(_PAGE_READ|_PAGE_SILENT_READ|_PAGE_DIRTY); } ) . charge l'entrée invalide dans la J-TLB ] } La conjecture : Si un I-Fetch a lieu à cette (précédement marquée par PaX) page, le circuit de tri du TLB devrait prendre l'entrée invalide de la J-TLB, la charger dans l'I-TLB et générer un deuxième défaut de page en essayant de faire usage de l'entrée. - Depuis le gestionnaire d'exception Refill, vérifier le fetching type { * _EPC = EPC; * if CP0(Cause(BD)) [ . _EPC += 4; ] * compare ( CP0(_EPC) , CP0(BadVaddr) ) [ . if TRUE ( I-Fetch ); . else ( D-Fetch ); ] * I-Fetch [ . for PaX marked pages ( pax_report_fault(...); do_exit(SIGKILL); ) . for non PaX pages, construire le PTE valide et le charger normalement dans la J-TLB; ] } [L'expérimentation] L'ordinateur : IDT 79RV4600-100, 128MB of RAM. - Code exécutif { * joue avec CP0(Index); * joue avec CP0(EntryLo)'s flags; * joue avec CP0(Wired); } - Transférer le Translation Lookaside Buffer vers le disque { * regarder après des schémas; } Le code utilisateur: #include #include #include #include #include #include /* jr ; nop */ const unsigned long payload[] = { 0x03e00008, 0x00000000 }; int main(int argc, char **argv) { unsigned long page, vpn; void *vaddr; int fd; /* mmap itself won't load/store the page, which means a virgin * place so we can be the fault's EPC. */ if (argv[1]) { fd = open(argv[1],O_RDWR); vaddr = mmap(0, PAGE_SIZE, PROT_EXEC|PROT_READ|PROT_WRITE, MAP_PRIVATE, fd, 0); } else { /* malloc's internals stores then loads somewhere in * the page range, it will generate our fault. */ /* This is ridiculous, but MIPS glibc's * does brk(PAGE_SIZE * 33) even if you * just want to malloc(few bytes), normally you get: * -> brk (0x10001000 + (PAGE_SIZE * 33)) * * If malloc requested size > 33 pages then it old_mmap * PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS * * Even funnier cause as far as I can tell glibc * assumes size >= 32 (instead of 33) to then * get_unmapped_area.... * * Thinking about the whole MIPS architecute i can't * think of anything that could justify this crap. */ vaddr = malloc (33 * PAGE_SIZE); memcpy(vaddr, (void *) payload, 8); } page = ((unsigned long) vaddr & (PAGE_MASK)); vpn = ((unsigned long) vaddr & (PAGE_MASK << 1)); printf("Payload @ %08lxn", (unsigned long) vaddr); printf("CP0_BADVADDR : %08lx [VPN = %08lx]nn", (page+8), vpn); /* I-Fetch vaddr */ asm( "or ,,n" "jalr n" : : "r" (page), "r" (((unsigned long) vaddr & ~(PAGE_MASK))) ); return page; } [Les résultats] Schémas : Pas de schémas. L'algorithme de tris semble indécidable depuis l'interface logicielle. - Exemple de sortie { surreal kernel: ###################################################### surreal kernel: [do_page_fault] : Program : Hello [3218] surreal kernel: [do_page_fault] : CP0_BADVADDR : 2aac3004 surreal kernel: [do_page_fault] : EPC : 2ab90928 surreal kernel: ---> TLBS Exception (1000ffdb) surreal kernel: surreal kernel: ------------------------[BEFORE]--------------------- surreal kernel: [__update_tlb] : Program : Hello [3218] surreal kernel: [__update_tlb] : CP0_BADVADDR : 2aac3004 surreal kernel: [__update_tlb] : ASID : 00000062 surreal kernel: [__update_tlb] : EntryHi : 2aac2062 surreal kernel: [__update_tlb] : EntryLo0 : 32565e surreal kernel: [__update_tlb] : EntryLo1 : 0 surreal kernel: [__update_tlb] : Index : 45 surreal kernel: surreal kernel: ---- TLB Entries ---- ............................................................. surreal kernel: Index: 45 pgmask=4kb va=2aac2000 asid=62 surreal kernel: EntryLo0 : [pa=0c959000 c=3 d=1 v=1 g=0] surreal kernel: EntryLo1 : [pa=00000000 c=0 d=0 v=0 g=0] surreal kernel: surreal kernel: ------------------------[AFTER]---------------------- surreal kernel: [__update_tlb] : Program : Hello [3218] surreal kernel: [__update_tlb] : CP0_BADVADDR : 2aac3004 [00000000] surreal kernel: [__update_tlb] : ASID : 00000062 surreal kernel: [__update_tlb] : EntryHi : 2aac2062 surreal kernel: [__update_tlb] : EntryLo0 : 32565c surreal kernel: [__update_tlb] : EntryLo1 : 3297dc surreal kernel: [__update_tlb] : Index : 47 surreal kernel: surreal kernel: ---- TLB Entries ---- ............................................................. surreal kernel: Index: 45 pgmask=4kb va=2aac2000 asid=62 surreal kernel: EntryLo0 : [pa=0c959000 c=3 d=1 v=1 g=0] surreal kernel: EntryLo1 : [pa=0ca5f000 c=3 d=1 v=1 g=0] surreal kernel: surreal kernel: Index: 47 pgmask=4kb va=2aac2000 asid=62 surreal kernel: EntryLo0 : [pa=0c959000 c=3 d=1 v=0 g=0] surreal kernel: EntryLo1 : [pa=0ca5f000 c=3 d=1 v=0 g=0] } - Exemple qui fonctionne { tiago@surreal(~)$ ./Hello Payload @ 2aac3008 CP0_BADVADDR : 2aac3008 [VPN = 2aac2000] Killed tiago@surreal(~)$ uname -a Linux surreal 2.6.9-rc2 #125 Thu Oct 28 05:38:27 BRT 2004 mips unknown tiago@surreal(~)$ ............................................................. surreal kernel: ################## EXECUTION ATTEMPT ################# surreal kernel: [do_page_fault] : Program : Hello [3218] surreal kernel: [do_page_fault] : CP0_BADVADDR : 2aac3008 surreal kernel: [do_page_fault] : EPC : 2aac3008 } - Raisons possibles { * timing; * stupidité; * ...; } Donc ? Regarder dans certains projets d'opencore.org et vérifier leur implémentation du circuit MMU pourrait me donner des idées. Ah ! Oui, à propos, si vous avez le projet HDL du MIPS standford, ou n'importe lequel de ses enfants, tenez moi au courant s'il vous plait -- warez. Merci. [1] http://www.securityfocus.com/archive/1/333303/2003-08-09/2003-08-15/2 [2] http://cvs.openbsd.org/papers/auug04/mgp00009.html [3] MIPS R4000 Microprocessor's User Manual, 2nd Ed. (p.62). |=---=[ Interview ouverte - Questions vraiment cools Q : Est-ce vrai que tu entretiens toujours des relations avec la team KIQ ? Quelle genres de missions as-tu fait pour eux ? A : je hais le soccer. Q : À quel point ta relation avec la scène des putes à moitiés mortes est-elle proche ? Parles nous des gangbang .ro/.br ... A : Le rapace qui est gros ? Q : Nous avons entendu parler que mayhem part dans ton pays pour fuir les lois fascistes, as-tu déjà essayé ELFsh ? A : Hrmmm, en fait c'est juste un jeu génial de vendeur de beuh. Quiness ? Q : Tu as déjà dis 4 fois dans le passé, après avoir posté des conneries dans dailydave, que tu ne recommencerais plus, mais tu poste toujours. Comment vis-tu cette dépendance ? Aucune idée de pourquoi aucun lecteur de cette mailing list ne comprend un mot de tes idées philosophiques ? A : 4 ? je l'ai dit 82 fois. Je ne pense simplement pas au sujet, c'est comme avoir avoir de l'aide et se sentir concerné. Êtes-vosu siphonés ? Je suis sur que je suis le seul retardé capable de comprendre mon symbolisme ;P Q : Coxinhaaaaa? A : Bico Q : Sur la philosophie, pourquoi as-tu fini dans CE monde ? Il y a des rumeurs qui disent que tu parles avec ton ordinateur de philosophies et lui demandant des commentaires avant de poster dans dailydave ? A : voir "Vie". Faux ! C'est pour ça qu'ils sux autant A : Absynthe? A : Escroc! Q : As-tu déjà essayé de mettre un peut de sens à tes idées philosophiques _sans_ effets de l'absynthe ? A : Bohèmes, Dan Frank. <3 Q : Est-ce que le nombre de "hu" a une signification pour toi ? A: Huhuhuhuhuhu hu huhuhu Q : Y a-t-il une quelconque relation entre "hu" et "uh" ? A: Uh? Hu! Q: Absynthe? A: Espagne Q : Des rumeurs disent que l'équipe de PaX t'as fortement armé à être leurs salope MIPS, un commentaire ? A : :< Pas gentil. J'ai presque crié à cause de la /petite pipe/ [NDT : en français dans le texte]. Q : Comment s'est faite la transition entre le patinage inline et l'assembleur inline ? A : Glissante... A : Laquelle est la plus grande ? scenewhores, la scène hacking ou la scène X-games ? A: 540 into True-spin kind grind, fake 360 out. Q : Que veut dire "hu" en fait ? A : veut dire ? :/ Q : Quelle est ton opinion sur finger(1) ? A: HUHUHUHUHU q:D Q: Free [RaFa] ? A: Assied tois sur tes pieds Q : As-tu quelque chose à dire à tous les gens autour qui tentent de comprendre que connard tu es ? A : S'ils sont vraiment inquièts pour ça, ils peuvent arreter de chercher et commencer à pleurer. Q : Nous aimerions te félicité pour ton défaçement de Phrack Prophile réussi, et en fait, se débrouiller pour le distribuer. Comment l'_avais_ tu enlevé ? A : Je ne l'ai pas fait :D Q : Peux-tu répondre à une question avec un paragraphe de moins de 20 lignes de long ? A : Non. Q : Est-ce que ton amour pour MIPS a à voir avec le dessin animé "Coyote & Road Runner" A: "Voir MIPS marcher" ? [NDT : "see MIPS run"... il y a un jeu de mot avec "run" qui veut soit dire courir (et donc impliquer le dessin animé), ou fonctionner (et là, c'est l'architecture MIPS), difficilement traduisible :'(] Q : On a entendu dire que tu étais le fondateur de huhushmail ? Peux-tu éclairer nos lanterne de comment la sécurité par l'obscurité fonctionne en fait ? A : L'une d'entre elles, oui. Je dois accepter, bien que si je vous donne le moindre éclaircissement, je casserais le concept. Q : Peux-tu deviner quel sera ta prochaine réponse ? A : Non, mais je connais la question. Q : Aucune idée pourquoi Phrack ne devrait pas être renommé Phcrack ? A : À cause du prix des moustiques bleus de Tanzanie Q : CRUZEIROOOOOOO A : Chupame la pija, boludo maricon! Q : Quelle est la meilleure backdoor ? PaX ou grsecurity ? A : Pour être honête, je préfère la technique de backdooring iGOBLIN. Q : Quel pourcentage de cette intervew est dans l'humour que nos lecteurs ne comprendrons jamais ? A : 95.46008097%. Je devrais avoir les analyses graphiques dans peu de temps, depuis le très connus LRL -- Lance Research Laboratory. ;) Q : Comment ressent tu le fait d'être célèbre maintenant ? Comment ce prophile va changé ta vie pour le mieux ? Pour le pire ? Où des recruteurs peuvent te contacter ? A : J'ai déjà reçu 83 appels téléphonqiues, 68 messages par fax, et 3 e-mails. Des Invitations de toutes les groupes fantaisistes d'elites hackers. Ça devrait aussi s'appliquer à la NSA -- National Symposium of Albatri. Je m'attend à pouvoir diminuer la pauvreté brézilienne et les attaques DDoS avec cice, en augmentant le nombre de défaceurs qui feront des courbettes devant ma magnifiscence. Je prévois aussi de devenir amis avec toues les elites hackers et pour être reconnu comme tel. Je serai beau, célèbre, aimé -- un super-héro ! Je m'en prie. Q: DURA? A: Hooray pour Danny! *o/* Q : Que penses-tu de Richard Johnson de iDEFENSE ? A : Sûr : n'est pas un petit voleurs, il porte des préservatifs ! Q : As-tu une idée de pourquoi Richard Johnson de iDEFENSE ne s'est pas encore suicidé ? A : Manque de fantaisie. Q : Qui est ton "hot shot hacker from texas" favori ? A Le KoolKrazyKlantastic -- fluffi leona o/ =---=[ Commentaires en un mot [Donnez un commentaire en un mot pour chaquun donné à gauche] MOT ? : MOT ! |=---=[ Une suggestion/commentaire/flame sur la scène ou quelqu'un de spécifique ? Ce ramassi de conneries donné plus haut veut dire quelque chose une fois fait. Fuck ces significations et implications politiques, bien que je ne puisse pas les éviter. Continuons. |=---=[ Clin d'oeil et remerciements Je ne crois pas au mérite. Le faire est aussi arbitraire de ne pas le faire. Cependant, je veux étreindre quelques personnes; ma famille, mon stag, mon angliche de frère, mon tukey, mon albatros, mes creyss, mes grenouilles, mes hollandais, mes hongrois, le seul gars qui soit plus chaud qu'un vieil appartement, mon dot-pa-marine, mon waismo, mon joto, faggy, mon blanc américain blackhat, mon kurd, mon corcho, mon suédois, mon chef, mes fantôme, mon géant K-master analyseur linguistique métrosexuel, mon iGOBLIN sans-sourire, mon tibu, et TOUUUUUTE ma collection de copains fantaisistes! |=[ EOF ]=---------------------------------------------------------------=|