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
warcannon — Alta velocità/Basso costo CommonCrawl RegExp in Node.js | Kitploit
Strumenti/GitHubGitHub/c6fc/warcannon
OSINT (Open Source Intelligence)Esfiltrazione DatiRaccolta InformazioniSicurezza CloudUtilità e FrameworkCrawler
GitHubc6fc/warcannon

warcannon

Alta velocità/Basso costo CommonCrawl RegExp in Node.js

Vedi Repository
25637152 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

WARCannon - Elaborazione WARC parallela catastroficamente potente

Image

WARCannon è stato costruito per semplificare e rendere economico il processo di 'greping su internet'.

Con WARCannon puoi:

  • Costruire e testare pattern regex su veri dati Common Crawl
  • Caricare facilmente dataset Common Crawl per l'elaborazione parallela
  • Scalare le capacità di calcolo per crunching asincrono di WARC a capacità francamente irragionevoli.
  • Memorizzare e recuperare facilmente i risultati

Come funziona

WARCannon sfrutta un uso intelligente delle tecnologie AWS per scalare orizzontalmente a qualsiasi capacità, minimizzare i costi tramite spot fleet e trasferimento dati nella stessa regione, attingere da S3 a velocità incredibili (fino a 100Gbps per nodo), parallelizzare su centinaia di core CPU, riportare lo stato tramite DynamoDB e CloudFront, e memorizzare i risultati tramite S3.

In tutto, WARCannon può elaborare più pattern di espressioni regolari su 400TB in poche ore per circa $30.

Installazione tramite CloudShell

Il modo più veloce e semplice per iniziare è usare AWS CloudShell. Basta incollare questo comando one-liner:

source <(curl https://raw.githubusercontent.com/c6fc/warcannon/master/cloudshell/deploy.sh)

Se vuoi usare un branch non master di WARCannon, digita:

export GIT_BRANCH=nome_branch
source <(curl https://raw.githubusercontent.com/c6fc/warcannon/$GIT_BRANCH/cloudshell/deploy.sh)

Nota: Il deployment tramite CloudShell utilizza storage effimero, il che significa che i pattern regex personalizzati andranno persi quando il CloudShell esce. Se intendi usare WARCannon frequentemente, ti consiglio di usare 'Installazione locale' di seguito.

Installazione locale

WARCannon richiede che tu abbia installato quanto segue:

  • awscli (v2)
  • cmake3
  • node.js (v17.0.1+)

ProTip: Per mantenere le cose pulite e distinte da altre cose che potresti avere in AWS, si RACCOMANDA VIVAMENTE di distribuire WARCannon in un account nuovo. Puoi creare un nuovo account facilmente dalla console 'Organizations' in AWS. Per 'RACCOMANDAZIONE VIVAMENTE' intendo 'seriamente, non installare questo accanto ad altra roba'.

Per prima cosa, clona il repository e copia le impostazioni di esempio.

$ git clone [email protected]:c6fc/warcannon.git
$ cd warcannon
warcannon$ cp settings.json.sample settings.json

Modifica settings.json a piacere:

Impostazioni obbligatorie

  • nodeInstanceType: Un array di tipi di istanza da utilizzare per l'elaborazione parallela. I tipi 'c' sono i migliori per questo scopo, e può essere utilizzata qualsiasi dimensione. ["c5n.18xlarge"] è il valore consigliato per campagne reali.
  • nodeCapacity: Il numero di nodi da richiedere durante l'elaborazione parallela. I nodi risultanti saranno una distribuzione arbitraria dei nodeInstanceTypes specificati.
  • nodeParallelism: Il numero di WARC simultanei da elaborare per vCPU. 2 è un buon numero qui. Se i nodi hanno RAM insufficiente per funzionare a questo livello di parallelismo (come potresti incontrare con istanze di tipo 'c'), funzioneranno invece al massimo parallelismo sicuro.
  • nodeMaxDuration: La durata massima di vita dei nodi di calcolo in secondi. I nodi verranno automaticamente terminati dopo questo tempo se il job non è ancora completato. Il valore predefinito è 24 ore.

Impostazioni opzionali (lasciale fuori del tutto se non utilizzate)

  • sshKeyName: Il nome di una chiave SSH EC2 già esistente in us-east-1.
  • allowSSHFrom: Una maschera CIDR per consentire SSH. Tipicamente sarà &lt;tuo_ip_pubblico&gt;/32

Per installare, esegui questo:

$ npm install
$ npm link
$ warcannon deploy

Avvio rapido

Eseguire una campagna in WARCannon utilizza un flusso di lavoro semplice e facile da seguire, che può essere descritto al meglio in questi pochi passaggi:

  1. Distribuisci l'infrastruttura: warcannon deploy
  2. Sviluppa, poi testa i pattern regex in locale: warcannon testLocal -s
  3. Verifica i pattern regex in AWS tramite Lambda: warcannon test
  4. Mostra i crawl disponibili: warcannon list 2022
  5. Popola la coda con il crawl di tua scelta: warcannon populate 2022-21
  6. Esegui la campagna: warcannon fire
  7. Attendi la fine della campagna, poi recupera i risultati da S3 con warcannon syncResults

Continua a leggere per una comprensione più dettagliata di ogni passaggio.

Usare WARCannon

WARCannon è alimentato da Common Crawl tramite il programma AWS Open Data. Common Crawl è unico in quanto i dati recuperati dai suoi spider non solo catturano il testo del sito web, ma anche altri contenuti testuali come JavaScript, TypeScript, HTML completo, CSS, ecc. Costruendo espressioni regolari adatte in grado di identificare componenti unici, i ricercatori possono identificare i siti web dalle tecnologie che usano, e farlo senza mai toccare il sito web stesso. Il problema è che ciò richiede l'analisi di centinaia di terabyte di dati, che è un compito arduo indipendentemente dalle risorse a disposizione. Fortunatamente WARCannon ha diversi strumenti che puoi usare per portare a termine questo compito!

Sviluppare espressioni regolari

Fare grep su internet non è per i deboli di cuore, ma iniziare con un setaccio efficace è il primo passo. WARCannon supporta questo consentendo la verifica locale delle espressioni regolari su veri dati Common Crawl. Per prima cosa, apri lambda_functions/warcannon/matches.js e modifica l'oggetto regex_patterns per includere le espressioni regolari che desideri usare nel formato nome: pattern. Ecco un esempio dal set di ricerca predefinito:

exports.regex_patterns = {
	"access_key_id": /(\'A|"A)(SIA|KIA|IDA|ROA)[JI][A-Z0-9]{14}[AQ][\'"]/g,
};

Le stringhe che corrispondono a questa espressione verranno salvate sotto la chiave corrispondente nei risultati; in questo caso access_key_id. ProTip: Usa RegExr con il formato 'JavaScript' per costruire e testare le espressioni regolari su corrispondenze note e valide.

Hai anche la possibilità di catturare solo risultati da domini specificati. Per farlo, popola semplicemente l'array domains con i FQDN che desideri includere. Si consiglia di lasciarlo vuoto [] poiché quasi mai ne vale la pena (lo sforzo di elaborazione risparmiato è molto piccolo), ma può essere utile in alcuni casi di nicchia.

exports.domains = ["example1.com", "example2.com"];

Una volta popolato matches.js, esegui il seguente comando:

warcannon$ warcannon testLocal -s

Puoi opzionalmente aggiungere un percorso a un WARC nel bucket S3 commoncrawl se lo desideri, ma altrimenti verrà utilizzato un valore predefinito hardcoded.

WARCannon elaborerà in streaming il file WARC (o lo scaricherà interamente se ometti -s) per trovare le corrispondenze configurate. WARCannon salverà i risultati nella cartella ~/.warcannon/ quando interrompi con ctrl+c o quando l'elaborazione termina. Questo rende facile testare rapidamente le corrispondenze comuni con larghezza di banda minima.

Inoltre, WARCannon tenterà di valutare il costo computazionale totale delle tue espressioni regolari quando eseguite in locale. In questo modo, puoi essere informato se una determinata espressione regolare influenzerà significativamente le prestazioni prima di eseguire la tua campagna.

Image

Eseguire elaborazioni personalizzate

Scarica lo strumento