jeudi, février 12 2009
Par Baboon le jeudi, février 12 2009, 16:01
Maintenant que nous avons un joli call fixer pour StarForce pourquoi ne pas faire un plugin pour ImpRec ?!
Il y a plusieurs obstacles avant d'arriver à un plugin fonctionnel et rapide et ce à cause du système de plugin ImpRec qui n'a pas été super bien pensé (enfin je trouve ..)
Lire la suite...
une annexe
mercredi, février 4 2009
Par Baboon le mercredi, février 4 2009, 14:58
Salut les zouaves
J'ai eu récemment l'occasion d'étudier un programme protégé par StarForce 4.70.X cette version de StarForce à l'air d'être conçue spécialement pour les logiciels contrairement a StarForce 3 qui lui visait surtout les jeux. Cette version donc est beaucoup moins robuste que celle utilisée pour les jeux, pas de drivers, pas de VM, pas de stolen bytes, pas de code redirigés MAIS une protection des imports pas mal foutue. J'exposerai donc dans ce post la technique que j'ai utilisée pour rebuild tout ca ...
Lire la suite...
mardi, novembre 25 2008
Par Baboon le mardi, novembre 25 2008, 21:52
juste un mini post pour vous faire part de mon effarement face à une bizarerie intelienne
A votre avis qu'est censé faire pop [esp] ?
Vous allez me dire : "ba facile ca ajoute juste 4 à esp et pis voila rien n'est modifié en mémoire easy quoi"
EH BIEN NON BANDES DE MALHEUREUX !!!
Lire la suite...
vendredi, novembre 21 2008
Par Baboon le vendredi, novembre 21 2008, 11:37
Sali sali salut
Mon dernier papier est disponible sur le site de la FAT (rubrique .data et .code).
Etant un FATien il fallait bien que je produise mon article annuel, ces derniers temps je n'avais meme plus StarCraft pour compenser ma non-productivité
Bref cet article est consacré à PELock et à la programmation d'un "unpacker" avec bee-lee, bonne lecture et si vous avez des questions : le forum de la FAT vous est ouvert
samedi, novembre 15 2008
Par Baboon le samedi, novembre 15 2008, 20:05
Bee-Lee est la librairie que j’ai développée à partir de la technique dont je vous ai parlé ici
Cette librairie permet de debugger un processus sans utiliser d’APIs debug, sans utiliser d’interruptions (à part une à l’entry point pour prendre la main) et sans patcher le code (sauf KiUserExceptionDispatcher pour récupérer les exceptions).
La librairie permet de poser des break points (sans patcher le code ni utiliser les DRs), de faire du pas à pas, et de retourner dans le code après vos bidouilles. Vous avez accès aux registres et à l’ensemble du context de la thread.
Lire la suite...
vendredi, septembre 19 2008
Par Baboon le vendredi, septembre 19 2008, 15:42 - General
Obsidium est un packer relativement peu utilisé (je ne l'ai pas beaucoup croisé mais bon je ne suis pas non plus un zigouilleur d'applications en série ...) il est pourtant intéressant pour plusieurs raisons et relativement costaud.
Dans cet article j'expliquerai comment unpacker un programme protégé par ce packer, pour l'unpacké j'ai utilisé olly et le plugin HideDebugger, ODBGScript, mon plugin permettant d'injecter des DLLs dans le processus débuggé : IinjOlly, IDA et son systeme de script IDC, LordPE, ImpRec et GoAsm pour le dévelopement de mon call fixer ainsi qu'un petit script en python qui permet de transformer une source rippée avec IDA en source assemblable par GoAsm.
Lire la suite...
dimanche, août 31 2008
Par Baboon le dimanche, août 31 2008, 19:39 - General
Les debuggers sont des outils indispensables pour reverser un programme et étudier une protection. Les développeurs de protections logicielles s'en sont bien rendus compte et il existe aujourd'hui une flopée de techniques permettant de détecter et de mettre à mal les debuggers ring3 et ce de façon générique (IsDebuggerPresent) ou ciblée (vulnérabilité de OllyDBG dans le traitement des chaines envoyées par OutputDebuggString). De plus les debugs APIs font très bien leur boulot mais elles sont assez lentes. Il existe bien des debuggers ring0 qui sont plus rapides et plus discret mais ils sont contraignants, peu pratiques (même avec l'arrivée de syser), et finalement il existe encore des façons génériques de les détecter et de les annihiler (mouhahahaha). A la vue de ce constat, les émulateurs semblent être de bonnes alternatives aux debuggers « classiques » mais ils sont dures a programmer et ne sont jamais fiables à 100% de plus il n'existe pas (à ma connaissance) d'émulateur publique qui soit fonctionnel et utilisable dans le cadre, par exemple, de l'étude d'une protection.
Il existe enfin des debuggers dit non-intrusifs comme Obsidian qui utilisent des 0xEBFE ou des int3 pour faire du step by step, Obsidian par exemple est injectée dans le processus cible et va placer un 0xEBFE juste après l'instruction courante, lancer le processus et le mettre en pause, le processus aura alors exécuté une instruction et bouclera indéfiniment sur la seconde, cette technique est plus rapide et plus discrète que l'utilisation des debugs APIs mais elle reste quand même intrusive, en effet Obsidian doit modifier le code de l'application pour pouvoir fonctionner, pour ce faire il doit donc modifier les droit de la page mémoire ou utiliser WriteProcessMemory, de plus un simple CRC peut la détecter enfin elle nécessite de lancer une thread supplémentaire dans le processus cible. Je vais détailler dans ce post une nouvelle technique permettant de faire du step by step dans un processus de façon discrète et efficace, cette technique n'est pas parfaite, elle a finalement elle aussi des inconvénients comme toutes les autres techniques présentées précédemment mais elle a aussi certains avantages.
Lire la suite...
vendredi, juin 13 2008
Par Baboon le vendredi, juin 13 2008, 13:23 - General
Sali sali salut !
Après avoir gouté aux protections de jeux avec Diablo 2 LOD et SecuROM je restais un peu sur ma faim.
En effet Diablo 2 était moin dur qu'un asprotect light, juste des call [api] redirigés bref rien de très excitant meme si c'était marrant.
J'ai donc demandé à droite, à gauche qui connaissait un jeux protégé par SecuROM et qui utilise les triggers, il fallait aussi que le jeux ne soit pas trop récent avec du SecuROM v7.
uLysse_31 a eu la gentillesse de me upper une iso valide (comprendre : avec laquelle on puisse jouer au jeu) de Vietcong, un jeu sortit en avril 2003 qui contient des triggers (le jeu en lui même est assez simpa, il y a de la bonne musique et tout plein d'armes, par contre l'IA est à chier).
Apres mes exams (resultats dans une heure :P) je m'attaque donc à la bete ...
[EDIT] j'ai eu mon année \o/
Lire la suite...
mardi, juin 3 2008
Par Baboon le mardi, juin 3 2008, 21:15 - General
Je participe activement a l'aventure "Nibbles microblog", un blog communautaire qui rassemblera des idées , des bouts de codes et qui permettra de partager nos connaissances sans formalisme et sans devoir creer un blog par reverser.
Plus d'infos ICI et LA
Ce blog est ouvert à tous, y compris ceux qui ont leur propre blog
Je compte donc continuer à poster ici mais surtout mes gros projets, tout ce qui va etre bout de codes, idées qui ne "méritent" pas un gros post ici (et que je ne publiais pas) iront sur le microblog c'est donc gagnant-gagnant.
J'ai deja posté un petit truc sur un plugin pour olly que j'ai fait : HeeekHook qui permet de détecter des modifications en memoire du code des modules chargés.
N'hesitez pas à visiter ce blog et à y participer !
lundi, avril 14 2008
Par Baboon le lundi, avril 14 2008, 02:12 - General
J'ai résolu le VVM Keygen-me de antofik (ICI)
Il comporte 2VMs imbriquées, la première étant bien plus costaud que la deuxième.
Lire la suite...
samedi, mars 15 2008
Par Baboon le samedi, mars 15 2008, 16:53 - General
Apres avoir initié un ami à Starcraft, il a voulu que je me mette à Diablo 2 - vous savez, le jeu où on zigouille sa souris .
Comme il y avais un momment que je voulais tater une protection de jeux videos je lui ai sauvagement taxé ses CDs pour en faire une copie valide afin de pouvoir faire un petit no-cd.
Lire la suite...
mercredi, février 6 2008
Par Baboon le mercredi, février 6 2008, 17:15 - General
Comme de mauvaises langues disent que je ne fouts plus rien, je poste mon petit loader pour Starcraft
Depuis la mise à jour 1.15.2 le CD de starcraft n'est plus nécessaire pour jouer : http://computergames.ro/en/downloads/viewitem/id/10036/name/starcraft-v1152-patch-for-windows.html
Donc finalement mon loader ne sert à rien mais bon, moi je l'utilise toujours, je l'aime bien :P
Lire la suite...
dimanche, décembre 30 2007
Par Baboon le dimanche, décembre 30 2007, 18:12 - General
Ca fait longtemps que je n'avais pas posté un petit truc ici !
Je sais que c'est à la mode de mettre son pitit n'article toutes les semaines histoire de fidéliser le lecteur mais bon ....
J'ai beaucoup de projets mais à long terme je n'ai donc strictement rien à poster ....
Tout ca pour dire que recemment pour une raisons X (une raison inconnue hein ! pas une raison pornographique !) j'ai eu besoin d'installer un petit serveur FTP sur ma becanne (vroum vroum)
Je demande donc quelques avis et je decide d'installer Serv-U , jusque là pas de probleme ...
Hélas à la fin de l'installation, pan ! , message d'erreur !
Un .ocx utilisé par le logiciel trouve intelligent de se loader a l'endroit où est censé se loger user32 resultat : ca marche pô !
La solution : reloger la dll !
...
Lire la suite...
lundi, août 13 2007
Par Baboon le lundi, août 13 2007, 22:33 - General
J'ai resolu le K5 il y a maintenant un bout de temps et j'ai decidé (bande de petits veinards) de partager avec vous la suite d'outils que j'ai fais pour resoudre cette perle de crack-me.
Pas de tutos , pas trop d'explications quand a l'utilisation de ces outils , ils sont surtout là pour vous donner des idées , un point de depart pour que vous arriviez vous memes a faire vos propres outils ou tout simplement pour glaner des "trucs"
Lire la suite...
Par Baboon le lundi, août 13 2007, 10:57 - General
Juste un petit post pour annoncer mon arrivée dans la FAT
Il leur manquait un joueur pour faire un tournois de SC et Street of Rage (et eventuellement un de belote)
http://fat.next-touch.com/
lundi, août 6 2007
Par Baboon le lundi, août 6 2007, 15:39 - General
Je bosse ces temps ci sur des packers qui ont la très mauvaise habitude d'utiliser des exceptions à tout va pour embéter le monde et effacer nos precieux DR (DebuggRegisters , ce sont eux qui nous permettent de poser des Hardwares BreakPoint).
Mattwood avait fait un plugin pour olly pour eviter que les DR soit ecrasés mais chez moi il ne fonctionnais pas en plus de lui manquer quelques fonctionnalitées.
Lire la suite...
lundi, juin 4 2007
Par Baboon le lundi, juin 4 2007, 20:06 - General
Ceux qui idlent sur IRC ont du remarquer le comportement bizarre de Kaine ces derniers jours ...
En effet il lui arrive de crier de façon compulsive "iiinnnnnjj".
IINJ n'est autre qu'un petit tool que j'ai bidouillé , permettant d'injecter du code dans un processus en cours et ce de façon relativement discrète.
Lire la suite...
Par Baboon le lundi, juin 4 2007, 18:41 - General
Alors voila ...
Premier Blog :p
Je compte vous presenter ici quelques petits truc sur mes avancées / tools / scripts / articles sur le RCE
Un grand merci a Thomas pour son aide et la redirection