Archief - Joomla website reeds 2 maal gehackt

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

silver_one

Legacy Member
Hello,

Sinds geruime tijd werk ik in bijberoep als it technieker (perfecte aansluiting op hoofdjob) en paar maanden geleden vond ik het tijd om even een website samen te gooien met wat nuttige info.
Website bestaat uit een joomla met virtuemart als catalogus.
Beide hebben de laatste updates.

Nu is het de laatste keer reeds 2 maal voorgevallen dat de volledige website verwijderd is. Enkel wat scirpts blijven er nog na.

Mijn webhosting staat bij vibit, deze hebben me de volgende uitleg gegeven:

Beste,

Uw website was blijkbaar gehackt, we hebben er malafide scripts op terug gevonden:
anvarbe: /usr/bin/php /home/anvarbe/public_html/administrator/includes/ly0kha.php
We hebben uw data in public_html_old gezet, zodat het script niet meer uitgevoerd
kan worden en uw cPanel wachtwoord gereset.
U kuist dus best eens eerst alles op vooraleer u een backup restored of iets
andere terug upload.

Met vriendelijke groeten,
VibiT BVBA


Dus ik heb nadien (nu reeds voor de 2de maal) alles verwijderd en hem gewoon opnieuw geupload met de laatste joomla update.
De sql database was nog intact, dus daar moest ik niets aan veranderen.

Nu ligt men expertise op een totaal ander vlak en zou ik begod niet weten hoe het mogelijk is dat men volledig toegang heeft tot men webspace.
Buiten mijn & de main is er geen ftp account. Van beide zijn de psw al veranderd. Remote SQL staat niet aan dus via daar ook niet...

Iemand soms een idee?

Ter info de website is http://www.anvarit.be[link]http://www.anvarit.be en euhm gelieve niet het uiterlijk te bekritiseren, het is nu ook niet de proffesioneelste site.

Lord Kveldulv

Legacy Member
Dat is nu het nadeel van een opensource CMS. Iedereen kent de source code en er zijn quasi altijd vulnerabilities mogelijk. Heb je de laatste nieuwe versie en eventuele patches? In feite zou je dag tot dag de exploits moeten opvolgen en elke update meteen installeren. En zelfs dat is soms niet voldoende.
En als je dat niet doet is het duimen dat ze u nooit viseren. Als ze u ene keer gehad hebben moet je alles er af gooien en een nieuwere versie installeren.

Trouwens, database intact? Wiped die ook maar eens. Daar kan misschien ook een backdoor ingestoken zijn. Een nieuwe user of zo, of een user email veranderd.
Ze zijn via joomla binnen geraakt. Niet via uw ftp of mysql server.

Ik heb het gevoel dat hierdoor een website hacken bijna even gemakkelijk geworden is als een pc hacken met netbus en subseven 10 jaar geleden.

edit: no offense maar ik zie dat je ook websites verkoopt terwijl je hier zegt dat het uw expertise niet is en het ook duidelijk is dat je ze niet kan beveiligen of zelfs niet weet waar je moet beginnen kijken. Zeker dat je zoiets uw klanten wil aanbieden?

silver_one

Legacy Member
Lord Kveldulv zei:
Dat is nu het nadeel van een opensource CMS. Iedereen kent de source code en er zijn quasi altijd vulnerabilities mogelijk. Heb je de laatste nieuwe versie en eventuele patches??

Yup laatste patches, had eigenlijk niet echt het idee dat joomla zo onveilig was

Lord Kveldulv zei:
edit: no offense maar ik zie dat je ook websites verkoopt terwijl je hier zegt dat het uw expertise niet is en het ook duidelijk is dat je ze niet kan beveiligen of zelfs niet weet waar je moet beginnen kijken. Zeker dat je zoiets uw klanten wil aanbieden?
non taken, sja website die reeds gemaakt zijn meestal heel kleine ook op een joomla basis met een template die gemaakt word door een kennis...
Zoals je daarnet al zei, alles begint simpel te worden...

Maar 10 jaar geleden was het bij windows idd wel makkelijk om met subseven iemand te hacken (als je de trojan binnen kreeg tenminste) maar op een unix systeem was dit toch totaal iets anders. Lang nog met Netware gewerkt en dat is toch een degelijk stabiel & veilig systeem.

FurtiveDuck

Legacy Member
Ik weet niet of dit er veel mee te maken kan hebben maar misschien is uw wachtwoord beveiliging niet zo efficiënt. Ik ken al veel websites die, indien je de MT5 (of whatever hoe het ook noemt) code van een wachtwoord weet en als het wachtwoord niet meer dan 5 karakters is, je het gewoon kan laten omzetten. Misschien eens kijken voor een veiliger loginscript of dergelijke?

Curahee Q

Legacy Member
@FurtiveDuck: MD5 ;)

Je kan een MD5-hash bruteforcen, of deze door een rainbowtable halen. Dit is eigenlijk een soort van woordenboek waarbij men dan de MD5-hash 1 voor 1 gaat vergelijken met de MD5-hashes van dat 'woordenboek'.

Daarom dat je er altijd salt en pepper aan toe moet voegen. Dit is gewoon een benaming voor een beetje zever vooraan en een beetje zever achteraan toevoegen aan het passwoord.

Bijvoorbeeld:
wachtwoord: test
MD5: 098f6bcd4621d373cade4e832627b4f6
Gemakkelijk door een rainbowtable te halen.

Wanneer je er nu 'salt and pepper' aan toevoegt krijg je bijvoorbeeld:
salt: z0ut
pepper: p3pp3r
wachtwoord: z0uttestp3pp3r
MD5: 78f533229de990e08f38889268c4b6de
Zoals je ziet, al een heel andere md5 hash en zal met een rainbowtable al niet meer werken. Zelfs een bruteforce is al moeilijk.

Een md5 hash is altijd 32 karakters lang. Wanneer je wachtwoord langer is dan 32 karakters zal hij dus informatie moeten weggooien. Dit kan resulteren in het feit dat er misschien meer dan 1 oplossingen zijn voor dezelfde hash. Maar dit terzijde.

FurtiveDuck

Legacy Member
Zalige uitleg. Ik begreep het nooit echt goed en nu klaart alles op. Hoe ik het nu in code moet verwerken blijft door mijn hoofd spoken maar nu begrijp ik het tenminste al. Bedankt!

Dubbelpunt

Legacy Member
joomla heeft dit reeds, die md5 beveiliging, als ik de paswoorden opzoek in de database zie ik iets als 41s5r6gsd6f4gsd65rg4d5rf

anyway, stap 1 is tegen NIEMAND zeggen dat de website gemaakt is in joomla, post dit niet op een joomla forum + check broncode en verwijder maar overal het woordje joomla :niceone:
als ik u broncode bekijk zie ik al staan:
<meta name="generator" content="Joomla! 1.5 - Open Source Content Management" />

en idd, laatste versie in het oog houden

Tyfius

Legacy Member
Webber zei:
joomla heeft dit reeds, die md5 beveiliging, als ik de paswoorden opzoek in de database zie ik iets als 41s5r6gsd6f4gsd65rg4d5rf

anyway, stap 1 is tegen NIEMAND zeggen dat de website gemaakt is in joomla, post dit niet op een joomla forum + check broncode en verwijder maar overal het woordje joomla :niceone:
als ik u broncode bekijk zie ik al staan:
<meta name="generator" content="Joomla! 1.5 - Open Source Content Management" />

en idd, laatste versie in het oog houden
Wat ne zever...
Het is heus niet moeilijk om te achterhalen of een website met Joomla is opgebouwd, zelfs al is in uw HTML broncode nergens het woordje Joomla terug te vinden. Dikwijls kan je aan de structuur alleen al zien welk CMS er achter zit.

Gewoon zorgen dat je altijd de laatste versie met de laatste security updates draait, kijk uw content pagina's is na op vreemde HTML of PHP code die je op het eerste zicht niet ziet, kijk uw user database eens na voor vreemde gebruikers, kijk de inhoud van uw FTP eens na op vreemde bestanden,... Waarschijnlijk (zoals reeds vermeld) ligt het probleem gewoon daar.

Cycloon

Legacy Member
Webber zei:
joomla heeft dit reeds, die md5 beveiliging, als ik de paswoorden opzoek in de database zie ik iets als 41s5r6gsd6f4gsd65rg4d5rf

Mja daar ging het niet echt om, wachtwoord die < 5-7 tekens zijn blijven onveilig omdat er gewoon databases vol md5 waarden zijn voor alle mogelijk wachtwoorden tot dat aantal tekens. Als ze dus een md5 gehashed wachtwoord uit je database kunnen vissen en die is onveilig dan kunnen ze zo op je website inloggen. Daarvan ook de uitleg van Curahee Q om het een stukje veiliger te maken.

Dubbelpunt

Legacy Member
Tyfius zei:
Wat ne zever...
Het is heus niet moeilijk om te achterhalen of een website met Joomla is opgebouwd, zelfs al is in uw HTML broncode nergens het woordje Joomla terug te vinden. Dikwijls kan je aan de structuur alleen al zien welk CMS er achter zit.

Gewoon zorgen dat je altijd de laatste versie met de laatste security updates draait, kijk uw content pagina's is na op vreemde HTML of PHP code die je op het eerste zicht niet ziet, kijk uw user database eens na voor vreemde gebruikers, kijk de inhoud van uw FTP eens na op vreemde bestanden,... Waarschijnlijk (zoals reeds vermeld) ligt het probleem gewoon daar.

je moet de melk ook niet bij de kat zetten hé ;)

Curahee Q

Legacy Member
FurtiveDuck zei:
Zalige uitleg. Ik begreep het nooit echt goed en nu klaart alles op. Hoe ik het nu in code moet verwerken blijft door mijn hoofd spoken maar nu begrijp ik het tenminste al. Bedankt!

Bedankt :). Dat in de code verwerken is ook totaal niet zo moeilijk. Je moet gewoon zorgen dat je dezelfde salt en dezelfde pepper gebruikt.

Hoogstwaarschijnlijk maken ze een gebruiker aan. Je handelt dat formfield af (in dit voorbeeld met php) en voordat je het in de mysql database steekt voeg je er salt en pepper aan toe.
PHP:
<?php
...
	$password = $_POST['password'];
	$salt = "bl4730";
	$pepper = substr($password, 0, 3);
	$password = $salt . $password . $pepper;

	mysql_query("INSERT INTO Accounts(accPassword) VALUES(MD5('" . $password . "'))") or die(mysql_error());
...
?>

Wanneer iemand inlogt moet je diezelfde md5-hash opnieuw maken met het opgegeven password. Je afhandeling zal er dan als volgt uitzien.

PHP:
<?php
...
	$user = mysql_real_escape_string($_POST['user']);
	$password = $_POST['password'];
	$salt = "bl4730";
	$pepper = substr($password, 0, 3);
	$password = md5($salt . $password . $pepper);

	$resultset = mysql_query("SELECT accPassword FROM Accounts WHERE accUser='" . $user . "'") or die(mysql_error());
	$db_pass = mysql_fetch_assoc($resultset);

	if($password == $db_pass['accPassword']) {
		// inloggen
	}
	else {
		echo "Foute logingegevens!";
	}
...
?>

Als er nog vragen zijn zie ik ze wel verschijnen :).

Dj Aero

Legacy Member
Als je joomla gebruikt is het extreem belangrijk om steeds elke update mee te doen. Anders is het zeer hack gevoelig. Zorg dat je telkens de nieuwste versie hebt, elk gebruikt onderdeel moet je updaten! dat is het nadeel van Joomla!

Fligth4502

Legacy Member
Dit is natuurlijk zeer irritant, zelf heb ik dit 2 maal gehad en dan ben ik gewoon overgestapt naar gewoon HTML of Drupal

Inferix

Legacy Member
Dit is wat ge moet volgen. Als uw joomla de laatste versie is, dan zijn er atm geen exploits voor in het wild bij mijn weten. En schrijf uw in op de security mailing, krijgt ge automatisch mails als er een patch is voor de core.

WHiSPy

Legacy Member
Webber zei:
joomla heeft dit reeds, die md5 beveiliging, als ik de paswoorden opzoek in de database zie ik iets als 41s5r6gsd6f4gsd65rg4d5rf

anyway, stap 1 is tegen NIEMAND zeggen dat de website gemaakt is in joomla, post dit niet op een joomla forum + check broncode en verwijder maar overal het woordje joomla :niceone:
als ik u broncode bekijk zie ik al staan:
<meta name="generator" content="Joomla! 1.5 - Open Source Content Management" />

en idd, laatste versie in het oog houden

Weet dat je hiermee de licentie van het product dat je gebruikt schendt en de mensen die 't ontwikkelen jou met recht en reden kunnen aanklagen! :)
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan