複数のソケットが同じポートへのバインドを許可されている場合、そのポート上の他のサービスが盗まれたり、なりすまされたりする可能性がある。
ほとんどのシステムでは、SO_REUSEADDRソケットオプションの設定とbind()の呼び出しを組み合わせると、以前のプロセスがINADDR_ANYでバインドしたポートに任意のプロセスがバインドできるようになる。これにより、ユーザーは INADDR_ANY でバインドされたサーバーの特定のアドレスに特権のないポートでバインドし、その UDP パケット/TCP 接続を盗むことができる。
When multiple sockets are allowed to bind to the same port, other services on that port may be stolen or spoofed.
On most systems, a combination of setting the SO_REUSEADDR socket option, and a call to bind() allows any process to bind to a port to which a previous process has bound with INADDR_ANY. This allows a user to bind to the specific address of a server bound to INADDR_ANY on an unprivileged port, and steal its UDP packets/TCP connection.