avast JS:Illredir-CI

Slimshady

WRInaute occasionnel
Bonjour,
lorsque je vais sur mon site, avast me dit qu'il y a un trojan sur le fichier script.js
voici le nom du trojan : JS:Illredir-CI

Et le code du fichier script.js

trouvez-vous quelque chose de louche ?

Code:
function toggle(id)
{
	var i = 0;
	
	if(getStateById("descr_"+id+"_"+i) != "none")
	{
		document.getElementById(id+"_toggle").innerHTML = '<img src="img/plus.png" alt="+" />';
		while(document.getElementById("descr_"+id+"_"+i))
		{
			hideById("descr_"+id+"_"+i);
			i++;
		}
	}
	else
	{
		document.getElementById(id+"_toggle").innerHTML = '<img src="img/minus.png" alt="-" />';
		while(document.getElementById("descr_"+id+"_"+i))
		{
			showById("descr_"+id+"_"+i);
			i++;
		}
	}
}

function getStateById(id)
{
	if (document.getElementById) {
	return document.getElementById(id).style.display;
	} else if (document.all) {
	return document.all[id].style.display;
	} else if (document.layers) {
	return document.layers[id].display;
	}	
}

function showById(id) {
	if (document.getElementById) {
	document.getElementById(id).style.display="block";
	} else if (document.all) {
	document.all[id].style.display="block";
	} else if (document.layers) {
	document.layers[id].display="block";
	}
}

function hideById(id) {
	if (document.getElementById) {
	document.getElementById(id).style.display="none";
	} else if (document.all) {
	document.all[id].style.display="none";
	} else if (document.layers) {
	document.layers[id].display="none";
	}
}

/*
SCRIPT EDITE SUR L'EDITEUR JAVASCRIPT
http://www.editeurjavascript.com
Modifié par Maldrus
*/
function ChangeUrl(formulaire,page)
	{
	if (formulaire.categorie.selectedIndex != 0)
		{
		var test=page+"c="+formulaire.categorie.options[formulaire.categorie.selectedIndex].value;
		location.href = test;
	 	}
	}
/*
Script récupéré sur un site pour calculer la position de la souris
*//*
var x;
var y;
function position(e) 
{
	x = (navigator.appName.substring(0,3) == "Net") ? e.pageX : event.x+document.body.scrollLeft;
	y = (navigator.appName.substring(0,3) == "Net") ? e.pageY : event.y+document.body.scrollTop;
}

if (navigator.appName.substring(0,3) == "Net") document.captureEvents(Event.MOUSEMOVE);
document.onmousemove = position;*/
/*
Script 
Permet d'afficher les détails d'une catégorie de wallpapers
*/ 
var Use = 0;
function Details(id)
{
	if (!Use)
	{
		document.getElementById("Details" + id).style.display = "block";
		//document.getElementById("Details" + id).style.top = y;
		//document.getElementById("Details" + id).style.left = 200;
		Use = id;
	}
	else
	{
		document.getElementById("Details" + Use).style.display = "none";
		if (Use != id)
		{
			Use = 0
			Details(id);
		}
		else
			Use = 0;
	}
}

De toute facon ya un truc louche... c'est que si je supprime le fichier script.js avast me dit toujours que le prob vient de script.js alors que j'ai bien vider le cache et tester sur ff et ie.

merci pour votre aide
 

aladdin

WRInaute passionné
fort possible que ton site soit piraté et quelqu'un y a déposé un script pour attaquer les machines de tes visiteurs.
script.js ca peut être un autre fichier qui se trouve dans un sous répertoire de ton site vérifie bien le contenue de tes sous dossiers.
 

Zecat

WRInaute accro
Le trojan que tu viens de chopper semble tres actifs ces dernières semaines. Si c'est mon "pote", vérifie :

1 - tous tes fichiers .js
2 - tous tes fichiers dont le nom contient "index" ...

Et dans les deux cas tu vas voir à la fin de ton fichier et tu vire les deux lignes ajoutées (<script quelque chose ...)
 

Slimshady

WRInaute occasionnel
Merci pour ta reponse zecat,
je n'ai qu'un fichier .js que j'ai supprimé.
J'ai regarder les quelques fichiers contenant index dans leur nom, aucune trace de script en fin de page.
Donc j'ai vérifier toutes les pages de mon site > RIEN

Mon site n'est pas un CMS, c'est un script codé surmesure par un de mes amis.

Je vois pas d'ou peux venir le prob
 

aladdin

WRInaute passionné
d'une faille dans ton site qui a été exploitée pour y installer un trojan, c'est là le gros problème des scripts codés par des amis ...
 

aladdin

WRInaute passionné
bah non, la balise <script> ajoutée n'est qu'une conséquence de l'exploitation de la faille.

c'est le code de ton site qui doit comporter des failles
 

Julia41

WRInaute passionné
Si tu utilises Filezilla comme client FTP ça m'étonnerait pas que la faille viennent de là.

Comme l'a dit Zecat, ce hack édite tous tes fichiers .js et index.* (ainsi que default.*/home.*) généralement en rajoutant une ou deux lignes en bas du fichier.

Tu as dû récupérer un trojan sur un autre site qui s'est chargé de lire les mots de passe filezilla stockés en clair sur ton ordinateur (filezilla n'encrypte pas les pass FTP par défaut).

En tout cas ouvre 3/4 fichiers index.* et regarde si en bas de page tu n'as pas des trucs en plus (du js dans un fichier PHP par exemple).
 

Zecat

WRInaute accro
ouaip je confirme.

Par ailleurs, en plus des mesures standards (antivirus a jour activé, changement des password pour des truc bien compliqués etc), suite aux vistes de ces sales bestioles, on a mis en place sur plusieurs sites une détection temps réel pour le cas ou ils repasseraient quand même à travers les mailles par une autre porte d'entrée :

- on a dans un coin des copies renomées de tous les index et js
- regulièrement un cron compare taille/date modif des fichiers en ligne Vs les fichiers a l'abri.
- Si ca a bougé on mets dans un autre coin les fichiers pourris pour les regarder plus tard, on les ecrase avec les copies saines et on s'envoit un mail d'alerte.

Au moins déjà si ca repasse : on est avertit de suite et on laisse pas le temps aux bots de tomber dessus avec toutes les conséquences (alerte malware dans les serps) ni aux visteurs d'etre emm.... et en plus de servir de propagateurs à leur tour ...

Une sorte de bombe anti-crevaisons (qui n'exclut pas d'avoir une roue de secours dans le coffre) :wink:
 

aladdin

WRInaute passionné
@ZeCat : trouver la faille qui aurait permis l'intrusion serait plus efficace pourtant !
et si t'as un dédié, tu as des anti virus pas mal et gratuits pour scanner ce genre de choses.
 

Slimshady

WRInaute occasionnel
Bonjour,
j'utilise en effet filezilla, mais j'ai d'autre site (sur d'autres mutus) qui n'ont pas eut de probleme.
J'utilise avast qui se met a jour presque tous les jours.
J'ai vérifier tous les fichiers et il n'y a rien de bizard en fin de page.
Je vais continuer mes recherches mais ca risque de pas etre facile je suis a cours d'idée.
 

aladdin

WRInaute passionné
si tu as un accès SSH essai de taper : grep -Iirn '<script' *
à la racine de ton site, et poste ici ce que tu obtiens
 

Julia41

WRInaute passionné
aladdin a dit:
Julia41 a dit:
(filezilla n'encrypte pas les pass FTP par défaut).

même s'il les crypte celà ne sert à rien puisque les mot de passe FTP sont envoyés en clair ...
Je parle "stockage des mots de passe sur le disque". Tout est dans un xml.

Pour les antivirus ça ne sert à "rien" il suffit de changer une lettre (pour le hacker) dans le bout de code javascript pour être en dehors de la base de données de virus/trojan et résultat ce n'est pas détecté. Ces bases doivent être tellement énorme que les vendeurs d'antivirus doivent faire des choix et ne publier que les "plus méchant".
 

aladdin

WRInaute passionné
Julia41 a dit:
aladdin a dit:
Julia41 a dit:
(filezilla n'encrypte pas les pass FTP par défaut).

même s'il les crypte celà ne sert à rien puisque les mot de passe FTP sont envoyés en clair ...
Je parle "stockage des mots de passe sur le disque". Tout est dans un xml.

Pour les antivirus ça ne sert à "rien" il suffit de changer une lettre (pour le hacker) dans le bout de code javascript pour être en dehors de la base de données de virus/trojan et résultat ce n'est pas détecté. Ces bases doivent être tellement énorme que les vendeurs d'antivirus doivent faire des choix et ne publier que les "plus méchant".

j'ai l'impression que tu confond plusieurs choses !
1 - le genre de trojan qu'il a chopé ne se transmet pas via FileZilla, c'est une faille dans le site qui permet de l'injecter. le trojan là est sur son site et non pas sur sa machine.

2 - pour les trojan qui sont sur la machine, celà ne sert à rien de crypter les mot de passe, puisqu'il suffit au trojan de keylogger, ou sniffer le trafic réseau pour retrouver le mot de passe FTP.

3 - les antivirus utilisent des signature, une signature ce n'est pas un simple strcmp ! c'est plus compliqué que ca, et dans leurs bases ils ont les signature de TOUS les virus connues.
 

Zecat

WRInaute accro
aladdin a dit:
@ZeCat : trouver la faille qui aurait permis l'intrusion serait plus efficace pourtant !
et si t'as un dédié, tu as des anti virus pas mal et gratuits pour scanner ce genre de choses.
Mais on l'a trouvée. C'était une machine chez moi avec antivirus pas uptodate et accès filezila ... donc on a deja fermé ces portes mais une securité de plus au cas ou ...
 

Zecat

WRInaute accro
Julia41 a dit:
@Zecat excellente technique, je vais tenter de scripter un petit truc pour automatiser la chose.
c'est pas une panacée pais au moins ce que ca coince dans un coin du ring c'est toujours ca de pris ...
 

Julia41

WRInaute passionné
aladdin a dit:
stripped

j'ai l'impression que tu confond plusieurs choses !
1 - le genre de trojan qu'il a chopé ne se transmet pas via FileZilla, c'est une faille dans le site qui permet de l'injecter. le trojan là est sur son site et non pas sur sa machine.

2 - pour les trojan qui sont sur la machine, celà ne sert à rien de crypter les mot de passe, puisqu'il suffit au trojan de keylogger, ou sniffer le trafic réseau pour retrouver le mot de passe FTP.

3 - les antivirus utilisent des signature, une signature ce n'est pas un simple strcmp ! c'est plus compliqué que ca, et dans leurs bases ils ont les signature de TOUS les virus connues.

1 - Le js (trojan) s'éxecute, lecture (aidé par le navigateur) du fichier xml contenant les mots de passe :
C:\Users\Admin Serveur\AppData\Roaming\FileZilla\filezilla.xml
Le mot de passe est stocké en clair dans :
Code:
        <LastServer>
            <Host>ftp.pwet.com</Host>
            <Port>21</Port>
            <Protocol>0</Protocol>
            <Type>0</Type>
            <User>syndicat</User>
            <Pass>ici</Pass>  <============
            <Logontype>1</Logontype>
            <TimezoneOffset>0</TimezoneOffset>
            <PasvMode>MODE_DEFAULT</PasvMode>
            <MaximumMultipleConnections>0</MaximumMultipleConnections>
            <EncodingType>Auto</EncodingType>
            <BypassProxy>0</BypassProxy>
        </LastServer>

2 - Je ne parle pas du tout de sniffing ou de connexion FTP. Si FileZilla est fermé, il suffit d'ouvrir ce fichier et on a le mot de passe.
=> execution du js sur le site "hacké"
=> lecture de mon fichier filezilla.xml
=> envoi par js d'une simple requête javascript (même pas ajax) avec un bon vieux GET ou POST des login/pass sur le site du hacker et c'est réglé.

3 - Ils ont des bases énormes, ça oui, moi non.
 
Haut