3D13 - numero 4
TROIS DES TREIZE
3d13@usa.net
ICQ#38328109
http://www.3d13.grp.8m.com
(en construction depuis 3 mois)
------------------------------------------------------------------------------
                         Dimanche 24 Octobre 1999
                                  ISSUE #4
------------------------------------------------------------------------------
INTROUDUCTION :
Voila le numero 4 de cet e-zine et il y en aura encore d'autres car je suis
loin d'etre a court d'idees.
Vous allez pouvoir trouver toutes sortes d'astuces pour mieux vous
debrouiller dans la vie au quotidient ou pour hacker un ou deux sites. Il
faut tout de meme se fier a une regle primordiale : Ne hacker JAMAIS votre
pays, car eux ils ont tous les droits et si vraiment vous etes tente de le
faire, faites le a l'aide d'un phreaker, sous la forme d'une box, et surtout
pas de chez vous, le bon plan facile est la beige-box. Evitez de laisser vos
empreintes digitales apres votre coup, prennez des cagoules, ne laissez rien
car ils ont le temps et le fric pour vous retrouver et vous coller une
belle enquete au c..
Voici les nouvelles recrues pour ce mois :
- Nosferatu : un bon crackeur, si vous en avez envie, il a un logo,
              Nosferatu.jpg.
- Credit Hackgricole : un bon carder.
- Cata-clysm : un hacker.
- Zoy : un flic preventif
N'hesitez pas a ecrire des articles tant que vos texte sont pas lame, c'est
bon. Et si vous voulez integrer le groupe, c'est une autre histoire, dans ce
cas, ecrivez a 3d13.grp@usa.net
Il y a aussi un nouveau supporter pour notre e-zine : www.ifrance.com/ezines
Desole pour le retard, mais un de mes disques a crashe, c'est peut etre une
excuse facile mais c'est vrai, enfin bon, j'ai retaxe pour un nouveau et
maintenant ca devrait etre bon sinon j'ai les boules.
Cet e-zine est assez axe sur la programmation, mais ce ne sera pas toujours
pareil, j'essaye et avec l'aide des auteurs de ces articles d'etre le plus
simple a comprendre, mais c'est pas toujours facile.

DISCLAMER :
Oh zut, j'ai ecrit un e-zine et il parait que c'est pas legal de le faire !
Ben, desole alors, c'est pas ce que je voulais faire, non franchement, je
pensait juste ecrire un magazine d'informatique qui ne serait distribue que
sur le net. Alors, tout ce que je dis n'a qu'un seul et unique but : celui de
l'information. Si vous etes un hacker, un phreaker ou un quelconque cracker,
partez, ne lisez pas la suite. Merci de votre comprehension.
[Nd H/P/C/V man : "Oh non, ca veut donc dire que moi je n'ai pas le doit de
lire la suite ?"]
Bon, comme toutes les regles ont leur exception, je n'autorise qu'une seule
personne a lire cet e-zine en entier, ce sera celui qui lit ces lignes en ce
moment...
Pendant que j'y suis, je tiens a preciser qu'il y a quelques lignes hypocrites
dans ce disclamer.

------------------------------------------------------------------------------
Les definitions du jour :
CRYPTOGRAPHIE   = Ensemble des techniques permettant de proteger une
                  communication au moyen d'un code graphique secret.
CRYPTOGRAPHIQUE = Relatif a la cryptographie.
CRYPTOGRAPHE    = Specialiste de la cryptographie.
CRYPTOGRAMME    = Message ecrit a l'aide d'un d'un systeme chiffre ou code.
CRYPTAGE        = Transformation d'un message en clair en un message code
                  comprehensible seulement par qui dispose du code.
------------------------------------------------------------------------------
Nous avons classe nos rubriques par niveau comme ceci :
E = Niveau elite
    > Connait tout, surfe a fond, ...
0 = Aucunes connaissances d'informatique requises
    > Connait rien en info
1 = Pour les news newbies
    > Debutant
2 = Pour les newbies
    > Pour ceux qui connaissent au moins de nom plusieurs OS
3 = Pour les newbies avances
    > Pour ceux qui connaissent un peu la programmation et bidouille bien
4 = Pour les newbies bons
    > Pour ceux qui connaissent au moins deux OS complets, la programmation
5 = Pour les presq'elites
    > Pour ceux qui parlent couramment LINUX, DOS, NOVELL, et qui programment
    > tres bien et qui surfent beaucoup sur le net.

Nb : les articles pour Elites seront tres souvent en anglais car je les ecrit
soi moi-meme en m'appuyant sur des documents venant des USA ou soi par des
correspondants du groupe etrangers bien-sur.

                                  SOMMAIRE

             >--------------------------------|-------------------->------>
             |            ARTICLE             |       AUTEUR       | NIV. |
             >--------------------------------|-------------------->------>
 1...........| Votre courrier                 |        VOUS        |   0  |
 2...........| Turbo Pascal (partie 4)        |        3D13        |   3  |
 3...........| C++ (partie 2)                 |       Lefty        |   3  |
 4...........| Les bonnes planques du WEB     |        3D13        |   1  |
 5...........| Les Scripts (partie 2)         |        3D13        |   3  |
 6...........| Maman, j'vais m'faire un site  |        3D13        |   1  |
 7...........| Credit card rules              | Credit Hackgricole |   0  |
 8...........| Initiation a l'assembleur      |      Pyroxman      |   3  |
 9...........| La cryptographie Micro$oft     |        3D13        |   4  |
 10..........| Apercu des techniques de crk   |      Nosferatu     |   2  |
 11..........| Devenez un vrai ELITE 31337 !! |        3D13        |   2  |
 12..........| Prevention cambriolage         |         ZOY        |   0  |
 13..........| 3DOS, notre systeme a nous     |        3D13        |   5  |
 14..........| La couche transport            |        3D13        |   E  |
 15..........| Des livres neufs pas chers     |       Hitchy       |   0  |
 16..........| Trouver les failles de securite|     Clad Strife    |   4  |
 17..........| Effacer ses traces apres un    |        3d13 &      |      |
             | hacking                        |       devilhack    |   4  |
 18..........| Le mot 2 la faim               |        3D13        |   0  |
             >--------------------------------|-------------------->------>

LES AUTEURS :
 3D13        = 3d13@usa.net
               www.3d13.grp.8m.com
	       Hacker/Cracker/Programmeur

 Hitchy      = hitchy89@hotmail.com
               pas de site
               Hacker

 Clad Strife = clad_strife@hotmail.com
               Hacker

 Arash       = 3d13.grp@usa.net avec comme sujet "Arash"
	       Hacker/Cracker

 Lefty       = 3d13.grp@usa.net avec comme sujet "Lefty"
               Hacker/Programmeur

 Credit Hackgricole = 3d13.grp@usa.net avec comme sujet "Credit"
     	              pas de site 
		      Carder/Radin/Voleur

 Nosferatu    = 3d13.grp@usa.net avec comme sujet "Nosferatu"
                pas de site
                Cracker

 _?®®CYT"-CoYsM®®?_ = cata-clysm@caramail.com
  (cata-clysm)        jesaisplus.rebelz.org
                      Hacker

 ZOY = 3d13.grp@usa.net avec comme sujet "Zoy"
       Flic preventif

 Pyroxman = 3d13.grp@usa.net
            Programmeur/Cracker


LES SITES QUI DISTRIBUENT CE MAGAZINE :
http://www.madchat.org
http://cybz.virtualave.net
http://www.ifrance.com/ezines
http://www.3d13.grp.8m.com/ezines
...si j'en oublie, ecrivez moi.

------------------------------------------------------------------------------
*1************************** Votre courrier **********************************
--------------------------------| VOUS |--------------------------------------
Bonjour,

  Je cherche un soft EFFICACE qui permet le Sniffing pour 
  win NT dans l'environnement NOVELL. (l'administrateur a 
  bien fait son travail)

  L'objet de cette manoeuvre etant uniquement de recuperer 
  les passwords & logins
  de diverses sessions

  Merci de bien vouloir me repondre

  PS : Comment recupperer un password a partir d'une 
  session ouverte (abandonnee)
  Je connais une dizaine de methodes mais aucune d'entre 
  elles ne fonctionnent 

Reponse :
> Des softs.. des softs... encore des softs..., ben il va maintenant falloir
> les faire plutot que d'en utiliser (meme si 98 % des crackers les utilisent)
> ok, je vais etre gentil avec toi : voici une belle reponse qui arrive :::
> Les environnements Netware (Novell) sont classes parmis les plus securises,
> mais on peut toujours les attaquer. Il s'agit cependant d'un ancien reseau.
> Sa premiere version a ete faite en 1983, fonctionnant sur les ferraries de
> l'epoque : les 286. Il se peut donc que le serveur que tu attaques ne
> possede pas les tous derniers processeurs d'AMD.
> Mais pour pouvoir penetrer ce systeme, tu devras acquerir de bonnes
> connaissances de TCP/IP (vu qu'il est entierement architecture autour de ca)
> Sous Novell, le fichier qui dirige les services se trouve dans :
> SYS:ETC\SERVICES, donc si tu fait un programme, interroge ce fichier, c'est
> l'equivalent de /etc/services sous Unix. Si tu veux Novell, il existe une
> version free (libre). Et si tu veux supprimmer tes traces dans les logs,
> n'oublie pas de modifier l'attribut des fichiers en "purge" pour ne plus
> que l'on puisse les retrouver.
> Lors de la premiere installation, le compte root se trouve sans mot de passe
> mais bon, si c'est un administrateur "normal", il en aura place un.
> Pour attaquer ce serveur, essaye de te renseigner sur les attaques qu'a pu
> effectuer Kevin Mitnick, le roi du spoofing, car tu peux spoofer et meme, je
> te le recommande, cela dit, cette attaque peut etre desuelle et depassee.
> Ce sera cependant tres difficile de spoofer sous du Netware
> (modifie NET.CFG dans ce cas).
> Va maintenant rechercher Spooflog, ce programme te permet de faire croire a
> une station qu'elle dialogue avec le serveur (www.users.mis.net/~gregmi/)
> sinon, pour percer les mots de passes Netware, utilise Crack, se trouvant
> sur www.mechnet.liv.ac.uk/~roy/freeware/crack.html
> Quand aux renseignements, utilise Snoop et tu sauras tout :
> je sais qu'il se trouve sur www.shareware.com mais ou ? va savoir...
******************************************************************************

  Bon mon message sera bref, J'ai lu plusieurs de tes E-zines et j'aurais aime
  que tu m'envoies tes mag. parlant de TurboPascal, c tres important, nous
  formons un groupe de hacking, je te dis merci d'avance et SVP pas de trojan...
  @+...Mon nick est ****** et je chat sur cara ou icq.

Reponse :
> tu trouveras turbo pascal dans www.3d13.grp.8m.com/tools/tp7.zip et les
> e-zines sont distribues dans notre page a www.3d13.grp.8m.com/ezines
> Quand aux troajans, je n'ais pas que ca a foutre que d'en envoyer
******************************************************************************

Salut!!!!

  J' ai lu les 3 premiers 3d13 et je les trouve pas mal du 
  tout. Avec une petite reserve sur le troisieme que je 
  trouve moins accessible et moins comprehensible. (Clarte de 
  certains auteurs, format texte moins agreable a mon 
  gout...). Mais je ne critique pas, je conseille. J' 
  aimerais avoir l'adresse de ton site pour recuperer les 
  numeros suivants (s'ils s'existent!). Si tu n'as pas encore 
  de site, pourrais-tu me dire ou je pourrais trouver les 
  autres numeros a coup sur.Ce serait cool de ta part. 

Reponse :
> Eh ben voila, tu y es dans le numero suivant ;-)
> Je suis au courant pour la clarte, et c'est pour ca que les articles ont
> maintenant une cote de difficulte (E,0,1,2,3,4,5). Je fais ce que je peux
> L'adresse du notre site (car 3d13 est le groupe dont je suis le master) est
> www.3d13.grp.8m.com et la dessus, tu trouvera les numeros a coup sur, et
> sur www.madchat.org aussi.
> J'espere que tu prefere ce numero 4 qui est encore moins accessible et
> encore moins comprehensible avec un format encore moins agreable a lire

******************************************************************************

Bonjour, je viens de lire vos e-zines. 3D13_01 ET 3D13_02, je les
  trouves tres biens car je suis un newbies dans le hackin' et votre
  journal me va bien, surtout qu'il est diffuse sous le format HTML, comme
  vous l'avez dit car multi-platforme. Je trouve tres bien votre idee car
  je suis possesseur d'un macintosh. Mais... car il y a un mais je trouve
  que vous referencez trop les pc ou unix. Je sais que ce sont ces deux
  plate forme qui rŠgnent dans le piratages, mais n'existe pas des
  logiciels de piratages sur macintosh, je sais evidemment que ce n'est
  pas votre faute si il n'y a pas beaucoup de ces logiciels pour mac, mais
  je suis quand meme sur qu'il en existe quelques uns, si vous en trouvez
  veuillez me faire parvenir les adresses internet ou les tele charger.
  Sur ce au revoir et longue vie a 3D13.

  P.S. : n'oubliez de m'envoyer des adresses si vous en trouvez, merci
  d'avance.

Reponse :
> C'est vrai, on est un peu trop PCistes, mais il va de soi etant donne qu'il
> n'y a que dans le monde des PC ou l'on a acces au systeme vu que le mac
> n'est qu'une interface graphique ou il n'existe pas de ligne de commande.
> Tu peux rechercher des outils sur http://neworder.box.sk ou plus simplement
> dans www.altavista.com en tapant "+hack +mac +tools".
> Pour la longue vie a 3d13, merci, je penses qu'il durera meme si il est en
> retard.
******************************************************************************

  tout d'abord
  Je trouve vos mags tres bien ,et je vous remerci pour
  vos explication dans le but de faire avancer les newbie
  comme moi ,en esperant que grace a vos mag on soit tous
  des mitnick dans 5 ans ;-) ,j'aimerais ce pendant mieux 
  comprendre :

  1/Ou se loge exactement "user-passwd" d'une connexion
  internet dans un PC tournant sous WIN95/98,(sans utilis‚
  SnadBoy). 

  2/Y a t'il une methode pour hacker un PC tournant sous
  WIN95/98, autre que 'Nbtstat'.

  3/Comment hacker un provider pour avoir "user-passwd"
  de ses abonnees sur internet;
  NB:En Algerie ,il n'y a ni Infonie ni Wanadoo, on se 
  trouves avec un seul provider (www.cerist.dz),
  --------->si vous le hacker pour moi ca me fera un grand
  plaisir, et surtout si vous m'envoyez la liste des 
  "user-passwd" :o) MERCI!!

Reponse :
> QUOI !!! Non mais on est pas un "Hacking in progress...", il ne manque plus
> que ca. "Tu veux pas me hacker ceci ou cela en m'envoyant tout. merci"
> Pour avoir des users password, tu peux essayer le S.E. puisque tu as l'air
> un si bon hacker, en telephonant a ton provider et en disant que tu as perdu
> le mot de passe, mais la ca risque d'etre dur car il n'y a qu'un seul
> fournisseur. Essaye toujours (confere : 3d13#01).
> Pour hacker des PC sans utiliser Nbstat il y a plein de facons, mais comme
> tu es un tres bon hacker, va chercher un exploit sur www.rootshell.com, tu
> devrais trouver un code source en C (langage de programmation) que tu devras
> compiler avec un compilateur C. Ca tombe mal car le seul compilateur que
> l'on a a la maison est Turbo Pascal que tu trouveras sur notre site.
> Sous Win32 (win95/98), le "user-password" et encore ca depend ce que tu
> appelle user-password se trouve dans la base de registre, dans des fichiers
> INI (win.ini, system.ini... cf. faille Liberty Surf) ou encore dans les
> fichier cryptes PWL du repertoire windows. Mis a part la faille du LSurf,
> le mot de passe est crypte (generalement du RSA-40bits)
> Enfin, TU NE RESSEMBLERA PAS A MITNICK DANS 5 ANS CAR JE NE SUIS PAS KEVIN.
******************************************************************************
> Ma lettre preferee :

J'ai r‚ussi a piquer le password shadow d'un serveur ,ca me sert a rien,
mais je pense qu'il est possible de prendre le password crypt‚ 
la b‚canne tourne sous un serveur apache 1.0.2 et est vuln‚rable au script
http://www.serveur.com/cgi-bin/phf?Qalias=x%0a/bin/cat%20/etc/passwd
je sais pas sous quel OS il tourne et j'aimerais bien savoir comment on fait 
pour le savoir quand on bosse avec windows. Je te file le d‚but du password
shadow pour que t'ai une id‚e

root:*:*:System Administrator:/root:/bin/tcsh
daemon:*:1:1:System Daemon:/:nologin
sys:*:2:2:Operating System:/tmp:nologin
bin:*:3:7:BSDI software:/:/bin/tcsh
operator:*:5:5:System operator:/usr/opr:nologin
uucp:*:6:6:UNIX-TO-UNIX Copy:/var/spool/uucppublic:/usr/libexec/uucico
games:*:7:13:games pseudo-user:/usr:nologin

> Merci, je savais pas a quoi ressemblait un password shadow ;-)
> Pour le serveur Apache 1.0.2, il s'agit d'un exploit, il y en a une
> tonne sur www.rootshell.com
> Pour recuperer le password shadow, tu peux utiliser la FAQ ecrite par le
> groupe 2600, mais j'y reviendrais dans mon hacker handbook (que de
> promesses mais il continue a etre ecrit, ce sera un TRES GROS handbook)
> Pour savoir comment on fait pour savoir quel OS tu attaques, regarde les
> services ouverts car chaque OS ouvre un ou plusieurs services qui peuvent
> etre communs a d'autres systemes mais qui te permettent tout de meme de
> l'identifier. Ex. Unix avec les ports 21 et 23 d'ouverts, mais cela peut
> porter confusion avec d'autres OS.

Deuxiement jai pas trop pig‚ ton tutorial sur les routeurs(inspir‚s de clad
strife).
Si jai bien compris y doit avoir 255*255 routeurs dans le monde.

> de 000.000.000.000 a 255.255.255.255

quand tu dis utilisez lart du sniffing ,quel logiciel faut employer?

> cherche ca dans http://neworder.box.sk

je suis sous windows jai pas nmap qui je sais est un scanner mais qui est pas
disponible sous win donc peude chances quil y est des sniffers a mon avis ou
des machins comme ca.
Tu dis pour cracker les passwords des routeurs avec Ws pingpropack tu fasi un
nslookup ,bonn tu pourrais  pas mexpliquer les differentes options dans la
fenetre nslookup(jutilise Ws pinngpropack pour trouver des becannnes qui ont
le port 139 ouvert ,sur ces becannes ou le port 139 est ouvert 1/10 a le
partage de ressources de reseau).

> C'est pas moi qui dit, c'est clad strife, pour les options de WS ping pro
> pack je connais pas car je n'utilise pas du tout cet outil etant donne que
> je suis sous Linux et que ma seule partition Windows me sert a lancer
> les deux ou trois utilitaires qui ne fonctionne que sous windows ou a
> jouer a GTA.

Encore un petit probleme,je suis alle sur le site de teshreen sanns rien te
cacher,le site est pas protege et on peut rentrer en anonymous avec ftp mais
quand je veuxprendre le password il veut pas le prendre,jai fait un whois avec
Wsping a rs.internic.net jai pris les infos ,jai mis le username
dans un cracker ftp en loccurenece unsecure mais ca a donne queudale,
bon tu pourrais maider mais si tu trouves la faille tu me laisse hacker ca
fera le premier server de hacker www.teshreen.com
> Comment as tu essaye ?, unsecure est un outil lame, fout le a la poubelle.
> As tu essaye de le hacker en ligne de commande (Demarrer/Exec./"ftp")
> Tu peux trouver une faille sur ce systeme grace au soft nessus qui tourne
> sous linux, sun, ..., win32 donc telecharge la version Windows, c'est un
> peu un equivalent a Satan.

Tu peux pas me donner le nom dun programme pour cacher mon ip sous icq,
jai essay‚ certains mais ca a pas marcher
> Simple, n'utilise pas ICQ, qui permet de te faire tracer facilement.
> Bon, mais je suis pas un exemple car j'utilise nicq sous linux, reste
> maintenant a voir "O—" tu l'utilise ?

Et je ten supplie tu mas donn‚ une envie folle de lire ton manuel de hacker,
je vais toutes les 3 jours a madchat pour voir les nouveaus ezines et les
devorer.Dons stoplait tu pourrais pas menvoyer ce que tu as ecrit pour
essayer de taider et voir si cest pas trop baleze pour les newbies
> Oulah, ce hacker handbook devient populaire avant meme qu'il sorte, mais
> Je vais essayer de concentrer mes efforts pour qu'il sorte le plus rapide-
> -ment possible, sans le bacler tout de meme.

******************************************************************************
> l'interview :

Salut

> hi

ca m'interesserais d'avoir ton unix handbook pour info et surtout ton
hacker handbook des qu'ils seront pres.

>Des livre comme ca, j'en ait pour au moins 1 ou 2 ans de boulot...
>donc, si tu veux voir 3d13#4, envoye des articles

  :) mais euh, et le hacker handbook, je peux pas voir ce que tu as ecris
  pour voir s'il n'y a pas d'erreur (veridique) et il faudrait je pense
  faire une maousse doc sur tcp/ip (bref, expliquer le scanner nmap et
  tout ces tests car c'est interessant mais baleze a comprendre
  (www.insecure.org)

  Au fait, avertis moi quand ton site sort.

> www.3d13.grp.8m.com, mais il est loin d'ˆtre fini
> enfin, j'ai pas le temps d'aider cata-clysm qui en est le web master

  ok j'y vais :)

  @+

------------------------------------------------------------------------------
*2*********************** Turbo Pascal (partie 3) ****************************
----------------------------------| 3D13 |------------------------------------

LA THEORIE encore...encore... et toujours...
Sans vouloir etre theorique, si il y a bien une chose qui prend la tete et qui
faut tout de meme apprendre, c'est ....

LES BOUCLES
Une boucle est une repetition determinee ou infinie d'un partie du code de
votre programme.
Turbo pascal connait 3 types de boucle ayant tous une fonction differente :
- Dans le cas d'un boucle de type FOR, nous savons avant meme de rentrer au
sein de la boucle le nombre de fois que le code va etre repete et le parcours
a effectuer.
- La boucle de type REPEAT teste la condition de sortie en fin de parcours. Si
la condition est remplie (TRUE), le systeme quitte la boucle.
- La boucle de type WHILE fonctionne comme repeat sauf qu'au lieu de tester la
contition a la fin, elle le teste des le debut et ne rentre pas dans la boucle
si la condition n'est pas remplie.

exemples :
   FOR
   ***
     PROGRAM ExempleFor;
     { (C) 3d13.grp 1999 }
     VAR i:byte; {byte=0 a 255}
     BEGIN
       FOR i:=1 to 13 do
       BEGIN
        {code ici}
        WriteLn(i);
        ReadLn;
       END;
     END.

   REPEAT
   ******
 Note : la fonction "keypressed" attend que l'utilisateur appuie sur une
touche, n'importe laquelle.

     PROGRAM ExempleRepeat;
     { (C) 3d13.grp 1999 }
     USES Crt;
     VAR i:byte;
     BEGIN
     i:=0;
     ClrScr;
       Repeat
         Writeln('It''s a good day for an attack ;-)');
         Delay(150);
       Until keypressed;
     END.

 le programme ecrit la phrase toutes les 150 ms tant que vous n'appuyez pas
 sur une touche. Ici, les fonctions de Crt sont : "ClrScr","keypressed",
 "delay".
 Si vous aviez voulu demander un retour de variables, vous auriez pu mettre :
   until (a=2) or (b=6);
 Toutes les fonctions suivantes sont permises :
   until (upcase(txt)='O') or (upcase(txt)='N') {upcase met txt en majuscule}
   until txt in ['O','N',#27] {#27 represente echap}

   WHILE
   *****
     PROGRAM ExempleWhile;
     VAR i:byte;
     BEGIN
       i:=0;
       WHILE i <= 10 do
       BEGIN
         i:=i+1;
         WriteLn('valeur de i : ',i);
       END;
     END.

Vous avez remarque que vous pouviez attendre la saisie d'une touche speciale
du clavier (echap) dans l'exemple de la boucle REPEAT, il est interessant
maintenant de connaitre ces touches avec leur numero attribue, ce qui
permettra quand on creera notre jeu d'utiliser les fleches de direction,
entree, echap, ...
voici un petit tableau regoupant tout ca :

-------------------------   ------------------------  ----------------
| TOUCHES DE NAVIGATION |   |  TOUCHES DE FONCTION |  |   DIRECTION  |
-------------------------   ------------------------  ----------------
| Home (debut)    | #71 |   | F1 | #59 | F7 | #65  |  | haut   | #72 |
| End (fin)       | #79 |   | F2 | #60 | F8 | #66  |  | bas    | #80 |
| Inser           | #82 |   | F3 | #61 | F9 | #67  |  | gauche | #75 |
| Del. (Suppr.)   | #83 |   | F4 | #62 | F10| #68  |  | droite | #77 |
| Page up         | #73 |   | F5 | #63 | **********|  ----------------
| Page Down       | #81 |   | F6 | #64 | **********|
-------------------------   ------------------------

#27 = echap
#13 = entree
( je sais qu'il manque Ctrl, shift, ... a vous de trouver )

------------------------------------------------------------------------------
*3*************************** C++ (partie 2) *********************************
---------------------------------| Lefty |------------------------------------

INITIATION AUX CLASSES 
 De meme qu'il existe des types int, float,... on peut definir soi-meme  
 des types. Ces types comprendront des variables et des fonctions qui  
 leur seront associees. Les classes se presentent sous cette forme :  
 class nom 
 {public : fonction1(); 
 fonction 2(); 
 fonction n(); 
 private : variable 1;} 
 tout ce qui est public pourra etre accessible depuis n'importe quelle  
 fonction du programme. Ce qui est private ou protected (on ne va pas  
 entrer dans la nuance). n'est accessible que depuis les fonctions de la  
 classe. On peut acceder a ce genre de variable seulement par  
 l'intermediaire des fonctions public. Bon, un exemple tout de suite : 
 #include"iostream.h" 
 
 class ordi 
 {public : 
 void gprix(a){prix=a;} 
 float aprix(){return prix;} 
 private : 
 float prix;} 
 
 main() 
 {ordi pc; 
 pc.gprix(5000); 
 cout<<"un pc vaut : "<return 0;}  
 
 "vas-y pour les explications ! 
 -OK !" 
 On a declarer une classe ordi comprenant deux fonctions : 
 -gprix qui recoit a comme parametre. La variable prix prends la valeur  
 de a 
 -aprix qui retourne la valeur de prix 
 Puis dans la fonction principale (main je rappelle), on declare un ordi  
 appele pc. On initialise sa valeur a 5000 an passant par la fonction  
 gprix, puis on affiche sa valeur par la fonction aprix. Remarque : on  
 accede aux fonctions d'une classe de cette facon : 
 nom.fonction(parametres) 
 (Si on avait declarer la classe *pc, pc serait un pointeur et il  
 faudrait remplacer . par ->) 
 
 Un peu plus loin :  
 On peut definir une fonction declarer dans la classe en-dehors du bloc  
 lui-meme, c'est tres courant. Exemple : 
 #include"iostream.h" 
 
 class ordi 
 {float gprix(float a);.......;} 
 
 float ordi::gprix(float a) 
 {prix=a;} 
 
 main() 
 {......;} 
 syntaxe : type nomdeclasse::nomdefonction(paramStres) 
 
 Autre chose : il existe des constructeurs et destructeurs de classe par  
 defaut dans le compilateur, mais on peut en initialiser soi-meme en  
 ajoutant deux fonctions dans la classe, ordi en l'occurence : 
 -ordi(); //constructeur 
 -~ordi(); //destructeur 
 (Rem : //fait suivre un commentaire, evidemment non-interprete par le  
 compilateur) 
 Si on avait mis ces deux fonctions dans le programme, ordi() se serait  
 mis en place des qu'on aurait declarer pc, et ~ordi() automatiquement .  
 la fin du programme. on aurait pu le liberer avant par l'instruction  
 pc.~ordi() si on avait plus besoin de pc et qu'on voulait liberer de la  
 memoire vive. 
 On peut aussi associer des instructions aux constructeurs et aux  
 destructeurs, par exemple : 
 ordi(){cout<<"nouvel ordi"<<'\n';} 
 ~ordi(){cout<<"fin de l'ordi";} 
 
 Voila c'est deja plutot bien pour un debut, non ?

------------------------------------------------------------------------------
*4********************** Les bonnes planques du web **************************
----------------------------------| 3D13 |------------------------------------

http://arcades.le-village.com/cybergod/hacklive.html 
> Hackez etape par etape, sera utile pour tout newbie

http://www.flashack.org/index2.html 
> Des techniques de hack, aussi utile pour le newbie

http://www.chez.com/viveal/ 
> Prout center, hmmm...c'est... super deguelasse %-P
 
http://members.aol.com/kellumour/liens.html 
> AOL ??? non, c'est juste une page avec des liens sur d'autres pages
marrantes sur la toile, classe par themes

http://www.multimania.com/botworld/code/codebot.htm
> Entrainez vous pour obtenir votre gode de la deroute

------------------------------------------------------------------------------
*5****************************** Les scripts *********************************
----------------------------------| 3D13 |------------------------------------

On continue sur notre lancee avec les scripts, la derniere fois, vous avez vu
les principes de base. Aujourd'hui vous allez voir des principes avances et
nous realiserons un petit programme utile pour tout cracker de mots de passes.
N'oubliez pas un truc : quand vous aurez cree votre fichier script, il est
normal que vous ne puissiez pas l'executer, meme en etant root.
Le fichier n'est pas reconnu en tant qu'executable, pour remedier a cela,
tapez : chmod u+x fichierscript
et pour l'executer : ./fichierscript

LES PARAMETRES DE LA LIGNE DE COMMANDE :
Les parametres de la ligne de commande sont reconnus comme des variables, il
faut donc les appeller a l'interieur du script,
Le premier parametre est $1, le second $2, cependant, vous pouvez appellez le
nom du programme en cherchant la variable $0.
Je m'explique : si, vous creez un programme de compression zip en script
(c'est juste un delire pour l'exemple, cela est bien entendu impossible)
et que vos parametres sont le nom du fichier a compresser et le deuxieme, le
nom de l'archive a creer, donc la syntaxe est la suivante :
./scriptzip fichier.zip archive.zip,
votre parametre $0 sera "./scriptzip"
votre parametre $1 sera "fichier.zip"
votre parametre $2 sera "archive.zip"
KAPITO ?
Maintenant, si vous souhaitez connaiter le numero du processus de votre
programme, la variable sera $$, si vous choisissez d'ecrire "echo $$" dans
votre script, le shell vous donnera le numero de votre processus.

DECISION SIMPLE AVEC IF
La commande if vous permet de prendre des decision simple, sa syntaxe est la
suivante :
if Suitedecommandes
then
  Commandes
fi

ou
if Suitedecommandes
then
  Commandes
else
  Commandes
fi

COMBINAISONS DE TESTS
La commande test vous permet de savoit si :
- des parametres on etes rentres dans la ligne de commande
- un fichier existe
- on a une autorisation de lecture/ecriture/execution sur un fichier
- le fichier contient au moins un caractere
....
Syntaxe :
test -option NomDeFichier

Options :
-f : S'agit t-il d'un fichier normal (ordinary file) ?
-d : Le nom de fichier represente t-il un catalogue ?
-c : Le nom de fichier correspond t-il a un fichier gestionnaire oriente ?
     caractere
-b : Le nom de fichier correspond t-il a un fichier gestionnaire oriente bloc ?
-p : S'agit-il d'un nom d'une "named pipe" (fichier FIFO) ?
-r : Avez-vous une autorisation en lecture sur le fichier ?
-w : Avez-vous une autorisation en ecriture sur le fichier ?
-x : Avez-vous une autorisation d'execution sur ce fichier ?
-s : Le fichier a-t-il un contenu d'au moins un caractere ?

DERNIER POINT
touch sert a creer un fichier vide
cat sert a afficher un fichier a l'ecran
les caracteres plus petit que... et plus grand que... servent a faire des
redirections d'entrees sortie (I/O, input/output), pour par exemple vous
amuser avec un fichier ou votre imprimante...
Quand il y a deux caracteres plus grands que cote a cote, c'est pour dire
d'ajouter quelque chose a un fichier, et quand il est seul, c'est pour ecraser
le fichier en ecrivant que ce que vous avez defini (en pascal, c'est
l'equivalent de Reset/Append).
Pour finir, l'expression suivante vous permet de savoir si oui ou non des
parametres on etes transmis en ligne de commande :
if test $# = 0 # verifie si des parametres on etes transmis
then
  echo "Vous n'avez pas taper de parametres"
  exit 1 # quitte le programme, retour au shell
fi

Vous noterez l'apparition d'un nouvelle instruction : exit, elle permet de
quitter le programme et si vous n'auriez pas eu a mettre de parametres
($1...), le code aurait ete "exit 0".

Maintenant, place au programme :
------------ Coupez ici
#!/bin/sh

#******************************************************************************
#  (C) 3d13.grp 1999
#  3d13.grp@usa.net
#  www.3d13.grp.8m.com
#  Nom du programme : Addlists
#  Auteur           : 3d13
#  Date             : 13/08/1999
#  OS               : fichier interprete sous linux mais peut etre porte sans
#                     probleme sur os/2,windows,dos,unix,novell,Plan 9...
#  Commentaires     : 
#    Ce programme permet d'ajouter 2 listes de mots pour en creer une troisieme
#    plus complete, sa syntaxe est la suivante :
#              ./addlists liste1 liste2 nouvelle_liste
#*******************************************************************************

if test $#=0 
then
  echo "Syntaxe : ./addlists [liste1] [liste2] [nouvelle_liste]"
  echo ""
  echo "Ce programme vous permet d'ajouter deux listes de mots"
  echo "dans le but d'en creer un troisieme plus complete"
  echo ""
  echo "(C) 3d13.grp ++ by : 3d13 ++ www.3d13.grp.8m.com"
  echo "e-mail : 3d13.grp@usa.net"
  echo ""
  exit 1
fi

touch $3
cat $1>$3
cat $2>>$3 
------------ Coupez ici
au tout debut du fichier, vous avez peut etre remarque l'expression #!/bin/sh
il ne s'agit que d'un commentaire, pour indique que ce script fonctionne avec
le shell bash, qui est appelle par linux a partir de /bin/sh, cela permet de
savoit tout de suite au programmeur le shell sur lequel ce programme
fonctionne sans problemes.

Maintenant, il se pose un probleme : vous etes sous DOS et vous comptez y
rester et vous avez envie de faire pareil ? voici le listing :

@echo off
REM *************************************************************************** 
REM (C) 3d13.grp 1999 #  3d13.grp@usa.net #  www.3d13.grp.8m.com
REM  Nom du programme : Addlists
REM  Auteur           : 3d13
REM  Date             : 13/08/1999
REM  OS               : fichier interprete sous linux mais peut etre porte sans
REM                     probleme sur os/2,windows,dos,unix,novell,Plan 9...
REM  Commentaires     : 
REM    Ce programme permet d'ajouter 2 listes de mots pour en creer une
REM    troisieme plus complete, sa syntaxe est la suivante :
REM           ./addlists liste1 liste2 nouvelle_liste
REM****************************************************************************

IF %1==%1 GOTO Aide
:Debut
TYPE %1>%3
TYPE %2>>%3 
goto fin
:Aide
  echo "Syntaxe : addlists [liste1] [liste2] [nouvelle_liste]"
  echo.
  echo "Ce programme vous permet d'ajouter deux listes de mots"
  echo "dans le but d'en creer un troisieme plus complete"
  echo ""
  echo "(C) 3d13.grp -- by : 3d13 -- www.3d13.grp.8m.com"
  echo "e-mail : 3d13.grp@usa.net"
  echo.
goto Fin
:Fin

------------------------------------------------------------------------------
*6********************* Maman, j'vais m'faire un site ************************
----------------------------------| 3D13 |------------------------------------

Voici les principes de bases pour hacker un site qui n'est pas perso., j'ai 
decider de creer cet article car je trouve que la securite de certains site
(et meme beaucoup !!!) sont d'un stupidite enfantine. Je vais donc tout vous
decrire etape par etape.
Je ne vous decrit pas comment effacer vos traces, donc, vous n'etes pas oblige 
de faire ce que je raconte la dessous tout de suite, car c'est pas de 
conneries. Si vous savez pas trop, passez par un serveur anonyme 
(sans citer le plus connu : www.anonymizer.com)et verifiez si vos traces ont 
etes bien effacees a l'aide de l'outil de demonstration du site de la cnil 
(www.cnil.fr).
1e etape : attraper le plus d'informations possibles, tapez 
"telnel www.victime.com 25" pour connaitre leur version de protocol SMTP et 
recupperer eventuellement le mot de passe crypte, notez en meme temps l'IP de 
la machine. 
2e etape : Faites un port scanning avec nmap (outil discret), tapez l'IP en 
ligne de commande "nmap 255.255.255.255"  (nmap examine le fichier 
/etc/services).
Vous verrez alors les principaux ports de communication ouverts.
Notez l'adresse e-mail de l'administrateur, envoyez un mail sur un 
nom inexistant sur le server pour voir comment il reagit, ex. 3d13@cible.com. 
Ensuite, copiez la source html de la page principale.
pour connaitre l'origine du provider du serveur de la cible, faites un 
traceroute. 
Regardez si nmap vous a signale que le port 79 est ouvert, si oui, c'est un +,
tapez "finger finger@cible.com" si ca marche pas, tapez "finger nick@cible.com",
bien sur, remplacez "nick" par l'identifiant de l'administrateur (ex.root)
Faites ensuite un whois pour connaitre des infos sur celui qui s'occupe du site.
avectout ca, vous devrez avoir pas mal d'infos sur le serveur, mais essayez
quand meme "telnel cible.com 80" pour avoir plus d'infos, mais cela marche 
rarement. Recuperrez tous les nom de programmes avec leur version.
Pour finir, allez sur www.rootshell.com pour avoir des exploits, cela dit,
les exploits ne sont encore pas ce que j'appelle du hacking pur car la encore,
vous utilisez une faile deja connue, il va falloir apprendre a les decouvrir,
mais on a le temps de vous expliquer tout ca au fil des issues de ce mag.
Mais comme c'est un hack d'enfants, on va utiliser des exploits.

------------------------------------------------------------------------------
*7************************** Credit Card rules *******************************
--------------------------| Credit Hackgricole |------------------------------

'lut les pirates, comme vous le savez tous :
on ne vit pas sans thunes alors voici les regles a propos des cartes de
credit, je vais faire plusieurs etapes :

1. Principes de base
2. Chercher les tickets dans les stations services
3. Derriere les distributeurs
4. Dans votre grande surface favorite
5. En faisant du S.E. (mais ca marches pratiquement jamais, quoique...)

1. Principes de base
********************

Une grande regle a respecter : ne volez jamais les vieux, ni les personnes qui
peuvent vous paraitre modeste, mais alors, qui voler ???
> Les bourges et/ou les raciste
en gros, les gens pour qui ca n'emmerde pas que l'on prenne 500 F dans leur
compte et en plus, ils ne s'en rendront meme pas compte.
Aussi, NE JAMAIS chourrer plus de 500 Frs.
Il n'y a pas d'enquete pour 500 F, si la personne s'en apercoit, elle ira se
plaindre a la banque qui la remboursera, mais alors !!! si cette personne peut
dire qu'elle n'a pas achete cet article pour 500 F, ca veut dire que vous
aussi, vous pouvez le faire pour vous ;-), mais attention a rester realiste et
faites le qu'une fois et ayez les max. de preuves pouvant dire que vous n'avez
pas utilise cet argent.
Il n'y aura pas d'enquete pour 500 F, tant que ce n'est pas trop souvent.
Ensuite, tout ce que je vous dit ensuite sont des experiences vecues donc,
croyez moi car c'est pas du baratin.
Je vais vous donner une bonne idee : creez un site internet ou vous pourrez
acheter des "fausses" marchandises sur le net, et ne vous inquietez pas, il
n'y a pas beaucoup de gens modestes qui achetent sur le net, je vous le
garantie. Mais il est vrai que vous ne connaissez pas votre victime.
Vous demandrez sur ce site juste le numero et la date de validite de la carte,
ainsi que le nom et le prenom de la personne.

2. Chercher les tickets dans les stations services
**************************************************

Eh oui, j'ai deja lu dans un e-zine (mais je sais plus lequel car il y en a
tellement) que l'on trouvait le numero et la date de validite sur les tickets
de caisse laisses pas des personnes par terre, en les jetant (poubelles, par
terre...), en lisant cela, je n'y ai cru qu'a moitie, je suis donc aller
tester : EH BEN C'EST VRAI, Resultat, en 1 semaine, 12 tickets recuperes !!!
(je venais le matin, vers 11h, puis a 15h et enfin le soir, a 21h pendant 1
semaine)

3. Derriere les distributeurs automatiques
******************************************

La, c'est plus dur mais vous pouvez y arriver.
Un seul mot d'ordre : D.I.S.C.R.E.T.I.O.N.
Si vous faites le mec trop discret, ca devient meme indiscret, il faut
paraitre un max zen et ce sera bon.
La personne qui tape son code fait quand meme attention si il y a quelqu'un
derriere, que ce soit devant un distributeur ou dans une grande surface.
Mais alors ... comment faire ?
Il faut tout simplement connaitre un peu de chimie : faites appel a vos
connaissances de college : sulfate de cuivre anhydre + eau = bleu.
Ainsi, par temps de pluie, vous pouvez deposer du sulfate de cuivre anhidre
sur les touches de clavier du distributeur, en tres faible quantite, en
sachant pertinament que la personne emportera de la poudre avec ses doigts.
Ensuite, regardez les touches qui ont un peu de bleu sur elles, elles font
tres probablement partit du code de la carte.
Autre solution, moins chimique celle-ci mais un peu quand meme, prennez un
feutre fluo jaune, repassez toutes les touches en jaune et quand la personne
vient et si elle ne fait pas trop attention, elle prends du feutre sur ses
doigts et apres on peut voir qui a tape quoi... Il ne restera plus qu'a
remettre dans le bon ordre apres ou voir de loin si elle commence a taper en
haut a gauche ou en bas a droite du digicode.
Dans les grandes surfaces, vous pouvez pas faire grand chose, surtout qu'il y
a les cameras.

4. En faisant du S.E.
*********************

Au telephone, prennez un numero au hasard avec le nom de la personne.
Si je vous le raconte moi, c'est uniquement parce que ca a marche sinon je
n'aurais pas que ca a foutre que de raconter des conneries car j'ai d'autres
chattes a fouetter.
Donc,
- ouvrez botin, choisissez nom
- appellez (3651+numero pour pas trop d'ennuis) de preference d'une cabine
- faites du S.E.
Le S.E. est l'art d'obtenir ce que l'on veut rien qu'en parlant(tchache).
" Bonjour, M. Marc DELAGUARDE responsable qualite client de votre banque, le
  xxxxxxx (credit lyonnais, credit agricole, caisse d'epargne) "
Maintenant, soit ca marche car vous avez dit le bon nom de banque (essayez
la caisse d'epargne en premier car beaucoup de gens ont des comptes epargne).
Sinon, laissez tomber et essayez le numero suivant.
Puis :
" Ouiiiii "
" Voila, je vous appellais car nous avons fait des tests sur nos machines pour
savoir si elle passaient l'an 2000 et nous avons echoues sur quelques comptes
dont le votre."
" Ouiiiiii" ou Raccroche donc reessayez avec un autre
"Nous avons eu justement un probleme a cause de l'horloge. C'est bien vous qui
residez au xxxxx (citez l'adresse) ?"
"Oui" ca c'est oblige ou raccroche, retour 1
"Nous avons heureusement garde votre numero de code secret nous n'en auront
donc pas besoin, si cela peut vous rassurer car vous ne me connaissez
probablement pas"
Ca rassure deja la personne, mais elle peut aussi dire qu'elle connait son
banquier et quelle va le contacter. C'est pas a vous de raccrocher.
"Nous avons juste perdu le code, qui n'est pas confidentiel, qui est ecrit
sur votre carte."
"Attendez, je vais la chercher" ou "Connard" + raccroche
si ok alors :
"c'est xxxxxxxxxxxx"
"d'accord, merci. Au fait, la votre expire quand ?"
"le xx/xx"
FIN
Bien sur, ecrit ici, c'est plus facile a ecrire qu'a faire.
"qui ne tente rien n'a rien".

------------------------------------------------------------------------------
*8********************** Introduction a l'assembleur *************************
--------------------------------| pyroxman |----------------------------------

                 +--------------------------------------+
                 ®     introduction a l'assembleur      ®
                 ®--------------------------------------®
                 ®            par PYROxMAN              ®
                 +--------------------------------------+

bonjour, cet article va vous proposer les bases de l'assembleur. ceci vous
permettra d'evoluer pour cracker des programmes ( par programmes, j'entends
logiciels, utilitaire, et, bien sur, jeux. ).

Pour vous permettre de progresser rapidement, je vais vous proposer 
d'apprendre de la meme facon que j'etudie un langage de programmation sous
DOS. Tout d'abord, j'etudie la structure generale d'un fichier, les quelques
commandes pricipales, et enfin, je compile le tout pour detecter mes erreurs.
Si cette section vous interresse, et si vous desirez la voir editee dans les 
prochains numeros, vous pouvez en informer 3d13 par E-MAIL qui me transmettra 
le message et me dira de faires d'autres articles. Bientot vous pourrez 
acceder a un site super interresant sur internet, composa par mon pote 
DOC NITRO, qui lui travail a rechercher les hackers. Mais c'est un quand meme 
un type tres bien qui vous donneras des programmes tres pratiques en 
shareware. Nous vous informerons de son adresse lorsqu'il nous l'aura remis 
( surement pour le prochain numero de 3d13 ).

La structure d'un fichier en assembleur, en general :

donnees         segment para public
...
donnees         ends

code            segment para public
                assume cs:code, ds:donnees

debut:
                ...
                mov ax,4c00h
                int 21h

code            ends

pile            segment para stack
                db 2048 dup(?)
pile            ends

end             debut

ici, nous ne verrons pas les principales commandes, mais l'une des fonctions
de l'assembleur.


AFFICHER UN MESSAGE :

...
chaine1 db 'ceci va s'afficher','$'
...
                mov  dx,offset chaine1
                call aff_chaine
...
aff_chaine proc near

;Affiche une chaine de caracteres a l'ecran
;
:Entree : DS = segment dans lequel se trouve la chaine a afficher
;         DX = adresse d'offset du message
;Sortie : -
;Modifie : aucun

                push ax       : sauve AX car il est modifie
                mov  ax,0900h : service 9h
                int  21h      : interruption 21h
                pop  ax       : recupere AX
                ret           : retour au programme appelant

endp

Nous verrons d'autres fonctions et quelques commandes au cours des prochains
numeros.
                                                             PYROxMAN

------------------------------------------------------------------------------
*9********************* La cryptographie Micro$oft ***************************
----------------------------------| 3D13 |------------------------------------

En allant dire bonjour a ftp.microsoft.com, je suis tombe sur ceci :
Donc, j'ai mis mon nom mais c'est pas moi qui est ecrit ce texte, c'est
(C) Microsoft (R) Corporation TM 1998

I) MS CryptoAPI Overview

The Microsoft Cryptographic API (CryptoAPI) provides services that enable
application developers to add cryptography to their Win32" applications.
Applications can use the functions in CryptoAPI without knowing anything
about the underlying implementation, in much the same way that an application
can use a graphics library without knowing anything about the particular
graphics hardware configuration.

Overview of Cryptography
Cryptography provides a set of techniques for encoding data and messages such
that the data and messages can be stored and transmitted securely.
Cryptography can be used to achieve secure communications, even when the
transmission media (for example, the Internet) is untrustworthy. You can also
use cryptography to encrypt your sensitive files, so that an intruder cannot
understand them. Cryptography can be used to ensure data integrity as well as
to maintain secrecy. Using cryptography, it becomes possible to verify the
origin of data and messages using digital signatures. When using
cryptographic methods, the only part that must remain secret is the
cryptographic keys. The algorithms, the key sizes, and file formats can be
made public without compromising security.

The Microsoft CryptoAPI
The Microsoft Cryptographic Application Program Interface (CryptoAPI) consists
of a set of functions that allow applications to encrypt or digitally sign
data in a flexible manner, while providing protection for the user's sensitive
private key data.
All cryptographic operations are performed by independent modules known as
cryptographic service providers (CSPs). One CSP, the Microsoft RSA Base
Provider, is bundled with the operating system.
Each CSP provides a different implementation of the CryptoAPI. Some provide
stronger cryptographic algorithms while others contain hardware components
such as smartcards. In addition, some CSPs may occasionally communicate with
users directly, such as when digital signatures are performed using the
user's signature private key.
The CryptoAPI programming model can be compared to the Windows GDI model in
that the CSPs are analogous to graphics device drivers, and the cryptographic
hardware (optional) is analogous to graphics hardware. Just as well-behaved
applications are not allowed to communicate with graphics device drivers and
hardware, well-behaved applications cannot directly access the CSPs and
cryptographic hardware.

Microsoft CryptoAPI Application Programming Guide
For more information on the Microsoft CryptoAPI, please read the Microsoft
CryptoAPI Application Programmer's Guide, version 1.0 (preliminary). This
document presents general information about how to incorporate cryptography
into applications and offers specific information about the function data
types in the Microsoft CryptoAPI. The guide is intended to be used by
developers familiar with the Microsoft Windows programming environment.
Previous experience with cryptography or other security related subjects is
helpful, but not absolutely necessary.

Cryptographic Service Provider Developer's Kit (CSPDK)
To request a copy of the Cryptographic Service Provider Developer's Kit
(CSPDK), Beta version 0.9, please fill out the form provided on
http://pct.microsoft.com .

Availability
The Microsoft CryptoAPI is now shipping in Internet Explorer 3.0 Beta and
Windows NT 4.0, and will also be delivered to OEMs as part of the Windows 95
OEM Service Release this summer.

II) MS CryptoAPI Q&A

General
What advantages does CryptoAPI have?
The Microsoft" Cryptographic application programming interface (CryptoAPI)
has two main benefits:
o	System-level access to common cryptographic functions. Key generation,
        key exchange, data encryption and decryption, hashing and digital
        signatures.
o	Applications don't need their own cryptographic code; developers
        don't need to learn the details of cryptographic functions.
	An important benefit of isolating applications from cryptographic
        services is that we expect that applications that call CryptoAPI
        should not have export restrictions. We will have more information
        about this in the near future.
o	Renewable, replaceable security: CryptoAPI isolates the application
        from the Cryptographic Service Provider (CSP) modules, allowing use
        of different CSPs as required. For example, as cryptographic
        requirements increase, or the security of cryptographic algorithms
        change, different CSPs can be used without changing the application.
o	CryptoAPI will open up markets for CSP developers. U.S. export law
        limits the export outside the U.S. or Canada of products that host
        strong encryption or an open cryptographic API. However, U.S. export
        law does not regulate the type of product or strength of encryption
        vendors can deploy within the U.S. or Canada. CryptoAPI allows
        vendors to develop strong encryption CSPs for Win32" systems and
        efficiently deliver them to customers to the maximum extent allowed
        by existing law. CryptoAPI will be most useful to vendors selling
        strong security products in the U.S. or Canada, and also to vendors
        selling into specific global markets (that is, banks and financial
        institutions, or U.S. multinationals) that enjoy somewhat broader
        access to strong encryption security under U.S. export law. Microsoft
        is hopeful that CryptoAPI will facilitate the export of strong
        encryption to other overseas vertical markets such as foreign
        governments, and non-U.S. multinationals such as pharmaceutical,
        petroleum, and aerospace companies.
  
Which operating systems support CryptoAPI?
CryptoAPI will be supported in Windows NT" 4.0. CryptoAPI has appeared in the
Windows NT 4.0 beta; header files will be available in the accompanying Win32"
Software Development Kit (SDK).
The best way to receive copies of this beta and the SDK is to sign up for the
Microsoft Developer Network (MSDN) Level 2. To subscribe, call (800) 759-5474,
or check out the MSDN Web page (http://www.microsoft.com/msdn) for more
information.
CryptoAPI 1.0 will be supported in Windows" 95 through the release of
Microsoft Internet Explorer 3.0. CryptoAPI 1.0 will then be shipped as part
of an upcoming update to Windows.
What Are the Export Issues?
What is Microsoft's position on export controls?
We believe that key lengths must be lengthened substantially to provide our
worldwide customers strong security and privacy. We are working actively with
other companies in our industry to encourage the U.S. government to relax its
restrictions on export controls. For more information, please see the Business
Software Alliance's home page, http://www.bsa.org.
What export issues do ISVs developing Win32 applications that call CryptoAPI
need to think about?
U.S. ISVs should be aware that under existing export law, applications that
get their security from third-party providers or implement encryption on
their own are export-controlled, and vendors must file Commodity Jurisdiction
(CJ) requests with the State Department to obtain export approval. However,
because CryptoAPI effectively removes cryptographic security from the
application and compartmentalizes security services in the CSP, we expect
U.S. export authorities will waive the CJ requirement for CryptoAPI-enabled
applications that do not otherwise implement secure functions, as soon as
their regulations have been amended to allow them to do so. We are working
with U.S. export authorities to identify any areas of concern or types of
CryptoAPI-enabled applications that still might require CJ or other licensing
review. We will publicize this policy when it becomes available. Until then,
application writers are advised to consult legal counsel and the State
Department, Office of Defense Trade Controls, to determine the appropriate
export clearance procedure for their applications.
What export issues do domestic (U.S. and Canada) developers writing CSPs
need to think about?
The first question is, "Do you plan to export your CSP?"
If not, complete the Export Compliance Certificate in the CSP Developer's Kit
and certify that you will distribute your CSP only in the U.S. or Canada.
Return the Certificate to Microsoft. When you are ready, make an appointment
for Microsoft to sign your CSP.
If you do plan to export your CSP, complete the Export Compliance Certificate
in the CSP Developer's Kit and certify that you intend to export your CSP
from the U.S. or Canada, and return the Certificate to Microsoft. Then do
the same thing you do for any product subject to U.S. export controls: Obtain
export approval from a U.S. export licensing authority. Provide evidence of
your export approval to Microsoft (which Microsoft will independently confirm)
and when you are ready, make an appointment for Microsoft to sign your CSP.
What export issues do foreign developers writing CSPs need to think about?
The first issue is the process of obtaining the CSP Developer's Kit (CSPDK)
from Microsoft. Because both the CSPDK and the signature of CSP are
export-controlled (one as a munition, the other as a defense service),
Microsoft will need export licenses, both to ship a CSPDK outside the U.S.
or Canada and to sign a CSP developed outside the U.S. or Canada.
Microsoft will both make the CSPDK available to foreign developers, and sign
CSPs from foreign developers to the best of its ability under export law.
Microsoft will seek to obtain these export licenses from the government so
long as there is a likelihood of approval. At present, U.S. export law is
very restrictive in this sense, and we do not anticipate many approvals of
foreign CSPs except as follows:
o	Data Encryption that would be transferred from State Department
        (ITAR Munitions Control) jurisdiction to Commerce Department
        Jurisdiction, either by exemption or by specific transfer.
o	Authentication mechanisms to authenticate users, or to calculate a
        Message Authentication Code (MAC) or similar result to assure that no
        alteration of text has taken place.
o	Access Control mechanisms to protect passwords, Personal
        Identification Numbers (PINs), or similar data to prevent
        unauthorized access to software, environments, or computing resources.
o       Financial Transaction Systems -- equipment or software specially
        designed for use in machines for banking or money transactions, such
        as Automatic Teller Machines (ATMs), self-service statement printers,
        point of sale terminals, or equipment for the encryption of
        inter-banking transaction and intended for use only in such
        applications.
  
Are the obligations of developers under U.S. export laws any different under
CryptoAPI than without it?
ISVs. U.S. ISVs should be aware that under existing export law, applications
that get their security from third-party providers or implement encryption on
their own are export-controlled, and vendors must file Commodity Jurisdiction
(CJ) requests with the State Department to obtain export approval. However,
because CryptoAPI effectively removes cryptographic security from the
application and compartmentalizes security services in the CSP, we expect
U.S. export authorities will waive the CJ requirement for CryptoAPI-enabled
applications that do not otherwise implement secure functions, as soon as
their regulations have been amended to allow them to do so. We are working
with U.S. export authorities to identify any areas of concern or types of
CryptoAPI-enabled applications that still might require CJ or other licensing
review. We will publicize this policy when it becomes available. Until then,
application writers are advised to consult legal counsel and the State
Department, Office of Defense Trade Controls, to determine the appropriate
export clearance procedure for their applications.
CSP Vendors. Under CryptoAPI, CSP vendors and their products are subject to
the same U.S. export controls they face today: Vendors should maintain
appropriate export control on CSPs not eligible for export, and obtain export
approvals for those that are eligible.
What is Microsoft's Role Regarding CSPs?
Why does CryptoAPI require that Microsoft sign Cryptographic Service Providers
(CSPs)?
The primary purpose of the digital signature is for the protection of the
system and its users. Microsoft signs all CSPs to guarantee the integrity of
the CSP to the operating system. Every CSP must be digitally signed by
Microsoft in order to be recognized by the operating system. The operating
system validates this signature periodically to ensure that the CSP has not
been tampered with.
The signature requirement also separates applicable U.S. export controls on
the CSP from the host operating system and applications, thereby allowing
broader distribution of encryption-enabled products than would be possible
under other circumstances. The signature requirement demonstrates that
Microsoft and the CSP vendor have taken steps to comply with U.S. export laws
if there is an intent to export the CSP. Because unrestricted access to
CryptoAPI would make the host operating system ineligible for export, the
signature requirement limits access to CryptoAPI to vendors who agree to
implement CSPs in conformity with U.S. export law.
What are Microsoft's criteria for signing CSPs?
Microsoft will sign CSPs subject only to the export limitations mentioned
above. We will sign CSPs from competitors.
Where will Microsoft perform the CSP signing operation?
We will sign CSPs at our facilities in Redmond, Washington, USA.
Does Microsoft derive any rights to my CSP or share any responsibilities
once it is signed?
Microsoft obtains no rights to a vendor's CSP by virtue of signing them.
Neither do we assume any responsibilities for the CSPs we sign. CSP vendors
are wholly responsible for the distribution, disposition, and possible
end-use of their CSP, including any possible export or diversion of the CSP
outside North America, irrespective of Microsoft digitally signing the CSP.
The CSP vendor is solely responsible for meeting the terms of all U.S. export
or other national controls over their CSP modules.
U.S. Export Controls on CryptoAPI Components
Which elements of CryptoAPI are subject to State Department (ITAR) licensing?
o	The CSP Developer's Kit (CSPDK).
o	The act of Microsoft signing a CSP intended for export from the U.S.
        or Canada.
o	CSPs that exceed U.S. export restrictions (e.g., greater than 40-bit
        encryption).
  
Which elements of CryptoAPI are subject to Commerce Department (Commerce)
licensing?
o	Windows NT 4.0 (or any other Microsoft product) with CryptoAPI and
        the Base Crypto Provider.
o	The CryptoAPI Application Programmer's Guide, which is available from
        the Microsoft CryptoAPI page and from the Microsoft Developer Network
        (MSDN).
o       Applications that call CryptoAPI and do not otherwise implement
        cryptographic security. We expect U.S. export authorities will waive
        the CJ requirement for CryptoAPI-enabled applications that do not
        otherwise implement secure functions, as soon as their regulations
        have been amended to allow them to do so.
o	CSPs that do not exceed U.S. export restrictions (e.g., less than or
        equal to 40-bit data encryption).
  
Is CryptoAPI exportable?
Yes. The CryptoAPI interface in Windows NT can be exported without
restriction to all destinations except countries and entities under U.S.
embargo or restriction (e.g., Cuba, Libya, North Korea, Iran, Iraq, and Syria)
Is the CSP Developer's Kit exportable?
The CSP Developer's Kit (CSPDK) is subject to State Department licensing, and
as such its export from the U.S. or Canada is limited. In all instances, the
CSPDK requires a State Department license to be exported from the U.S. or
Canada, which will be issued to Microsoft only on a case-by-case basis.
Is the CryptoAPI Application Programmer's Guide and sample code exportable?
Yes. The CryptoAPI Application Programmer's Guide is available from the
Microsoft Developer Network and from the Microsoft CryptAPI home page.
The guide, the sample code, and the Win32 SDK, which contains the header
files (WINCRYPT.H), are eligible for export to nearly all destinations
(except the embargoed countries).

III) Overview if Cryptography
Cryptography provides a set of techniques for encoding data and messages such
that the data and messages can be stored and transmitted securely. This
section introduces the basic terminology of cryptography and explains some
of the common methods used.
Cryptography can be used to achieve secure communications, even when the
transmission media (for example, the Internet) is untrustworthy. You can also
use cryptography to encrypt your sensitive files, so that an intruder cannot
understand them.
Cryptography can be used to ensure data integrity as well as maintain secrecy.
Using cryptography, it becomes possible to verify the origin of data and
messages. This is done using digital signatures, which are explained a little
later in this chapter.
When using cryptographic methods, the only part that must remain secret is
the cryptographic keys. The algorithms, the key sizes, and file formats can
be made public without compromising security.
	
	A. Data Encryption
In using data encryption, a plaintext message can be encoded so it appears
like random gibberish and is very difficult to transform back to the original
message, without a secret key. In this document, the term message is used to
refer to any piece of data. This message can consist of ASCII text, a
database file, or any data you want to store or transmit securely. Plaintext
is used to refer to data that has not been encrypted, while ciphertext refers
to data that has.
Once a message has been encrypted, it can be stored on nonsecure media or
transmitted on an nonsecure network, and still remain secret. Later, the
message can be decrypted into its original form. This process is shown in the
following illustration:
message                                   |                    |
(plaintext)--> | Encryption Algorythme | -|-> Encypted message-|-> Decryption algorythm --> Original message
			^                 |    (ciphertext)    |    ^
		   Encryption key         |                    | Decryption key
Encryption/Decryption Process
When a message is encrypted, an encryption key is used. This is analogous to
the physical key that is used to lock a padlock. To decrypt the message, the
corresponding decryption key must be used. It is very important to properly
restrict access to the decryption key, because anyone who possesses it will
be able to decrypt all messages that were encrypted with the matching
encryption key. Note that the encryption and decryption keys are often the
same key.
This may come as a surprise, but data encryption/decryption is pretty
straight-forward. The really difficult part is keeping the keys safe and
transmitting them securely to other users. This is discussed further in
Chapter 5.
Symmetric Versus Public-Key Encryption
There are two main classes of encryption algorithms: symmetric algorithms and
public-key algorithms (also known as asymmetric algorithms). Systems that use
symmetric algorithms are sometimes referred to as conventional.
Symmetric Algorithms
Symmetric algorithms are the most common type of encryption algorithm.
They are known as symmetric because the same key is used for both encryption
and decryption. Unlike the keys used with public-key algorithms, symmetric
keys are frequently changed. For this reason, they are referred to here as
session keys.
Compared to public-key algorithms, symmetric algorithms are very fast and,
thus, are preferred when encrypting large amounts of data. Some of the more
common symmetric algorithms are RC2, RC4, and the Data Encryption Standard
(DES).
Public-Key Algorithms
Public-key (asymmetric) algorithms use two different keys: the public key and
the private key. The private key is kept private to the owner of the key pair,
and the public key can be distributed to anyone who requests it. If one key is
used to encrypt a message, then the other key is required to decrypt the
message.
Public-key algorithms are very slow, on the order of 1000 times slower than
symmetric algorithms. Consequently, they are normally used only to encrypt
session keys. They are also used to digitally sign messages, as discussed in
the next section.
One of the most common public-key algorithms is the RSA Public-Key Cipher.

Bon, il y a eu beaucoup de theorie la dessus, ce que vous pouvez retenir :
- Comment on encrypte un document
- QUE LA CRYPTOAPI NE DEPASSERA PAS RSA-40bits POUR DES RAISONS D'EXPORTATION

maillez moi si ca vous a plu, sinon il n'y en aura plus.

------------------------------------------------------------------------------
*10**************** Apercu des techniques de cracking ************************
-----------------------------| Nosferatu |------------------------------------

Vous n'allez voir que les techniques, nous passerons a l'exemple pratique lors
du prochain numero. Il s'agit en fait d'un article paru dans 3d13#1 par 
The yAcC, mais le ne l'ais pas trouve assez develloppe, j'ai voulu y ajouter 
ma graine.
Je vais d'abord vous presenter les utilitaires INDISPENSABLES pour bien
cracker :
OSCAR : Avant de vous emmerder a cracker un soft, verifiez si il n'a pas deja
        ete cracke, ce soft a une superbe liste de numeros de serie, ... et
        en plus, il vous offre des cours de cracks (donc meme plus besoins
        decrire cette doc. :-( ). Malheureusement, comme beaucoup de softs,
        il est en anglais. Mais, l'anglais est une magnifique langue qu'il
        faut savoir maitriser si l'on veut hacker.
        Il s'agit d'un production du groupe Phrozen crew.
W32DASM : Decompilateur, remet le fichier exe en code source asm.
SOFTICE : Decompilateur, tres utile pour connaitre le code asm d'une procedure
          car il reside en memoire et quand on appuye sur Ctrl+D, il nous
          place directement dans la procedure qui s'executait au moment de
          l'appui de Ctrl+D. Eh puis, il a plein d'autre options
          interessantes
HEX WORKSHOP : Editeur hexadecimal qui est assez bien foutu
RESOURCE WORKSHOP 16 bits : Fourni avec les logiciels de programmation
                            windows 16 bits de borland (TPW, BCW)
                  32 bits : Fourni avec les logiciels de programmation
                            windows 32 bits de borland (BC++ 4.5 ou 5 par ex.)
                  : Ce programme permet de modifier images, menus, icones
                    d'un logiciel, ce qui permet de mieux le personnaliser !!!
TURBO DEBUGGER : Decompile un programme Exe en asm, Break-points (BP), ...
                 > a utiliser pour les programmes DOS a cracker
TURBO DEBUGGER 16 : Version Win 16 bits de TURBO DEBUGGER
TURBO DEBUGGER 32 : Version Win 32 bits de TURBO DEBUGGER
...Y'en a d'autres, mais si vous avez deja ceux-la, vous serrez deja assez
puissants comme ca pour cracker un gros soft.

Nous allons observer un petit programme ecrit en pascal (on fera du C +tard)

VAR i:byte;
BEGIN
Write('Code : ');
Read(i);
if i=1 then Writeln('Bon code')
else Writeln('Mauvais code');
END.

Le programme demande un nombre et, si il est egal a 1, il ecrit "Bon code"
sinon, il ecrit "Mauvais code".
Nous allons voir comment faire en sorte que le programme ecrive "Bon code"
tout le temps, quoi que l'on ecrive.
il faut d'abord connaitre quelques procedures en ASSEMBLEUR (pour commencer):
- CALL : appel d'un procedure, fonction et parfois, boite de dialogue
- CMP  : comparaison d'une chaine de caracteres ou de nombres, ...
- JE   : va a un emplacement defini si JUSTE
- JNE  : va a un emplacement defini si FAUX
// commentaire : je et jne sont identiques a ja, jna, jb, jnb, ... jz, jnz
- JMP  : saute . une procedure ou fonction dans tout les cas(JUSTE ou/et FAUX)
Il faut utiliser ensuite un debugger, dans notre exemple, nous allons utiliser
TURBO DUBUGGER DOS.
Observons d'abord comment le programme fonctionne :
A la base, quand on tape 1, le programme ecrit "Bon code" et pour
tout le reste, il ecrit "Mauvais code".
Je repere, assez rapidement dans le programme une comparaison :

  cs:005B 9A91028560     call   6085:0291
  cs:0060 803E520001     cmp    byte ptr [0052],01 <--- ici, comparaison
  cs:0065 751E           jne    0085  <----------------- ici, saut si faux             
  cs:0067 BF5401         mov    di,0154
  cs:006A 1E             push   ds

Je me rappelle :
Jne : cette instruction sert a aller a un emplacement quand la valeur
est fausse, son code hexadecimal est 75
Je : cette instruction sert a aller a un emplacement quand la valeur
est correcte, son code hexadecimal est 74.
Jmp : cette instruction est a aller a un emplacement dans tous les cas.
      Son code hexadecimal est EB.

Il faut donc remplacer 75 (Jne) par 74(Je), ce qui donnera :

  cs:005B 9A91028560     call   6085:0291
  cs:0060 803E520001     cmp    byte ptr [0052],01
  cs:0065 741E           je    0085               
  cs:0067 BF5401         mov    di,0154
  cs:006A 1E             push   ds

avec un editeur hexadecimal, on cherchera donc :
80 3E 52 00 01 75 1E BF 54 01  et on remplace par
-- -- -- -- -- 74 -- -- -- --

Maintenant, quand on tape 2, le programme ecrira Bon code et quand on
tape 1, le programme ecrit : Mauvais code.
Approfondissons un peu, le programme doit ecrire "Bon code", que l'on
tape 1 ou n'importe quel autre nombre.

Je vais vous montrer une erreur a eviter mais qui est nous en apprend :

"Si on remplace jne 0085 par jmp 0085, comme ca, il saute tout de suite
sur 0085"

  cs:005B 9A91028560     call   6085:0291
  cs:0060 803E520001     cmp    byte ptr [0052],01
  cs:0065 EB1E           jmp    0085               
  cs:0067 BF5401         mov    di,0154
  cs:006A 1E             push   ds

avec un editeur hexadecimal, on cherchera donc :
80 3E 52 00 01 74 1E BF 54 01  et on remplace par
-- -- -- -- -- EB -- -- -- --

mais maintenant, tout est mauvais, quoi que l'on tape, eh ben, on
reflechit :
"Si le code est faux (Jne), il va a l'emplacement 0085, ca veux dire
que si il est juste, il ne lit pas cette instruction et continue a lire
la suite du programme"
On dira alors au programme de sauter a l'instruction juste apres : 0067

  cs:005B 9A91028560     call   6085:0291
  cs:0060 803E520001     cmp    byte ptr [0052],01
  cs:0065 EB00           jmp    0067               
  cs:0067 BF5401         mov    di,0154
  cs:006A 1E             push   ds

avec un editeur hexadecimal, on cherchera donc :
80 3E 52 00 01 EB 1E BF 54 01  et on remplace par
-- -- -- -- -- -- 00 -- -- --

Eh voila le travail, maintenant, le programme ecrit "Bon code", quoi
qu'il arrive.

                  "Le crack, c'est l'avenir" (The Yacc)

------------------------------------------------------------------------------
*11****************** Devenez un vrai Elite 31137 !! *************************
--------------------------------| 3D13 |--------------------------------------

Nan, c'est pas un attire-lamers cette fois, c'est serieux.
Vous en avez marre d'etre traite comme un larbin sur internet, alors devenez
plus fort que tout le monde.
D'abord, inscrivez vous a www.cert.org pour etre au courant des dernieres
failles.
Ensuite, il va falloir lire ces bouquins, et apres vous serrez un vrai Elite :
        - Securite optimale, S&SM
        - Grand livre C, Micro Application
        - Grand livre Unix, Micro App
        - Reseaux, Architectures, protocoles, applications, InterEditions
        - Systemes d'exploitations, InterEditions
        - Toutes les docs techniques que vous trouverez sur le net
C'est bon, maintenant vous etes un presq'Elite, il ne reste plus qu'a finir
votre formation en trainant sur IRC, surtout sur undernet :
#warez, #mp3z_and_more, ...
regardez sur quels serveurs sont les autres hackers pour aller les rejoindre.
Ensuite, inspirez vous de la culture hackers en lisant TOUS les phracks,
TOUS les 2600 et TOUS les cDc.
Connaitre un max d'OS...
Maintenant vous pouvez rigoler en lisant les zines comme celui ci sur
madchat.org .
Pour terminer, mon hacker handbook vous sera toujours tres utile.
!!! 31337 !!! NOW !!!

------------------------------------------------------------------------------
*12********************* Prevention cambriolage ******************************
---------------------------------| ZOY |--------------------------------------

  Il existe 2 methodes de vols tres populaires en ce moment. Alors pour pas
  que ca vous arrive, jvais vous les expliquer en LIVE:
   
1- On vous vole votre caisse, et vous portez plainte. Le lendemain comme
par miracle elle est revenue.
Au bah c 'est cool pensez vous. Au bah en plus ya un ptit mot dedans qui dit:
"desole pour la voiture, c'etait juste pour un paris stupide, veuillez
trouver ci joint un dedommagement". Et dans l'enveloppe 2 tickets pour
EuroDisney le royaume du bonheur. Cheri c 'est genial on a 2 billets pour
Disney pour le weekend prochain. Le weekend vient, vous partez et qui c'est
qui vient ? le cambrioleur et oui. A votre retour Mr mickey vous a tout pris,
et il vous reste juste votre voiture !
   
2- Quand vous partez vous laisser vos cles au voisin. Le voleur vient chez le
voisin et lui dit:
Bonjour Msieur, on a un frigo a livrer a votre voisin, vous auriez pas la
cle ?
le voisin emmerder dit Oui et ouvre la porte. Les voleurs installent le frigo
et repartent.  Le voisin ferme la cle, content de sa bonne action et
insouciant de ce qui va suivre. La ou c'est con, c 'est qu'il y a un autre
voleur dans le frigo qui va reouvrir la porte a ses potes pour tous vous
picker.
  
Pour les voleurs: vous pouvez remplacer l'homme frigo par un chien de type
lassy qui sait ouvrir un carton de four par exemple et une porte de garage
mais c est plus chaud.
Pour les voisins: NOUVREZ PAS LA PORTE DES AUTRES a nimporte qui !!!!

------------------------------------------------------------------------------
*13************************ 3DOS, notre systeme ******************************
----------------------------------| 3D13 |------------------------------------

  Nous allons voir dans ces tutors des techniques sur la creation d'un systeme
d'exploitation (OS). Quelques principes theoriques seront enonces pendant
quelques cours, apres, a vous de voir.
Sachez tout de meme que ceci est tres dur a mettre en place et encore plus a
expliquer au commun des mortels. Si vous rechercher a faire un systeme tout de
suite et le compiler, ne lisez pas cette partie, mais allez rechercher sur
la toile tout ce qui concerne le systeme MINIX, vous devrez y trouver son code
soude d'environ 13000 lignes (il ne tient que sur une disquette).
Let's Go...
Pour creer son systeme, il faut en gros creer ce qui permettra de creer, donc,
des que vous aurez cree ce systeme, empressez vous de creer un compilateur
pour ce systeme afin de permettre a vous et surtout a d'autres personnes de
creer des programmes pour ce systeme.
Facile a dire, tres dur a faire!
Nous allons d'abord etudier le principe du lecteur de disquette :
Un lecteur de disquette est compose d'un disque tournant, permettant de lire
les donnes de la disquette, vous pouvez aussi allumer ou eteindre votre
lecteur (regardez simplement la diode qui s'allume sur la facade). Car votre
lecteur n'est pas toujours allume sinon le disque tourne trop vite et
bousille vos donnees. Donc, pour pouvoir lire une disquette, il faut :
        - Allumer le lecteur de disquettes
        - Stabiliser la vitesse de votre lecteur
        - Lire les donnees
        - Effectuer des operations avec ces donnees (lire, copier,...)
        - Eteindre le lecteur
Si il y a beaucoup de donnees, il va falloir eteindre puis rallumer plus tard
votre lecteur de disquettes.
Donc, l'OS permet au programmeur de programmer plus facilement, que ce soit
en C ou en Assembleur.
l'OS gere aussi la memoire, il va donc falloir gerer tous les processus du
type imprimante, si par exemple vous choisissez d'imprimer un fichier, et
que vous en imprimez deja un, il va failloir creer une sorte de file d'attente
qui permettra d'attendre la reponse de l'imprimante indiquant la fin du 
premier document pour envoyer le deuxieme. Nous allons donc etudier dans les
prochaines lecons les ports COM et LPT, cette etude sera plus pratique car
ca se programme de la meme facon sous windows ou linux.
Tous vos ports (ecran..etc...) sont geres par l'OS, de meme que les
instructions du processeur.
Le disque dur :
Chaque systeme a son propre systeme de partition, FAT pour dos/windows,
EXT2FS pour linux, ntfs pour winNT, ...
Nous allons donc creer notre propre type de partition, cela est une lourde
tache. A quoi cela sert-il ?
- Incompatible avec TOUT systeme, ce qui permettra d'etre a l'abris de la
police en cas de perquisition
- Seul les utilisateurs de ce systeme pourront se copier des documents, car
ce system ne sera pas graphique (win, mac...) mais tout en ligne de commande
permettant de lire tout juste des documents. Restons modestes tout de meme,
j'ai pas envie de passer ma vie a ecrire cet OS.
Le disque dur fonctionne de la facon suivante :
vue de cote :
|___ < tete de lecture
|******* <--
|---       |
|******* <-| plateaux
|---       |
|******* <--

________________________  le rectangle = secteur
 * | * | * | * | * | * |             * = clusters
___|___|___|___|___|___|

Chaque plateau (c'est dur dessiner un rond en ASCII) est partaque en secteurs,
un peu comme quand vous coupez un pizza pour la partager en 8 (sauf que sur
un disque c'est plusieurs milliers).
1 secteur = un part de pizza
et chaque secteur se redecoupe de haut en bas en clusters.
(c'est plus facile de dessiner une part de pizza ;-)
     ________________
     \  * | * | * | /
      \---|---|---|/
       \ *| * | * /
        \-|---|--/
         \| * | /
          \---|/
           \* /
            ||

Mais, et la c'est important : un fichier occupe TOUJOURS au moins UN cluster,
si par exemple votre cluster faisait 1 Ko (car la taille des clusters varie
en fonction de celle du disque, d'ou l'interet de la partition, ex. fdisk)
et que votre fichier faisait 1 octet, eh ben il prendrait la place de 1 Ko,
et en plus, si vous avez un gros fichier fait 30 Mo, il se peut que les
clusters concernant ce fichier ne soient pas tous a cote et donc vous perdrez
du temps car votre tete de lecture chercherais sans cesse le fichier, et la
c'est l'interret de faire un defrag regulierement pour replacer ces fichiers
dans l'ordre correct, a cotes.

------------------------------------------------------------------------------
*14************************ La couche transport ******************************
----------------------------------| 3D13 |------------------------------------

 C'est la couche la plus importante de tous les protocoles. C'est l'article
le plus complique de cet e-zine et se destine a un public tres avance.
Si vous etes un simple newbie, vous ne comprendrez rien et ce sera normal.

 La couche transport a pour role de fournir un service de transport efficace,
"l'entite de transport" est le software qui assure la fonction.
Le service transport assure deux types de services : avec ou sans connection.
Dans les deux cas, les connections se deroulent en trois phases : connection,
transfert, deconnection. Le mode d'adressage et le controle du flux de donnees
sont eux aussi similaires dans les deux couches. Quant au service transport
sans connection, il est lui aussi tres proche du service reseau sans
connection.
L'existence de la couche transport rend la couche reseau plus fiable car la
couche transport est celle qui verifie la bonne transmission des donnees.
Le reseau est, comme vous devez certainnement le savoir, loin d'etre parfait
sinon la couche transport ne servirait a rien puisque les donnees seraient
transmises sans encombres.

 Ensuite, les parametres de qualite de service de la couche transport sont :
- Temps d'etablissement de la connection
- Probabilite d'echec d'etablissement
- Debit de la liaison
- Temps de transit
- Taux d'erreur residuel
- Probabilite d'incident de transfert
- Temps de deconnection
- Protection
- Priorite
- Resiliation

 La couche transport est un systeme intelligent qui essaye d'attribuer des
priorites en fonction de plusiuers parametres.
Vous noterez que je ne rentre pas trop dans les details car des livres de
plus de 1000 pages sont consacres a cette couche precise et qu'il est tres
difficile de tout raconter ici, faites appel a votre genie car je rappelle
que cet article aux ferrus du reseau.
Le service transport est assure par un protocole etabli entre deux entites de
transport. Par certains aspects, celui-ci ressemble au protocole de la Couche
Liaison de Donnees. Tous deux ont un role de surveillance d'erreur, de
sequencement, de controle de debit...
Cependant, il existe de tres grandes differences provenant en autre de leur
milieu heterogene. Par exemple, la couche transport se doit de specifier
explicitement l'adresse du destinataire.
Quand le systeme tente une connection, cela est tres difficile :
tout d'abord, une entite de transport envoie une demande de connection de
transport CR (Connection Request) au destinataire puis attends un CC
(Connection Confirm). Mais si vous souhaitez appronfondir, vous vous
apercevrez et vous vous etes meme peut etre deja apercu qu'un paquet peut se
perdre, se stocker ou se dupliquer... car si plusieurs paquets provenant
d'autres machines arrivent en meme temps, c'est la panique, ralentissements
puis embouteillages.
Les doublons sont encore plus dangeureux car cela fait commander deux actions
pour le prix d'une.
Imaginons que vous souhaitez acheter des revues XXX avec votre carte de credit
(un conseil, n'ayez pas de CC), et que vous passez la commande et qu'a cause
de la couche transport des doublons soyent crees, vous payez double et vous
recevez deux fois le meme magazine. On peut imaginer encore plus fort avec
les transferts de compte d'une banque, vous etes soit deux fois plus riche,
soit deux fois plus pauvre en cas de retrait.
C'est pour ca qu'il existe la solution de limiter la duree de vie des paquets
selon les criteres suivants :
 - limiter la taille du sous-reseau
 - affecter un compteur de nombre de noeuds traverses a chaque paquet
 - dater chaque paquet
Nous devrons donc assurer que non seulementun paquet est detruit, mais aussi
son accuse de reception correspondant.
Si vous continuez a vous amuser dans le transport de donnes, vous verrez que
vous allez vite arriver dans une problematique assez complexe, comme par
exemple :
"Il y a deux berges separees d'un fleuve. sur une berge, il y a un loup, une
chevre et un choux, vous devez transporter un par un ces animaux ou ce
vegetal de l'autre cote de la berge sachant que le loup n'aime pas le choup
mais rafolle de la chevre, et que la chevre mange le choux."

  Ce sera tout pour cet article, nous n'avons pas vu TCPUDP, IMP (meme si un
peu sans dire le nom) et encore d'autres fonction de la couche transport.
J'ai a peu pres ecrit pas mal de paragraphes uniquement de tete, je me suis
cependant un peu servit du livre :

"RESEAUX, Architectures, protocoles et applications" d'Andrew Tanenbaum aux
Editions InterEdition
Tanenbaum, c'est celui qui a cree Minix. Linux s'est a la base appuye de
minix (comp. Unix system VII).

------------------------------------------------------------------------------
*15********************* Des livres neufs pas cher ***************************
---------------------------------| HITCHY |-----------------------------------

  Comment avoir des livres neufs pas cher a la Fnac!
  Pour cela il faut simplement ne pas etre trop voyant et venir tout seul


  Bon un exemple : La bible Linux superbe livre mais malheuresement trop cher: 
  369F

  Bon tu recherche un livre qui a le meme titre et qui est dans ton budget, 
  dans notre exemple Linux chez micro applications a 99F,
  Tu prends le livre généralement il y a toujours un livre qui est ouvert 
  sinon je crois qu'on a le droit d'ouvrir un livre (c'est a dire d'enlever le 
  plastique!)

  :Solution 1, Le livre est deja ouvert et l'etiquette autocollante du livre 
  est dessus, dans ce cas tu te met a le lire, tu t'asseois...., tu glisse 
  discretement ta main sous le livre et tu décolle par tout petit mouvement le 
  prix surtout pas d'accous et de mouvement brusque, c'est bon le prix est 
  decolle maintenant tu vas vers le livre convoite et le prix (bien cache dans 
  le creux de ta main) vient heurter le derriere du livre a cote et un peu par 
  dessus le code bar imprime du livre, maintenant tu n'a plus qu'a foutre loin 
  l'etiquette du bouquin aussi discretement que si tu la decollais maintenant 
  prend un autre livre comme ça tu peu mettre le tient derriere celui ci pour 
  etre sur que personne ne puisse le prendre et profiter de ce que tu t'es 
  fait chier a faire!!!!Bon maintenant tu reviens le lendemain ou lomgtemps 
  apres tu reviens voir le livre si le prix est toujours comme tu l'a mis 
  c'est bon!! goto caisse
  Sinon c'est grille un vigile est venu decolle le prix et a surement repere 
  ta tete donc la laisse tomber!! goto Solution 1 mais cet fois une autre 
  personne si tu a beaucoup de potes tu peux faire ca a plusieurs, mais sinon 
  vient seul comme ca si tu te fais grille, demandes a quelqu'un d'autre de le 
  faire a ta place.

  :Solutin 2, Tu arrache le palstique du livre et tu le prends dans ta main et 
  tu te barres (Le truc qui fait sonne l'alarme est dans la couverture du 
  book, enfin je crois), tu n'a plus qu'a decoller le prix et revenir au 
  magasin maintenant tu n'a qu'a faire ce qui est explique dans solution 1

  :caisse, tu reperes une caissiere un peu jeune qui n'a pas trop d'annees 
  derriere elle enfin quelqu'un qui regarde pas trop, c'est tres important une 
  bonne caisiere!!!
  Payes,barre toi!!!

  Bon si tu te fait choper tu risques pas grands choses mais bon....

------------------------------------------------------------------------------
*16******************* Trouver les failles de securite ***********************
--------------------------------| Clad strife |-------------------------------

Avant de lire ca va vous falloir aquerir quelques notions:

   1.trame: paquet d'information 
   2.paquets ethernets: paquets circulant sur le cable ou un reseau intranet
   (interne, on dit aussi trusted) 
   3.carte ethernet: carte pour le cable, ADSL, ou un reseau intranet 
   4.reseau intranet: reseau interne 
   5.ICMP: Internet Control Message Protocol 
   6.encapsulee: c'est pour ainsi dire l'enveloppe de la trame envoyee, sur
   laquelle sont marque les informations pour l'adressage de la trame (IP,
   adresse MAC...). C.f: comment hacker les routeurs. 

Le reste on le verra dans le reste de l'article. 

La faille de securite la plus connu est celle qui utilise l'IP spoofing.
On se fait passer pour une machine du reseau externe pour penetrer dans le
reseau intranet. Il s'agit de donner, en general un IP connu par la
machine attaquee, et donc on peut avoir un acces a cette machine etant
reconnue comme machine "amie". Ca permet par exemple, de pouvoir envoyer
des daemons a la machine a hacker en passant par differents filtres (comme
TCP Wrapper), parce qu'on s'est fait indentifier comme etant une machine
"amie".
Explications sur ce qu'est un daemon: on va faire un schema rapide:
un daemon est un programme qui lance des applications en arriere plan de
ce que vous faites sous Linux/UNIX. Bref creez vos propres daemons genre:
des qu'on tape le mot: "je", y'a un fichier qui s'efface dans le repertoire
que vous aurez choisi... Bref ca represente un grand trou de securite...
Mais j'en vois p'tetre qui n'aurait pas tout compris. Bon je resume, parce
qu'on est pas oblige d'avoir Linux/UNIX pour avoir des competeces sur ces
systemes.
En se faisant identifier comme la machine "amie" aupres de la machine
ciblee, on peut passer a travers des filtres de type TCP Wrapper (qui n'est
qu'un exemple parce que j'ai un schema du fonctionnement, y'en a d'autres
bien sur), et envoyer des daemons a la machine ciblee ou exploiter des
programmes de communication. Pour schematiser ce type d'attaque voici un
exemple de filtre de type TCP Wrappper: 
   monhost a l'@IP: 144.135.10.1 
   monhost/ :cat /etc/hosts.allow 
   fingerd: ALL : (mail -s finger-from-%h admin@monhost.mon-domaine.fr) 
   ALL : LOCAL 
   ALL : mon-domaine.fr 
   ALL : 114.135.10 
Ainsi monhost autorise l'acces a tous ses daemons a toute machine dont
l'adresse IP commence par 144.135.10. En ayant tous les droits sur ce genre
de machines (dans l'exemple 144.135.10.1) vous pouvez envoyer des daemons, ou
bien exploiter les programmes de communications de la becane ciblee. Pour
faire croire au filtreur que vous etes ami, faut lui faire croire que vous
venez du reseau interne, et bien sur la machine que vous aurez a cibler est
144.135.10.1 (je l'ai deja dit plus haut). 

   Bon ca c'etait pour les filtreurs et le spoofing ainsi qu'une entrevue sur
les daemons. Car des failles de securite y'en a d'autres. C'est le
detournements de paquets IP, (Internet Control Message Protocol redirects).
Ce qu'il faut savoir c'est que les paquets redirection ICMP servent a un
routeur par defaut a indiquer l'IP d'un nouveau routeur par defaut. Ce type
d'attaque de redirection ICMP, permet le détournement des paquets ethernets,
vers un autre routeur par defaut causant ainsi la perte du paquet envoye, et
la station attaquee ne peut plus emettre ailleurs. La trame ICMP peut etre
encapsulee, dans une trame IP (juste l'adresse IP de la cible est marquee),
et donc l'attaquant peut venir du reseau externe, meme si l'emetteur est du
reseau interne. La station recevant la trame ICMP doit verifier qu'elle vient
bien de son routeur par defaut , ainsi vous devez utiliser le spoof pour vous
faire passer pour le routeur par defaut, et recevoir la trame ICMP, la station
etant en contact avec le routeur par defaut en temps normal. 

   En sachant que pour joindre un reseau local, les paquets IP  doivent passer
par un routeur qui joint le reseau externe au reseau interne (il n'y en a pas
qu'un), il suffit de prendre possession de ce routeur et d'indiquer aux autre
routeurs que la distance entre eux et le votre est la plus petite. Ainsi pour
faciliter la rapidite du transfert de donnees ils vont faire passer les
paquets par vous.
Je montrerais plus tard un cas dans lequel j'ai pirate un routeur et ou j'ai
fait du spoofing ainsi que du reroutage. 

[Nd 3d13 : Retrouvez pleins d'autres articles comme ca sur
           www.multimania.com/hackworldclan ]


------------------------------------------------------------------------------
*17******************** Effacer ses traces apres un hacking ******************
-------------------------------| 3D13 & devilhack |---------------------------

  Ca y est vous y etes arrive, vous avez HACKER un ORDI tout seul, vous
commencez a prendre un peu la grosse tete mais vous en faites pas, vous
n'etes pas le premier ni le dernier a commettre un tel acte.
Vous avez une jouissance monstrueuse, VOUS Y ETES ARRIVE, PAFFF, plus fort
qu'eux... mais maintenant, les ennuis vont commencer : garde a vue, tribunal,
prison :-(((
MAIS, cet article existe et peu vous permettre de vous sauver la vie.
Attention, cela marche avec une entreprise qui abandonne assez rapidement les
rcherches. 
N'oubliez pas que cette etape est certainnement ce qu'il y a de plus important
quand vous penetrez un systeme informatique.
En effet, plein d'articles vous expliquent comment hacker un ordi, mais
ensuite... ben vous vous faites attraper.
Tout ce qui concerne cet article sera axe autour des systemes Unix et
compatible, car c'est l'OS le plus important et le plus utilise dans le monde
d'internet.

la suite est tire du site internet devilhack, j'ai semble bon de le mettre, il
s'agit d'une ressource de l'internet que vous pouvez retrouver sur :
www.multimania.com/devilhack

1. Ne rien laisser dans les repertoires HOME et TMP des serveurs.
2. Lister tous les elements modifies avant de se deconnecter : ls -altr
3. Utiliser les commandes csh suivantes pour effacer les donnees d'historique
   sans laisser de trace : [Nd 3d13 : csh=shell, comme bash par ex.]
mv .logout save.1
echo rm .history>.logout
echo rm .logout>>.logout
echo mv save.1 .logout>>.logout

4. Nettoyer les fichiers " logs " des servers :
Sous Unix, il faut connaitre au moin 3 fichiers importants :
WTMP    - chaque connection/déconnection avec l'heure, le server, et le
          terminal concerne.
UTMP    - Tous les utilisateurs connectes a un moment donne.
LASTLOG - origine des connexions.

L'admin peut utiliser ces fichiers pour les commandes statistiques
(lastlogin), pour par exemple savoir quand a eu lieu l'intrusion, le serveur
d'origine de l'intrusion et puis le temp estime de l'attaque. (tout pour vous
retrouver).
Il faut savoir aussi que toutes les connexions par, ftt, rlogin, telnet, sont
enregistre dans ces fichiers.
Mais ne pas effacer ces fichiers car l'admin saura immediatement que
l'intrusion a eu lieu. Pour vous simplifier la tache utiliser un prog de
modification de ces fichiers : ZAP ou ZAP2 (remplace la derniere donnee de
connexion par des 00000000. ).

Recommendation :
Pour modifier le LASTLOG sans toucher au fichier , une fois connecte, lancer
un rlogin "server cible" avec le login et pass du compte utilisateur hacke.
Cela a pour effet d'enregister un LASTLOGIN à partir du serveur et
non a parir de l'exterieur.

Normalement ces modifs sont possible que par le ROOT. MAis si le ROOT n'a pas
ete obtenu, il suffit pour certaines version d'Unix de faire un rlogin lors
de votre connexion sur le serveur pour modifier le LASTLOG.

5. Trouver tous les fichiers modifie apres la connexion :
Juste apres etre connecte faire : "touche /tmp/check" avant de continuer a
travailler.
Par la suite faire :
"find / -newer /tmpcheck -print" ou
"find / -ctime 0 -print" ou encore "find / -cmin 0 -print",
verifier les fichiers d'audit et les modifier.

6. Verifier les repertoires par default :
/usr/adm , /var/adm , /var/log.

7. Manipuler les prg de securite installes :
Sur les serveurs securises, les prg de securite sont lances a intervalles
periodiques par cron. Ces programmes verifient les tailles de fichiers ou
analyse les logs serveurs. Ils peuvent egalement etre stockes dans les
repertoires /adm ou ~bin ( pour les sniffers ).

acceder aux parametres de cron. Le rep par default est
/var/spool/cron/crontabs.
Verifiez toutes les entrees surtout les fichiers "root" et analysez les prgs
lances.
Faire par exemple : "crontab -l root".
Les prg de securites sont en general : tiger, spi, tripewire, 15, binaudit,
hobgoblin, s3,...

voila bon la normalement vous pouvez etre tranquille, mais bon on est jamais
trop prudent, et faut se dire qu'il y a toujours plus malin que nous. Je ne
cesse pas de le dire mais, ne negligez pas la victime qui elle aussi peu s'y
connaitre en hack alors n'effacez rien et n'abimez aucune donnee.
Car un HACKER n'est pas un CRACKER...

------------------------------------------------------------------------------
*18************************* Le mot 2 la faim ********************************
------------------------------------------------------------------------------

Maintenant il ne reste plus qu'a faire 3d13#5.
Je voudrais savoir deux ou trois trucs, mailez moi (3d13@usa.net) si vous etes 
interesse par :
- Programmation Perl
- La suite des cours d'assembleur
- La securite
n'hesitez pas a nous critiquer, ce que vous attendez du groupe... tout ce que 
vous voulez, meme nous faire une lettre d'amour enflammee si vous le souhaitez. 

Un coucou :-) a : CYBZ - LEONARD - WOODIE - BIGFOOT - Tha|\|aTosE - DuStNet - 
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                    ^   ^
                  ^›~-_-~› ^
                 T   o  o   T 
                  -   ^    -
                  (   O   ) 
                    ------ 
                 I'll be back ! 

                           -.                       .-
                       _..-'(                       )`-.._
                    ./'. '||\\.       (\_/)       .//||` .`\.
                 ./'.|'.'||||\\|..    )o o(    ..|//||||`.`|.`\.
              ./'..|'.|| |||||\`````` '`"'` ''''''/||||| ||.`|..`\.
            ./'.||'.|||| ||||||||||||.     .|||||||||||| ||||.`||.`\.
           /'|||'.|||||| ||||||||||||{     }|||||||||||| ||||||.`|||`\
          '.|||'.||||||| ||||||||||||{     }|||||||||||| |||||||.`|||.`
         '.||| ||||||||| |/'   ``\||``     ''||/''   `\| ||||||||| |||.`
         |/' \./'     `\./         \!|\   /|!/         \./'     `\./ `\|
         V    V         V          }' `\ /' `{          V         V    V
         `    `         `               V               '         '    '

     "And all the girls says I'm pretty fly for a white guy" (The Offspring)
