Si consiglia vivamente di guardare il Blog con una risoluzione di schermo non inferiore a 1024x768

Informazioni personali

Hai Bisogno di un aiuto con il pc?

sabato 5 dicembre 2009

Possibile Falla di sicurezza nella gestione di un Router



Creato per Mentedigitale.org


Vorrei spiegarvi una cosa interessante, su come si potrebbe attaccare un router configurato per riconoscere un pc tramite indirizzo MAC (indirizzo di rete), ma prima voglio fare una breve (si fa per dire) premessa sugli indirizzi MAC.

L'acronimo MAC, significa Media Access Control e viene utilizzato per l'accesso al mezzo fisico dal livello datalink secondo lo standard ISO/OSI.

Come a tutti è noto, ogni scheda di rete in commercio ha assegnato un identificativo univoco ad ogni scheda di rete ethernet prodotta al mondo, denominato 'MAC Address' (Indirizzo MAC).
L'indirizzo MAC si può trovare in qualsiasi interfaccia, sia Ethernet che Wi-Fi, pertanto viene chiamato anche indirizzo fisico, indirizzo ethernet o indirizzo LAN.
L'indirizzo MAC ha una lunghezza pari a 48 bit, pari a 6 byte (12 numeri in esadecimale).
L'indirizzo MAC, in pratica, rappresenta un nome per un particolare dispositivo di rete:

per esempio, avendo due schede di rete in due diversi computer, avranno due diversi nomi (e quindi diversi indirizzi MAC), così come avranno nomi diversi una scheda Ethernet ed una scheda wireless posizionate nel medesimo computer.
Nel modello ISO/OSI, che è uno standard definito nel 1978 che definisce una pila di protocolli di comunicazione, distribuiti in sette livelli, l'indirizzo MAC viene inserito tra i protocolli di rete che operano al livello 2;
la maggior parte dei protocolli di livello 2 usa uno dei tre spazi di numerazione regolati dall'IEEE: MAC-48, EUI-48, e EUI-64. Nelle reti di oggi, l'indirizzo MAC viene convertito in un indirizzo di protocollo di livello 3, il conosciuto indirizzo IP.
Nei sette Livelli del modello ISO/OSI troviamo il primo livello, che è quello 'fisico', mentre il settimo, quello più 'in alto', è quello 'applicativo',

Il compito della conversione dagli indirizzi di livello 3 come l'Internet Protocol agli indirizzi MAC di livello 2 è comunemente demandato all'ARP.
Nelle reti broadcast come l'Ethernet, il MAC address permette di identificare univocamente ciascun host e permette di contrassegnare i frame come destinati a specifici host. Esso costituisce perciò, all'interno del Livello datalink, la base su cui poggiano i protocolli superiori del modello OSI.

In origine, l'indirizzo MAC (adesso chiamato ufficialmente MAC-48), era chiamato Indirizzo MAC IEEE 802, quindi l'attuale MAC-48 deriva dalla specifica dell'Ethernet, in quanto, chi progettò inizialmente l'Ethernet, ebbe la previdenza di utilizzare uno spazio per gli indirizzi di 48 bit, quindi oggi è possibile disporre di ben 248 possibili indirizzi MAC, il che non è poco, considerando che i 48 bit sono suddivisi in 12 cifre esadecimali, un esempio di indirizzo MAC può essere 4C-6F-72-64-54-7A, quindi, 248 indirizzi MAC, sarebbero 281.474.976.710.656 combinazioni, quindi altrettante schede ethernet, un numero che è praticamente impossibile raggiungere prima che le schede ethernet cambino standard.

Vediamo in dettaglio che cosa sono quei numeri:
le prime 6 cifre individuano il produttore dell'interfaccia di rete, mentre le successive corrispondono al numero di serie della scheda stessa.
L'indirizzo MAC si scrive normalmente in 6 ottetti separati da un trattino, come abbiamo visto nel precedente esempio (4C-6F-72-64-54-7A) ed i primi 3 ottetti sono detti OUI (Organizationally Unique Identifier).
Questo tipo di indirizzi, solitamente, si preferisce identificarli in esadecimale per differenziarli dagli indirizzi IP che usano la notazione decimale.

Ogni scheda ha, quindi, un indirizzo unico perché i primi 24 bit sono identificativi della casa produttrice e i successivi della scheda.
In questo modo ogni casa produttrice ha a disposizione 224 indirizzi, quindi può produrre più di 16 milioni di schede;
se un produttore ne produce meno, gli indirizzi (a 48 bit) non assegnati vengono persi, non potendo essere utilizzati da altri costruttori.

Quindi, si comprende facilmente, come l'indirizzo MAC non cambi se si sposta una scheda di rete da una LAN ad un'altra, a differenza dell'indirizzo IP, che invece può cambiare nel caso che venga assegnato dal DHCP.

Bene, adesso, dopo aver scritto un mezzo romanzo sulle schede Ethernet, volevo farvi notare, come un computer, connesso ad un router, sia tramite cavi di rete, che con Wi-Fi, venga riconosciuto dal router, che è stato configurato per gestire l'indirizzo MAC, e come il router possa essere attaccato, facendogli credere che la connessione avvenga dal computer dell'amministratore...

In poche e semplici parole, supponiamo di conoscere o poter reperire l'indirizzo MAC della macchina administrator, (che non sto qui a spiegarvi come si fa perché esula dal contesto dell'articolo) possiamo modificare l'indirizzo MAC della nostra scheda Ethernet in modo che il router, dopo la nostra connessione, possa riconoscere la nostra macchina come macchina con permessi privilegiati, assegnare l'ip corretto tramite il DHCP e quindi darci accesso alla rete o a Internet!

In realtà, dopo la connessione ad un router, avendo un MAC Address uguale per entrambe le macchine, e supponendo che le politiche di gestione MAC del router, abbiano qualche falla, in quanto, generalmente i router non gestiscono i doppi MAC o l'amministratore non fa caso ad una possibilità di avere un doppio MAC Address, appunto per l'improbabilità di trovarne due uguali, la macchina che è già connessa al router, "cade", cedendo la rete alla macchina che ha causato il conflitto di indirizzo MAC sulla macchina connessa in precedenza...



L'operazione su linux è possibile tramite il comando ifconfig ...
praticamente il comando si utilizza nel seguente modo:


 sudo ifconfig hw                                      

 dove è eth0, è ether ed è l'indirizzo                  

 MAC che si vuole assegnare con forma XX:XX:XX:XX:XX:XX 

 es. sudo ifconfig eth0 hw ether 4C:6F:72:64:54:7A      

oppure utilizzando un software: GNU MAC Changer (se cercate su google trovate altre informazioni su tale software)



su Windows XP, invece, si può cambiare MAC Address, ricercando e modificando una chiave nel registro di sistema, che comunque non si trova sempre nello stesso posto, per ovvie ragioni. per essere però sicuri di cambiare il MAC Address possiamo farlo tramite software, in questo caso, servendosi di una semplice utility freeware chiamata Macshift, basata su riga di comando. (http://devices.natetrue.com/macshift/macshift.zip)


Spero di non essere stato troppo noioso e di avervi fatto capire qualche cosa sulla sicurezza...
che non è mai troppa :P






martedì 1 dicembre 2009

Windows 7 su Chiavetta USB Avviabile

Creato per MenteDigitale.org



Come rendere una chiavetta USB avviabile per poter ospitare il sistema operativo Windows 7 e quindi installarlo su un netbook o su un computer che permette il boot da USB

Premessa.
Oramai, i netbook stanno prendendo piede, avere un computer di dimensioni ridotte, a poco prezzo e con la possibilità di sfruttare appieno le potenzialità della rete, è quasi divenuto una "moda", se non una necessità, quindi perché non scrivere una bella guida su come si installa il nuovo Sistema Operativo della Microsoft, Windows 7, e introdurre anche alcune informazioni interessanti sulle chiavette USB e sui file system?

░ Comincio col dire che le chiavette USB sono formattate in FAT ░

Informazioni tecniche su FAT
FAT, acronimo di File Allocation Table, è un file system sviluppato inizialmente da Bill Gates e Marc McDonald. È il file system primario per diversi sistemi operativi DOS e Microsoft Windows fino alla versione Windows ME.
Windows NT e le successive versioni hanno introdotto l'NTFS e mantenuto la compatibilità con la FAT così come molti altri sistemi operativi moderni (Unix, Linux, Mac, ecc.).
La FAT è relativamente semplice ed è supportata da moltissimi sistemi operativi. Queste caratteristiche la rendono adatta ad esempio per i Floppy Disk, le Chiavette USB e le Memory Stick, come ad esempio le SD.
Può anche essere utilizzata per condividere dati tra due sistemi operativi diversi.
Il più grande problema del file system FAT è la frammentazione. Quando i file vengono eliminati, creati o spostati, le loro varie parti si disperdono sull'unità, rallentandone progressivamente la lettura e la scrittura. Una soluzione a questo inconveniente è la deframmentazione, un processo che riordina i file sull'unità. Questa può durare anche diverse ore e deve essere eseguita regolarmente per mantenere le prestazioni dell'unità.
Esistono varie versioni di questo file system, in base a quanti bit sono allocati per numerare i cluster del disco: FAT12, FAT16, FAT32.
Il VFAT è una versione del FAT16, ma virtuale cioè non registrato fisicamente sull'hard disk, ma gestito da un software specifico.

Chiavette USB
la diffusione di questa tipologia di dispositivi è stato determinato dal supporto diretto offerto da Windows XP, che ha spinto fette sempre più ampie d'utenza all'utilizzo. Oramai anche i prezzi sono diventati davvero irrisori.
Una chiave USB, o penna USB, o pendrive, è una memoria di massa portatile di dimensioni molto contenute (qualche centimetro in lunghezza e intorno al centimetro in larghezza) che si collega al computer mediante la comune porta USB.
Nella chiave USB i dati sono memorizzati in una memoria flash, tipicamente di tipo NAND, contenuta al suo interno. Attualmente la capacità di memoria delle chiavi USB va da 1 Gigabyte in su. La capacità è limitata unicamente dalla densità delle memorie flash impiegate, con il costo per megabyte che aumenta rapidamente per alte capacità.

Funzionamento (Fonte: Wikipedia)
Il protocollo per il trasferimento dei dati dal computer alla chiavetta, e viceversa, è un protocollo standard denominato USB Mass Storage-protocol. Tale standardizzazione ha incoraggiato l'inclusione dei driver di supporto e di inclusione nel file system locale da parte dei produttori di sistemi operativi quali Windows, Mac OS X e Linux.
Inizialmente la velocità di lettura/scrittura della memoria flash contenuta nella chiavette era molto bassa, "frenata" proprio dalla ridotta banda passante dell'interfaccia USB, che nella sua versione originale, la 1.1, è di 12 Mbit/s. Recentemente invece quasi tutte le chiavette di nuova costruzione utilizzano la più veloce versione 2.0, perfettamente retro-compatibile con la versione 1.1, e dotata di una banda passante di 480 Mbit/s.
È da precisare però che la velocità di scrittura non dipende solo dall'interfaccia utilizzata, ma anche dal tipo di memoria flash utilizzata, e dalla eventuale presenza di microchip dedicati all'interno della chiavetta stessa. Esistono a questo proposito in commercio alcune chiavette che contengono un piccolo microprocessore dedicato ad ottimizzare il processo di lettura/scrittura sulla memoria flash.
Ovviamente la maggiore complessità di queste soluzioni relegano per il momento questi "bolidi" ad un mercato professionale di fascia alta con esigenze specifiche.
Grazie alle dimensioni ridotte, all'assenza di meccanismi mobili (al contrario degli hard disk comuni) che lo rende molto resistente, alle sempre crescenti dimensioni della memoria e alla sua interoperabilità la chiavetta si sta configurando, accanto ai CD e ai DVD come unità preferita da un crescente numero di consumatori per il trasporto fisico di dati. Si tenga inoltre in considerazione il fatto che il numero di scritture che una memoria flash può supportare non è illimitato, seppur molto alto (oltre 100.000 cicli di scrittura).

Pro e contro
Nello scaricamento e caricamento di dati la chiavetta USB è il supporto con il minore ingombro (sta in tasca) più veloce: supera in velocità di lettura e scrittura i CD-ROM e DVD-ROM, ma è più lento delle componenti interne del computer (memoria cache, RAM e Hard Disk).
Attualmente sono in commercio chiavette USB da 64 GB e ne sono state testate altre da 128 GB.
Altro vantaggio è la sua versatilità, tutti i sistemi operativi moderni infatti non richiedono l'installazione di driver per riconoscere le chiavi USB.
Un aspetto negativo è il fatto che dopo un lungo periodo di utilizzo, la memoria presente nella chiavetta potrebbe perdere dati. Questo dipende dalla specifica memoria e dal suo grado di data retention. In questo caso basta formattare la chiavetta per riavere l'affidabilità originaria.
Un'altro aspetto negativo è che, il file system FAT gestisce dischi di dimensioni massime di 4Gb, quindi se ho una chiavetta USB che supera questa grandezza????      
 Lo spiego dopo

Il file System NTFS (Fonte: Wikipedia)
NTFS (acronimo per New Technology File System), file system dei sistemi operativi basati su kernel NT.
Questo file system nasce negli anni novanta, quando Microsoft abbandonò lo sviluppo congiunto con IBM del sistema operativo OS/2 e decise di sviluppare in proprio Windows NT (che significa New Technology). Proprio per questo alcuni degli aspetti presenti nel file system HPFS di OS/2 sono presenti anche in NTFS.

NTFS è un notevole passo avanti rispetto a FAT, l'altro file system di Microsoft. Queste le sue principali caratteristiche:
Affidabilità - NTFS è un sistema transazionale (o "Journaled" come si dice nei sistemi operativi Apple come Mac OS X); questo vuol dire che se un'operazione è interrotta a metà (ad esempio per un blackout) viene persa solo quell'operazione ma non è compromessa l'integrità del file system il quale resta comunque leggibile dal computer.
Permessi e Controllo d'Accesso - a ciascun file o cartella è possibile assegnare dei diritti di accesso (lettura, scrittura, modifica, cancellazione e altri).
Nomi lunghi e Unicode - i nomi dei file e delle cartelle possono essere lunghi fino a 255 caratteri e possono contenere caratteri di tutte le lingue del mondo grazie alla codifica Unicode.
Dimensioni e Flessibilità - La dimensione dei volumi e il massimo numero di file sono praticamente illimitati; la dimensione del volume può raggiungere al massimo i 256 Terabytes, il numero limite di file è invece di circa 4,3 miliardi. La dimensione massima di un singolo file è di 16 Terabytes, contro i 4 GigaBytes di FAT e FAT32. Sono supportati nativamente i volumi sparsi e il mirroring. Sono finalmente disponibili gli hardlink.
La performance di NTFS è nettamente superiore a quella di FAT e di FAT32. A partire da Windows 2000, è inoltre possibile montare un volume NTFS come sottodirectory di un altro volume NTFS.
NTFS permette inoltre di utilizzare in modo trasparente delle opzioni di compressione (la compressione è mediocre, meno di ZIP, ma permette l'accesso immediato a qualunque punto del file) e di crittografia (chiamato anche EFS).
In NTFS sono stati aggiunti i cosiddetti punti di reparse, ovvero dei meccanismi che consentono le giunzioni (junctions) tra directory, altrimenti impossibili per la struttura del file system.

Struttura
NTFS sfrutta un'indicizzazione a 64 bit, sebbene la sua implementazione sia basata soltanto su 32 bit.
La struttura principale di un file system NTFS è la Master File Table (MFT), una tabella strutturata in blocchi (solitamente in record di 1KB) che contiene gli attributi di tutti i file del volume, inclusi i meta-dati. Tali attributi possono essere attributi residenti quando sono presenti in MFT, oppure, se non memorizzabili a causa del poco spazio, vengono salvati in qualche altra posizione del file system e prendono il nome di attributi non residenti.
Le directory sono memorizzate come file: in ogni file-directory sono presenti degli attributi speciali, memorizzati in ordine lessicografico, che si riferiscono ai file contenuti in tale directory.
I dati veri e propri dei file sono memorizzati in flussi puntati da appositi attributi Data.

Possibili inconvenienti
Il più grosso inconveniente di NTFS è che è più complesso da amministrare di FAT e di FAT32. Gli utenti dei sistemi operativi Microsoft infatti erano abituati a poter accedere alle partizioni FAT anche con un semplice dischetto di boot DOS. Questa in realtà non è una vera limitazione di NTFS, quanto piuttosto il risultato del fatto che NTFS è un file system più moderno, completo e complesso. Il vero limite, invece, è legato al fatto che Microsoft non ha reso pubbliche le specifiche di NTFS, e quindi NTFS è un file system di fatto chiuso e proprietario. Anche per questo, nonostante le sue qualità, non ha conosciuto fortuna al di fuori dei sistemi operativi Microsoft.
Sono tuttavia in corso progetti di reverse engineering che mirano a rendere accessibili le partizioni NTFS anche da altri sistemi operativi.
Quindi se formattiamo un dispositivo USB con NTFS vedremmo calare un po' le prestazioni del dispositivo stesso, nel senso che lo scambio di dati avviene un po' più lentamente, ma a confronto ai benefici che questo file system porta, la velocità è un parametro trascurabile.

Curiosità
Se inseriamo una chiavetta USB in un connettore USB del PC, il Windows XP (O successivi), riconoscono il dispositivo installandone i driver, rendendo di fatto il dispositivo immediatamente utilizzabile.
Il sistema operativo imposta la cache di scrittura delle chiavette USB in modo da essere ottimizzata per la rimozione rapida, cioè, questa ottimizzazione disabilita la cache di scrittura su disco e in windows, in modo da consentire la disconnessione della periferica senza l'utilizzo dell'icona Rimozione sicura.
Se andiamo nell'utilità di formattazione della chiavetta USB, solitamente, nel combo box vicino l'etichetta "file system" possiamo notare come esista solamente una voce... "FAT", quindi formattando la chiavetta USB applicheremo i criteri di formattazione per un file system FAT, ma se vorremmo formattare in NTFS???
SEMPLICE!
dovreste andare in gestione periferiche, passando attraverso la finestra delle proprietà del sistema.
Più specificatamente procediamo nel seguente modo:

tenere premuti i tasti+, si apre la finestra delle proprietà del sistema, andiamo sulla linguetta Hardware e premiamo sul pulsante "Gestione periferiche" aperta la finestra della gestione periferiche, individuare la voce "Unità disco", premere sul + a sinistra della voce stessa, si apre la lista dei dischi che si trovano sul computer, individuare la dicitura della propria chiavetta USB e cliccare con il pulsante destro su di essa, comparso il menù contestuale cliccare su proprietà, nella finestra delle proprietà della chiavetta andare nella linguetta "Criteri", da li spuntare l'opzione "Ottimizza prestazioni", premere su ok e chiudere le altre finestre aperte in precedenza.
A questo punto andiamo a formattare la nostra chiavetta, adesso nelle opzioni di file system notiamo due voci "NTFS" e "FAT32", noi scegliamo NTFS, Formattiamo.

Adesso la chiavetta USB è pronta x essere resa avviabile.

Molti siti suggeriscono la seguente procedura
si procede montando l'immagine ISO del sistema operativo in un drive virtuale
(con qualsiasi applicazione che ne possa creare uno, io preferisco daemon tools lite)

dopo aver montato la ISO di Windows 7

andate su Start ==> esegui

digitate cmd e premete invio, adesso siete nel prompt dei comandi

digitate la lettera del vostro drive virtuale, quello dove avete montato l'immagine ISO, ad esempio se l'immagine è montata su D, digitare:

 D:    



siete dentro il drive virtuale

a questo punto dovete cambiare directory (o cartella :P) quindi procedete digitando




siete nella directory "boot", quindi visualizzando il contenuto vi trovate alcuni file, tra questi, c'è il file eseguibile Bootsect.exe.
Utilizzando il comando dir vedrete i file e le eventuali cartelle che sono dentro la directory boot




Ricordando che K per me è la chiavetta USB

digitate il seguente comando:





a questo punto vi apparirà un messaggio simile al seguente:

  Target volumes will be updated with BOOTMGR compatible bootcode. 
  K: (\\?\Volume{eefe109b-a1ce-11de-aef4-000fea08e7bd})            
  Successfully updated NTFS filesystem bootcode.                   
  Bootcode was successfully updated on all targeted volumes.       

ok, fatto, copiate il contenuto del drive virtuale (quello con l'immagine windows 7) nella chiavetta USB!!!

Però potrebbe succedere che la chiavetta non diventi avviabile con il metodo descritto sopra, o addirittura può anche accadere che quando diamo il comando bootsect dia un errore, e quindi il BootCode non venga aggiornato... E allora? direte voi! Beh, esiste un metodo molto più semplice e che funziona al 100%, testato personalmente.
Serve solamente un software, il nome è 1UltraISO.


Come si procede
1) Avviare UlraISO

2) Cliccare su FILE

3) Poi su APRI

4) Aprire l'immagine ISO del Windows che si vuole mettere nella Chiavetta USB

5) Cliccare sulla lettera dell'unità corrispondente alla vostra Chiavetta USB nella lista di drive che trovate in basso a sinistra

6) Cliccare nel menu in alto la voce AVVIO

7) poi su SCRIVI FILE IMMAGINE DISCO

8) siete nella finestra di scrittura, premete sul pulsante in basso SCRIVI

9) attendere che sia finita la scrittura sulla Chiavetta USB

10) adesso la chiavetta è avviabile e con dentro il windows
_________________________________________________________________________________

1 UltraISO non è un software free, ma la versione trial è più che sufficiente per l'utilizzo che ne dobbiamo fare!
_________________________________________________________________________________