From ba8d1a51de41d935109c3d33a8cdf438d8401df1 Mon Sep 17 00:00:00 2001 From: Jason Date: Thu, 17 Feb 2022 09:44:57 -0500 Subject: [PATCH] =?UTF-8?q?=E2=9E=96=20Deleted:=20data/htdocs/cgi-bin/bloc?= =?UTF-8?q?ked=20data/htdocs/cgi-bin/dansguardian.pl=20data/htdocs=20?= =?UTF-8?q?=E2=9E=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit data/htdocs/cgi-bin/blocked data/htdocs/cgi-bin/dansguardian.pl data/htdocs/www/block.html --- data/htdocs/cgi-bin/blocked | 396 ---------------------------- data/htdocs/cgi-bin/dansguardian.pl | 67 ----- data/htdocs/www/block.html | 3 - 3 files changed, 466 deletions(-) delete mode 100644 data/htdocs/cgi-bin/blocked delete mode 100755 data/htdocs/cgi-bin/dansguardian.pl delete mode 100644 data/htdocs/www/block.html diff --git a/data/htdocs/cgi-bin/blocked b/data/htdocs/cgi-bin/blocked deleted file mode 100644 index 52c9983..0000000 --- a/data/htdocs/cgi-bin/blocked +++ /dev/null @@ -1,396 +0,0 @@ -#! /usr/bin/perl -# -# Explain to the user that the URL is blocked and by which rule set -# -# Original by P�l Baltzersen 1999 (pal.baltzersen@ost.eltele.no) -# French texts thanks to Fabrice Prigent (fabrice.prigent@univ-tlse1.fr) -# Dutch texts thanks to Anneke Sicherer-Roetman (sicherer@sichemsoft.nl) -# German texts thanks to Buergernetz Pfaffenhofen (http://www.bn-paf.de/filter/) -# Spanish texts thanks to Samuel García). -# Rewrite by Christine Kronberg, 2008, to enable an easier integration of -# other languages. -# - -# By accepting this notice, you agree to be bound by the following -# agreements: -# -# This software product, squidGuard, is copyrighted (C) 1998-2008 -# by Christine Kronberg, Shalla Secure Services. All rights reserved. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License (version 2) as -# published by the Free Software Foundation. It is distributed in the -# hope that it will be useful, but WITHOUT ANY WARRANTY; without even -# the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR -# PURPOSE. See the GNU General Public License (GPL) for more details. -# -# You should have received a copy of the GNU General Public License -# (GPL) along with this program. - -use strict; -use Socket; -# -# GLOBAL VALUES: -# -my ($clientaddr,$clientname,$clientuser,$clientgroup,$targetgroup,$url); -my (@supported,$image,$redirect,$autoinaddr,$proxy,$proxymaster); -my $lang="en"; -my (%msgconf,%title,%logo,%msg,%tab,%word); -my ($protocol,$address,$port,$path,$refererhost,$referer); -my %Babel = (); -my $rechts=""; -my $links=""; -my $dummy=""; -sub getpreferedlang(@); -sub parsequery($); -sub status($); -sub redirect($); -sub content($); -sub expires($); -sub msg($$); -sub gethostnames($); -sub spliturl($); -sub showhtml($); -sub showimage($$$); -sub showinaddr($$$$$); - -# -# CONFIGURABLE OPTIONS: -# -# (Currently: "en", "fr", "de", "es", "nl", "no") -@supported = ( - "en (English), ", - "fr (Fran�ais), ", - "de (Deutsch), ", - "es (Espa�ol), ", - "nl (Nederlands), ", - "no (Norsk)." - ); -# -# Modifiy the values below to reflect you environment -# The image you define with "$image" and redirect will be displayed if the unappropriate -# url is of the type: gif, jpg, jpeg, png, mp3, mpg, mpeg, avi or mov. -# -$image = "/images/blocked.png"; # RELATIVE TO DOCUMENT_ROOT -$redirect = "http://admin.your-domain/images/blocked.png"; # "" TO AVOID REDIRECTION -$proxy = "proxy.your-domain"; # Your proxy server -$proxymaster = "operator\@your-domain"; # The email of your proxy adminstrator -$autoinaddr = 2; # 0|1|2; - # 0 TO NOT REDIRECT - # 1 TO AUTORESOLVE & REDIRECT IF UNIQUE - # 2 TO AUTORESOLVE & REDIRECT TO FIRST NAME - -# You may wish to enter your company link and logo to be displayed on the page -my $company = " "; -my $companylogo = " "; - -my $squidguard = "http://www.squidguard.org"; -my $squidguardlogo = "http://www.squidguard.org/Logos/squidGuard.gif"; - -######################################################################################## -# -# SUBROUTINES: -# - -# -# RETURN THE FIRST SUPPORTED LANGUAGE OF THE BROWSERS PREFERRED OR THE -# DEFAULT: -# -sub getpreferedlang(@) { - my @supported = @_; - my @languages = split(/\s*,\s*/,$ENV{"HTTP_ACCEPT_LANGUAGE"}) if(defined($ENV{"HTTP_ACCEPT_LANGUAGE"})); - my $lang; - my $supp; - push(@languages,$supported[0]); - for $lang (@languages) { - $lang =~ s/\s.*//; - $lang = substr($lang,0,2); - for $supp (@supported) { - $supp =~ s/\s.*//; - return($lang) if ($lang eq $supp); - } - } -} - -# -# PARSE THE QUERY_STRING FOR KNOWN KEYS: -# -sub parsequery($) { - my $query = shift; - my $clientaddr = "$Babel{Unknown}"; - my $clientname = "$Babel{Unknown}"; - my $clientuser = "$Babel{Unknown}"; - my $clientgroup = "$Babel{Unknown}"; - my $targetgroup = "$Babel{Unknown}"; - my $url = "$Babel{Unknown}"; - if (defined($query)) { - while ($query =~ /^\&?([^\&=]+)=\"([^\"]*)\"(.*)/ || $query =~ /^\&?([^\&=]+)=([^\&=]*)(.*)/) { - my $key = $1; - my $value = $2; - $value = "$Babel{Unknown}" unless(defined($value) && $value && $value ne "unknown"); - $query = $3; - if ($key =~ /^(clientaddr|clientname|clientuser|clientgroup|targetgroup|url)$/) { - eval "\$$key = \$value"; - } - if ($query =~ /^url=(.*)/) { - $url = $1; - last; - } - } - } - return($clientaddr,$clientname,$clientuser,$clientgroup,$targetgroup,$url); -} - -# -# PRINT HTTP STATUS HEARER: -# -sub status($) { - my $status = shift; - print "Status: $status\n"; -} - -# -# PRINT HTTP LOCATION HEARER: -# -sub redirect($) { - my $location = shift; - print "Location: $location\n"; -} - -# -# PRINT HTTP CONTENT-TYPE HEARER: -# -sub content($) { - my $contenttype = shift; - print "Content-Type: $contenttype\n"; -} - -# -# PRINT HTTP LAST-MODIFIED AND EXPIRES HEADER: -# -sub expires($) { - my $ttl = shift; - my $time = time; - my @day = ("Sun","Mon","Tue","Wed","Thu","Fri","Sat"); - my @month = ("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"); - my ($sec,$min,$hour,$mday,$mon,$year,$wday) = gmtime($time); - printf "Last-Modified: %s, %d %s %d", $day[$wday],$mday,$month[$mon],$year+1900; - printf " %02d:%02d:%02d GMT\n", $hour,$min,$sec; - ($sec,$min,$hour,$mday,$mon,$year,$wday) = gmtime($time+$ttl); - printf "Expires: %s, %d %s %d", $day[$wday],$mday,$month[$mon],$year+1900; - printf " %02d:%02d:%02d GMT\n", $hour,$min,$sec; -} - -# -# REVERSE LOOKUP AND RETURN NAMES: -# -sub gethostnames($) { - my $address = shift; - my ($name,$aliases) = gethostbyaddr(inet_aton($address), AF_INET); - my @names; - if (defined($name)) { - push(@names,$name); - if (defined($aliases) && $aliases) { - for(split(/\s+/,$aliases)) { - next unless(/\./); - push(@names,$_); - } - } - } - return(@names); -} - -# -# SPLIT AN URL INTO PROTOCOL, ADDRESS, PORT AND PATH: -# -sub spliturl($) { - my $url = shift; - my $protocol = ""; - my $address = ""; - my $port = ""; - my $path = ""; - $url =~ /^([^\/:]+):\/\/([^\/:]+)(:\d*)?(.*)/; - $protocol = $1 if(defined($1)); - $address = $2 if(defined($2)); - $port = $3 if(defined($3)); - $path = $4 if(defined($4)); - return($protocol,$address,$port,$path); -} - -# -# SEND OUT AN IMAGE: -# -sub showimage($$$) { - my ($type,$file,$redirect) = @_; - content("image/$type"); - expires(300); - redirect($redirect) if($redirect); - print "\n"; - open(GIF, "$ENV{\"DOCUMENT_ROOT\"}$file"); - print ; - close(GIF) -} - -# -# SHOW THE INADDR ALERNATIVES WITH OPTIONAL ATOREDIRECT: -# -sub showinaddr($$$$$) { - my ($targetgroup,$protocol,$address,$port,$path) = @_; - my $msgid = $targetgroup; - my @names = gethostnames($address); - if($autoinaddr == 2 && @names || $autoinaddr && @names==1) { - status("301 Moved Permanently"); - redirect("$protocol://$names[0]$port$path"); - } elsif (@names>1) { - status("300 Multiple Choices"); - } elsif (@names) { - status("301 Moved Permanently"); - } else { - status("404 Not Found"); - } - if (@names) { - print "Content-type: text/html\n\n"; - print "\n"; - print "\n"; - print "$Babel{Title}\n"; - print "\n"; - print "\n"; - print " \n"; - expires(0); - $msgid = "in-addr" unless(defined($msgconf{$msgid})); - if (defined($msgconf{$msgid})) { - print " \n"; - for (@{$msgconf{$msgid}}) { - my @config = split(/:/); - my $type = shift(@config); - if ($type eq "msg") { - msg($config[0],$config[1]); - } elsif ($type eq "tab") { - table(shift(@config),shift(@config),@config); - } elsif ($type eq "alternatives") { - print " \n"; - for (@names) { - print " \n \n \n"; - } - print "
\n "; - href("$protocol://$_$port$path"); - print "\n \n
\n\n"; - if (defined($ENV{"HTTP_REFERER"}) && $ENV{"HTTP_REFERER"} =~ /:\/\/([^\/:]+)/) { - $refererhost = $1; - $referer = $ENV{"HTTP_REFERER"}; - msg("H4","referermaster"); - } - } - } - } - } - return; -} - - -######################################################################################## -# -# MAIN PROGRAM -# -# To change the messages in the blocked page please refer to the corresponding babel file. -# -$lang = getpreferedlang(@supported); - -open (BABEL, "babel.$lang") || warn "Unable to open language file: $!\n"; -flock (BABEL, 2); - while () { - chomp $_ ; - ($links, $rechts) = split (/=/, $_); - $Babel{$links} = $rechts; - } -flock (BABEL, 8); -close (BABEL); - -($clientaddr,$clientname,$clientuser,$clientgroup,$targetgroup,$url) = parsequery($ENV{"QUERY_STRING"}); -($protocol,$address,$port,$path) = spliturl($url); - -if ($url =~ /\.(gif|jpg|jpeg|png|mp3|mpg|mpeg|avi|mov)$/i) { - status("403 Forbidden"); - showimage("gif",$image,$redirect); - exit 0; -} -if ($targetgroup eq "in-addr") { - showinaddr($targetgroup,$protocol,$address,$port,$path); -} - -status("403 Forbidden"); -expires(0); -print "Content-type: text/html\n\n"; -print "\n"; -print "\n"; -print "$Babel{Title}\n"; -print "\n"; -print "\n"; -print " \n"; - -print "\n"; -print "\n"; -print "\"\"\n"; -print "\n"; -print "\"\"

\n"; -print "
\n"; -print "\n"; -print "\n"; -print "
\n"; - -print "

$Babel{Msg}

\n"; -print "

\n"; - -print "$Babel{Tabcaption}

\n"; - -print "\n"; -print "\n"; -print "\n"; -print "\n"; - -print "\n"; -print "\n"; -print "\n"; - -print "\n"; -print "\n"; -print "\n"; - -print "\n"; -print "\n"; -print "\n"; - -print "\n"; -print "\n"; -print "\n"; - -print "\n"; -print "\n"; -print "\n"; -print "
$Babel{TabIP} $clientaddr
$Babel{Tabclientname} $clientname
$Babel{Tabclientuser} $clientuser
$Babel{Tabclientgroup} $clientgroup
$Babel{Taburl} $url
$Babel{Tabtargetgroup} $targetgroup
\n"; -print "

\n"; - -print "
\n"; -if ($targetgroup eq "in-addr") { - print "$Babel{msginaddr}

\n"; - print "$Babel{msgnoalternatives} ",$address,".
\n"; - print "$Babel{msgwebmaster}\n"; -} -print "

\n"; -print "$Babel{msgproxymaster} $proxymaster.
\n"; -print "$Babel{msgrefresh}\n"; - -print "
\n"; - -# bottom of page -print "
\n"; -print "

\n"; -print "
\n"; -print "\n"; -print "$Babel{msgdeflang} ",@supported, "\n"; -print "\n"; -print "\n"; - - - -exit 0 ; diff --git a/data/htdocs/cgi-bin/dansguardian.pl b/data/htdocs/cgi-bin/dansguardian.pl deleted file mode 100755 index cd0c728..0000000 --- a/data/htdocs/cgi-bin/dansguardian.pl +++ /dev/null @@ -1,67 +0,0 @@ -#!/usr/bin/env perl - -$allow_html_code = 0; -&ReadEnvs; - -$deniedurl = $in{'DENIEDURL'}; -$reason = $in{'REASON'}; -$user = $in{'USER'}; -$ip = $in{'IP'}; -$cats = $in{'CATEGORIES'}; - -$host = $in{'HOST'}; - -$fbypasshash = $in{'GBYPASS'}; # -$ibypasshash = $in{'GIBYPASS'}; # -$hashflag = $in{'HASH'}; # - -print "Content-type: text/html\n\n"; -print ''; -print 'Access Denied'; -print '

ACCESS HAS BEEN DENIED

'; -print 'Access Denied'; -if (length($user) > 0) { - print "
$user, access to the page:

"; -} -else { - print '
Access to the page:

'; -} -print "$deniedurl"; -print '

... has been denied for the following reason:

'; -print "$reason"; -if (length($cats) > 0) { - print '

Categories:

'; - print "$cats"; -} -print '

Your username, IP address, date, time and URL have been logged.'; -print '

You are seeing this error because the page you attempted
'; -print 'to access contains, or is labelled as containing, material that'; -print '
has been deemed inappropriate.
'; -print '

'; -print 'If you have any queries contact your Proxy Administrator
'; -print '

Powered by Casjays Developments Proxy Server'; -print '

'; - -exit; - - -sub ReadEnvs { - local($cl, @clp, $pair, $name, $value); - if ( $ENV{'REQUEST_METHOD'} eq 'POST' ) { - read(STDIN, $cl, $ENV{'CONTENT_LENGTH'} ); - } - else { - $cl = $ENV{'QUERY_STRING'}; - } - @clp = split(/::/, $cl); - foreach $pair (@clp) { - ($name, $value) = split(/==/, $pair); - $value =~ tr/+/ /; - $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; - $value =~ s///g; - if ($allow_html_code != 1) { - $value =~ s/<([^>]|\n)*>//g; - } - $in{$name} = $value; - } -} diff --git a/data/htdocs/www/block.html b/data/htdocs/www/block.html deleted file mode 100644 index 85d47a3..0000000 --- a/data/htdocs/www/block.html +++ /dev/null @@ -1,3 +0,0 @@ - - This URL was blocked by your squid! -