Node.js – make test

Ich habe gestern eine Abuse-Meldung erhalten, da mein Server zu kommunikativ war, hier ein kleiner Ausschnitt:

Sat Feb 2 18:09:57 2013 UDP 188.40.151.26 12346 => 6.147.249.44 1
Sat Feb 2 18:09:57 2013 UDP 188.40.151.26 12346 => 7.33.58.97 1
Sat Feb 2 18:09:57 2013 UDP 188.40.151.26 12346 => 7.61.7.102 1
Sat Feb 2 18:09:57 2013 UDP 188.40.151.26 12346 => 9.65.160.185 1
Sat Feb 2 18:09:57 2013 UDP 188.40.151.26 12346 => 9.76.42.149 1
Sat Feb 2 18:09:57 2013 UDP 188.40.151.26 12346 => 9.137.171.216 1
Sat Feb 2 18:09:57 2013 UDP 188.40.151.26 12346 => 10.131.57.33 1

Eigentlich bin ich mit mir unbekannter Software und besonders Quellen sehr vorsichtig, aber da ich github als Quelle gewissen Vertrauen gegenueber bringe, habe mir dabei nichts gedacht, als ich erst das Configure-Script gestartet haben und dann mit make das kompilieren los ging. Als das fertig war, habe ich zur Sicherheit noch ein make test gemacht und die Geschwätzigkeit ging los.
Ich konnte das auch auf einer weiteren sauberen VM nachproduzieren.

Ich möchte jetzt keine voreiligen Schlüssen ziehen, aber ich glaube das soll nicht so sein.

Update: 06. Februar 2013 – 16:50

Ich habe vor zwei Tagen dazu etwas in der nodejs google group gepostet, aber noch keine Antwort gekriegt. Hier einmal ein kleiner Wireshark Mitschnitt, von dem was passiert ist: Node.js – Cap File

Ich habe es heute auch nochmal wiederholt und sehe wieder deutlich in Wireshark, dass beim test mehr gemacht wird, als es eigentlich sollte. Nochmal ein kleiner Ausschnitt, wer hier so angesprochen wird:

Ich finde auch interessant, was der Port 1 ueberhaupt ist: TCP Port Service Multiplexer. Vorallem den kurzen Abschnitt mit dem Sicherheitsrisiko kann ich sehr nachvollziehen.

Mal schauen, ob ich noch rauskriege, was dort eigentlich getestet wird…

Update: 07. Februar 2013 – 21:20

Ich hatte noch eine zweite Nachricht an die Mailing-Liste geschrieben und jetzt auch zwei gute Antworten erhalten, was ich prüfen könnte:

  • 1) python oder ein anderes Tool ist schuld
  • 2) einfach mal in den source-code schauen
  • 3) sind die Checksummen ok

1) kann ich mir nicht vorstellen, da ich sonst keine fremden Quellen benutze
3) habe ich geprüft, die stimmten auch alle

Dann habe ich mir die Tests nochmal genauer angesehen und ENDLICH den Übeltäter gefunden.
Es gibt ein Test namens „test-dgram-send-error.js“, dieser sendet an 1000 zufällige IPs Anfragen in der Annahme, dass diese unerreichbare Hosts sind um dann das Error-Handling zu testen.
Aber aufgrund von IPv4-Knappheit sind diese gar nicht so unerreichbar.
Bei einer kleinen Stichprobe waren viele Hosts unter dieser IP zu erreichen und es waren auch sehr viele statische IP-Adressen dabei.
Und diesen Versenden von 1000-Anfragen an viele existierenden Adressen innerhalb von einer Sekunde hat den Abuse bei meinem Server ausgelöst.

RÄTSEL GELÖST !

Hinterlasse eine Antwort

Deine Email-Adresse wird niemals veröffentlicht. Pflichtfelder sind mit * gekennzeichnet.