\\ Home Page
Benvenuto nel Blog di Cantelmo Software: "SELECT * FROM Cantelmo_Security ORDER BY date DESC"
LinkLog
Nessun link trovato.
WebLog
Nell'articolo viene spiegato come inserire codice arbitrario nella dll "core" (mscorlib.dll) del .net framework 
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:...
Continua a leggere...
Nel nuovo Visual Studio 2010 è presente la classe "BigInteger" che consente di trattare numeri interi di qualsiasi dimensione.
Utilizzando tale classe ci si accorge che non è stata implementata alcuna funzione relativa al calcolo delle radici quadrate 
La "soluzione" a questa mancanza (stranamente assente anche in java, mono, ect.) è:...
Continua a leggere...
Circola in rete la release 6.x completamente spacchettata e decompilata (completa di src code c#).
Se da una parte è forse quello che tutti volevano (reflector è per tutti un nemico) dall'altra -questa notizia- porta con se nuove complicazioni....
Continua a leggere...
Risolvi un crypto KeyGenMe e vinci:
- 1 Licenza d'uso: Goliath .NET Obfuscator rel. 4.x (Enterprise Edition)
- assurance program (per 1 anno)
Maggiori informazioni sono disponibili a questo link
Vengono presentate, in breve, le tecniche di protezione utilizzate in Goliath .NET Obfuscator
La maggior parte di queste tecniche sono state poi "copiate" ed inserite in prodotti concorrenti (tecniche "spudoratamente" simili verrano -adeguatamente- segnalate).
ENCRYPTION DELLE STRINGHE:... Continua a leggere...
Vengono presentate, in breve, le tecniche di protezione utilizzate in Goliath .NET Obfuscator
La maggior parte di queste tecniche sono state poi "copiate" ed inserite in prodotti concorrenti (tecniche "spudoratamente" simili verrano -adeguatamente- segnalate).
RENAMING DEI SIMBOLI:... Continua a leggere...
Utilizzando il nuovo Goliath .NET Obfuscator rel. 4.x è possibile "unire" gli assembly in un unico exe o dll.
Pur disponendo di un valido prodotto bisogna, però, anche saperlo usare correttamente!
Chissà perchè poi un qualsiasi "fallimento" viene sempre imputato all'offuscatore!
Nello specifico mi riferisco all'ostinazione di alcuni utenti americani che cercano di unire i propri programmi con librerie di terze parti (un esempio su tutti è la suite di controlli DOTNETBAR)....
Continua a leggere...
L'acquisto di un nuovo computer è sempre una scelta difficile. I fattori in gioco sono diversi: prezzo, caratteristiche e -non per ultimo- l'eventuale servizio di assistenza tecnica. Pur di non avere problemi (e bloccare un'attività) siamo disposti anche a spendere qualcosa in più!
La mia scelta è ricaduta su un prodotto HP (azienda già a me nota grazie ad un palmare: iPAQ h5450) ed ho acquistato un notebook dv5-1140el.
L'enfasi iniziale ha subito una piccola battuta di arresto a causa di un errore con il masterizzatore. Qualsiasi tentativo di copiatura falliva evidenziando un errore: 0xEB020B88.
Dopo qualche ricerca leggo sul forum del produttore del software (in bundle con il notebook) che tale errore è dovuto ad un difetto di fabbrica!
In questo post voglio segnalare la pazienza, cortesia e professionalità del Servizio Clienti HP (rif. Sig.ra Marchionni e Sig. La Grassa) che ha provveduto immediatamente (a stretto giro di e-mail) alla risoluzione del mio problema. Dopo essersi accertati delle mie competenze tecniche e, quindi, di conseguenza, senza bloccarmi l'attività commerciale (nel caso avessi dovuto inviare loro il notebook) mi hanno fatto pervenire -senza alcuna spesa- il nuovo masterizzatore.
Ora tutta la soddisfazione di aver scelto un buon prodotto...ed un'azienda affidabile!
Continua l'evoluzione del nuovo prodotto (rel. 3.0.7) con l'inserimento di nuovi eccezionali parametri di protezione:
--clickonce
--fakeint
--fakecall
--chr:[u] o [p]...
Continua a leggere...
La protezione dei ns programmi è un argomento sempre attuale!
Per una protezione efficace è necessario rendere INSEPARABILE il legame tra protezione e programma. Ma chi utilizza il .NET deve prevedere -anche la possibilità- che il Suo codice venga spiato e/o analizzato (con l'ausilio dei decompilatori).
Se il codice può essere analizzato, risulta superfluo, utilizzare crittografia a chiave simmetrica per proteggere i dati utilizzati per il licensing. Il punto debole degli algoritmi a chiave simmetrica è la chiave che -necessariamente- deve essere distribuita con il programma....
Continua a leggere...
La "guerra" tra obfuscators contro decompilers (e/o deobfuscators) è sempre attuale. 
Sono stati rilasciati strumenti che -se usati creativamente- potrebbero facilitare un eventuale aggressore nell'eliminazione di una precisa tecnica di protezione: il control-flow! 
Prevedendo questa "realistica possibilità" è necessario complicare ulteriormente il codice dei ns algoritmi!
...
Continua a leggere...
Come più volte ribadito .NET è una piattaforma vulnerabile!
A dimostrazione di quanto affermato questa volta a farne le spese è stato lo stesso Goliath .NET Obfuscator
Ebbene qualcuno che, forse, ritiene il proprio prodotto "competitors" di Goliath .NET Obfuscator ha pensato (bene?!?) di copiare spudoratamente una tecnica usata per bloccare Reflector ed i vari plug-in presenti sul mercato 
Non riuscendo a studiare il codice interno, il tizio (pure italiano!), ha copiato direttamente il risultato finale (tecnica unica e presente *solo* in Goliath .NET Obfuscator già da 4 anni) 
Che dire?
- grazie per l'interesse ad un prodotto Cantelmo Software;
- complimenti per la creatività! 
- almeno ci stai guadagnando qualcosa? 
Il prodotto è stato già scaricato e corservato per benino! al momento, non lo nomino, per non fare "pubblicità occulta" però mi riprometto (appena possibile) di realizzare un...
Stay tuned!
UPDATE del 27-ott-2008: il "tizio" ha rilasciato una nuova release eliminando ("camuffando") le similitudini con Goliath .NET Obfuscator!...
Continua a leggere...
In Goliath .NET Obfuscator v3.x è stato potenziato il renaming dei simboli. E' possibile, infatti, rinominare anche i simboli pubblici (classi, metodi, proprietà, field, eventi, interface, override, ect.). 
Questa feature che è inutile per la protezione di una singola dll (creazione di un componente) risulta essere abbastanza efficace nel camuffare le chiamate alle librerie referenziate in progetti più complessi.
Potendo, ora, alterare i simboli pubblici è stato possibile implementare anche la protezione contemporanea di più assembly referenziati! Di conseguenza, anche eventuali de-obfuscator, devono possedere questa caretteristica. La sola "analisi statica" sui singoli assembly è pressochè inutile.
...
Continua a leggere...