Hacking - noelno/dovelei GitHub Wiki

Principes de base

"Hacker" c'est détourner un outil de ses fonctions premières. espionnage, doxing, OSInt (doxing d'infos publiques), inspection du réseau, Surface d'attaque d'un système : somme des moyens, des accès permettant une attaque du système. Visibilité : si ce que le système détient comme asset est visible (public), ce système devient une cible de choix Plus la surface d'attaque d'un système est faible et plus ses assets gardés privés, moins ce système risque d'être pris pour cible.

Critères de porosité :

  • un asset visible est susceptible d'être ciblé, un asset non visible peut être découvert lors d'une attaque. Garder ses fichiers privés n'est donc pas une protection suffisante.
  • le nombre d'accès : ports ouverts, processus…
  • les propriétés de confiance

FPP (Four Point Process) : procédé par lequel on va stimuler la cible pour analyser sa réaction

  • Induction : observation de l'environnement de la cible pour recueillir des indices sur son état
  • Interaction : stimulation de la cible pour observer sa (non-)réaction
  • Enquête : analyse des émanations / traces de la cible
  • Intervention : bouleversement de l'environnement de la cible pour analyser sa réaction

Champs d'action :

  • physique : personnes physiques, hardware
  • spectral : sans fil
  • communications : télécommunications, réseaux de données

La sécurité des assets est assurée par quatre moyens :

  • placer l'acquis derrière une barrière de protection
  • rendre la menace inoffensive
  • détruire la menace
  • détruire l'acquis : le rendre illisible hors contexte (cryptographie), supprimer les copies inutiles…

Sources (sur le hacking éthique, les OS, les réseaux, la sécurité, l'IOT…)

  • les livres spécialisés de moins de trois ans (bibliothèques, abonnements ENI et Eyrolles et Amazon.fr)
  • les magazines spécialisés (attention aux magazines partiaux et aux spéculations)
  • les moteurs de recherche anonymes, les méta-moteurs, multimoteurs et les moteurs spécialisés
  • les index Of et contenus de site réservés rendus publics par accident (caméras en direct, fichiers PDF…)
  • les fanzines et ezines spécialisés (2600, Phrask)
  • les blogs spécialisés
  • les forums et mailing lists (newsgroups par mail) spécialisés
  • les newsgroups
  • les wikis : wikipédia, wikia, autres wikis spécialisés
  • les réseaux sociaux, en particulier les groupes privés / sur invitation
  • les tchats et messageries instantanées (IRC, Slack, Teamspeak, Discord…)
  • les réseaux P2P
  • les conférences et séminaires
  • les meetups et hackathons

Commandes MS-DOS

Adresse : une url ou une adresse IP

  • ping adresse -n 1 : envoie un paquet ping adresse -f : envoie un nombre illimité de paquets (faire Ctrl C pour quitter)

  • tracert adresse : détermine l'itinéraire du paquet sur le réseau

  • ipconfig : configuration des périphériques réseaux ipconfig /all : idem en plus verbeux ipconfig /renew nom : renouvelle le bail DHCP de la carte "nom" ipconfig /release nom : résilie le bail DHCP de la carte "nom"

  • route print : affiche la table de routage

  • netstat -an : affiche les connexions aux ports netstat -e : affiche les statistiques Ethernet

    commande /? pour la liste complète des options

  • tree C:/ > tree.txt : copie la totalité de l'arborescence de C: dans un fichier tree.txt

  • date : affiche la date et permet de la changer

  • time : affiche l'heure et permet de la changer

  • ver : version de MS-DOS

  • dir répertoire : affiche le contenu du répertoire dir /b : format abrégé (juste le path du fichier) dir /s : récursif dir /o:n : ordonné par nom dir /a:d : affiche les fichiers dont l'Attribut est d'être un Dossier dir /s /b /o:n /a:d : affiche tous les répertoires du disque dir *.txt /b : affiche tous les fichiers .txt du répertoire

  • tree répertoire : affiche le contenu du répertoire en mode graphique et récursif

  • cls : efface le texte à l'écran

  • cd : change directory cd %HOMEPATH% : renvoie à user/monnomdutilisateur (comme cd ~ sur Linux) cd / : racine du disque d: (sans le cd devant) : change de disque

  • mkdir monrepertoire/monsousrepertoire : crée un répertoire monrepertoire, contenant un répertoire monsousrepertoire

  • copy source destination for /r C:\ %f in (*.sys) do @copy "%f" c:\sys copie récursivement tous les fichiers *.sys du disque dans le répertoire c:\sys. xcopy *.sys d:\sys /s. xcopy copie les fichiers dans leur arborescence d'origine, et ne fonctionne pas quand le dossier de destination est dans le dossier cible. xcopy c:*.sys c:\sys /s afficherait donc une erreur "Impossible de réaliser une copie cyclique"

  • del cible /s /q : supprime le dossier cible même plein (/s), sans demande de confirmation (/q)

  • whoiam : affiche le nom du PC et de l'user courant

  • where /r c: *.pdf : liste les chemins de tous les pdf du disque c: where /r c: dovelei : liste les chemins des fichiers contenant dovelei dans leur nom

  • echo ^G : (ctrl-G) joue la cloche Windows

Réseau

LAN : réseau local (par exemple à la maison)

Topologies

  • en étoile : tous les ordinateurs sont connectés à un switch, par exemple une box.
  • en étoile étendu : les switchs de plusieurs réseaux en étoile sont interconnectés à un ou plusieurs points centraux, sans limitation
  • hiérarchique : les switchs de plusieurs réseaux en étoile sont interconnectés mais le point central limite l'accès à certaines branches
  • en bus : tous les ordinateurs sont connectés à un hub. Un hub envoie les paquets à tous les ordinateurs connectés, pas seulement le demandeur (broadcast).
  • en anneau : les ordinateurs sont connectés facon human centipede, les paquets ne peuvent circuler qu'entre PC adjacents

TCP/IP : protocole de communications entre deux équipements réseau

  • application (FTP, HTTP, SMTP, DNS…) : traduit les données dans un format transportable sur le réseau
  • transport (TCP, UDP…) : gère et contrôle le circuit de transfert des données vers les bons ports
  • internet (IP) : empaquete les données et détermine une route
  • réseau (Ethernet) : convertit le tout en bits et le dirige vers le matériel lié à la bonne adresse MAC

TCP : "three way handshake" : établit une connexion acceptée par le destinataire en trois étapes - SYN, SYN/ACK et ACK UDP : zappe ces étapes et envoie les paquets sans validation

Adresses IP : ???.???.???.??? La première partie identifie le réseau, la deuxième identifie l'hôte. Selon le masque de sous-réseau, la taille de la partie réseau varie. Adresses réservées :

  • 0.0.0.0 : wildcard address. adresse par défaut lorsque non connecté à un réseau

  • 127.???.???.??? : loopback (127.0.0.1 pour Apache)

  • 192.168.1.0 : adresse réseau (partie hôte à 0)

  • 192.168.1.255 : adresse broadcast (partie hôte à 1)

  • netstat -a : affiche tous les ports et toutes les connexions netstat -b : affiche l'application concernée netstat -n : affiche les adresses et numéros de ports en numérique au lieu des noms des machines

Analyser les résultats de netstat

  • 0.0.0.0:0 : interfaces réseau de la machine (cartes réseaux de l'ordinateur et modem)
  • :: : équivalent IPv6 de 0.0.0.0
  • 127.0.0.1 : connexions internes au PC
  • adresse locale : le port de sortie du côté de mon PC
  • adresse distante : le port d'entrée côté destinataire

Etat de la connexion TCP :

  • LISTEN : en attente d'une demande de connexion (SYN)
  • ESTABLISHED : connexion acceptée et établie (ACK envoyé), transmission en cours
  • TIME_WAIT : connexion en attente
  • CLOSE_WAIT : connexion en cours de fermeture (FIN envoyé)