Pagina 1 di 6 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 54
  1. #1

    [PILLOLA] proteggere gli swf da uso indesiderato

    Salve ragazzi...

    vi illustro un PREGEVOLISSIMO sistema che ho messo apunto per evitare che i programmi che realizzo in flash (con magari qualche pagina asp e php), vengano spostati sua altri server e servano ad altri siti web, e un trucco semplicissimo ed efficace che vi permette in qualunque momento, senza appesantire il filmato di scegliere per quali siti web disabilitare il funzionamento del vostro swf.

    Si fa così:

    create un mc vuoto (nome che volete, anche l'istanza non è importante, vi consiglio nomi anonimi, in caso qualcuno visualizzi gli script con decompilatori) e assicuratevi che sia presente sullo stage per ogni scena e in ogni fotogramma (riservategli un layer).

    associategli questo script:


    onClipEvent (load) {
    fine = _root._url.indexOf("/", 7);
    link = _root._url.substring(7, fine);
    this.casuale = Math.round(Math.random()*9999999999);
    loadVariables("http://www.miosito.com/sicurezza/link.txt?"+casuale, this);
    }
    onClipEvent (data) {
    for (i=1; i<=100; i++) {
    nome = eval("stop"+i);
    if (nome == link) {
    // azione da svolgere //
    _root.gotoAndStop("bloccato");
    }
    }
    }

    "http://www.miosito.com" va sostituito con il link del vostro sito web (ricordatevi che ci va http://)

    Sul vostro sito, nella cartella "sicurezza" (che dovete creare), ci mettete il file link.txt compilato con i link (stavolta senza http://) dei siti web su cui volete che il vostro swf NON funzioni, in questo modo:

    FILE "link.txt" nella directory "sicurezza"

    stop1=www.sitobloccato.com&stop2=www.altrosito.it& stop3= ecc...


    Nello script dopo la voce // azione da svolgere //, dovete mettere quello che volete che succeda se il sito su cui è depositato l'swf è uno di quelli da voi bloccati. Nel mio caso lo facevo andare al fotogramma "bloccato", un fotogramma infondo al filmato con la scritta "sistema bloccato"; fotogramma che non è altrimenti raggiungibile in una eseguzione normale (autorizzata)... Ma potete sbizzarirvi e inventare la controazione che volete.

    FUNZIONAMENTO GARANTITO
    Questo script non danneggia in alcun modo il sito su cui risiede l'swf, e non crea alcuna dipendenza dalla vostra autorizazione, difatti, anche se in un futuro il vostro sito (con i vostri link da disattivare) dovesse sparire, o essere down il server, il mc si limiterà, non trovando i link, a non eseguire alcuna azione... senza interferire in alcun modo sul normale funzionamento dell'swf.
    Se poi un giorno scoprite che qualcuno sta facendo il furbo... zak, inserite il suo link e l'swf non va più :gren:

    Il problema è che in questo modo il fraudolento lo dovete sgamare voi e poi bloccarlo, pertanto:

    [VARIANTE PROPOSTA] AMPLIAMENTO DEL SISTEMA:
    Con una piccola modifica al sistema appena visto possiamo fare in modo che durante il corso di alcuni mesi (chiamati "mesi di monitoraggio", da noi indicati), ci venga inviato per e-mail (e senza che l'utente se ne accorga) l'indirizzo web su cui sta girando il nostro swf. Per far questo dobbiamo appoggiarci un po' a php, ma è semplicissimo

    - Modifiche:
    1) la directori "sicurezza" precedentemente creata deve avere il permesso di eseguire php, se non ce l'ha dobbiamo spostarla in una che ce l'ha... mettiamo che tale cartella sia "public"; il nostro link per i file di sicurezza sarà "http://www.miosito.com/public/sicurezza", ed è li che dovremmo spostare il file link.txt che contiene i link bloccatti

    2) Nella directory www.miosito.com/public/sicurezza mettiamo il file sicur.php così composto:

    <?
    $adminaddress = "miaemail@miosito.com";
    $titolo = "ATTIVITÀ RILEVATA";
    $intestazioni = "MIME-Version: 1.0\r\n";
    $intestazioni .= "Content-type: text/html; charset=iso-8859-1\r\n";
    $intestazioni .= "FROM: Sicurezza SWF";
    $messaggio = "È stato rilevato l'utilizzo di un swf da Voi protetto al seguente link: ".$messaggio1." il valore della variabile che può bloccarlo è: ".$messaggio2;
    mail($adminaddress, $titolo, $messaggio, $intestazioni);

    ?>

    (è davvero semplicissimo, ricordatevi di mettere la vostra mail in $adminaddress)

    3)il nuovo script da apporre sopra il nostro mc di controllo (presente in tutto il filmato) diventa:

    onClipEvent (load) {
    fine = _root._url.indexOf("/", 7);
    link = _root._url.substring(7, fine);
    fine2 = _root._url.lastIndexOf(".swf");
    link_completo = _root._url.substring(0, fine2)+".swf";
    data_oggi = new Date();
    mese_di_controllo = data_oggi.getMonth();
    casuale = Math.round(Math.random()*9999999999);
    loadVariables("http://www.miosito.com/public/sicurezza/link.txt?"+casuale, this);
    }
    onClipEvent (data) {
    for (i=1; i<=100; i++) {
    nome = eval("stop"+i);
    if (nome == link) {
    _root.gotoAndStop("bloccato");
    } else {
    bloccato = "no";
    }
    }
    if (bloccato == "no") {
    if (mese_di_controllo == 11 || mese_di_controllo == 3) {
    this.messaggio1 = link_completo;
    this.messaggio2 = link;
    loadVariablesNum("http://www.miosito.com/public/sicurezza/sicur.php", 0, "POST");
    }
    }
    }



    Niente di impossibile, ma vediamone i dettagli:

    Se il sistema rileva che il sito è nella lista nera dei siti bloccati, esegue l'azione di blocco.
    Se invece rileva che l'swf sta girando su un sito non bloccato (non sappiamo ancora se autorizzato o no), verifica in che mese siamo, se il mese attuale corrisponde al mese che noi abbiamo impostato per effettuare un controllo, allora invia alla pagina php del nostro sito le variabili dell'indirizzo completo dove risiede l'swf, e l'indirizzo parziale (senza "http://") da porre nel nostro file link.txt qualora volessimo bloccarlo. PHP a sua volta (zitto zitto) ci invia un email.
    In questo modo se scopriamo che l'utente è una persona a cui non abbiamo concesso l'uso del nostro swf possiamo subito bloccarlo.

    nel ciclo "if (mese_di_controllo == 11 || mese_di_controllo == 3)"
    potete mettere i mesi in cui il sistema deve effettuare il controllo (ricordatevi che il mese 0 è gennaio, 1 febbraio ecc...). Io non esagererei, senò ogni volta che viene eseguito l'swf ci arriva un'email al giorno. Ho messo Dicembre e Aprile, che sono i mesi a più possibile attività (la gente prima di partire per le ferie ama sistemare il proprio sito web)

    È LEGALE:
    Se non modificate troppo il php e la raccolta di variabili, questo sitema non viola in alcun modo la legge sulla privacy, perchè provvede solo a segnalarci il link su cui il nostro swf sta girando.
    Raccogliere un indirizzo web non può essere considerato "raccolta di informazioni personali su un individuo" in quanto i link di indirizzi web sono di dominio publico.

    Detto questo possiamo ora creare dei lavori di programmazione flash, che monitorizzano la loro posizione ogni tot mesi e ci segnalano se è il caso o meno di bloccarli, il tutto senza appesantire il filmato e senza creare dipendenze all'utente.

    Buon lavoro :gren:

  2. #2
    Ciao,
    intanto grazie per la Pillola.

    Tuttavia alcune domande xchè l'argomento non mi è chiaro.

    Spostare gli swf su altri siti:
    da parte di chi ? stiamo parlando di Pirateria? Ovvero utilizzo di swf senza il nostro permesso?

    Se si, i decompilatori leggono tranquillamente lo script segnalato

    il File Link.txt viene caricato nella Temporary Internet File ??

    Se la risposta è a queste domande è si, non credo impieghino molto
    ad utilizzare i nostri swf.

    Preciso: queste domande le faccio perchè non mi è molto chiaro il presupposto iniziale

    vi illustro un PREGEVOLISSIMO sistema che ho messo apunto per evitare che i programmi che realizzo in flash (con magari qualche pagina asp e php), vengano spostati sua altri server e servano ad altri siti web,
    Grazie e ciao

  3. #3
    Originariamente inviato da rempox
    Se si, i decompilatori leggono tranquillamente lo script segnalato

    il File Link.txt viene caricato nella Temporary Internet File ??
    - vero (problema)

    - falso


    cmq anch'io avevo fatto uno script simile, ed è cmq utilissimo nel caso di clienti classici (ovvero non smanettoni) che però hanno la tendenza a non pagare
    "La consapevolezza di Case suddivisa come perle di mercurio. La sua visione era sferica, come se una singola retina rivestisse la superficie interna di un globo che conteneva tutte le cose, se tutte le cose si potevano contare." —Neuromante, William Gibson (1984)

  4. #4
    è vero, i decompilatori leggono perfettamente lo script, ma non sono sicuro che riescano ad alterarlo, inoltre lo script non contiene alcuna password, ma solo le istruzioni che devono essere eseguite...

    se si ha la correttezza di non commentare lo script e di dare al mc di sicurezza un nome anonimo su un layer anonimo, nella moltitudine di script presenti in un buon swf (che merita protezione), la probabili che quello script venga individuato e modificato e praticamente nulla, anche perchè l'utente dovrebbe essere a conoscenza del mc spia installato (e lui è perfettamente anonimo e silenzioso), e se anche sapesse che c'è e riuscisse pure a procurarsi un decompilatore, dovrebbe prima di tutto capire il funzionamento dello script... le probabilità di riuscita si abbassano ulteriormente (ma i decompilatori poi possono anche modificare gli script? io non ne ho mai trovati)

    per il file txt non viene caricato nella Temp, viene solo letto da flash. così come il file php che ogni "mese di controllo" monitorizza la posizione dell'swf.

    Questo script l'ho realizzato per proteggere un swf che gestisce e crea (inviando dati a pagine asp e php), un intero sito, generando il menu che lo naviga e le pagine da cui è costituito... l'swf di per se può essere spostato ovunque e utilizzato per generare altri siti simili....

    una protezione mi occorreva per forza... se trovate dei bag o dei suggerimenti per perfezionarla fatevi avanti

  5. #5
    Grazie per la spiegazione, ora mi è più chiaro.

  6. #6
    basta importare il file in questione e fare un override delle azioni

  7. #7
    Cosa intendi, guarda che non è così facile...
    Puoi spiegarmi meglio?

  8. #8
    Se intendi importarlo in flash...importando l'swf le azioni vengono perse.
    Leggendole con un decompilatore non puoi comunque sovrascriverle.

    L'unico problema che ci vedo è che l'swf messo su un dominio esterno non credo potrebbe leggere il tuo .txt e .php, quindi non so quanto possa funzionare la parte relativa ai 'siti bloccati' o dell'invio della mail.

  9. #9
    1) Appunto, importandolo in flash le azzioni vanno perse
    2) con decompilatori vedi il codice ma non puoi sovrascriverlo, e prima di tutto devi sapere cosa andare a cercare

    3)l'utente non si accorge della presenza del mc spia
    4) per quanto riguarda i file txt e php quelli flash li va a leggere sul mio server, del mio sito, e in qualunque sito si trovi l'swf comunque chiede conferma ai file presenti sul mio dominio (se non li trova non succede niente, se li trova blocca quelli indicati e monitorizza la posizione dell'swf ogni tot mesi). Non vedo perchè su un dominio esterno non dovrebbe comunque leggerli
    5)In fine il codice

    casuale = Math.round(Math.random()*9999999999);
    loadVariables("http://www.miosito.com/public/sicurezza/link.txt?"+casuale, this);
    }

    impedisce che il file txt venga archiviato nella temp e ogni volta ricerca solo quello presente sul mio dominio...


    Dov'è il problema? Spiegatevi meglio perchè a me sembra molto efficace..

    L'unico modo per raggirare la cosa è usare l'swf in remoto senza connesione internet attiva... ma a quel punto non mi preme molto se qualcuno lo visualizza in privato sul suo PC

  10. #10
    Originariamente inviato da fuoriluogo
    1) Appunto, importandolo in flash le azzioni vanno perse
    2) con decompilatori vedi il codice ma non puoi sovrascriverlo, e prima di tutto devi sapere cosa andare a cercare
    3)l'utente non si accorge della presenza del mc spia


    Fin qui siamo d'accordo


    4) per quanto riguarda i file txt e php quelli flash li va a leggere sul mio server, del mio sito, e in qualunque sito si trovi l'swf comunque chiede conferma ai file presenti sul mio dominio (se non li trova non succede niente, se li trova blocca quelli indicati e monitorizza la posizione dell'swf ogni tot mesi). Non vedo perchè su un dominio esterno non dovrebbe comunque leggerli

    Perchè nel Flash player 6> è stato impedito il caricamento di dati da domini (o server, non sono sicuro) esterni al proprio.
    Quindi se io mettessi il tuo .swf sul sito www.pincopallino.it sul mio server, non leggerebbe i file presenti su www.tuosito.it sul tuo server.


    Dov'è il problema? Spiegatevi meglio perchè a me sembra molto efficace..

    Che la parte del .txt e del .php, che è molto carina e utile, perde praticamente l'utilità date le limitazioni di Flash a caricare dati da domini esterni.
    Praticamente rimane la parte relativa all'url.

    Se vuoi mandarmi il file .swf faccio una prova e ti dico subito se la limitazione di sicurezza riguardo al caricamento di domini da dati esterni influisce, ma temo di si

    Per maggiori info puoi vedere questa pagina: http://www.macromedia.com/support/fl...ty_sandbox.htm

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.