robrock80 (Normal User)
Pro
Messaggi: 143
Iscritto: 11/12/2006
|
Questo topic è stato chiuso dal moderatore Salve a tutti. Sono riuscito a inglobare in un eseguibile un altro file semplicemente inserendo nel file WindowsResources.rc la riga
Codice sorgente - presumibilmente Plain Text |
programSong MP3File "Into the pit.mp3"
|
Ora come faccio ad usarlo dentro l'eseguibile, ad esempio copiarlo in un altra cartella?
P.S.: ho provato sia con
Codice sorgente - presumibilmente Plain Text |
CopyFile("programSong ", "c:\\into.mp3", TRUE);
|
che con
Codice sorgente - presumibilmente Plain Text |
char* fileName = getDirectoryNameOfCurrentProcess();
fileName = addCharStringToCharString(fileName , "\\Into The pit.mp3");
CopyFile(fileName , "c:\\into.mp3", TRUE);
|
ma niente Ultima modifica effettuata da robrock80 il 10/04/2010 alle 18:23 |
|
nessuno (Normal User)
Guru^2
Messaggi: 6402
Iscritto: 03/01/2010
|
Ultima modifica effettuata da nessuno il 10/04/2010 alle 19:41
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità. |
|
robrock80 (Normal User)
Pro
Messaggi: 143
Iscritto: 11/12/2006
|
E se volessi fare una DLL injection??? Ricordi quella volta che mi parlasti dell'API hooking? Beh, grazie alle librerie Detours di Microsoft sono veramente a un passo. Comunque sono andato avanti nell'inclusione di risorse ma sono bloccato di nuovo, Questo è il nuovo codice
File WindowsResources.rc
Codice sorgente - presumibilmente C/C++ |
#include "resource.h"
file_01 BINARY "Into the pit.mp3"
|
file resource.h
Codice sorgente - presumibilmente C++ |
#ifndef RESOURCE_H_ #define RESOURCE_H_ #define file_01 120 #endif
|
file Main.c
Codice sorgente - presumibilmente C# |
bool extractResource(const HINSTANCE hInstance, WORD resourceID, LPCTSTR szOutputFilename){ bool bSuccess = false; HRSRC hResource = FindResource(hInstance, MAKEINTRESOURCE(resourceID), _T("BINARY")); if (hResource == NULL) { MessageBox (NULL, "Error in Resource Finding !!.. ", "FindResource Error", 0) ; } HGLOBAL hFileResource = LoadResource(hInstance, hResource); LPVOID lpFile = LockResource(hFileResource); DWORD dwSize = SizeofResource(hInstance, hResource); HANDLE hFile = CreateFile(szOutputFilename, GENERIC_READ | GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL); HANDLE hFilemap = CreateFileMapping(hFile, NULL, PAGE_READWRITE, 0, dwSize, NULL); LPVOID lpBaseAddress = MapViewOfFile(hFilemap, FILE_MAP_WRITE, 0, 0, 0); CopyMemory(lpBaseAddress, lpFile, dwSize); UnmapViewOfFile(lpBaseAddress); CloseHandle(hFilemap); CloseHandle(hFile); return bSuccess; } int main() { extractResource(NULL, file_01, "C:\\into.mp3"); }
|
Qualcuno riesce a capire dove è il problema? Ultima modifica effettuata da robrock80 il 10/04/2010 alle 19:44 |
|
nessuno (Normal User)
Guru^2
Messaggi: 6402
Iscritto: 03/01/2010
|
Postato originariamente da robrock80:
E se volessi fare una DLL injection??? Ricordi quella volta che mi parlasti dell'API hooking? Beh, grazie alle librerie Detours di Microsoft sono veramente a un passo. |
A parte il fatto che continuo a non essere d'accordo sulle discussioni di tecniche che sono spesso usate male, perchè sarebbero necessarie le risorse?
Comunque sono andato avanti nell'inclusione di risorse ma sono bloccato di nuovo, Questo è il nuovo codice ... |
Sì ... ma cosa succede?
Problemi di compilazione?
Di esecuzione?
Errori a runtime?
Non funziona come dovrebbe?
Hai fatto un po' di debugging?
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità. |
|
robrock80 (Normal User)
Pro
Messaggi: 143
Iscritto: 11/12/2006
|
E' assurdo... Il codice che ho scritto sopra ha poi funzionato: probabilmente c'è qualche problema nelle configurazioni del progetto. Riguardo all'API hooking, creare una DLL il cui unico scopo è quello di essere iniettata in un altro processo, includendola nell'eseguibile stesso facilito la sua copiatura da una parte all'altra del file system, mantentendo comunque coerenza poichè la sua unica finalità è di essere iniettata (ho sempre odiato copiare cartelle anzichè semplici file, se poi voglio realizzare il riutilizzo del software allora ti dò ragione)
Ultima modifica effettuata da robrock80 il 11/04/2010 alle 1:36 |
|
nessuno (Normal User)
Guru^2
Messaggi: 6402
Iscritto: 03/01/2010
|
Postato originariamente da robrock80:
... creare una DLL il cui unico scopo è quello di essere iniettata in un altro processo, includendola nell'eseguibile stesso facilito la sua copiatura da una parte all'altra del file system, mantentendo comunque coerenza poichè la sua unica finalità è di essere iniettata (ho sempre odiato copiare cartelle anzichè semplici file, se poi voglio realizzare il riutilizzo del software allora ti dò ragione) |
No ... non ha nessun senso quello che dici. L'unico motivo è che non vuoi che l'utente si accorga dell'esistenza della DLL ... Inoltre, un solo file eseguibile (piuttosto che un pacchetto di installazione) è più facilmente "veicolabile" in modo "malevolo" ...
Ti ripeto ... questo tipo di programmi non mi piace per nulla e penso che non risponderò più a nessuna tua domanda ... saluti.
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità. |
|
robrock80 (Normal User)
Pro
Messaggi: 143
Iscritto: 11/12/2006
|
Malevolo??? Nel 2010 quando orammai su internet trovi di tutto e di più pensi che abbia intenzione di fare dei danni ad altre persone? Se volessi fare dei danni sarei già in grado di farlo e comunque pensi seriamente che sarei così deficente da espormi in pubblico in questa maniera? Già solo che tu hai pensato ciò che hai detto significa che lo hai già fatto e ora condanni altre persone che per curiosità hanno intenzione di imparare nuove tecniche? E allora perchè tu lo sai fare? Perchè hai perso tempo ad impararlo se è veramente così inutile? Ti ripeto, se vuoi fare dei danni su internet trovi di tutto e come vedi la soluzione al mio problema l'avevo scritta anche senza i tuoi link. Stà veramente diventando così difficile trovare persone con cui condividere una passione? Se veramente devo sorbirmi queste cose (con riferimento anche alle inutili polemiche di HeDo in altri miei post) me ne rimango da solo senza chiedere più niente
Ultima modifica effettuata da robrock80 il 11/04/2010 alle 3:09 |
|
HeDo (Founder Member)
Guru^2
Messaggi: 2765
Iscritto: 21/09/2007
|
Postato originariamente da robrock80:
me ne rimango da solo senza chiedere più niente |
fai bene, meglio per tutti. |
|
robrock80 (Normal User)
Pro
Messaggi: 143
Iscritto: 11/12/2006
|
Ma la colpa mica è tua... Ma di chi ti ha messo la tastiera sotto le mani. Sfoghi le tue frustrazioni contro l'umiltà di persone che hanno bisogno di aiuto: fai una profonda riflessione su ciò che 6 invece di prendere in giro
Ultima modifica effettuata da robrock80 il 11/04/2010 alle 3:19 |
|