Comme souvent, un point de départ totalement hors sujet antivirus... En navigant sur : www.mediapart.fr !
Et notamment : http://www.mediapart.fr/journal/france/070513/sarkozy-black-out-sur-son-compte-de-campagne
SquidClamAV déclenche différentes alertes mais qui ne sont pas visibles durant la navigation. Il doit s’agir de composants imbriqués dans la page globale visitée, et seule l’analyse des journaux (snif) lève le lièvre.
<snip>
1368390567.284 582 192.168.XXX.YYY TCP_MISS/301 567 GET http://level3.cedexis.com/r15/32/r15.html? - DIRECT/207.123.33.126 text/html
1368390567.427 108 192.168.XXX.YYY TCP_MISS/200 896 GET http://192.168.XXX.ZZZ/cgi-bin/clwarn.cgi.fr_FR? - DIRECT/192.168.XXX.ZZZ text/html
<snip>
1368390575.246 296 192.168.XXX.YYY TCP_MISS/301 566 GET http://sfr.cedexis.com/r15/102/r15.html? - DIRECT/93.17.156.250 text/html
1368390575.387 99 192.168.XXX.YYY TCP_MISS/200 894 GET http://192.168.XXX.ZZZ/cgi-bin/clwarn.cgi.fr_FR? - DIRECT/192.168.XXX.ZZZ text/html
<snip>
1368390584.019 820 192.168.XXX.YYY TCP_MISS/200 530 GET http://ec2-ap-northeast-1a.cedexis.com/r15/r15lgc.js? - DIRECT/175.41.250.60 application/x-javascript
1368390584.460 387 192.168.XXX.YYY TCP_MISS/301 578 GET http://ec2-ap-northeast-1a.cedexis.com/r15/r15.html? - DIRECT/175.41.250.60 text/html
1368390584.601 84 192.168.XXX.YYY TCP_MISS/200 902 GET http://192.168.XXX.ZZZ/cgi-bin/clwarn.cgi.fr_FR? - DIRECT/192.168.XXX.ZZZ text/html
1368390600.699 156 192.168.XXX.YYY TCP_MISS/200 646 GET http://static.mediapart.fr/cedexis/cdx10b.js? - DIRECT/95.131.141.3 application/javascript
1368390600.843 114 192.168.XXX.YYY TCP_MISS/200 646 GET http://static.mediapart.fr/cedexis/cdx10b.js? - DIRECT/95.131.141.3 application/javascript
1368390602.150 1276 192.168.XXX.YYY TCP_MISS/200 100548 GET http://static.mediapart.fr/cedexis/cdx10b-100KB.js? - DIRECT/95.131.141.3 application/javascript
1368390602.385 214 192.168.XXX.YYY TCP_MISS/200 349 GET http://report.init.cedexis-radar.net/f1/aqfQCW4caFOOaaaaJpUpuqxUksGaCJgjW49raiZ7J1hqrsipaaaaaaaaaaaaaaaaaZDjafspaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagZGaaaaaaaaa/1/10490/1986/1/0/179/0 - DIRECT/178.33.229.168 application/x-javascript
1368390602.450 227 192.168.XXX.YYY TCP_MISS/200 349 GET http://report.init.cedexis-radar.net/f1/aqfQCW4caFOOaaaaJpUpuqxUksGaCJgjW49raiZ7J1hqrsipaaaaaaaaaaaaaaaaaZDjafspaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagZGaaaaaaaaa/1/10490/1986/0/0/139/0 - DIRECT/178.33.229.168 application/x-javascript
1368390602.473 250 192.168.XXX.YYY TCP_MISS/200 349 GET http://report.init.cedexis-radar.net/f1/aqfQCW4caFOOaaaaJpUpuqxUksGaCJgjW49raiZ7J1hqrsipaaaaaaaaaaaaaaaaaZDjafspaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagZGaaaaaaaaa/1/10490/1986/14/0/619/0 - DIRECT/178.33.229.168 application/x-javascript
1368390603.341 367 192.168.XXX.YYY TCP_MISS/200 296 GET http://ping.chartbeat.net/ping? - DIRECT/184.73.194.227 image/gif
1368390604.311 119 192.168.XXX.YYY TCP_MISS/200 359 GET http://probes.cedexis.com/? - DIRECT/37.59.8.25 application/javascript
En prenant la requête http juste avant celle où le poste est redirigé sur la bannière d’alerte, voici la vraie l’alerte qui devrait apparaître :

D’après le nom de la détection, « Xored », quiconque suivant un peu les modes du monde souterrain VX, hausserait les sourcils. XOR est couramment utilisé pour obfusquer, embrouiller, bref dissimuler du code qui normalement serait « attrapé » par de la recherche de motifs.
Voici le code de la page en question :
<html>
<head>
<meta charset="utf-8"/>
<title></title>
<script>
function cdxt(){this.a=function(){this.c=/rnd=(\d+)-(\d+)-(\d+)-(\d+)-(\d+)-(\d+)-(\w+)-(\d+)/.exec(window.location.search);this.b({s:"l"})};this.b=function(d){var c=window,b=this.c;if(c!==c.parent){d.p={z:b[2],c:b[3],i:b[6]};d.r={z:b[4],c:b[5]};d.m=b[1];c.parent.postMessage(JSON.stringify(d),"*")}};this.d=function(){setTimeout(this.e(),0)};this.e=function(){var a=this;return function(){a.f()}};this.f=function(){var b,j,h,g,m,a,l=0,k,f=[],c="abcdefghijklmnopqrstuvwxyz0123456789",d={};try{j=document.childNodes[1].outerHTML;h=this.c;g=parseInt(h[8],10);for(a=0;a<h[7].length;a++){l+=h[7].charCodeAt(a)}k=Math.floor(l/h[7].length);m=Math.floor(j.length/g);for(a=m;a<j.length;a+=m){f.push(c.charAt((j.charCodeAt(a)^k)%c.length))}b=window.performance.timing;d={s:"s",h:f.join("")};for(a in b){if("number"===typeof b[a]){d[a]=b[a]}}this.b(d)}catch(i){this.b({s:"e"})}}}if("undefined"===typeof cdxu){(function(){var g=window,f=new cdxt(),e=function(){f.d()},i="addEventListener",h="attachEvent";f.a();if(g[i]){g[i]("load",e,false)}else{if(g[h]){g[h]("onload",e)}}}())};
</script>
</head>
<body>
<!-- Copyright 2012 Cedexis Inc. -->
</body>
</html>
OK, il y a bien du Javascript, qui n’a pas l’air très lisible à première vue.
Première hypothèse : le site ou la page ont été compromis, c’est une vraie bannière virale… (avec redirection ailleurs, code d’exploitation, ou pire préparation de la mémoire avant de lancer l’attaque…).
On pourrait espérer qu’au moins un des moteurs antiviraux les plus utilisés, déclenche… que nenni (résultats VT) :
SHA256: | 894f4863798eaf050021d0220e0ecdc5cb0c737622cd2b9c201974026f24f0df |
Nom du fichier : | r15.html |
Ratio de détection : | 0 / 46 |
Date d'analyse: | 2013-05-12 20:38:03 UTC |
Antivirus | Résultat | Mise à jour |
Agnitum | 20130512 |
AhnLab-V3 | 20130512 |
AntiVir | 20130512 |
Antiy-AVL | 20130512 |
Avast | 20130512 |
AVG | 20130512 |
BitDefender | 20130512 |
ByteHero | 20130510 |
CAT-QuickHeal | 20130510 |
ClamAV | 20130512 |
Commtouch | 20130512 |
Comodo | 20130512 |
DrWeb | 20130512 |
Emsisoft | 20130512 |
eSafe | 20130509 |
ESET-NOD32 | 20130512 |
F-Prot | 20130512 |
F-Secure | 20130512 |
Fortinet | 20130512 |
GData | 20130512 |
Ikarus | 20130512 |
Jiangmin | 20130512 |
K7AntiVirus | 20130510 |
K7GW | 20130510 |
Kaspersky | 20130512 |
Kingsoft | 20130506 |
Malwarebytes | 20130512 |
McAfee | 20130512 |
McAfee-GW-Edition | 20130512 |
Microsoft | 20130512 |
MicroWorld-eScan | 20130512 |
NANO-Antivirus | 20130512 |
Norman | 20130512 |
nProtect | 20130512 |
Panda | 20130512 |
PCTools | 20130512 |
Sophos | 20130512 |
SUPERAntiSpyware | 20130512 |
Symantec | 20130512 |
TheHacker | 20130509 |
TotalDefense | 20130512 |
TrendMicro | 20130512 |
TrendMicro-HouseCall | 20130512 |
VBA32 | 20130510 |
VIPRE | 20130512 |
ViRobot | 20130512 |
Oups… ClamAV ne remonte pas de détection mais ha oui c’est vrai, « c’est un PUA donc pas affiché en page principale des résultats ». Soit.
Ne nous désarmons pas, vérifions aussi niveau URL :
URL Scanner | Résultat |
URL normalisée : | http://netdna.cedexis.com/r15/275/r15.html |
Ratio de détection : | 0 / 39 |
Date d'analyse : | 2013-05-12 20:36:56 UTC (il y a 3 minutes) |
Analyse de fichier : | Le contenu de la réponse de l'URL ne peut pas être récupéré ou il s'agit d'un format texte (HTML, XML, CSV, TXT, etc.), cela n'a donc pas été ajouté à la file d'attente. |
ADMINUSLabs | Clean site |
AlienVault | Clean site |
Antiy-AVL | Clean site |
Avira | Clean site |
BitDefender | Clean site |
C-SIRT | Clean site |
CLEAN MX | Clean site |
Comodo Site Inspector | Clean site |
CyberCrime | Unrated site |
Dr.Web | Clean site |
ESET | Clean site |
Fortinet | Unrated site |
G-Data | Clean site |
Google Safebrowsing | Clean site |
K7AntiVirus | Clean site |
Kaspersky | Unrated site |
Malc0de Database | Clean site |
Malekal | Clean site |
MalwareDomainList | Clean site |
MalwarePatrol | Clean site |
Minotaur | Clean site |
Netcraft | Clean site |
Opera | Clean site |
ParetoLogic | Clean site |
Phishtank | Clean site |
Quttera | Clean site |
SCUMWARE.org | Clean site |
SecureBrain | Unrated site |
Sophos | Unrated site |
SpyEyeTracker | Clean site |
Sucuri SiteCheck | Clean site |
URLQuery | Unrated site |
VX Vault | Clean site |
Websense ThreatSeeker | Clean site |
Wepawet | Unrated site |
Yandex Safebrowsing | Clean site |
ZDB Zeus | Clean site |
ZeusTracker | Clean site |
zvelo | Clean site |
Là par contre, ça en devient un peu frustrant…
Seconde hypothèse ( L ), c’est un faux positif… Il me reste à remonter l’échantillon à ClamAV.