The Privacy Post ha ricondiviso questo.

In den sozialen Medien präsentieren Content Creator alte Nazi-Architektur. Die beliebten Videos dienen mehr der Propaganda als der Aufklärung, schreibt unser Kolumnist @vincefoerst.

netzpolitik.org/2026/trugbild-…

The Privacy Post ha ricondiviso questo.

⚠️ IMPORTANTE - Un'intelligenza artificiale ha scovato uno zero-day nel kernel Linux che ottiene i permessi di root su ogni distribuzione dal 2017. L'exploit occupa appena 732 byte di codice Python. Aggiornate il kernel dei vostri sistemi il prima possibile.

La vulnerabilità è la CVE-2026-31431, soprannominata “Copy Fail", resa nota oggi da Theori. È rimasta silente nel kernel Linux per nove anni.

La maggior parte dei bug di "privilege escalation" su Linux sono complessi: richiedono finestre temporali precise (le cosiddette "race condition"), leak di indirizzi di memoria specifici o una calibrazione meticolosa per ogni singola distribuzione. Copy Fail non ha bisogno di nulla di tutto ciò. Si tratta di un errore logico lineare che funziona al primo colpo, ogni volta, su ogni macchina Linux comune.

Come funziona l'attacco
All'attaccante basta un normale account utente sulla macchina. Da lì, lo script chiede al kernel di eseguire alcune operazioni di crittografia, sfrutta un errore nel modo in cui queste operazioni sono collegate e finisce per scrivere 4 byte in un'area di memoria chiamata "page cache" (la copia ad alta velocità dei file che Linux mantiene nella RAM). Quei 4 byte possono essere mirati a qualsiasi programma di cui il sistema si fidi, come ad esempio /usr/bin/su, la scorciatoia per diventare utente root.

Risultato: la prossima volta che qualcuno avvia quel programma, l'attaccante ottiene l'accesso come root.

L’aspetto più preoccupante
La corruzione della memoria non tocca mai il file su disco. Esiste solo nella copia in RAM gestita da Linux. Se si analizzasse l'immagine del disco rigido in seguito, il file risulterebbe identico all'originale (il codice hash coinciderebbe perfettamente). Riavviando la macchina, o semplicemente mettendola sotto sforzo (qualsiasi carico di sistema che richieda RAM), la copia in cache viene ricaricata pulita dal disco.

Anche i container sono inutili: la page cache è condivisa tra l'intero host, quindi un processo all'interno di un container può usare questo bug per compromettere il server sottostante e accedere agli altri utenti (tenant).

L’origine del bug
Il "peccato originale" risale a un'ottimizzazione del 2017 in un modulo crittografico del kernel chiamato algif_aead. Era stata pensata per rendere la crittografia leggermente più veloce, ma il cambiamento ha infranto un presupposto di sicurezza critico e nessuno se n'è accorto per nove anni. Quel bug è stato poi ereditato da ogni aggiornamento del kernel dal 2017 a oggi.

Sistemi a rischio:
• Server (macchine di sviluppo, jump host, server di build): qualsiasi utente diventa root.
• Cluster Kubernetes e container: un pod compromesso evade verso l'host.
• CI runner (GitHub Actions, GitLab, Jenkins): una pull request malevola diventa root sul runner.
• Piattaforme Cloud che eseguono codice utente (notebook, sandbox, funzioni serverless): un utente diventa root dell'host.

Cronologia degli eventi
• 23 marzo 2026: segnalazione al team di sicurezza del kernel Linux.
• 1 aprile: patch inserita nel ramo principale (commit a664bf3d603d).
• 22 aprile: assegnazione del codice CVE.
• 29 aprile: divulgazione pubblica.

Mitigazione
Aggiornate dei vostri sistemiil kernel a una versione che includa il commit a664bf3d603d. Se non potete applicare la patch immediatamente, disabilitate il modulo vulnerabile:

Per gli ambienti che eseguono codice non fidato (container, sandbox, CI runner), è consigliabile bloccare interamente l'accesso all'interfaccia crittografica AF_ALG del kernel, anche dopo aver applicato la patch. Quasi nessun processo legittimo ne ha bisogno, e bloccarla chiude definitivamente la porta a questa intera classe di bug.

Maggiori info: copy.fail/

in reply to Danilo ®

Penso che l'AI possa far solo bene all'open source.

E' il momento di continuare a sviluppare, ottimizzare e costruire insieme protocolli e software open source sfruttando milioni di agenti AI.


⚠️ IMPORTANTE - Un'intelligenza artificiale ha scovato uno zero-day nel kernel Linux che ottiene i permessi di root su ogni distribuzione dal 2017. L'exploit occupa appena 732 byte di codice Python. Aggiornate il kernel dei vostri sistemi il prima possibile.

La vulnerabilità è la CVE-2026-31431, soprannominata “Copy Fail", resa nota oggi da Theori. È rimasta silente nel kernel Linux per nove anni.

La maggior parte dei bug di "privilege escalation" su Linux sono complessi: richiedono finestre temporali precise (le cosiddette "race condition"), leak di indirizzi di memoria specifici o una calibrazione meticolosa per ogni singola distribuzione. Copy Fail non ha bisogno di nulla di tutto ciò. Si tratta di un errore logico lineare che funziona al primo colpo, ogni volta, su ogni macchina Linux comune.

Come funziona l'attacco
All'attaccante basta un normale account utente sulla macchina. Da lì, lo script chiede al kernel di eseguire alcune operazioni di crittografia, sfrutta un errore nel modo in cui queste operazioni sono collegate e finisce per scrivere 4 byte in un'area di memoria chiamata "page cache" (la copia ad alta velocità dei file che Linux mantiene nella RAM). Quei 4 byte possono essere mirati a qualsiasi programma di cui il sistema si fidi, come ad esempio /usr/bin/su, la scorciatoia per diventare utente root.

Risultato: la prossima volta che qualcuno avvia quel programma, l'attaccante ottiene l'accesso come root.

L’aspetto più preoccupante
La corruzione della memoria non tocca mai il file su disco. Esiste solo nella copia in RAM gestita da Linux. Se si analizzasse l'immagine del disco rigido in seguito, il file risulterebbe identico all'originale (il codice hash coinciderebbe perfettamente). Riavviando la macchina, o semplicemente mettendola sotto sforzo (qualsiasi carico di sistema che richieda RAM), la copia in cache viene ricaricata pulita dal disco.

Anche i container sono inutili: la page cache è condivisa tra l'intero host, quindi un processo all'interno di un container può usare questo bug per compromettere il server sottostante e accedere agli altri utenti (tenant).

L’origine del bug
Il "peccato originale" risale a un'ottimizzazione del 2017 in un modulo crittografico del kernel chiamato algif_aead. Era stata pensata per rendere la crittografia leggermente più veloce, ma il cambiamento ha infranto un presupposto di sicurezza critico e nessuno se n'è accorto per nove anni. Quel bug è stato poi ereditato da ogni aggiornamento del kernel dal 2017 a oggi.

Sistemi a rischio:
• Server (macchine di sviluppo, jump host, server di build): qualsiasi utente diventa root.
• Cluster Kubernetes e container: un pod compromesso evade verso l'host.
• CI runner (GitHub Actions, GitLab, Jenkins): una pull request malevola diventa root sul runner.
• Piattaforme Cloud che eseguono codice utente (notebook, sandbox, funzioni serverless): un utente diventa root dell'host.

Cronologia degli eventi
• 23 marzo 2026: segnalazione al team di sicurezza del kernel Linux.
• 1 aprile: patch inserita nel ramo principale (commit a664bf3d603d).
• 22 aprile: assegnazione del codice CVE.
• 29 aprile: divulgazione pubblica.

Mitigazione
Aggiornate dei vostri sistemiil kernel a una versione che includa il commit a664bf3d603d. Se non potete applicare la patch immediatamente, disabilitate il modulo vulnerabile:

Per gli ambienti che eseguono codice non fidato (container, sandbox, CI runner), è consigliabile bloccare interamente l'accesso all'interfaccia crittografica AF_ALG del kernel, anche dopo aver applicato la patch. Quasi nessun processo legittimo ne ha bisogno, e bloccarla chiude definitivamente la porta a questa intera classe di bug.

Maggiori info: copy.fail/


The Privacy Post ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

Deserializzazione JSON sicura in .NET 10: guida completa a JsonSerializerOptions.Strict
#tech
spcnet.it/deserializzazione-js…
@informatica


Deserializzazione JSON sicura in .NET 10: guida completa a JsonSerializerOptions.Strict


Considera questo payload JSON in arrivo alla tua API:

{"Amount": 100, "Amount": -999}

Due proprietà con lo stesso nome. La sezione 4 di RFC 8259 dice che i nomi degli oggetti dovrebbero essere univoci, ma non lo impone. System.Text.Json, di default, adotta l’approccio permissivo: vince l’ultima scrittura, nessun avviso, nessun errore. Il valore dell’attaccante passa silenziosamente.

Questo non è solo un problema di proprietà duplicate. La deserializzazione di default ignora anche campi extra che un attaccante potrebbe iniettare, lascia scivolare i valori null nelle proprietà non-nullable e salta dati richiesti mancanti. Ogni di queste “comodità” è una potenziale vulnerabilità al confine della tua API.

JsonSerializerOptions.Strict: cinque protezioni in un solo preset


.NET 10 introduce JsonSerializerOptions.Strict, un nuovo preset di sola lettura che si affianca a Default e Web. Mentre Default dà priorità alla retrocompatibilità e Web ottimizza per le API HTTP tipiche, Strict segue le best practice di sicurezza attivando cinque impostazioni protettive simultaneamente.

var strict = JsonSerializerOptions.Strict;
// AllowDuplicateProperties:             False
// UnmappedMemberHandling:               Disallow
// PropertyNameCaseInsensitive:           False
// RespectNullableAnnotations:            True
// RespectRequiredConstructorParameters:  True

Confronto tra i tre preset

ImpostazioneDefaultWebStrict
AllowDuplicatePropertiestruetruefalse
UnmappedMemberHandlingSkipSkipDisallow
PropertyNameCaseInsensitivefalsetruefalse
RespectNullableAnnotationsfalsefalsetrue
RespectRequiredConstructorParametersfalsefalsetrue

I dati serializzati con Default possono essere deserializzati con Strict. La compatibilità va in una sola direzione: Strict è più severo su ciò che accetta, non su ciò che produce.

1. Proprietà duplicate vietate


I protocolli che stratificano il parsing JSON (OAuth 2.0, OpenID Connect, firme webhook) possono essere sfruttati se parser diversi gestiscono input duplicati in modo diverso. Con Strict, ogni tentativo di deserializzare JSON con proprietà duplicate genera immediatamente una JsonException:

string duplicateJson = @'{"Amount": 100, "Amount": -999}';

try
{
    JsonSerializer.Deserialize<Payment>(duplicateJson, JsonSerializerOptions.Strict);
}
catch (JsonException ex)
{
    // JsonException: Duplicate property 'Amount' encountered during deserialization
    Console.WriteLine(ex.Message);
}

public record Payment(int Amount);

Questa protezione si estende oltre i POCO (plain-old C# objects): funziona anche con JsonDocument, JsonNode e Dictionary<string, T>.

2. Rifiuto dei membri non mappati


La deserializzazione di default scarta silenziosamente le proprietà JSON che non corrispondono al tuo tipo .NET. È comodo durante lo sviluppo, ma è pericoloso a un confine di fiducia perché non sai cosa sta inviando il client.

string extraFieldJson = @'{"Name": "Alice", "Role": "user", "IsRoot": true}';

// Default: ignora silenziosamente "IsRoot"
var user = JsonSerializer.Deserialize<User>(extraFieldJson);
// Name=Alice, Role=user - "IsRoot" scompare senza tracce

// Strict: rifiuta la proprieta' non mappata
JsonSerializer.Deserialize<User>(extraFieldJson, JsonSerializerOptions.Strict);
// throws: The JSON property 'IsRoot' could not be mapped to any .NET member

public record User(string Name, string Role);

3. Corrispondenza case-sensitive dei nomi di proprietà


In modalità Strict, la case sensitivity diventa un contratto preciso: i nomi delle proprietà JSON devono corrispondere esattamente ai nomi delle proprietà C#. Se i tuoi client inviano camelCase ma i tuoi tipi usano PascalCase, aggiungi [JsonPropertyName("nomeCamelCase")] per rendere il contratto esplicito nella definizione del tipo.

4. Enforcement delle annotazioni nullable


I nullable reference types di C# aiutano a intercettare i problemi di null a compile time, ma System.Text.Json li ignora di default durante la deserializzazione. Con Strict, se hai dichiarato string Name (non string? Name), il serializzatore rifiuterà qualsiasi JSON con null per quella proprietà:

string nullNameJson = @'{"Name": null, "Email": "alice@example.com"}';

// Default: null va nella stringa non-nullable senza errori
var contact = JsonSerializer.Deserialize<Contact>(nullNameJson);
// contact.Name == null (silenzioso!)

// Strict: genera eccezione
JsonSerializer.Deserialize<Contact>(nullNameJson, JsonSerializerOptions.Strict);
// throws: The constructor parameter 'Name' doesn't allow null values

public record Contact(string Name, string Email);

5. Parametri obbligatori del costruttore


I record type e le classi con costruttori parametrizzati possono avere parametri obbligatori silenziosamente riempiti con valori di default quando il JSON manca dei dati. Strict lo impedisce:

string missingParamJson = @'{"FirstName": "Alice"}';

// Default: LastName mancante diventa silenziosamente null
var person = JsonSerializer.Deserialize<Person>(missingParamJson);
// person.LastName == null

// Strict: richiede tutti i parametri
JsonSerializer.Deserialize<Person>(missingParamJson, JsonSerializerOptions.Strict);
// throws: JSON deserialization was missing required properties: 'LastName'

public record Person(string FirstName, string LastName);

Integrazione in ASP.NET Core Minimal APIs


Nei demo sopra usiamo JsonSerializer direttamente. In un’applicazione web, configuri le opzioni JSON una volta e ogni endpoint le eredita. Nota: JsonSerializerOptions.Strict è un singleton frozen, quindi non puoi passarlo direttamente a ConfigureHttpJsonOptions che richiede un’istanza mutabile. Imposta le singole proprietà:

builder.Services.ConfigureHttpJsonOptions(options =>
{
    options.SerializerOptions.AllowDuplicateProperties = false;
    options.SerializerOptions.UnmappedMemberHandling =
        System.Text.Json.Serialization.JsonUnmappedMemberHandling.Disallow;
    options.SerializerOptions.PropertyNameCaseInsensitive = false;
    options.SerializerOptions.RespectNullableAnnotations = true;
    options.SerializerOptions.RespectRequiredConstructorParameters = true;
});

app.MapPost("/payments", (Payment payment) =>
{
    // Se il body ha proprieta' duplicate, campi non mappati o dati mancanti,
    // il framework risponde con 400 Bad Request prima che questo codice venga eseguito.
    return Results.Ok(payment);
});

Il framework intercetta JsonException durante il model binding e restituisce un 400 Bad Request con problem details. Il tuo endpoint vede solo oggetti validi e completamente inizializzati.

Configurazione per-endpoint


Se hai bisogno di validazione strict su alcuni endpoint ma parsing più flessibile su altri, puoi deserializzare manualmente dal body della richiesta con le opzioni desiderate:

app.MapPost("/api/strict", async (HttpContext context) =>
{
    var payment = await context.Request.ReadFromJsonAsync<Payment>(
        JsonSerializerOptions.Strict);
    return Results.Ok(payment);
});

Supporto per i Source Generator


Per scenari AOT o per i benefici prestazionali dei source generator, configura manualmente le impostazioni equivalenti su JsonSourceGenerationOptionsAttribute. Non esiste una scorciatoia Strict per l’attributo: ogni proprietà va impostata individualmente.

[JsonSourceGenerationOptions(
    AllowDuplicateProperties = false,
    UnmappedMemberHandling = JsonUnmappedMemberHandling.Disallow,
    PropertyNameCaseInsensitive = false,
    RespectNullableAnnotations = true,
    RespectRequiredConstructorParameters = true
)]
[JsonSerializable(typeof(Payment))]
internal partial class StrictJsonContext : JsonSerializerContext;

Il codice generato include tutta la logica di validazione a compile time, senza overhead di reflection.

Quando usare Strict (e quando no)


Usalo ai confini di fiducia: endpoint token, ricevitori di webhook, controller API che accettano JSON da client non controllati completamente. Il costo è una JsonException quando i payload non corrispondono al contratto. Questo è esattamente lo scopo.

Evitalo per l’ingestione flessibile: se consumi JSON da API di terze parti con schemi inconsistenti, la modalità strict rifiuterà payload che potresti voler gestire con più grazia. In questi casi usa Default o Web e valida dopo la deserializzazione.

Migra in modo incrementale: non è necessario passare tutto a Strict subito. Inizia dagli endpoint ad alto rischio, intercetta JsonException, registra i problemi, correggi i client che inviano payload non conformi, poi espandi.

Sappi i limiti: Strict valida le violazioni del contratto strutturale ma non protegge da JSON profondamente annidato (usa MaxDepth), payload eccessivi (imposta limiti HTTP) o type confusion polimorfico. È un layer di difesa, non l’unico.

Conclusione


Ogni endpoint API che accetta JSON è un confine di fiducia. La deserializzazione permissiva rende quel confine poroso. JsonSerializerOptions.Strict non aggiunge nuova logica: attiva protezioni già presenti in System.Text.Json ma disattivate di default per retrocompatibilità. Una riga di configurazione le attiva tutte.

Questo è particolarmente rilevante ai confini di protocollo come OAuth 2.0 e OpenID Connect, dove una proprietà duplicata o un campo inatteso non è solo un bug — è un potenziale vettore di exploit.

Fonte: Harden Your .NET JSON Deserialization with System.Text.Json and JsonSerializerOptions.Strict — Khalid Abuhakmeh, Duende Software (30 aprile 2026)


The Privacy Post ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

The media in this post is not displayed to visitors. To view it, please go to the original post.

SHADOW-EARTH-053: la campagna APT cinese che spia governi asiatici, la NATO e i diplomatici cubani
#CyberSecurity
insicurezzadigitale.com/shadow…


SHADOW-EARTH-053: la campagna APT cinese che spia governi asiatici, la NATO e i diplomatici cubani


Una campagna di cyberspionaggio di alto livello, attribuita ad attori allineati agli interessi strategici della Cina, ha colpito nell’arco degli ultimi mesi governi, contractor della difesa, aziende tecnologiche e media in almeno otto paesi asiatici e in Polonia, unico Stato membro della NATO nel mirino. Nell’ambito dello stesso quadro operativo, un’operazione parallela ha violato la casella email di 68 diplomatici cubani a Washington durante uno dei momenti di tensione geopolitica più acuti del 2026. Il quadro che emerge è quello di una macchina d’intelligence cinese capace di operare su più fronti simultaneamente, adattando toolchain e vettori di attacco a obiettivi molto diversi tra loro.

SHADOW-EARTH-053: profilo del gruppo e attribuzioni


Il 30 aprile 2026, Trend Micro ha pubblicato un’analisi tecnica dettagliata di un nuovo intrusion set temporaneo denominato SHADOW-EARTH-053. Il gruppo è attivo almeno dal dicembre 2024 e viene valutato con elevata confidenza come allineato agli interessi della Repubblica Popolare Cinese. I target identificati spaziano dall’Asia meridionale (Pakistan, India, Sri Lanka, Myanmar) a quella orientale (Taiwan) e sud-orientale (Thailandia, Malaysia), fino a un Paese europeo membro della NATO: la Polonia.

La campagna si concentra principalmente su organizzazioni governative e del settore difesa, ma ha colpito anche aziende del settore tecnologico, trasporti e media. L’ampiezza geografica e la diversità dei target riflettono le priorità di intelligence della Cina nella regione Indo-Pacifica, con la Polonia che rappresenta probabilmente un obiettivo correlato al monitoraggio dell’assistenza militare occidentale all’Ucraina.

Vettori di accesso iniziale: da Exchange a React2Shell


SHADOW-EARTH-053 dimostra notevole flessibilità nei vettori di accesso iniziale. Il gruppo sfrutta vulnerabilità note ma non patchate in Microsoft Exchange Server — in particolare la catena ProxyLogon (CVE-2021-26855, CVE-2021-26857, CVE-2021-26858, CVE-2021-27065) — e nei server Internet Information Services (IIS). La presenza di server Exchange senza patch a distanza di anni dalla disclosure rimane un problema sistemico nelle reti governative di molti paesi target.

Più recentemente, il gruppo ha aggiunto al proprio arsenale lo sfruttamento di CVE-2025-55182, alias React2Shell, una vulnerabilità critica con CVSS score di 10.0 che affligge React Server Components, Next.js e framework correlati. La falla consente l’esecuzione di codice arbitrario remoto pre-autenticazione tramite una singola richiesta HTTP malevola. In alcuni casi, ShadowPad è stato recapitato anche tramite AnyDesk, mostrando adattabilità nella catena di compromissione.

La toolchain: ShadowPad, Godzilla e Noodle RAT


Dopo l’accesso iniziale, SHADOW-EARTH-053 installa web shell Godzilla per mantenere un accesso persistente al server compromesso. Godzilla consente l’esecuzione remota di comandi e offre funzionalità di gestione file, proxy SOCKS5 e memory injection, rendendola una piattaforma di staging ideale per le fasi successive.

Il payload principale è ShadowPad, un backdoor modulare di uso esclusivo dei gruppi APT cinesi sin dalla sua comparsa nel 2017. ShadowPad viene caricato tramite DLL sideloading di eseguibili legittimi firmati digitalmente (Microsoft, Samsung e altri vendor), con il payload cifrato spesso archiviato nel registro di sistema ed eliminato dopo il primo utilizzo. La persistenza è garantita da un task pianificato denominato “M1onltor”, configurato per eseguire il binario sideloaded ogni cinque minuti con i massimi privilegi disponibili.

Su infrastrutture Linux, i ricercatori hanno identificato con bassa confidenza campioni di Noodle RAT, una RAT cross-platform distribuita tramite la stessa infrastruttura e controllata via domini con temi office365. Ciò suggerisce un’espansione verso ambienti non-Windows, tipicamente meno monitorati nelle reti enterprise.

Movimento laterale e ricognizione interna


Post-compromissione, SHADOW-EARTH-053 esegue una ricognizione sistematica di Active Directory e Exchange direttamente dalla web shell: enumerazione degli admin di dominio, discovery dei domain controller tramite nltest, export AD via csvde e mapping di utenti e mailbox con Get-DomainUser di PowerView.

Per il movimento laterale il gruppo utilizza IOX, un tool di tunneling proxy, configurando LocalAccountTokenFilterPolicy = 1 per abilitare Pass-the-Hash sugli account amministratori locali. Il movimento laterale si avvale di WMIC per distribuire backdoor e tool su host Windows aggiuntivi, affiancato da un launcher RDP personalizzato (smss.exe) e da Sharp-SMBExec, un tool C# per operazioni SMB.

L’operazione sull’ambasciata cubana: spionaggio diplomatico in tempo reale


Parallelamente alla campagna SHADOW-EARTH-053, la società Gambit Security ha documentato un’operazione distinta ma stilisticamente riconducibile a gruppi di intelligence cinesi: la compromissione dei server di posta elettronica dell’ambasciata cubana a Washington. L’attacco è iniziato a gennaio 2026 e ha interessato le caselle email di 68 funzionari, tra cui l’ambasciatore e il suo vice. I vettori di intrusione sono stati — anche qui — vulnerabilità nei server Microsoft Exchange, rimaste non patchate per circa cinque anni.

La tempistica dell’operazione è significativa: gli hacker hanno letto corrispondenza diplomatica riservata proprio mentre gli Stati Uniti intensificavano le pressioni su Cuba sull’onda delle operazioni in Venezuela, con restrizioni alle forniture di petrolio che hanno causato blackout di massa sull’isola. Nella stessa finestra temporale, la stessa infrastruttura ha condotto attacchi contro il governo del Venezuela e il suo Ministero degli Affari Esteri. Separatamente, lo sfruttamento della vulnerabilità React (CVE-2025-55182) ha consentito al gruppo di ottenere accesso a circa 5.000 server in pochi giorni, inclusi sistemi governativi in Texas e aziende private.

Tecniche di evasione


SHADOW-EARTH-053 adotta diverse tecniche per ostacolare il rilevamento. Il packer RingQ viene usato per offuscare i payload. I tool come net.exe e PowerShell vengono rinominati con nomi casuali con estensione .log. I domini di command and control mimicano prodotti di sicurezza o servizi DNS legittimi. L’uso estensivo di living-off-the-land binaries (LOLBins) riduce ulteriormente la firma di rilevamento sugli endpoint.

Indicatori di compromissione (IoC)

# Tool e binari associati a SHADOW-EARTH-053
# Scheduled Task persistence
Task name: M1onltor
Trigger: ogni 5 minuti, SYSTEM privileges

# Strumenti post-compromissione
- IOX proxy tunneling tool
- Sharp-SMBExec (C# SMB lateral movement)
- RingQ packer (per offuscamento payload)
- PowerView (Get-DomainUser)
- csvde.exe (AD export)
- nltest.exe (domain controller discovery)

# Malware identificati
- ShadowPad backdoor (DLL sideloading via eseguibili firmati Microsoft/Samsung)
- Godzilla webshell
- Noodle RAT (variante Linux, bassa confidenza)

# CVE sfruttate
- CVE-2021-26855 / CVE-2021-26857 / CVE-2021-26858 / CVE-2021-27065 (ProxyLogon - Exchange)
- CVE-2025-55182 "React2Shell" (CVSS 10.0 - RCE pre-auth su React Server Components)

# Indicatori infrastrutturali
- Domini C2 che imitano prodotti di sicurezza o servizi DNS
- Domini con temi "office365" per Noodle RAT C2
- Eseguibili rinominati con estensione .log (net.exe, PowerShell)

Implicazioni e raccomandazioni per i difensori


La campagna SHADOW-EARTH-053 evidenzia alcune priorità difensive urgenti. Patch management su Exchange e IIS rimane critico: la persistenza di vulnerabilità come ProxyLogon a distanza di anni dalla divulgazione indica processi di patching inadeguati in molte organizzazioni pubbliche. Il monitoraggio di task pianificati con nomi insoliti (come “M1onltor”) e del DLL sideloading da processi firmati legittimi dovrebbe essere parte delle regole di detection SIEM standard. Il rilevamento di tool come IOX, csvde e nltest in contesti anomali può segnalare ricognizione post-compromissione. La protezione delle API React Server Components e l’applicazione del patch per CVE-2025-55182 è urgente per chiunque gestisca applicazioni Next.js in produzione.

Sul piano geopolitico, la combinazione SHADOW-EARTH-053 + operazione ambasciata cubana dimostra la capacità dei servizi di intelligence cinesi di condurre operazioni simultanee e multi-obiettivo, adattando gli strumenti in funzione del target — dal backdoor militare ShadowPad per i governi alla compromissione silente dei server di posta diplomatici. Per i team di sicurezza delle organizzazioni governative, difesa e infrastrutture critiche in Europa e Asia, questa campagna rappresenta un segnale d’allerta difficile da ignorare.


The Privacy Post ha ricondiviso questo.

So happy to be at this year's #LIT26 in #Augsburg!
An amazing event organized by the local @lug_augsburg.

Especially grateful to have been asked to present the @fsfe's "Public Money? Public Code!" initiative today.

#FreeSoftware #publiccode

reshared this

The Privacy Post ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

CORDIAL SPIDER and SNARKY SPIDER Deploy AiTM Pages to Breach SharePoint, HubSpot, and Google Workspace
#CyberSecurity
securebulletin.com/cordial-spi…
The Privacy Post ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

China-Aligned SHADOW-EARTH Deploys ShadowPad, IOX Proxy, and WMIC in Multi-Stage Espionage Campaign Across Asia
#CyberSecurity
securebulletin.com/china-align…
The Privacy Post ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

cPanelSniper PoC Exploit Released for CVSS 9.8 Flaw CVE-2026-41940 — 44,000 Servers Already Compromised
#CyberSecurity
securebulletin.com/cpanelsnipe…
The Privacy Post ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

DEEP#DOOR: New Python Backdoor Silently Harvests Browser Passwords, Cloud Tokens, SSH Keys, and Wi-Fi Credentials
#CyberSecurity
securebulletin.com/deepdoor-ne…
The Privacy Post ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

Happy to be at the #LinuxInfoDay in #augsburg (Bavaria)!

A wonderful event with amazing talks about #FreeSoftware. Come over and step by at our booth.

Today @annabonnie will talk about #pmpc and #digitalsovereignty.
In the afternoon she will give a workshop about how to do a podcast with #FreeSoftware

Questa voce è stata modificata (23 ore fa)

reshared this

The Privacy Post ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

⚖️ Looking for an exciting path into litigation, #IT #law and digital rights? We’ve got you covered! We are seeking bright new people to support our work for #privacy and #GDPR enforcement from November 2026 onwards. 📆

❗ You are interested and hold a law degree from an EEA university? 🇪🇺 Apply now! noyb.eu/en/traineeship

reshared this

The Privacy Post ha ricondiviso questo.

Ein Rückblick von @markusreuter auf eine Woche, in der fast niemand vom Überwachungspaket sprach:

netzpolitik.org/2026/kw-18-die…

The Privacy Post ha ricondiviso questo.

Laut dem nun vorliegenden Entwurf eines Rahmenabkommens über eine „Grenzpartnerschaft“ mit der Trump-Administration dürfen US-Behörden in EU-Staaten nicht nur Gesichtsbilder, sondern auch Namen, Gesundheitsdaten oder sexuelle Orientierung in Polizeidatenbanken abfragen.

netzpolitik.org/2026/erzwungen…

The Privacy Post ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

A2A v1: comunicazione cross-platform tra agenti AI nel Microsoft Agent Framework per .NET
#tech
spcnet.it/a2a-v1-comunicazione…
@informatica


A2A v1: comunicazione cross-platform tra agenti AI nel Microsoft Agent Framework per .NET


Con il rilascio dell’A2A Protocol v1.0 e il relativo supporto nel Microsoft Agent Framework per .NET, il mondo degli agenti AI multi-vendor fa un passo importante verso la maturità. Non si tratta solo di un aggiornamento di versione: A2A v1 è il primo standard stabile e production-ready per la comunicazione tra agenti intelligenti, indipendentemente dal framework o dal provider che li ospita.

Il problema: isole di agenti incompatibili


Chi sviluppa sistemi multi-agente in ambienti aziendali lo sa bene: ogni team usa il proprio framework, ogni divisione ha i propri provider AI, e ogni volta che due agenti devono comunicare si finisce a scrivere codice di integrazione su misura. Il costo di questo «collante» cresce più in fretta del valore che gli agenti stessi producono.

Il protocollo A2A nasce esattamente per eliminare questa frizione. L’analogia è quella di HTTP e REST per i servizi web: prima di avere standard condivisi, ogni integrazione richiedeva codice proprietario. Dopo, è diventato possibile comporre servizi indipendentemente dal linguaggio o dalla piattaforma sottostante. A2A vuole fare la stessa cosa per gli agenti AI.

Chi c’è dietro A2A v1


Il protocollo è governato da un comitato tecnico con rappresentanti di AWS, Cisco, Google, IBM Research, Microsoft, Salesforce, SAP e ServiceNow. Non è un progetto Microsoft-only, ma uno standard aperto con ampio supporto industriale. La versione 1.0 segnala che il protocollo è maturo: i contorni aspri delle bozze precedenti sono stati levigati, le aree ambigue chiarite, e la superficie API è stata progettata per la durabilità nel tempo.

Novità di A2A v1 rispetto alla v0.3


Per chi veniva dalla versione precedente (v0.3), ecco cosa cambia:

  • Stabilità e supporto a lungo termine: v1.0 è la prima versione con garanzie di compatibilità stabile. L’investimento nel codice scritto oggi sarà protetto.
  • Funzionalità enterprise: supporto multi-tenancy, Agent Card firmate crittograficamente per la verifica dell’identità degli agenti, e flussi di sicurezza migliorati per ambienti regolamentati e multi-parte.
  • Architettura web-aligned: A2A v1 si appoggia su protocolli e pattern già consolidati nell’infrastruttura web. È possibile scalare le interazioni tra agenti usando gli stessi load balancer, gateway e strumenti di observability già in uso per i servizi HTTP.


Come funziona nel Microsoft Agent Framework per .NET


La filosofia di design del framework è che l’interoperabilità non deve richiedere una ristrutturazione del codice. Un agente remoto A2A appare nel codice esattamente come qualsiasi altro AIAgent locale: stessa interfaccia RunAsync, stesso streaming, stessa gestione della sessione.

Connettere un agente remoto A2A via discovery automatica


Il protocollo A2A definisce un percorso standard per la discovery degli agenti: /.well-known/agent-card.json. Con A2ACardResolver è possibile scoprire e istanziare un agente remoto in una sola chiamata:

using A2A;
using Microsoft.Agents.AI;

// Punta il resolver all'host dell'agente remoto
A2ACardResolver resolver = new(new Uri("https://a2a-agent.example.com"));

// Risolve l'Agent Card e crea un AIAgent in un solo passaggio
AIAgent agent = await resolver.GetAIAgentAsync();

// Usalo come qualsiasi altro AIAgent
Console.WriteLine(await agent.RunAsync("Qual è il meteo a Milano?"));

Configurazione diretta (per ambienti di sviluppo)


In scenari di sviluppo o sistemi strettamente accoppiati dove l’endpoint è già noto, si può creare un A2AClient direttamente:

using A2A;
using Microsoft.Agents.AI;

A2AClient a2aClient = new(new Uri("https://a2a-agent.example.com"));
AIAgent agent = a2aClient.AsAIAgent(
    name: "my-agent",
    description: "Un assistente specializzato.");

Console.WriteLine(await agent.RunAsync("Di cosa ti occupi?"));

Selezione del protocollo di trasporto


A2A v1 supporta più binding di protocollo. Per default, il framework preferisce HTTP+JSON con JSON-RPC come fallback. È possibile specificarlo esplicitamente:

A2ACardResolver resolver = new(new Uri("https://a2a-agent.example.com"));
A2AClientOptions options = new()
{
    PreferredBindings = [ProtocolBindingNames.HttpJson]
};
AIAgent agent = await resolver.GetAIAgentAsync(options: options);

Streaming in tempo reale


A2A supporta lo streaming via Server-Sent Events. RunStreamingAsync permette di ricevere aggiornamenti in tempo reale mentre l’agente elabora la risposta — particolarmente utile per task lunghi o per mostrare progressi all’utente:

await foreach (var update in agent.RunStreamingAsync("Analizza questo documento..."))
{
    Console.Write(update.Text);
}

Esporre il proprio agente come endpoint A2A


Il meccanismo funziona anche in senso inverso: qualsiasi AIAgent già costruito — su Microsoft Foundry, Azure OpenAI, OpenAI, Anthropic, AWS Bedrock o qualsiasi altro provider supportato — può essere esposto come endpoint A2A con poche righe di hosting. Nessun boilerplate di protocollo da scrivere, nessun refactoring necessario quando si decide di rendere un agente interno disponibile ad altri team o a partner esterni.

Quando ha senso adottare A2A v1


A2A v1 diventa rilevante non appena si esce dai prototipi mono-agente. I casi d’uso tipici includono:

  • Un agente di procurement che deve consultare un servizio di compliance di un partner
  • Un agente di customer support che cede il controllo a un agente specializzato di un’altra divisione
  • Pipeline di elaborazione dove agenti diversi (analisi, sintesi, verifica) sono costruiti da team differenti
  • Ecosistemi ISV dove prodotti di terze parti devono integrarsi con gli agenti della piattaforma principale


Conclusioni


A2A v1 è una tappa importante nell’evoluzione degli agenti AI verso sistemi distribuiti e interoperabili. La scelta di costruirlo come standard aperto con sponsorship industriale ampio — e non come API proprietaria Microsoft — è un segnale di maturità dell’ecosistema. Per i team .NET che stanno costruendo o pianificando sistemi multi-agente, vale la pena investire nella migrazione dalla v0.3 o nell’adozione diretta di v1: la stabilità garantita e le funzionalità enterprise rendono il protocollo adatto alla produzione oggi.

Fonte: A2A v1 Is Here – Microsoft Agent Framework Blog (Sergey Menshykh, Microsoft)


The Privacy Post ha ricondiviso questo.

Liberiamo le scuole dalle Big Tech

Abbiamo appena festeggiato il 25 aprile con la liberazione dal nazifascismo. La Resistenza non è finita: oggi dobbiamo liberarci dagli strumenti e dai servizi forniti dalle Big Tech per diventare autonomi dalle multinazionali e acquisire una nostra sovranità digitale, soprattutto nelle scuole.

peacelink.it/cybercultura/a/51…

#freesoftware #ooxml #odf #word #microsoft #libreoffice #nobigtech

Pillole abortive via email. Trasecolo!


@Privacy Pride
Il post completo di Christian Bernieri è sul suo blog: garantepiracy.it/blog/womenonw…
Non pensavo che avrei mai visto una cosa del genere. Confesso di aver evocato divinità dimenticate e offeso quelle più blasonate. Anche se è festa, di questo devo proprio parlare, per forza, dunque eccomi qui, a pigiare tasti con foga crescente, mentre mi addentro

The Privacy Post ha ricondiviso questo.

c’t-Podcast Auslegungssache: Im Gespräch mit c't-Redakteur Holger Bleich und heise-Justiziar Joerg Heidrich erläutert @roofjoke Ingo Dachwitz, wie die Recherche zu den Databroker Files funktionierte heise.de/hintergrund/Auslegung…
Questa voce è stata modificata (1 giorno fa)
The Privacy Post ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

VECT 2.0 Ransomware Permanently Destroys Files Over 128 KB Due to Encryption Flaw
#CyberSecurity
securebulletin.com/vect-2-0-ra…
The Privacy Post ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

Qilin Ransomware Adopts Stealthy RDP History Enumeration to Map Victim Networks
#CyberSecurity
securebulletin.com/qilin-ranso…
The Privacy Post ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

Phoenix PhaaS Platform Weaponizes SMS to Impersonate Banks, Telecoms, and Delivery Firms Worldwide
#CyberSecurity
securebulletin.com/phoenix-pha…
The Privacy Post ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

PowerToys 0.99: Grab And Move, Power Display e miglioramenti a Command Palette
#tech
spcnet.it/powertoys-0-99-grab-…
@informatica


PowerToys 0.99: Grab And Move, Power Display e miglioramenti a Command Palette


Microsoft ha rilasciato PowerToys 0.99, un aggiornamento ricco di novità per sviluppatori e utenti avanzati di Windows. Il protagonista di questa release è l’introduzione di due nuove utility in anteprima: Grab And Move e Power Display, insieme a una serie di miglioramenti significativi a Command Palette e al Dock. Vediamo nel dettaglio cosa cambia.

Grab And Move: trascina le finestre da qualsiasi punto


Chi lavora su monitor grandi o con molte finestre aperte conosce bene il problema: per spostare una finestra bisogna mirare con precisione alla barra del titolo, spesso sottile pochi pixel. Grab And Move risolve questo limite permettendo di trascinare qualsiasi finestra tenendo premuto Alt + Click sinistro ovunque sulla finestra stessa.

Lo stesso vale per il ridimensionamento: Alt + Click destro avvia l’operazione di resize dal punto esatto in cui si trova il cursore, senza dover raggiungere i bordi della finestra. Per chi già usa Alt come modificatore di sistema, è possibile passare al tasto Win come alternativa.

Grab And Move è particolarmente utile in questi scenari:

  • Monitor ad alta risoluzione dove le barre del titolo sono sottilissime in scala DPI
  • Finestre che sono finite parzialmente fuori schermo e sono difficili da afferrare
  • Applicazioni che nascondono la barra del titolo o usano layout custom
  • Workflow con tante finestre sovrapposte dove la precisione è critica

L’utility si integra con il sistema di impostazioni di PowerToys, supporta le Group Policy (GPO) per ambienti aziendali e include una pagina OOBE per la prima configurazione.

Power Display: controllo monitor dal system tray


La seconda novità di rilievo è Power Display, una utility che porta il controllo hardware dei monitor direttamente nel system tray di Windows, eliminando la necessità di cercare i pulsanti fisici sul retro dello schermo.

Una volta abilitata, un’icona nella tray apre un flyout che mostra i monitor collegati al sistema. Per i display compatibili, Power Display permette di regolare:

  • Luminosità e contrasto
  • Volume audio del monitor
  • Profilo colore

Una delle funzionalità più interessanti è la gestione dei profili: è possibile salvare configurazioni complete (es. «modalità sviluppo» con alta luminosità e temperatura colore neutra, oppure «serata» con luminosità ridotta e toni caldi) e passare da uno all’altro con un clic singolo dal flyout.

Power Display si integra anche con Light Switch: nella configurazione di Light Switch è possibile associare un profilo monitor al cambio di tema chiaro/scuro, così quando Windows passa automaticamente al tema scuro la sera, anche il monitor si adatta.

Command Palette e Dock: Compact mode e cronologia calcolatrice


Command Palette riceve in questa release una serie di miglioramenti alla stabilità e alle performance, insieme a nuove funzionalità:

  • Compact Dock: quando il Dock è posizionato in alto o in basso, è ora disponibile una modalità compatta che nasconde il sottotitolo, rendendo il layout più essenziale e meno ingombrante.
  • Cronologia della calcolatrice: i calcoli vengono ora salvati in modo persistente, con la possibilità di riutilizzare, eliminare o cancellare le voci precedenti. È anche possibile configurare l’azione primaria e sostituire la query premendo Invio.
  • Pinning migliorato: quando si aggiunge un comando al Dock, un nuovo dialogo consente di scegliere la posizione e se mostrare o nascondere titolo e sottotitolo.
  • Supporto nuovi content type: le estensioni possono ora esporre contenuti di tipo plain text e image viewer direttamente nel pannello dei contenuti.
  • Affidabilità: corretti due crash legati alla digitazione, migliorato il caricamento delle estensioni in modo che un’estensione difettosa non mandi in crash l’intera lista, e aggiunto il supporto a Windows Terminal profile pinning.

Il Dock ora supporta anche la modalità always-on-top, tenendosi visibile sopra le altre finestre — utile per chi lo usa come launcher rapido.

Come aggiornare


PowerToys 0.99 è disponibile tramite Windows Package Manager (WinGet) oppure direttamente dalla pagina delle release su GitHub. Se avete già PowerToys installato, l’aggiornamento automatico dovrebbe proporvelo a breve nelle impostazioni dell’app.

winget upgrade Microsoft.PowerToys

Le due nuove utility (Grab And Move e Power Display) sono in anteprima e disabilitate di default: dovrete attivarle manualmente dalle impostazioni di PowerToys per cominciare a usarle.

Conclusioni


PowerToys 0.99 si conferma come uno strumento imprescindibile per chi usa Windows in modo intensivo. Grab And Move risolve un problema di usabilità quotidiana che molti utenti conoscono, mentre Power Display porta finalmente un controllo centralizzato dei monitor senza software proprietari. Gli aggiornamenti a Command Palette completano un rilascio solido che vale l’aggiornamento immediato.

Fonte: PowerToys 0.99 is here – Windows Command Line Blog (Niels Laute, Microsoft)


The Privacy Post ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

Critical Wireshark Update Patches 40+ Vulnerabilities Including Remote Code Execution Flaws
#CyberSecurity
securebulletin.com/critical-wi…
The Privacy Post ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

The media in this post is not displayed to visitors. To view it, please go to the original post.

18 estensioni browser AI come RAT e Spyware: Unit 42 smonta la facciata dei tool GenAI per la produttività
#CyberSecurity
insicurezzadigitale.com/18-est…


18 estensioni browser AI come RAT e Spyware: Unit 42 smonta la facciata dei tool GenAI per la produttività


Con la diffusione esplosiva degli strumenti di intelligenza artificiale generativa, il Chrome Web Store è diventato il nuovo vettore privilegiato per la distribuzione di malware camuffato da produttività. Il team Unit 42 di Palo Alto Networks ha pubblicato il 30 aprile 2026 una ricerca sistematica che documenta 18 estensioni browser ad alto rischio — commercializzate come assistenti AI per email, coding e ricerca — che nascondono Remote Access Trojan (RAT), attacchi meddler-in-the-middle (MitM), infostealer e spyware a tutti gli effetti. Google ha rimosso o emesso avvisi sulle estensioni segnalate, ma la ricerca espone un problema strutturale: il modello di permessi delle estensioni browser, combinato con la fiducia degli utenti verso i tool AI, crea una superficie di attacco lato client difficile da presidiare.

Perché le estensioni AI sono un bersaglio ideale


Le estensioni browser operano all’interno del processo trusted del browser con permessi concessi dall’utente. Possono leggere e modificare contenuti web, intercettare richieste di rete, accedere ai cookie e comunicare con server esterni — le stesse capacità di strumenti legittimi come ad blocker, password manager e tool per sviluppatori. La distinzione tra uno strumento legittimo e uno malevolo è invisibile all’utente medio.

L’AI generativa amplifica il rischio in modo qualitativo. Quando un utente digita un prompt in un servizio AI come ChatGPT o Claude, condivide routinariamente codice proprietario, bozze di comunicazioni riservate e piani strategici. Un’estensione posizionata tra l’utente e il servizio AI intercetta dati di valore incomparabilmente superiore ai metadati di navigazione tradizionalmente presi di mira dal browser malware. Unit 42 ha rilevato campioni specifici che prendono di mira i prompt inviati a ChatGPT prima che lascino il dispositivo, esfiltrandoli verso domini a bassa reputazione.

Le tecniche di attacco documentate da Unit 42


L’analisi retrospettiva di Unit 42 ha identificato cinque tecniche ricorrenti nelle 18 estensioni ad alto rischio:

1. WebSocket C2 persistente


Le estensioni stabiliscono connessioni WebSocket bidirezionali verso server C2 remoti. La connessione si riconnette automaticamente agli interrupt di rete e persiste attraverso i riavvii del browser senza richiedere iniezione di processo. Il traffico appare come normale traffico HTTPS dal punto di vista della rete. L’esempio più esplicito è “Chrome MCP Server – AI Browser Control”: mascherato da tool di automazione basato su Model Context Protocol, è di fatto un RAT completo che si connette a wss://mcp-browser.qubecare[.]ai/chrome, con la listing che riportava falsamente “100% local processing – your data never leaves your browser”.

2. Browser API Hooking


Gli script di contenuto sostituiscono le API native del browser (window.fetch o XMLHttpRequest) per intercettare le richieste di rete prima della trasmissione. In questo modo l’estensione può leggere il payload di qualsiasi richiesta — incluse quelle cifrate — prima che lascino la pagina. Questa tecnica permette la cattura di prompt, credenziali di form e token di sessione.

3. Osservazione passiva del DOM


Gli script di contenuto monitorano passivamente le modifiche al Document Object Model (DOM) in applicazioni target come Gmail o Notion. L’estensione legge il contenuto renderizzato — testo in chiaro di email composte, note, messaggi — e lo trasmette in chiaro a server esterni. Unit 42 ha documentato casi in cui il contenuto delle email e gli OTP vengono esfiltrati tramite questa tecnica prima ancora dell’invio.

4. Traffic Proxying via PAC


Alcune estensioni configurano le impostazioni proxy del browser tramite file PAC (Proxy Auto-Configuration) per instradare il traffico attraverso infrastrutture controllate dall’attaccante. Questo approccio non richiede permission esplicite per i singoli siti e opera in modo trasparente per l’utente.

5. Decifrazione HTTPS via Chrome Debugger Protocol


La tecnica più sofisticata: alcune estensioni agganciano il Chrome Debugger Protocol per leggere il corpo delle risposte HTTPS già decifrate. Questo bypassa la protezione della cifratura transport-layer, consentendo l’intercettazione di qualsiasi risposta HTTPS — incluse risposte delle API AI, contenuti bancari e dati di sessione autenticati.

Il ruolo degli LLM nella produzione industriale di malware browser


Un dato particolarmente significativo: diversi campioni analizzati da Unit 42 contenevano fingerprint di codice generato da LLM. I threat actor stanno utilizzando strumenti di code generation AI per accelerare lo sviluppo di estensioni malevole e scalare le campagne. Questo abbassa drasticamente la barriera tecnica per la produzione di browser malware sofisticato e rende obsoleta la correlazione tra qualità del codice e minaccia reale. La stessa tecnologia che promette produttività agli utenti legittimi viene weaponizzata per costruire più velocemente gli strumenti del crimine informatico.

Le estensioni analizzate (case study)


Tra le 18 estensioni documentate da Unit 42 con comportamenti ad alto rischio, i principali case study includono: Chrome MCP Server – AI Browser Control (RAT completo via WebSocket), Supersonic AI (infostealer di prompt), Reverse Recruiting (esfiltrazione di dati di profilo e comunicazioni), Chat AI for Chrome (intercettazione conversazioni AI), e l’estensione di traduzione Huiyi (spyware con DOM observation). Tutti si presentavano come tool di produttività AI legittimi con descrizioni convincenti sullo store Chrome.

Qualche raccomandazione


  • Gestione centralizzata delle estensioni: le organizzazioni dovrebbero implementare policy di allowlisting delle estensioni browser tramite Chrome Enterprise o equivalente, vietando l’installazione autonoma da parte degli utenti su dispositivi aziendali.
  • Principio del minimo privilegio per le estensioni: auditare i permessi richiesti da tutte le estensioni installate. Un’estensione che chiede accesso a debugger, webRequest, proxy e storage.sync contemporaneamente dovrebbe essere trattata con estrema cautela.
  • Diffidare delle promesse di privacy locale: affermazioni come “100% local processing” non sono verificabili dall’utente e sono state documentate come false in almeno un caso della ricerca.
  • Monitoraggio del traffico di rete: le connessioni WebSocket persistenti verso domini a bassa reputazione da processi browser sono un segnale di allarme rilevabile a livello di proxy/firewall aziendale.
  • Aggiornare le policy di sicurezza per includere esplicitamente le estensioni browser AI come superficie di rischio, alla stregua di software di terze parti installato.

Fonte primaria: Unit 42, Palo Alto Networks, “That AI Extension Helping You Write Emails? It’s Reading Them First”, 30 aprile 2026. Le 18 estensioni sono state segnalate a Google, che ha rimosso o inviato avvisi ai proprietari per violazione delle policy.


The Privacy Post ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

The media in this post is not displayed to visitors. To view it, please go to the original post.

LAPSUS$ colpisce Checkmarx: 95 GB di codice sorgente su dark web e la supply chain dei tool di sicurezza nel mirino
#CyberSecurity
insicurezzadigitale.com/__tras…


LAPSUS$ colpisce Checkmarx: 95 GB di codice sorgente su dark web e la supply chain dei tool di sicurezza nel mirino


Quando a essere violato è uno dei principali vendor di sicurezza applicativa — uno strumento usato per rilevare vulnerabilità nel codice altrui — le implicazioni si estendono ben oltre l’azienda stessa. Il gruppo LAPSUS$ ha pubblicato sul dark web 95 gigabyte di dati riservati di Checkmarx, inclusi codice sorgente, chiavi API e credenziali di database. È l’ultimo capitolo di una campagna supply chain orchestrata da un attore noto come TeamPCP, che da settimane sta sistematicamente compromettendo l’ecosistema degli strumenti di sviluppo e sicurezza.

Cosa è stato esfiltrato


Il 25 aprile 2026, LAPSUS$ ha rivendicato pubblicamente l’attacco a Checkmarx, pubblicando un archivio di circa 95 GB che include codice sorgente dei repository GitHub privati dell’azienda (tra cui componenti di KICS, il motore open source per la scansione di configurazioni cloud e IaC), un database dei dipendenti con informazioni personali e credenziali interne, chiavi API per servizi di terze parti e integrazioni, e credenziali di database MongoDB e MySQL dell’ambiente di sviluppo.

Checkmarx ha confermato l’autenticità del dump in un advisory pubblicato il 26 aprile, precisando che i repository GitHub compromessi sono separati dall’ambiente di produzione per i clienti e che nessun dato cliente è stato esposto direttamente. Tuttavia, la presenza di chiavi API e credenziali nei file esfiltrati amplia significativamente la superficie di attacco potenziale.

Il vettore: la campagna supply chain TeamPCP


L’accesso ai sistemi di Checkmarx non è stato ottenuto tramite un attacco diretto, ma attraverso la compromissione della supply chain di sviluppo software. La data del breach originale è il 23 marzo 2026, quando TeamPCP ha iniettato codice malevolo in componenti dell’ecosistema Checkmarx disponibili pubblicamente. Le immagini Docker KICS ufficiali su Docker Hub sono state sostituite con versioni trojanizzate contenenti uno stealer di credenziali: gli sviluppatori che le utilizzavano nelle pipeline CI/CD scaricavano automaticamente il malware. Parallelamente, due estensioni VS Code correlate a Checkmarx pubblicate su marketplace sono state compromesse con funzionalità di esfiltrazione che operavano silenziosamente in background.

Il nome TeamPCP emerge anche in connessione con le 73 estensioni malicious su Open VSX scoperte a fine aprile, suggerendo una campagna coordinata e ad ampio raggio contro l’intero ecosistema degli strumenti DevSecOps. Il modello è chiaro: compromettere prima gli strumenti che gli sviluppatori di sicurezza usano quotidianamente, per poi risalire — tramite le credenziali rubate — ai sistemi più preziosi.

Chi è LAPSUS$


LAPSUS$ è un gruppo di cybercrime con una storia operativa peculiare: composto prevalentemente da giovani hacker (diversi dei quali minorenni all’epoca degli attacchi), il gruppo si è distinto tra il 2021 e il 2022 per una serie di operazioni ad alto profilo contro Nvidia, Samsung, Okta, Microsoft e Uber, utilizzando principalmente tecniche di social engineering e SIM swapping piuttosto che exploit tecnici sofisticati. Dopo una serie di arresti nel 2022-2023, il gruppo sembrava smantellato. La ricomparsa nel 2026, questa volta sfruttando l’infrastruttura supply chain di TeamPCP come vettore di accesso iniziale, dimostra una capacità di adattamento e riorganizzazione che rende LAPSUS$ una minaccia ancora attiva.

Timeline dell’incidente


  • 23 marzo 2026: TeamPCP compromette le immagini Docker KICS e le estensioni VS Code; furto delle credenziali Checkmarx GitHub
  • Fine marzo – inizio aprile 2026: esfiltrazione massiva dei 95 GB di repository privati
  • 25 aprile 2026: LAPSUS$ pubblica il data dump sul dark web e rivendica l’attacco
  • 26 aprile 2026: Checkmarx pubblica un advisory confermando la violazione e bloccando l’accesso al repository compromesso
  • 29 aprile 2026: il dump viene diffuso pubblicamente in forum accessibili, aumentando il rischio di sfruttamento secondario delle chiavi API esposte


Implicazioni per gli utenti Checkmarx e i team DevSecOps


La violazione di Checkmarx solleva preoccupazioni su più livelli. In primo luogo, l’esposizione del codice sorgente dei motori di analisi potrebbe consentire ad attori malevoli di identificare potenziali vulnerabilità nelle logiche di scanning, aprendo la porta ad attacchi che bypassano o manipolano i risultati dell’analisi statica del codice. In secondo luogo, i team che hanno utilizzato immagini Docker KICS o le estensioni VS Code compromesse tra marzo e aprile 2026 devono considerarsi potenzialmente compromessi e procedere con un’indagine forensica.

Indicatori di Compromissione e azioni immediate

# Immagini Docker KICS compromesse (periodo a rischio: 23/03 - 26/04/2026)
checkmarx/kics:latest  # verificare hash con: docker inspect --format='{{.Id}}' checkmarx/kics:latest
checkmarx/kics:v1.7.x  # controllare con advisory ufficiale Checkmarx
# Credenziali da ruotare immediatamente se si è usato KICS Docker nel periodo a rischio:
# - Token GitHub con accesso ai repository
# - Chiavi API Checkmarx
# - Credenziali MongoDB/MySQL condivise con l'ambiente di sviluppo
# - Segreti nelle pipeline CI/CD (GitHub Actions, GitLab CI, Jenkins)
# Verifica estensioni VS Code compromesse:
# Controllare l'elenco completo nel security advisory ufficiale su checkmarx.com/blog/checkmarx-security-update-april-26/
# Log da analizzare per pull sospetti (pipeline CI/CD):
# grep -r "checkmarx/kics" .github/workflows/ .gitlab-ci.yml Jenkinsfile

Consigli per i difensori


L’attacco a Checkmarx è emblematico di una tendenza sempre più preoccupante: i tool di sicurezza stessi diventano vettori di attacco. È necessario verificare i log delle pipeline CI/CD tra il 23 marzo e il 26 aprile 2026 per identificare eventuali pull di immagini Checkmarx da Docker Hub. Qualsiasi segreto memorizzato nell’ambiente di sviluppo deve essere considerato compromesso e sostituito immediatamente. Le estensioni VS Code Checkmarx vanno rimosse e reinstallate da sorgenti verificate e firmate. Il monitoraggio del dark web nei prossimi mesi è raccomandato: i 95 GB esfiltrati contengono informazioni che potrebbero essere sfruttate per attacchi secondari a lungo termine.

Più in generale, questo incidente sottolinea l’urgenza di adottare il principio del least privilege nelle pipeline CI/CD: i processi automatizzati non dovrebbero avere accesso a credenziali di produzione. L’isolamento degli ambienti — sviluppo, staging, produzione — e la firma crittografica delle immagini container (tramite strumenti come Cosign e la policy enforcement con Kyverno o OPA) limitano significativamente il blast radius di compromissioni simili. Quando a essere attaccato è chi produce gli strumenti di difesa, l’unica risposta efficace è l’architettura zero-trust applicata anche all’infrastruttura DevSecOps.


The Privacy Post ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

Linux Kernel Zero-Day “Copy Fail” (CVE-2026-31431) Grants Root Access on Every Major Distro Since 2017
#CyberSecurity
securebulletin.com/linux-kerne…
The Privacy Post ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

Lazarus Group Targets macOS Users With Sophisticated “Mach-O Man” Four-Stage Malware Kit
#CyberSecurity
securebulletin.com/lazarus-gro…
The Privacy Post ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

The media in this post is not displayed to visitors. To view it, please go to the original post.

Mini Shai-Hulud: TeamPCP compromette i pacchetti npm ufficiali di SAP in un attacco supply chain enterprise
#CyberSecurity
insicurezzadigitale.com/mini-s…


Mini Shai-Hulud: TeamPCP compromette i pacchetti npm ufficiali di SAP in un attacco supply chain enterprise


Il 29 aprile 2026, il gruppo TeamPCP ha compromesso i pacchetti npm ufficiali di SAP in quello che i ricercatori di Wiz hanno battezzato “Mini Shai-Hulud”: un attacco alla supply chain enterprise di estrema rilevanza che ha preso di mira gli ambienti di sviluppo e CI/CD di organizzazioni che utilizzano il Cloud Application Programming Model (CAP) e Cloud MTA di SAP. L’operazione si distingue per la sofisticazione del meccanismo di esfiltrazione e per la capacità di rubare credenziali da praticamente ogni sistema cloud aziendale utilizzato dagli sviluppatori colpiti.

SAP nell’occhio del ciclone: perché questa supply chain attack è critica


SAP è il backbone ERP di migliaia di aziende enterprise globali. Il suo Cloud Application Programming Model (CAP) è il framework ufficiale per costruire applicazioni cloud-native su SAP Business Technology Platform. Una compromissione dei pacchetti npm di SAP CAP non è, quindi, un attacco a una libreria open source di nicchia: è un’iniezione di malware nel cuore degli ambienti di sviluppo enterprise, con accesso diretto a credenziali di produzione, segreti CI/CD e infrastrutture cloud di organizzazioni Fortune 500.

La finestra temporale dell’attacco è stata precisa e calcolata: le versioni malevole dei pacchetti SAP sono state pubblicate su npm il 29 aprile 2026 tra le 09:55 UTC e le 12:14 UTC — un arco di circa due ore e mezza. Questo tipo di timing suggerisce un’operazione pianificata per massimizzare la finestra di esposizione prima che i team di sicurezza potessero reagire, sfruttando le ore mattutine dei fusi orari europei e americani durante le quali i sistemi CI/CD eseguono build automatizzate.

Anatomia dell’attacco: da preinstall script a credential stealer


Il meccanismo di attacco sfrutta una caratteristica legittima del registry npm: gli script preinstall, che vengono eseguiti automaticamente ogni volta che un pacchetto viene installato come dipendenza. I ricercatori di Socket e Wiz hanno ricostruito la catena di infezione in tre fasi distinte.

Fase 1 — Bootstrap con Bun: Lo script preinstall esegue un loader chiamato setup.mjs che scarica da GitHub il runtime JavaScript Bun. L’utilizzo di Bun anziché Node.js è un’indicazione tattica: Bun è meno monitorato dai tool di sicurezza aziendali ed è più difficile da rilevare in ambienti enterprise dove Node.js è già whitelistato. Questo scaricamento di un binary non verificato è di per sé sufficiente per classificare il pacchetto come malevolo.

Fase 2 — Execution payload offuscato: Il runtime Bun viene utilizzato per eseguire un payload denominato execution.js, pesantemente offuscato. Il payload implementa logiche di raccolta credenziali e meccanismi anti-analisi per complicare il reverse engineering.

Fase 3 — Esfiltrazione crittografata: I dati rubati vengono cifrati con una chiave RSA pubblica hardcoded nel malware e caricati su repository GitHub pubblici creati sull’account della stessa vittima — con la descrizione ironica “A Mini Shai-Hulud has Appeared” (riferimento al verme del deserto di Dune). Questa tecnica di esfiltrazione tramite GitHub è particolarmente insidiosa poiché il traffico verso github.com è raramente bloccato nelle reti aziendali.

Tipologia di credenziali rubate


Il credential stealer è progettato per aspirare qualsiasi segreto accessibile nell’ambiente dello sviluppatore o del pipeline CI/CD:

  • Token GitHub e npm — accesso ai repository e alle pipeline di deploy
  • GitHub Actions secrets — credenziali iniettate nei workflow di CI/CD
  • Chiavi SSH — accesso diretto a server e infrastruttura
  • Credenziali cloud: AWS (access key + secret), Azure (service principal), Google Cloud Platform (service account JSON), Kubernetes (kubeconfig)
  • Segreti CI/CD in memoria — variabili d’ambiente caricate nei processi attivi al momento dell’esecuzione


Attribuzione a TeamPCP: la chiave RSA come firma digitale


Wiz attribuisce l’operazione a TeamPCP con alta confidenza. L’elemento chiave è la riutilizzazione della stessa chiave RSA pubblica per cifrare i dati esfiltrati — la medesima chiave impiegata in precedenti compromissioni di librerie attribuite allo stesso gruppo. È un errore operativo significativo da parte degli attaccanti: la chiave di cifratura diventa di fatto una firma identificativa che collega tutte le campagne dello stesso operatore.

TeamPCP non è un nuovo arrivato nel panorama degli attacchi alla supply chain npm. Il gruppo ha già condotto operazioni simili contro altre librerie, dimostrando un interesse sistematico per l’ecosistema JavaScript enterprise e un pattern operativo consolidato: compromissione di pacchetti legittimi e ad alta fiducia, payload multistadio con downloader, esfiltrazione tramite servizi cloud legittimi.

Il pattern più ampio: tre supply chain attack in 48 ore


L’attacco ai pacchetti SAP non è avvenuto in isolamento. GitGuardian ha documentato come nelle stesse 48 ore abbiano colpito campagne analoghe su npm (il pacchetto tanstack contraffatto che esfiltrava file .env), PyPI e Docker Hub — suggerendo un’intensificazione coordinata delle operazioni di supply chain attack verso l’ecosistema di sviluppo software nel suo complesso. Questo tipo di attività “a grappolo” potrebbe indicare un mercato underground più attivo, o una risposta a opportunità specifiche emerse nell’ecosistema open source.

Indicatori di Compromissione (IoC)

# Pacchetti SAP npm compromessi (versioni malevole - 29 aprile 2026)
# Pubblicati tra 09:55 UTC e 12:14 UTC

# Indicatori infrastrutturali:
# - Loader: setup.mjs (scarica Bun runtime da GitHub)
# - Payload: execution.js (offuscato, eseguito via Bun)
# - Chiave RSA pubblica condivisa con altre campagne TeamPCP

# Pattern di esfiltrazione:
# - Dati caricati su repository GitHub pubblici della vittima
# - Descrizione repository: "A Mini Shai-Hulud has Appeared"
# - Dati cifrati con RSA prima dell'upload

# File target:
.env
.env.local
.env.production
~/.ssh/id_rsa
~/.aws/credentials
~/.kube/config

# Riferimenti:
# Socket: https://socket.dev/blog/sap-cap-npm-packages-supply-chain-attack
# Wiz: https://www.wiz.io/blog/mini-shai-hulud-supply-chain-sap-npm
# BleepingComputer: https://www.bleepingcomputer.com/news/security/official-sap-npm-packages-compromised-to-steal-credentials/

Raccomandazioni immediate per i difensori


Chi utilizza pacchetti SAP CAP o Cloud MTA nel proprio ambiente di sviluppo deve agire immediatamente su più fronti. Il primo passo è verificare le versioni installate nei propri progetti e disinstallare qualsiasi versione pubblicata il 29 aprile 2026: eseguire npm audit e confrontare le versioni con il changelog ufficiale SAP. In secondo luogo, è necessario trattare tutte le credenziali presenti negli ambienti di sviluppo e CI/CD come potenzialmente compromesse: ruotare token GitHub, chiavi AWS/Azure/GCP, credenziali npm e kubeconfig.

A livello organizzativo, questo attacco riporta all’attenzione la necessità di implementare policy di Software Composition Analysis (SCA) nei pipeline CI/CD, con blocco automatico di pacchetti che eseguono script preinstall o scaricano binary da sorgenti esterne. L’adozione di soluzioni come Socket, Wiz o Snyk per il monitoraggio in real-time delle dipendenze npm rappresenta oggi una misura non più opzionale per chi gestisce ambienti enterprise basati su Node.js.

Fonti: Socket Research Team, Wiz Security Blog, BleepingComputer, GitGuardian Blog — 29-30 aprile 2026.


The Privacy Post ha ricondiviso questo.

Journalismus wird weltweit immer häufiger kriminalisiert. Auch in demokratischen Ländern. Zum ersten Mal fallen in der Rangliste von Reporter ohne Grenzen über die Hälfte aller Länder in die schlechtesten Kategorien. Trump hat dabei einen weltweiten Negativ-Effekt auf die Pressefreiheit.

netzpolitik.org/2026/reporter-…

in reply to netzpolitik.org

Ob es auch mit den Aufstieg der Rechten Parteien zusammenhängt (also Rechts neben den Konservativen)?

de.statista.com/infografik/313…

The Privacy Post ha ricondiviso questo.

After more than 10 years of work by the FSFE and a broad coalition of organisations, the @EUCommission decided this January not to activate the provision for the Radio Lockdown Directive: #FreeSoftware on radio devices remains protected! 🚀

💪With your help the #FSFE will continue to monitor developments and defend the right of users to install or remove any software on any of their devices.

fsfe.org/news/2026/news-202604…

#SoftwareFreedom #RED

in reply to Free Software Foundation Europe

This success would not have been possible without the many people and organisations who took action over the yea­rs.

Thank you to everyone who contacted the European Commission and political representatives, who raised awareness about Radio Lockdown, who participated in public consultations, who signed the Joint Statement against Radio Lockdown, and all the FSFE supporters for their financial contributions enabling our work. Your engagement made a real difference.

The Privacy Post ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

🎙️ #KI verändert gerade alles — wie wir arbeiten, lernen, uns informieren und uns schützen. Was steckt dahinter? Und was heißt das für uns? Max #Schrems spricht darüber mit Ö3-Redakteurin Shin Chang.

• Video: youtube.com/watch?v=lP8yLUsXyf…
• Podcast: sound.orf.at/podcast/oe3/der-o…

reshared this

The Privacy Post ha ricondiviso questo.

Die EU arbeitet mit Hochdruck an der Abschiebeverordnung. ICE-ähnliche Razzien in Privatwohnungen und elektronische Fußfesseln für Menschen ohne Aufenthalt könnten Realität werden, wenn die Verordnung in dieser Form beschlossen wird – warnen Expert*innen und zivilgesellschaftliche Organisationen.

netzpolitik.org/2026/abschiebe…

The Privacy Post ha ricondiviso questo.

🗓️ Mark your calendars for an exclusive summit on resisting the EU's digital #deregulation agenda!

We're excited to announce the summit ✊🏽 "Fight for Us, not for Them": A public interest vision for EU tech policy ✊🏽

📍Tuesday 23 June 2026, 14-18.00 CEST

11 civil society orgs will convene European lawmakers, regulators, journalists, and key civil society voices to lay out our bold alternative vision for tech laws, policies and practices.

Register now to join us online ➡️
edri.org/our-work/announcing-t…

reshared this

The Privacy Post ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

The @EUCommission's first review of the #DMA is out. While the law remains a powerful tool, its enforcement is falling short.

Yes, there have been early wins. But widespread non-compliance by gatekeepers, weak enforcement signals & reports of political interference risk turning ambition on paper into missed opportunity in practice.

The Commission should stop “working with gatekeepers towards compliance” & instead simply require it.

✊🏾 No more leniency for lawbreakers ➡️ edri.org/our-work/if-the-dma-i…

Questa voce è stata modificata (2 giorni fa)
The Privacy Post ha ricondiviso questo.

The New(ish) Architecture of Consumer Health and Artificial Intelligence
fpf.org/blog/the-newish-archit…
@privacy
The rise of AI-powered health tools is prompting new thinking about how, where, and when sensitive health information receives legal protection. According to media reports, consumers are now using general-purpose AI tools to upload or query health information, including medical records, and several companies

The Privacy Post reshared this.

The Privacy Post ha ricondiviso questo.

🚨 noyb hat heute eine Klage gegen die Hamburger Datenschutzbehörde eingereicht

Die Behörde hält das Vorgehen der Gesichtssuchmaschine PimEyes zwar für illegal, will aber keine wirksamen Maßnahmen ergreifen, weil das Unternehmen in Dubai ansässig sei.

👉 noyb.eu/de/no-action-taken-aga…

Questa voce è stata modificata (2 giorni fa)
in reply to noyb.eu

es scheint Methode zu werden, nach Gründen zu suchen, Arbeitsverweigerung zu rechtfertigen. In Hessen wartet man, bis der Anbieter das Geschäft einstellt, in Hamburg eben vermutlich, bis der Rechtsbrecher mit deutschem Pass in der Hand klingelt und um Beachtung fleht.
Unerwünschtes Verhalten mit Nichtbeachtung zu reduzieren und erwünschtes mit Lob zu bestärken ist zwar auch eine Methode, aber doch wohl eher für Kitas geeignet. Da funktioniert sie, weil der Reiz des Geldverdienens durch Regelbruch noch nicht dagegen spielt.
The Privacy Post ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

Azure Data Studio è in pensione: migra il tuo workflow Azure SQL su VS Code in 10 minuti
#tech
spcnet.it/azure-data-studio-e-…
@informatica


Azure Data Studio è in pensione: migra il tuo workflow Azure SQL su VS Code in 10 minuti


Se stai ancora aprendo Azure Data Studio per lavorare con Azure SQL, è arrivato il momento di fare il passo. Azure Data Studio (ADS) è andato ufficialmente in pensione il 6 febbraio 2025, e il supporto è terminato il 28 febbraio 2026. Microsoft ha indicato Visual Studio Code con l’estensione MSSQL come percorso ufficiale consigliato.

Questa guida ti aiuta a ripristinare rapidamente la produttività in VS Code: importare il setup esistente, recuperare le scorciatoie familiari come F5, e far funzionare SQL Database Projects per gestire le modifiche allo schema con sicurezza.

Perché questa migrazione conta per gli sviluppatori Azure SQL


Eseguire query è solo una parte del lavoro. La maggior parte dei team ha bisogno di workflow ripetibili per la revisione delle modifiche allo schema, la validazione in CI, e i deployment più sicuri. SQL Database Projects supporta questo stile di lavoro con “schema as code”, build validation, e un’esperienza di pubblicazione guidata direttamente in VS Code.

Rispetto ad Azure Data Studio, VS Code offre:

  • Un ecosistema di estensioni molto più ricco e aggiornato
  • Integrazione nativa con GitHub Copilot per l’assistenza SQL
  • Supporto per SQL database in Microsoft Fabric
  • Un editor più potente con refactoring, IntelliSense avanzato, e integrazione Git integrata


Step 1: Installa gli strumenti SQL essenziali per VS Code


Dalla Marketplace di VS Code, installa questi tre componenti:

Estensione MSSQL


Il tuo principale strumento per query, connessioni e workflow con il database. Cerca “SQL Server (mssql)” nel VS Code Marketplace. Questa estensione gestisce le connessioni ai server SQL Server, Azure SQL Database, Azure SQL Managed Instance e SQL database in Microsoft Fabric.

SQL Database Projects


Aggiunge il sistema di progetto e il workflow di build/publish per “schema as code”. Cerca “SQL Database Projects” nel Marketplace. Con questa estensione puoi organizzare oggetti SQL in un progetto versionabile, validare la struttura del database prima del deploy, e pubblicare in modo controllato.

.NET 8 SDK


SQL Database Projects dipende dal .NET SDK per la build. Installalo da dotnet.microsoft.com prima del primo build. L’estensione ti avviserà se manca, ma averlo pronto evita un riavvio aggiuntivo.

Step 2: Importa il tuo setup ADS esistente


L’estensione MSSQL include un ADS Migration Toolkit che trasferisce le tue connessioni salvate, i gruppi di connessioni, le impostazioni e i binding dei tasti in un unico flusso guidato. Apri l’estensione e segui il wizard.

Ripristinare F5 come abitudine muscolare


Se sei abituato a premere F5 per eseguire una query in Azure Data Studio, installa l’estensione MSSQL Database Management Keymap. Aggiunge i binding di tasti in stile ADS, incluso F5 per eseguire una query. Per l’elenco completo, consulta la documentazione “Customize keyboard shortcuts”.

Step 3: Configurare SQL Database Projects end-to-end


Questa è la parte che rende il workflow davvero solido. Segui questi passaggi nell’ordine:

1. Crea o apri un progetto SQL


Apri una cartella di progetto SQL esistente in VS Code, oppure creane uno nuovo tramite i comandi SQL Database Projects nell’editor. I file .sqlproj sono compatibili con SSDT, quindi puoi aprire progetti esistenti direttamente.

2. Esegui prima la build


Il primo traguardo deve essere una build pulita. Confermare che la toolchain è configurata correttamente prima di tentare un deploy è fondamentale. Eventuali errori di sintassi o riferimenti mancanti emergono qui, non in produzione.

3. Pubblica tramite il Publish Dialog


Fai clic destro sul progetto nel pannello Database Projects, seleziona Publish, configura il target, controlla il deployment script generato, e seleziona Publish per deployare.

La preview dello script è il punto che rende questo workflow affidabile per uso serio: vedi esattamente quale T-SQL verrà eseguito sul database prima che accada. Niente sorprese.

Problemi comuni e soluzioni


.NET SDK non trovato: Se la prima build non completa, verifica che il .NET SDK sia installato e che VS Code riesca a trovarlo. Questo è il problema più comune al primo avvio.

Target platform mismatch: Se il comportamento di publish è diverso da quello atteso, controlla il target platform del progetto nelle impostazioni .sqlproj. Molti problemi di publish dipendono dalla configurazione del progetto, non dal database in sé.

Lavorare con SQL database in Microsoft Fabric


La stessa configurazione VS Code si applica a SQL database in Microsoft Fabric, con un’aggiunta: inizia dal portale Fabric per collegare il database a Git prima di aprire il progetto localmente in VS Code. Questo garantisce che il file di progetto sia configurato correttamente per Fabric.

Item templates: per chi arriva da SSDT


Se vieni da SSDT, i template di elementi in SQL Database Projects generano stub consistenti per tabelle, stored procedure, view e altri oggetti comuni. Fai clic destro sul progetto nel pannello Database Projects e seleziona Add Item per iniziare.

Primi passi consigliati


Prova questo ciclo completo con qualsiasi schema di database piccolo:

  1. Crea o apri un SQL project
  2. Esegui la build
  3. Pubblica con script preview abilitato
  4. Apporta una modifica allo schema, ricompila, e pubblica di nuovo

Dopo questo ciclo, il workflow ti sembrerà naturale come quello di Azure Data Studio — con in più la potenza dell’ecosistema VS Code.

Conclusione


Azure Data Studio ha avuto la sua era, ma VS Code con l’estensione MSSQL è oggi il tool ufficiale e più potente per lavorare con Azure SQL. L’importazione del setup esistente richiede pochi minuti grazie all’ADS Migration Toolkit, e SQL Database Projects porta il workflow di schema management a un livello superiore rispetto a quanto era possibile in ADS.

Chi lavora con Azure SQL, SQL Server, o SQL database in Microsoft Fabric troverà in VS Code un ambiente più ricco e costantemente aggiornato. La transizione vale lo sforzo.

Fonte originale: Azure Data Studio is retired: Move your Azure SQL workflow to VS Code in 10 minutes — Iqra Shaikh, Microsoft Azure SQL Dev Corner (27 aprile 2026)


The Privacy Post ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

Europol Dismantles €50 Million Investment Fraud Network Operating Corporate-Style Scam Call Centres in Albania
#CyberSecurity
securebulletin.com/europol-dis…
The Privacy Post ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

Il pulsante di emergenza: revoca immediata dei token in .NET 10 con Duende IdentityServer
#tech
spcnet.it/il-pulsante-di-emerg…
@informatica


Il pulsante di emergenza: revoca immediata dei token in .NET 10 con Duende IdentityServer


Immagina questo scenario da incubo: il telefono di un cliente bancario viene rubato, l’app mobile è già autenticata, e il ladro ha pieno accesso al suo conto. Il supporto riceve la chiamata disperata. Ogni secondo conta. Quanto tempo ci vuole per revocare quella sessione attiva e mettere al sicuro i fondi?

Se stai usando JWT self-contained standard, la risposta onesta potrebbe essere “fino a un’ora”, a seconda della durata di validità del token. Non è accettabile. Vediamo come i Reference Token ti forniscono un vero pulsante di emergenza per queste situazioni, e come configurarli con Duende IdentityServer in .NET 10.

Il problema dei JWT self-contained


I JWT self-contained sono il cavallo di battaglia dell’autorizzazione moderna. Trasportano tutte le claim di cui un’API ha bisogno direttamente nel token. Nessuna query al database, nessuna chiamata al provider di identità. L’API valida la firma, controlla la scadenza, e il gioco è fatto. È elegante e performante.

Ma questa natura self-contained è un’arma a doppio taglio. Una volta emesso un JWT, il provider di identità non ha più nulla da dire su di esso. Il token è valido fino a quando la claim exp non dice il contrario, tipicamente 5-60 minuti. Se un dispositivo viene rubato, un account compromesso, o una minaccia rilevata, non puoi revocare quel token. Sei costretto ad aspettare che scada.

Per molte applicazioni questo compromesso è accettabile. Per ambienti ad alta sicurezza come banking, sanità o sistemi governativi, è un gap che non puoi permetterti.

Reference Token: premere il pulsante


I Reference Token ribaltano il modello. Invece di incorporare tutte le claim direttamente nel token, IdentityServer memorizza il contenuto del token lato server nel suo persisted grant store e consegna al client un identificatore opaco (un “handle”). Quando un’API riceve questo handle, chiama l’endpoint di introspection di IdentityServer per validare il token e recuperare le claim.

Questo cambia tutto. Poiché i dati del token risiedono sul server, puoi cancellarli in qualsiasi momento. La revoca è immediata. La prossima volta che l’API chiama l’endpoint di introspection, riceve "active": false, e l’accesso viene negato. Niente attese di scadenza, niente token obsoleti in circolazione.

Il compromesso? Ogni chiamata API richiede un round-trip verso l’endpoint di introspection. Per API pubbliche su scala internet, è una preoccupazione. Per servizi interni e ambienti ad alta sicurezza, è un prezzo ragionevole per la capacità di staccare la spina istantaneamente.

Configurare i Reference Token in IdentityServer


Passare a Reference Token per un client richiede una singola riga di configurazione. Quando definisci il client in Duende IdentityServer, imposta la proprietà AccessTokenType:

new Client
{
    ClientId = "banking_app",
    ClientSecrets = { new Secret("secret".Sha256()) },
    AllowedGrantTypes = GrantTypes.Code,

    // Questa è la riga chiave
    AccessTokenType = AccessTokenType.Reference,

    AllowOfflineAccess = true,
    RedirectUris = { "https://banking.example.com/signin-oidc" },
    AllowedScopes = { "openid", "profile", "accounts.read", "transfers.write" }
};

I token emessi per questo client saranno ora handle opachi invece di JWT self-contained.

Configurare l’API per l’introspection


La tua API deve sapere come validare questi token opachi. Invece del (o in aggiunta al) classico JWT validation, configuri l’introspection OAuth 2.0. Prima, definisci un API Resource con un secret:

new ApiResource("banking_api")
{
    Scopes = { "accounts.read", "transfers.write" },
    ApiSecrets = { new Secret("api_secret".Sha256()) }
};

Poi nel Program.cs della tua API, registra l’handler di introspection:
builder.Services.AddAuthentication("token")
    .AddOAuth2Introspection("token", options =>
    {
        options.Authority = "https://identity.banking.example.com";
        options.ClientId = "banking_api";
        options.ClientSecret = "api_secret";
    });

Se devi supportare sia JWT che Reference Token (magari durante una migrazione), puoi registrare entrambi gli handler e usare il forwarding per instradare i token a quello corretto:
builder.Services.AddAuthentication("token")
    .AddJwtBearer("token", options =>
    {
        options.Authority = "https://identity.banking.example.com";
        options.Audience = "banking_api";
        options.TokenValidationParameters.ValidTypes = ["at+jwt"];
        options.ForwardDefaultSelector = Selector.ForwardReferenceToken("introspection");
    })
    .AddOAuth2Introspection("introspection", options =>
    {
        options.Authority = "https://identity.banking.example.com";
        options.ClientId = "banking_api";
        options.ClientSecret = "api_secret";
    });

Revocare un token


Quando quella chiamata disperata arriva, il tuo sistema di supporto (o una pipeline automatica di rilevamento minacce) può revocare il token immediatamente usando l’endpoint di revocation di IdentityServer, che implementa la RFC 7009:

using Duende.IdentityModel.Client;

var client = new HttpClient();
var result = await client.RevokeTokenAsync(new TokenRevocationRequest
{
    Address = "https://identity.banking.example.com/connect/revocation",
    ClientId = "banking_app",
    ClientSecret = "secret",
    Token = stolenAccessToken
});

if (result.IsError)
{
    logger.LogError("Token revocation failed: {Error}", result.Error);
}

Una volta revocato, il token viene rimosso dal persisted grant store. La prossima richiesta di introspection da qualsiasi API confermerà che il token non è più attivo. L’accesso è tagliato.

Non dimenticare: dovresti anche revocare il refresh token dell’utente per impedire al client di ottenere silenziosamente un nuovo access token:

await client.RevokeTokenAsync(new TokenRevocationRequest
{
    Address = "https://identity.banking.example.com/connect/revocation",
    ClientId = "banking_app",
    ClientSecret = "secret",
    Token = refreshToken
});

Nota: sia l’introspection che la revocation emettono eventi di audit che puoi usare per implementare log di audit nei settori regolamentati.

Quando usare i Reference Token


I Reference Token non sono un sostituto universale dei JWT. Brillano in scenari specifici:

  • La revoca immediata è un requisito imprescindibile (banking, sanità, sistemi compliance-driven)
  • Comunicazione service-to-service interna dove il round-trip di introspection è trascurabile
  • Operazioni ad alto rischio dove il beneficio di sicurezza supera il costo in performance

Per API pubbliche su larga scala dove la latenza di revoca è accettabile, i JWT self-contained con breve durata rimangono una scelta solida. Puoi anche mixare i due approcci: Reference Token per client sensibili e JWT per quelli a minor rischio, tutto all’interno dello stesso deployment IdentityServer.

Conclusione


Ogni architettura di sicurezza implica compromessi. I JWT self-contained scambiano la revocabilità per la performance. I Reference Token scambiano la performance per il controllo. Per gli ambienti dove “aspetta che scada” non è una risposta accettabile, i Reference Token con Duende IdentityServer ti forniscono un vero pulsante di emergenza.

L’implementazione è semplice: una proprietà sul client, un handler di introspection sull’API, e una chiamata di revocation quando devi staccare la spina. Quando accadono incidenti di sicurezza — e accadranno — sarai felice di averlo configurato.

Fonte originale: The Emergency Stop Button – Implementing Immediate Token Revocation in .NET 10 — Khalid Abuhakmeh, Duende Software (28 aprile 2026)


The Privacy Post ha ricondiviso questo.

The media in this post is not displayed to visitors. To view it, please go to the original post.

SonicWall SonicOS Flaws Let Attackers Bypass Firewall Access Controls and Trigger Denial of Service
#CyberSecurity
securebulletin.com/sonicwall-s…
The Privacy Post ha ricondiviso questo.

Weitgehend unbeachtet hat das Kabinett gestern ein Überwachungspaket beschlossen, das Orwell fast blass aussehen lässt. Darin steckt unter anderem die Fotofahndung im Netz. Dazu müssten massenweise Gesichter aus dem Netz gescrapet werden – ohne Zustimmung. Mehr dazu:

netzpolitik.org/2026/rechtlich…

in reply to chris köver

Bereitgestellt von @altbot, privat und lokal generiert mit Gemma4:26b

@ckoever Ein Bild mit schwarzem Text auf weißem Hintergrund. Der Text lautet: „5. Auf welche Daten soll beim biometrischen Internetabgleich zugegriffen werden dürfen? Für den Abgleich sollen nur solche Daten herangezogen werden dürfen, die im Internet öffentlich zugänglich sind: Also solche Daten, auf die jedermann zugreifen kann, beispielsweise aus sozialen Medien (je nach Privatsphäre-Einstellungen). Nicht umfasst sind hingegen Daten, die nur bestimmten Personengruppen zugänglich sind, beispielsweise Daten in sozialen Medien, die nur für die Kontakte einer Person bestimmt sind. Privatkommunikation über Messenger-Dienste von sozialen Medien können können nicht von der Maßnahme erfasst werden. Auch Echtzeitdaten, wie beispielsweise Live-Streams, können und dürfen hierbei nicht erfasst werden.“

🌱 Energieverbrauch: 0.332 Wh

The media in this post is not displayed to visitors. To view it, please log in.

🍀 ThePrivacyPost è un account di servizio gestito direttamente dagli amministratori di Poliverso e pubblica notizie provenienti da diversi siti, blog, account del fediverso e alcuni contenuti originali.
🩸 Se apprezzi questo servizio, prendi in considerazione la possibilità di effettuare una donazione a Poliverso. Puoi scegliere due canali:

1) Ko-Fi
2) LiberaPay 💳

Supporta Poliverso con Ko-Fi

Supporta Poliverso con LiberaPay

reshared this