外部リンクをRedirecter経由にするjQueryコード

自前リダイレクタ

Nucleusの管理画面に外部リンクはリダイレクタをつかいたいな、と思ってた。期待したいメリットは3つ。

  • リンクのアドレスを目視で確認できる
  • リファラ隠し CMSの管理画面アドレス漏れ
  • リファラ隠し セッションID漏れ

JAVAのシステムとかで「sid=」みたいなのが出てるのをちょくちょく見てて、Nucleusはチケットだから多分別物なんだろうけど、なんかもやもやもが残ってて。ちょうどきっかけがあったので、昔作りかけだったコードを仕上げてみることにした。



/*
 * Ex: Another location link use target _blank and redirecter.
 * UPDATE(y-m-d): 2010-1-28
 * AUTHER: Luvsic
 * LICENCE: MIT
 * INFO: http://luvsic.net/item/98
 *
 */



jQuery(function(){

        var myDomain   = document.location.hostname;
        var redirecter = 'http://nun.nu/';

        $('a[href^=http://]').not('a[href^=http://' + myDomain + ']').addClass('anotherDomain');

        $('.anotherDomain').attr({
                target: '_blank',
                title: 'Redirect'
        });

        $('.anotherDomain').each(function(){
                var obj  = $(this);
                var link = obj.attr('href')
                        .replace('http://', '')
                        .replace(/&/g, '&')
                        .replace(/</g, '&lt;')
                        .replace(/>/g, '&gt;')
                        .replace(/"/g, '&quot;')
                        .replace(/'/g, '&#39;')
                        .replace(/javascript:/g, 'javascript:');
                obj.attr('href', redirecter + link);
        });

});

このコードはNP_AddExtraheadを利用して管理画面で使用してます、ついでにやったtarget="_blank"の自動付与が意外に便利。

配布用のコードはリダイレクタに「http://nun.nu/」を使ってますが、一応自前でもリダイレクタ作ってテスト運用中。

http://luvsic.net/special/Redirecter/#www.google.co.jp

タイマーつけてたんですが、なんか急かされるようで好きじゃないので削除した。とりあえず悪用されなければいいなぁ。

[参考]
jQuery/リンクURLの書き換え
location.hash の危険性
escapeHTML をぐるぐる回してみ

/ /
Skooler Records

No comments yet

%3c%69%6e%70%75%74%20%74%79%70%65%3d%22%68%69%64%64%65%6e%22%20%6e%61%6d%65%3d%22%6e%70%5f%70%72%6f%74%65%63%74%62%79%6d%64%35%22%20%76%61%6c%75%65%3d%22%31%36%37%39%38%38%39%35%66%66%37%31%66%30%66%65%39%66%66%31%63%35%39%31%65%39%34%38%35%30%32%63%22%3e %3c%69%6e%70%75%74%20%74%79%70%65%3d%22%68%69%64%64%65%6e%22%20%6e%61%6d%65%3d%22%6e%70%5f%70%72%6f%74%65%63%74%62%79%6d%64%35%5f%68%61%73%68%22%20%76%61%6c%75%65%3d%22%65%32%30%30%33%38%38%33%38%34%64%32%32%64%39%35%30%36%32%63%64%35%66%36%36%66%37%62%38%38%63%32%22%3e
© 2006 – 2014 by Luvsic. Some rights reserved.