Accueil > Forum > > > > Commande >>> Buffer
Commande >>> Buffer
lundi 11 avril 2005 à 16:18:54 |
Commande >>> Buffer

Stormy
|
Salut à tous,
Je cherche une solution afin de charger dans un Tampon une suite de commande ASM ou l'ensemble d'un code appartenant à une fonction C (comme avec une fonction strcat par exemple). En d'autres termes, serait-il possible qu'une portion d'un code compilé soit pointé et copié dans un Buffer. Lors du développement, on situe facilement les différents corps, par contre c'est difficile une fois compilé. Je voudrais éviter l'usage d'une espèce de ShellCode en Hexadécimal. Bien qu'il s'agissent d'une fantaisie absolue, je vous livre une explication de ce que je recherche :
char Tampon[MAX];
Fonction Exemple() { Bla Bla Bla; }
void Main (void) { strcat( Tampon, [code de fonction exemple] ); ( ( void (*)( void) ) &Tampon )(); return; }
Merci à tous ++ 
|
|
lundi 11 avril 2005 à 21:27:17 |
Re : Commande >>> Buffer

Arnaud16022
|
heu... en C++ je vois pas.... je sais meme pas si c'est possible de seulement accéder a l'adresse d'un call
par contre si tu interfaces ton prog principal avec de l'assembleur
(que tu peux inclure directement dans ton .cpp) ca doit pouvoir se
faire, les commandes asm ca fait 3 bytes en général.(ou 2 ... tu mets
tout ton buffer a zéro au début pr pas avoir de pb), tu y accède par
leur adresse , tu enregistre le byte correspondant, et puis tu
l'éxécute qd tu veux (remarques rien que pour ca, il faudra l'écrire au
bon endroit ca doit pas etre de la tarte)
je me renseigne
++
ad
_______________________
Omnia vincit labor improbus
|
|
mardi 12 avril 2005 à 09:11:36 |
Re : Commande >>> Buffer

BruNews
|
Salut,
à part écrire le code à récupérer dans un fichier asm, je ne vois pas d'autre solution. Il faut (offsetFin - offsetDebut) pour avoir la taille de code à mettre dans le buffer, en asm no problème on met un label sous le bloc et on peut calculer aisément. En C c'est obtenir l'offsetFin qui pose problème, on ne sait pas comment le compilo va optimiser et réorganiser le code. Arnaud16022 > la taille des instructions varie suivant l'instruction et le nbr d'opérandes (de 0 à 3 opérandes).
ciao... BruNews, MVP VC++
|
|
mardi 12 avril 2005 à 13:52:57 |
Re : Commande >>> Buffer

Stormy
|
je m'en doutais sérieusement. Il ne me reste plus que l'ption du traditionnel ShellCode en Hexadécimal (ou AlphaNumérique) dans un Tampon avec un pointeur dessus : ( ( void (*)( void) ) &Tampon )();.En attendant, merci les gars pour la confirmation. Bon code à tous et ++ 
|
|
mardi 12 avril 2005 à 21:09:14 |
Re : Commande >>> Buffer

Arnaud16022
|
" Arnaud16022 > la taille des instructions varie suivant l'instruction et le nbr d'opérandes (de 0 à 3 opérandes)."
oui je sais que le nbre varie... mais ya quoi comme instruction qui prend 0 parametres?
_______________________
Omnia vincit labor improbus
|
|
mardi 12 avril 2005 à 21:46:08 |
Re : Commande >>> Buffer

BruNews
|
RDTSC par exemple, la 1ere qui me vient à l'esprit.
ciao... BruNews, MVP VC++
|
|
Cette discussion est classée dans : buffer, fonction, commande, void, tampon
Répondre à ce message
Sujets en rapport avec ce message
Pb CreateThreadddd !!!!!!!!!!! [ par neub ]
Salut à tous, j'ecris un module de visionnement d'image etje souhaiterai pouvoir stopper ma fonction OnPlay au moment voulu mais j'ai un pb a la creat
utiliser une fonction d'une lib C dans une classe c++ [ par snook ]
Bonjour,j'aimerais savoir comment doit on proceder pourappeler une fonction d'une librairie ecrite en C dansmon programme C++?exemple: ma lib possede
allegro+probleme de creation de buffer dans une fonction [ par xboxut ]
salut je suis en train de monter mon moteur 2D avec allegro et j ai un bleme au niveau d une fonction.void buffscroll(BITMAP *bmp) //la c la fonction
ecrire dans un fichier [ par bellionl ]
salut,voila depuis une semaine je tente de conprendre le c++ avec borland c++ builderle problème est quand je veut écrire dans un fichier.création du
fonction signal en C++ sous unix (g++) [ par seblegaulois ]
Bonjour,En c, j'arrive à faire :void toto(int) {...}...signal(SIGUSR2,toto);Et en C++, je n'y arrive pas, j'ai fait :class toto {...void toto(int) { .
Pointeur sur fonction envoyé par dll [ par MoDDiB ]
Voila ce que j'ai fais mais ca ne marche pas :Dll :#include BOOL APIENTRY DllMain(HANDLE hModule,DWORD ul_reason_for_call,LPVOID lpReserved){ retu
CDialog + Sockey ? [ par mickeydisn ]
je suis entrin de realiser une application un a serveur Socket en Consol . L'application console pas de PB . Le clien j'ai cree une forme avec un edit
Pointeur vers une fonction dans une classe ... [ par MoDDiB ]
Supposons que j'ai la fonctionvoid Fonction(int test,int t);appartenant a la classe Cclass.Quelle est la syntaxe pour creer un pointeur vers cette fon
variable globale ou non [ par fcbouan ]
quel es la bonne approche , utiliser par exemple une variable globale de buffer gMonbuffer[TAILLE] et l utiliser dans une fonction ( ecriture dans un
RS232 [ par th62d ]
Bonjour,J'essaie de faire communiquer mon pc via le port serie RS232.....Quand je lance le programme TestCOM.c j'ai l'erreur suivante à la compilation
Livres en rapport
|
Derniers Blogs
SESSION SILVERLIGHT 5 3D : SLIDES ET DEMOSSESSION SILVERLIGHT 5 3D : SLIDES ET DEMOS par Groc
Durant les techdays, j'ai eu le plaisir d'animer une session sur Silverlight 5 et la 3D avec Simon Ferquel. Comme promis, voici nos slides et mes démos (celles avec le viper BSG) ici et là. Pour mémoire, les démos utilisent toutes le viper BSG...
Cliquez pour lire la suite de l'article par Groc [TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES[TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES par gpommier
Suite à la session que j'ai présenté sur WebMatrix 2, vous pouvez trouver les slides ici, ainsi que les démos en packages nuget : démos1 et démos2 J'en profite pour remercier chaleureusement tous ceux qui sont venus très nombreux à cette sess...
Cliquez pour lire la suite de l'article par gpommier [SHAREPOINT] LES SESSIONS TECHDAYS 2012.[SHAREPOINT] LES SESSIONS TECHDAYS 2012. par Patrick Guimonet
Voici donc pour ceux qui n'ont pas pu venir, ou ceux qui n'ont pas pu toutes les suivre la liste des sessions SharePoint aux TechDays 2012, que je mettrais à jour dès que les liens des vidéo seront disponibles. Ou ici : http...
Cliquez pour lire la suite de l'article par Patrick Guimonet TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3 par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE !MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE ! par Vko
Hier durant une session dédiée aux Techdays 2012, j'ai eu le plaisir d'annoncer la sortie de la Béta 2 de Mishra Reader. C'est quoi ? Pour les utilisateurs, c'est une vraie expérience de lecture de flux RSS sur Windows. Rien à voir avec les produit...
Cliquez pour lire la suite de l'article par Vko
Logiciels
Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning
|