Tillbaka till svenska Fidonet
English   Information   Debug  
IC   0/2851
INTERNET   0/424
INTERUSER   0/3
IP_CONNECT   719
JAMNNTPD   0/233
JAMTLAND   0/47
KATTY_KORNER   0/41
LAN   0/16
LINUX-USER   0/19
LINUXHELP   0/1155
LINUX   0/22013
LINUX_BBS   0/957
mail   18.68
mail_fore_ok   249
MENSA   0/341
MODERATOR   0/102
MONTE   0/992
MOSCOW_OKLAHOMA   0/1245
MUFFIN   0/783
MUSIC   0/321
N203_STAT   900
N203_SYSCHAT   313
NET203   321
NET204   69
NET_DEV   0/10
NORD.ADMIN   0/101
NORD.CHAT   0/2572
NORD.FIDONET   189
NORD.HARDWARE   0/28
NORD.KULTUR   0/114
NORD.PROG   0/32
NORD.SOFTWARE   0/88
NORD.TEKNIK   0/58
NORD   0/453
OCCULT_CHAT   0/93
OS2BBS   0/787
OS2DOSBBS   0/580
OS2HW   0/42
OS2INET   0/37
OS2LAN   0/134
OS2PROG   0/36
OS2REXX   0/113
OS2USER-L   207
OS2   0/4785
OSDEBATE   0/18996
PASCAL   0/490
PERL   0/457
PHP   0/45
POINTS   0/405
POLITICS   0/29554
POL_INC   0/14731
PSION   103
R20_ADMIN   1117
R20_AMATORRADIO   0/2
R20_BEST_OF_FIDONET   13
R20_CHAT   0/893
R20_DEPP   0/3
R20_DEV   399
R20_ECHO2   1379
R20_ECHOPRES   0/35
R20_ESTAT   0/719
R20_FIDONETPROG...
...RAM.MYPOINT
  0/2
R20_FIDONETPROGRAM   0/22
R20_FIDONET   0/248
R20_FILEFIND   0/24
R20_FILEFOUND   0/22
R20_HIFI   0/3
R20_INFO2   2814
R20_INTERNET   0/12940
R20_INTRESSE   0/60
R20_INTR_KOM   0/99
R20_KANDIDAT.CHAT   42
R20_KANDIDAT   28
R20_KOM_DEV   112
R20_KONTROLL   0/13069
R20_KORSET   0/18
R20_LOKALTRAFIK   0/24
R20_MODERATOR   0/1852
R20_NC   76
R20_NET200   245
R20_NETWORK.OTH...
...ERNETS
  0/13
R20_OPERATIVSYS...
...TEM.LINUX
  0/44
R20_PROGRAMVAROR   0/1
R20_REC2NEC   534
R20_SFOSM   0/340
R20_SF   0/108
R20_SPRAK.ENGLISH   0/1
R20_SQUISH   107
R20_TEST   2
R20_WORST_OF_FIDONET   12
RAR   0/9
RA_MULTI   106
RA_UTIL   0/162
REGCON.EUR   0/2055
REGCON   0/13
SCIENCE   0/1206
SF   0/239
SHAREWARE_SUPPORT   0/5146
SHAREWRE   0/14
SIMPSONS   0/169
STATS_OLD1   0/2539.065
STATS_OLD2   0/2530
STATS_OLD3   0/2395.095
STATS_OLD4   0/1692.25
SURVIVOR   0/495
SYSOPS_CORNER   0/3
SYSOP   0/84
TAGLINES   0/112
TEAMOS2   0/4530
TECH   0/2617
TEST.444   0/105
TRAPDOOR   0/19
TREK   0/755
TUB   0/290
UFO   0/40
UNIX   0/1316
USA_EURLINK   0/102
USR_MODEMS   0/1
VATICAN   0/2740
VIETNAM_VETS   0/14
VIRUS   0/378
VIRUS_INFO   0/201
VISUAL_BASIC   0/473
WHITEHOUSE   0/5187
WIN2000   0/101
WIN32   0/30
WIN95   0/4277
WIN95_OLD1   0/70272
WINDOWS   0/1517
WWB_SYSOP   0/419
WWB_TECH   0/810
ZCC-PUBLIC   0/1
ZEC   4

 
4DOS   0/134
ABORTION   0/7
ALASKA_CHAT   0/506
ALLFIX_FILE   0/1313
ALLFIX_FILE_OLD1   0/7997
ALT_DOS   0/152
AMATEUR_RADIO   0/1039
AMIGASALE   0/14
AMIGA   0/331
AMIGA_INT   0/1
AMIGA_PROG   0/20
AMIGA_SYSOP   0/26
ANIME   0/15
ARGUS   0/924
ASCII_ART   0/340
ASIAN_LINK   0/651
ASTRONOMY   0/417
AUDIO   0/92
AUTOMOBILE_RACING   0/105
BABYLON5   0/17862
BAG   135
BATPOWER   0/361
BBBS.ENGLISH   0/382
BBSLAW   0/109
BBS_ADS   0/5290
BBS_INTERNET   0/507
BIBLE   0/3563
BINKD   0/1119
BINKLEY   0/215
BLUEWAVE   0/2173
CABLE_MODEMS   0/25
CBM   0/46
CDRECORD   0/66
CDROM   0/20
CLASSIC_COMPUTER   0/378
COMICS   0/15
CONSPRCY   0/899
COOKING   28607
COOKING_OLD1   0/24719
COOKING_OLD2   0/40862
COOKING_OLD3   0/37489
COOKING_OLD4   0/35496
COOKING_OLD5   9370
C_ECHO   0/189
C_PLUSPLUS   0/31
DIRTY_DOZEN   0/201
DOORGAMES   0/2025
DOS_INTERNET   0/196
duplikat   6000
ECHOLIST   0/18295
EC_SUPPORT   0/318
ELECTRONICS   0/359
ELEKTRONIK.GER   1534
ENET.LINGUISTIC   0/13
ENET.POLITICS   0/4
ENET.SOFT   0/11701
ENET.SYSOP   33806
ENET.TALKS   0/32
ENGLISH_TUTOR   0/2000
EVOLUTION   0/1335
FDECHO   0/217
FDN_ANNOUNCE   0/7068
FIDONEWS   23548
FIDONEWS_OLD1   0/49742
FIDONEWS_OLD2   0/35949
FIDONEWS_OLD3   0/30874
FIDONEWS_OLD4   0/37224
FIDO_SYSOP   12847
FIDO_UTIL   0/180
FILEFIND   0/209
FILEGATE   0/212
FILM   0/18
FNEWS_PUBLISH   4200
FN_SYSOP   41525
FN_SYSOP_OLD1   71952
FTP_FIDO   0/2
FTSC_PUBLIC   0/13586
FUNNY   0/4886
GENEALOGY.EUR   0/71
GET_INFO   105
GOLDED   0/408
HAM   0/16053
HOLYSMOKE   0/6791
HOT_SITES   0/1
HTMLEDIT   0/71
HUB203   466
HUB_100   264
HUB_400   39
HUMOR   0/29
Möte LINUX, 22013 texter
 lista första sista föregående nästa
Text 6680, 351 rader
Skriven 2034-08-01 16:03:02 av Paul Rogers (1:105/360.0)
     Kommentar till en text av Wayne Chirnside
Ärende: Hijacked
================
 WC> Any suggestions?
 WC> I figure I'm rooted or have a trojan but am well over
 WC> my head here.

Yep.  Got Knoppix on a CD?  Got a DOS fubar floppy that's always
been write-protected?  And best of all, have you got a
diagnostic from the drive mfr that will write 0's to every
sector of the drive--ON guaranteed clean bootable media?

FIRST, PULL THE PLUG!  Take that puppy off the net until you
have it all cleaned up, and its chastity belt cinched-up tight!
(See http://www.xprt.net/~pgrogers/Headline.html for
entertaining reading on that subject.)

You've got to sterilize that puppy and start over.  If you're
VERY careful you might be able to boot knoppix and copy off any
text files you have to keep, but nothing executable.  Presume
everything that CAN be infected HAS BEEN infected.  Take no
prisoners!

I'd use the diagnostic to write 0's on eevry sector.  Then I'd
partition/format it for a DOS drive, then forget that, wipe out
those partitions, and repartition for Linux, making sure the
layout isn't the same as the original.  Then reinstall your
distro from CD/DVD.

I hope you're running a separate router/firewall.  (See
http://www.xprt.net/~pgrogers/Firewall.html for suggestions.)
Even so, run an iptables firewall on your workstation.  Enable
netfilter & state tracking (including ftp) in your kernel.  Make
sure rc.d saves your iptables on shutdown & restores them on
boot BEFORE bringing up the network interfaces.  (My
init.d/iptables slams the doors if it cannot read the file.)
This works for me:

#!/bin/bash
# firewall.sh - Configurable per-host firewall for workstations.
# Parts James Stephens (jns@ias.edu)
# PGR was here 
# PGR Attitude: protect us from the big, bad world, and protect our
# LAN from rogue processes.
######################################################################
function on {
  echo "Firewall: enabling filtering"
  NAMESERVER_1=000.000.000.000
  NAMESERVER_2=000.000.000.000
  LOOPBACK="127.0.0.0/8"
  CLASS_A="10.0.0.0/8"
  CLASS_B="172.16.0.0/12"
  CLASS_C="192.168.0.0/16"
  CLASS_D_MULTICAST="224.0.0.0/4"
  CLASS_E_RESERVED_NET="240.0.0.0/5"
  P_PORTS="0:1023"
  UP_PORTS="1024:65535"
  TR_SRC_PORTS="32769:65535"
  TR_DEST_PORTS="33434:33523"

  #PGR source our variables, i.e. IP address
  . /etc/sysconfig/rc
  . /etc/sysconfig/network
  . $network_devices/ifconfig.eth0/ipv4
  LOCAL_NET=$BASEIP.0/24

  # Set up a default DROP policy for the built-in chains. If we modify and
  # re-run the script mid-session then (because we have a default DROP
  # policy), what happens is that there is a small time period when
  # packets are denied until the new rules are back in place. There is no
  # period, however small, when packets we don't want are allowed.
  iptables -P INPUT DROP
  iptables -P FORWARD DROP
  iptables -P OUTPUT DROP
  # These lines are here in case rules are already in place and the script
  # is ever rerun on the fly. We want to remove all rules and
  # pre-exisiting user defined chains and zero the counters before we
  # implement new rules.
  iptables -F
  iptables -X
  iptables -Z

  ## LOOPBACK
  # Allow unlimited traffic on the loopback interface.
  iptables -A INPUT  -i lo -s $LOOPBACK -j ACCEPT
  iptables -A OUTPUT -o lo -d $LOOPBACK -j ACCEPT
  # Everything else comes from an external interface.  This firewall is
  # for a network workstation, so in the default case that's one ethernet
  # interface, eth0.

  ## PACKET CHECKING
  ##=============================================
  ## SYN-FLOODING PROTECTION
  # This rule maximises the rate of incoming connections. In order to do
  # this we divert tcp packets with the SYN bit set off to a
  # user-defined chain. Up to limit-burst connections can arrive in
  # 1/limit seconds ..... in this case 4 connections in one second.
  # After this, one of the burst is regained every second and
  # connections are allowed again. The default limit is 3/hour. The
  # default limit burst is 5.
  iptables -N syn-flood
  iptables -A INPUT -p tcp --syn -j syn-flood
  iptables -A syn-flood -m limit --limit 1/s --limit-burst 4 -j RETURN
  iptables -A syn-flood -j DROP

  ## Make sure NEW tcp connections are SYN packets
  iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP

  ## FRAGMENTS
  # Sending lots of non-first fragments was what allowed Jolt2 to
  # effectively "drown" Firewall-1. Fragments can be overlapped, and the
  # subsequent interpretation of such fragments is very OS-dependent. Do
  # not trust any fragments. Log fragments just to see if we get any, and
  # deny them too.
  iptables -A INPUT -f -j LOG --log-level notice  --log-prefix "firewall
(FRAG): "
  iptables -A INPUT -f -j DROP
  ## SPOOFING
  # Most of this anti-spoofing stuff is theoretically not really necessary
  # with the flags we have set in the kernel but you never know there
  # isn't a bug somewhere in your IP stack.
  # Refuse spoofed packets pretending to be from your IP address.
  iptables -A INPUT -s $IP -j DROP
  # Refuse packets claiming to be from a Class A private network.
  iptables -A INPUT -s $CLASS_A -j DROP
  # Refuse packets claiming to be from a Class B private network.
  iptables -A INPUT -s $CLASS_B -j DROP
  # Refuse packets claiming to be from a Class C private network.
  #iptables -A INPUT -s $CLASS_C -j DROP
  #PGR Can't do that, our LAN is a private network
  # Refuse Class D multicast addresses. Multicast is illegal as a source
address.
  iptables -A INPUT -s $CLASS_D_MULTICAST -j DROP
  # Refuse Class E reserved IP addresses.
  iptables -A INPUT -s $CLASS_E_RESERVED_NET -j DROP
  # Refuse packets claiming to be to the loopback interface. Refusing
  # packets claiming to be to the loopback interface protects against
  # source quench, whereby a machine can be told to slow itself down by an
  # icmp source quench to the loopback.
  iptables -A INPUT  -d $LOOPBACK -j DROP
  # Refuse broadcast address packets.
  iptables -A INPUT -d $BROADCAST -j DROP
  ##PGR Limit furtive port scanners
  iptables -A INPUT -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit
1/second -j DROP
  ## ===========================================

  ## Standard services

  ## DNS
  # NOTE: DNS uses tcp for zone transfers, for transfers greater than 512
  # bytes (possible, but unusual), and on certain platforms like AIX (I am
  # told), so you might have to add a copy of this rule for tcp if you
  # need it.
  # Allow UDP packets in for DNS client from nameservers.
  iptables -A INPUT -p udp -s $NAMESERVER_1 --sport domain -m state --state
ESTABLISHED -j ACCEPT
  iptables -A INPUT -p udp -s $NAMESERVER_2 --sport domain -m state --state
ESTABLISHED -j ACCEPT
  #PGR allow DNS from local LAN too.
  iptables -A INPUT -p udp -s $LOCAL_NET    --sport domain -m state --state
ESTABLISHED -j ACCEPT
  # Allow UDP packets to DNS servers from client.
  iptables -A OUTPUT -p udp -d $NAMESERVER_1 --dport domain -m state --state
NEW,ESTABLISHED -j ACCEPT
  iptables -A OUTPUT -p udp -d $NAMESERVER_2 --dport domain -m state --state
NEW,ESTABLISHED -j ACCEPT
  #PGR allow DNS to local LAN too.
  iptables -A OUTPUT -p udp -d $LOCAL_NET    --dport domain -m state --state
NEW,ESTABLISHED -j ACCEPT

  ## SSH clients
  # Allow ssh outbound.
  iptables -A INPUT  -p tcp --sport ssh -m state --state ESTABLISHED -j ACCEPT
  iptables -A OUTPUT -p tcp --dport ssh -m state --state NEW,ESTABLISHED -j
ACCEPT

  ## WWW clients
  # Allow www outbound.
  iptables -A INPUT  -p tcp --sport www -m state --state ESTABLISHED -j ACCEPT
  iptables -A OUTPUT -p tcp --dport www -m state --state NEW,ESTABLISHED -j
ACCEPT
  iptables -A INPUT  -p tcp --sport https -m state --state ESTABLISHED -j
ACCEPT
  iptables -A OUTPUT -p tcp --dport https -m state --state NEW,ESTABLISHED -j
ACCEPT

  ## TELNET clients
  # Allow telnet outbound.
  iptables -A INPUT  -p tcp --sport telnet -m state --state ESTABLISHED -j
ACCEPT
  iptables -A OUTPUT -p tcp --dport telnet -m state --state NEW,ESTABLISHED -j
ACCEPT

  ## FTP clients
  # Allow ftp outbound.
  iptables -A INPUT  -p tcp --sport ftp -m state --state ESTABLISHED -j ACCEPT
  iptables -A OUTPUT -p tcp --dport ftp -m state --state NEW,ESTABLISHED -j
ACCEPT
  # Now for the connection tracking part of ftp.  
  # 1) Active ftp. 
  # This involves a connection INbound from port 20 on the remote machine,
  # to a local port passed over the ftp channel via a PORT command. The
  # ip_conntrack_ftp module recognizes the connection as RELATED to the
  # original outgoing connection to port 21 so we don't need NEW as a
  # state match.
  iptables -A INPUT  -p tcp --sport ftp-data -m state --state
ESTABLISHED,RELATED -j ACCEPT
  iptables -A OUTPUT -p tcp --dport ftp-data -m state --state ESTABLISHED -j
ACCEPT
  # 2) Passive ftp.
  # This involves a connection outbound from a port >1023 on the local
  # machine, to a port >1023 on the remote machine previously passed over
  # the ftp channel via a PORT command. The ip_conntrack_ftp module
  # recognizes the connection as RELATED to the original outgoing
  # connection to port 21 so we don't need NEW as a state match.
  iptables -A INPUT  -p tcp --sport $UP_PORTS --dport $UP_PORTS -m state
--state ESTABLISHED -j ACCEPT
  iptables -A OUTPUT -p tcp --sport $UP_PORTS --dport $UP_PORTS -m state
--state ESTABLISHED,RELATED -j ACCEPT

  ## SMTP clients
  # Allow smtp outbound.
  iptables -A INPUT  -p tcp --sport smtp -m state --state ESTABLISHED -j ACCEPT
  iptables -A OUTPUT -p tcp --dport smtp -m state --state NEW,ESTABLISHED -j
ACCEPT

  ## SAMBA/Windows clients to LAN server(s)
  ## SAMBA/Windows host's NETBIOS enquiries
  iptables -A INPUT  -p udp --dport netbios-ns  -s $LOCAL_NET -j ACCEPT
  iptables -A INPUT  -p udp --dport netbios-dgm -s $LOCAL_NET -j ACCEPT
  # Allow SMB outbound.
  iptables -A INPUT  -p tcp --dport netbios-ns  -s $LOCAL_NET -m state --state
ESTABLISHED -j ACCEPT
  iptables -A INPUT  -p tcp --dport netbios-dgm -s $LOCAL_NET -m state --state
ESTABLISHED -j ACCEPT
  iptables -A INPUT  -p tcp --dport netbios-ssn -s $LOCAL_NET -m state --state
ESTABLISHED -j ACCEPT
  iptables -A OUTPUT -p tcp --dport netbios-ns  -s $LOCAL_NET -m state --state
NEW,ESTABLISHED -j ACCEPT
  iptables -A OUTPUT -p tcp --dport netbios-dgm -s $LOCAL_NET -m state --state
NEW,ESTABLISHED -j ACCEPT
  iptables -A OUTPUT -p tcp --dport netbios-ssn -s $LOCAL_NET -m state --state
NEW,ESTABLISHED -j ACCEPT

  ## AUTH server
  iptables -A INPUT  -p tcp --sport auth -s $LOCAL_NET -m state --state
ESTABLISHED -j ACCEPT
  iptables -A OUTPUT -p tcp --dport auth -d $LOCAL_NET -m state --state
NEW,ESTABLISHED -j ACCEPT
  # Reject ident probes with a tcp reset.
  # I need to do this for a broken mailhost that won't accept my mail if I
  # just drop its ident probe.
  iptables -A INPUT -p tcp --dport auth -j REJECT --reject-with tcp-reset

  ## TRACEROUTE
  # Outgoing traceroute anywhere.
  # The reply to a traceroute is an icmp time-exceeded which is dealt with
  # by the next rule.
  iptables -A OUTPUT -p udp --sport $TR_SRC_PORTS --dport $TR_DEST_PORTS -m
state --state NEW -j ACCEPT

  # ICMP 
  # We accept icmp in if it is "related" to other connections (e.g a time
  # exceeded (11) from a traceroute) or it is part of an "established"
  # connection (e.g. an echo reply (0) from an echo-request (8)).
  #PGR protect echo-requests against "The Ping of Death"
  iptables -A INPUT  -p icmp --icmp-type echo-request -m limit --limit 1/second
-j ACCEPT
  iptables -A INPUT  -p icmp -m state --state ESTABLISHED,RELATED -j ACCEPT
  # We always allow icmp out.
  iptables -A OUTPUT -p icmp -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
  ## =============================================

  ## FALL-THROUGH
  #PGR log/reject the rest
  iptables -A INPUT -j LOG --log-level notice -m limit --limit 40/minute
--log-prefix "firewall: "
  #PGR be nice to LAN processes
  iptables -A INPUT -s $LOCAL_NET -j REJECT
  iptables -A OUTPUT -j LOG --log-level notice -m limit --limit 40/minute
--log-prefix "firewall: "
  iptables -A OUTPUT -j REJECT
  #PGR default policy is DROP


  # list
  iptables -L -n >/var/log/iptables 
}
######################################################################
function off {
  # stop firewall
  echo "Firewall: disabling filtering (allowing all access)"
  echo "Are you sure?  Really sure?"
  iptables -F INPUT
  iptables -F OUTPUT
  iptables -P INPUT ACCEPT
  iptables -P OUTPUT ACCEPT
  iptables -P FORWARD ACCEPT
}
######################################################################
function stop {
  # stop all external connections
  echo "Firewall: stopping all external connections"
  iptables -F INPUT
  iptables -F OUTPUT
  iptables -P INPUT DROP
  iptables -P FORWARD DROP
  iptables -P OUTPUT DROP

  # allow anything over loopback
  iptables -A INPUT -i lo -j ACCEPT
  iptables -A OUTPUT -o lo -j ACCEPT

  iptables -A INPUT -j LOG --log-level notice -m limit --limit 40/minute
--log-prefix "firewall: "
  iptables -A OUTPUT -j LOG --log-level notice -m limit --limit 40/minute
--log-prefix "firewall: "
  #PGR be nice to local network processes
  iptables -A INPUT -s $LOCAL_NET -j REJECT
  iptables -A OUTPUT -j REJECT
}
######################################################################

case "$1" in
    start)
 on
    ;;
    stop)
 stop
    ;;
    off)
 off
    ;;
    *)
 echo "$0 {start|stop|off}"
 echo "Start establishes all filtering rules"
 echo "Off disables all filtering!"
 echo "Stop disables all non-loopback connections"
    ;;
esac

echo "$0: Done."


Paul Rogers, paulgrogers@yahoo.com                       -o)
http://www.angelfire.com/or/paulrogers                   /\\
Rogers' Second Law: Everything you do communicates.     _\_V

... We learn from history that we do not learn from history.
___ MultiMail/MS-DOS v0.35

---
 * Origin: The Bare Bones BBS (1:105/360)