ITBazar, informatica 100%

l’informatica alla portata di tutti!

Archivio per 'Webmaster'


Intrufolarsi nelle telecamere altrui e accedere a documenti importanti con Google!

Inviato da Domenico Dibello il 21 Aprile 2008

Google è un potente motore di ricerca, talmente potente che un hacker (e non) dotato di fantasia e ingegno può sfruttare le potenzialità di questo spider per trovare tutto ciò che l’immaginazione può suggerire.

Un primo esempio è il classico listing di Apache

Index apache

questa è la schermata che Apache ci propone quando è abilitato il listing della directory e non c’è nessun Index file predefinito (index.php, index.html, index.asp, …).

Esempio 1 :  Index of /

Cosa succederebbe allora se cercassimo su Google la stringa “Index of /” , otterremo una lista di directory da esplorare liberamente, alcune di esse messe in rete volutamente dai rispettivi proprietari, ma vi assicuro che la maggior parte di esse saranno li “per sbaglio”, a causa di una carente configurazione del server web e dei permessi.

Esempio 2: Index of /passwd

Adesso peggioriamo la situazione, sfruttando lo stesso principio cerchiamo un termine più significativo per esempio  “Index of /password”

password apache

Come vedete dall’immagine, tra i vari risultati ritornati da Google ce ne sono alcuni che non dovrebbero essere li, il file passlist.txt contiene un elenco di utenti e password validi, e il file admin.mdb è un archivio in formato database Ms Access contenente informazioni riguardanti “l’amministrazione”…non voglio spingermi oltre…

Esempio 3: Comandare delle telecamere di videosorveglianza

Tra gli esempio proposti, questo è senza dubbio il peggiore, perchè rappresenta la situazione più grave immaginabile. Immaginiamo che qualcuno abbia installato una o più telecamere di sorveglianza IP, cosa succederebbe se questo qualcuno le avesse lasciate li, senza password e senza alcun tipo di protezione? Ci basterebbe conoscere alcuni dei termini utilizzati dalle case costruttrici di queste telecamere, e quelli che utilizzano nell’interfaccia web della stessa e il gioco è fatto. Per esempio le telecamere Panasonic, presentano una bella schermata di benvenuto intitolata:

“Welcome to panasonic Ip Technology”

cercando questa stringa racchiusa tra apici su Google, ecco apparire una lista di centinaia di telecamere di sorveglianza lasciate allo sbaraglio, la cosa paradossale è che qualunque malintenzionato è in grado da queste interfaccie web anche di manovrare la telecamera, fare un zoom, spostare il campo di ripresa in ogni direzione a proprio piacimento!

 

telecamera di videosorveglianza panasonic

La schermata di Benvenuto ;-)

 

 

Interfaccia Web della telecamera di sorveglianza non protetta

La pagina di comando della telecamera (ho sgranato l’immagine appositamente)

Spero che questo articolo vi abbia aperto nuovi orizzonti riguardanti la sicurezza e i pericoli derivanti dalla “rete globale!”

N.B. Vi sconsiglio caldamente di provare ad eseguire le query riportate negli esempi, invadere la privacy di altri individui sapendo ciò che si sta facendo è un reato! Potrete andare incontro a problemi legali. Non mi ritengo responsabile da azioni derivate dalla lettura di questa guida.

 

Pubblicato in Google, Internet, Linux, Tecnologia, Umorismo, Webmaster, hacker | 2 Commenti »

Imparare le Espressioni regolari in 10 minuti!

Inviato da Domenico Dibello il 17 Aprile 2008

Ci sono dei “piccoli particolari” che fanno la differenza tra un programmatore degno di questo nome e uno smanettone, un informatico scrive codice organizzato in oggetti, pulito, leggibile, riusabile al contrario di ciò che farebbe uno smanettone che butterebbe giù una serie di righe di codice ingrovigliato in stile “spaghetti”. Una caratteristica ci fa comprendere la bravura di chi ha scritto il codice: l’eleganza. L’eleganza è non usare 20 righe di codice quando ne basterebbe soltanto una! Gli smanettoni non usano le “regular expressions” i programmatori “seri” SI!

Esistono due tipi di Regex o Espressioni regolari, quelle POSIX e quelle PCRE. Anche se Posix dovrebbe rappresentare lo standard, di fatto le Espressioni PCRE sono quelle utilizzate da tutti i linguaggi più diffusi e tra l’altro sono più veloci da eseguire.

Vediamo alcuni esempi in linguaggio PHP, ma l’espressione regolare utilizzata è la stessa per tutti i linguaggi. Le cose da tener presente sono che:

Un’espressione regolare inizia e termina con un separatore (di solito il carattere / )
Un metacarattere va fatto seguire di solito da un iteratore
I caratteri ( ) [ ] < > . * ? sono caratteri speciali, diventano comuni caratteri solo se seguiti dal simbolo \
Tra parentesi quadre è possibile creare dei pattern più complessi, per esempio [0-5] indica un carattere tra 0 e 5. Il pattern [0-3a-z] indica un numero da 1 a 3 seguito da una lettera

 

 

\d Numeri da 0 a 9, abbreviazione di [0-9]
\D Tutto tranne numeri, abbreviazione di [^0-9]
\w Qualsiasi carattere alfanumerico o underscore (_)
\W Qualsiasi carattere che non sia alfanumerico o underscore
\s Qualsiasi whitespace (spazio, tab, newline ecc.)
\S Qualsiasi NON whitespace
. Qualsiasi carattere tranne il newline

Ognuno di questi caratteri può ripetersi più volte, perciò va seguito da un iteratore:

? Occorre 0 o 1 volta
* Occorre 0 o più volte
+ Occorre 1 o più volte
{n} Occorre n volte
{,n} Occorre al più n volte
{m,} Occorre al meno m volte
{m,n} Occorre tra m ed n volte

Alcuni esempi elementari di Regex:

/…./ Parola di 4 caratteri
/[a-z]+/ Parola formata solo da lettere alfanumeriche lunga 1 o più caratteri
/\d{1,5}/ Un numero formato da 1 a 5 cifre
/\(.*\)/ Una parentesi aperta, 0 o più caratteri e una parentesi chiusa
/(bianco|nero)/ La parola bianco o la parola nero
/[a-z0-9]+/i Riconosce solo parole di almeno 1 carattere formate da lettere e numeri, la i posto dopo l’ultimo separatore indica che non c’è distinzione tra maiuscole e minuscole


Esempio 1: Riconoscere un indirizzo email in PHP

1
2
3
4
5
6
7
8
9
$soggetto = "webmaster@itbazar.org";
if(preg_match("/[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}/i",$soggetto))
{
	echo "Email valida";
}
else
{
	echo "Email NON valida";
}

Esempio 2: Riconoscere un numero di cellulare (contiene solo i prefissi più diffusi)

1
2
3
4
5
6
7
8
9
$soggetto = "3291234567";
if(preg_match("/(328|329|333|339|347|340)\d{7}/",$soggetto))
{
	echo "Numero di cellulare valido";
}
else
{
	echo "Numero di cellulare NON VALIDO";
}


Esempio 3: Estrarre il Body di una pagina HTML

1
2
3
4
5
6
7
8
9
$soggetto = "<html><head>Header della pagina</head><body>Questo e' il Body della pagina..</body></html>";
if(preg_match("/\<body\>.*?\<\/body\>/i",$soggetto,$riconosciuti))
{
	echo "Body: $riconosciuti[0]";
}
else
{
	echo "Nessun body trovato";
}

Potete trovare maggiori informazioni sulle Regex Perl Compatibili (PCRE) e sulle funzioni PHP che ne fanno uso sulla guida ufficiale PHP
Funzioni che utilizzano PCRE
Guida completa alle sintassi e alle funzioni PHP con PCRE

Pubblicato in Guide, ITbazar, Linux, Php, Tutorial, Webmaster | Nessun Commento »

Flex 3: Inserire un’immagine o un component in un Datagrid

Inviato da Domenico Dibello il 11 Aprile 2008


Il datagrid è uno dei componenti più utilizzati quando si sviluppa in Flex, infatti non è soltanto una tabella, ma racchiude molteplici caratteristiche avanzate, può svolgere la funzione di form per l’inserimento e la modifica dei dati consentendo di interagire con i database e come ogni controllo Flex può essere popolato facilmente tramite binding con un file XML.
In questo articolo vedremo come inserire un’immagine o un generico componente in un datagrid.
In questa porzione di codice creiamo il datagrid, e lo associamo al file XML “filexml”.
Il punto fondamentale è la colonna ICONA, nella quale inseriremo delle immagini invece del testo. Per far ciò basta creare un <mx:itemrender>, al suo interno un <mx:component> e quindi inserire l’oggetto da noi desiderato. Possiamo inserire anche un nostro componente, creandolo dal menù Flex. Se il componente da noi creato si chiama comp1, dovremo inserire all’interno di <mx:component> nel datagrid <ns:comp1>. Nell’esempio sottostante invece, ho inserito semplicemente un’immagine, ma non c’è nessuna differenza, il procedimento è identico.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<mx:datagrid x="10" y="5" dataprovider="{filexml.item}" rowheight="64">
		<mx:columns>
			<mx:datagridcolumn headertext="Icona" datafield="icona">
			<mx:itemrenderer>
				<mx:component>
					<mx:image source="{data.icona}">
					</mx:image>
				</mx:component>
			</mx:itemrenderer>
			</mx:datagridcolumn>
			<mx:datagridcolumn headertext="Directory" datafield="dir">
			<mx:datagridcolumn headertext="Descrizione" datafield="descrizione">
</mx:columns>
</mx:datagrid>

Sopra potete vedere l’esempio appena realizzato, e visualizzare l’intero codice sorgente dell’esempio col tasto destro del mouse.

Pubblicato in Flash, Flex, ITbazar, Webmaster | Nessun Commento »

Firefox 3: Ancora altre due beta?

Inviato da Domenico Dibello il 12 Marzo 2008

firefox beta 3 logo

Ma non doveva essere l’ultima versione beta?

A sorpresa Mozilla annuncia che ci sarà una Beta 5 del noto browser Firefox, verrà rilasciata a fine Marzo, ma io consiglio a tutti di scaricare la attuale beta version 4 che ormai ha raggiunto una stabilità sufficiente per essere utilizzata senza problemi. Potete fare il download da qui , le lingue disponibili sono già 40, ovviamente Italiano compreso!

Ricordo per chi non lo sapesse che Firefox 3 è attualmente il browser più veloce nell’elaborazione di Javascript e quello che meglio figura nei test di compatibilità Acid2 (Firefox 3 vs IE8).

Pubblicato in ITbazar, Internet, Linux, Webmaster, Windows | Nessun Commento »

Come si vede il tuo sito nei vari browser?

Inviato da Domenico Dibello il 8 Marzo 2008

Poichè siamo in tema di browser, in attesa delle release definitive di IE8 e Firefox 3, mi è sorto il dubbio, il mio sito viene visualizzato correttamente nei browser più vecchiotti? Questa è una domanda che si pongono tutti i webmasters che si rispettino! L’unico modo per scoprirlo velocemente è di installare tutti questi browser, magari in una virtual machine come vmware o virtualbox. Oppure c’è una seconda possibilità per chi non avesse tempo e RAM da spendere :-)

Questa opportunità si chiama Browsershots, un sito internet che fornisce, come si intuisce dal nome, uno screenshot della pagina web da noi desiderata visualizzata in più di 50 browser (per ogni browser vi sono diverse versioni). E’ anche possibile testare diverse risoluzioni, e diversi sistemi operativi.

Browsershots

N.B. Poichè i server devono caricare il sito tante volte quanti sono i browser da testare e per ogni virtual machine dovranno anche effettuare anche uno screenshot della pagina il servizio richiede un po di tempo…perciò dopo aver inviato la richiesta bisogna far trascorrere alcuni minuti e poi ricaricare la pagina. Spero che questa dritta vi sia utile! :-)

Pubblicato in ITbazar, Internet, Webmaster | 1 Commento »

Confronto: Firefox 3 vs Internet Explorer 8

Inviato da Domenico Dibello il 6 Marzo 2008

I due browser web più utilizzati al mondo Firefox di Mozilla ed Internet Explorer di Microsoft stanno per rilasciare contemporaneamente la loro nuova versione definitiva. Iniziamo col sottolineare che è già possibile scaricare e provare personalmente questi due browser , già rilasciati nelle loro versioni “unstable”. Una versionedeveloper beta 1” per Internet explorer e una Firefox 3 beta 3 per il browser di casa Mozilla.

Internet Explorer 8

internet explorer 8

Microsoft con il suo nuovo browser si è posta come obiettivo principale (strano ma vero) la compatibilità, o meglio la volontà di rispettare gli standard al pari degli altri browser. Internet explorer 8 infatti sarà dotato di tre modalità:

  • Quirks mode:modalità compatibile solo con Internet Explorer 6 o inferiori. Questa è una sorta di retrocompatibilità secondo microsoft, quella che il resto del mondo o qualunque dizionario definisce “incompatibilità”
  • Standard mode: offre la stessa compatibilità di Internet Explorer 7 ovvero una semicompatibilità con gli standard W3c e gli altri browser
  • Super standard mode: Come al solito in Microsoft soffrono di manie di grandezza. Questa modalità con questo fantastico nome, altro non è che una compatibilità totale con gli altri browser e con lo standard W3C, quello che Firefox e gli altri browser fanno già da tempo.

Quale sarà la modalità standard tra queste? Prima Microsoft ha comunicato che per utilizzare il “Super standard mode” gli sviluppatori avrebbero dovuto inserire un apposito tag all’interno della pagina web (ma perchè devono sempre complicare le cose?) poi finalmente, in qualche momento di lucidità qualcuno ha deciso di abilitare come “stato default” il Super standard mode, cioè quello compatibile con tutti senza l’aggiunta di tag.

Le due novità di IE8 sono le Activities e le WebSlices

  • Activities: Sono un modo di sfruttare i servizi forniti tra i vari siti web, per esempio posso tradurre uno stralcio di articolo utilizzando Google Translator o posso condividere un video utilizzando Youtube etc direttamente dal browser utilizzando un menù contestuale
  • Webslices: Ancora una volta Microsoft deve (ri)creare qualcosa che già esiste dandogli un proprio nome e degli standard propri. Le Webslices sono una sorta di Feed, i siti internet possono fornire dei servizi e aggiornare gli utenti quando ci sono delle variazioni e comunicare al browser la presenza di contenuti sottoscrivibili con webslices sul proprio sito.

Activities di Internet Explorer 8

La barra dei collegamenti ha subito un restyling ed è stata rinominata “Barra dei preferiti”. Altre migliorie importanti sono la protezione contro il phishing chiamata “Safety Filter”, continuerà a bloccare i siti di phishing e impedirà l’accesso a siti che contengono software nocivo o tentativi di carpire i dati personali degli utenti. IE8 integra la funzionalità Automatic Crash Recovery (ACR) che impedisce la perdita di dati occupandosi del ripristino delle sessioni di navigazione in caso di crash dell’applicazione.

Firefox 3

Tra le nuove funzionalità introdotte in Firefox 3 invece abbiamo:

  • Migliorate le funzioni di protezione, è possibile conoscere con un click le credenziali di un sito web.

protection_firefox3.png

  • Migliorata la gestione dei bookmark, è adesso più facile aggiungere e organizzare i collegamenti alle pagine web, creare nuove directory e gestendo il tutto direttamente dalla address bar

Migliorata gestione e organizzazione dei bookmarks

 

  • Migliorata la gestione dei download, è possibile riprendere e interrompere i vari download anche dopo la chiusura del browser!

nuovo download manager firefox 3

  • I più grandi miglioramenti si notano immediatamente a livello di performance, il rendering della pagina è molto più veloce e sono stati risolti dei bug riguardanti i CSS
  • Minore uso di memoria: Secondo Mozilla sono stati corretti 300bug (memory leak) per cui c’era un uso eccessivo di memoria non indispensabile
  • Ultimo e importantissimo miglioramento è quello riguardante il motore Javascript. Come ben sappiamo il Web 2.0 implica AJAX, e AJAX implica uso massiccio di JavaScript.
  • Ecco i risultati dei test di performance sulla esecuzione di istruzioni Javascript sui vari Browser:
  • Firefox 3 con Ottimizzazione PGO: 7200 ms
  • Firefox 3: 8200 ms
  • Opera 9 Beta: 10800 ms
  • Firefox 2: 29300 ms
  • Internet Explorer 7: 72400 ms

PGO è un profilo utente ottimizzato da un programmatore dello staff Mozilla Ted Mielczarek, che rende ancora più veloce il motore Javascript di questo browser già molto performante!

Spero che questa panoramica sui due browser vi sia stata utile. Io personalmente utilizzando soltanto Linux Ubuntu non ho scelta, (anche avendo potuto scegliere avrei scelto certamente Firefox).

Voi da che parte state?

Pubblicato in ITbazar, Internet, Linux, Microsoft, Tecnologia, Webmaster, Windows | 2 Commenti »