DungeonaS Δημοσ. 22 Ιουλίου 2007 Δημοσ. 22 Ιουλίου 2007 yparxei kapios tropo na dw ton kwdika pou trexei pisw apo kapio arxeio .exe ? prokeite apla gia periergeia kai oxi gia na klepsw kati.
Directx Δημοσ. 22 Ιουλίου 2007 Δημοσ. 22 Ιουλίου 2007 Ναι, αν πρόκειται για κλασσικό EXE αρχείο, το οποίο δεν είναι προστατευμένο βέβαια, αρκεί να γνωρίζεις Assembly (για τον επεξεργαστή που γράφτηκε η εφαρμογή βέβαια -πχ. Intel x86 Assembly) και να έχεις μεγάλη όρεξη και διάθεση για ψάξιμο -σε αυτή την περίπτωση ψάξε για το IDA Disassembler (μόνο dis-assembler) ή το OllyDbg ή στην χειρότερη περίπτωση το WinDebugger (WinDeb 8.9) -disassemblers και debuggers ταυτόχρονα. Παλαιότερα θα σου πρότεινα και το SoftICE, ένα πανίσχυρο System Level Debugger/Disassembler αλλά αυτό συγχωρέθηκε πια.. Αν το λογισμικό τώρα είναι γραμμένο σε Delphi ή C/C++ Builder, ισχύουν τα παραπάνω, όμως σε συμβουλεύω να ψάξεις για το DeDe Debugger (κάπως γερασμένο) ή το PE Explorer τα οποία έχουν έναν debugger προσαρμοσμένο (VCL profiler/disassembler) ώστε να αναλύει καλύτερα τα προγράμματα αυτών των εργαλείων -και εδώ όμως η Assembly είναι απαραίτητη. Αν το λογισμικό είναι γραμμένο σε κάποια έκδοση της Visual BASIC από την 6 και κάτω, ψάξε για Visual BASIC disassembler ή debugger όλο και κάτι θα βρεις -και εδώ η Assembly είναι απαραίτητη βέβαια (για VB 5+). Αν τώρα το εκτελέσιμο είναι γραμμένο σε .NET (C#, VB .NET) ψάξε για το Reflector .NET, σε αυτή την περίπτωση και αν το πρόγραμμα δεν είναι προστατευμένο, θα δεις κατευθείαν τον κώδικα του, στην γλώσσα που γράφτηκε ή που σε εξυπηρετεί (εδώ δεν χρειάζεσαι γνώσεις Assembly!). Τα ίδια με το .NET ισχύουν και για τα προγράμματα που είναι γραμμένα σε Java -οπότε δες για Java Decompiler κτλ. Αυτά.
profitis Δημοσ. 25 Ιουλίου 2007 Δημοσ. 25 Ιουλίου 2007 Mιας και ψάχνω παρόμοιο ας το ρωτήσω εδωπέρα... Γίνεται απο ένα .exe ή απο τον source code να δω την γλώσσα μηχανής του προγραμμάτος (δηλαδή να το δω σε 0 και 1)....
RapidShade Δημοσ. 25 Ιουλίου 2007 Δημοσ. 25 Ιουλίου 2007 Assembly ~~ Machine Code μιας και όλα μεταφράζονται σε 01 finally... Εφόσον ξέρεις και σε ποια πλατφόρμα απευθύνεσαι (x86 etc)...
Aesmade Δημοσ. 25 Ιουλίου 2007 Δημοσ. 25 Ιουλίου 2007 Αν και είναι πρακτικά αδύνατον να καταλάβεις κάτι γραμμένο σε binary, έγραψα ένα προγραμματάκι σε C που του δίνεις ένα αρχείο και σου δείχνει τον κώδικα σε binary. Source: > #include <windows.h> #include <stdio.h> #include <math.h> char* toBin(int); int main() { FILE *fInp; char *tmpfile=new char,*path=new char; printf("File path:\n"); scanf("%s",path); fInp=fopen(path,"rb"); if (!fInp) { printf("Couldn't open file\n"); getchar(); getchar(); return 0; } sprintf(tmpfile,"%s\\tmptext.txt",getenv("TEMP")); FILE *fTemp=fopen(tmpfile,"w+"); int dHex=getc(fInp); while (dHex!=EOF) { fprintf(fTemp,"%s ",toBin(dHex)); dHex=getc(fInp); } fclose(fInp); fclose(fTemp); system(tmpfile); return 1; } inline char* toBin(int dHex) { int dHexTmp=dHex; char* ret=new char[9]; for (int i=7;i>=0;i--) { ret[i]=dHexTmp%2?'1':'0'; dHexTmp=(int)floor((int)(dHexTmp/2)); } ret[8]='\0'; return ret; } Δεν έχω και πολλά να κάνω στις 3 τη νύχτα...
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.