Blog di Exodus1984

Tecnologia, informatica, natura, e l'intero universo.... :-)

 

AREA PERSONALE

 

ARCHIVIO MESSAGGI

 
 << Agosto 2015 >> 
 
LuMaMeGiVeSaDo
 
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            
 
 

FACEBOOK

 
 
Citazioni nei Blog Amici: 3
 

 

Prove Tecniche: E-banking 2015

Post n°132 pubblicato il 09 Agosto 2015 da exodus1984

Cari bloggers, oggi voglio mostrare alcuni test di rete creati
appositamente per configurare e programmare il canale di invio e
ricezione del sistema BankAss.

Visto l'enorme interesse suscitato in queste settimane da questo
banale sistema operativo, ho deciso di inviare alcune schermate
per far vedere agli utenti come lavora questo sistema e come si
vede il Web usando un solo canale client/server.

Come ho spiegato nel post precedente, il sistema crea o distrugge
un canale di comunicazione tra il client e il server, cercando
di tenere a distanza di sicurezza tutte le altre comunicazioni
internet che la macchina utente può o potrebbe fare.

In pratica, il detto sistema, crea un canale unico solo tra il
cliente e il server di destinazione, che può essere naturalmente
diverso, vista la grande quantità di banche online presenti sulla
rete, ma questo è un problema che oggi non tratteremo, perché la
programmazione del sistema deve essere mirata ad agganciare solo
un server bancario per volta.

Alcune persone mi hanno detto che sarebbe utile poter usare
diversi server e-banking  contemporaneamente, ma questo inciderebbe
negativamente sugli obiettivi che mi sono preposto durante la
programmazione di questo sistema.


Problema di sicurezza 1 :

aprire più canali internet vuol dire mettere a rischio la già
precaria sicurezza informatica che abbiamo durante una sessione
e-banking.


Problema di sicurezza 2 :

avere molti canali aperti e cifrati non serve a nulla, infatti
esistono specifici assalti informatici che usano le credenziali
criptate dell'utente per entrare in modo legittimo sul suo
account e-banking, lavorando in contemporanea con l'utente stesso
senza che l'utente se ne accorga.
Il sistema BankAss può ovviare in parte a questo fastidioso
inconveniente, ma qui entra in gioco la sicurezza informatica
che l'utente pratica sulla sua macchina, del tipo: sistema
operativo, antivirus, firewall, proxy...


Problema di sicurezza 3 :

Il sistema BankAss è ancora in fase di sviluppo e non può
garantire una adeguata protezione da tutti gli assalti informatici
che vengono creati solo per questo settore specifico.
Questi sono i sorgenti e gli eseguibili in fase di sviluppo e di
test:

enrico@exodus84:~/Bankass$ ls -la
-rw-r--r--   1 enrico enrico   8051 lug 18 00:05 bankass.c
-rwxr-xr-x   1 enrico enrico 854696 lug 18 00:06 bankass
-rwxr-xr-x   1 enrico enrico 854696 lug 19 14:01 bankass6
-rw-r--r--   1 enrico enrico   8047 lug 31 23:23 bankass6.c
-rwxr-xr-x   1 enrico enrico 854696 lug 31 22:53 bk6
enrico@exodus84:~/Bankass$

Molti utenti volevano avere subito un sistema operativo di test
per fare delle prove con i loro account e-banking, ma come potete
vedere dalla schermata precedente, sono ancora lontano dalla
verità...(anche se ho ottenuto comunque buoni risultati...) :-)

Il lavoro che svolge questo programma può essere ristretto ai
seguenti casi informatici, osserviamo in questo esempio una
normale connessione e-banking su internet:


utente A <--> rete internet/cybercrime <--> server E-banking B


Connessione con sistema BankAss:
        
utente A <------------------------------> server E-banking B
         <-- cybercrime/rete internet -->


La sicurezza di questa connessione dipende quindi da come viene
gestito il sistema operativo utente e dalla sicurezza fornita
dai propri servizi bancari, il che vuol dire che tutte e due le
parti che accordano questo tipo di canale unico devono a loro
volta mantenere un protocollo di sicurezza che elimini il rischio
di assalti informatici ai sistemi utente e ai sistemi server
delle banche online. :-)

Dai test effettuati in questi giorni su svariate banche online
italiane ed internazionali, il sistema BankAss ha superato le
mie aspettative e ha confermato che un canale client/server di
questo tipo, appare adatto e stabile su sistemi bancari diversi.

A questo proposito, ho notato che il sistema segnala alcuni
errori, distruggendo la socket privata e abbandonando il server
e-banking, la ri-connessione, forzata da me per valutare gli
errori, porta ad errori interni ai sistemi server stessi, che
per le banche potrebbero essere usati come "portali" dai
criminali informatici, ma questo, è successo solo su alcuni
server e-banking dei cosiddetti "paradisi fiscali". ;-)))

Per le banche europee, la connessione con il sistema BankAss è
risultata ottima, per le banche internazionali (Cayman) alcuni
sistemi che hanno negoziato la connessione non risultavano visibili
per la navigazione, benché il canale fosse stato aperto in modo
corretto.

Va bene, anche per oggi è tutto, il sistema BankAss è ancora
in fase di sviluppo, ma i risultati già si vedono bene adesso.
Quello che devo fare, è prendere una settimana di ferie e poi
mettermi a programmare anche di notte per poter finire questo
lavoro. :-)))
Scherzi a parte, programmare i computer mi diverte, e penso che
se dovessi farlo per lavoro, un progetto come questo, non poterebbe
esistere, mentre io l'ho creato realmente usando solo il mio tempo
libero e la mia conoscenza in campo informatico.

Sto ancora raccogliendo i pezzi per forgiare un piccolo sistema
operativo che possa contenere una configurazione abbastanza
sicura per attivare il servizio di rete BankAss, appena sarà
disponibile, metterò un link sulla pagina web di questo blog
per scaricare il sistema di test per gli amici che lo avevano
richiesto.

Come sempre, se siete interessati a vedere come funziona il
sistema BankAss, potete linkare l'archivio "BankAss2015" disponibile
sulla sezione "FOTO" di questo blog.
Le varie schermate disponibili, servono per far capire agli utenti
come lavora questo sistema e cosa viene effettivamente visto dal
proprio browser web.

Visto che questo è il mese delle ferie, auguro a tutti voi buone
vacanze per chi parte, e buon lavoro a chi resta. :-))

Concludo questo post salutando gli amici di Egger Alm(Hermagor)
per la splendida giornata passata tra le montagne e nondimeno
per la caccia al Porcino piu grosso. :-)
(vedete foto qui sul blog)
 
Ci ri-leggeremo a settembre, con altri post tematici. :-))

 
 
 

E-banking 2015: ...dove la legge perdeva l'impero... ;-)

Post n°131 pubblicato il 12 Luglio 2015 da exodus1984

Eccomi di nuovo qui, dopo una maratona informatica di quasi trenta
giorni sono rientrato solo oggi qui sul blog per dare alcune
risposte basate su ricerche che ho fatto e per fornire i primi
dati per il nuovo progetto che sto preparando.

Cari amici di rete e cari bloggers, oggi parliamo dell'uso che
viene fatto della rete Internet Normale, mi posso immaginare
già molti di voi che pensano:
"ma come, niente più' reti cifrate e gabole varie???...":-)))

In effetti, no, niente reti cifrate, ma oggi parleremo degli
spippolamenti sui server bancari, lato utente e lato server... ;-)

Questo argomento prende spunto da alcune semplici ricerche che
sto facendo per la preparazione di un nuovo sistema operativo
basato su Gnu/Linux, come sapete, ormai da molti anni si può
avere la gestione personale dei propri conti bancari direttamente
da casa propria, senza doversi recare presso gli sportelli
bancari evitando attese e file a volte interminabili, a causa
del personale e dei sistemi che nelle piccole filiali funzionano
in gran parte a questo modo, senza nulla togliere ai servizi  
bancari che funzionano in modo adeguato seguendo le specifiche
del cliente.

Ma il discorso sui sistemi e reti bancarie non si ferma certo
qui, bisogna vedere il reale livello di sicurezza che una
connessione bancaria ci può offrire, e molte volte, le specifiche
tecniche non ci sono note per il semplice fatto che "se non lo
sanno, il server è al sicuro...".
(...Le ultime parole famose...) :-) :-P

Negli ultimi anni, si è avuta una impennata di truffe/furti a
livello telematico, questo perché gli utenti si fidano delle
pagine che visualizzano il loro portale e-banking, ma non sono
in gran parte capaci di verificare che il server al quale si
sono connessi, sia realmente quello del loro istituto di credito.

Gli assalti informatici di questo tipo, si possono dividere
i tre categorie distinte e in continua evoluzione:

1)violazione del computer utente con accesso diretto ai dati
  personali per funzioni e-banking, in questo caso, il server
  bancario accetterà i dati utente perché sono veri, anche se
  ad usarli saranno solo i cybercriminali e non l'utente reale.

2)registrazione delle transazioni da parte degli ISP fatte ad opera
  di persone che oltre alla gestione specifica dell'ISP, sfruttano
  e catturano a proprio vantaggio i certificati degli utenti che
  lavorano con servizi e-banking.

3)impiegati delle reti che forniscono i servizi cellulari, nel
  settore del mobile-banking, è stato registrato il più' alto
  numero di frodi e truffe bancarie ai danni degli utenti.
  Impiegati bancari disonesti che conoscono i dati utente e li
  sfruttano a loro vantaggio o vendono queste informazioni ad
  altre persone per guadagnarci molto senza rischiare nulla.


Ecco una banale lista concentrata di quello che succede oggi
in rete e della "sicurezza" di cui disponete:
 
Il 60% di attacchi informatici è cybercrime
Hacktivism il 27%, l'espionage l'8% e la cyber warfare il 5%
Colpiti i siti GOV, News, Banche
Health e Pharma, incremento del 190% rispetto al 2013
Attacchi Ransomware in aumento

Fonte: Rapporto Clusit 2015

Questo è il problema, ma come possiamo difenderci?

Esistono pagine web che indicano con precisione i server e i
dati di verifica per banche online, italiane ed internazionali.
Questo però non toglie che comunque queste connessioni non possano
essere rilevate e di conseguenza, attaccate per prendere possesso
dei dati utente fornendo al server dati reali con i quali poter
commettere un furto telematico. 

I sistemi utente più esposti in questo senso, sono quelli a
grande diffusione di massa(Windows,Mac e ultimamente anche Linux).

Vorrei soffermarmi un attimo su questo punto: Linux??? :-))

Certo, anche Linux non è esente da difetti e bachi di sistema
per i quali molte organizzazioni di cybercriminali hanno costruito
intere reti dedicate ad osservare il traffico proveniente da
questi sistemi operativi per decodificarlo e ottenere più
informazioni possibili per operare nel settore delle frodi
telematiche bancarie.

Tutte queste organizzazioni, dispongono di tempo, soldi e
tecnologie in grado di effettuare questo tipo di lavoro in
poche ore, sfruttando reti proprietarie per il calcolo e la
decodifica informativa dei dati di interesse bancario.

Per questo motivo, mi è stato chiesto cosa ne penso in merito
alla situazione attuale delle banche online italiane.

Visto che la sicurezza informatica è come un terno al lotto, ho
proposto la costruzione e la preparazione di un sistema Gnu/Linux
dedicato solo a fare questo tipo di lavoro, ovvero connettersi
con il proprio istituto di credito, cercando di offrire la più
grande sicurezza informatica possibile sulla connessione che
gli utenti dovranno fare, purtroppo sono ancora all'inizio di
questo progetto e non posso garantire ancora una valida stabilità
del sistema operativo di test...:-(

Questo, mi ha spinto a pescare alcuni programmi sorgente dal mio
vecchio archivio informatico, per vedere se qualcosa di valido
possa ancora essere utilizzato nel nuovo sistema in fase di
sviluppo.
 
Da tempo, mi balenava l'idea di usare un sistema proxy in grado
di agganciare SOLO il server e-banking, in questo modo il cliente
e il server avrebbero avuto un canale unico, lasciando fuori il
resto della rete internet e di conseguenza, tutti i disturbi che
possono rovinare una connessione pulita.

Naturalmente, anche se cifrata, questa connessione rimane sempre
disponibile alle reti di sniffing dei cybercriminali, ma questo
problema potrebbe essere risolto dal proxy di selezione, impedendo
all'utente di digitare pagine internet non affidabili, oppure
usando la nuova tecnologia che impedisce agli utenti di commettere
errori durante una sessione e-banking.

Quello che molti utenti inesperti fanno, è impostare un proxy per
accedere al server e-banking, questo fatto, li fa sentire al sicuro
perché pensano di non essere visibili e di non venire tracciati
dai delinquenti informatici...:-)))

Ebbene, non fatelo, uno dei metodi avanzati più utilizzati dai
cybercriminali, è proprio questo, le persone pensano di essere
al sicuro utilizzando un proxy per eludere i curiosi e i
truffatori, ma sono appunto i truffatori che ci guadagnano da
questa vostra convinzione sulla sicurezza informatica bancaria.

Non voglio entrare in discorsi tecnici, che probabilmente molti
non riuscirebbero a capire in modo corretto, ma vi posso dare
un consiglio che fu dato anche a me moltissimi anni fa:

Se volete usare un proxy, costruitevelo da soli e gestite con le
vostre mani tutto quello che arriva dalla rete.

Da questo, la mia idea di usare un proxy esclusivo solo per
transazioni e-banking, se sapete usare e programmare le socket
potete fare della rete internet tutto quello che volete, con un
solo limite, la vostra fantasia informatica:

nome comune: Hacker
nome scientifico: Tapirus Vorax Internetensis
(questo è solo un banale esempio...) ;-)))

Programmare le socket di rete, vi permette di poter gestire
direttamente un server bancario senza passare da altre applicazioni
di cui non sapete nulla ma che vi promettono una connessione
sicura...:-)))

Un sistema operativo LiveUSB, in grado di lasciare inalterato
un ambiente Windows e Mac, ma con programmi specifici per ottenere
un canale unico cifrato tra il vostro sistema e il server bancario.

Dalle prove effettuate in queste settimane, ho ottenuto ottimi
risultati informatici, anche se la strada è ancora lunga e piena
di numerosi interrogativi che sto risolvendo in base alla loro
importanza per il progetto. :-)

Vediamo come funziona in generale il sistema operativo BankASS:

Bisogna configurare firefox perché veda il proxy alla porta
specificata (48000) per l'indirizzo di loopback 127.0.0.1 .
Per configurare il volpone di fuoco, dovrete aprire il menu
su: Modifica -> Preferenze -> scheda Rete > Connessione >
Impostazioni .

Selezionare quindi "Configurazione manuale dei Proxy:"
Impostare solo la sezione Proxy HTTP 127.0.0.1 Porta 48000
e quindi cliccare su OK per confermare i cambiamenti.

La rete che viene vista, è solo quella inerente ai server che
avete impostato come indirizzo proxy, altri indirizzi possono
non essere visibili, vi ricordo che questo è un proxy esclusivo
creato solo per effettuare questo servizio, quindi avremo solo
il nostro server e-banking, ma nessun'altra connessione, quindi
se magari deciderete di vedere una pagina web mentre caricate la
vostra scheda telefonica dal vostro account, invece della pagina
richiesta avrete sempre una connessione al vostro server e-banking.

Ho preparato un file di testo con esempi per l'uso sui vari
server che un utente potrebbe avere.
Questo breve file contiene solo degli esempi pratici per l'uso
del programma bankass, e non è detto che la risposta dei vari
server di questa lista possa garantire una corretta visione
delle pagine dedicate ai servizi bancari offerti.

Pertanto, si invitano tutti gli utenti a verificare che le pagine
inviate dal server siano conformi agli standard preposti da ogni
singolo servizio bancario.

Quando inserite il proxy, create un canale unico tra voi e il
vostro servizio bancario, se provate a contattare altri siti
web, riceverete sicuramente degli errori di connessione.

Un breve esempio del funzionamento particolare di bankass, provate
a creare un canale unico tra il vostro browser e il server di
posta di google:
 
mail.google.com
216.58.212.101
./bankass 127.0.0.1 48000 216.58.212.101 443

Per raggiungere la vostra mail, dovrete digitare il nome del
server mail.google.com direttamente nella barra degli indirizzi
web, altrimenti potreste ricevere da firefox questi errori:

...................................
La connessione è stata annullata

La connessione al server è stata annullata durante il caricamento
della pagina.

Il sito potrebbe non essere disponibile o sovraccarico. Riprovare
fra qualche momento.

Se non è possibile caricare alcuna pagina, controllare la
connessione di rete del computer.

Se il computer o la rete sono protetti da un firewall o un proxy
assicurarsi che Firefox abbia i permessi per accedere al web.
.................................

Nel nostro caso, noi siamo bloccati dall'ultima opzione, e quindi
se il proxy non riceve dati esclusivi solo da 216.58.212.101 443
potreste non riuscire a vedere nessuna pagina internet al di fuori
dell'indirizzo specificato...:-)))

Questo è proprio il lavoro che si dovrebbe fare per creare un
canale unico su internet, non si può parlare di sicurezza per
il fatto che il nostro proxy comunica i nostri dati e il nostro IP
al server, ma sui conti bancari, non abbiamo bisogno di essere
anonimi, bankass è stato costruito per ottenere un canale unico
e avere una connessione sicura e pulita, nonostante che la nostra
connessione proxyzzata e cifrata sia ancora visibile, abbiamo
ottenuto un grande aumento della sicurezza rispetto a quanto
succede con una normale connessione bancaria effettuata su molti
sistemi operativi normali.

Il sistema BankASS è stato progettato per tutelare gli utenti
che usano i servizi e-banking, fornendo loro una connessione che
elimina l'obiettivo primario preferito dai cybercriminali, ovvero
lo studio delle applicazioni web usate nei servizi e-banking per
creare degli exploits che possono prendere possesso online di
tutti i dati utente, naturalmente, il server che fornisce i
servizi deve essere quello giusto e verificato con il vostro
operatore bancario di fiducia, quindi il lato utente risulta
estremamente sicuro.

Vi siete mai chiesti quale sia la sicurezza reale della rete
che usate per lavorare sui vostri servizi e-banking?

Se ancora non ve lo siete chiesto, penso che dovreste iniziare a
farlo, dalle analisi di rete, si evince che molto spesso, un
utente che si connette al suo e-banking con sistemi normali, viene
usato come "testa di ponte" dai cybercriminali  per fornire un
accesso valido e involontario per violare i server bancari online.

Le mie prime impressioni usando questo nuovo sistema, sono state
molto positive considerando che:

1) il sistema operativo è ancora da definire(test di sicurezza)
2) il proxy bankass può usare solo un server bancario per volta
3) Firefox non appare adeguato per questo uso(nuovo Browser???)
4) Il controllo della rete non soddisfa le mie aspettative

Tutti questi problemi, mi hanno fatto notare dei particolari
interessanti, scoperti con questa nuova tecnologia, si, avete
letto bene, Firefox non è adeguato per questo uso, e se provo
a costruire un nuovo browser che contenga solo le caratteristiche
che mi servono?
Forse è la strada giusta da seguire, applicazioni speciali per
un sistema operativo speciale e dedicato, vabbè, intanto vado
avanti in ordine sparso, poi vedremo che cosa viene fuori...;-))
 
Altri test, indicano che il presente sistema non è ancora pronto
per essere rilasciato, in quanto i problemi tecnici incontrati
sono ancora lontani dall'essere risolti.
Il problema principale è la gestione utente, nella mia esperienza
ho potuto vedere validi sistemi operativi configurati per la
sicurezza informatica abbattuti da utenti che non sapevano nulla
di tecnologie informatiche, ma volevano semplicemente vedere il
sistema...:-(

Per cui, anche fornendo un sistema operativo configurato e messo in
sicurezza, l'utente finale ha il completo controllo della propria
macchina e pertanto può o potrebbe fare delle cose che compromettono
la sicurezza stessa della connessione bancaria.

Nei miei futuri progetti, ho in mente un hardware dedicato, a cui
gli utenti non possano accedere per fare guai sul sistema, e di
conseguenza mantenere una sicurezza informatica abbastanza elevata
rispetto agli standard bancari che vengono usati oggi.
Ho già costruito cose di questo tipo in passato, e penso che per
questo progetto possa essere utile riesumare qualche vecchia gabola
dal mio laboratorio informatico. :-)

Concludo questo breve post augurandovi come sempre una buona
navigazione su internet e un buon divertimento. :-)

 
 
 

Libri e Internet: i ricordi della rete.

Post n°130 pubblicato il 16 Maggio 2015 da exodus1984

Bene, terminati i corsi sulle reti anonime, ed avendo soddisfatto
la curiosità di molte persone interessate all'argomento, ho preso
un po di tempo per risistemare la seconda parte della mia biblioteca
visto che da parecchie settimane sono stato "assediato" da diversi
tipi di smanettoni abbastanza strani...;-)))(non che io sia molto
diverso da loro...;-)))

Dopo avere digerito una buona quantità di polvere e acari (in
informatica si chiamerebbero Hacheri...), ho ritrovato alcuni
manuali di programmazione su cui ci passavo intere nottate, ecco
alcuni titoli in mio possesso:

La programmazione dello Z80, contenenti le tabelle di equivalenza
tra l'assembler dello Z80 e quello dell'8080, con le tabelle
complete dei codici delle istruzioni per lo Z80, devo dire che
questo testo mi ha aperto molte strade, in quanto già all'epoca si
usavano reti particolari e programmi costruiti appositamente per
connettersi attraverso onde radio e dispositivi auto costruiti per
formare una piccola rete locale di computer, erano i tempi dello
Spectrum, e programmare gabole era il divertimento principale per
i pochi fortunati che potevano spendere quei soldi per comprarselo.

Il Bugbook 3, per l'interfacciamento e la programmazione dei
microcomputer 8080, che spiegava nei dettagli le istruzioni
mnemoniche dell'assembler usato per l'8080.

La programmazione in Turbo Pascal, del 1989, che mi ha aperto le
porte dei linguaggi ad alto livello, mi ricordo che spesso i miei
listati sorgenti scritti in Pascal, erano quasi sempre farciti
di istruzioni assembler, quindi il codice finito era un po criptico
per chi avesse voluto dare un'occhiata, infatti, la domanda che
mi si faceva spesso era questa:"ma tu scrivi i programmi in Pascal
o in assembler?", in realtà, si usava l'assembler per velocizzare
un po di più l'esecuzione del codice, ma alla fine, andava bene
tutto, l'importante era programmare e poi mostrare il proprio
codice agli amici informatici per farli schiattare d'invidia...
 ;-)))     

Mi sono capitati in mano i manuali Olivetti per la programmazione
assembler dell' 8086, due volumi rilegati e straordinariamente
completi, con esempi di codice assembler pronto solo da programmare
e provare, due volumi che hanno segnato la storia dell'informatica
italiana per il controllo dell' hardware, i computer Olivetti sono
stati le mie primissime macchine dopo lo Spectrum Sinclair, seguiti
poi negli anni da tutta la serie(infinita) dei processori che
uscivano, sempre più veloci e potenti... :-)

Poi è stato il turno del Linguaggio assembly avanzato, per utenti
Tasm e Masm, adatto per imparare la creazione dei driver su
sistemi 8086, questo volume insegnava molti trucchi in assembler
proprio per velocizzare l'esecuzione di programmi ad alto livello
come il Pascal, e io ci sguazzavo dentro, scrivendo codice
Pas/C/Asm a quattro mani...;-)))

Questo volume, trattava la struttura TSR dei programmi in modo
molto approfondito, dalla cattura degli interrupt di tastiera
all'esecuzione specifica di una parte di codice speciale...;-))
Se vi siete mai chiesti come funziona un virus informatico, su
questo volume potete trovare le vostre risposte...(ma lasciate
ogni speranza, voi che entrate in questo mondo....)  ;-))

La programmer's guide, per utenti Masm, si rivolgeva agli utenti
del sistema MS-DOS(r) e Windows(tm), la mia parte preferita:
"Terminate-and-Stay-Resident", la funzione 31h del DOS era uno
dei servizi invocati dall'interrupt 21h, in quanto per le future
versioni, la Microsoft non poteva garantire il supporto per
l'interrupt 27h, e quindi non se ne raccomandava l'uso.

Infine ho ritrovato uno splendido libro, l'ho cercato per così
tanto tempo, che non sapevo più dove lo avevo messo, le mie
ricerche su internet hanno avuto un esito positivo nella ricerca
informativa che riguarda questo testo, ho così scoperto la sua
vera provenienza, visto che fu un regalo di un amico, anche se
non ho mai potuto avere a mia disposizione quella specifica
macchina.
 
Il volume in questione porta il titolo:

"Minicomputer Systems: Organization and Programming (PDP-11)"

Fanno fede poi il numero di serie del volume e la data, anche se
a me fu regalato nella seconda metà degli anni 80, ormai obsoleto
ma comunque molto interessante, questo testo tratta la programmazione
del PDP-11 proprio con il suo assemblatore, il PAL-11(Program
Assembly Language for the PDP-11's Absolute Assembly).

Stampato negli Stati Uniti nel 1975, arrivato in Italia nel 1977
e finito nelle mie mani nel 1989, questo testo si è conservato
molto bene, anche perché cerco sempre di mantenere i miei libri
in modo adeguato, ma a volte, sembra impossibile, ma i libri più
nuovi si rovinano prima di quelli antichi... :-)

Usare lo stesso ambiente di programmazione su diverse architetture
può facilitare la stesura di un programma, ogni versione ha molto
in comune con le altre presenti su elaboratori diversi, come i
file .OBJ, le direttive assembler e la sintassi, ma spesso, tanti
assemblatori non parlano la stessa lingua...:-(
Per esempio, sorgenti assembler che compilano bene su una determinata
architettura, non possono essere assemblati da un programma diverso
presente sulla stessa macchina...:-(

Portiamo un semplice esempio, vista la mia mania di stressare le
macchine con cui vengo a contatto e per effettuare test di
resistenza dei sistemi agli assalti informatici, vi propongo
un banale codice assembler spippolato:

 .text
       .global  _start
_start:
       movb     $0x2,%al
       int      $0x80
       loop      _start


Questo banale codice, sfrutta una delle operazioni fondamentali
dei sistemi Unix, ovvero la Fork, quando un processo Unix fa una
fork, crea una copia di se stesso, ottenendo così due copie
identiche, la seconda copia, finisce per eseguire un altro processo
in loop sul sistema attaccato, creando quello che può essere
definito un D0S(Denial of Service) in grado di paralizzare le
macchine interessate, e di conseguenza fermare di fatto il
lavoro degli utenti.

Questo codice Assembler può essere compilato e linkato su
sistemi Gnu/Linux con i seguenti comandi da terminale:

enrico@exodus84:~$ as fb.asm -o fb
enrico@exodus84:~$ ld fb -o fb

enrico@exodus84:~$ ls -la fb*
-rwxr-xr-x 1 enrico enrico 4864 mag 16 09:29 fb
-rw-r--r-- 1 enrico enrico   89 mag 13 19:52 fb.asm

 

Ma andiamo per ordine, modifichiamo il seguente programma per
testare la resistenza del nostro sistema Linux, questa volta un
pochino migliorato in linguaggio C :

 #include <unistd.h>
  int main(void)
 {
   while(300000000) {
     fork();
      }
   return 0;
 }

Il programma si compila in questo modo per ottenere un binario
portatile che ci permetterà di testare la resistenza di diverse
installazioni Linux:

enrico@exodus84:~$ gcc --static fb.c -o fbc

Il programma che otteniamo, cercherà di ottenere il controllo
dei processi sul vostro sistema Linux, che se non opportunamente
preparato, rallenterà fino a diventare inutilizzabile, rendendo
necessario il reboot della macchina.

Per eseguirlo e testare la resistenza del sistema bisogna far
partire il programma in questo modo:

enrico@exodus84:~$ ./fbc &

Per terminare l'esecuzione, se siete fortunati, basta chiudere
la finestra di terminale per cancellare tutte le istanze aperte.
Vi consiglio di tenere aperti almeno 3 o 4 terminali, questo per
impedire che il programma prenda possesso  dei relativi processi
e quindi non vi permetta di eseguire piu nessuna operazione. :-)

enrico@exodus84:~$ ./fbc &
[1] 25412
enrico@exodus84:~$ ls
-bash: fork: retry: Risorsa temporaneamente non disponibile
-bash: fork: retry: Risorsa temporaneamente non disponibile
-bash: fork: retry: Risorsa temporaneamente non disponibile


Potete notare la differenza tra sorgenti ASM e C, nonchè dei file
eseguibili creati dal linker:

enrico@exodus84:~$ ls -la fb*
-rwxr-xr-x 1 enrico enrico   4864 mag 16 09:29 fb
-rw-r--r-- 1 enrico enrico     89 mag 13 19:52 fb.asm
-rwxr-xr-x 1 enrico enrico 789208 mag 16 09:48 fbc
-rw------- 1 enrico enrico    379 mag 10 14:22 fb.c

Come potete vedere, il secondo programma è molto più performante
del primo, quindi se i vostri sistemi Linux riescono a sopravvivere
a questo, siete fortunati, ma nella mia esperienza, usando semplici
test, si capisce subito se una installazione può reggere o meno
ad uno stress informatico di questo tipo.

Ne ho parlato in questo post, proprio perché tante persone pensano
che usare sistemi Linux sia una svolta nella sicurezza informatica
ma come potete vedere, non è come si crede, alcuni sistemi si
piantano in pochi secondi, altri reggono ma rallentano, bisogna
valutare ogni macchina, tutte diverse le une dalle altre. :-)

Riprendendo in mano i miei vecchi testi informatici, ho pensato
di riproporre anche del codice che ho preso in rete per motivi
di tempo e proporvelo con semplici modifiche in ricordo dei vecchi
tempi. :-)
Il codice usato per questo post potete trovarlo a questo indirizzo
web, le modifiche sono opera mia, ma voi seguite il codice riportato
su wikipedia: http://it.wikipedia.org/wiki/Fork_bomb .

Infine, potete ottenere ulteriori info usando i manuali AMD che
trovate al seguente indirizzo web:

http://search.amd.com/it-it/Pages/results-support.aspx#k=assembler#s=11

Per i sistemi Android, consiglio di scaricare le seguenti app
dallo store: Learn Assembly e Assembly Reference & Programs .

Tutti questi libri mi hanno fatto ricordare i tempi in cui si
postava sui newsgroup, tra i miei preferiti, c'erano quasi sempre
alt.hackers.cough.cough.cough, e alt.hackers, in cui si confrontavano
idee diverse ed innovative per l'epoca, era il tempo in cui i
vari gruppi Hacker di quel periodo assaltavano sistemi, per poi
descrivere le tecniche usate, ho molti ricordi di quel periodo che
fu davvero unico(1997-2000), per citarne un esempio, chi non si
ricorda degli Spippolatori?
Ci fu un periodo in cui molti ragazzi che allora postavano su
alt.hackers.cough.cough.cough(ahccc) e alt.hackers erano molto
interessati a "portare" le mitiche alette degli -=[SpP]=- in giro
per la rete, ma molti formarono dei propri gruppi separati, sempre
ispirati alla filosofia dello "Spippolamento" ;-))

Nei miei post la parola "Spippolare" ricorre molto spesso, è una
eredità lasciata da quel particolare periodo storico che mi vide
protagonista agli albori della rete internet in italia.
Ancora oggi ripenso spesso a tutte le gabole costruite e mandate
in rete per la felicità degli smanettoni italiani, ci si ripensa
con un po di nostalgia, ma in fondo, chi potrebbe negare che ci
siamo anche divertiti? ;-)))

Ora tutto questo non esiste piu, ma ricordare questi eventi ci
aiuta a vivere un futuro migliore, evitando di inciampare negli
errori commessi in un passato ormai lontano che forse pochi
ricordano ancora.

Bene, concludendo questo post, come sempre vi auguro una buona
navigazione su internet e altrettanti buoni Spippolamenti
informatici ;-)   

 
 
 

Corsi informatici 2015: capire le reti anonime

Post n°129 pubblicato il 18 Aprile 2015 da exodus1984

Bene, rieccomi qua a scrivere il resoconto della mia vita
informatica e dei vari spippolamenti che i miei poveri utenti
hanno dovuto sopportare in queste ultime settimane di
smanettamenti informatici ai confini della realtà... ;-))

Oggi voglio parlare delle lezioni informatiche "speciali" che si
sono tenute dalle mie parti nelle ultime settimane, pertanto si
potrebbe iniziare con alcune spiegazioni che per mancanza di
tempo non sono riuscito a dare ai vari "studenti" che hanno
partecipato al primo corso sulle reti anonime interamente gestito
sulle suddette reti anonime, appunto... :-))

Bisogna pertanto ricordare che le cifrature possono essere
robuste quanto vogliono, ma il loro nemico è sempre il tempo e
la tecnologia che avanza, e prima o poi un modo di violarle si
trova sempre.
La seconda cosa che vorrei ricordare, è che le reti anonime, non
sempre rimangono anonime, e comunque tutte le connessioni possono
essere tracciate, il traffico criptato è tra le altre cose, una
delle maggiori fonti di interesse per smanettoni, matematici,
servizi di intelligence e naturalmente, anche per un vecchio
tapiro di rete come me che ne ha ricavato dei corsi informatici
per la diffusione della sicurezza personale e la protezione
della propria privacy.

Queste premesse non sono state fatte per il primo corso sulle
reti anonime, ma sono state inserite nel secondo per una ragione
di chiarezza verso gli utenti che credono che usando una rete
definita "anonima", pensano giustamente di essere al sicuro da
tutto e da tutti...;-)
In realtà la sicurezza va pianificata, e non si deve pensare che
programmi scaricabili da internet ci possano davvero difendere
da un bravo analista di rete, o analista informativo informatico
presente peraltro in ogni sezione di intelligence che si rispetti.

Nel primo corso sulle reti anonime, abbiamo parlato essenzialmente
di sistemi operativi preparati sia per la difesa informatica, sia
per la difesa personale della propria privacy, ma le informazioni
di base che ho elencato prima, non sono state trattate perché
gli utenti volevano imparare ad usare ed installare le reti
anonime che avevo preparato per il primo corso, e quindi usarle
immediatamente.

A questo punto, le 8 ore dichiarate per il primo corso, sono poi
diventate 16, visto che le cose da spiegare sono tante, ho ritenuto
utile creare un secondo corso sulle reti anonime basandomi sulle
lezioni tenute la settimana prima, modificando le dispense per
spiegare meglio il loro funzionamento ad alcuni utenti che avendo
terminato il primo corso, continuavano a chiedermi di ripeterlo
fornendo nuove lezioni e nuovi test.

Sono così giunto alla terza edizione di questo corso "speciale"
in cui molti utenti che lo hanno portato a termine, hanno capito
che la sicurezza è solo un'opinione, ma non una certezza, come
diceva qualcuno...:-)

Per chi fosse interessato a saperne di più sui corsi basati sulle
reti anonime, potete richiedere le informazioni usando le e-mail
del corso che sono state messe a disposizione degli utenti per
l'invio delle lezioni e dei vari test:

corso reti anonime, mail di riferimento per gli utenti:

Mail su rete I2P:

ratto7@mail.i2p   
(primo e secondo corso)

Mail su rete Freenet:

ratto7@v6vd2vz5jhd3g4cjfrvnig2cg7ocu72n7caal7gnrb6f6d3rye7a.freemail
(primo, secondo e terzo corso)

Sito web di riferimento per il corso:
http://rattoserver7.i2p


I siti web su rete Tor non vengono più usati per i corsi ma solo
per il sistema DarkShark che gestisce la sottorete privata
disponibile esclusivamente su rete Tor per le attività di gestione
e sviluppo dei sistemi operativi anonimi.

La rete Tor è stata ampiamente trattata nel primo corso, ma alcune
cose importanti come i siti web .onion, non sono state trattate
per motivi di tempo utile a mia disposizione, per cui, se gli
utenti sono interessati, possiamo sviluppare alcune dispense
anche per questo tema informatico in futuro.

Per la rete Internet in chiaro, sono state messe a disposizione
degli utenti e dei bloggers alcune dispense per far capire alle
persone che non navigano su reti definite "anonime", come sono
strutturate e a cosa servono le reti cifrate.

Come sempre, ho inserito sulla pagina web di questo blog le
principali lezioni che sono state fatte nel primo e nel secondo
corso sulle reti anonime, potete leggere quello che è stato fatto
in queste ultime settimane cliccando sulla barra di navigazione
di questo blog su "Sito", e linkando "La mia libreria Personale
sul Web" non appena la pagina principale del sito web verrà
visualizzata.

Per ora, sono state trattate solo le tre reti anonime conosciute
dalla maggioranza degli utenti, in futuro non è escluso che si
possa fare un corso anche sulle sottoreti anonime coperte da
cifratura Tor, Freenet, I2P e sui Gateway speciali che connettono
queste tre reti distinte l'una alle altre per ottenere un tipo
particolare di anonimato che potrà essere trattato in un corso
informatico a parte, e dedicato esclusivamente alle persone che
vogliono capire realmente che cosa sia una vera connessione
anonima e cifrata (256x3+2048+2048x3^1000) ;-)).

Durante le ultime ore rimaste del secondo corso, ho trattato un
argomento molto caro a tutti i ricercatori di prove forensi, le
tecniche di occultamento nell'informatica Anti-forense.
Queste tecniche sono state spiegate nei dettagli per portare
gli utenti a capire dove si dovrebbero cercare le eventuali
prove di un crimine informatico.

Secondo corso, reti anonime, lezione 4:
"
Nelle tecniche di Anti-forensics, viene usata molto la cifratura
dei dati, ma quello che gli utenti non sanno, è che viene sfruttata
sempre più spesso la tecnologia di frammentazione informativa a
livello globale, per cui, quando farete cremare i vostri dati
assicuratevi di spargere le loro ceneri molto bene all'interno
delle reti criptate e anonime. "
Questa è una delle lezioni trattate durante il secondo corso per
la protezione della privacy, ed è anche quella che ha ricevuto il
più alto numero di consensi da parte degli utenti, pertanto sarà
riproposta e migliorata nei futuri corsi informatici.

Bene, anche per oggi ho concluso, spero di avere fatto un po di
chiarezza su alcune lacune del primo corso, ma siccome le richieste
sono state davvero tante, mi sono ritrovato un po spiazzato da
tutto questo improvviso interesse verso i bassifondi di internet
e le strane reti anonime che lo popolano... ;-)))

Cari bloggers, questo è tutto, spero che il lavoro che è stato
fatto in queste ultime settimane, sia di vostro gradimento, e come
sempre, vi auguro una buona navigazione su tutte le reti.

 
 
 

Reti Anonime: corsi informatici 2015

Post n°128 pubblicato il 14 Marzo 2015 da exodus1984

Cari bloggers, oggi non sapevo bene se trattare un argomento
oppure un altro, ma vi posso dire che nell'ultimo mese, sono
stato carico di lavori e lavoretti vari che hanno impegnato
il mio tempo in modo molto utile, sia per gli utenti che per
il sottoscritto.;-))

Sono piuttosto indeciso, e questo appare strano per uno come me
che è abituato a prendere decisioni di un certo peso in pochi
minuti... :-))) (La torta la mangio o non la mangio???) ;-)))

In realtà, so molto bene di cosa voglio parlare, ma se parlo di
una cosa, non posso parlare di un'altra, e quindi rischio di non
accontentare una determinata fascia di utenza di questo piccolo
blog, allora dopo averci pensato sopra, ho deciso di trattare
gli argomenti in modo unico, ovvero: provo a parlare di più
argomenti nello stesso post, sperando di accontentare tutti gli
utenti e di non generare troppa confusione... ;-))

Bene, chiarito questo punto, posso provare subito questa nuova
veste editoriale direttamente qui sul blog. :-)

In primo luogo, desidero informare gli utenti del sistema RATTO
che possono trovare sulla pagina web di questo blog un nuovo
documento in formato .PDF scaricabile che dovrebbe essere una
nuova base di partenza per la scrittura di un manuale operativo
per il detto sistema anonimo, che in futuro potrà contenere la
guida specifica per l'uso del sistema sulle reti cifrate e
anonime.

Come molti utenti hanno avuto l'occasione di verificare, sulla
pagina web del blog sono stati rimossi i link agli archivi in
formato .PDF che raccoglievano i post di questo blog, e visto
che le richieste sono sempre tante, vi posso assicurare che gli
archivi dei post, torneranno online con una rinnovata veste
grafica, saranno pertanto più leggibili, e cercherò di creare
una nuova veste editoriale, in quanto sui vecchi archivi, i post
erano solo inseriti uno dopo l'altro, ma non era certo un bel
lavoro.

Come dicevo in precedenza, l'uso dei sistemi anti-forensics viene
fatto per creare alcuni nuovi tipi di corsi informatici che sono
preparati dietro richiesta specifica del singolo utente con lo
scopo di insegnare la privacy e mantenere al sicuro le proprie
informazioni usando l'anonimato.

Durante questo ultimo periodo, sono stato preso "d'assalto" da
numerose persone, che desideravano usare una rete anonima per
navigare in sicurezza...:-))

Purtroppo, non riesco ad accontentare tutti, e quindi i pochi
fortunati utenti  che seguiranno il corso anti-forensics su rete
anonima, dovranno avere una preparazione minima che non richieda
delle spiegazioni che possano portare lontano dagli obiettivi
prefissati del suddetto corso informatico.

Il problema principale è che devo tenere anche altri corsi di
informatica, del tutto diversi da quello che mi è stato richiesto.
Preparare le lezioni anche per l'addestramento sulle reti anonime
risulta quindi un tantino impegnativo, ma credo di potercela fare
in modo adeguato, senza deludere le due categorie di utenza.

Come avete potuto capire, sono letteralmente preso tra la falce
e il martello...;-)) (questo mi ricorda qualcosa...) :-))

Seguire l'utente, vuole dire prepararlo in modo specifico a quello
che poi dovrà fare in rete, tante volte mi è stato chiesto di
insegnare per almeno cinque persone, ma la mia filosofia è quella
di portare avanti le singole persone, infatti i corsi personali
servono proprio a questo, formare e preparare ogni singolo utente
in base a quello che l'utente riesce ad imparare, non tutte le
persone imparano allo stesso modo e nel tempo prefissato dalle
singole lezioni.

Per il corso anti-forensics su rete anonima, verrà utilizzata una
distribuzione RATTO preparata per girare su normali PC portatili
e fissi in modo che gli utenti possano usare lo stesso sistema
anche a casa per imparare le lezioni che verranno trattate di
volta in volta.

Appena ci sarà la disponibilità,  quando avrò finito di scrivere
le varie lezioni, il corso potrà iniziare, e le cinque persone
che si sono aggiudicate questa sessione speciale, impareranno
l'anonimato e la privacy, per poi insegnarlo a loro volta, ad
altre persone.
Il programma sarà distribuito su un intervallo di circa 8 ore e
prevede le seguenti lezioni:

1) Privacy reale e anonimato in rete, preparazione individuale.
2) Preparazione hardware e software, macchine e sistemi.
3) Anonimato e informatica, dalla forense all'anti-forensics.
4) Catching and tracking hidden services, uso del programma
   rattor2 e analisi web su rete anonima tramite il programma
   sgamator (uso da terminale, niente grafica...), seguito dal
   breve corso introduttivo sul progetto "internet invisibile".

Questa è una prima infarinatura del corso, che potrà essere
cambiato in seguito come sempre a seconda delle esigenze dei
singoli utenti, ma per informazioni sulle varie lezioni che
verranno create per le diverse reti anonime, potete contattarmi
a questo indirizzo mail sulla rete I2P: ratto7@mail.i2p .

Bene, spero di avere chiarito la mia posizione attuale, le varie
richieste sono sempre diverse, ma quello che non cambia mai è il
tempo che ho a disposizione per preparare e tenere le lezioni
informatiche, poi ci sono anche i pc da riparare, il blog
da aggiornare, i manuali da scrivere... :-)))

E con questo cari bloggers vi auguro come sempre una buona
navigazione su tutte le reti anonime e un buon divertimento
informatico. :-)  

 
 
 
Successivi »
 
 
 

INFO


Un blog di: exodus1984
Data di creazione: 06/03/2012
 

CERCA IN QUESTO BLOG

  Trova
 

ULTIME VISITE AL BLOG

exodus1984mariacarolinapales97call.me.Ishmaelpirapipposaturno.159antropoeticogiovanni80_7moschettiere62Kimi.777katya_adavinB_smeraldoPrimaCheSiaN0ttepsicologiaforensecrybon
 

CHI PUŅ SCRIVERE SUL BLOG

Solo l'autore puņ pubblicare messaggi in questo Blog e tutti gli utenti registrati possono pubblicare commenti.
 
RSS (Really simple syndication) Feed Atom