#!/usr/local/bin/perl #------------------------------------------------------------------------------------------------------------------ # link.cgi Ver 1.02 # an-donut 2004/05/09 #------------------------------------------------------------------------------------------------------------------ #------------------------------------------------------------------------------------------------------------------ # link.cgiの設定 #------------------------------------------------------------------------------------------------------------------ $urlbase = 'http://www.an-donut.com/'; #掲示板のURL $cgi = "link.cgi"; #このcgiの名前 $bchkurl = 'http://www.an-donut.com/bcc.cgi?'; #ブラクラチェッカーURL @jurl = ('http://www.an-donut.com/', 'http://www.an-donut.net/', 'http://anzu-ya.net/', 'http://www.mikawaban.com/', 'http://ame.x0.com/', 'http://amezor-iv.net/', 'http://amezor-vii.net/', 'http://www.amezor.to/'); #------------------------------------------------------------------------------------------------------------------ # フォームでコード #------------------------------------------------------------------------------------------------------------------ if ($ENV{PATH_INFO}) { $url = $ENV{PATH_INFO}; $url =~ s/([^\w ])/'%' . unpack('H2', $1)/eg; $url =~ tr/ /+/; $url =~ s/%7e/~/g; $url =~ s/%2f/\//g; $url =~ s/%2d/-/g; $url =~ s/%2e/./g; $url =~ s/%3d/=/g; $url =~ s/%3a/:/g; $url =~ s/%3b/;/g; $url =~ s/%26/&/g; $url =~ s/%3f/?/g; $url =~ s/%23/#/g; $url =~ s/%2b/+/g; $url =~ s/%25/%/g; if($ENV{'QUERY_STRING'}){ if($url){ $url = $url .'?' .$ENV{'QUERY_STRING'}; } } $url =~ s/\///; } else { if ($ENV{'REQUEST_METHOD'} eq "POST") { read(STDIN,$buffer,$ENV{'CONTENT_LENGTH'}); } else { $buffer = $ENV{'QUERY_STRING'}; } @pairs = split(/&/,$buffer); foreach $pair (@pairs) { ($name,$value) = split(/=/,$pair); # $value =~ tr/+/ /; # $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; $FORM{$name} = $value; } $url = $FORM{'url'}; $url =~ s/http:\/\///i; } #------------------------------------------------------------------------------------------------------------------ # メインスタート #------------------------------------------------------------------------------------------------------------------ $url && &url; #####$urlbase/link.cgi/の時(link.cgiの内容表示) print "Content-type: text/plain\n\n"; open(R, "$cgi"); print while ; close(R); exit; #####$urlbase/link.cgi/$url/の時 sub url { $jumpurl = 'http://' .$url; if($jumpurl =~ /$urlbase/){ print "Location: $jumpurl\n\n\n"; exit; } foreach (@jurl){ if ($jumpurl =~ /$_/){ print "Location: $jumpurl\n\n\n"; exit; } } print "Content-type: text/html\n\n"; print <JUMP $jumpurl

別のサイトにジャンプしようとしています。
安全なサイトか判らない場合は確認してください →確認
EOM exit; }