Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
pyt — Ein statisches Analysetool zur Erkennung von Sicherheitsschwachstellen in Python-Webanwendungen | Kitploit
Tools/GitHubGitHub/python-security/pyt
Statische AnalyseStatische Code-Analyse (SAST)SchwachstellenanalyseCode-AnalyseWebsicherheit
GitHubpython-security/pyt

pyt

Ein statisches Analysetool zur Erkennung von Sicherheitsschwachstellen in Python-Webanwendungen

Repository anzeigen
2.2k246vor 5 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

.. image:: https://travis-ci.org/python-security/pyt.svg?branch=master :target: https://travis-ci.org/python-security/pyt

.. image:: https://readthedocs.org/projects/pyt/badge/?version=latest :target: http://pyt.readthedocs.io/en/latest/?badge=latest

.. image:: https://codeclimate.com/github/python-security/pyt/badges/coverage.svg :target: https://codeclimate.com/github/python-security/pyt/coverage

.. image:: https://badge.fury.io/py/python-taint.svg :target: https://badge.fury.io/py/python-taint

.. image:: https://img.shields.io/badge/PRs-welcome-ff69b4.svg :target: https://github.com/python-security/pyt/issues?utf8=%E2%9C%93&q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22+

.. image:: https://img.shields.io/badge/python-v3.6-blue.svg :target: https://pypi.org/project/python-taint/

.. image:: https://img.shields.io/badge/Donate-Charity-orange.svg :target: https://www.againstmalaria.com/donation.aspx

Dieses Projekt wird nicht mehr gewartet

März 2020 Update: Bitte schauen Sie sich das großartige Pysa tutorial_ an, das Sie auf den neuesten Stand bringt, um Sicherheitslücken in Ihrer Python-Codebasis zu finden.

Pyre_ von Facebook ist ein fantastisches Projekt mit einer vielversprechenden Zukunft und vielen klugen Leuten, die daran arbeiten. Ich empfehle, falls Sie sich nicht so gut mit Programmanalyse auskennen, dass Sie verstehen, wie PyT funktioniert, bevor Sie in Pyre eintauchen. Neben den README's in most directories_ gibt es die originale Master's Thesis_ und some slides_. Trotzdem: Ich freue mich über Pull-Requests und gebe Ihnen Schreibrechte, wenn Sie mehr als ein paar beisteuern.

Es gab viele großartige Mitwirkende an diesem Projekt. Ich plane, in Zukunft an anderen Projekten wie detect-secrets_ und anderen (z. B. irgendwann Pyre) zu arbeiten, falls Sie weiterhin zusammenarbeiten möchten :)

Wenn Sie ein Sicherheitsingenieur sind und z. B. eine Python-Codebasis ohne Typannotationen haben, die Pyre nicht verarbeitet, empfehle ich Ihnen, Ihre Senken durch einen sicheren Wrapper (wie defusedxml) zu ersetzen und auf jede Verwendung der Standardsenke zu achten. Sie können Bandit dafür verwenden, da keine Datenflussanalyse erforderlich ist, aber Sie werden es stark kürzen müssen, aufgrund der hohen Falsch-Positiv-Rate.

.. _Pysa tutorial: https://github.com/facebook/pyre-check/tree/master/pysa_tutorial#pysa-tutorial .. _Pyre: https://github.com/facebook/pyre-check .. _README's in most directories: https://github.com/python-security/pyt/tree/master/pyt#how-it-works .. _Master's Thesis: https://projekter.aau.dk/projekter/files/239563289/final.pdf .. _some slides: https://docs.google.com/presentation/d/1JfAykAxR0DcJwwGfHmhrz1RhhKqYsnt5x_GY8CbTp7s .. _detect-secrets: https://github.com/Yelp/detect-secrets/blob/master/CHANGELOG.md#whats-new .. _defusedxml: https://pypi.org/project/defusedxml/ .. _Bandit: https://github.com/PyCQA/bandit

Python Taint

Statische Analyse von Python-Webanwendungen basierend auf theoretischen Grundlagen (Kontrollflussgraphen, Fixpunktberechnung, Datenflussanalyse)


Funktionen

  • Erkennen von Command Injection, SSRF, SQL Injection, XSS, Directory Traversal usw.

  • Umfangreiche Anpassungsmöglichkeiten

Für einen Überblick über die letzten Änderungen, siehe bitte den changelog_.

.. _changelog: https://github.com/python-security/pyt/blob/master/CHANGELOG.md

Beispielnutzung und Ausgabe:

.. image:: https://raw.githubusercontent.com/KevinHock/rtdpyt/master/readme_static_files/pyt_example.png

Installation

Stellen Sie vor dem Fortfahren sicher, dass Python 3.6 oder 3.7 installiert ist.

.. code-block:: python

root@kitploit:~
pip install python-taint
✨🍰✨

PyT kann auch aus dem Quellcode installiert werden. Klonen Sie dazu das Repository und führen Sie dann aus:

.. code-block:: python

python3 setup.py install

So funktioniert es

Bald finden Sie eine README.rst_ in jedem Verzeichnis des Ordners pyt/, start here_.

.. _README.rst: https://github.com/python-security/pyt/tree/master/pyt .. _start here: https://github.com/python-security/pyt/tree/master/pyt

Verwendung

  1. Wählen Sie ein Web-Framework

Die Option -a legt fest, welche Funktionen ihre Argumente als kontaminiert betrachten_, standardmäßig ist es Flask.

  1. (optional) Passen Sie Quell- und Senkeninformationen an

Verwenden Sie die Option -t, um Quellen und Senken anzugeben, standardmäßig wird diese Datei verwendet_.

  1. (optional) Passen Sie an, welche Bibliotheksfunktionen die Kontamination weitergeben

Für Funktionen aus Builtins oder Bibliotheken, z. B. url_for oder os.path.join, verwenden Sie die Option -m, um festzulegen, ob bei kontaminierten Eingaben kontaminierte Werte zurückgegeben werden, standardmäßig wird diese Datei verwendet_.

.. _Die Option -a legt fest, welche Funktionen ihre Argumente als kontaminiert betrachten: https://github.com/python-security/pyt/tree/master/pyt/web_frameworks#web-frameworks .. _diese Datei verwendet: https://github.com/python-security/pyt/blob/master/pyt/vulnerability_definitions/all_trigger_words.pyt .. _diese Datei verwendet: https://github.com/python-security/pyt/blob/master/pyt/vulnerability_definitions/blackbox_mapping.json

Nutzung

.. code-block::

usage: python -m pyt [-h] [-a ADAPTOR] [-pr PROJECT_ROOT] [-b BASELINE_JSON_FILE] [-j] [-t TRIGGER_WORD_FILE] [-m BLACKBOX_MAPPING_FILE] [-i] [-o OUTPUT_FILE] [--ignore-nosec] [-r] [-x EXCLUDED_PATHS] [--dont-prepend-root] [--no-local-imports] targets [targets ...]

required arguments: targets source file(s) or directory(s) to be scanned

important optional arguments: -a ADAPTOR, --adaptor ADAPTOR Choose a web framework adaptor: Flask(Default), Django, Every or Pylons

root@kitploit:~
-t TRIGGER_WORD_FILE, --trigger-word-file TRIGGER_WORD_FILE
                      Input file with a list of sources and sinks

-m BLACKBOX_MAPPING_FILE, --blackbox-mapping-file BLACKBOX_MAPPING_FILE
                          Input blackbox mapping file

optional arguments: -pr PROJECT_ROOT, --project-root PROJECT_ROOT Add project root, only important when the entry file is not at the root of the project.

root@kitploit:~
-b BASELINE_JSON_FILE, --baseline BASELINE_JSON_FILE
                      Path of a baseline report to compare against (only
                      JSON-formatted files are accepted)

-j, --json            Prints JSON instead of report.

-i, --interactive     Will ask you about each blackbox function call in
                      vulnerability chains.

-o OUTPUT_FILE, --output OUTPUT_FILE
                      Write report to filename

--ignore-nosec        Do not skip lines with # nosec comments

-r, --recursive       Find and process files in subdirectories

-x EXCLUDED_PATHS, --exclude EXCLUDED_PATHS
                      Separate files with commas

--dont-prepend-root   In project root e.g. /app, imports are not prepended
                      with app.*

--no-local-imports    If set, absolute imports must be relative to the
                      project root. If not set, modules in the same
                      directory can be imported just by their names.

Nutzung aus dem Quellcode

Verwendung wie ein Benutzer: python3 -m pyt examples/vulnerable_code/XSS_call.py

Ausführen der Tests: python3 -m tests

Ausführen einer einzelnen Testdatei: python3 -m unittest tests.import_test

Ausführen eines einzelnen Tests: python3 -m unittest tests.import_test.ImportTest.test_import

Beiträge

Tretten Sie unserer Slack-Gruppe bei: https://pyt-dev.slack.com/ - Fragen Sie nach einer Einladung: [email protected]

Guidelines_

.. _Guidelines: https://github.com/python-security/pyt/blob/master/CONTRIBUTIONS.md

Anleitung zur Einrichtung der virtuellen Umgebung

Erstellen Sie ein Verzeichnis für die virtuelle Umgebung und das Projekt

mkdir ~/a_folder

cd ~/a_folder

Klonen Sie das Projekt in das Verzeichnis

git clone https://github.com/python-security/pyt.git

Erstellen Sie die virtuelle Umgebung

python3 -m venv ~/a_folder/

Überprüfen Sie, ob Sie die richtigen Versionen haben

python3 --version Beispielausgabe Python 3.6.0

pip --version Beispielausgabe pip 9.0.1 from /Users/kevinhock/a_folder/lib/python3.6/site-packages (python 3.6)

Wechseln Sie in das Projektverzeichnis

cd pyt

In Zukunft geben Sie einfach source ~/a_folder/bin/activate ein, um mit der Entwicklung zu beginnen.

Tool herunterladen