Seite 1 von 1
Verwendung von scapy
Verfasst: Montag 15. September 2008, 16:10
von partymungo
Hallo,
ich glaub ich stell mich gerade ein bisschen dumm an, aber irgenwie kriege ich "scapy" nicht ans rennen. Was ich getan habe:
1. Aktuelle scapy Version (2.0.0.9) heruntergeladen und entpackt
2. "./setup.py build" ausgeführt
3. "./scapy.py install" ausgeführt
So weit so gut. scapy kann von der Konsole gestartet und verwendet werden (ich habe mit den Beispielen aus der Quickdemo gearbeitet).
Aber wie kann ich scapy in eigenen python Skripten verwenden? Ich kann in der python Konsoloe "import scapy" oder "from scapy import *" fehlerfrei absetzen, aber dann komme ich nicht weiter.
schmeisst z.B. eine Fehlermeldung ("Traceback ... name 'IP' is not defined). Sollte nicht irgendwo ein "scapy.py" existieren welches dann im lokalen Skriptverzeichnis liegen muss? Ich bin verwirrt ....
Ich verwende openSUSE 10.3 (32 und 64 Bit)
Bin für jeden Tip dankbar.
Verfasst: Montag 15. September 2008, 16:13
von n4p
Hallo partymungo,
ich kenne zwar scapy nicht aber nichts desto trotz:
müsste es nicht
heißen?
Verfasst: Montag 15. September 2008, 16:47
von Y0Gi
Hier tut's einwandfrei, sowohl innerhalb der Scapy- als auch der Python-Shell (bei Letzterer aber mit vorhergehendem Import, sowohl über den Namespace als auch mit ``*``).
Nach dem ``*``-Import könntest du mal den Output von ``for x in sorted(dir()): print x`` auf Scapy-Objekte untersuchen.
Klingt für mich irgendwie danach als hättest du selbst eine Datei namens ``scapy.py`` erstellt und willst darin Scapy importieren, welches dann aber bereits durch den Python-Pfad "abgehängt" wurde und nicht mehr erreichbar ist.
Verfasst: Dienstag 16. September 2008, 09:04
von partymungo
Hallo,
erst mal vielen Dank für die schnellen Antworten.
@n4p:
Du hast natürlich recht, so hatte ich es in der python-Konsole auch probiert.
Meldung: "AttributeError: 'module' object has no attribute 'IP'"
Die TAB Erweiterung auf "scapy." liefert mir die folgende Objektliste:
scapy.__class__
scapy.__dict__
scapy.__file__
usw.
Leider weiss ich nicht wie ich diese verwenden kann.
@YOGi:
Nach dem ``*`` Import liefert mir der print die folgende Liste:
__builins__
__doc__
__file__
__name__
Mehr nicht. Ich selbst habe kein Skript mit dem Namen "scapy.py" angelegt. "scapy.py" kann im gesamten System nicht gefunden werden.
Sollte nach der Installation (./setup.py install) nicht unter "/usr/lib/python2.5/site-packages" irgendwas von scapy installiert sein? Muss nach der Installation noch ein Pfad angepasst werden?
Danke für eure Hilfe
Verfasst: Dienstag 16. September 2008, 09:31
von Leonidas
Du hast ja auch nicht ``python setup.py install`` gemacht sondern ``python scapy.py install`` gemacht, wie soll das dann auch gehen?
Verfasst: Dienstag 16. September 2008, 11:37
von partymungo
Hallo Leonidas,
ich habe als root im Verzeichnis "/home/name/scapy-2.0.0.9" die folgenden Befehle ausgeführt: "./setup.py build" und " ./setup.py install"
Der install gibt mir folgende Ausgaben zurück:
#### Schnipp ####
running install
running buil
running buil_py
running build_scripts
running_install_lib
running_install_scripts
changing mode of /usr/local/bin/scapy to 775
changing mode of /usr/local/bin/UTscapy to 775
running install_data
running install_egg_info
Removing /usr/local/lib/python2.5/site-packages/scapy-2.0.0.9-py2.5.egg-info
Writing /usr/local/lib/python2.5/site-packages/scapy-2.0.0.9-py2.5.egg-info
#### Schnapp ####
Gleiches Verhalten zeigt der Aufruf von "python setup.py install".
Verfasst: Dienstag 16. September 2008, 11:41
von Leonidas
Was hast du denn in site-packages für Dateien/Ordner. Hast du dort Scapy-relevantes drin liegen?
Verfasst: Dienstag 16. September 2008, 11:55
von partymungo
Hallo Leonidas,
danke für die schnelle Antwort.
Unter "/usr/local/lib/python2.5/site-packages" liegt der Ordner "scapy" (root root 755) und eine Datei mit Namen "scapy-2.0.0.9-py2.5.egg-info" (root root 644). Im Ordner "scapy" liegen dann jeden Menge ".py" und ".pyc" Dateien sowie die Verzeichnisse "arch", "asn1", "layers", "modules" und "tools".
Unter "/usr/lib/python2.5/site-packages" liegen keine scapy relevanten Daten (hier liegen aber andere zusätliche Module wie z.B. numpy, matplotlib etc.). Kopieren der scapy relevanten Daten an diese Stelle hab ich schon ausprobiert, zeigt aber auch keine Wirkung.
Verfasst: Donnerstag 18. September 2008, 17:13
von Y0Gi
Hast du vielleicht setuptools gar nicht installiert, so dass er mit dem Egg in den site-packages gar nichts anfangen kann? Wobei dann eigentlich die Installation schon fehlgeschlagen hätte haben sollen tun gehabt hat.
Re: Verwendung von scapy
Verfasst: Montag 22. September 2008, 16:47
von lobo
partymungo hat geschrieben:
...
Aber wie kann ich scapy in eigenen python Skripten verwenden? Ich kann in der python Konsoloe "import scapy" oder "from scapy import *" fehlerfrei absetzen, aber dann komme ich nicht weiter.
...
Hi,
in Scapy 2.x wurde die API verändert (1). Hier ist ein kleines Beispiel, wie du Scapy in eigenen Skripten verwenden kannst:
Code: Alles auswählen
#! /usr/bin/env python
from scapy.all import *
if __name__ == "__main__":
interact(mydict=globals(), mybanner="My FooBar Addon 0.1")
Leider wird das noch nicht auf der eigentlichen Homepage erwähnt. Man findet die Infos nur auf der Mailingliste, im Mercurial Changelog oder im
Trac.
Gruss
Jochen
1.)
http://trac.secdev.org/scapy/wiki/migrations
Verfasst: Mittwoch 1. Oktober 2008, 15:30
von partymungo
Hi,
vielen Dank für die Tips ... mit
"from scapy import all as scapy"
läufts.
Verfasst: Mittwoch 1. Oktober 2008, 16:22
von lobo
Zur Vollständigkeit. Kürzlich gab es auch eine Info auf der Mailinglist, dass an einer Doku gearbeitet wird.
http://article.gmane.org/gmane.comp.sec ... neral/3252
--
Hi,
I have integrated some of the existing documentation for Scapy into a
single manual:
HTML:
http://dirk-loss.de/scapy-doc/
PDF:
http://dirk-loss.de/scapy-doc/Scapy.pdf (75 pages)
Both versions are automatically generated from the same sources using
the Sphinx documentation toolchain <
http://sphinx.pocoo.org/>.
The HTML version has a nice interactive search feature.
Most of the content had already been written by Philippe Biondi and
Fred Raynal. Kudos to them for allowing me to use their docs under a
Creative Commons Attribution-Noncommercial-ShareAlike license.
(If anybody is missing in the Credits, please let me know.)
I consider this an alpha release. But I guess it could be useful
already. If you like to contribute, fix errors or add interesting stuff,
here's the source code (including the old LaTeX docs):
$ hg clone
http://hg.secdev.org/scapydoc
Any feedback is appreciated.
Regards
Dirk
--