<?xml version="1.0" encoding="windows-1252"?><feed version="0.3" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns="http://purl.org/atom/ns#" xml:lang="it-it">
	<title>Cantelmo Software</title>
	<link rel="alternate" type="text/html" href="http://www.cantelmosoftware.com/dblog/" />
	<tagline type="text/html">Cantelmo Software</tagline>
	<id>http://www.cantelmosoftware.com/dblog/</id>
	<generator url="http://www.cantelmosoftware.com/dblog/feedatom.asp" version="Cantelmo Software">Cantelmo Software 2.0</generator>
	<author>
		<name>Cantelmo Software</name>
		<url>http://www.cantelmosoftware.com/dblog/</url>
	</author>
	<modified>2008-12-17T09:12:40+01:00</modified>
	<entry>
		<title><![CDATA[UN SISTEMA DI LICENSING SICURO ED A COSTI CONTENUTI? ORA SI PUO']]></title>
		<id>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=23</id>
		<created>2008-12-17T09:12:40+01:00</created>
		<content type="text/html" mode="escaped"><![CDATA[<p>La protezione dei ns programmi &egrave; un argomento sempre attuale!</p>
<p><strong>Per una protezione efficace &egrave; necessario rendere INSEPARABILE il legame tra protezione e programma</strong>. Ma chi utilizza il .NET deve prevedere -anche la possibilit&agrave;- che il Suo codice venga spiato e/o analizzato (con l'ausilio dei decompilatori).</p>
<p>Se il codice pu&ograve; essere analizzato, risulta superfluo, utilizzare crittografia a chiave simmetrica per proteggere i dati utilizzati per il licensing. <strong>Il punto debole degli algoritmi a chiave simmetrica&nbsp;&egrave; la chiave che -necessariamente- deve essere distribuita con il programma</strong>.</p>
<p>Ora, quindi, l'idea &egrave; questa:</p>
<p>1) utilizzare <a href="http://www.cantelmosoftware.com/ita/mupal.html">Goliath .NET MuPAL</a> (<strong>Mu</strong>lti-<strong>P</strong>recision <strong>A</strong>rithmetic <strong>L</strong>ibrary);<br />2) implementare <strong><a href="http://it.wikipedia.org/wiki/Crittografia_asimmetrica">ALGORITMI A CHIAVE ASIMMETRICA</a></strong>: si cryptano i dati con la chiave privata e si decryptano i dati con la chiave pubblica (distribuita con il programma);<br />3) e, come detto, per <strong>RENDERE INSEPARABILE IL LEGAME</strong> tra protezione e programma invece di inserire manualmente i valori utilizziamo quelli presenti nello <a href="http://msdn.microsoft.com/en-us/library/wd40t7ad.aspx">STRONG-NAME</a>.</p>
<p>Ne consegue:</p>
<p>- per alterare anche 1 solo byte dei ns programmi &egrave; necessario <strong>ELIMINARE LO STRONG-NAME</strong>;<br />- eliminando lo strong-name, <strong>RISULTA FALSATA</strong>, qualsiasi decodifica dei ns dati.</p>
<p>Per esporre quanto detto, si decide, di utilizzare <strong><a href="http://it.wikipedia.org/wiki/RSA">RSA</a></strong>:</p>
<p>normalmente per cryptare si utilizza: </p>
<p><strong>C = M^E mod N</strong> </p>
<p>e per decryptare: </p>
<p><strong>M = C^D mod N</strong> </p>
<p>dove: </p>
<p><strong>M</strong> = testo da cifrare ( per non avere problemi la dim. consigliata &egrave;: (keysize/8)+1 )<br /><strong>P</strong> = 1&deg; NUMERO PRIMO di grandi dimensioni (per ora &gt;=512 bits)<br /><strong>Q</strong> = 2&deg; NUMERO PRIMO di grandi dimensioni (per ora &gt;=512 bits)<br /><strong>E</strong> = ESPONENTE PUBBLICO che soddisfa: GCD(E, (P-1)*(Q-1))==1)<br /><strong>N</strong> = MODULO PUBBLICO, il prodotto di P e Q: N=P*Q<br /><strong>D</strong> = ESPONENTE PRIVATO: D=E^(-1) mod ((P-1)*(Q-1))</p>
<p><strong>P, Q e D ...DEVONO RIMANERE SEGRETI!!!</strong></p>
<p>invece nel ns sistema di licensing utilizzeremo il sistema RSA al contrario (verifica firma): </p>
<p>per cryptare: <strong>C = M^D</strong> mod N e per decryptare: <strong>M = C^E mod N</strong></p>
<p>il risultato di tale operazioni potr&agrave; -ad esempio- essere utilizzato per far compiere al ns programma una qualsiasi operazione (e non un banale vero/falso del risultato!)</p>
<p><strong>N.B.: con tale tecnica &egrave; virtualmente impossibile realizzare un keygen dei ns programmi perch&egrave; &egrave; necessario scoprire i parametri P e Q dalla chiave pubblica N. Per riuscire nell'impresa si deve fattorizzare N (la sfida del nuovo millennio). Lo strong-name usa chiavi a 1024 bits. I tempi di calcolo -per tali dimensioni di chiavi- risultano -con le attuali macchine- davvero proibitivi!</strong></p>
<p>Per maggiori informazioni si consiglia di visionare gli esempi contenuto con la libreria Goliath .NET MuPAL!</p>
<p>enjoy!</p>]]></content>
		<link rel="alternate" type="text/html" href="http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=23"/>
		<issued>2008-12-17T09:12:40+01:00</issued>
		<modified>2008-12-17T09:12:40+01:00</modified>
		<slash:comments>0</slash:comments>
		<wfw:comments>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=23#commenti</wfw:comments>
	</entry>
	<entry>
		<title><![CDATA[GOLIATH .NET OBFUSCATOR V3.X - PARTE III: OFFUSCAZIONE DEI VALORI NUMERICI]]></title>
		<id>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=22</id>
		<created>2008-12-01T09:51:17+01:00</created>
		<content type="text/html" mode="escaped"><![CDATA[<p>La &quot;guerra&quot; tra obfuscators contro decompilers (e/o deobfuscators) &egrave; sempre attuale. <img alt=": - )" src="/dblog/template/standard/gfx/smile_sorriso.gif" /></p>
<p>Sono stati rilasciati strumenti che -se usati creativamente- potrebbero facilitare un eventuale aggressore nell'eliminazione di una precisa tecnica di protezione: <strong>il control-flow!</strong> <img alt=": - o" src="/dblog/template/standard/gfx/smile_shockato.gif" /></p>
<p>Prevedendo questa &quot;realistica possibilit&agrave;&quot; &egrave; necessario complicare ulteriormente il codice dei ns algoritmi! <img alt="; - )" src="/dblog/template/standard/gfx/smile_occhiolino.gif" /> </p>
<p>Ragion per cui in Goliath .NET Obfuscator release 3.0.4 (Edizione Enterprise) &egrave; stata inserita una nuova procedura che offusca i valori numerici unitamente ai valori booleani True/False (aggiornamento del 02-dic-2008). <img alt=": - D" src="/dblog/template/standard/gfx/smile_risatona.gif" /></p>
<p>Cantelmo Software&nbsp;&egrave; sempre un passo avanti! Ai competitors &quot;poco creativi&quot;...non rimane altro che copiare anche questa tecnica! <img alt="; - )" src="/dblog/template/standard/gfx/smile_occhiolino.gif" /></p>]]></content>
		<link rel="alternate" type="text/html" href="http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=22"/>
		<issued>2008-12-01T09:51:17+01:00</issued>
		<modified>2008-12-01T09:51:17+01:00</modified>
		<slash:comments>0</slash:comments>
		<wfw:comments>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=22#commenti</wfw:comments>
	</entry>
	<entry>
		<title><![CDATA[ANCHE I COMPETITORS TROVANO VALIDE LE TECNICHE USATE IN GOLIATH .NET OBFUSCATOR]]></title>
		<id>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=21</id>
		<created>2008-10-22T10:54:27+01:00</created>
		<content type="text/html" mode="escaped"><![CDATA[<p>Come pi&ugrave; volte ribadito .NET &egrave; una piattaforma vulnerabile! </p>
<p>A dimostrazione di quanto affermato questa volta a farne le spese &egrave; stato lo stesso Goliath .NET Obfuscator <img alt=": - D" src="/dblog/template/standard/gfx/smile_risatona.gif" /> </p>
<p>Ebbene qualcuno che, forse, ritiene il proprio prodotto &quot;competitors&quot; di Goliath .NET Obfuscator ha pensato (bene?!?) di copiare spudoratamente&nbsp;una&nbsp;tecnica usata per&nbsp;bloccare Reflector ed i vari plug-in presenti sul mercato <strong><img alt=": - P" src="/dblog/template/standard/gfx/smile_lingua.gif" /></strong></p>
<p>Non riuscendo a studiare il codice interno, il tizio (pure italiano!), ha copiato direttamente il risultato finale (<em>tecnica unica e presente *solo* in Goliath .NET Obfuscator gi&agrave; da 4 anni</em>) <img alt="; - )" src="http://www.cantelmosoftware.com/dblog/template/standard/gfx/smile_occhiolino.gif" /></p>
<p>Che dire? <br />- grazie per l'interesse ad un prodotto Cantelmo Software;<br />- complimenti per la&nbsp;creativit&agrave;! <img alt=": - )" src="/dblog/template/standard/gfx/smile_sorriso.gif" /><br />- almeno ci stai guadagnando qualcosa?&nbsp;<img alt="; - )" src="/dblog/template/standard/gfx/smile_occhiolino.gif" /></p>
<p>Il prodotto &egrave; stato gi&agrave; scaricato&nbsp;e corservato per benino! al momento, non lo nomino, per non fare &quot;pubblicit&agrave; occulta&quot; per&ograve; mi riprometto (appena possibile) di realizzare un...</p>
<p>Stay tuned!</p>
<p>UPDATE del 27-ott-2008: il &quot;tizio&quot; ha rilasciato una nuova release eliminando&nbsp;(&quot;camuffando&quot;) le similitudini con Goliath .NET Obfuscator!</p>]]></content>
		<link rel="alternate" type="text/html" href="http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=21"/>
		<issued>2008-10-22T10:54:27+01:00</issued>
		<modified>2008-10-22T10:54:27+01:00</modified>
		<slash:comments>0</slash:comments>
		<wfw:comments>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=21#commenti</wfw:comments>
	</entry>
	<entry>
		<title><![CDATA[GOLIATH .NET OBFUSCATOR V3.X - PARTE II: IL RENAMING DEI SIMBOLI]]></title>
		<id>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=20</id>
		<created>2008-08-27T15:33:14+01:00</created>
		<content type="text/html" mode="escaped"><![CDATA[<p align="justify">In Goliath .NET Obfuscator v3.x &egrave; stato <strong>potenziato il renaming dei simboli</strong>. E' possibile, infatti, rinominare anche i <strong>simboli pubblici</strong> (classi, metodi, propriet&agrave;, field, eventi, interface, override, ect.). <img alt=": - o" src="/dblog/template/standard/gfx/smile_shockato.gif" /></p>
<p align="justify">Questa feature che &egrave; inutile per la protezione di una&nbsp;singola dll (creazione di un componente) risulta essere abbastanza&nbsp;efficace nel <strong>camuffare le chiamate alle librerie referenziate</strong> in&nbsp;progetti pi&ugrave; complessi.</p>
<p>Potendo, ora,&nbsp;alterare i simboli pubblici &egrave; stato possibile implementare anche&nbsp;la <strong>protezione contemporanea</strong> di pi&ugrave; assembly referenziati! Di conseguenza, anche eventuali <strong>de-obfuscator,</strong> devono possedere questa caretteristica. La sola &quot;<em>analisi statica</em>&quot; sui singoli assembly &egrave; pressoch&egrave; inutile.&nbsp;<img alt=": - D" src="/dblog/template/standard/gfx/smile_risatona.gif" /></p>
<p>ESEMPIO: solo renaming di&nbsp;un singolo assembly:</p>
<p><strong>goliath -r d:\folder\assembly.exe</strong></p>
<p>ESEMPIO: solo renaming di&nbsp;un assembly con una libreria referenziata:</p>
<p align="left"><strong>goliath -r d:\folder\assembly.exe --ref:d:\folder\assembly.dll</strong></p>
<p>ESEMPIO: solo renaming di&nbsp;un assembly con due librerie referenziate:</p>
<p align="left"><strong>goliath -r d:\folder\assembly.exe --ref:d:\folder\assembly1.dll,d:\folder\assembly1.dll</strong></p>
<p align="justify">se invece ci sono numerose references &egrave; possibile definirle in un file esterno (ad esempio: references.txt)</p>
<p>d:\folder\assembly1.dll<br />d:\folder\assembly2.dll<br />d:\folder\assembly3.dll<br />...</p>
<p>e&nbsp;richiamate&nbsp;con:</p>
<p><strong>goliath -r d:\folder\assembly.exe --ref:d:\folder\#references.txt <img alt=": - D" src="/dblog/template/standard/gfx/smile_risatona.gif" /></strong></p>
<p align="justify"><strong>L'overloading dei simboli &egrave; automatico!</strong> Il range&nbsp;di simboli (standard) utilizzati per il renaming&nbsp;&egrave; &quot;limitato&quot; alla sola tipologia&nbsp;alfanumerica: <strong>0123456789abcdef</strong>.</p>
<p>All'utente&nbsp;finale, per&ograve;, viene data,&nbsp;ampia possibilit&agrave; di intervento. E' possibile infatti:</p>
<p>- definire il numero dei caratteri del testo finale (opzione <strong>--char:{number}</strong>)<br />- variare il singolo carattere&nbsp;(opzione <strong>--tbl:{}</strong>)</p>
<p><strong>goliath -r d:\folder\assembly.exe --ref:d:\folder\#references.txt --tbl:a=?,b== --char:4</strong></p>
<p align="center"><img alt="" src="/public/goliath_renaming_v3.jpg" /></p>
<p align="left">E'&nbsp;possibile generare,&nbsp;chiaramente, anche <strong>simboli non stampabili</strong> semplicemente impostando&nbsp;- nel parametro <strong>--tbl:{}</strong> - la definizione <strong>\{num}</strong>:</p>
<p><strong>goliath -r d:\folder\assembly.exe --ref:d:\folder\#references.txt --tbl:a=\1,b=\2,3=\3,a=\4,b=\5&nbsp;--char:4</strong></p>
<p align="center"><img alt="" src="/public/goliath_renunprint_v3.jpg" align="middle" /></p>
<p align="justify"><strong>La fase di esclusione dei simboli dal renaming avviene -esclusivamente&nbsp;da codice- utilizzando un&nbsp;attributo gi&agrave; presente&nbsp;nel .NET Framework&nbsp;sin dalla&nbsp;vers. 2.0:</strong> </p>
<p align="left">[<strong>Obfuscation(Exclude=true)</strong>]<br />public event EventHandler test1;</p>
<p align="left">[STAThread, <strong>Obfuscation(Exclude=true)</strong>]<br />internal static int Main([<strong>Obfuscation(Exclude=true)</strong>] string[] args)<br />{<br />}</p>
<p align="justify">dopo la fase di renaming -per non far capire alcuna logica progettuale- questo attributo&nbsp;viene&nbsp;automaticamente eliminato! <img alt="; - )" src="/dblog/template/standard/gfx/smile_occhiolino.gif" /> </p>
<p align="justify">Ma come detto pi&ugrave; volte: <strong>rinominare i simboli non significa&nbsp;offuscare il codice!</strong>&nbsp;Nelle prossime presentazioni si dar&agrave; ampio risalto all'<strong>offuscazione del codice</strong> e all'<strong>encryption dei metodi</strong> <img alt=": - o" src="/dblog/template/standard/gfx/smile_shockato.gif" /></p>
<p align="justify">stay tuned!</p>]]></content>
		<link rel="alternate" type="text/html" href="http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=20"/>
		<issued>2008-08-27T15:33:14+01:00</issued>
		<modified>2008-08-27T15:33:14+01:00</modified>
		<slash:comments>0</slash:comments>
		<wfw:comments>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=20#commenti</wfw:comments>
	</entry>
	<entry>
		<title><![CDATA[GOLIATH .NET OBFUSCATOR V3.X - PARTE I: CONSOLE-MODE]]></title>
		<id>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=19</id>
		<created>2008-08-27T14:47:50+01:00</created>
		<content type="text/html" mode="escaped"><![CDATA[<p>Iniziamo a conoscere il nuovo <em>Goliath .NET Obfuscator v3.x</em> presentando una delle&nbsp;features pi&ugrave; richieste dai ns clienti: <strong>la modalit&agrave; console</strong>. Il vantaggio di questa modalit&agrave; &egrave; l'utilizzo del prodotto anche come&nbsp;&quot;post-build&quot; del processo di compilazione dei ns. progetti <img alt="; - )" src="/dblog/template/standard/gfx/smile_occhiolino.gif" /></p>
<p>Questa feature, per&ograve;,&nbsp;ha comportato la completa rivisitazione di tutte le opzioni di protezione.</p>
<p><strong>goliath /?</strong></p>
<p align="center"><strong><img alt="" src="/public/goliath_console_v3.jpg" align="middle" /><br /></strong>(N.B.: le caratteristiche possono variare senza preavviso)<br /></p>
<p align="left"><font face="Courier New">Goliath .NET Obfuscator&nbsp; 3.0.0.0<br />Copyright (c) 2003-2008 CANTELMO SOFTWARE. All rights reserved.<br />The Ultimate Secure Obfuscator for .NET Platform</font></p>
<p align="left"><font face="Courier New"><strong>Usage: Goliath [options] <assemblyfile></assemblyfile>[options]</strong></font></p>
<p align="left"><font face="Courier New">Options:</font></p>
<p align="left"><font face="Courier New">&nbsp; -? --help&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Show this help list<br />&nbsp; -c --codeshield[+|-]&nbsp;&nbsp; Encrypt signed CodeShield methods<br />&nbsp; -e --encryption[+|-]&nbsp;&nbsp; Full strings encryption<br />&nbsp; -o --obfuscating[+|-]&nbsp; Full code obfuscation<br />&nbsp; -r --renaming[+|-]&nbsp;&nbsp;&nbsp;&nbsp; Full symbols renaming<br />&nbsp;&nbsp;&nbsp;&nbsp; --bak[+|-]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Backs-up the original file before processing<br />&nbsp;&nbsp;&nbsp;&nbsp; --charopt[+|-]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Optimize chars symbols for renaming<br />&nbsp;&nbsp;&nbsp;&nbsp; --chr:number&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Chars used for symbols renaming. number: 4 (default), 6, 8, 16 or 32<br />&nbsp;&nbsp;&nbsp;&nbsp; --help+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Show an additional help list<br />&nbsp;&nbsp;&nbsp;&nbsp; --ildasm[+|-]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Prevent ILDASM tool from disassembling<br />&nbsp;&nbsp;&nbsp;&nbsp; --nsp:list&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Also -namespaces:list. Exclude namespaces. list:namespaces,...<br />&nbsp;&nbsp;&nbsp;&nbsp; --out:folder&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Specifies the output folder name<br />&nbsp;&nbsp;&nbsp;&nbsp; --ref:list&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Also -references:list. Add references assembly. list:references,...<br />&nbsp;&nbsp;&nbsp;&nbsp; --snk:key&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Specifies the strong-name key file<br />&nbsp;&nbsp;&nbsp;&nbsp; --tbl:list&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Specifies symbol(s) table for renaming. list:name=value,...<br /><br /></font><font face="Courier New"><font face="Arial"><br />altre opzioni: <strong>goliath --help+<br /><br /><br /></strong></font></font><font face="Courier New">Goliath .NET Obfuscator&nbsp; 3.0.0.0<br />Copyright (c) 2003-2008 CANTELMO SOFTWARE. All rights reserved.<br />The Ultimate Secure Obfuscator for .NET Platform</font></p>
<p align="left"><font face="Courier New"><strong>Usage: Goliath [options] <assemblyfile></assemblyfile>[options]</strong></font></p>
<p align="left"><font face="Courier New">Options:</font></p>
<p align="left"><font face="Courier New">&nbsp; -V --version&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Display version and licensing information<br />&nbsp;&nbsp;&nbsp;&nbsp; --nologo[+|-]&nbsp; Do not display the CANTELMO SOFTWARE copyright<br />&nbsp;&nbsp;&nbsp;&nbsp; --quiet[+|-]&nbsp;&nbsp; Report obfuscation progress<br />&nbsp;&nbsp;&nbsp;&nbsp; --time[+|-]&nbsp;&nbsp;&nbsp; Measure elapsed time<br />&nbsp;&nbsp;&nbsp;&nbsp; --usage&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Show usage syntax and exit<br /></font><font face="Courier New"></font></p>]]></content>
		<link rel="alternate" type="text/html" href="http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=19"/>
		<issued>2008-08-27T14:47:50+01:00</issued>
		<modified>2008-08-27T14:47:50+01:00</modified>
		<slash:comments>0</slash:comments>
		<wfw:comments>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=19#commenti</wfw:comments>
	</entry>
	<entry>
		<title><![CDATA[GOLIATH .NET OBFUSCATOR V3.0 E' IN BETA!]]></title>
		<id>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=18</id>
		<created>2008-07-16T12:24:29+01:00</created>
		<content type="text/html" mode="escaped"><![CDATA[Goliath .NET Obfuscator &egrave; un prodotto stabile ed affidabile. La nuova versione recepisce tutte le features richieste dai clienti:

- utilizzo da console per una eventuale integrazione con i processi di build automatizzati;
- maggiore velocit&agrave; di esecuzione nell'offuscazione del codice
- nuovo schema di encryption delle stringhe (compatibile con i sistemi a 64 bit)
- ect.]]></content>
		<link rel="alternate" type="text/html" href="http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=18"/>
		<issued>2008-07-16T12:24:29+01:00</issued>
		<modified>2008-07-16T12:24:29+01:00</modified>
		<slash:comments>0</slash:comments>
		<wfw:comments>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=18#commenti</wfw:comments>
	</entry>
	<entry>
		<title><![CDATA[GOLIATH .NET CODESHIELD]]></title>
		<id>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=17</id>
		<created>2008-05-30T10:33:31+01:00</created>
		<content type="text/html" mode="escaped"><![CDATA[<p>Le minacce alla tutela della propriet&agrave; intellettuale del ns codice .NET sono in continua evoluzione? ...anche le soluzioni della linea security Goliath .NET <img src="/dblog/template/standard/gfx/smile_risatona.gif" alt=": - D" /></p>
<p>Con la nuova release 2.2.0 di Goliath .NET Obfuscator &egrave; stato introdotto un nuovo componente (al momento solo internalware!) denominato Goliath .NET CodeShield</p>
<p>L'utilizzo combinato dei due prodotti consente di crittografare (AES) i <strong>metodi definiti dallo sviluppatore</strong> e tali rimarrano anche dopo un eventuale dump dalla memoria <img src="/dblog/template/standard/gfx/smile_shockato.gif" alt=": - o" /></p>
<p>Per maggiori informazioni si consiglia di &quot;spiare&quot; direttamente l'eseguibile di Goliath .NET Obfuscator (V220) <img src="/dblog/template/standard/gfx/smile_occhiolino.gif" alt="; - )" /><br /></p>]]></content>
		<link rel="alternate" type="text/html" href="http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=17"/>
		<issued>2008-05-30T10:33:31+01:00</issued>
		<modified>2008-05-30T10:33:31+01:00</modified>
		<slash:comments>0</slash:comments>
		<wfw:comments>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=17#commenti</wfw:comments>
	</entry>
	<entry>
		<title><![CDATA[SUPPRESSILDASMATTRIBUTE vs MONO.CECIL]]></title>
		<id>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=16</id>
		<created>2008-05-02T11:24:54+01:00</created>
		<content type="text/html" mode="escaped"><![CDATA[Oltre a spiare i ns Assembly con&nbsp;gli attuali&nbsp;<em><strike>.NET CLR Class Browser</strike></em> Decompilatori (il pi&ugrave; famoso oltre che gratuito &egrave; <a href="http://www.aisto.com/roeder">Reflector</a>), &nbsp;ora, &egrave; anche possibile effettuare delle&nbsp;modifiche&nbsp;&quot;on-fly&quot;&nbsp;utilizzando la libreria <a href="http://www.mono-project.com/Cecil">Mono.Cecil</a>. In questo esempio -realizzato in vb.net- si evidenzia come rimuovere l'attributo <a href="http://msdn2.microsoft.com/en-us/library/system.runtime.compilerservices.suppressildasmattribute.aspx">SuppressIldasmAttribute</a> che &quot;dovrebbe&quot;&nbsp;bloccare il disassembling tramite <a href="http://msdn.microsoft.com/en-us/library/f7dy01k1.aspx">ILDASM</a>: <style type="text/css">
.code {
word-wrap:break-word;
margin:10px;
padding:10px;
border:2px ridge white;
background-color:#eeeeee;
font-family:Courier New;
font-size:10pt;
}</style>
<div class="code"><font color="#0000ff">Imports&nbsp;</font><font color="#000000">Mono.Cecil<br /><br /></font><font color="#0000ff">Module&nbsp;</font><font color="#000000">Module1<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#0000ff">Sub&nbsp;</font><font color="#000000">Main()<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#006400">'[i]&nbsp;spying&nbsp;assembly ...<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#0000ff">Dim&nbsp;</font><font color="#000000">assembly&nbsp;</font><font color="#0000ff">As&nbsp;</font><font color="#000000">AssemblyDefinition&nbsp;</font><font color="#0000ff">=&nbsp;</font><font color="#000000">AssemblyFactory.GetAssembly(</font><font color="#808080">&quot;d:\goliath.exe&quot;</font><font color="#000000">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#006400">'&lt;&lt;&lt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#0000ff">For&nbsp;Each&nbsp;</font><font color="#000000">attribute&nbsp;</font><font color="#0000ff">As&nbsp;</font><font color="#000000">CustomAttribute&nbsp;</font><font color="#0000ff">In&nbsp;</font><font color="#000000">assembly.CustomAttributes<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#0000ff">If&nbsp;</font><font color="#000000">(attribute.Constructor.DeclaringType.Name&nbsp;</font><font color="#0000ff">=&nbsp;</font><font color="#808080">&quot;SuppressIldasmAttribute&quot;</font><font color="#000000">)&nbsp;</font><font color="#0000ff">Then<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#006400">'[i]&nbsp;remove&nbsp;attribute<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">assembly.CustomAttributes.Remove(attribute)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#0000ff">Exit&nbsp;For<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;End&nbsp;If<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Next<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#006400">'[i]&nbsp;erase&nbsp;PublicKey&nbsp;and&nbsp;PublicKeyToken<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#0000ff">With&nbsp;</font><font color="#000000">assembly.Name<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.PublicKey&nbsp;</font><font color="#0000ff">=&nbsp;</font><font color="#000000">Nothing<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.PublicKeyToken&nbsp;</font><font color="#0000ff">=&nbsp;</font><font color="#000000">Nothing<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#0000ff">End&nbsp;With<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#006400">'[i]&nbsp;save&nbsp;to&nbsp;disk&nbsp;the&nbsp;new&nbsp;tampered&nbsp;assembly<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">AssemblyFactory.SaveAssembly(assembly,&nbsp;</font><font color="#808080">&quot;d:\goliath_ildasm.exe&quot;</font><font color="#000000">)<br />&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#0000ff">End&nbsp;Sub<br /><br />End&nbsp;Module</font> </div>
...semplice e fin troppo efficace! <img alt=": - (" src="/dblog/template/standard/gfx/smile_triste.gif" />]]></content>
		<link rel="alternate" type="text/html" href="http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=16"/>
		<issued>2008-05-02T11:24:54+01:00</issued>
		<modified>2008-05-02T11:24:54+01:00</modified>
		<slash:comments>4</slash:comments>
		<wfw:comments>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=16#commenti</wfw:comments>
	</entry>
	<entry>
		<title><![CDATA[NUOVO ATTACCO A GOLIATH .NET OBFUSCATOR]]></title>
		<id>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=15</id>
		<created>2008-04-14T23:41:20+01:00</created>
		<content type="text/html" mode="escaped"><![CDATA[<p>Continua l'interesse di alcuni reverser (provenienti da:&nbsp;Vietnam, Somalia, Haiti)&nbsp;a Goliath .NET Obfuscator. Maggiori informazioni a questo nuovo <a href="http://www.tuts4you.com/forum/index.php?showtopic=15635">link</a>. </p>]]></content>
		<link rel="alternate" type="text/html" href="http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=15"/>
		<issued>2008-04-14T23:41:20+01:00</issued>
		<modified>2008-04-14T23:41:20+01:00</modified>
		<slash:comments>0</slash:comments>
		<wfw:comments>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=15#commenti</wfw:comments>
	</entry>
	<entry>
		<title><![CDATA[GOLIATH .NET MUPAL E' IN BETA!]]></title>
		<id>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=14</id>
		<created>2008-03-28T20:42:30+01:00</created>
		<content type="text/html" mode="escaped"><![CDATA[<p>Disponibile, a breve, <strong>Goliath .NET MuPAL</strong> (<strong>Mu</strong>ltiple-<strong>P</strong>recision <strong>A</strong>rithmetic <strong>L</strong>ibrary) <img alt=": - )" src="/dblog/template/standard/gfx/smile_sorriso.gif" /></p>
<p>La libreria, realizzata 100% in VB.NET e CLSCompliant(True)<img alt=": - o" src="/dblog/template/standard/gfx/smile_shockato.gif" />, rappresenta la naturale evoluzione della libreria matematica creata e gi&agrave;&nbsp;utilizzata per le procedure di licensing di tutti i prodotti Cantelmo Software <img alt="; - )" src="/dblog/template/standard/gfx/smile_occhiolino.gif" /></p>
<p>La libreria consente di:</p>
<p>- utilizzare matematica con precisione arbitraria; <br />- utilizzare numeri di qualsiasi dimensione (rappresentati da stringhe); <br />- implementare i pi&ugrave; moderni Crittosistemi <a href="http://it.wikipedia.org/wiki/Crittografia_asimmetrica">Asimmetrici</a>, <a href="http://it.wikipedia.org/wiki/Crittografia_ellittica">Ellittici</a>, ect.; <br />- ect. </p>
<p>a breve, quindi, versione dimostrativa, esempi e video tutorial! <img alt="; - )" src="/dblog/template/standard/gfx/smile_occhiolino.gif" /></p>]]></content>
		<link rel="alternate" type="text/html" href="http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=14"/>
		<issued>2008-03-28T20:42:30+01:00</issued>
		<modified>2008-03-28T20:42:30+01:00</modified>
		<slash:comments>0</slash:comments>
		<wfw:comments>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=14#commenti</wfw:comments>
	</entry>
	<entry>
		<title><![CDATA[REVERSING .NET OBFUSCATOR]]></title>
		<id>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=13</id>
		<created>2008-03-21T09:08:11+01:00</created>
		<content type="text/html" mode="escaped"><![CDATA[<p>Con la presente vi porto a conoscenza delle ultime &quot;novit&agrave;&quot; riguardante la tutela della propriet&agrave; intellettuale dei ns applicativi e/o componenti.</p>
<p>Pi&ugrave; la piattaforma .NET prende piede, pi&ugrave; i &quot;concorrenti smaliziati&quot; prendono atto del business derivante dalla eventuale decompilazione di un prodotto (o semplice sprotezione) <strong><img alt="E - )" src="/dblog/template/standard/gfx/smile_diavolo.gif" /></strong></p>
<p>Nell'ultimo periodo ho notato che utilizzando la libreria &quot;m0n0.c3cil&quot; &egrave; possibile realizzare un anti-obfuscator <img alt=": - o" src="/dblog/template/standard/gfx/smile_shockato.gif" /> ...che poi &egrave; la stessa&nbsp;libreria utilizzata dalla&nbsp;maggior parte degli attuali obfuscator...senza che vi fosse alcun riferimento <img alt=": - o" src="/dblog/template/standard/gfx/smile_shockato.gif" />&nbsp;[Contiene Aggiornamento del&nbsp;05-Apr-2008]<br />Quindi se, da un lato, &egrave; stato utilizzato per rinominare i metodi in &quot;a&quot;, &quot;b&quot;, ect. dall'altro, con un uso &quot;improprio&quot;,&nbsp;&egrave; stato utilizzato per la loro ridefinizione in &quot;method_00&quot;, &quot;method_01&quot;, ect. <img alt="; - )" src="/dblog/template/standard/gfx/smile_occhiolino.gif" />&nbsp;...cio&egrave; in modo da rendere unici i nomi per un'eventuale analisi <img alt="; - )" src="/dblog/template/standard/gfx/smile_occhiolino.gif" /></p>
<p>Che cosa significa tutto questo? che il mero renaming non serve pi&ugrave; a niente. viene a cadere anche l'overloading e l'offuscazione incrementale <img alt="; - )" src="/dblog/template/standard/gfx/smile_occhiolino.gif" /></p>
<p>Maggiori info su: <strong>h t t p : / / r o n g c h a u a . n e t</strong> dove ci sono gi&agrave; pronti unpacker automatici per i pi&ugrave; diffusi obfuscator. negli attacchi non si risparmia davvero nessuno: <a href="http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=12">http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=12</a>&nbsp;<strong><img alt="; - )" src="/dblog/template/standard/gfx/smile_occhiolino.gif" /></strong></p>
<p>Community IMHO &egrave; anche questo! <strong><img alt=": - \" src="/dblog/template/standard/gfx/smile_timido.gif" /></strong></p>
<p>Certo di aver fatto cosa gradita Vi ringrazio per l'attenzione e Vi auguro buona pasqua <strong><img alt=": - Z" src="/dblog/template/standard/gfx/smile_assonnato.gif" /></strong> </p>
<p><strong>UPDATE 05-APR-2008</strong>: a seguito di un'e-mail di Google Ad-Sense per *violazione* dei contenuti dal sito segnalato sono stati eliminati i link di tutti gli unpacker disponibili.</p>]]></content>
		<link rel="alternate" type="text/html" href="http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=13"/>
		<issued>2008-03-21T09:08:11+01:00</issued>
		<modified>2008-03-21T09:08:11+01:00</modified>
		<slash:comments>0</slash:comments>
		<wfw:comments>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=13#commenti</wfw:comments>
	</entry>
	<entry>
		<title><![CDATA[REVERSING .NET APPLICATION: ATTACCO A GOLIATH .NET OBFUSCATOR]]></title>
		<id>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=12</id>
		<created>2008-03-20T23:59:54+01:00</created>
		<content type="text/html" mode="escaped"><![CDATA[<p><img alt="Goliath .NET Obfuscator :: Crack Request" src="/public/request_crk.jpg" /></p>
<p>I riferimenti completi&nbsp;sono disponibili a questo <a href="http://www.reteam.org/board/showthread.php?t=350&amp;page=40">link</a>&nbsp;</p>
<p>Update 05-apr-2008: un ulteriore aggiornamento (mia risposta al thread) &egrave;&nbsp;disponibile a questo <a href="http://www.reteam.org/board/showthread.php?t=350&amp;page=43">link</a></p>]]></content>
		<link rel="alternate" type="text/html" href="http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=12"/>
		<issued>2008-03-20T23:59:54+01:00</issued>
		<modified>2008-03-20T23:59:54+01:00</modified>
		<slash:comments>0</slash:comments>
		<wfw:comments>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=12#commenti</wfw:comments>
	</entry>
	<entry>
		<title><![CDATA[IDA2CPU]]></title>
		<id>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=11</id>
		<created>2008-02-09T12:01:49+01:00</created>
		<content type="text/html" mode="escaped"><![CDATA[<p>&quot;Goliath .NET CPU Emulator&quot; nato, inizialmente, con il solo scopo di &quot;bloccare&quot; l'analisi dei decompilatori (piattaforma .NET) si sta dimostrando pi&ugrave; potente del previsto! <img alt=": - o" src="/dblog/template/standard/gfx/smile_shockato.gif" /></p>
<p><strong>Un linguaggio nel linguaggio!</strong> Sono state &quot;emulate&quot; la maggior parte delle mnemonic x86 e questo non fa altro che allargare i campi di utilizzo. A quelli ipotizzati di:</p>
<p>- camuffare il vero codice .NET;<br />- generare algoritmi compatti possibili solo in assembly x86;<br />- proteggere il proprio software (da crack, patch, keygen);<br />- ect.</p>
<p>si &egrave; aggiunto quello non meno importante del <strong>B2B</strong> (business-to-business). <img alt="; - )" src="/dblog/template/standard/gfx/smile_occhiolino.gif" /><br />Gli utilizzatori di Goliath .NET CPU Emulator possono &quot;sviluppare conto terzi&quot; e rivendere anche i propri algoritmi e/o librerie. <img alt=": - P" src="/dblog/template/standard/gfx/smile_lingua.gif" /></p>
<p>Alle domande pervenute: &quot;<em>ma come faccio ad utilizzare la libreria se conosco poco o niente il linguaggio x86?</em>&quot; si risponde che per l'apprendimento del linguaggio ci si pu&ograve; aiutare&nbsp;utilizzando&nbsp;i&nbsp;principali debugger/disassembler presenti sul mercato (anche gratuiti). <img alt="; - )" src="/dblog/template/standard/gfx/smile_occhiolino.gif" /></p>
<p>E' possibile far &quot;girare&quot; (chiaramente con le dovute precauzioni) qualsiasi procedura e/o algoritmo generato in codice nativo. Questa possibilit&agrave;, risulta essere, pi&ugrave; potente di un qualsiasi decompilatore.</p>
<p><strong>Al momento NON risultano decompilatori per il codice nativo! <img alt=": - D" src="/dblog/template/standard/gfx/smile_risatona.gif" />&nbsp;...purtroppo la piattaforma .NET NON genera codice nativo! <img alt=": - (" src="/dblog/template/standard/gfx/smile_triste.gif" /></strong></p>
<p>Per capire le potenzialit&agrave; del prodotto,&nbsp;a titolo di esempio, &egrave; stato implementato l'algoritmo&nbsp;<strong>ADLER32</strong> (Hash).</p>
<p>Si ipotizza di NON conoscere l'assembly x86 e si &quot;preleva&quot; il codice da un disassembler (IDA Pro 4.9 Freeware). <img alt="8 - )" src="/dblog/template/standard/gfx/smile_occhiali.gif" />&nbsp;Da questo <a href="http://www.cantelmosoftware.com/download/ida2cpu.pdf">link</a> si pu&ograve; scaricare una semplice brochure esplicativa. E' possibile vedere direttamente il principio di utilizzo da questo altro <a href="http://www.cantelmosoftware.com/video/cpu_adler32.wmv">link</a>.</p>]]></content>
		<link rel="alternate" type="text/html" href="http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=11"/>
		<issued>2008-02-09T12:01:49+01:00</issued>
		<modified>2008-02-09T12:01:49+01:00</modified>
		<slash:comments>2</slash:comments>
		<wfw:comments>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=11#commenti</wfw:comments>
	</entry>
	<entry>
		<title><![CDATA[GOLIATH .NET CPU EMULATOR...IN ACTION!]]></title>
		<id>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=10</id>
		<created>2008-01-25T14:56:53+01:00</created>
		<content type="text/html" mode="escaped"><![CDATA[<p>Proseguono gli intensivi test sulla nuova libreria.&nbsp;Maggiori informazioni si trovano su questo <a href="http://www.cantelmosoftware.com/ita/cpu_emulator.html">link</a>&nbsp;<img alt="; - )" src="/dblog/template/standard/gfx/smile_occhiolino.gif" /></p>
<p>Sono disponibili, in anteprima,&nbsp;i primi tutorial che mettono in evidenza le potenzialit&agrave; del prodotto: </p>
<p>- Calcolo <a href="http://www.cantelmosoftware.com/video/cpu_crc.wmv">CRC</a>&nbsp;(Controllo a Ridondanza Ciclica);<br />- Conversione:&nbsp;<a href="http://www.cantelmosoftware.com/video/cpu_base2.wmv">Encode Base2</a> (da stringa&nbsp;a binario)<br />- Conversione:&nbsp;<a href="http://www.cantelmosoftware.com/video/cpu_decbase2.wmv">Decode Base2</a> (da binario a stringa)</p>
<p>...buona visione a tutti! <img alt=": - )" src="http://www.cantelmosoftware.com/dblog/template/standard/gfx/smile_sorriso.gif" /><br /><br />Aggiornamento del 30-gen-2008:<br /><br />- Conversione:&nbsp;<a href="http://www.cantelmosoftware.com/video/cpu_encbase64.wmv">Encode Base64</a> (da stringa&nbsp;a base64)<br /></p>
<p><br /></p>]]></content>
		<link rel="alternate" type="text/html" href="http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=10"/>
		<issued>2008-01-25T14:56:53+01:00</issued>
		<modified>2008-01-25T14:56:53+01:00</modified>
		<slash:comments>0</slash:comments>
		<wfw:comments>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=10#commenti</wfw:comments>
	</entry>
	<entry>
		<title><![CDATA[GOLIATH .NET CPU EMULATOR E' IN BETA!]]></title>
		<id>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=9</id>
		<created>2008-01-03T09:52:57+01:00</created>
		<content type="text/html" mode="escaped"><![CDATA[<p>Sar&agrave; disponibile a breve una nuova Libreria per .NET realizzata 100% in vb.net <img alt="; - )" src="/dblog/template/standard/gfx/smile_occhiolino.gif" /></p>
<p>E' possibile, in breve, utilizzare una Virtual-CPU che consente di sfruttare le potenzialit&agrave; del linguaggio Assembly x86 direttamente nelle nostre applicazioni .NET <img alt=": - o" src="/dblog/template/standard/gfx/smile_shockato.gif" /><br /><br />Maggiori informazioni sono disponibili a questo <a href="http://www.cantelmosoftware.com/ita/cpu_emulator.html">link</a></p>]]></content>
		<link rel="alternate" type="text/html" href="http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=9"/>
		<issued>2008-01-03T09:52:57+01:00</issued>
		<modified>2008-01-03T09:52:57+01:00</modified>
		<slash:comments>0</slash:comments>
		<wfw:comments>http://www.cantelmosoftware.com/dblog/articolo.asp?articolo=9#commenti</wfw:comments>
	</entry>
</feed>