Accueil / Cybersécurité / Augmentation des attaques de comptes Azure par pulvérisation de mots de passe depuis août 2023

Augmentation des attaques de comptes Azure par pulvérisation de mots de passe depuis août 2023

Depuis août 2023, Microsoft a observé une intensification des attaques de pirates ciblant les comptes Azure en utilisant la technique de pulvérisation de mots de passe (brute force).

Ces attaques furtives, souvent couronnées de succès, sont associées au botnet CovertNetwork-1658, connu également sous les noms de xlogin et Quad7 (7777). Ce botnet est principalement composé de routeurs TP-Link SOHO infectés par des portes dérobées et fonctionnant comme relais.

La durée moyenne d’activité des nœuds de ce botnet est d’environ 90 jours. Les attaques par ‘brute force’, pulvérisation de mots de passe est un terme amusant pour traduire brute force, impliquent simultanément environ 8 000 adresses IP, et dans 80 % des cas, chaque adresse effectue une tentative de piratage par jour.

Pour installer une porte dérobée, les attaquants exploitent des vulnérabilités dont la nature exacte reste incertaine. Une fois l’exploit réalisé, l’appareil est configuré pour fonctionner comme proxy.

Les informations d’identification compromises par CovertNetwork-1658 sont ensuite utilisées pour lancer des attaques ciblées. Le piratage des comptes cloud Azure permet aux cybercriminels de progresser plus en profondeur dans le réseau, d’établir des points d’ancrage à l’aide de RAT (Remote Access Trojans) et de commencer à voler des données.

Cette activité est particulièrement prisée par un groupe de cybercriminels opérant en Amérique du Nord et en Europe, surveillé par Microsoft sous le nom de Storm-0940.

L’activité de CovertNetwork-1658 a toutefois diminué ces derniers mois, probablement en raison de l’attention accrue de la communauté de la sécurité de l’information, notamment à travers les publications Sekoia, par exemple, consacrées à Quad7.

Les opérateurs du botnet auraient décidé de mettre à jour leur infrastructure en modifiant leurs empreintes numériques pour échapper à la détection et revenir à une activité plus discrète.

Pendant ce temps, avec l’IA, chasse au 0Day

Les experts de GreyNoise ont identifié deux vulnérabilités zero-day dans les caméras réseau PTZ (panoramique/inclinable/zoom).

Ils ont été aidés en cela par un outil d’IA spécialement créé pour les besoins de la cyberintelligence. L’assistant intelligent intégré au système Honeypot de chasse aux menaces répondait clairement au trafic suspect. L’analyse a révélé qu’il s’agissait d’une tentative d’exploitation automatisée.

La vulnérabilité critique CVE-2024-8956 est causée par une mise en œuvre incorrecte des mécanismes d’authentification et permet l’accès aux noms d’utilisateur, aux mots de passe hachés (MD5), aux données de configuration et à d’autres informations confidentielles. La vulnérabilité CVE-2024-8957 ouvre la possibilité d’injection de commandes. Lorsqu’il est utilisé conjointement avec CVE-2024-8956, il vous permet de prendre le contrôle de la caméra à distance et sans authentification, de visualiser et d’arrêter le flux vidéo en temps réel, d’apporter des modifications et également de connecter l’appareil à un botnet DDoS.

Les problèmes concernent les caméras PTZ haute résolution avec des versions de micrologiciel inférieures à 6.3.40, en particulier pour les appareils de PTZOptics, Multicam Systems SAS et SMTAV Corporation basés sur des processeurs SoC Hisilicon Hi3516A. Ils sont souvent utilisés dans des installations critiques : production robotique, établissements médicaux, agences gouvernementales (par exemple, dans les salles d’audience), ainsi que pour des présentations en ligne et des vidéoconférences. (Greynoise)

É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>