Accueil / Cybersécurité / Patch / Une étude révèle l’augmentation fulgurante des attaques via Java sur les 12 derniers mois

Une étude révèle l’augmentation fulgurante des attaques via Java sur les 12 derniers mois

Le nombre d’attaques exploitant des failles Java entre septembre 2012 et août 2013 a atteint 14,1 millions, un chiffre supérieur d’un tiers à celui observé au cours de la même période en 2011-2012, selon l’étude Kaspersky Lab Java under attack – the evolution of exploits in 2012-2013. 1 210 000 sources d’attaques distinctes ont été identifiées dans 95 pays.

Les « Exploits » sont des programmes malveillants conçus pour tirer parti des vulnérabilités des logiciels légitimes et pénétrer dans les ordinateurs des utilisateurs. Leur nature furtive les rend d’autant plus dangereuses. Lorsqu’un ordinateur utilise des versions vulnérables de logiciels, il suffit de visite une page Web infectée ou d’ouvrir un fichier contenant du code malveillant pour déclencher l’infection. Les cibles les plus fréquemment attaquées sont Oracle Java, Adobe Flash Player et Adobe Reader. L’étude de Kaspersky Lab indique, l’an passé, Java est devenu la cible privilégiée des cybercriminels.

L’étude s’appuie sur des données recueillies auprès d’utilisateurs de produits Kaspersky à travers le monde ayant accepté de fournir des informations au réseau Kaspersky Security Network. Parmi les 14,1 millions d’attaques détectées qui exploitent des failles Java, la plupart d’entre elles l’ont été au cours des six derniers mois de la période étudiée, soit plus de 8,54 millions d’attaques entre mars et août 2013, un chiffre en hausse de 52,7% par rapport au semestre précédent.

Pour les particuliers, l’installation des dernières mises à jour des logiciels constitue rarement une priorité, ce qui fait le jeu des cybercriminels. Selon l’étude, la majorité des utilisateurs continuent de travailler avec une version vulnérable de Java pendant six semaines après la diffusion d’une mise à jour. Environ 50% de l’ensemble des attaques ont exploité au maximum six familles de vulnérabilités Java.

Environ 80% des utilisateurs attaqués se trouvent dans 10 pays, au premier rang desquels arrivent les Etats-Unis, la Russie et l’Allemagne. En l’espace de 12 mois, les produits de Kaspersky Lab ont protégé plus de 3,75 millions d’utilisateurs dans le monde contre des attaques Java. Le Canada, les Etats-Unis, l’Allemagne et le Brésil ont connu les plus fortes progressions du nombre d’attaques. En un an, chaque utilisateur a été confronté en moyenne à 3,72 attaques. Cette moyenne est passée de 3,29, entre septembre 2012 et février 2013, à 4,15 entre mars et août 2013, soit une augmentation de 26,1%.

Le nombre élevé d’attaques exploitant des failles Java n’est guère surprenant : au cours des 12 mois sur lesquels a porté l’étude de Kaspersky Lab, 161 vulnérabilités de ce type ont été identifiées. En comparaison, de septembre 2011 à août 2012, ce sont 51 d’entre elles qui avaient été rendues publiques. Six des nouvelles failles repérées ont été qualifiées de critiques, c’est-à-dire très dangereuses. Or ces six vulnérabilités ont été les plus activement utilisées dans les attaques lancées par des cybercriminels.

« Java est victime de son succès », commente à DataSecurityBreach.fr Vyacheslav Zakorzhevsky, chef du groupe d’étude des vulnérabilités chez Kaspersky Lab. « Les cybercriminels savent qu’ils ont tout intérêt à concentrer leurs efforts sur la recherche d’une faille dans Java afin de pouvoir s’attaquer à des millions d’ordinateurs simultanément, plutôt que d’exploiter des vulnérabilités dans des logiciels moins répandus, ne leur permettant d’infecter qu’un nombre restreint de machines. »

Nous vous indiquions, il y a peu, comment de fausses alertes java étaient diffusées, sur Internet. Une méthode radicale pour piéger les internautes.

Étiquetté :

Nos partenaires




Actualités du mois

mars 2026
L M M J V S D
 1
2345678
9101112131415
16171819202122
23242526272829
3031  

Articles en UNE

Actus zataz



Réseaux sociaux


Liste des sujets


<!-- Cyber'Émission ZATAZ — badge volant (déplaçable) + réduire/fermer -->
<div class="zataz-yt-float" id="zatazYtFloat" role="region" aria-label="Cyber'Émission ZATAZ">
  <div class="zataz-yt-float__bar" id="zatazYtBar">
    <span class="zataz-yt-float__title">Cyber'Émission ZATAZ</span>

    <div class="zataz-yt-float__actions">
      <button type="button" class="zataz-yt-float__btn" id="zatazYtMin" aria-label="Réduire">—</button>
      <button type="button" class="zataz-yt-float__btn zataz-yt-float__btn--close" id="zatazYtClose" aria-label="Fermer">×</button>
    </div>
  </div>

  <a class="zataz-yt-badge" href="https://www.youtube.com/@ZATAZCOM" target="_blank" rel="noopener noreferrer"
     aria-label="Regarder Cyber'Émission ZATAZ sur YouTube (nouvel onglet)">
    <span class="zataz-yt-badge__thumb" aria-hidden="true">
      <span class="zataz-yt-badge__play" aria-hidden="true"></span>
    </span>
  </a>
</div>

<style>
  .zataz-yt-float{
    position:fixed;
    right:18px;
    bottom:18px;
    z-index:99999;
    width:320px;
    max-width:calc(100vw - 36px);
    border-radius:14px;
    overflow:hidden;
    background:linear-gradient(135deg,#111827,#0b1220 55%,#111827);
    border:1px solid rgba(255,255,255,.12);
    box-shadow:0 14px 40px rgba(0,0,0,.35);
    transform:translateZ(0);
    user-select:none;
    touch-action:none; /* drag mobile */
  }

  /* Barre de drag + boutons */
  .zataz-yt-float__bar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:10px 10px 10px 12px;
    font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
    color:#fff;
    background:rgba(0,0,0,.18);
    border-bottom:1px solid rgba(255,255,255,.10);
    cursor:grab;
  }
  .zataz-yt-float__bar:active{ cursor:grabbing; }
  .zataz-yt-float__title{
    font-weight:800;
    letter-spacing:.2px;
    font-size:15px;
    line-height:1;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .zataz-yt-float__actions{ display:flex; gap:8px; }
  .zataz-yt-float__btn{
    appearance:none;
    border:1px solid rgba(255,255,255,.18);
    background:rgba(0,0,0,.28);
    color:#fff;
    width:32px;
    height:28px;
    border-radius:10px;
    font-weight:900;
    line-height:1;
    cursor:pointer;
    display:grid;
    place-items:center;
  }
  .zataz-yt-float__btn:hover{ background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.28); }
  .zataz-yt-float__btn--close:hover{ background:rgba(239,68,68,.22); border-color:rgba(239,68,68,.45); }

  /* Contenu (votre vignette) */
  .zataz-yt-badge{
    display:block;
    text-decoration:none;
    color:#fff;
  }
  .zataz-yt-badge__thumb{
    display:block;
    height:180px;
    background:#0f172a url("https://i.ytimg.com/vi/HUo8dnD6Swk/hqdefault.jpg") center/cover no-repeat;
    position:relative;
  }
  .zataz-yt-badge__play{
    position:absolute;
    left:50%;
    top:50%;
    width:54px;
    height:54px;
    margin:-27px 0 0 -27px;
    border-radius:999px;
    background:rgba(0,0,0,.55);
    border:1px solid rgba(255,255,255,.25);
    box-shadow:0 10px 22px rgba(0,0,0,.35);
  }
  .zataz-yt-badge__play:before{
    content:"";
    position:absolute;
    left:22px;
    top:16px;
    width:0;height:0;
    border-top:11px solid transparent;
    border-bottom:11px solid transparent;
    border-left:16px solid #fff;
  }

  .zataz-yt-float:hover{
    box-shadow:0 18px 55px rgba(0,0,0,.45);
    border-color:rgba(255,255,255,.18);
  }
  .zataz-yt-badge:active{ transform:scale(.99); }

  /* Etat réduit */
  .zataz-yt-float.is-min .zataz-yt-badge{ display:none; }
  .zataz-yt-float.is-min{ width:260px; }

  /* Mobile : plus compact */
  @media (max-width:480px){
    .zataz-yt-float{ width:280px; right:12px; bottom:12px; }
    .zataz-yt-badge__thumb{ height:158px; }
    .zataz-yt-float.is-min{ width:220px; }
  }
</style>

<script>
(() => {
  const box = document.getElementById('zatazYtFloat');
  const bar = document.getElementById('zatazYtBar');
  const btnMin = document.getElementById('zatazYtMin');
  const btnClose = document.getElementById('zatazYtClose');

  if (!box || !bar || !btnMin || !btnClose) return;

  // Réduire / restaurer
  btnMin.addEventListener('click', (e) => {
    e.stopPropagation();
    box.classList.toggle('is-min');
    btnMin.textContent = box.classList.contains('is-min') ? '▢' : '—';
    btnMin.setAttribute('aria-label', box.classList.contains('is-min') ? 'Restaurer' : 'Réduire');
  });

  // Fermer
  btnClose.addEventListener('click', (e) => {
    e.stopPropagation();
    box.remove();
  });

  // Drag (souris + tactile) via Pointer Events
  let dragging = false;
  let startX = 0, startY = 0;
  let startLeft = 0, startTop = 0;

  // Position initiale: on convertit right/bottom en left/top pour le drag
  const init = () => {
    const r = box.getBoundingClientRect();
    box.style.left = r.left + 'px';
    box.style.top  = r.top  + 'px';
    box.style.right = 'auto';
    box.style.bottom = 'auto';
  };
  init();

  const clamp = (v, min, max) => Math.min(Math.max(v, min), max);

  bar.addEventListener('pointerdown', (e) => {
    // pas de drag quand on clique sur les boutons
    if (e.target === btnMin || e.target === btnClose) return;

    dragging = true;
    bar.setPointerCapture(e.pointerId);

    const r = box.getBoundingClientRect();
    startX = e.clientX;
    startY = e.clientY;
    startLeft = r.left;
    startTop = r.top;

    e.preventDefault();
  });

  bar.addEventListener('pointermove', (e) => {
    if (!dragging) return;

    const dx = e.clientX - startX;
    const dy = e.clientY - startY;

    const r = box.getBoundingClientRect();
    const w = r.width;
    const h = r.height;

    const maxLeft = window.innerWidth - w - 8;
    const maxTop  = window.innerHeight - h - 8;

    box.style.left = clamp(startLeft + dx, 8, maxLeft) + 'px';
    box.style.top  = clamp(startTop + dy, 8, maxTop) + 'px';
  });

  const endDrag = () => { dragging = false; };
  bar.addEventListener('pointerup', endDrag);
  bar.addEventListener('pointercancel', endDrag);

  // Re-clamp au resize
  window.addEventListener('resize', () => {
    const r = box.getBoundingClientRect();
    const maxLeft = window.innerWidth - r.width - 8;
    const maxTop  = window.innerHeight - r.height - 8;
    box.style.left = clamp(r.left, 8, maxLeft) + 'px';
    box.style.top  = clamp(r.top, 8, maxTop) + 'px';
  });
})();
</script>