Crack-wifi.com FORUM

LE FORUM DU SITE

Wifi, Backtrack, crack WEP et WPA...

Vous n'êtes pas identifié(e).  

Annonce

Visitez la boutique Wifi-highpower.com, votre revendeur agr Alfa Network: du matriel Wifi slectionn, cartes Wifi USB Awus036h et Awus036nh, antennes omnis, yagis, panel, amplis wifi, accessoires...

#1 16-01-2013 23:24:37

Fuji
Membre Irremplaçable
Lieu : Saint Script-sur-Shell
Inscription : 13-12-2010
Messages : 783

La cross compilation

Ecrire et compiler du code sous Linux pour exécuter ensuite dans Windows. On a déjà parler et cette méthode permet ainsi de générer un fichier exécutable et prendre en charge la compilation des librairies comme <windows.h>. Il faut installer "minGW32 wine" (elle est déjà dans BT5-2 ?) puis ça se compile en ligne de commande avec ("i586-mingw32msvc-gcc -o ....") comme le montre ce tuto de ubuntu.fr.

Seulement voila, normalement ça se combine directement avec GCC afin d’exécuter des commandes comme celle-ci:

gcc -g  fichier_source.c -o resulat.exe -nostdlib -mwindows -lkernel32 -luser32

Mais si on procède de cette manière ça ne marche pas, on des erreurs de partout, et pourtant ça doit marcher.

Houston, we've got a problem hmm

Hors Ligne

Annonce

Visitez la boutique Wifi-highpower.com, votre revendeur agr Alfa Network: du matriel Wifi slectionn, cartes Wifi USB Awus036h et Awus036nh, antennes omnis, yagis, panel, amplis wifi, accessoires...

#2 17-01-2013 01:16:56

antares145
Membre d'honneur
Inscription : 29-09-2009
Messages : 5 199
Site Web

Re : La cross compilation

Houston, we miss details surtout !

Pour qu'on puisse t'aider, il nous faudrait au moins
- le code que tu essaies de compiler
- les erreurs soulevées (les plus critiques d'entre elles si elles sont très nombreuses)

La cross-compilation via GCC c'est mignon sur le papier, mais c'est rare que ça se passe sans casse dès que ton code sort des sentiers battus. Pour un code très générique (et simpliste) ça peut passer, sinon mingw est une bonne alternative, mais souvent c'est carrément MS Visual Studio qu'il faut pour inclure les librairies propres à Windows (non-libres, donc non distribuées sous Linux) hmm

Hors Ligne

#3 17-01-2013 06:44:53

Fuji
Membre Irremplaçable
Lieu : Saint Script-sur-Shell
Inscription : 13-12-2010
Messages : 783

Re : La cross compilation

[email protected]:~# gcc -g shell_1.c -o shell_2.exe -nostdlib -mwindows -lkernel32 -luser32
cc1: error: unrecognized command line option "-mwindows"

Le but est de contourner les limitations du compilateur afin d'avoir des exécutables simples et compacts. Si par exemple avec la méthode classique l’exécutable généré pèse 10 Ko on peut obtenir 5 Ko ou moins avec cette compilation particulière. Mais pour arriver à un tel résultat d'optimisation, il faut créer sa propre routine de démarrage  en contournant la CRT comme il est expliqué dans ce PDF de six pages Contournez l'utilisation de la CRT avec MinGW [zataz.com] c'est une autre méthode que celle décrite dans le tuto de ubuntu, car il ne s'agit pas juste de produire des exécutable pour Windows.

Ce que je ne comprends pas, c'est que l'auteur utilise GCC comme je viens de le décrire, et je me demande qu'est ce qu'il a de plus son GCC que le miens. Je viens d'installer minGW32 mais ça ce compile sans GCC avec ("i586-mingw32msvc-gcc") en plus je constate qu'il ne prend pas en compte <iostream.h>, mais il est facile de trouver son code source.

Pour le code en question, il s'agit d'un programme en C que j'avais mis au point intégrant une charge Meterpreter, et le problème c'est  que  en  l'exécutant il fonctionne bien mais il me met une  fenêtre  noir  d'invite de commande  au  milieu de l'écran  qui  doit absolument restée si on veut que l'exécutable fonctionne et se maintient en mémoire, il y a peut-être une méthode simple pour l'a supprimée, je pense à une fonction. Car t'avais noté  qu'un  Meterpreter sous  forme  d'exécutable  Windows, il s'exécute incognito sans cette moche fenêtre hmm

Dernière modification par Fuji (17-01-2013 07:17:24)

Hors Ligne

#4 17-01-2013 10:57:45

antares145
Membre d'honneur
Inscription : 29-09-2009
Messages : 5 199
Site Web

Re : La cross compilation

Je ne connais pas bien ces techniques, mais après une brève recherche les résultats sur "-mwindows" concernent souvent Cygwin, la couche d'émulation Unix qu'on peut installer sur Windows...

J'ai fait le test de mon côté avec le code du premier exemple de ton PDF, ça foire sur Archlinux (gcc 4.7.2) et sur BackTrack 5 (gcc 4.4.3-4Ubuntu5.1). Par contre, quand je fais le test sous Windows (où j'ai installé GCC via l'environnement Code::Blocks 8.02), ça passe sans aucun message d'erreur smile

Je pense que c'est de là que vient le problème, le GCC pour Windows (qui n'est pas mingw, ce dernier s'appelant mingw32-gcc chez moi) est + prévu pour Win que celui de Linux. Je te suggère d'installer Code::Blocks sur Win (peut-être que ça passe via Wine, mais je doute) et utiliser son GCC pour compiler ton code. C'est moins pratique que la cross-compilation, mais t'as plus de chances d'avoir un code qui fonctionne wink

Au passage, pour ton problème de fenêtre à cacher, le forum de Code::Blocks donne justement une solution (via les propriétés du projet) --> Hide Console - Code::Blocks Forum
Peut-être qu'en collant ton code comme projet et en le compilant avec les bons paramètres, tu obtiendras ce que tu veux smile

Dernière modification par antares145 (17-01-2013 11:25:31)

Hors Ligne

#5 19-01-2013 00:39:04

Fuji
Membre Irremplaçable
Lieu : Saint Script-sur-Shell
Inscription : 13-12-2010
Messages : 783

Re : La cross compilation

C'est à dire que l'auteur utilise Unix ? en tout cas cela fonctionne ainsi que la fenêtre à cacher, merci smile

En fait, j'ai Cygwin qui a été installé automatiquement avec Metasploit de Windows, je n'utilise plus celui-ci depuis longtemps, et la console Cygwin permet de créer des exécutables avec msfpayload, et de taper des commandes Linux. Du coup, j'ai copié et transférer tous les fichiers GCC et autres depuis CodeBlocks vers le dossier BIN de Metasploit, et donc je peux utiliser la compilation en ligne de commande avec Cygwin, c'est très léger, même le script .sh de kcdtv. Je crois que je vais aller chercher quelques fichiers depuis Backtrack et voir le résultat, du bidouillage en vu donc smile

Dernière modification par Fuji (19-01-2013 00:48:46)

Hors Ligne

Annonce

Visitez la boutique Wifi-highpower.com, votre revendeur agr Alfa Network: du matriel Wifi slectionn, cartes Wifi USB Awus036h et Awus036nh, antennes omnis, yagis, panel, amplis wifi, accessoires...

Sujets similaires

Discussion Réponses Vues Dernier message
[Aircrack-ng] Aircrack-ng compilation matrix par [email protected] (Mister_X)
0 1477 16-02-2016 04:28:16 par [email protected] (Mister_X)
Erreur compilation driver Awus036H par the_wild_roaster
1 1398 16-06-2014 18:49:12 par Fab955
1 1829 13-12-2013 00:11:03 par M1ck3y
2 1188 24-09-2013 15:24:46 par kcdtv
2 790 24-07-2013 00:48:12 par abradacabra

Pied de page des forums


Le coin des bonnes affaires, achats informatiques:


|   Alfa 1000 mW AWUS036H   |    Linksys WRT54GL   |    Misco, informatique   |   
 |    Ebay   |    PC portables   |    PC Gamers & Tuning   |    Cles USB   |   
|   Disques durs externes 2 To   |   
|   Wifi-highpower.com   |   


Server Stats - [ Generated in 0.023 seconds ]   Forum Stat - [ Most users ever online on the forum was : 150 on 20-09-2009 17:06:59 ]