(s-) protezione del software

Metodi di protezione per applicazioni stand alone, client/server, web oriented

Moderatore: Moderatori

stregatto
Messaggi: 9700
Iscritto il: lunedì 1 dicembre 2003, 1:00
Località: Roma
Contatta:

Messaggio da stregatto » martedì 14 marzo 2006, 16:40

hmmm…

allora, provo a ricapitolare:

baso la sicurezza delle mie soluzioni su un codice ricavato cifrando una serie di caratteri ricavati dai dati dell'utente (variabili) e una serie arbitraria di caratteri (fissa).
masticando un poco di teoria matematica è possibile una decrittazione della frase fissa (senza la quale non è possibile ricostruire il codice di attivazione al mutare dei dati utente), a patto di avere sufficiente materiale da confrontare.
questo vuol dire che se si hanno uno o due codici la vedo difficile; possibile ma parecchio difficile (e lunga), in quanto non è derivata da qualche cosa, ma arbitraria. e la uso per un software che vendo a 900 euro.
dovendo proteggere cose di maggior valore, posso studiare protezioni migliori…

le altre due falle nella sicurezza sono:
a) gli script di inizio e validazioni: basati su variabili non lasciano dati residui alla fine dello script; non essendo debuggabili anche se eseguiti da un altro file non lascerebbero residui… l'unica possibilità è che con il visualizzatore dati qualcuno indovinasse il nome arbitrario da me assegnato alla variabile ( che ti assicuro è LUNGO e non ovvio)… possibile ma molto improbabile.

b) eventuali dati necessarii all'aprertura:
vedi sopra. non esiste nessun dato relativo all'apertura che risieda in qualche campo se non gli elementi noti (dati e codice utente).

ovviamente la sicurezza assoluta non esiste, ma partendo da questo presupposto, dove vedi falle?

.g.

book
Messaggi: 703
Iscritto il: lunedì 5 gennaio 2004, 1:00

Messaggio da book » giovedì 16 marzo 2006, 13:33

ciao stregatto.
“noto che siamo stati letti 120 volte... un buon inizio... pensa cosa potrebbe succedere se io e te (se ne hai voglia) mettiamo insieme le nostre esperienze e incominciamo a dare suggerimenti sul come proteggere meglio le applicazioni. (intendo quei suggerimenti che non si trovano sui manuali)”

allora provo a ricapitolare io!

La sicurezza dei file deve essere fatta con le password di accesso agli stessi!!!
e deve essere del tipo “conosci la password?” SI= entra NO= ciao, torna quando conosci la password

Fintanto che FM non risolve il problema che ha con le password di accesso non si possono proteggere i file adeguatamente per due motivi essenziali!!!
1) azioni ostili a file aperti non vengono riconosciute tali
2) possono essere utilizzate risorse proprie del file

Primo esempio:
supponiamo di avere d’avanti un’autovettura con gli sportelli chiusi a chiave e proviamo ad azionare la maniglia di apertura di uno sportello. il risultato è: “azione ostile operazione negata”.
supponiamo di avere la stessa autovettura nelle stesse condizioni ma io e te siamo seduti dentro l’auto
ed azioniamo la maniglia interna di apertura di uno sportello. il risultato è: “azione lecita operazione consentita”.
eppure abbiamo eseguito la stessa azione!!!.
non dimentichiamoci mai che i computer sono stupidi...
... e dal momento che gli hanno insegnato che i nemici sono fuori mentre gli amici sono dentro... si comportano di conseguenza...

secondo esempio:
io non ho mai sentito dire che un ladro si sia messo a spingere l’auto che sta rubando per metterla in moto.
a prescindere dalle protezioni antifurto, una volta superate le stesse, il ladro d’auto utilizza le risorse presenti (il sistema di avviamento) di cui conosce bene l’uso e le potenzialità.
...dove vedi falle?
ti ho già risposto prima ancora che tu mi facessi la domanda.
è come nella vita c’è chi vede di più e c’è chi vede di meno.

pensa che tanto tempo fa per gioco con i miei ragazzi ho utilizzato i primi 4 caratteri di un campo, i primi 11 di un altro campo e creato un codice alfanumerico di 40 caratteri.

Non ci crederai un 486 è riuscito a decriptarlo in circa 10 giorni.

da quel giorno ho usato come codice segreto questa stringa: “1”
la prima frase è la chiave di lettura delle altre tre leggila così: nelle seguenti frasi vedi oltre quello che si legge o che sembra di essere detto.

la seconda frase è la risposta alla tua domanda leggila così: ...ho utilizzato i primi 4 caratteri di un campo, i primi 11 di un altro campo e creato un codice alfanumerico di 40 caratteri.
è un po’ più chiara, riconosci qualcosa?

la terza frase leggila così: non ci vogliono grandi mezzi per raggiungere lo scopo.
io non ho mai sentito dire di un ladro d’auto che si sia messo a decriptare i codici dell’antifurto... di solito lo saltano a piè pari.

la quarta frase è la morale leggila così: un buon antifurto va bene ma poi bisogna fare in modo che il ladro non possa utilizzare la batteria e sia costretto a spingere!!!

Aggiungo di più: sei lo sviluppatore di FM più preparato che io abbia mai incontrato nella mia vita.

Complimenti stregatto, sono complimenti sinceri.

Stai tranquillo non ci sono falle, c’è solo un piccolo buchino quasi impossibile da vedere.

Continua così, con il tuo ottimo metodo di sviluppo e questi due suggerimenti sei coperto al 99,9 %.
1) rinomina tutti gli script celati con dei numeri e non con cosa essi fanno –2) rinomina i campi “sensibili” con nomi di fantasia.
diventa più difficile sviluppare ma i vantaggi in termini di sicurezza sono notevoli.
saluti.

p.s. per Admin
se mi dai qualche stelletta in più sotto il nickname la prossima volta svelo altri due modi seri per proteggere i database FM. :wink:

stregatto
Messaggi: 9700
Iscritto il: lunedì 1 dicembre 2003, 1:00
Località: Roma
Contatta:

Messaggio da stregatto » giovedì 16 marzo 2006, 15:00

noto che siamo stati letti 120 volte... un buon inizio... pensa cosa potrebbe succedere se io e te (se ne hai voglia) mettiamo insieme le nostre esperienze e incominciamo a dare suggerimenti sul come proteggere meglio le applicazioni. (intendo quei suggerimenti che non si trovano sui manuali)
infatti… non male. sposami. ;)
spero che anche qualcun altro si aggiunga, magari con qualche aspetto non preso in considerazione… nell'interesse del tema e della discussione…
La sicurezza dei file deve essere fatta con le password di accesso agli stessi!!!
e deve essere del tipo “conosci la password?” SI= entra NO= ciao, torna quando conosci la password

Fintanto che FM non risolve il problema che ha con le password di accesso non si possono proteggere i file adeguatamente per due motivi essenziali!!!
1) azioni ostili a file aperti non vengono riconosciute tali
2) possono essere utilizzate risorse proprie del file
come assunto teorico non fa una piega. in linea di massima sono d'accordo, anche se un corretto uso delle risorse riduce DI MOLTO il pericolo. l'idea è che usando un certo tipo di scripting puoi vedere alcuni dati, ma NON gli algoritmi, usando le variabili.
<snippone esempi>
ok. non ho mai detto il contrario, anche perché forse solo PGP è abbastanza sicuro ( e non è detto, adesso che iniziano a essere workinprogress i primi computer quantici).
quello che dico io è che ci sono vari modi (che non ho elencato per questioni di brevità e che probabilmente conosci bene quanto me se non meglio) per rendere non troppo usabili i dati ricavati: come dici tu per "costringere il ladro a spingere".
Complimenti stregatto, sono complimenti sinceri.
arrossisco… :oops: :oops:

Stai tranquillo non ci sono falle, c’è solo un piccolo buchino quasi impossibile da vedere.

Continua così, con il tuo ottimo metodo di sviluppo e questi due suggerimenti sei coperto al 99,9 %.
1) rinomina tutti gli script celati con dei numeri e non con cosa essi fanno –2) rinomina i campi “sensibili” con nomi di fantasia.
diventa più difficile sviluppare ma i vantaggi in termini di sicurezza sono notevoli.
saluti.
1) perché, secondo te cosa ho fatto? in tutti i 700epassa script della mia soluzione non ce n'è uno che abbia attinenza con la validazione… ;) )
2) QUALI campi sensibili? funziona tutto con le variabili, e non scrive nulla da nessuna parte, se non in RAM… e ho una trentina di nomi di variabili - tutti lunghi alfanumerici casuali - che uso automaticamente a rotazione, a seconda di alcuni parametri legati al timing (hai presente le ore dispari dei giorni pari? ;) )

.g.

raybaudi
Messaggi: 3616
Iscritto il: sabato 7 febbraio 2004, 1:00
Località: Roma
Contatta:

Messaggio da raybaudi » giovedì 16 marzo 2006, 18:28

stregatto ha scritto: spero che anche qualcun altro si aggiunga, magari con qualche aspetto non preso in considerazione… nell'interesse del tema e della discussione…
A me pare che l'argomento l'abbiate "teoricamente" sviscerato bene...

Sarebbe interessante passare alla pratica...

Intendo dire che stregatto crei un apposito file e che qualcuno del Forum cerchi di aprirlo (craccarlo), scrivendo il suo nome in un formato scheda.

Sarebbe un'interessante sfida e, chissà, Admin potrebbe aggiungere qualche stelletta al vincitore. (che comunque non credo che ci sarà...confido in Giulio :wink: )
Raybaudi FMP 12 Adv. Windows XP SP3

book
Messaggi: 703
Iscritto il: lunedì 5 gennaio 2004, 1:00

perchè no

Messaggio da book » venerdì 17 marzo 2006, 9:22

ciao raybaudi,

le possibilità di craccare un file creato apposta per non farsi craccare sono nulle e lo sappiamo tutti.

per le applicazioni le cose sono diverse!!!

bene potremmo provare ad attivare la demo di stregatto quella che distribuisce dal suo sito se lui ci autorizza.

se siete daccordo facciamo così: almeno dieci partecipanti, il primo che trova il codice di attivazione della demo si prende 5 stellette.

saluti

stregatto
Messaggi: 9700
Iscritto il: lunedì 1 dicembre 2003, 1:00
Località: Roma
Contatta:

Messaggio da stregatto » venerdì 17 marzo 2006, 10:03

faccio una controproposta:
la demo sul sito ha circa 6 mesi ed è limitata in altri sensi.
dato che sto finendo di scrivere una serie di soluzioni con il medoto descritto, la settimana prossima come ho un attimo di tempo posto un file, con:
utenti demo, e 1 codice di attivazione.
la sfida è di trovare un altro codice o attivarlo ugualmente (ovvero riuscire a fare accettare al programma dati utente non corrispondenti al codice).

ok?

;)

.g.

book
Messaggi: 703
Iscritto il: lunedì 5 gennaio 2004, 1:00

Messaggio da book » sabato 18 marzo 2006, 9:09

Negativo stregatto.

Le sfide si giocano ad armi pari.

Non è nella correttezza della sfida utilizzare file creati o modificati dopo i miei suggerimenti.

Io non posso giocare da una parte e contemporaneamente dall’altra del campo!!!.

Se la tua demo non era sufficientemente protetta non avresti dovuto distribuirla!

Mi chiedo: è mai possibile che sei il solo a non capire che la pera è caduta?

Tu, i tuoi script, le tue variabili ed il timing avete solo fatto una magra figura.

Pensa che se ne accorto anche l’orologio interno del mio computer,
una sera mi disse: “chi è quel tizio che calcola le ore dispari dei giorni pari basandosi sul canto del gallo perché io qui dentro non ho più capito se è giorno o notte”

GAME OVER

Le verifiche (se richieste) saranno postate esclusivamente ad Admin

Un saluto affettuoso a tutti gli utenti del forum.

Pirata
Messaggi: 1197
Iscritto il: domenica 12 marzo 2006, 1:00
Versione FileMaker: 18
Sistema operativo: Win10
Località: Reggio Calabria (RC)

Messaggio da Pirata » domenica 19 marzo 2006, 1:09

Cacchio riccardolibro sei proprio una peste!

Dimmi un po': cosa usi come linguaggio di programmazione? Mi fai credere qualcosa di meglio di FM??
Sarei curioso di capire le "falle" di FM in senso di sicurezza.

Ti chiedo: siccome avrei anch'io un progetto da proteggere, non è che mi potevi dare qualche suggerimento un tema di tecniche di sicurezza?

Grazie in anticipo
Antonio

adm_fmpro
Amministratore
Messaggi: 575
Iscritto il: venerdì 28 marzo 2003, 1:00
Versione FileMaker: 15
Sistema operativo: oSX
Contatta:

Sicurezza

Messaggio da adm_fmpro » domenica 19 marzo 2006, 12:40

Premesso che le competizioni sono ben accette in questo sito. Non per niente è stata creata un'area apposita per proporre le competizioni. Le sfide non sono mai a due persone ma aperte a tutti gli utenti di fmpro.it . Quello che però preferirei, per l'interesse di tutti gli utenti è:

1. aprire una competizione nuova, anche con FileMaker Mobile 8 come premio, anziché stellette (quelle si guadagnano postando tanti messaggi utili);

2. Verificare soluzioni di protezione dei database con tanto di file, tutorial del sistema di protezione, e soluzione di apertura file.

3. Mettere a disposizione di tutti gli utenti i files ricevuti dai competitori, come è stato già fatto per le altre competizioni.

Poi, chiudo con il dire, che conoscendo l'utente STREGATTO, non vedo la sua come provocazione o una sfida a due, ma come uno stimolo a scoprire di meglio, anche con il supporto di RICCARDOLIBRO.

Attendo di vedere gli sviluppi su questo tema. Come potete vedere dal numero di letture è un tema molto interessante per gli sviluppatori di FileMaker.

ADMIN

book
Messaggi: 703
Iscritto il: lunedì 5 gennaio 2004, 1:00

Messaggio da book » lunedì 20 marzo 2006, 9:38

Cari ragazzi,
mi sono avvicinato a questo sito e questo forum con l’umiltà di chi, consapevole di non essere il primo della classe, cerca, dialogando e confrontando esperienze, di migliorare le proprie ed altrui conoscenze.

“Mastico” informatica da quando si usava il linguaggio macchina ed adesso ho tanti capelli bianchi (anche troppi purtroppo)

vi faccio notare alcune cose.

ho fatto i miei complimenti a stregatto ed in cambio ho ottenuto ironia.

gli ho suggerito un metodo di protezione della sua applicazione che, se adottato, porta i tempi di crac da 15 minuti ad oltre sei mesi e in cambio ho ottenuto una sfida.

ora vi chiedo: è questo il vostro mondo? è così che lo fate funzionare?

ai miei tempi i complimenti, da parte di chi ne potrebbe sapere un pochino in più, venivano sempre accettati ed ai buoni suggerimenti si rispondeva, quanto meno, con un grazie.

purtroppo,
io non riesco ad adeguarmi al vostro modo di concepire il mondo e per questo motivo chiudiamola qua... ed ognuno si arrangi come meglio crede.

per Antonio il pirata, che ammiro perchè è stato l’unico ad avere il coraggio di tirar fuori la testa dalla rete, la porta è ancora aperta, questo è il mio indirizzo e-mail rlibro@tele2.it postami la tua soluzione e la farò diventare inattaccabile con l’ormai noto a tutti codice segreto “1”.

saluti a tutti.

Rispondi