07/04/2012
Qualche foto scattata durante la mia esperienza lavorativa in un'azienda romana
Ecco cosa succede quando uno switch non ti risponde più via SSH: giubbotto, sciarpa, guanti e mezz'ora passata dentro al CED con i condizionatori a palla ed una temperatura polare :P
Questa persona è passata da "sistemista" ad "hardwarista"
No, non è il set del piccolo killer professionista :P
e infatti è un firewall
Infine, ecco il mio IP telephone Cisco appena scartato:
peccato non abbia avuto il tempo di giocarci un po'
Tutto sommato è stata un'esperienza positiva, ho imparato tanto ed ho conosciuto gente davvero in gamba (Arnaldo, Giorgio, Giancarlo, Fabio e Massimo solo per fare alcuni nomi).
In conclusione, per farla breve: ho imparato l'arte e l'ho messa da parte :P
A presto.
11:03 Scritto da: nazarenolatella in Vita da Sistemista | Link permanente | Commenti (0) | Segnala | Tag: ip telephone, sace, cisco, ced, juniper | OKNOtizie |
Facebook
13/03/2012
Cisco port security
Come sono solito ricordare, la sicurezza dei dispositivi deve iniziare dai livelli più bassi (ad esempio da quello fisico, utilizzando case allarmati oppure posizionando i device all'interno di CED dotati di meccanismi per il controllo biometrico all'ingresso), fino ai livelli più alti (come quello applicativo).
Seguendo questo ragionamento, si può facilmente affermare che le celeberrime ACL standard, estese e nominali lavorano a livello 3 e 4, mentre il port security lavora a livello 2 (alias Data Link, in particolare sublyer MAC).
Ma come funziona realmente il port security? Semplice, controlla i MAC address provenienti da una data interfaccia ed in caso di anomalia (come la ricezione di un indirizzo MAC diverso da quello atteso) applica delle misure di protezione (ad esempio disabilitando la porta).
In questo modo lo switch (ma tale ragionamento vale anche per i router ed i firewall dotati di interfacce Ethernet), presenta una maggiore resistenza ad attacchi di vario tipo, come il cosiddetto MAC flooding, il cui scopo è quello di saturare la memoria CAM (di cui sono dotati gli switch), causando una sorta di denial of service.
Ma vediamo adesso come abilitare tale funzionalità su uno switch Cisco.
Per prima cosa occorre identificare le porte su cui applicare il port security. Per fare ciò è necessario indicare esplicitamente la modalità di funzionamento della porta stessa (access o trunk), in quanto tale misura di sicurezza non può essere applicata alle porte in dynamic mode.
Onestamente credo che abilitare il port security su una porta in trunk sia controproducente, poichè sarebbe meglio operare sul vlan allowed piuttosto che su un filtraggio a livello 2 (non possiamo conoscere a priori tutti i MAC address che transiteranno lungo il trunk ed anche se questo fosse possibile, bisognerebbe dichiararli tutti manualmente con grande mole di lavoro annessa).
Ergo, mettiamo in access le porte su cui vogliamo abilitare il port security, ad esempio:
Switch(config)# int fa0/0
Switch(config-if)# switchport mode access
Se volessimo mettere in access più porte possiamo utilizzare il comando int range, ad esempio:
Switch(config)# int range fa 0/0 - 12
Switch(config-if)# switchport mode access
Ora sulle porte che abbiamo messo in access possiamo abilitare il port security:
Switch(config-if)# switchport port-security
In questo modo, lo switch terrà conto del MAC address ricevuto su una data porta (e salvato nella CAM), e nel caso in cui su quella stessa porta riceverà un MAC address diverso da quello memorizzato, la disabiliterà.
Nel caso in cui, invece, su una data porta dello switch sia allacciata ad esempio una macchina fisica su cui gira un middleware (come VMWare ESX) che gestisce N macchine virtuali (ognuna delle quali è dotata di una o più schede Ethernet e quindi uno o più MAC address), possiamo utilizzare il parametro maximum per specificare il numero massimo di indirizzi MAC che possono essere ricevuti su quella specifica porta:
Switch(config)# int fa0/0
Switch(config-int)# switchport port-security maximum 5
Inoltre, è possibile definire a priori il MAC address consentito su una specifica interfaccia dello switch:
Switch(config-int)# switchport port-security mac-address XXXX.YYYY
I 16 byte utilizzati per la rappresentazione di un MAC (in notazione esadecimale, conosciuta anche come hex), nei dispositivi Cisco devono essere indicati come XXXX.YYYY.
Se un'interfaccia va in error-disabled state a causa di una violazione identificata dal port security, è possibile riabilitarla utilizzando i seguenti comandi:
Switch# term mon
Switch# conf t
Switch(config)# int fa0/0
Switch(config-int)# shut
Appena riceverevo in output una notifica simile alla seguente:
1w0d: %LINK-3-UPDOWN: Interface FastEthernet0/0, changed state to down
possiamo riabilitare la porta:
Switch(config-int)# no shut
Occorre precisare che il comando term mon è fondamentale se ci si connette al dispositivo mediante vty, in quanto abilita la visualizzazione delle notifiche (ad esempio il cambio di stato di un'interfaccia).
Per verificare se il port security è stato applicato su una specifica porta è sufficiente digitare:
Switch# sh run int <nome porta>
Mentre per visualizzare le informazioni relative al port security applicato ad una specifica interfaccia occorre usare il comando:
Switch# sh port-security int <nome interfaccia>
Per visualizzare le informazioni sul port security relativo a tutte le interfacce su cui è stato applicato basta lanciare il comando:
Switch# sh port-security
Infine, per listare tutti i MAC address memorizzati dal port security (e quindi ritenuti sicuri), è necessario digitare:
Switch# sh port-security address
Ovviamente il port security consente una maggiore customizzazione rispetto alla procedura (piuttosto basilare) mostrata in questo post. Dunque per maggiori dettagli vi invito a leggere la guida ufficiale Cisco.
A presto.
10:01 Scritto da: nazarenolatella in Sicurezza | Link permanente | Commenti (0) | Segnala | Tag: port security, mac address, data link, cam, error-disabled, cisco, catalyst | OKNOtizie |
Facebook
06/02/2012
Configurazione del firewall embedded di un Cisco 827v4
Affinchè si possa realizzare la configurazione che sto per descrivere, è necessario che la IOS del nostro Cisco 827v4 supporti le funzionalità tipiche di un firewall (anche se MOLTO ridotte).
Nello specifico, il nome della IOS deve contenere la sigla o oppure o3, dove o sta appunto per firewall ed o3 sta per firewall/IDS. Nel mio caso, posso dirvi che ho a disposizione una IOS che supporta solo il firewall, quindi tale configurazione si limita a ciò che ho potuto effettivamente testare.
Per prima cosa accediamo alla modalità enable del router:
NightRouter>ena
Password:
NightRouter#conf t
entriamo nel menù di configurazione:
NightRouter#conf t
e creiamo le policy del nostro firewall:
NightRouter(config)#ip inspect name fw http
NightRouter(config)#ip inspect name fw ftp
NightRouter(config)#ip inspect name fw icmp
NightRouter(config)#ip inspect name fw smtp
NightRouter(config)#ip inspect name fw fragment
NightRouter(config)#ip inspect name fw rcmd
in questo modo, il nostro router terrà d'occhio i pacchetti relativi ai protocolli specificati. Esistono altri protocolli che possono essere monitorati, basta lanciare il comando:
NightRouter(config)#ip inspect name <nomepolicy> ?
per averne una lista completa.
In particolare, l'output di tale comando sarà il seguente:
cuseeme CUSeeMe Protocol
fragment IP fragment inspection
ftp File Transfer Protocol
h323 H.323 Protocol (e.g, MS NetMeeting, Intel Video Phone)
http HTTP Protocol
icmp ICMP Protocol
netshow Microsoft NetShow Protocol
rcmd R commands (r-exec, r-login, r-sh)
realaudio Real Audio Protocol
rpc Remote Prodedure Call Protocol
rtsp Real Time Streaming Protocol
sip SIP Protocol
skinny Skinny Client Control Protocol
smtp Simple Mail Transfer Protocol
sqlnet SQL Net Protocol
streamworks StreamWorks Protocol
tcp Transmission Control Protocol
tftp TFTP Protocol
udp User Datagram Protocol
vdolive VDOLive Protocol
Successivamente, si dovrà associare la policy di firewalling all'interfaccia dia0, ovvero quella direttamente esposta su Internet.
Il comando da utilizzare è il seguente:
NightRouter(config)#int dia0
NightRouter(config-if)#ip inspect fw in
Infine, salviamo la configurazione con il classico copy run start:
NightRouter(config)#exit
NightRouter#copy run start
ed abbiamo finito.
A presto.
NB: dai test che ho effettuato sembrerebbe che il router non riesca a gestire correttamente una grande mole di traffico dopo aver abilitato il firewall. Proprio per questo motivo, vi consiglio di non ispezionare il payload dei pacchetti ma soltanto l'header degli stessi, evitando ad esempio delle policy del tipo:
NightRouter(config)#ip inspect name fw tcp
oppure
NightRouter(config)#ip inspect name fw udp
10:53 Scritto da: nazarenolatella in Sicurezza | Link permanente | Commenti (0) | Segnala | Tag: cisco, 827, 800 series, firewall embedded, ip inspect | OKNOtizie |
Facebook





















