Table des matières
回复内容:
Maison développement back-end Tutoriel Python GitHub 上有哪些安全相关的 Python 项目值得一读?

GitHub 上有哪些安全相关的 Python 项目值得一读?

Jun 06, 2016 pm 04:23 PM
web

包括但不限于binary web

回复内容:

网络

Scapy: send, sniff and dissect and forge network packets. Usable interactively or as a library

pypcap, Pcapy and pylibpcap: several different Python bindings for libpcap

libdnet: low-level networking routines, including interface lookup and Ethernet frame transmission

dpkt: fast, simple packet creation/parsing, with definitions for the basic TCP/IP protocols

Impacket: craft and decode network packets. Includes support for higher-level protocols such as NMB and SMB

pynids: libnids wrapper offering sniffing, IP defragmentation, TCP stream reassembly and port scan detection

Dirtbags py-pcap: read pcap files without libpcap

flowgrep: grep through packet payloads using regular expressions

Knock Subdomain Scan, enumerate subdomains on a target domain through a wordlist

Mallory, extensible TCP/UDP man-in-the-middle proxy, supports modifying non-standard protocols on the fly

Pytbull: flexible IDS/IPS testing framework (shipped with more than 300 tests)




调试和逆向工程

Paimei: reverse engineering framework, includes PyDBG, PIDA, pGRAPH

Immunity Debugger: scriptable GUI and command line debugger

mona.py: PyCommand for Immunity Debugger that replaces and improves on pvefindaddr

IDAPython: IDA Pro plugin that integrates the Python programming language, allowing scripts to run in IDA Pro

PyEMU: fully scriptable IA-32 emulator, useful for malware analysis

pefile: read and work with Portable Executable (aka PE) files

pydasm: Python interface to the libdasm x86 disassembling library

PyDbgEng: Python wrapper for the Microsoft Windows Debugging Engine

uhooker: intercept calls to API calls inside DLLs, and also arbitrary addresses within the executable file in memory

diStorm: disassembler library for AMD64, licensed under the BSD license

python-ptrace: debugger using ptrace (Linux, BSD and Darwin system call to trace processes) written in Python

vdb / vtrace: vtrace is a cross-platform process debugging API implemented in python, and vdb is a debugger which uses it

Androguard: reverse engineering and analysis of Android application




Fuzzing

Sulley: fuzzer development and fuzz testing framework consisting of multiple extensible components

Peach Fuzzing Platform: extensible fuzzing framework for generation and mutation based fuzzing (v2 was written in Python)

antiparser: fuzz testing and fault injection API

TAOF, (The Art of Fuzzing) including ProxyFuzz, a man-in-the-middle non-deterministic network fuzzer

untidy: general purpose XML fuzzer

Powerfuzzer: highly automated and fully customizable web fuzzer (HTTP protocol based application fuzzer)

SMUDGE

Mistress: probe file formats on the fly and protocols with malformed data, based on pre-defined patterns

Fuzzbox: multi-codec media fuzzer

Forensic Fuzzing Tools: generate fuzzed files, fuzzed file systems, and file systems containing fuzzed files in order to test the robustness of forensics tools and examination systems

Windows IPC Fuzzing Tools: tools used to fuzz applications that use Windows Interprocess Communication mechanisms

WSBang: perform automated security testing of SOAP based web services

Construct: library for parsing and building of data structures (binary or textual). Define your data structures in a declarative manner

fuzzer.py (feliam): simple fuzzer by Felipe Andres Manzano

Fusil: Python library used to write fuzzing programs




Web

Requests: elegant and simple HTTP library, built for human beings

HTTPie: human-friendly cURL-like command line HTTP client

ProxMon: processes proxy logs and reports discovered issues

WSMap: find web service endpoints and discovery files

Twill: browse the Web from a command-line interface. Supports automated Web testing

Ghost.py: webkit web client written in Python

Windmill: web testing tool designed to let you painlessly automate and debug your web application

FunkLoad: functional and load web tester

spynner: Programmatic web browsing module for Python with Javascript/AJAX support

python-spidermonkey: bridge to the Mozilla SpiderMonkey JavaScript engine; allows for the evaluation and calling of Javascript scripts and functions

mitmproxy: SSL-capable, intercepting HTTP proxy. Console interface allows traffic flows to be inspected and edited on the fly

pathod / pathoc: pathological daemon/client for tormenting HTTP clients and servers




取证

Volatility: extract digital artifacts from volatile memory (RAM) samples

LibForensics: library for developing digital forensics applications

TrIDLib, identify file types from their binary signatures. Now includes Python binding

aft: Android forensic toolkit




恶意程序分析

pyew: command line hexadecimal editor and disassembler, mainly to analyze malware

Exefilter: filter file formats in e-mails, web pages or files. Detects many common file formats and can remove active content

pyClamAV: add virus detection capabilities to your Python software

jsunpack-n, generic JavaScript unpacker: emulates browser functionality to detect exploits that target browser and browser plug-in vulnerabilities

yara-python: identify and classify malware samples

phoneyc: pure Python honeyclient implementation




PDF

Didier Stevens' PDF tools: analyse, identify and create PDF files (includes PDFiD, pdf-parserand make-pdf and mPDF)

Opaf: Open PDF Analysis Framework. Converts PDF to an XML tree that can be analyzed and modified.

Origapy: Python wrapper for the Origami Ruby module which sanitizes PDF files

pyPDF: pure Python PDF toolkit: extract info, spilt, merge, crop, encrypt, decrypt…

PDFMiner: extract text from PDF files

python-poppler-qt4: Python binding for the Poppler PDF library, including Qt4 support




Misc

InlineEgg: toolbox of classes for writing small assembly programs in Python

Exomind: framework for building decorated graphs and developing open-source intelligence modules and ideas, centered on social network services, search engines and instant messaging

RevHosts: enumerate virtual hosts for a given IP address

simplejson: JSON encoder/decoder, e.g. to use Google's AJAX API

PyMangle: command line tool and a python library used to create word lists for use with other penetration testing tools

Hachoir: view and edit a binary stream field by field

py-mangle: command line tool and a python library used to create word lists for use with other penetration testing tools




其他有用的py库和工具
Bpython

IPython: enhanced interactive Python shell with many features for object introspection, system shell access, and its own special command system

Beautiful Soup: HTML parser optimized for screen-scraping

matplotlib: make 2D plots of arrays

Mayavi: 3D scientific data visualization and plotting

RTGraph3D: create dynamic graphs in 3D

Twisted: event-driven networking engine

Suds: lightweight SOAP client for consuming Web Services

M2Crypto: most complete OpenSSL wrapper

NetworkX: graph library (edges, nodes)

Pandas: library providing high-performance, easy-to-use data structures and data analysis tools

pyparsing: general parsing module

lxml: most feature-rich and easy-to-use library for working with XML and HTML in the Python language

Whoosh: fast, featureful full-text indexing and searching library implemented in pure Python

Pexpect: control and automate other programs, similar to Don Libes `Expect` system

Sikuli, visual technology to search and automate GUIs using screenshots. Scriptable inJython

PyQt and PySide: Python bindings for the Qt application framework and GUI library

github.com/dloss/python sqlmap github 上有人专门整理过列表(dloss/python-pentest-tools · GitHub),虽然并不是很完备,但总体上还是不错的一份单子。

另外需要额外提一点,大多数的 python 安全项目只适合看一看,没必要读一读,因为很多安全项目的工程架构、编码规范其实都一般般,了其概要便足够了。 是不是python没有考察,自己总结的一份关于信息安全的开源工具集。
WALA:对java字节码和javascript提供静态分析
PIXY:php静态分析工具,(污点分析)
clang:编译器的前端工作,负责词法分析和语法分析,生成语法树。
llvm:编译器的后端工作,负责中间码的生成,代码优化,机器码的生成。
klee: 适用于c语言,静态符号执行工具,建立在llvm之上。
magic:静态模型检测工具,适用于c语言
blast:静态模型检测工具,适用于c语言
java pathfinder: 静态模型检测工具,适用于java语言
Saturn(stanford): 基于定理证明的静态漏洞检测工具,适用于c语言
ESC/JAVA:基于定理证明的静态漏洞检测工具,适用于java
Peach:大名鼎鼎的fuzz框架。
Sulley(2012):新一代fuzz框架,python实现。
Argos:动态污点技术,用于主机蜜罐,检测0day攻击。
BitBlaze: 静态分析组件vine和动态分析组件temu都是开源。但是线上动态符号执行组件不开源。
valgrind:开源虚拟机,用于动态二进制分析。拥有内存分配分析和线程分析等等。动态二进制插桩的代表。只能实现用户态跟踪
TaintDroid: android动态污点分析工具
BAP:基于二进制可执行程序反汇编的漏洞模式检测工具。OCaml语言编写。
BinNavi:基于二进制可执行程序反汇编的漏洞模式检测工具。不能反汇编,需要借助IDA Pro对二进制文件反汇编。
Z3:微软开源的约束求解器。具有跨平台特性
STP:MIT开源协议的开源软件。在符号执行中广泛应用。但只能运行在Linux平台下。 逆向工程、二进制分析的工具:
qira BinaryAnalysisPlatform/qira · GitHub
angr angr/angr · GitHub the fuck greysign/thefuck · GitHub
没有理由不推荐它…… awesome-python.com/

这个网站上面列出的所有的库,都是一些优秀的第三方Python库,大部分托管在github上,都值得去认真阅读。 从题主问题出发,安全+值得读+python

requests不错,
创宇cos推荐sqlmap,

其他答案也有不错的工具。
好工具不一定值得读?!

本想推荐androguard 不过没读过!
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Où trouver la courte de la grue à atomide atomique
1 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment utiliser python+Flask pour réaliser la mise à jour et l'affichage en temps réel des journaux sur les pages Web Comment utiliser python+Flask pour réaliser la mise à jour et l'affichage en temps réel des journaux sur les pages Web May 17, 2023 am 11:07 AM

1. Enregistrez la sortie dans un fichier à l'aide du module : la journalisation peut générer des journaux de niveau personnalisé et peut générer des journaux vers un chemin spécifié. Niveau de journalisation : debug (journal de débogage) = 5) {clearTimeout (time) // Si tous sont obtenus 10 fois dans un. les lignes sont vides Tâche planifiée d'effacement du journal}return}if(data.log_type==2){//Si un nouveau journal est obtenu pour(i=0;i

Comment utiliser le caddy du serveur Web Nginx Comment utiliser le caddy du serveur Web Nginx May 30, 2023 pm 12:19 PM

Introduction à Caddy Caddy est un serveur Web puissant et hautement évolutif qui compte actuellement plus de 38 000 étoiles sur Github. Caddy est écrit en langage Go et peut être utilisé pour l'hébergement de ressources statiques et le proxy inverse. Caddy présente les principales caractéristiques suivantes : par rapport à la configuration complexe de Nginx, sa configuration originale de Caddyfile est très simple ; il peut modifier dynamiquement la configuration via l'AdminAPI qu'il fournit, il prend en charge la configuration HTTPS automatisée par défaut et peut demander automatiquement des certificats HTTPS ; et configurez-les ; il peut être étendu aux données Des dizaines de milliers de sites ; peut être exécuté n'importe où sans dépendances supplémentaires écrites en langage Go, la sécurité de la mémoire est plus garantie ; Tout d’abord, nous l’installons directement dans CentO

Protection en temps réel contre les barrages de blocage de visage sur le Web (basée sur l'apprentissage automatique) Protection en temps réel contre les barrages de blocage de visage sur le Web (basée sur l'apprentissage automatique) Jun 10, 2023 pm 01:03 PM

Le barrage de blocage du visage signifie qu'un grand nombre de barrages flottent sans bloquer la personne dans la vidéo, donnant l'impression qu'ils flottent derrière la personne. L'apprentissage automatique est populaire depuis plusieurs années, mais beaucoup de gens ne savent pas que ces fonctionnalités peuvent également être exécutées dans les navigateurs. Cet article présente le processus d'optimisation pratique des barrages vidéo. À la fin de l'article, il répertorie certains scénarios applicables. cette solution, dans l'espoir de l'ouvrir. mediapipeDemo (https://google.github.io/mediapipe/) montre le principe de mise en œuvre du calcul d'arrière-plan du serveur vidéo de téléchargement à la demande du barrage de blocage de visage grand public pour extraire la zone du portrait dans l'écran vidéo et la convertit en stockage SVG client pendant la lecture de la vidéo. Téléchargez svg depuis le serveur et combinez-le avec barrage, portrait.

Utilisation de Jetty7 pour le traitement du serveur Web dans le développement d'API Java Utilisation de Jetty7 pour le traitement du serveur Web dans le développement d'API Java Jun 18, 2023 am 10:42 AM

Utilisation de Jetty7 pour le traitement du serveur Web dans le développement JavaAPI Avec le développement d'Internet, le serveur Web est devenu l'élément central du développement d'applications et est également au centre de l'attention de nombreuses entreprises. Afin de répondre aux besoins croissants des entreprises, de nombreux développeurs choisissent d'utiliser Jetty pour le développement de serveurs Web, et sa flexibilité et son évolutivité sont largement reconnues. Cet article explique comment utiliser Jetty7 dans le développement JavaAPI pour We

Comment configurer nginx pour garantir que le serveur frps et le port de partage Web 80 Comment configurer nginx pour garantir que le serveur frps et le port de partage Web 80 Jun 03, 2023 am 08:19 AM

Tout d’abord, vous aurez un doute, qu’est-ce que le frp ? En termes simples, frp est un outil de pénétration intranet. Après avoir configuré le client, vous pouvez accéder à l'intranet via le serveur. Maintenant, mon serveur a utilisé nginx comme site Web et il n'y a qu'un seul port 80. Alors, que dois-je faire si le serveur FRP souhaite également utiliser le port 80 ? Après l'interrogation, cela peut être réalisé en utilisant le proxy inverse de nginx. A ajouter : frps est le serveur, frpc est le client. Étape 1 : Modifiez le fichier de configuration nginx.conf sur le serveur et ajoutez les paramètres suivants à http{} dans nginx.conf, server{listen80

Comment implémenter la validation de formulaire pour les applications Web à l'aide de Golang Comment implémenter la validation de formulaire pour les applications Web à l'aide de Golang Jun 24, 2023 am 09:08 AM

La validation du formulaire est un maillon très important dans le développement d'applications Web. Elle permet de vérifier la validité des données avant de soumettre les données du formulaire afin d'éviter les failles de sécurité et les erreurs de données dans l'application. La validation de formulaire pour les applications Web peut être facilement implémentée à l'aide de Golang. Cet article explique comment utiliser Golang pour implémenter la validation de formulaire pour les applications Web. 1. Éléments de base de la validation de formulaire Avant de présenter comment implémenter la validation de formulaire, nous devons savoir quels sont les éléments de base de la validation de formulaire. Éléments de formulaire : les éléments de formulaire sont

PHP est-il front-end ou back-end dans le développement Web ? PHP est-il front-end ou back-end dans le développement Web ? Mar 24, 2024 pm 02:18 PM

PHP appartient au backend du développement Web. PHP est un langage de script côté serveur, principalement utilisé pour traiter la logique côté serveur et générer du contenu Web dynamique. Par rapport à la technologie front-end, PHP est davantage utilisé pour les opérations back-end telles que l'interaction avec les bases de données, le traitement des demandes des utilisateurs et la génération du contenu des pages. Ensuite, des exemples de code spécifiques seront utilisés pour illustrer l'application de PHP dans le développement back-end. Tout d'abord, regardons un exemple de code PHP simple pour se connecter à une base de données et interroger des données :

Comment activer l'accès administratif à partir de l'interface utilisateur Web du cockpit Comment activer l'accès administratif à partir de l'interface utilisateur Web du cockpit Mar 20, 2024 pm 06:56 PM

Cockpit est une interface graphique Web pour les serveurs Linux. Il est principalement destiné à faciliter la gestion des serveurs Linux pour les utilisateurs nouveaux/experts. Dans cet article, nous aborderons les modes d'accès à Cockpit et comment basculer l'accès administratif à Cockpit depuis CockpitWebUI. Sujets de contenu : Modes d'entrée du cockpit Trouver le mode d'accès actuel au cockpit Activer l'accès administratif au cockpit à partir de CockpitWebUI Désactiver l'accès administratif au cockpit à partir de CockpitWebUI Conclusion Modes d'entrée au cockpit Le cockpit dispose de deux modes d'accès : Accès restreint : il s'agit de la valeur par défaut pour le mode d'accès au cockpit. Dans ce mode d'accès vous ne pouvez pas accéder à l'internaute depuis le cockpit

See all articles