Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
pyt — أداة تحليل ثابتة لكشف الثغرات الأمنية في تطبيقات الويب بلغة بايثون | Kitploit
أدوات/GitHubGitHub/python-security/pyt
التحليل الثابتتحليل الشفرة الثابت (SAST)تحليل الثغرات الأمنيةتحليل الكودأمن الويب
GitHubpython-security/pyt

pyt

أداة تحليل ثابتة لكشف الثغرات الأمنية في تطبيقات الويب بلغة بايثون

عرض المستودع
2.2k246منذ 5 سنواتتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

.. 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

هذا المشروع لم يعد مدعومًا

تحديث مارس 2020: يرجى الاطلاع على Pysa tutorial_ الرائع الذي سيساعدك على البدء في اكتشاف الثغرات الأمنية في قاعدة كود Python الخاصة بك.

Pyre_ من Facebook هو مشروع رائع له مستقبل مشرق ويعمل عليه الكثير من الأشخاص الأذكياء. أقترح، إذا كنت لا تعرف الكثير عن تحليل البرامج، أن تفهم كيف يعمل PyT قبل الغوص في Pyre. إلى جانب ملفات README في معظم المجلدات، هناك رسالة الماجستير الأصلية و بعض الشرائح_. مع ذلك، أنا سعيد بمراجعة طلبات السحب وسأمنحك أذونات الكتابة إذا قمت بأكثر من بضع مساهمات.

كان هناك العديد من المساهمين الرائعين في هذا المشروع، وأخطط للعمل على مشاريع أخرى مثل detect-secrets_ وغيرها (مثل Pyre لاحقًا) في المستقبل إذا كنت ترغب في العمل معًا أكثر :)

إذا كنت مهندس أمن ولديك قاعدة كود Python بدون تعليقات توضيحية للنوع، والتي لن يتعامل معها Pyre، أقترح عليك استبدال نقاط الاستقبال (sinks) الخاصة بك بغلاف آمن (شيء مثل defusedxml)، والتنبيه على أي استخدام للنقاط القياسية. يمكنك استخدام Bandit للقيام بذلك حيث أن تحليل تدفق البيانات غير مطلوب، ولكن سيتعين عليك تقليمه كثيرًا بسبب معدل الإيجابيات الخاطئة العالي.

.. _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

تحليل ثابت لتطبيقات Python على الويب بناءً على أسس نظرية (رسوم بيانية لتدفق التحكم، نقطة ثابتة، تحليل تدفق البيانات)


الميزات

  • اكتشاف حقن الأوامر، SSRF، حقن SQL، XSS، اجتياز الدليل وغيرها.

  • إمكانية تخصيص كبيرة

للاطلاع على التغييرات الأخيرة، يرجى الاطلاع على سجل التغييرات_.

.. _سجل التغييرات: https://github.com/python-security/pyt/blob/master/CHANGELOG.md

مثال على الاستخدام والإخراج:

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

التثبيت

قبل المتابعة، تأكد من تثبيت Python 3.6 أو 3.7.

.. code-block:: python

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

يمكن أيضًا تثبيت PyT من المصدر. للقيام بذلك، قم باستنساخ المستودع، ثم قم بتشغيل:

.. code-block:: python

python3 setup.py install

كيف يعمل

ستجد قريبًا README.rst_ في كل مجلد داخل مجلد pyt/، ابدأ من هنا_.

.. _README.rst: https://github.com/python-security/pyt/tree/master/pyt .. _ابدأ من هنا: https://github.com/python-security/pyt/tree/master/pyt

كيفية الاستخدام

  1. اختر إطار عمل ويب

يحدد الخيار -a الوظائف التي سيتم تلويث وسائطها_، الافتراضي هو Flask.

  1. (اختياري) تخصيص معلومات المصدر ونقطة الاستقبال

استخدم الخيار -t لتحديد المصادر ونقاط الاستقبال، افتراضيًا يتم استخدام هذا الملف_.

  1. (اختياري) تخصيص وظائف المكتبة التي تنشر التلوث

بالنسبة لوظائف من المكتبات المضمنة أو المكتبات، مثل url_for أو os.path.join، استخدم الخيار -m لتحديد ما إذا كانت تُرجع قيمًا ملوثة عند إدخال قيم ملوثة، افتراضيًا يتم استخدام هذا الملف_.

.. _يحدد الخيار -a الوظائف التي سيتم تلويث وسائطها: https://github.com/python-security/pyt/tree/master/pyt/web_frameworks#web-frameworks .. _يتم استخدام هذا الملف: https://github.com/python-security/pyt/blob/master/pyt/vulnerability_definitions/all_trigger_words.pyt .. _يتم استخدام هذا الملف: https://github.com/python-security/pyt/blob/master/pyt/vulnerability_definitions/blackbox_mapping.json

الاستخدام

.. 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.

الاستخدام من المصدر

استخدامه كمستخدم python3 -m pyt examples/vulnerable_code/XSS_call.py

تشغيل الاختبارات python3 -m tests

تشغيل ملف اختبار فردي python3 -m unittest tests.import_test

تشغيل اختبار فردي python3 -m unittest tests.import_test.ImportTest.test_import

المساهمات

انضم إلى مجموعة Slack الخاصة بنا: https://pyt-dev.slack.com/ - اطلب دعوة: [email protected]

إرشادات_

.. _إرشادات: https://github.com/python-security/pyt/blob/master/CONTRIBUTIONS.md

دليل إعداد البيئة الافتراضية

قم بإنشاء مجلد يحتوي على البيئة الافتراضية والمشروع

mkdir ~/a_folder

cd ~/a_folder

قم باستنساخ المشروع داخل المجلد

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

قم بإنشاء البيئة الافتراضية

python3 -m venv ~/a_folder/

تأكد من أن لديك الإصدارات الصحيحة

python3 --version مثال على الإخراج Python 3.6.0

pip --version مثال على الإخراج pip 9.0.1 from /Users/kevinhock/a_folder/lib/python3.6/site-packages (python 3.6)

انتقل إلى مجلد المشروع

cd pyt

في المستقبل، اكتب فقط source ~/a_folder/bin/activate لبدء التطوير.

تنزيل الأداة