[bglug] Sport Utility
k|b|s
kbs@bglug.it
Mer 5 Gen 2005 18:38:31 CET
Non si tratta di un gippone, ma di uno script che ho fatto per vedere a che
servizio o trojano è appesa una porta.
L'ultimo netstat -vatn mi faceve notare un processo in attesa su una porta
oltre 32000, che poi ho scoperto essere legata a xfce-session. Senza cercare
su e giù per internet ho fatto questo script che scarica da iana, neophasis e
portsdb il database e poi ti evidenzia le porte e quello che dovrebbe legarsi
alla stessa anche in base al protocollo. E' una prima versione, quando ho
tempo perfeziono la sincronizzazione, che comunque se volete potete mettere
nel cron. Eccolo qua, ditemi se è la solita stronzata o se lo possiamo mettere
in lista per il premio lamerscript di quest'anno :)
Have fun ;^)
--8<-- CUT HERE --8<--
#!/bin/bash
# sport utility
#
# cat information about tcp/udp ports
# by k|b|s <joegalaxy*despammed.com>
# License: GPL - http://www.gnu.org/licenses/gpl.txt
# cecho, colorize echo
# ASS, another shitty script... ;^)
# Colors
black='\E[0;0;30m'
blue='\E[0;0;34m'
green='\E[0;0;32m'
cyan='\E[0;0;36m'
red='\E[0;0;31m'
purple='\E[0;0;35m'
brown='\E[0;0;33m'
lightgray='\E[0;0;37m'
darkgray='\E[0;1;30m'
lightblue='\E[0;1;34m'
lightgreen='\E[0;1;32m'
lightcyan='\E[0;1;36m'
lightred='\E[0;1;31m'
lightpurple='\E[0;1;35m'
yellow='\E[0;1;33m'
white='\E[0;1;37m'
#
Reset="tput sgr0"
#
cecho ()
{
message=${1:-}
color=${2:-}
echo -e "$color""$message"
$Reset
return
}
#
exit_usage=65
if [ -z "$1" ]; then
echo ""
cecho "Usage : `basename $0` [port] [protocol]" $lightred
cecho " Example: `basename $0` 22 tcp" $brown
cecho "Options:" $lightred
cecho " --sync refresh the db (sport --sync)" $brown
echo ""
exit $exit_usage
fi
#
DBDIR="$HOME/.sport"
if [ ! -d $DBDIR ]; then
mkdir -p $DBDIR
fi
if [ ! -s $DBDIR/iana.db ]; [ ! -s $DBDIR/neo-ports.db ]; [ ! -s $DBDIR/portsdb.db ]; then
cecho "It seems you don't have a local ports db" $purple
cecho "Do you want to download and create it now? [Y|n]" $red ; read answer
case $answer in
N|n)
exit
;;
*)
cecho "Downloading..." $red
wget -v -c ftp://ftp.portsdb.org/PortsDB/services -O $DBDIR/portsdb.db
wget -v -c http://www.iana.org/assignments/port-numbers -O $DBDIR/iana.db
wget -v -c http://www.neohapsis.com/neolabs/neo-ports/neo-ports.svcs -O $DBDIR/neo-ports.db
cecho "Done." $red
;;
esac
fi
if [ "$1" = "--sync" ]; then
cecho "Downloading..." $red
wget -v -c ftp://ftp.portsdb.org/PortsDB/services -O $DBDIR/portsdb.db
wget -v -c http://www.iana.org/assignments/port-numbers -O $DBDIR/iana.db
wget -v -c http://www.neohapsis.com/neolabs/neo-ports/neo-ports.svcs -O $DBDIR/neo-ports.db
cecho "Done." $red
else
echo ""
if [ -z "$2" ]; then
cecho "I've found this records for port $1 tcp/udp:" $lightred
else
cecho "I've found this records for port $1/$2:" $lightred
fi
echo ""
cecho " IANA:" $lightblue
cecho "`cat $DBDIR/iana.db | grep " $1/$2"`" $brown
echo ""
cecho " Portsdb:" $lightblue
cecho "`cat $DBDIR/portsdb.db | grep " $1/$2"`" $brown
echo ""
cecho " Neo-ports:" $lightblue
cecho "`cat $DBDIR/neo-ports.db | grep " $1/$2"`" $brown
echo ""
exit 0
fi
--8<-- CUT HERE --8<--
--
::1 sweet ::1
k|b|s ~> mailto `echo ti.gulgb@sbk|'rev'`
Maggiori informazioni sulla lista
bglug