2009-12-17 6 views
6

Ich habe gelesen, dass mehrere Browser-Plugins UDP-Sockets unterstützen (zB Java, Unity), aber das beliebteste Plugin, Flash, unterstützt keine UDP-Sockets !? Und auch nicht mein Liebling, Silverlight.Warum implementiert Silverlight oder Flash keine UDP-Sockets?

Jetzt weiß ich, dass Silverlight 4.0 Beta Multicast UDP-Sockets hat, aber diese sind nutzlos im öffentlichen Internet, wo ich die Sachen, die ich für eine In-Browser-Anwendung erstellen möchte. Und ich weiß, dass Flash 10 RTMFP hat, aber das funktioniert nicht als UDP-Unicast-Socket.

Also habe ich einige Theorien gehört, dass UDP ein Sicherheitsrisiko ist, aber ich verstehe nicht wirklich, wie es ein Risiko ist, dass TCP, oder wie ein Policy Server das Risiko nicht entlastet. Bitte erklären Sie mir, was hier vor sich geht. Vielen Dank.

Antwort

5

Der gefährliche Teil von UDP ist, dass es im Gegensatz zu TCP/IP keinen Handshake durchführt. Effektiv bedeutet dies, dass eine Angriffs-App erstellt werden könnte, die ein lokales Netzwerk mit UDP-Paketen überflutet. Ich denke, es wäre schwierig, eine Richtlinie zu erstellen, die den Unterschied zwischen einer Angriffs-App und einem legitimen Sprach-/Videostream erkennen lässt. Stellen Sie sich diesen Angriff innerhalb des Netzwerks vor: http://en.wikipedia.org/wiki/UDP_flood_attack. Selbst wenn Sie die ausgehende IP-Adresse als Filter verwenden würden, hätte der externe Server keine Probleme, die Flut einfach zu ignorieren, da es keine Richtlinien gibt, die die Überwachung erzwingen. Der externe Server muss überhaupt nichts zurücksenden, nur nette Boxen senden ICMP-Fehler zurück.

Ich denke auch, es könnte einige ziemlich kreative Möglichkeiten geben, eine Firewall zu überwältigen, die UDP-Traversal unterstützt.

Ein Proxy-Server kann aus Sicherheitsgründen verwendet werden, um UDP in TCP zu konvertieren. Es ist jedoch nur für Enterprise-Apps kostengünstig.

+1

Ja, in der Tat ist dies wahrscheinlich die Hauptsorge von Adobe. Ich habe lange darüber nachgedacht, warum Adobe so viel Verantwortung übernimmt (anstatt die Community von Content-Produzenten und Konsumenten entscheiden zu lassen), indem es einfach die gewünschten Features aus Angst vor ... ah auslässt - natürlich wird jeder die Schuld geben Adobe (das machen wir). Wie auch immer, warum töten wir nicht einfach UDP im Internet? Immerhin erlaubt es Hochwasserangriffe ;-) Die Ironie spüren? Ich sage nicht, dass du falsch liegst, in der Tat ist deine Antwort absolut stichhaltig und erklärend. – amn