none
Evitare che mi clonano il sito RRS feed

  • Domanda

  • Salve a tutti,

    dovrei fare un sito per conto di un'altra società, quindi dovrei mettere sui loro server le mie pagine e il mio codebehind logicamente compilato. La mia preoccupazione è che una volta che avrò consegnato il lavoro, quest'altra società possa andare a clonare il tutto su un altro dominio e quindi rivendersi il mio lavoro N volte.

    Che tipo di sistema di protezione mi consigliate contro una tale evenienza?

    Grazie


    Diego Riccardi

    martedì 4 dicembre 2012 15:00

Risposte

  • beh il tema è interessante, non ho mai avuto questa esigenza ma vediamo se ci sono idee.

    Beh diciamo subito che puoi anche compilare fornendo la dll (o le dll) senza fornire il codice sorgente (vb o c#) e già è un buon passo.

    Si può anche usare un obfuscator poichè dalla dll si può anche decompilare e ottenere il sorgente.

    Potresti fare una funzione da inserire in tutte le pagine, magari una pagina che deriva da page e inserire li dentro a random un controllo web service che piloti tu.

    Se il web service risponde in un certo modo, prosegui, altrimenti blocchi tutto.

    Fornisci al 1° cliente un codice da mettere nel appconfig e che richiederai appunto ogni volta. Bisognerebbe legare quel codice anche all'Ip in modo che clonando tutto non funzioni ancora.

    Su quello che il web service restituisce, deve essere qualcosa di criptato e non ripoducibile in modo che il cliente 2° malevolo non simuli il web service.

    Boh io farei così.

    • Proposto come risposta Irina Turcu giovedì 6 dicembre 2012 11:41
    • Contrassegnato come risposta Diego Riccardi venerdì 7 dicembre 2012 09:30
    martedì 4 dicembre 2012 19:50

Tutte le risposte

  • beh il tema è interessante, non ho mai avuto questa esigenza ma vediamo se ci sono idee.

    Beh diciamo subito che puoi anche compilare fornendo la dll (o le dll) senza fornire il codice sorgente (vb o c#) e già è un buon passo.

    Si può anche usare un obfuscator poichè dalla dll si può anche decompilare e ottenere il sorgente.

    Potresti fare una funzione da inserire in tutte le pagine, magari una pagina che deriva da page e inserire li dentro a random un controllo web service che piloti tu.

    Se il web service risponde in un certo modo, prosegui, altrimenti blocchi tutto.

    Fornisci al 1° cliente un codice da mettere nel appconfig e che richiederai appunto ogni volta. Bisognerebbe legare quel codice anche all'Ip in modo che clonando tutto non funzioni ancora.

    Su quello che il web service restituisce, deve essere qualcosa di criptato e non ripoducibile in modo che il cliente 2° malevolo non simuli il web service.

    Boh io farei così.

    • Proposto come risposta Irina Turcu giovedì 6 dicembre 2012 11:41
    • Contrassegnato come risposta Diego Riccardi venerdì 7 dicembre 2012 09:30
    martedì 4 dicembre 2012 19:50
  • Grazie per la risposta.

    E' più o meno quello che avevo pensato io, utilizzando un web service, ma non avevo pensato al codice nel web.config, e ho qualche dubbio: se si copiano tutti i file su un altro dominio comprese dll e web.config (con all'interno il codice), dovrebbe continuare a funzionare anche sul secondo, no?

    Io pensavo di creare un webservice su un mio dominio che dice all'applicazione chiamante se è abilitato oppure no. Quindi quando l'applicazione chiamante invoca il webservice, gli dovrebbe fornire il proprio dominio SENZA leggerlo dal web.config

    Che ne dici?


    Diego Riccardi

    mercoledì 5 dicembre 2012 08:51
  • Si, come ti dicevo è un quesito interessante, e ho provato a buttare giù un idea mentre scrivevo. La tua osservazione è giusta, io infatti aggiungevo di legare anche l'ip del server (o il dominio) oltre al codice.

    Gira e rigira è sempre quello il meccanismo da implementarsi come si vuole.

    I punti deboli di questo meccanismo sono aimè nell'applicazione stessa. Se si parte dall'assunto che decompilando si ottiene il sorgente, puoi scardinare "facilmente" la cosa.

    L'altra falla è per così dire il "man in the middle" , cioè che qualcuno non voglia decomplilare, però vede che il sito apre un canale con qualcos'altro che fornisce una risposta. Tenterà di sostituirsi a lui, fornendo quella risposta, che per ovvi motivi deve sempre cambiare.

    In questo secodo scenario credo ci siano possibilità di intervento, avrei qualche idea.

    Mi sembra però che siano degli stratagemmi, anche quelli proposti da mè, piuttosto artigianali che vanno a cercare di soddisfare un esigenza forse non così usuale e per questo mancante di soluzioni native efficaci.

    Forse però qualche altro utente ha già affrontato il problema con successo. Vediamo

    mercoledì 5 dicembre 2012 11:19