Ich empfehle dringend nmap, socat, lft und curl, wenn Sie Unix-Befehle für die Netzwerksicherheit lernen. Es gibt oft wenig Grund, diese Räder neu zu erfinden.
OpenVAS unterstützt eine netzwerkssicherheitsspezifische Skriptsprache namens NASL, obwohl sie ursprünglich aus dem Nessus-Tool stammt, in dem NASL auf CASL basiert (aus dem CyberCop-Scanner von Network Associates) ).
Viele HTTP / TLS-Fuzzers haben Unterstützung für Dinge wie Webdienste und andere leistungsstarke programmgesteuerte Steuerelemente hinzugefügt. Die coolen, die ich in letzter Zeit gesehen habe, sind Resty-Burp, Buby, WXF und Shrapnel.
Die Verwendung einer Paketerfassungs-App ist ebenfalls nützlich, sei es tcpdump, snort, Wireshark, Network Miner, oder HTTP Scoop.
Viele halten Lua, Python und Ruby für kurzfristige und vorläufige Netzwerksicherheitsprojekte für wesentlich besser als alle anderen Sprachen, obwohl die von Metasploit, wXf und watir-webdriver beschriebenen DSLs Machen Sie einen interessanten Fall, um Ruby MRI und JRuby gegenüber anderen zu unterstützen. Umgekehrt bietet Lua viel Unterstützung für filterbasierte Technologien wie Wireshark, Mod-Security und Snort (PCRE ist auch in diesen Technologien sehr häufig zu finden).
Zusammenfassend, wenn Sie gehen Um Code aus Netzwerksicherheitsprojekten zu ändern, werden Sie eher an ein C-Programm weitergeleitet, rufen jedoch eine in Ruby, Python oder Lua geschriebene Bibliothek oder Framework-Erweiterung auf. Wenn Sie sich auf das Senden von Datenverkehr (insbesondere HTTP oder Exploits) konzentrieren, ist Ruby die beste Wahl. Wenn Sie sich jedoch auf das Empfangen von Datenverkehr konzentrieren (insbesondere IDS oder Paketerfassung), ist Lua die beste Wahl. Ich habe gesehen, dass dpkt in Python während einer Prototyping-Phase sehr schnell einige erstaunliche Dinge erledigt.
Weitere Informationen finden Sie im Buch Codierung für Penetrationstester Material.