Newsgroup: it.comp.sicurezza.varie
Titolo: [OT]PROTEZIONE e ETICA...

Ciao a tutti.
Vi pongo il mio problema: Ho sviluppato un Software gestionale
abbastanza complesso, frutto del mio lavoro di quasi un anno e ora mi
trovo con un problema di sicurezza.Premesso che il mio programma esige
una connessione per funzionare.
Escludendo protezioni Hardware, sono contrario a queste per motivi di
praticità, l'unica soluzione che ho trovato è stata quella di prendere
il WORM Happy99, studiarlo e costruire un worm simile (non riconosciuto
da AVP, NAV e MCAFEE) che al posto di mandare una mail, a seguito di
un'altra, con l'attachment "infetto" manda una mail solo al mio
indirizzo, a ogni collegamento, con alcuni dati essenziali al
riconoscimento di chi lo sta utilizzando presi dal Registro di Sistema
(nome utente,codice attivazione my software) oltre a dati informativi
sul PC : num.seriale BIOS e Num seriale hda.
Ora, le modifiche che fa Happy99 al wsock sono tali da pregiudicarne il
funzionamento e la sicurezza della trasmissione?
è facile, secondo  qualcuno che ha esperienza, eliminare questa
protezione, considerando il fatto che il mio eseguibile controlla che il
wsock sia infetto prima di continuare il caricamento?
Più etico : è giusto che io raccolga questi dati per controllare che il
mio software finisca solo nelle mani di chi lo ha acquistato?
O avete qualche idea che mi premetta una protezione più efficace ?
Ringrazio
Saluti


Dewl tipo il programma dà all'utente una stringa, quello mi chiama e me la dice, io la elaboro e gliene
dico un'altra che viene analizzata dal programma e si installa ?
anche, non ci avevo pensato........
Evviva i tribunali........
Grazie
CIAO

mio software finisca solo nelle mani di chi lo ha acquistato?
uhm... secondo me potresti essere *denunciato*.
Non sei il primo ad avere quest'idea folle comunque:  Alcuni  mesi  fa
l'ha  messa in pratica anche Holger Kruse, programmatore di Miami, uno
stack TPC/iP per AMiGA... e' stato linciato dalla comunita'.
Si fece anche un gran parlare delle possibili  conseguenze  penali  di
un'azione   tanto   sconsiderata,   ma  sinceramente  non  ricordo  le
conclusioni.
In ogni caso, prova a metterti nei panni delle persone che  installano
la  tua  backdoor:  ci  sono  tutti  gli  elementi  per  accusarti  di
intrusione a scopo di furto... o sbaglio?
Saluti ;)
GHERdO, *AMiGA* Supporter Since 1988.

 meta' programma, richiamata a ogni avvio, che "estrae" alcune stringhe
Salvato tutto, è bellissima.
Ciao,
Valerio

mio software finisca solo nelle mani di chi lo ha acquistato?
Caro Alessandro, quello che ti appresti a fare, a mio parere, può fruttarti parecchie denunce..
Innanzitutto, nel tuo programma diffondi qualcosa che modifica il sistema operativo ad insaputa
dell'utente, inviando mail con dati personali (e protetti dalla legge sulla privacy) e numeri di
serie.. Non credo sia legale, nè questo tipo di protezione, nè farti inviare, ad insaputa del
cliente, i suoi dati personali, i suoi numeri di serie e, non ultimo, magari anche la sua email....
Se vuoi una protezione, devi orientarmi sui meccanismi classici di generazione chiavi, quelli cioè
dove viene generata una chiave alfanumerica (random o basata sui dati utente, tipo Winzip e molti
altri), che richiede un'altra chiave di sblocco. Ovviamente la chiave di sblocco la fornirai te, ed
allora potrai tenere una lista degli utenti registrati.
Questo non ti cautela dal problema delle copie 'autorizzate' (nel senso che io compro il pacchetto,
poi do sw e chiavi al mio amico, che si installa il tutto), però ti cautela dal tribunale...
--
Tex's new e-Mail: 
cybe...@technologist.com
====================================================
 "La Statistica non pone limiti alla Sfiga."
====================================================

O avete qualche idea che mi premetta una protezione più efficace ?
Potresti inserire una funzione che per sicurezza si chiami Protector a
meta' programma, richiamata a ogni avvio, che "estrae" alcune stringhe
da un file criptato che fornisci tu all'atto della registrazione. Come
demo, fornisci un file criptato con i dati di una azienda di fantasia,
tipo "Canistracci Oil", e quelle stringhe vengono usate nelle stampe e
nel programma. In più se l'azienda è la Canistracci Oil dopo 20 minuti
di funzionamento il programma termina.
A questo punto, io ti compro il programma, con il MIO nome, e lo posso
anche dare ad un'altra azienda... solo che o fatturano col mio nome (e
questo è illegale, e non conviene neanche a me!) oppure usano il prog.
soltanto per brevi periodi, come "demo".
Ma il controllo sulla correttezza del file criptato lo farei in almeno
tre modi:
a) Ad ogni avvio
b) Ad ogni stampa
c) Usando una funzione diversa, identica a Protector... pero' chiamata
   Check_IVA. Questa funzione viene chiamata solo se un numero casuale
   da 1 a 666 è esattamente uguale a 42.
Cosi', se anche qualcuno ti vuole sbullonare il programma, probabilità
vuole che trovi la funzione Protector. La elimina, e fa una dozzina di
prove. Statistica vuole che il programma gli giri perfettamente.
Quando la funzione Check_IVA scatta, e vede che la protezione non c'è,
sa non solo che il programma non è regolare (quello lo faceva infatti,
tra le altre cose, Protector), ma anche che Protector è stato tolto di
mezzo. A quel punto è legittimo marcare i files di dati con un flag di
sicurezza, che fa sì che il programma non li apra più. Questo è utile,
perché se a un tuo cliente gli portano via gli archivi e li aprono con
un'altra copia del programma, gli archivi verrebbero bloccati. Non che
sia una gran sicurezza.
A quel punto il possessore del programma si rivolge al cracker che gli
ha fornito il programma omicida e gli leva la pelle a strisce.
Se poi metti un messaggio carogna come "Routine di protezione primaria
non operativa - routine di protezione terziaria intatta. La routine di
protezione secondaria ha disattivato l'accesso ai dati. Rivolgersi..."
il cracker si sviterà la testa, anche dopo aver trovato Check_IVA, dal
momento che cercando la TERZA routine non la trova (infatti non c'è) e
non ha idea di cosa possa fare se si accorge che le prime due routines
sono state cancellate :-)
Barbara


ICQ #34602650

Quando la funzione Check_IVA scatta, e vede che la protezione non c'è,
...no, la protezione c'è sempre e lascia sempre "passare" il flusso
del programma... Ergo: Check_IVA non si può "accorgere" che
"Protector" è andato a farsi friggere
     -= Wolf =-
     SPP Member
www.spippolatori.com

anche, non ci avevo pensato........
Si, qualcosa del genere o, se vuoi qualcosa di più efficace, utilizzi uno dei metodi suggeriti negli
altri post. Io, se fossi in te, prenderei in considerazione alcune cose, nel progettare un metodo di
protezione:
- Il prezzo a cui venderai il programma;
- Quanto tempo dovrai perdere ad implementare la sicurezza, sapendo che comunque c'è sempre il
rischio che qualcuno lo cracchi.
Generalmente, se il programma non ha un prezzo eccessivo, e tu utilizzi la tecnica del 'Chiamami,
registro i tuoi dati fiscali (come acquirente del mio prodotto) ed io ti do la chiave', la maggior
parte dei clienti è poi restia a fornire tale chiave ad altri.. Se tu lo dovessi scoprire, avresti
il nome di chi ha copiato e, dalla chiave, anche il nome di chi ha fornito il codice, e vai di
azione legale (sempre per il discorso 'Evviva i Tribunali').
Insomma, sicuramente non ti protegge molto, però ad implementarla ci metti relativamente poco (così
puoi cominciare a fare altri programmi!)
Ciao


"Protector" è andato a farsi friggere
Come no? Se il controllo Check_IVA dice "il programma e' irregolare", e
una variabile di controllo di Protector dice "il programma e' regolare"
... e' evidente che Protector e' stato accecato.
Oh, scusate per il post precedente. Come *%$&* si setta Outlook?
Leonardo/Barbara {'Camestres' non ci avrebbe creduto nessuno}
".signature": bad command or file name

Oh, scusate per il post precedente. Come *%$&* si setta Outlook?
Eheh, Guardafuori Svelto ha fatto un'altra vittima =))


a questo punto cosa fa?
E' proprio quello che ti frega. Check_IVA ripete i controlli di Protector(),
solo che lo fa solo una volta ogni molte, per cui non l'hai vista attivarsi,
e non l'hai smadonnata.
Percio' i controlli ripetuti da Check_IVA gli dicono che il programma "sano"
dovrebbe ritornare "Programma Non Registrato". Se Protector() da' "Programma
_REGISTRATO_", allora Check_IVA() sa che il programma e' stato manomesso.
Leonardo



ah, tutto chiaro, allora... Avevo frainteso credendo che fosse un
controllo in serie anzichè "parallelo"
Saluti
