Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
aura — Auditing del codice sorgente Python e analisi statica su larga scala | Kitploit
Strumenti/GitHubGitHub/sourcecode-ai/aura
Analisi StaticaAnalisi delle VulnerabilitàAnalisi del CodiceAnalisi MalwareRilevamento SegretiSicurezza della Supply ChainApprendimento e Formazione
GitHubsourcecode-ai/aura

aura

Auditing del codice sorgente Python e analisi statica su larga scala

Vedi Repository
493282 anni faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

.. image:: https://cdn.sourcecode.ai/imgs/logotype.png :target: https://aura.sourcecode.ai/

======

.. class:: center

root@kitploit:~
|homepage_flair| |docs_flair| |docker_flair|
|license_flair| |travis_flair| |pypi_flair|

Audit del codice sorgente e analisi statica del codice

Aura è un framework di analisi statica sviluppato in risposta alla minaccia sempre crescente di pacchetti malevoli e codice vulnerabile pubblicati su PyPI.

Obiettivi del progetto:

  • fornire un sistema di monitoraggio automatizzato per i pacchetti caricati su PyPI, segnalare anomalie che possono indicare un attacco in corso o vulnerabilità nel codice
  • consentire a un'organizzazione di condurre audit di sicurezza automatizzati del codice sorgente e implementare pratiche di codifica sicura, con particolare attenzione all'audit di codice di terze parti come le dipendenze dei pacchetti Python
  • permettere ai ricercatori di scansionare repository di codice su larga scala, creare dataset ed eseguire analisi per avanzare ulteriormente la ricerca nell'area delle dipendenze di codice vulnerabili e malevoli

Elenco delle funzionalità:

  • Adatto per l'analisi di malware con la garanzia di nessuna esecuzione di codice
  • Meccanismi avanzati di deoffuscazione tramite riscrittura dell'albero AST - propagazione di costanti, srotolamento del codice e altri trucchi sporchi
  • Scansione ricorsiva che decomprime automaticamente archivi come zip, wheel, ecc. e scansiona il contenuto
  • Supporto per la scansione anche di file non Python - i plugin possono funzionare in modalità "file grezzo" come l'integrazione nativa di Yara
  • Scansione per segreti hardcoded, password e altre informazioni sensibili
  • Motore di diff personalizzato - puoi confrontare le modifiche tra diverse fonti di dati come pacchetti PyPI typosquatting e vedere quali modifiche sono state fatte
  • Funziona sia per codice Python 2.x che Python 3.x
  • Alte prestazioni, progettato per scansionare l'intero repository PyPI
  • Output in numerosi formati come testo plain formattato, JSON, SQLite, SARIF, ecc.
  • Testato su oltre 4TB di codice sorgente Python compresso
  • Aura è in grado di segnalare comportamenti del codice come comunicazione di rete, accesso ai file o esecuzione di comandi di sistema
  • Calcolare il "punteggio Aura" che indica quanto sia affidabile il codice sorgente/i dati in input
  • e molto, molto altro...

Non hai trovato quello che cercavi? L'architettura di Aura è basata su un robusto sistema di plugin, dove puoi personalizzare quasi tutto, da un insieme di analizzatori di dati, protocolli di trasporto a formati di output personalizzati.

Installazione

::

root@kitploit:~
# Via pip:
pip install aura-security[full]
# or build from source/git
poetry install --no-dev -E full

Oppure usa un'immagine docker precompilata sourcecodeai/aura:dev

Esecuzione di Aura

::

root@kitploit:~
docker run -ti --rm sourcecodeai/aura:dev scan pypi://requests -v

Aura utilizza i cosiddetti URI per identificare il protocollo e la posizione da scansionare; se non viene utilizzato alcun protocollo, l'argomento di scansione viene trattato come un percorso verso un file o una directory sul sistema locale.

.. image:: files/imgs/aura_scan.png

Diff pacchetti::

root@kitploit:~
docker run -ti --rm sourcecodeai/aura:dev diff pypi://requests pypi://requests2

.. image:: docs/source/_static/imgs/aura_diff.png

Trova i pacchetti typosquatting più popolari (devi eseguire aura update per scaricare prima il dataset)::

root@kitploit:~
aura find-typosquatting --max-distance 2 --limit 10

.. image:: https://asciinema.org/a/367999.svg :target: https://asciinema.org/a/367999


.. image:: files/imgs/download_dataset.png :target: https://cdn.sourcecode.ai/pypi_datasets/index/datasets.html :align: center :width: 256

Perché Aura?

Sebbene esistano altri strumenti con funzionalità che si sovrappongono a quelle di Aura, come Bandit, dlint, semgrep, ecc., l'attenzione di queste alternative è diversa, il che influisce sulla funzionalità e sul loro utilizzo. Queste alternative sono principalmente pensate per essere utilizzate in modo simile ai linter, integrate negli IDE, eseguite frequentemente durante lo sviluppo, il che rende importante minimizzare i falsi positivi e fornire spiegazioni chiare e attuabili nei casi ideali.

Aura, d'altra parte, segnala il comportamento del codice, le anomalie e le vulnerabilità con quante più informazioni possibili, a costo di falsi positivi. Ci sono molte cose segnalate da Aura che non sono necessariamente attuabili da un utente, ma che dicono molto sul comportamento del codice, come la comunicazione di rete, l'accesso a file sensibili o l'uso di meccanismi associati all'offuscamento che indicano un possibile codice malevolo. Raccogliendo questo tipo di dati e aggregandoli insieme, Aura può essere paragonato per funzionalità ad altri sistemi di sicurezza come antivirus, IDS o firewall, che essenzialmente eseguono la stessa analisi ma su un diverso tipo di dati (comunicazione di rete, processi in esecuzione, ecc.).

Ecco una rapida panoramica delle differenze tra Aura e altri linter e strumenti SAST simili:

  • dati di input:
    • Altri strumenti SAST - di solito limitati al solo codice sorgente Python (target) e alla versione di Python sotto cui lo strumento è installato.
    • Aura - può analizzare sia codice binario (o non Python) che codice sorgente Python. In grado di analizzare una miscela di codice Python compatibile con diverse versioni di Python (py2k e py3k) utilizzando la stessa installazione di Aura.
  • reportistica:
    • Altri strumenti SAST - Mirano a integrarsi bene con altri sistemi come IDE, sistemi CI con risultati attuabili, cercando al contempo di minimizzare i falsi positivi per evitare di sovraccaricare gli utenti con troppi avvisi non significativi.
    • Aura - segnala quante più informazioni possibili che non sono immediatamente attuabili, come l'analisi comportamentale e delle anomalie. Il formato di output è progettato per una facile elaborazione e aggregazione automatica piuttosto che per essere leggibile dall'uomo.
  • configurazione:
    • Altri strumenti SAST - Gli strumenti sono ottimizzati per il progetto target personalizzando le firme per colpire tecnologie specifiche utilizzate dal progetto target. La sovrascrittura della configurazione è spesso possibile inserendo commenti nel codice sorgente come # nosec che sopprimeranno l'avviso in quella posizione.
    • Aura - ci si aspetta che ci sia poca o nessuna conoscenza preventiva sulle tecnologie utilizzate dal codice che viene scansionato, come l'audit di un nuovo pacchetto Python per l'approvazione come dipendenza in un progetto. Nella maggior parte dei casi, non è nemmeno possibile modificare il codice sorgente scansionato, ad esempio usando commenti per indicare al linter o ad Aura di saltare il rilevamento in quella posizione, perché sta scansionando una copia di quel codice ospitata in una posizione remota.

Autori e Collaboratori

  • Martin Carnogursky - Lavoro iniziale e responsabile del progetto - https://is.muni.cz/person/410345
  • Mirza Zulfan - Progettazione logo - https://github.com/mirzazulfan

Dona

  • Sponsor su GitHub: https://github.com/sponsors/RootLUG
  • Liberapay: https://liberapay.com/SourceCode.AI
  • BuyMeACoffee: https://www.buymeacoffee.com/SourceCodeAI
  • BTC: 3FVTaLsLwTDinmDjPh3BjS1qv3bYHbkcYc
  • XMR: 46xvWZGCexo1NbvjLMMpLB1GhRd819AQr8eFPJT1q6kKMuuDy43JLiESh9XUM3asjk4SVUYqGakFVQZRY1adx8cS6ka4EXr
  • ETH/ERC20: 0x708F1A08E3ee4922f037673E720c405518C0Ec85

LICENZA

Il framework Aura è concesso in licenza GPL-3.0. I dataset prodotti da scansioni globali con Aura sono rilasciati sotto la licenza CC BY-NC 4.0. Utilizza la seguente citazione quando usi Aura o dati prodotti da Aura nella ricerca:

::

root@kitploit:~
@misc{Carnogursky2019thesis,
AUTHOR = "CARNOGURSKY, Martin",
TITLE = "Attacks on package managers [online]",
YEAR = "2019 [cit. 2020-11-02]",
TYPE = "Bachelor Thesis",
SCHOOL = "Masaryk University, Faculty of Informatics, Brno",
SUPERVISOR = "Vit Bukac",
URL = "Available at WWW <https://is.muni.cz/th/y41ft/>",
}

.. |homepage_flair| image:: https://img.shields.io/badge/Homepage-aura.sourcecode.ai-blue :target: https://aura.sourcecode.ai/ :align: middle

.. |docs_flair| image:: https://img.shields.io/badge/-Documentation-blue :target: https://docs.aura.sourcecode.ai/ :align: middle

.. |docker_flair| image:: https://img.shields.io/badge/docker-SourceCodeAI/aura-blue :target: https://hub.docker.com/r/sourcecodeai/aura :align: middle

.. |license_flair| image:: https://img.shields.io/github/license/SourceCode-AI/aura?color=blue

.. |travis_flair| image:: https://travis-ci.com/SourceCode-AI/aura.svg?branch=dev

.. |pypi_flair| image:: https://badge.fury.io/py/aura-security.svg :target: https://pypi.org/project/aura-security/ :align: middle

Scarica lo strumento