Wie Problemumgehung im Abschnitt "Beschränkungen, die auf Raw-Sockets unter Windows 7?

Baue ich einen TCP-Protokoll-fuzzing-software unter Windows 7. Ich möchte zu senden, selbst erstellte TCP-Pakete über Raw-Sockets. Aber es scheint, dass Microsoft dies verbieten aus Sicherheitsgründen. (http://msdn.microsoft.com/en-us/library/windows/desktop/ms740548(v=vs. 85).aspx)

Ich weiß WinPcap können auch senden Sie benutzerdefinierte Pakete. Aber ich will nicht bauen, die ein Datenpaket vom Ethernet-Ebene. Die Parameter für Ethernet und IPv4 sind so Komplex und drive me crazy. Ich kümmert sich nur um die TCP oben genannten Teile. Gibt es irgendwelche Lösungen zu umgehen? Alles was ich denken kann, ist mein Win7 auf Windows 2008 R2, aber es ist ein großes Projekt zu tun. Ich hoffe es gibt bessere Möglichkeiten?

  • Was ist die motivation, dies zu tun?
  • Sie wissen-Protokoll-fuzzing? Ich arbeite für eine Netzwerk-Gerät-test-Organisation, die zum testen der Robustheit der Protokoll-stack für Router, switch und so weiter. Ich fast mit allem fertig und Protokoll-stack (ethernet, IP, UDP, HTTP und so weiter) außer TCP. So wissen Sie, es ist für den guten Zweck. Und ich weiß nicht, warum Microsoft diese einschränken.
  • Ein IP-Paket ist 1024 bytes. 1K. Der TCP-Teil ist ein kleiner Bruchteil davon. Ich nehme an, Sie tun nicht müssen zu gehen, um den Netzwerk-layer. Warum also nicht die harten Sachen, und erstellen Sie software für den Antrieb der ethernet-Karte zu produzieren die richtigen Daten. Verwenden Sie einen Netzwerk-Analysator, check it out.
  • Ich habe nicht fangen Ihre Bedeutung sehr viel, die fuzzing-deterministisch ist von meinem Chef. Nur die Analyse von einem Netzwerk-Analysator scheint nicht genug?
  • Sie generieren möchten, TCP-Pakete, die sowohl gültige als auch ungültige. TCP-Pakete sind IP-Pakete, mit ein bisschen geschraubt. So müssen Sie die ethernet-Karte zu liefern, die IP-Pakete mit ungültigen TCP-Pakete. IP bit wird gültig, an dieser Stelle. Um sicher zu sein, oder generieren die richtigen Daten, die Sie brauchen, um zu schnuppern die Kabel. Ein Netzwerk-Analysator ist am besten, aber ein s/w anayser ausreichen könnte
  • Microsoft hat eine Menge flak für die Unterstützung von raw-sockets auf der desktop-version von Windows. Es wurde weithin missbraucht. Damit Sie deaktiviert es wieder. Sie wissen schon, was Sie tun müssen, sprechen Sie mit Ihrem Chef zu bekommen, die Ressourcen, die Sie benötigen. Hohe Ziele, will niemand gestört werden kleine Anfragen, Fragen für ein MSDN-Abonnement.
  • Hier ist das problem. Microsoft verbieten die IP-Pakete der Auslieferung mit meiner ungültigen TCP-Header. Gibt es eine andere Möglichkeit direkt senden TCP-Header neben raw-sockets?
  • Du meinst die änderung der OS? Ich hab schon den Win2008 R2 iso. Es ist nicht eine Sache des Geldes. Nur weil ich so installiert, dass viele Software-und componments (VS6, VS2005, VS2008, VS2010, VS2012 und so weiter) in meinem aktuellen Win7. Es ist viel Schmerz für mich zu Migration dieser Umgebungen. Ich wünschte, es könnte einen besseren Weg geben, wie einen Schalter oder einen patch?
  • Wenn Sie bereit waren, sich zu ändern OS, Linux hat die volle raw-socket-support ohne Bibliotheken...
  • Ich Frage mich, warum Sie nicht verwenden WinPCap für raw-TCP-socket-Programmierung?

InformationsquelleAutor Yang Luo | 2014-03-22
Schreibe einen Kommentar