Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
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
JAW — JAW: Un framework di analisi della sicurezza basato su grafi per JavaScript lato client. | Kitploit
Strumenti/GitHubGitHub/soheilkhodayari/jaw
Analisi StaticaAnalisi Dinamica (Sandboxing)Analisi delle VulnerabilitàAnalisi del CodiceSicurezza WebPenetration TestingCrawlerSicurezza dei Database
GitHubsoheilkhodayari/jaw

JAW

JAW: Un framework di analisi della sicurezza basato su grafi per JavaScript lato client.

Vedi Repository
11821257 mesi faRevisionato da Kitploit
Sito web

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

JAW

J A W

Sito web | Documentazione | Configurazione | Crawler | Avvio rapido Docker (Esempio)

JAW

Node Platform Open Source Love Tweet

Un'implementazione open-source prototipale di grafi di proprietà per JavaScript basata sul parser esprima e sulla specifica EsTree SpiderMonkey Spec. JAW può essere utilizzato per analizzare il lato client di applicazioni web e programmi basati su JavaScript.

Questo progetto è concesso in licenza GNU AFFERO GENERAL PUBLIC LICENSE V3.0. Vedi qui per maggiori informazioni.

JAW ha un sito web su Github Pages disponibile all'indirizzo https://soheilkhodayari.github.io/JAW/.

Note di rilascio:

  • Settembre 2025, JAW-v5: supporto per il rilevamento di gadget DOM tramite questo fork.
  • Dicembre 2024, JAW-v4: JAW aggiornato con query di rilevamento di reindirizzamento aperto.
  • Ottobre 2023, JAW-v3 (Sheriff): JAW aggiornato per rilevare vulnerabilità di dirottamento di richieste lato client.
  • Luglio 2022, JAW-v2 (TheThing): JAW aggiornato alla sua prossima versione principale con la capacità di rilevare vulnerabilità di DOM Clobbering. Vedi il ramo JAW-V2.
  • Dicembre 2020, JAW-v1 : prima versione prototipale. Vedi il ramo JAW-V1.

Contenuti

Panoramica di JAW

  1. Input di test
  2. Raccolta dati
  3. Costruzione HPG
  4. Analisi e output

Configurazione

  1. Installazione

Avvio rapido

  1. Esecuzione del pipeline
  2. Esempio rapido
  3. Crawling e raccolta dati
    • Playwright CLI con Foxhound
    • Crawler basato su Puppeteer
    • Crawler basato su Selenium
  4. Costruzione del grafo
    • CLI per la costruzione HPG
    • CLI per l'importazione HPG
  5. Analisi della sicurezza
    • Esecuzione di attraversamenti personalizzati del grafo
    • Rilevamento delle vulnerabilità
  6. Applicazione web di test

Ulteriori informazioni

  1. Documentazione dettagliata
  2. Contributi e codice di condotta
  3. Pubblicazione accademica

Panoramica di JAW

L'architettura di JAW è mostrata di seguito.

Input di test

JAW può essere utilizzato in due modi distinti:

  1. Analisi arbitraria di JavaScript: utilizza JAW per modellare e analizzare qualsiasi programma JavaScript specificando il path del file system del programma.

  2. Analisi di applicazioni web: analizza un'applicazione web fornendo un singolo URL seed.

Raccolta dati

  • JAW dispone di diversi crawler web abilitati per JavaScript per raccogliere risorse web su larga scala.

Costruzione HPG

  • Utilizza le risorse web raccolte per creare un Hybrid Program Graph (HPG), che verrà importato in un database Neo4j.

  • Opzionalmente, fornisci al modulo di costruzione HPG una mappatura di tipi semantici a token personalizzati del linguaggio JavaScript, facilitando la categorizzazione delle funzioni JavaScript in base al loro scopo (ad esempio, funzioni di richiesta HTTP).

Analisi e output

  • Interroga il database grafico Neo4j costruito per varie analisi. JAW offre attraversamenti di utilità per l'analisi del flusso di dati, l'analisi del flusso di controllo, l'analisi di raggiungibilità e il pattern matching. Questi attraversamenti possono essere utilizzati per sviluppare analisi di sicurezza personalizzate.

  • JAW include anche attraversamenti integrati per rilevare vulnerabilità di CSRF lato client, DOM Clobbering e dirottamento delle richieste.

  • Gli output verranno salvati nella stessa cartella dell'input.

Configurazione

Lo script di installazione si basa sui seguenti prerequisiti:

  • Versione più recente di npm package manager (node js)
  • Qualsiasi versione stabile di python 3.x
  • Python pip package manager

Successivamente, installa le dipendenze necessarie tramite:

$ ./install.sh

Per istruzioni di installazione dettagliate, consulta qui.

Avvio rapido

Esecuzione del pipeline

Puoi eseguire un'istanza del pipeline in uno screen in background tramite:

$ python3 -m run_pipeline --conf=config.yaml

La CLI fornisce le seguenti opzioni:

$ python3 -m run_pipeline -h

usage: run_pipeline.py [-h] [--conf FILE] [--site SITE] [--list LIST] [--from FROM] [--to TO]

This script runs the tool pipeline.

optional arguments:
  -h, --help            show this help message and exit
  --conf FILE, -C FILE  pipeline configuration file. (default: config.yaml)
  --site SITE, -S SITE  website to test; overrides config file (default: None)
  --list LIST, -L LIST  site list to test; overrides config file (default: None)
  --from FROM, -F FROM  the first entry to consider when a site list is provided; overrides config file (default: -1)
  --to TO, -T TO        the last entry to consider when a site list is provided; overrides config file (default: -1)

Config di input: JAW si aspetta un file di configurazione .yaml come input. Vedi config.yaml per un esempio.

Suggerimento. Il file di configurazione specifica diverse fasi (ad esempio, crawling, analisi statica, ecc.) che possono essere abilitate o disabilitate per ogni classe di vulnerabilità. Ciò consente di eseguire i blocchi dello strumento singolarmente o in un ordine diverso (ad esempio, prima eseguire il crawling di tutte le webapp, poi condurre l'analisi di sicurezza).

Esempio rapido

Scarica lo strumento