Joe Shaw wrote:
I had a customers link go down because they were the target of a smurf
attack a few weeks ago, and when I was sniffing the link to find out what
was going on, I found tons of packets coming from root nameservers, .gov
sites, and other places. If I hadn't been at a terminal, I'd have done a
better job of logging them when it happened. As it stands, I just turned
off ICMP into my routers for a few hours and all was well. What I would
have given to have had a dedicated sniffer so I could have done a better
job of logging.
Although this could double the load on routers, I think this could still
be a valuable feature on the Internet, if all routers had it. There do
remain some technical problems with it that need to be worked out, but
I hope you can see what I am getting at, and maybe with that idea in mind
a way can be found to make this work.
When a packet arrives, take note of the interface and gateway it came from.
Check the route tables for where a reply to this packet could be delivered.
Don't choose only the best route, but compare where the packet came from
with all valid reply routes (except broad defaults larger than a certain
size that can be configured). If the packet came from where it is valid
to reply, then allow the packet to proceed. If not, then discard it (an
ICMP probably won't make it back to the right place anyway).
Those who are faking source addresses will have a tougher time when such
a feature in place throughout the net. At some point their packets are
being injected invalidly, and if the router there is doing this, it can
discard the attempt.
One problem could be in layer 3 switches which might have only the best
route. It would then not handle an asymmetric situation. Switch logic
would have to be extended to handle more than one return route if the switch
is to perform this chore.
Any other ideas on eliminating smurfing and spoofing and such?