unix4fun

Aller au contenu | Aller au menu | Aller à la recherche

samedi 18 juin 2011

des piécettes électroniques! donc l'avènement d'e-mendiants!

Apres quelques conversations avec un pote sur cette nouvelle "monnaie" électronique, il m'a fait constater un ensemble de propriétés marrantes et interessantes (pas de trusted third party, la resolution d'un problème mathématique pour limiter l'emission de monnaie, etc..), j'ai beaucoup de lacunes quand au fonctionnement économique actuel, mais le fonctionnement de cette monnaie et l'utilisation de la crypto et du réseau pour definir ces propriétés, a lire et suivre!

mercredi 9 juin 2010

Le crochetage SSL avec ton serpent

Pour un premier post, désolé, c'est sur du win32 :). Je lisais dernièrement "GrayHat Python" et je découvre Pydbg (un debugger écrit en python) que je ne connaissais pas (bon je ne connais pas grand chose non plus, du coup c'est plus facile d'être émerveillé) et dans le chapitre sur le hooking je tombe sur un exemple de "soft-hooking" (le hooking avec un breakpoint soft (INT3) sur la fonction qui t'intéresse) pour "sniffer" les connections SSL dans firefox (hook sur une fontion specifique de firefox).

Ca me rappelle des discussions avec eau qui avait déjà commence a bosser dessus, en voyant comment le truc est tout con ca m'a donne envie de voir si hooker les "CryptoAPI"s de MS que IE utilise est tout aussi simple.

Donc une fois recup Pydbg, un petit "import pydbg" et on peut instancier un object debugger mydbg=pybdg.pydbg().
Et voila! maintenant qu'on a notre debugger instancié, on peut s'attacher a des process, mettre des breakpoints, lire l'etats des registres etc.. Un peu comme scripter a l'interieur d'IDA ou ImmunityDebugger.

Du coup c'est vrai que le soft hooking comme ca c'est tout bidon. Un petit breakpoint dans la fonction qui nous intéresse, une callback fonction pour effectuer des opérations sur cette fonction et on release le breakpoint pour que le process continue normalement.

Bon, c'est pas efficace du tout côté perf, c'est clair...
Mais pour un ptit hooking rapido histoire de tester/fuzzer un truc ca peut etre sympa et utile.

Alors voila j'ai matte les CryptoAPI de MS et j'ai pense d'abord hooker "CryptEncrypt()" et "CryptDecrypt()" exportées par "Advapi32.dll".

Ok finalement en cherchant un peu, il y a eut pleins de présentations sur le hooking de ces 2 fonctions (par exemple celle-ci) et en effet c'est tout bon mais pour sniffer uniquement.

Si on veut modifier les requêtes envoyées par exemple, alors la on voit qu'on tombe sur un os, en tracant les appels un certain "CryptHashData()" est appelé avant "CryptEncrypt()" et donc dommage.. Difficile de modifier un truc hashe préalablement sans que ca se voit! Et la ce cher eau me dit qu'il avait regarde "EncryptMessage()" et "DecryptMessage()" et il avait raison le bougre!

En effet "EncryptMessage()" prend la requête, appele "CryptHashData()" puis "CryptEncrypt()" et balance tout ca hashé/chiffré ensuite au fonctions résal(réseaux). Du coup hooker "EncryptMessage()" est bien plus intéressant puisqu'avant le hash donc possible de modifier la requête.

Je n'ai pas encore réussi a faire tout ce que je voulais sur "EncryptMessage()", modifier la requête...ok, mais uniquement si sa nouvelle taille est <= a l'originale. Pour en générer une de taille > a la requête originale, je coince.

J'ai essaye de mettre a jour la taille a plusieurs endroits, re-ecrire la requête en allouant assez de place ailleurs et updater les pointeurs/références sur ma nouvelle requête mais niet... je dois merder, quelque chose m'échappe.

Voyant que des fonctions appelées avant "EncryptMessage()" manipulaient aussi la requête HTTP et utilisaient la taille pour différents trucs que je n'ai pas exploré je me suis résigné a hooker la dedans et c'est passé. Enfin, j'ai finalement hooke une fonction qui se trouve dans "Wininet.dll" mais elle semble tres specifique a IE donc pas super fonctionnel pour autre chose qu'IE... (i.e. Thick Client)...

Pour ceux que ca intéresse, voila un petit bout de code tout bidon (et pas beau je sais :)..) mais c'est juste pour tester et voir comment jouer avec pydbg et le soft-hooking:

hook_ssl_pydbg.py

J'ai teste ca sur XP SP2 en anglais avec IE7.

Un petit print screen aussi pour voir ce que ca donne:

hook_ssl_pydbg.png

Pydbg fait parti du framework Paimei (du coup ca m'a donne envi de revoir kill bill2..):
Paimei

svn checkout http://paimei.googlecode.com/svn/trunk/pydbg paimei-read-only

CryptEncrypt(), CryptDecrypt(), EncryptMessage(), DecryptMessage()

Ca passe ok avec python 2.6 sur ma VM XP mais quelques posts disent que pydasm ne passe bien qu'avec python 2.5.

mercredi 2 septembre 2009

Piccolo-SAN!!!

On m'a pose une question ce matin et je me suis rappele que j'avais ecris un tools a la noix pour l'iSCSI, mais du coup j ai vite cherche 2-3 trucs divers sur "l'intarwebs" ( (c) unpote ) a propos des autres trucs sur les SANs, et j'ai trouve qqes autres trucs marrant a lire:

bref c'est pas nouveau, mais ca fait du bien a relire et ca me donne presque envie de bidouiller 2,3 ameliorations a mon bidule, si je le retrouve grbmlmblmb..

enjoy!

mercredi 12 août 2009

Une petite piqûre d'hér... de rappel.

Bon ben je sais pas pour vous, mais j'ai toujours fait des trucs moches genre :


void
sighandler_foo(int nsig)
{
   printf("Signal %d caught.  Exiting.\n", nsig);
   exit(EXIT_SUCCESS);
}

J'ai schématisé, mais l'idée est là. Bah en fait faut surtout pas écrire cette horreur. Là, normalement vous me pointez du doigt en riant très fort, et je deviens rouge de honte. Mais j'ai vaincu ma peur du ridicule, et je le clame : oui ! je suis une bille !

Sinon, pour ceux qui ne savent pas, en fait j'ai appris ça en lisant un post de Solar Designer sur nmap-dev, qui expliquait par le menu pourquoi c'est super crappy :

Après avoir vérifié, rien de tout ça n'est écrit dans signal(2) sur ma machine (Linux), mais c'est très clair dans le man OpenBSD, en revanche.

HTH.

samedi 18 juillet 2009

fait ton propre kit d'espion du 21eme cyber siecle de la cyber armee du commandement ultra internet connecte

Et voila un truc drole, une boite qui a release les plans pour fabriquer/bricoler son propre "keylogger wireless", c'etait drole alors je me suis dit que j'allais "newser".

c'est par ici

Enjoy!

samedi 30 mai 2009

Intel rajoute de la mozarella dans ses proc...

Je me balladais tranquille, en week end et je suis tombe sur le lien suivant:

moi>Intel AES instruction set support?! hu?! depuis quand?!?!

J'ai vite lu la doc et j'ai voulu voir si mon CPU tout recent supportais cette joyeusete, Intel file du code, mais ca compilait pas direct alors j'ai vite refait tout simple..:

#include <stdio.h>
#include <unistd.h>

int chk_cpu_aes_support() {
    unsigned int rc;
    asm ("mov $0x01, %%eax\n\t"
         "cpuid\n\t"
         "mov %%ecx, %0\n\t"
         :"=r"(rc)
         : /* no inputs */
         :"%ecx", "%eax"
        );
    return (rc & 0x2000000);
}

/* ORIGINAL INTEL CODE.
int Check_CPU_support_AES() {
#if defined(__INTEL_COMPILER)
    int CPUInfo[4] = { -1 };
    __cpuid(CPUInfo, 1);
    return (CPUInfo[2] & 0x2000000);
#else
    unsigned int a=1,b,c,d;
    __cpuid(1, a,b,c,d);
    return (c & 0x2000000);
#endif
}
*/

int main(int argc, char ** argv)
{
    fprintf(stdout, "%08x(%d)\n", chk_cpu_aes_support(), chk_cpu_aes_support());
    return 0;
}

Et tristesse...:

$ ./intelaesdetect
00000000 (0)

  • sniff*...

si qqun a un resultat "positif" n'hesitez pas a _COMMENTER_ juste que je sache quel series est capable de faire ca..

lundi 2 mars 2009

rustock.C le virus qui transforme ta babasse en disco-mobile!

Comme j'y ai vaguement fait reference qqes posts precedent, voici un petit article/description pseudo-technique du virus rustock.C avec son application tres KISS oriented.

rustock.C

Eh oui on aime UNIX, mais on aime aussi les trucs droles :)

jeudi 11 décembre 2008

browser security!

Un de ces mages (que je respecte car il est ultra poilu sans avoir la _grosse_tete_ [1] ) a ecrit une documentation, un "comparatif" tres complet des modes de fonctionnements et des comportements des navigateurs face a des trucs "bizarres" ou a des irregularites bete et mechantes, c'est vachement detaille, c'est marrant a lire..

la doc:

http://code.google.com/p/browsersec/wiki/Part1

[1] la _grosse_tete_ [n.m. lat. megalomanium narcissius] 
est une maladie ancestrale, d'abord tres repandue chez les 
nobles et autres privilegies de l'epoque, elle touche 
desormais une large partie de la population dite "competente" 
ou  "pseudo-competente" comme le cholera elle est TRES 
contagieuse et peu de remedes existent.

Elle se manifeste de divers maniere, facheuse tendance
a se remettre au centre de chaque debat, un "nationalisme"
de la competence tres fort et tres marque, une forte crise
identitaire qui se compense par l'exhibitions de ces fameuses
"competences techniques" (pourtant d'acquisition simple).

Elle est largement repandue en Occident (Europe, US) et
touche desormais largement tout les pays "emergents"
(Asie, Moyen Orient, Amerique Latine, etc..).

Depistage: une facheuse tendance a vouloir montrer ce 
qu'on sait faire tout le temps, a montrer qu'on sait tout 
avant tout le monde, que ses infos sont hyper fraiches 
(comme du poisson), une sorte de "hypitude" technique 
qui tends a etudierles meme sujets que tout le monde, 
a lire tout ce que tout le monde lit et a ecrire des blogs 
sur la "toile" en postant partout l'addresse.

Imaginez vous faire un concours de pisse chaque matin 
avec chacun de vos collegues pour leur montrer votre 
bite (qui est normale) et leur montrer que chaque soir 
vous vous entrainez pour pisser hyper hyper loin! pas 
parce que vous aimez ca,mais parce que vous aimez etre 
reconnu comme le mec qui pisse le plus loin.

mercredi 26 novembre 2008

I had a dream!

Ca semble fortement sympathique et base sur des concepts assez sexy, c'est fait par des gens poilus, ca semble egalement assez fou au niveau de certains choix qui peuvent avoir l'air bizarre mais semblent murement reflechis..

A suivre: http://netifera.com/

lundi 20 octobre 2008

hmm tu ne verras plus ton clavier pareil..

C’est tout chaud, c’est tout beau.. c’est assez sexy et super bien poilu… Un gentil monsieur velu que j’appelerai chewbacca…, donc chewbacca s’est amuse a verifier la possibilite de sniffer des claviers “filaires” au moyen de la GNUradio et d’un oscilloscope poilu.

Le resultat est ici: http://lasecwww.epfl.ch/keyboard/

c’est bluffant, a suivre…

Featuring la GNUradio ou la pour le wiki GNUradio…

dimanche 19 octobre 2008

Week-end Food #14

En retard comme d'hab pour le WEF, en meme temps on prevoit rien c'est un cadeau du ciel, je viens de le lire, j'ai pas tout suivi, donc va me falloir relire, le relire, le relire et peut etre tenter de le comprendre par la pratique...

un paper descriptif d'une petite vuln dans xen, have fun... http://invisiblethingslab.com/pub/xenfb-adventures-10.pdf

bon week end!

lundi 13 octobre 2008

uninformed #10 out!

Pres de chez vous... au menu:

  • Can you find me now? Unlocking the Verizon Wireless xv6800 (HTC Titan) GPS
  • Using dual-mappings to evade automated unpackers
  • Analyzing local privilege escalations in win32k
  • Exploiting Tomorrow's Internet Today: Penetration testing with IPv6

A tAAAAAaaaaaaaaaaaaaaaable!

dimanche 12 octobre 2008

Week-end Food #13

prrrrrrt,

si tu aime le tabasco, tu aimeras churrasco... c'est pas nouveau mais ca fera un tres bon WEF #13, a lire et a ingurgiter...

c'est pas tres long et pas trop complique a comprendre, meme si c'est pas "UNIX-related". ca parle d'une partie du fonctionnement interne des services, de l'authentification et des possibilites que les differents "contextes" et autres ACL internes de win32 offrent a un attaquant.

Je sais pas tout, mais je crois que j'ai saisi le concept :)

Bonne lecture..

le post le paper le code

mardi 12 août 2008

w00t 08!

Pleins de choses a lire, donc la y a tout les WEFs que j'aurais du poster depuis quelques mois, mais le retard n'est pas encore rattrape, bonne lecture!.

DNS vuln

Maintenant que notre soufflet s'est un peu degonfle concernant la "ouuUUuuUU-mechante-incroyable-youpi-fear-tout-ca" attaque DNS, y a un monsieur sympathique et qui documente toujours super bien ses posts, qui a fait ca.

allez hop on va lire et on se code un tools tranquillou!

jeudi 17 juillet 2008

bon je vais me recycler dans le pressing, un truc facile...

\_0< COIN!

http://piotrbania.com/all/kon-boot/

tout est dit!. (mais ca ressemble tres tres fortement au concept de eeye bootroot/sysrq2)

mercredi 2 juillet 2008

il a encore frappe!

Un cavalier qui surgit du fond de la nuit, court vers son destin au galop!! son nommmmmmmmm il le signe a la pointe de son epee, d'un L qui veut dire LCAMTUF!!!!

lcamtuf!! lcamtuf!!

le voila qui release encore un truc qui pete, je suis en train de tester... c'est joli, simple (comme d'hab) et utile..

apres a vous de juger : ratproxy

En gros un proxy, qui fait l'analyse du flux qui passe et loggue tout ce qui est "chelou" ou tout ce qui semble potentiellement "vulnerable".

vendredi 23 mai 2008

Sexy Ksplice (girls ?)

Booon, alors je suis tombé sur un petit truc rigolo. Un petit soft, qui fait la modification de code à runtime dans le noyau linux, c'est persistant, qui plus est ! Au prochain reboot ça restera en place. Idéal par exemple pour faire des patches de sécurité sans engendrer un reboot. Les esprits vifs (et pervers ?) feront tout de suite des remarques du genre "haaaan, et pis comme ça c'est plus propre que d'écrire dans /dev/kmem", euh, certes, certes. Petits canaillous.

Le lien, par ici (sponsorisé par le MIT).

jeudi 15 mai 2008

Debian, Openssl et son pote le pecheur..

Depuis hier c'est la me-merde, Debian et tout ses derives sont affectes par ce probleme, en cause un malheureux developpeur ayant commis une petite erreur d'appreciation quand a la suppression de 2 lignes dans le code d'OpenSSL package avec Debian et qui vont creer tout ca..

Je peux pas tout expliquer, j'ai rien d'un matheux, mais je vous jure la maintenant en ce moment j'essaye de comprendre, j'imagine que c'est deja relaye partout, alors comme je bele aussi des fois, je le fais aussi...

mercredi 30 avril 2008

phrack #65

Je sais, on le dit avec du retard, mais voila on a du travail tout ca, donc je suis pas toujours editer et poster dans tout les sens, desole..

Phrack #65 out!!!

Au menu donc :

  • Stealth Hooking: another way to subvert the Windows kernel
  • Clawing holes in NAT with UPnP
  • The only laws on Internet are assembly and RFCs
  • System Management Mode Hacks
  • Mystifying the debugger for ultimate stealthness
  • Australian Restricted Defense Networks and FISSO
  • phook - The PEB Hooker
  • Hacking the $49 Wifi Finder
  • The art of exploitation: Technical analysis of Samba WINS overflow
  • The Underground Myth Anonymous
  • Hacking your brain: Artificial Conciousness -c

Voila voila, y des trucs sympa, je l'ai lu en partie, je vous conseille donc de commencer des que vous pouvez!

(et encore deosle du retard d'annonce)

- page 1 de 3