Categoria: Networking

Leave a reply

ShellFl0w – Architetture ed Assembly Hack

Introduzione

Se vogliamo davvero essere in grado di trovare vulnerabilità in un sistema computazionale, non possiamo non conoscere le architetture di sistema, come funzionano le allocazioni di memoria e la gestione dell’astrazione (e non) software del PC. In fatti se noi non sapessimo che l’unita’ di base della memoria e’ il byte, non riusciremmo a capire come nascono e si sfruttano molte della vulnerabilità software. Quindi in questo articolo tratterò le basi teoriche della architettura dei sistemi e continueremo con Assembly. Io vi consiglierei di approfondire sempre gli argomenti che tratto e che tratterò in questa rubrica, considerando che più cose si conoscono, più facile è la comprensione e l’ingegno per un exploit di una vulnerabilità.
(altro…)




Leave a reply

Layer 3 – Network Layer

Network Layer è il livello 3 del modello di riferimento ISO/OSI.

A questo livello, Internet può essere vista come un insieme di sottoreti interconnesse: non esiste una vera e propria struttura, ma solo dorsali (collegamenti ad alta velocità di trasmissione) principali formate da linee a banda larga e router veloci. Alle dorsali principali si collegano le reti regionali, a cui si collegano le LAN di molte aziende, università e fornitori di servizi Internet. La “colla” che tiene insieme la rete Internet è il protocollo IP. Compito del protocollo IP è trasportare i dati inviati da una sorgente a una destinazione, senza tener conto nè della posizione delle macchine comunicanti, nè dell’eventuale presenza di reti intermedie.
(altro…)




Leave a reply

Socket & Python 3

In informatica e nei sistemi operativi moderni un socket è un’astrazione software progettata per poter utilizzare delle API standard e condivise per la trasmissione e la ricezione di dati attraverso una rete
oppure come meccanismo di IPC.
È il punto in cui il codice applicativo di un processo accede al canale di comunicazione per mezzo di una porta, ottenendo una comunicazione tra processi che lavorano su due macchine fisicamente separate.
Dal punto di vista di un programmatore un socket è un particolare oggetto sul quale leggere e scrivere i dati da trasmettere o ricevere.
(fonte wikipedia)

In generale, si definisce socket una rappresentazione a livello software utilizzata per interfacciare i due terminali in gioco in una connessione tra due computer.

Vediamo oggi un semplice esempio di come si crea un socket in Python (v.3.5) e di come si puo’ usarlo per comunicare con un altro pc, in questo caso un web server remoto. (altro…)




Leave a reply

SpeedTest via CLI

Esistono molti siti in grado di testare al volo le performance della propria connessione ad internet, uno dei piu conosciuti è speedtest.net
Oggi vi illustrerò come effettuare il test in maniera semplice e veloce attraverso uno script in Python liberamente scaricabile da Github.
L’URL del progetto su Github è https://github.com/sivel/speedtest-cli

Per l’utilizzo è necessario disporre di Python sulla propria distro (in genere è preinstallato).

È possibile installare lo script o avviarlo all’occorrenza. (altro…)




Leave a reply

I blog? compiono 20 anni!

La data di oggi è stata omologata come quella in cui cade la nascita dei blog. Il primo blog della fu Scripting News di Dave Winer (lo sviluppatore di Fargo nonché colui che contribuì ad inventare il sistema dei feed RSS) che, guarda caso, già nel 1994 aveva le idee chiare scrivendo questo pezzo:Bill Gates contro Internet Proprio in tema con Freenix, ah ah!

Secondo il mio parere di modesto blogger, lo strumento blog sarebbe ancora valido, ma i tempi e le persone sono cambiate.

A dover capire questo deve essere chi scrive, in quanto chi legge lo ha già capito da tempo.

La sensazione di tutte le persone è di avere meno tempo a disposizione, mentre le pagine da leggere sono in aumento: facile capire come andrà a finire…

Quindi considero i blog ormai superflui? Giammai, non sarei coerente con me stesso e con i miei lettori.

Pensiamo a quei paesi in cui le informazioni libere raggiungono le persone comuni passando dai blog come unica via percorribile.

Quello che voglio dire è che non ci si può meravigliare, come invece vedo fare molte volte, che le persone non leggano gli articoli.

Ci si deve già considerare onorati delle visite: che tutti leggano e capiscano gli articoli è veramente utopia!

Del resto, molti contenuti presenti nei blog potrebbero benissimo stare in una semplice pagina Facebook, che io ritengo il principale avversario dei blog.

Un esempio per chiarire il mio ragionamento: mi piace uno scrittore, Paolo Longarini che ha sia un blog che una pagina fb ( Servitevi da Soli) in cui scrive ogni paio di giorni i suoi pezzi.

Dove pensate che lo segua? Su Facebook! Molto più immediato: notifica della nuova uscita, commenti al pezzo e via. Ma che dire se scrivesse  nel blog e postasse solo il link in fb? Sarei costretto, volentieri, a leggere il blog.

Ecco il punto: la strategia! Che naturalmente, richiede di avere obbiettivi ben chiari in mente. Quale dovrebbe essere l’obbiettivo di un blog? Al giorno d’oggi  una risposta unica non c’è, ma chiaramente, chi vuole farsi un brand scriverà diversamente da chi vuole informare dei suoi servizi o prodotti. A chi poi vorrebbe guadagnare con i click…  auguro le migliori fortune!

Quindi si deduce che, perché un blog abbia buon seguito, deve avere caratteristiche veramente spiccate, ma anche offrire dei servizi per il lettore. Questi possono essere canali Youtube guide, manuali pdf, link ad articoli utili(non è che i lettori aprono solo la nostra di pagina) oppure, niente di tutto questo, ma argomenti attuali, dai contenuti affidabili e che siano utili a chi legge. Facile a dirsi e difficile a farsi, ma questo deve essere la base di ogni blogger che voglia crearsi un seguito di lettori. Anche se questa ricerca della verità e dell’accuratezza andasse  a discapito della frequenza di pubblicazione, sarebbe comunque da preferire.

In conclusione ritengo che il blog dimostri tutti i suoi 20 anni, ma che noi blogger possiamo tenere fresco il nostro prodotto  sfornando pagine attuali, utili ai lettori e che rispecchino l’autore.




2 Replies

Utilizza qualsiasi router con il tuo ISP

Da qualche anno, specie con la diffusione delle connessioni FTTC, molti operatori hanno iniziato ad imporre l’utilizzo del proprio router come gateway per la connessione ad internet e per le chiamate che spesso vengono veicolate sulla rete tramite tecnologia VoIP. Nella maggior parte dei casi sarebbe impossibile fare diversamente a causa dei parametri di rete non resi pubblici dall’ISP (specie la parte relativa alla configurazione VoIP); quindi nella migliore delle ipotesi ci si ritroverebbe senza la possibilità di utilizzare la linea fissa per le chiamate. Nella maggior parte dei casi, il gateway fornito dall’operatore può anche andar bene per un utilizzo casalingo, ma come fare se non lo si trova adeguato alle proprie esigenze?
(altro…)




Leave a reply

DNS e Indirizzo IP

Domain Name System è un sistema utilizzato per la risoluzione di nomi dei nodi della rete (host) in indirizzi IP e viceversa. (cit. Wikipedia). In parole povere essi si occupano di tradurre il nome di un dominio ad esempio www.networkbyandrew.altervista.org al corrispettivo indirizzo IP.
(altro…)




Leave a reply

Imbustamento dei dati ed Header

Hello Friends

Vediamo ora l’imbustamento dei dati che attraversano i livelli.

L’immagine sopra mostra come funziona l’imbustamento dei dati, che passano da un applicazione software (Layer 7 del Computer A) per tutti i livelli, fino a ritornare nel Layer 7 del Computer B.
(altro…)




Leave a reply

Sistema Client-Server

Hello friends

In quest’articolo daremo un breve accenno ad una delle architetture di rete più famose: Client-Server

In una architettura client-server più computer accedono a servizi e risorse distribuite da un computer dedicato (server)  a svolgere particolari compiti:

amministrazione
condivisione di file
share di stampanti
condivisione di applicativi
fornitura di servizi
In particolare abbiamo un device come ad esempio un computer (client) che attraverso un l’interfaccia utente di una applicazione, si connette al server. 

La presenza di un server permette a più client, di condividere le risorse contenenti in esso. I client e i server sono in collegamento tramite i protocolli di comunicazione, come ad esempio il protocollo HTTP del Layer 7 (cliccate qui se vi siete persi il modello ISO/OSI) che viene usato per la trasmissione d’informazioni sul web. In questo caso il client è il browser ed il server è la macchina su cui risiede il sito web da visualizzare.

Un altro esempio è il protocollo FTP che risiede sempre nel Layer 7, e si occupa del trasferimento di dati tra due host, abbiamo un client FTP come ad esempio FileZilla, con un interfaccia grafica, che ci permette attraverso il protocollo FTP di instaura una connessione ad un server FTP.

Al prossimo articolo!




Leave a reply

Topologie di rete

In quest articolo vi spiegherò la varie classificazioni delle reti.
Le reti possono essere classificate in base alle loro caratteristiche, che sono:

  • l’estensione geografica
  • la loro architettura
  • la topologia

Classificazione per estensione

In relazione all’area geografica su cui esse si estendono, possiamo distinguere 4 tipi di reti:
(altro…)