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


RSS/XML :
- Articles
- Commentaires
- Revue
- Revue FR
- Videos
- Twitter


RSS SecuObs :
- sécurité
- exploit
- windows
- attaque
- outil
- réseau


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


RSS OPML :
- Français
- International











Revue de presse francophone :
- Vigilance - Cisco IPS boucle infinie de MainApp, analysé le 08 10 2014
- Good Technology annonce l'acquisition de Macheen
- NoSuchCon dévoile son programme Paris - Espace Niemeyer, 19-20-21 novembre 2014
- Vigilance - Junos multiples vulnérabilités, analysé le 08 10 2014
- Barracuda Message Archiver disponible en version 4.0
- Revue des habilitations vers une sécurité renforcée en impliquant le management à l'exercice
- La sagesse ultime en matière de sécurité offerte par le DBIR de Verizon limiter, contrôler et superviser
- Vigilance - Cisco IOS XR déni de service via NetFlow, analysé le 23 07 2014
- Vigilance - Apache httpd déréférencement de pointeur NULL via mod_cache, analysé le 23 07 2014
- Akamai PLXsert publie le rapport de sécurité Etat des lieux de l'internet du 3ème trimestre 2014
- Telehouse est certifié AFAQ éco-conception
- Alexei Chachourine, Lexsi les cybercriminels russophones à l'assaut des finances occidentales
- François Barrault est nommé membre du Conseil de surveillance de Numergy
- Bilan Mobility For Business 2014 La mobilité sous toutes ses formes
- Baromètre Kaspersky Lab 2014 Entre TPE et PME, un point commun, le risque Mais des disparités importantes en matière de protection

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 :
- BlinkStick Pro neopixels
- 3D Hangouts with Matt Griffin, Noe Pedro Ruiz, Thurs 10 23 3PM LIVE 3DThursday 3DPrinting 3DHangouts
- Gregg Brockway Named CEO of Maker Media gbrockway make makerbusiness
- Halloween Scream Box
- New Mobile OS Versions Improve Security
- XKCD, Where Do Birds Go
- Shadowcrew Vendor Aleksi Kolarov Sentenced To 30 Months In Prison For Role In Largest Identity Theft Ring Of Its Time
- ME Island Nursing Home successfully sued by former employee
- Machine Learning on Azure AzureConf 2014
- MegaMan do-over and over again by cerberus333 3DThursday 3DPrinting
- Community Spotlight Perry Engel cerberus333 3DThursday 3DPrinting
- Alien Xenomorph pt 7 XRobots 3DPrinting 3DThursday
- Austin Airport Tracks Cell Phones To Measure Security Line Wait
- The OIG revealed that the FDA s computer network is vulnerable to a potential data breach
- Inside Windows Platform Intro to Azure Mobile Services for Windows Platform Inside Windows Platform

Annuaire des videos
- FUZZING ON LINE PART THREE
- 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 -

Mini-Tagwall
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
- Le ministère de l'intérieur censure une conférence au Canada
- OSSTMM une méthodologie Open Source pour les audits de sécurité
- Une faille critique de Firefox expose les utilisateurs de Tor Browser Bundle
- [Ettercap – Partie 3] Ettercap par l'exemple - Affaiblissement de protocoles et attaque par injection
- [Ettercap – Partie 2] Ettercap par l'exemple - Man In the Middle et SSL sniffing
- EFIPW récupère automatiquement le mot de passe BIOS EFI des Macbook Pro avec processeurs Intel
- [Trames et paquets de données avec Scapy – Partie 1] Présentation
- Mises à jour en perspective pour le système Vigik
- 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"
- La sécurité des clés USB mise à mal par USBDUMPER

Top bi-hebdo de la revue de presse

Top bi-hebdo de l'annuaire des videos
- Meterpreter encode pivot
- Metasploit Client Side Meterpreter with Pivot Demo
- Comment creer un server botnet!!!!(Réseau de pc zombies)

Top bi-hebdo de la revue Twitter

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

Tutoriels

English version with Google Translate

[WiShMaster - partie 2] Principe de shellcodisation avec WiShMaster (1)

Par Benjamin Caillat, Mastère Spécialisé Sécurité ESIEA
Le 16/09/2006


Résumé : WiShMaster permet de générer automatiquement un shellcode ; il prend en entrée des fichiers sources écrits « normalement », dont la compilation conduit habituellement à la génération d’un exécutable, et crée un shellcode optimisé (relocalisable et sans aucune référence externe). - Lire l'article



WiShMaster (WIndows SHellcode Generator)


Présentation de WiShMaster

WiShMaster est un outil permettant de générer automatiquement un shellcode suivant le principe décrit précédemment. Il prend en entrée un ensemble de fichiers sources écrits « normalement », dont la compilation conduit habituellement à la génération d’un exécutable, et crée un shellcode, c'est-à-dire un bloc d’octets relocalisable et sans aucune référence externe.

Si l’on transfert l’exécution au premier octet du shellcode, celui-ci va alors accomplir exactement les mêmes opérations que le programme d’origine. WiShMaster est un freeware disponible sur mon site personnel ( lien ). Cette page contient également le manuel d’utilisation et quelques vidéos de démonstration.


Principe de la shellcodisation par WiShMaster


Description technique du processus de shellcodisation

La transformation exécutée par WiShMaster est découpée en 7 étapes. Différents flots d’exécutions peuvent être suivis, en fonction du résultat que l’on souhaite obtenir. Le flot le plus complet part d’un ensemble de fichiers sources « normaux » et produit un exécutable contenant le shellcode encodé par une clé XOR. Cet exécutable va par exemple déchiffrer le shellcode, puis transférer l’exécution dessus.

Voici une courte description de ces 7 étapes :


- Etape 1 : Analyse

L’étape d’analyse consiste à parcourir l’ensemble des fichiers sources afin de dresser la liste des références dont nous avons parlé dans la première partie : les fonctions internes, les fonctions importées et les chaînes de caractères.

- Etape 2 : Create

Cette deuxième étape consiste à créer une copie de l’arborescence des fichiers sources en modifiant le code pour que la compilation produise un code relocalisable. Cette étape suit exactement le principe présenté dans la deuxième partie : Une structure GLOBAL_DATA est déclarée et toutes les références sont modifiées pour se baser sur cette structure.

- Etape 3 : Compile

WiShMaster compile ensuite ces sources patchées afin de produire un exécutable.

- Etape 4 : Extract

Lors de cette étape, WiShMaster va extraire le code des différentes fonctions et la structure GLOBAL_DATA de l’exécutable précédemment généré, puis les assembler pour former une première version du shellcode.

- Etape 5 : Generate

L’étape de génération consiste à créer plusieurs versions du shellcode en patchant certaines données. A l’issue de cette étape, nous obtenons plusieurs shellcodes.

- Etape 6 : Xor

Chacun des shellcodes générés va alors être xoré avec une clé différente.

- Etape 7 : Integrate

Enfin, WiShMaster va successivement inclure chaque shellcode xoré dans un fichier header d’une autre arborescence de fichiers sources sous forme d’un tableau de char, et lancer la compilation de cet autre programme.

A la fin de cette ultime étape, nous obtenons un ensemble de fichiers exécutables contenant des versions xorées de notre shellcode. Le schéma ci-dessous résume les éléments produits lors des différentes étapes :






Les conventions d’écriture du code

WiShMaster impose cependant plusieurs contraintes sur le code source d’origine. Tout d’abord, le code est analysé via des expressions régulières et doit donc suivre une notation relativement classique.

Par exemple, WiShMaster ne reconnaîtra pas la déclaration de fonction suivante à cause du changement de ligne entre le « void » et « MyFunc » :


void
MyFunc(int a)
{
printf("%d", a);
}



Ensuite, le code doit comporter au maximum une seule variable globale. Dans le cas où plusieurs variables seraient nécessaires, il faut donc les inclure dans une structure globale unique.

Structure du shellcode généré.

Pour mieux comprendre le principe de génération du shellcode, prenons l’exemple du code suivant :


typedef struct __MYDATA
{
int a;
char szMsg[10];
} MYDATA, * LPMYDATA;

MYDATA MyData =
{
0,
"Hello"
};

void MyFunc(int a)
{
printf("Paramètre passé : %d\n", a);
if(a == MyData.a)
printf("Les valeurs sont identiques\n");
}

int _tmain(int argc, _TCHAR* argv[])
{
MyFunc(7);

return 0;
}



Ce code comporte :

- deux fonctions : « _tmain » et « MyFunc »,
- une fonction importée « printf »,
- une structure globale initialisée.

Le shellcode formé par WiShMaster aura la structure suivante :






Au début du buffer, nous trouvons une fonction BuildReferences, ajoutée par WiShMaster qui va se charger de retrouver l’adresse de la structure globale et d’effectuer son initialisation. Elle est suivie du code de toutes les fonctions internes : _tmain et MyFunc dans notre cas.

La seconde partie du buffer est constitué de la structure globale. Celle-ci commence par la structure globale du programme d’origine (un integer à 0 suivi d’un tableau de dix chars contenant la chaîne « Hello »), suivi des pointeurs de fonctions internes et des pointeurs de fonctions importées.

Elle se termine enfin par les différentes chaînes de caractères détectées ("Paramètre passé : %d\n" et "Les valeurs sont identiques\n" dans notre cas).

Autres ressources dans ce même dossier :

[WiShMaster - Partie 1] Introduction à l'ecriture de shellcodes en C - lien

[WiShMaster - Partie 3] Principe de shellcodisation avec WiShMaster (2) - lien

[WiShMaster - Partie 4] Principe et Fonctionnement - RConnect/WiShMaster Vs firewalls personnels (1) - lien

[WiShMaster - Partie 5] Principe et Fontionnement - RConnect/WiShMaster Vs firewalls personnels (2) - lien

[WiShMaster - Partie 6] Principe et Fonctionnement - RConnect/WiShMaster Vs firewalls personnels (3) - lien

[WiShMaster - Partie 7] Résultat de RConnect avec des firewalls personnels et conclusion - lien




- Article suivant : [WiShMaster - partie 3] Principe de shellcodisation avec WiShMaster (2)
- Article précédent : [WiShMaster - Partie 1] Introduction à l'écriture de shellcodes en C
- Article suivant dans la catégorie Tutoriels : [WiShMaster - partie 3] Principe de shellcodisation avec WiShMaster (2)
- Article précédent dans la catégorie Tutoriels : [WiShMaster - Partie 1] Introduction à l'écriture de shellcodes en C

Les derniers commentaires publiés pour cet article:
- ESRT @xsploitedsec - Shell Storm's shellcode database ...
- ESRT @Kleissner - Article Compiling Shellcode ...
- Slides : WiShMaster reloaded tutorial, Benjamin Caillat (ESIEA - France) iAWACS 2009 ...
- BETA3 released, a multi-format shellcode encoding tool ...

Les derniers commentaires de la catégorie Tutoriels:
- UPDATE Snort 2.9.1.1 ...
- 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 :