1. Halo Guest, pastikan Anda selalu menaati peraturan forum sebelum mengirimkan post atau thread baru.

[penting!!!] gunakan script ini untuk mencegah header iframe inject!!!

Discussion in 'Pemrograman Web' started by dadada, May 27, 2015.

  1. dadada

    dadada Super Hero

    Joined:
    Dec 10, 2013
    Messages:
    2,514
    Likes Received:
    999
    Kemaren ane sudah menerbitkan trit mengenai inject iframe oleh semar. Nah kalau sekarang adalah cara mengendalikan supaya visitor anda mengerti tentang apa yang terjadi.

    Maksudnya gimana?....

    Okelah, mungkin Anda tak menggunakan semar, tapi bagaimana dengan visitor blog Anda?... saya kira masih banyak yang masih menggunakan kartu operator yang licik itu.

    Apa gunanya?..

    Supaya visitor anda bisa berfikir dengan apa yang terjadi, sehingga mau mengganti kartu modemnya dg operator lain yang lebih baik.

    Manfaat
    Mungkin manfaatnya akan bagus bagi pengguna internet secara keseluruhan, dan segera sadar dengan apa yang disebut dengan privacy online.

    Caranya
    pasang script berikut di atas code header blog Anda, platfor apa saja selama masih bisa menyisipkan JS diatas code </head> :

    HTML:
    <!--MENCEGAH IFRAME-->
    <script type='text/javascript'>
    if (!(parent && parent.WebPlayer) && top != self) {
        top.location.replace(document.location);
        alert('Demi keamanan, framing tidak diijinkan untuk blog ini; click OK untuk menghilangkan iframe!.');
    }
    </script>
    <!--MEREDIRECT KE HALAMAN KHUSUS, BUKAN KEHALAMAN WIDGET-->
    <script type='text/javascript'>
    // Create a random seed value, making it almost impossible to 
    // determine what is being tested for.
    var prevent_bust = Math.random() * 3000; 
    
    // enclose everything in a function, so that it cannot be addressed
    function iniFunc ( init ) { 
        // The function is no longer in scope of the main window.
        function onbeforeunload() { prevent_bust++ }
        window.onbeforeunload = onbeforeunload;
        setInterval( function() {
            // make sure the function was not deleted.
            if( window.onbeforeunload != onbeforeunload )
            {
                prevent_bust = init + 1;
                window.onbeforeunload = onbeforeunload;
            }
            if (prevent_bust > init ) {  // All comparison is to the random seed.
                prevent_bust -= 2
                window.top.location = 'http://www.blog-kamu.com/halaman-peringatan' 
                // Unfortunately, you have absolutely no idea which website caused
                // the incrementation, so you cannot replace it with a link!
                //
                // You might try to simply ignore it and just use the iframe as is -- 
                // theoretically, they are no longer able to bust this frame. 
                // (this theory will be disproved below).
           }
       }, 1 );
    };
    iniFunc( prevent_bust );
    </script>
    
    Ganti url _http://www.blog-kamu.com/halaman-peringatan dengan url anda sendiri


    Cara kerja :
    Jika visitor menggunakan semar yang diinject iframe, maka akan muncul pesan "Demi keamanan, framing tidak diijinkan untuk blog ini; click OK untuk menghilangkan iframe!" .

    Dan jika visitor diredirect ke alamat url widget 3rd, maka akan diarahkan kehalaman peringatan.

    Catatan :

    _http://www.blog-kamu.com/halaman-peringatan , adalah contoh halaman yang bersisi pesan peringatan yang sudah Anda buat. Isinya, sesuka Anda , misal :

    "Browser Anda telah diinject iframe oleh operator modem Anda!. Demi keamanan dan keyamanan Anda supaya bisa melihat blog ini, sebaiknya GANTI KARTU MODEM OPERATOR ANDA!"

    Buat halaman peringatan di domain yang lain yg tidak pakai widget/js apapun, supaya tidak redirect terus menerus - misalnya blogspot yang tanpa widget. Atau membuat template halaman dengan PHP, jika menggunakan WP tanpa diberi php widget/php header dan php footer dengan html biasa(asumsi jika footer/header default sudah disisipkan code 3rd).

    Credit : Stackoverflow.com
     
    Last edited: May 27, 2015

Share This Page