Software Development
Italiano | English

FORUM
::  Menù Principale - Sito Web
del Geom. Marcello Cantelmo :: Un'Azienda. Molte Soluzioni !
 
:: In Primo Piano
< settembre 2010 >
L
M
M
G
V
S
D
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
     
             

Profilo Facebook di Marcello Cantelmo
Cerca per parola chiave
 


Titolo
In che modo Proteggi il tuo software?

 Chiave Hardware
 Chiave Software
 Nessuna Protezione




07/09/2010 @ 17.04.21
script eseguito in 16 ms


Valid XHTML 1.0 / CSS
\\ Home Page : Storico : .NET Software Protection (inverti l'ordine)
Di seguito gli interventi pubblicati in questa sezione, in ordine cronologico.
 
 
Di Marcello Cantelmo (del 10/05/2010 @ 10:02:19, in .NET Software Protection, linkato 115 volte)

Nell'articolo viene spiegato come inserire codice arbitrario nella dll "core" (mscorlib.dll) del .net framework : - o

Per quanto riguarda, invece, la protezione del software/dati (attività specifica del sottoscritto) è realistico prevedere managed-code-injection:

- messagebox di una stringa in base64;
- scrittura su disco di un array di byte

direttamente nel namespace: System.Security.Cryptography -> classi relative alla crittografia dei dati (des, tripledes, rijndael, ect.) -> metodo:

public override ICryptoTransform CreateDecryptor(byte[] rgbKey, byte[] rgbIV);

in definitiva, per quanto nascosti, nel ns codice, gli array .KEY e .IV ...devono passare per questo metodo...e, quindi, saranno sempre a disposizione dei ns aggressori! : - (

Attualmente, con tale tecnica, vengono "bucati" tutti gli schemi di licensing presenti sul mercato oltre alle eventuali tecniche personali di protezione dei dati!

E' indispensabile, quindi, d'ora in poi, l'utilizzo di algoritmi di crittografia a chiave asimmetrica! ; - )

link di riferimento: http://bit.ly/bWiGKD

 
Di Marcello Cantelmo (del 02/05/2008 @ 11:24:54, in .NET Software Protection, linkato 607 volte)
Oltre a spiare i ns Assembly con gli attuali .NET CLR Class Browser Decompilatori (il più famoso oltre che gratuito è Reflector),  ora, è anche possibile effettuare delle modifiche "on-fly" utilizzando la libreria Mono.Cecil. In questo esempio -realizzato in vb.net- si evidenzia come rimuovere l'attributo SuppressIldasmAttribute che "dovrebbe" bloccare il disassembling tramite ILDASM:
Imports Mono.Cecil

Module Module1

    
Sub Main()
        
'[i] spying assembly ...
        
Dim assembly As AssemblyDefinition AssemblyFactory.GetAssembly("d:\goliath.exe")
        
'<<<
        
For Each attribute As CustomAttribute In assembly.CustomAttributes
            
If (attribute.Constructor.DeclaringType.Name "SuppressIldasmAttribute"Then
                
'[i] remove attribute
                
assembly.CustomAttributes.Remove(attribute)
                
Exit For
            End If
        Next
        
'[i] erase PublicKey and PublicKeyToken
        
With assembly.Name
            .PublicKey 
Nothing
            .PublicKeyToken 
Nothing
        
End With
        
'[i] save to disk the new tampered assembly
        
AssemblyFactory.SaveAssembly(assembly, "d:\goliath_ildasm.exe")
    
End Sub

End Module
...semplice e fin troppo efficace! : - (
 
Pagine: 1


. . : :   U N D E R   C O N S T R U C T I O N   : : . .
Home Page:Servizi:Soluzioni:Clienti:Prodotti:Azienda

: : Use OpenOffice.org :
Copyright © 2003-2009 "Cantelmo Software" del Geom. Marcello Cantelmo. Tutti i Diritti sono Riservati • Note Legali
Document made with Nvu
Microsoftâ„¢, Windowsâ„¢, .NETâ„¢, and .NET Frameworkâ„¢ sono marchi di Microsoft Corporation. Tutti gli altri marchi appartengono ai legittimi proprietari.

powered by dBlog CMS ® Open Source