Skip to content

ct-Open-Source/asiopy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Asynchroner I/O mit Python

In diesem Repository finden Sie den in c’t besprochenen Python-Code: 1.py, 2.py, 3.py und 4.py spiegeln die Entwicklungsschritte wider, nanodirb.py ist der abgedruckte rudimentäre Dirb-Klon und dirb.py die asynchron funktionierende Nachimplementierung (nicht 1:1) des originalen Dirb.

Vorbereiten

git clone https://github.com/ct-Open-Source/asiopy.git
cd asiopy
pipenv install

Benutzen

Zum Beispiel:

pipenv run ./dirb.py "http://example.com" \
  -w path-list1.txt -w path-list2.txt \
  -n 10
  -f \
  --csv \
  -o scan-result.csv

Wobei http://example.com die Basis-URL des zu scannenden Dienstes ist. Die Pfade in den mit -w angegebenen Dateien (ein Pfad pro Zeile) werden beim Scannen an die Basis-URL angehängt.

Der Schalter -n gibt an, wie viel Worker parallel arbeiten sollen, also wie viel Scanvorgänge gleichzeitig ablaufen sollen (Vorgabe: 10).

Mit dem Schalter --csv produziert das Skript eine Ausgabe im CSV-Format, die sich zum Einlesen in Tabellenkalkulationen eignet.

Für manche URLs liefern Webserver einen Redirect zurück (HTTP-Status-Code 301 oder 302). Ohne den Schalter -f empfängt das Skript nur den Redirect, mit dem Schalter folgt es ihm zu der URL, auf die der Redirect umleitet.

Per Default landen die Ergebnisse in der Standardausgabe. Der Schalter -o lenkt sie in eine Datei um.

Die Eingabe von dirb.py -h listet alle möglichen Kommandozeilenoptionen auf.

Lizenz

Siehe LICENSE

Copyright

Copyright ©️ 2023 Oliver Lau, Heise Medien GmbH & Co. KG

Nutzungshinweise

Diese Software wurde zu Lehr- und Demonstrationszwecken geschaffen und ist nicht für den produktiven Einsatz vorgesehen. Heise Medien und der Autor haften daher nicht für Schäden, die aus der Nutzung der Software entstehen, und übernehmen keine Gewähr für ihre Vollständigkeit, Fehlerfreiheit und Eignung für einen bestimmten Zweck.

Releases

No releases published

Packages

No packages published

Languages