Avatar billede pablopablo Nybegynder
08. november 2005 - 20:58 Der er 23 kommentarer og
1 løsning

Obfuscating og decompiling

Hejsa...

Som så mange andre, vil jeg gerne beskytte min kildekode for at blive decompileret om til læselig kode igen...der findes jo "Obfuscating", men har indtryk af, at det ikke hjælpe SÅÅ meget idet, der som så meget andet også er lavet programmet som kan knække dette...Så jeg ville høre jeg om hvad der i en praktiske verden vil være mest sikkert!?
Har også læst, at man kan slå alle div. dll sammen med exe-filen, således at man få en stor exe-fil...

Er det sværre at udføre decompilering på en normal exe fil end en dll?

Alle foreslag er velkommen!

Mvh. PabloPablo
Avatar billede arne_v Ekspert
08. november 2005 - 21:06 #1
obfuscating gør det dyrere at reverse engineere

medmindre vi taler beskyttelse af licens check / passwords / sensitive
algoritmer så er folk normalt ikke så bekymret for reverse engineering

exe og dll er det samme
Avatar billede pablopablo Nybegynder
08. november 2005 - 21:09 #2
Det er netop pga. licens check...:)...sååå....?

Men "Obfuscating" er altså den eneste mulighed? Ville du selv løbe an på det...?
Avatar billede arne_v Ekspert
08. november 2005 - 21:46 #3
ja og nej

de fleste lever med det

crack cost er:
  ikke obfuscated - lav
  obfuscated - middel
  brug af win32 dll i c++ - høj
Avatar billede pablopablo Nybegynder
08. november 2005 - 23:00 #4
Hej igen...

faldt over denne artikel: http://www.microsoft.com/presspass/press/2004/jul04/07-19preemptivesolutionpr.mspx

Der står bla..."Dotfuscator is available both in the box with Visual Studio 2005 and from the MSDN® Web site for download by MSDN subscribers....Microsoft first included code security products from PreEmptive in Microsoft Visual Studio .NET 2003. Today, PreEmptive remains one of the few companies whose products will ship with Visual Studio 2005..."

Jeg har et MSDN Universial abb. men kan ikke finde "Dotfuscator" på Microsofts website...og jeg kan heller ikke se hvor den skulle ligge i VS. 03...?
Avatar billede pablopablo Nybegynder
09. november 2005 - 00:47 #5
Nåå, nu fandt jeg Dotfuscation i VS. 03...og nu ser det noget anderledes ud ildasm.exe...såå det virker jo...:)

Kan jeg nu gøre noget ekstra for at gøre det endnu mere besværligt at decompilere...??
Avatar billede arne_v Ekspert
09. november 2005 - 00:52 #6
en win32 dll skrevet i C++ er endnu sværere
Avatar billede arne_v Ekspert
09. november 2005 - 00:55 #7
men hvor mange vil være interesserede i at bruge tid og kræfter på at cracke
dit program ?

bortset fra spil så tror jeg at det er spild af kræfter
Avatar billede pablopablo Nybegynder
09. november 2005 - 00:56 #8
Ja, men nu er jeg ikke c++ haj og har ikke lige tænkt mig at få en til at omskrive dll'en til C++, hvis det er det du tænker på...

Er der ikke andet jeg kan gøre, for at beskytte min kode endnu mere...?
Avatar billede pablopablo Nybegynder
09. november 2005 - 00:58 #9
det er et program som benyttet i medicinal industrien verdenen over, så man skal jo aldrig sige aldrig...hvis de nu på den anden side af kloden skal bruge 1.000 licenser kan det jo godt være at en læge, en person på et hospital eller lign. kender en som kan finde ud af at rode med decompilering...hehe
Avatar billede arne_v Ekspert
09. november 2005 - 00:59 #10
jeg kender ikke bedre metoder

men jeg er ikke ekspert på området
Avatar billede pablopablo Nybegynder
09. november 2005 - 01:01 #11
okey, tak for hjælpen! Neej, det er ikke bare lige...det eneste jeg ellers har læst om er dette: http://www.preemptive.com/documentation/assembly-linking.html

Men det desværre ikke indbygger i VS...
Avatar billede arne_v Ekspert
09. november 2005 - 01:03 #12
det er meget få virksomheder der systematisk bruger pirat kopiering

omkostningen ved at blive snuppet er for stor

ansatte med en ulovlig kopi på hjemme computeren, test af software på
en cracket udgave etc. ses nok en del

men mit indtryk er at de fleste af de store software firmaer udmærket
ved at de ikke ville tjene flere penge på det alligevel og derfor enten
vender det blinde øje til eller lovliggør det ved at stille fulde versioner
til rådighed for udvikling
Avatar billede arne_v Ekspert
09. november 2005 - 01:06 #13
jo mere kode der skal decompiles og deobfuskeres jo dyrere er det
og derfor kan der godt være lidt fordel ved at mere ting sammen

men jeg synes ikke at forskellen er stor
Avatar billede pablopablo Nybegynder
09. november 2005 - 01:09 #14
ja okey...kender dog ikke lige noget program som kan merge div. dll'er sammen med exe filen (som er gratis)...så jeg må vist nøjes med ren obfuscation i første omgang...

Læg et svar og få points!
Avatar billede pablopablo Nybegynder
09. november 2005 - 01:12 #15
Avatar billede arne_v Ekspert
09. november 2005 - 01:16 #16
det lyder som det

og et svar
Avatar billede arne_v Ekspert
09. november 2005 - 13:41 #17
med hensyn til native win32 så kom jeg lig ei tanke om dette her produkt:

http://www.remotesoft.com/salamander/protector/intro.html
Avatar billede olebole Juniormester
09. november 2005 - 14:02 #18
<ole>

Jeg så lige spm'et her i oversigten. Selvom C# ikke hører til under mine kompetencer, siger min erfaring fra andre sprog/miljøer dog, at når et værktøj til obfuskering af kode og/eller konstruktion af licens-check kommer på markedet, så er de første købere netop crackere. De kender de tilgængelige standard-værktøjer og ved ofte, hvordan deres resulterende kode skal knækkes.

Derfor er det altid en fordel at konstruere algoritmer til den slags selv - omend det kan være en tidsrøvende bitch. Skal det være effektivt, er der med andre ord et større cost/benefit regnskab at gøre op ... hvilket vel også er, hvad jeg mener at læse mellem Arnes linjer.

Arne >> Please, korriger mig, dersom du finder, 'den vrøvler'  ;o)

/mvh
</bole>
Avatar billede pablopablo Nybegynder
09. november 2005 - 15:53 #19
Arne v >> Hvad skulle jeg gøre uden dig! Det er jo lige det jeg skal bruge ;)) så kræver det i hvert fald en meget stor interesse, hvis man gider at cracke programmet på assembly niveau...
Avatar billede sovsekoder Nybegynder
12. november 2005 - 14:35 #20
vi bruger salamander og det virker godt efter hensigten.

Du skal dog forberede dig på at din applikation skal opdateres, hvis du skal køre på andre .NET versioner en den du oprindeligt har kompileret op imod. Men alt i alt har jeg kun ros til salamander
Avatar billede arne_v Ekspert
12. november 2005 - 18:28 #21
ole>

Jeg er ikke sikker på at det vil gøre den store forskel her. Den type som
decompilerer den her slags .NET programmer vil formentlig som oftest foretrække
selv at gøre det. D.v.s. at effektiviteten af obfuskeringen primært afhænger af
hvor god den er og ikke af hvor kendt den er.
Avatar billede olebole Juniormester
12. november 2005 - 19:17 #22
Jamen, den køber jeg - tak  ;o)
Avatar billede pablopablo Nybegynder
13. november 2005 - 07:35 #23
Så lykkedes det, har afprøvet DotFuscator (den som er inkl. i VS) i en PRO udgave - og den holder!-)

Jeg har i hvert fald ikke falder over nogle decompilere eller lign, som er istand til at vise data der bare ligner noget forståelig kode...sååå :))

Dog har jeg ikke kunne få programmet Anakrino 9 til at fungere, det kommer med en exception? det skulle ellers være ret godt tror jeg...kender i noget til det?
Avatar billede arne_v Ekspert
13. november 2005 - 10:42 #24
Jeg har Anakrino installeret.

Åbner du en kommando prompt og skriver:

exemplar xxxx.exe > xxxx.cs

?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester