[AUTOIT]String Obfuscating|Func Crypting [TUT]

05/28/2013 20:10 YatoDev#1
#Update 10.09.2013

Anstatt des schlechten Tutorials und dem ganzen aufwand habe ich mich mal an einen Obfuscator gesetzt. Es sollte eigentlich alles fehlerfrei laufen.
Nach dem obfuscaten wird eine datei im scriptdir erstellt namens : new_Obf.au3 das werde ich noch anpassen auf die dateinamen von den obfuscateten scripts

Funktionen :
-Strings Crypten (Script wird langsamer)
-Eigene Funktionen oder UDF's Renamen
-Variablen umbenennen

Lösung für die geschwindigkeits probleme beim stringcrypter :
Die strings in variablen direkt am anfang des scripts deklarieren lassen

Download :
[Only registered and activated users can see links. Click Here To Register...]
05/28/2013 21:46 Shadow992#2
Abgesehen davon, dass es natürlich genug Obfuscators gibt, die etwas derartiges besser umsetzen, ist es dennoch eine nette Idee.

2 Kleinigkeiten, die deine Idee noch etwas verbessern könnten:

1. Das Passwort im Klartext anzuzeigen ist sehr schlecht, besser wäre das Passwort auch aus der plugin.dll auszulesen, indem man beispielsweise die aller erste Zeile als Passwort definiert.

2. Den String zu returnen und ihn erst dann auszuführen ist sehr schlecht. Klar wird das an folgendem Szenario:

Ich habe einen Code mit 100 Zeilen und kenne deinen Obfuscator nicht, gehe also davon aus, dass es ein unpublic Obfuscator ist.
Was sind meine ersten Schritte? Klar, ich schau mir an was die Executes so machen und da fällt mir dann sofort auf, dass immer diese eine Funktion aufgerufen wird bevor das Execute kommt. Also liegt die Vermutung Nahe, dass diese Funktion irgendwie die auszuführenden Befehle zurückliefert.

Was mach ich also?
Tab-Leiste --> Bearbeiten --> Suchen & Ersetzen --> Alle "Executes" ersetzen durch "ConsoleWrite" oder "FileWrite" das Ganze ist auch recht schnell per Programm gemacht.

Wie macht man solche Angriffe also schwerer?
Ein bisschen schwerer wird es, wenn du das Execute direkt in die Funktion packst. Damit fällt das return weg bzw. es wird dann returnt was die Funktion normalerweise returnen sollte.
Das Ganze ist natürlich nur minimal besser, aber es ist besser und bedeutet keinen größeren Aufwand als wie oben beschrieben. ;)

Ansonsten nette Idee, aber ich werd doch lieber bei meinem OPbfuscator bleiben. :D

Edit:
Deine "Flutter Obfuscate.exe" ist nicht ausführbar zumindest nicht bei mir unter Windows 7 64Bit.
05/28/2013 21:47 omer36#3
ist wohl eher ein release, anstelle eines tuts.
05/28/2013 21:58 YatoDev#4
Quote:
Originally Posted by omer36 View Post
ist wohl eher ein release, anstelle eines tuts.
string obfuscation wird noch rein editiert dann ist es mehr tut als release .

@Shadow : Werde deine vorschläge noch reintuen und eine andere .exe hochladen .

Das ist mir klar das andere das besser machen können aber es geht ja auch nur darum schnell mal eine code zeile etwas komplizierter darstellen zu lassen und da es wenige obfusctatoren gibt die die strings gut verschlüsseln können (bis auf deinen) .
Außerdem habe ich sowas noch nie als "release" gesehen und da ich das erfolgreich bei ein paar random noobs ausgetestet habe dachte ich mir ich mach mal ein kleines tutorial daraus :)
05/28/2013 22:00 Netzgeist#5
[Only registered and activated users can see links. Click Here To Register...]

Sicherheit basiert nicht auf Geschlossenheit. Nicht persönlich gemeint :)
05/28/2013 22:04 YatoDev#6
Quote:
Originally Posted by Netzgeist View Post
[Only registered and activated users can see links. Click Here To Register...]

Sicherheit basiert nicht auf Geschlossenheit. Nicht persönlich gemeint :)
ja aber damit lohn es sich einfach nicht komplexe funktionen zu verschlüsseln daher wird es wie z.b. bei einer message box keine nachteile geben ^^
05/29/2013 19:58 Requi#7
Also ist es sogesehen, etwas obfuscaten (encrypten) und noch mal obfuscaten :rolleyes:
05/29/2013 20:23 Netzgeist#8
Spar dir dein Augenrollen und googel die Vokabeln to obfuscate sowie to encrypt. Du amüsierst dich gerade über deine eigene Bildungslücke.
05/29/2013 22:22 YatoDev#9
Quote:
Originally Posted by Netzgeist View Post
Spar dir dein Augenrollen und googel die Vokabeln to obfuscate sowie to encrypt. Du amüsierst dich gerade über deine eigene Bildungslücke.
?? Meinst mich ? :D ich weis was obfuscaten ist und das bedeutet im groben nur den code unleserlich machen .

@requi : einfache codes wie z.b. die msgbox werden bei dem obfuscator von autoitscript.com zwar obfusct
ated aber direkt beim decompilen mit exe2aut deobfusctatet . ich erhoehe also die fehleranzahl des decompilers und mache den code unuebersichtlicher

aso noch reinedited : netzgeist du scheinst mir ja ein ganz netter und oberschlauer in dieser section ;)
ne jetzt mal ohne spaß geb mal ein paar sinnvolle kommentare von dir ab ich habe mich lange genug damit beschaeftigt und weis deswegen auch darueber bescheid ^^

auserdem bin ich grad nur am handy on
05/30/2013 14:28 Shadow992#10
Quote:
Originally Posted by »FlutterShy™ View Post
?? Meinst mich ? :D ich weis was obfuscaten ist und das bedeutet im groben nur den code unleserlich machen .

@requi : einfache codes wie z.b. die msgbox werden bei dem obfuscator von autoitscript.com zwar obfusct
ated aber direkt beim decompilen mit exe2aut deobfusctatet . ich erhoehe also die fehleranzahl des decompilers und mache den code unuebersichtlicher

aso noch reinedited : netzgeist du scheinst mir ja ein ganz netter und oberschlauer in dieser section ;)
ne jetzt mal ohne spaß geb mal ein paar sinnvolle kommentare von dir ab ich habe mich lange genug damit beschaeftigt und weis deswegen auch darueber bescheid ^^

auserdem bin ich grad nur am handy on
Ich habe gesehen dein "Obfuscator" klappt immer nur für eine Zeile, wenn du willst können wir den gemeinsam so umschreiben, dass er für beliebig viele Zeilen funktioniert. ;)

Ist nur ein Angebot keine Verpflichtung. ;)
05/30/2013 16:56 YatoDev#11
Quote:
Originally Posted by Shadow992 View Post
Ich habe gesehen dein "Obfuscator" klappt immer nur für eine Zeile, wenn du willst können wir den gemeinsam so umschreiben, dass er für beliebig viele Zeilen funktioniert. ;)

Ist nur ein Angebot keine Verpflichtung. ;)
ja würde ich gerne hab ich bis jetzt auch nur wegen "keine lusst" , zeitmangel und weil ich dann noch eine func zum einlesen des oberen edit feldes schreiben müsste .

Kannst mich gerne mal in skype adden : michel.p.554
09/10/2013 23:56 YatoDev#12
Hab dem thread mal verändert ....
Wenns ein mod sieht :
Thread titel umbennen : [Autoit] Little Obfuscator
Thread verschieben in die release section
wenn nicht geht morgen nen request raus ^^