• Regolamento Macrocategoria DEV
    Prima di aprire un topic nella Macrocategoria DEV, è bene leggerne il suo regolamento. Sei un'azienda o un hosting/provider? Qui sono anche contenute informazioni per collaborare con Sciax2 ed ottenere l'accredito nella nostra community!

Info Dizionario Informatico

CrazyXahe

Utente Medio
Autore del topic
17 Aprile 2008
219
0
Miglior risposta
0
[AVVERTENZA]Non mi ritengo responsabile dell'uso che ne verrà fatto di questo materiale[/AVVERTENZA]​

- Indirizzo IP
Un Indirizzo IP è un numero che identifica univocamente nell'ambito di una singola rete i dispositivi collegati con una rete informatica che utilizza lo standard IP (Internet Protocol). Ciascun dispositivo (router, computer, server di rete, stampanti, alcuni tipi di telefoni, ...) ha, quindi, il suo indirizzo.

Semplificando, un indirizzo IP può essere visto come l'equivalente di un indirizzo stradale o un numero telefonico dei dispositivi collegati su internet. Infatti, così come un indirizzo stradale o un numero telefonico identifica un edificio o un telefono, così un indirizzo IP identifica univocamente uno specifico computer o un qualsiasi altro dispositivo di rete o una rete. A sua volta, in una rete possono essere utilizzati altri indirizzi IP validi localmente analogamente alla numerazione degli interni di un edificio.

Tuttavia l'indirizzo IP, rispetto all'indirizzo stradale, può cambiare con grande facilità in funzione di moltissime variabili. Può anche essere occultato, falsificato o condiviso (da computer differenti in luoghi differenti) più o meno lecitamente e con facilità (anche con l'ausilio di altri dispositivi). E, rispetto all'indirizzo stradale, da solo non dice nulla di chi lo usa se non ai fornitori di accesso a internet. Insieme ad altri dati può essere usato per profilare gli utenti.

In particolare, all'interno di una rete ad ogni interfaccia connessa alla rete fisica viene assegnato un indirizzo "univoco", in modo da rendere possibili le comunicazioni tra un computer e l'altro.

Va considerato, infatti, che non è l'host ad essere connesso ma è l'interfaccia fisica (ad esempio una scheda di rete); un router, ad esempio, ha diverse interfacce e per ognuna occorre un indirizzo IP.

Gli indirizzi IP pubblici sono rilasciati e regolamentati dall'ICANN tramite una serie di organizzazioni delegate. Tuttavia è da tener presente che a livello mondiale e nazionale i primi provider di connessione Internet si sono accaparrati un numero sproporzionato di indirizzi IP. I provider che si sono affacciati dopo sul mercato hanno ovviato a questo stato di cose considerando i propri utenti di una medesima città come una rete privata che accede ad Internet mediante un singolo IP pubblico. Questo comporta alcune difficoltà nell'utilizzo di servizi su Internet che presuppongono che ad un IP corrisponda una singola connessione (per esempio IRC e peer-to-peer).

Per conoscere il proprio indirizzo ip, subnet mask e gateway nei sistemi operativi Microsoft Windows è sufficiente digitare dal prompt di DOS il comando ipconfig (il prompt del DOS è accessibile dal percorso Start/Esegui, digitando "cmd") mentre nei sistemi basati su Linux è sufficiente aprire una shell e digitare il comando ifconfig.

- Host
Si definisce host o end system (terminali) ogni terminale collegato ad Internet. Gli host possono essere di diverso tipo, ad esempio computer, palmari, dispositivi mobili e così via, fino a includere web TV, dispositivi domestici e thin client.

L'host è definito in questo modo perché ospita programmi di livello applicativo che sono sia client (ad esempio browser web, reader di posta elettronica), sia server (ad esempio, web server).

Uno stesso host può agire contemporaneamente da client e da server, in particolare con le applicazioni peer to peer (esempio Napster, Kazaa, eMule,Direct Connect etc.).

I terminali sono collegati attraverso link di comunicazione.


- Server
Un server (detto in italiano anche servente o serviente) è una componente informatica che fornisce servizi ad altre componenti (tipicamente chiamate client) attraverso una rete. Si noti che il termine server, così come pure il termine client, possono essere riferiti sia alla componente software che alla componente hardware.

A seconda del contesto, il termine server può indicare:

1. un computer utilizzato per fornire servizi ad altri computer, a prescindere dalle sue caratteristiche hardware
2. un computer appartenente ad una fascia di mercato dedicata all'uso come server, caratterizzato da alta affidabilità e prestazioni
3. un processo (ovvero un programma software in esecuzione) che fornisca servizi ad altri processi (es. Server Web).

In linea generale si tende ad indicare come Server il componente che eroga un servizio e Client il componente che ne fa uso.


- DNS
Domain Name System (spesso indicato con DNS) è un servizio utilizzato per la risoluzione di nomi di host in indirizzi IP e viceversa. Il servizio è realizzato tramite un database distribuito, costituito dai server DNS.

Il nome DNS denota anche il protocollo che regola il funzionamento del servizio, i programmi che lo implementano, i server su cui questi girano, l'insieme di questi server che cooperano per fornire il servizio.

I nomi DNS, o "nomi di dominio", sono una delle caratteristiche più visibili di Internet.

C'è confusione in merito alla definizione dell'acronimo: la S spesso viene interpretata come service, ma la definizione corretta è system.

L'operazione di convertire un nome in un indirizzo è detta risoluzione DNS, convertire un indirizzo IP in nome è detto risoluzione inversa.

- SMTP
Simple Mail Transfer Protocol (SMTP) è il protocollo standard per la trasmissione via internet di e-mail. In italiano si potrebbe tradurre come "Protocollo elementare di trasferimento postale".

È un protocollo relativamente semplice, testuale, nel quale vengono specificati uno o più destinatari di un messaggio, verificata la loro esistenza, il messaggio viene trasferito. È abbastanza facile verificare come funziona un server SMTP mediante un client telnet. L'SMTP usa il protocollo di trasmissione TCP e, per accedervi, la porta 25. Per associare il server SMTP a un dato nome di dominio (DNS) si usa un record denominato MX (Mail eXchange).

L'SMTP iniziò a diffondersi nei primi anni '80. A quel tempo era un'alternativa all'UUCP, che era più adatto a gestire il trasferimento di e-mail fra computer la cui connessione era intermittente. L'SMTP, d'altra parte, funziona meglio se i computer sono sempre collegati alla rete.

Sendmail fu uno dei primi (se non proprio il primo) mail transfer agent ad implementare il protocollo SMTP. Fino al 2001 sono stati scritti almeno 50 programmi che implementano il protocollo SMTP come client (mittente dei messaggi) o server (destinatario del messaggio). Altri server molto diffusi sono Exim di Philip Hazel, Postfix di Wietse Venema, qmail di D. J. Bernstein, Courier di Sam Varshavchik e Microsoft Exchange Server.

Poiché SMTP è un protocollo testuale basato sulla codifica ASCII, non è permesso trasmettere direttamente testo composto con un diverso set di caratteri e tantomeno file binari. Lo standard MIME permette di estendere il formato dei messaggi mantenendo la compatibilità col software esistente. Per esempio, al giorno d'oggi molti server SMTP supportano l'estensione 8BITMIME, la quale permette un trasferimento di un testo che contiene caratteri accentati (non-ASCII) senza bisogno di trascodificarlo. Altri limiti di SMTP, quale la lunghezza massima di una riga, impediscono la spedizione di file binari senza trascodifica. (Nota che per i file binari inviati con HTTP si utilizza il formato MIME senza bisogno di una trascodifica.)

L'SMTP è un protocollo che permette soltanto di inviare messaggi di posta, ma non di richiederli ad un server: per fare questo il client di posta deve usare altri protocolli, quali il POP3 (Post Office Protocol) e l'IMAP (Internet Message Access Protocol).


- FTP
L'FTP, acronimo di File Transfer Protocol (protocollo di trasferimento file), è un protocollo per la trasmissione di dati tra host basato su TCP.

FTP è uno dei primi protocolli definiti ed ha subito una lunga evoluzione negli anni. La prima specifica, sviluppata presso il MIT, risale al 1971 (RFC-114). L'attuale specifica fa riferimento all' RFC-959.

Gli obiettivi principali di FTP descritti nella sua RFC ufficiale sono:

* Promuovere la condivisione di file (programmi o dati)
* Incoraggiare l'uso indiretto o implicito di computer remoti.
* Risolvere in maniera trasparente incompatibilità tra differenti sistemi di stoccaggio file tra host.
* Trasferire dati in maniera affidabile ed efficiente.

- Http
HTTP è l'acronimo di HyperText Transfer Protocol (protocollo di trasferimento di un ipertesto). Usato come principale sistema per la trasmissione di informazioni sul web. Le specifiche del protocollo sono attualmente in carica al W3C (World Wide Web Consortium)

La prima versione, la 0.9, dell'HTTP risale alla fine degli anni '80 del XX secolo e costituiva, insieme con l'HTML e gli URL, il nucleo base della World Wide Web WWW global information initiative" portata avanti da Tim Berners-Lee al CERN di Ginevra per la condivisione delle informazioni tra la comunità dei fisici delle alte energie. La prima versione effettivamente disponibile del protocollo, la HTTP/1.0, venne implementata dallo stesso Berners-Lee nel 1991 e proposta come RFC 1945 all'ente normatore IETF nel 1996. Con la diffusione di NCSA Mosaic, un browser grafico di facile uso, il WWW conobbe un successo crescente e divennero evidenti alcuni limiti della versione 1.0 del protocollo, in particolare:

* l'impossibilità di ospitare più siti www sullo stesso server (virtual host)
* il mancato riuso delle connessioni disponibili
* l'insufficienza dei meccanismi di sicurezza

Il protocollo venne quindi esteso nella versione HTTP/1.1, presentato come RFC 2068 nel 1997 e successivamente aggiornato nel 1999 come descritto dal RFC 2616

L'HTTP funziona su un meccanismo richiesta/risposta (client/server): il client esegue una richiesta ed il server restituisce la risposta. Nell'uso comune il client corrisponde al browser ed il server al sito web. Vi sono quindi due tipi di messaggi HTTP: messaggi richiesta e messaggi risposta.

HTTP differisce da altri protocolli di livello 7 come FTP, per il fatto che le connessioni vengono generalmente chiuse una volta che una particolare richiesta (o una serie di richieste correlate) è stata soddisfatta. Questo comportamento rende il protocollo HTTP ideale per il World Wide Web, in cui le pagine molto spesso contengono dei collegamenti (link) a pagine ospitate da altri server. Talvolta però pone problemi agli sviluppatori di contenuti web, perché la natura senza stato (stateless) costringe ad utilizzare dei metodi alternativi per conservare lo stato dell'utente. Spesso questi metodi si basano sull'uso dei cookie .

- Server Proxy
Un proxy è un programma che si interpone tra un client ed un server, inoltrando le richieste e le risposte dall'uno all'altro. Il client si collega al proxy invece che al server, e gli invia delle richieste. Il proxy a sua volta si collega al server e inoltra la richiesta del client, riceve la risposta e la inoltra al client.

A differenza di bridge e router, che lavorano ad un livello ISO/OSI più basso, i proxy nella maggior parte dei casi lavorano a livello applicativo; di conseguenza un programma proxy gestisce un numero limitato di protocolli applicativi.

- Telnet
Telnet è un protocollo di rete utilizzato su Internet. I documenti IETF STD 8 (RFC 854 e RFC 855) dicono:

L'obiettivo del protocollo TELNET è fornire un supporto per le comunicazioni sufficientemente generalizzato, bidirezionale ed orientato ai byte (otto bit).

È solitamente utilizzato per fornire all'utente sessioni di login remoto di tipo linea di comando tra host su internet.

Per estensione, telnet è anche il nome di un programma che un utente può usare per avviare una sessione telnet ad un host remoto; il programma telnet implementa la parte client del protocollo. I client telnet sono stati disponibili sulla maggior parte dei sistemi Unix per parecchi anni e sono disponibili per qualsiasi tipo di computer.

In inglese to telnet è usato come verbo e significa stabilire una connessione telnet.

- Bug
Nell'informatica il termine bug (in inglese "insetto") o baco identifica un errore nella scrittura di un software, che causa un suo funzionamento errato o comunque diverso da quello che l'autore ha previsto ed in alcuni casi anche il suo blocco totale; meno comunemente, il termine bug può indicare un difetto di progettazione in un componente hardware che ne causa un comportamento imprevisto o comunque diverso da quello specificato dal produttore.

I bug in un programma possono essere in certi casi particolarmente gravi a tal punto da rendere vulnerabile ad attacchi informatici anche il computer che ospita il software.

* Bug famosi nel mondo informatico sono i cosiddetti buffer overflow.
* Un noto bug in un componente hardware è quello che nel 1994 afflisse l'allora neonato microprocessore Pentium, che in certi casi restituiva risultati errati anche in semplici calcoli aritmetici. I primi Pentium infatti avevano problemi nella FPU (Floating Point Unit, Unità a Virgola Mobile o coprocessore matematico come si diceva in precedenza) per cui erravano appunto alcune operazioni decimali. In un primo tempo venne rilasciato un software che escludeva questa unità ed in seguito tutti i microprocessori vennero sostituiti.

I bug non sono tutti uguali, ne esistono di diversi tipi, e una prima suddivisione e' quella della frequenza di come si manifestano.
Un bug può ad esempio manifestarsi:

* tutte le volte che si utilizza una specifica funzione a prescindere dall'input o da altre condizioni
* solo per alcuni input e quindi rendere la funzione inutilizzabile solo parzialmente
* in modo non consistente per un determinato input e quindi "colpisca" solo saltuariamente

Nel primo caso si tratta di una funzione che è del tutto compromessa e di questi bachi nei prodotti finali se ne trovano pochi per non dire nessuno, essendo facilmente identificabili e risolvibili.
Nel secondo caso si tratta di funzioni che funzionano correttamente nella maggior parte dei casi ma che in certe condizioni (ad esempio per certi valori di input) non danno l'output corretto. Questi bachi sono molto più frequenti di quelli del primo caso e possono essere più o meno facilmente identificabili a seconda che le condizioni che li causano siano facilmente replicabili.
Nel terzo caso si tratta di bachi che tipicamente emergono nell'interazione tra due o più componenti ed emergono solo se si verificano particolari condizioni di sincronizzazione o di mancanza di sincronizzazione tra questi componenti, oppure si manifestano solo in seguito a una sequenza determinata di operazioni precedenti, vedi ad esempio una precisa sequenza di input. Sono quindi bachi che si manifestano in base ad un particolare stato che deve venir replicato esattamente (le cosiddette condizioni al contorno). Replicare questi bachi può essere estremamente difficoltoso e a volte sono richiesti particolari vincoli hardware affinché possano essere replicati. Sono bachi molto diffusi perché difficilmente identificabili in fase di test.

- Exploit
Un exploit è un termine usato in informatica per identificare un codice che, sfruttando un bug o una vulnerabilità, porta all'acquisizione di privilegi o al denial of service di un computer.

Ci sono diversi modi per classificare gli exploit. Il più comune è una classificazione a seconda del modo in cui l'exploit contatta l'applicazione vulnerabile. Un exploit remoto è compiuto attraverso la rete e sfrutta la vulnerabilità senza precedenti accessi al sistema. Un exploit locale richiede un preventivo accesso al sistema e solitamente fa aumentare i privilegi dell'utente oltre a quelli impostati dall'amministratore.

Gli exploit possono anche essere classificati a seconda del tipo di vulnerabilità che sfruttano. Vedi buffer overflow, Heap Overflow, format string attacks, race condition, double free(), Integer overflow, sql injection, cross-site scripting, cross-site request forgery, remote file inclusion e local file inclusion.

Lo scopo di molti exploit è quello di acquisire i privilegi di root su un sistema. È comunque possibile usare exploit che dapprima acquisiscono un accesso con i minimi privilegi e che poi li alzano fino ad arrivare a root.

Normalmente un exploit può sfruttare solo una specifica falla, e quando viene pubblicato questa falla è riparata e l'exploit diventa inutile per le nuove versioni del programma. Per questo motivo alcuni blackhat hacker non divulgano gli exploit trovati ma li tengono riservati per loro o per la loro comunità. Questi exploit sono chiamati zero day exploit, e scoprire il loro contenuto è il più grande desiderio per gli attacker senza conoscenze, altrimenti detti script kiddie.

- Root
In informatica il termine root (dall'inglese radice) indica il punto inziale del file system.

Nei sistemi operativi DOS il file system è separato nei vari dischi e partizioni, pertanto non esiste un’unica root. Ogni disco o partizione è contrassegnato con una lettera dalla “A” alla “Z”, dettà “unità”, e la root è la directory radice di ogni unità. A partire da Windows 95, pur rimanendo le lettere delle unità, vi è una root ideale costituita dal desktop.

Nei sistemi di tipo Unix e Linux tutti i dischi e le partizioni convivono in un’unica struttura ad albero, e la root, contrassegnata dal simbolo "/", è la radice dell’intero file system.

- Shell
In un sistema operativo, la shell è il programma che permette agli utenti di comunicare con il sistema e di avviare i programmi. È una delle componenti principali di un sistema operativo, insieme al kernel.

La shell è l'"ambiente di lavoro" attraverso il quale è possibile impartire al computer comandi, richiedendo l'esecuzione di programmi.

Esistono molti tipi di shell, che si dividono principalmente in testuali e grafiche. Quando si parla semplicemente di "shell", si intende di solito una shell testuale.

- Virus
Nell'ambito dell'informatica un virus è un software, appartenente alla categoria dei malware, che è in grado, una volta eseguito, di infettare dei file in modo da riprodursi facendo copie di sé stesso, generalmente senza farsi rilevare dall'utente. I virus possono essere o non essere direttamente dannosi per il sistema operativo che li ospita, ma anche nel caso migliore comportano un certo spreco di risorse in termini di RAM, CPU e spazio sul disco fisso. Come regola generale si assume che un virus possa danneggiare direttamente solo il software della macchina che lo ospita, anche se esso può indirettamente provocare danni anche all'hardware, ad esempio causando il surriscaldamento della CPU mediante overclocking, oppure fermando la ventola di raffreddamento.

Nell'uso comune il termine virus viene frequentemente usato come sinonimo di malware, indicando quindi di volta in volta anche categorie di "infestanti" diverse, come ad esempio worm, trojan o dialer.

Coloro che creano virus sono detti virus writer.

- Defacing
Defacing (termine inglese che, come il suo sinonimo defacement, ha il significato letterale di "sfregiare, deturpare", in italiano reso raramente con defacciare) nell'ambito della sicurezza informatica ha il significato di cambiare illecitamente la home page di un sito web (la sua "faccia") o modificarne, sostituendole, una o più pagine interne.

Tale pratica, condotta da parte di persone non autorizzate e all'insaputa di chi gestisce il sito, è illegale in tutti i paesi del mondo.

Un sito che è stato oggetto di deface vede sostituita la propria pagina principale, spesso insieme a tutte le pagine interne, con una schermata che indica l'azione compiuta da uno o più cracker. Le motivazioni di tale atto vandalico possono essere di vario tipo, dalla dimostrazione di abilità a ragioni ideologiche. Le tecniche utilizzate per ottenere i permessi di accesso in scrittura al sito sfruttano solitamente i bug presenti nel software di gestione del sito oppure nei sistemi operativi sottostanti; più raro il caso di utilizzo di tecniche di ingegneria sociale.

- Lamer
Un lamer è un aspirante cracker con conoscenze informatiche limitate. Il termine inglese, usato in genere in senso dispregiativo, significa letteralmente "zoppo" ma si potrebbe rendere in italiano come imbranato o sfigato.

Il termine sembra avere origini nella scena Commodore 64 durante la metà degli anni ottanta. Divenuto poi popolare tra i cracker Amiga e utilizzato anche dal ‘Lamer Exterminator’, un famoso virus per Amiga, che gradualmente danneggiava floppy non protetti da scrittura con settori non validi. I settori corrotti, se analizzati, apparivano sovrascritti con la ripetizione della stringa "LAMER!".

Con la diffusione dei canali di chat, dei forum e dei sistemi di instant messaging, il termine lamer viene utilizzato per indicare utenti che utilizzano gli strumenti in maniera anomala. Tra queste rientrano l'utilizzo meccanico di conoscenze informatiche, in ambienti in cui tali competenze sono mediamente limitate, per realizzare effetti che possano stupire una parte degli altri utenti. Tra tali effetti si annoverano, ad esempio, la colorazione dei nick o l'impiego di caratteri non stampabili o ancora l'utilizzo di software al fine di disturbare la normale attività degli altri utenti.

I lamer sono spesso considerati per lo più alla stregua di ragazzini che, a puro scopo di vandalismo, cercano di provocare danno. Ciò può avvenire nei casi più raffinati attraverso l'invio di trojan (virus) ad altri utenti al fine di avere accesso ai loro sistemi, per poi eventualmente danneggiare o distruggere informazioni; oppure attraverso l'utilizzo piccoli programmi, che i lamer reperiscono nel web, per attuare attacchi ai siti internet, allo scopo di danneggiarli o sfregiarli.

Il lamer si differenzia dall'hacker e dal newbie perché il suo scopo non è esplorare, imparare e migliorare, ma creare danni, a puro divertimento personale. I lamer vengono tradizionalmente disprezzati dagli hacker perché sono ritenuti, almeno in parte, responsabili della connotazione negativa del termine hacker, che viene tutt'oggi associato alla criminalità informatica, alla diffusione di malware ecc. I media tradizionali (televisione, radio, giornali) quando viene data notizia di un attacco informatico da parte di un cracker, non fanno uso di termini specifici quali "cracker" o "lamer" ma utilizzano, per semplicità o pura ignoranza, la parola "hacker".

Nei giochi multiplayer il termine lamer è utilizzato per indicare una persona che disturba la propria squadra di proposito, anche nei luoghi di ritrovo (come i forum), per sottolineare la mancanza di conoscenze e presunzione di un utente. Viene inoltre affibbiato il soprannome "lamer" o dispregiativo "lamerone" anche a coloro i quali tendono a sfruttare bug o exploit dei videogiochi, soprattutto in quelli multiplayer online, per barare e vincere in modo scorretto.

Nella scena demo (Demoscene), viene definito Lamer un individuo che non sta alle regole del "gioco" (che sia competizione od altro) e cerca di farsi notare in questa scena realizzando demo con contenuti o codice sorgente preso dagli altre produzioni senza dare credito agli autori di queste ultime. Quindi un "Lamer" in poche parole è un individuo presuntuoso che crede di saperne molto sui computer, mentre in realtà è solo un patetico conoscente della programmazione. Quando la scena era molto più "underground" (diciamo prima della fine degli anni 80) veniva considerato "Lamer" l'individuo che non riusciva a tenere il passo della massa di sceners più abili, talvolta rilasciando produzioni orrende. Adesso per essere corretti, si etichetta questo individuo come Newbie.

[AVVERTENZA]In aggiornamento...[/AVVERTENZA]​

Da Wikipedia, l'enciclopedia libera.