Kártevők észlelése az Azure Firewallhoz készült Microsoft Sentinel használatával

A kártevők olyan szoftverek, amelyek a számítógépes rendszerek, hálózatok vagy eszközök biztonságát és működését károsítják, zavarják vagy veszélyeztetik. Különböző típusú fenyegetéseket tartalmaz, például vírusokat, férgeket, trójaiakat, zsarolóprogramokat, kémprogramokat, adware-t, rootkiteket és egyebeket. A kártevőknek számos negatív hatása lehet, például bizalmas adatok ellopása, fájlok titkosítása vagy törlése, nemkívánatos hirdetések megjelenítése, teljesítménycsökkenés vagy akár az eszköz felügyelete.

Fontos, hogy azonosítsa és megszüntesse a kártevőket egy rendszerből vagy hálózatból, amelyet különféle észlelési technikák, például aláírásalapú, viselkedésalapú, heurisztikus vagy gépi tanuláson alapuló technikák alkalmazásával tehet meg. A kártevők észlelése létfontosságú a felhasználók biztonságának és adatvédettségének, valamint a rendszerek és hálózatok integritásának és rendelkezésre állásának védelméhez.

Az Azure Firewall IDPS funkciója alapértelmezés szerint automatikusan észleli és tagadja a kártevőket, és megakadályozhatja a felhőbeli számítási feladatok megfertőzését. Ezt a képességet tovább javíthatja, ha előre összeállított észlelési lekérdezések és a Microsoft Sentinel használatával automatizált észlelést és választ alkalmaz. Ebből a cikkből megtudhatja, hogyan észlelhet néhány gyakori kártevőt az Azure Firewall naplóiban, Cl0p példáulCoinminer, és Sunburst hogyan használhat előre definiált KQL-észlelési lekérdezéseket az Azure Firewallhoz.

Ezek az észlelések lehetővé teszik a biztonsági csapatok számára, hogy Sentinel-riasztásokat kapjanak, amikor a belső hálózatban lévő gépek olyan tartománynevekhez vagy IP-címekhez csatlakoznak az interneten, amelyek az észlelési szabály lekérdezésében meghatározott ismert kompromisszumos mutatókhoz (IOC-khez) kapcsolódnak. A valódi pozitív észleléseket kompromisszummutatóknak (IOC-k) kell tekinteni. Ezt követően a biztonsági incidensek válaszcsapatai válaszlépéseket kezdeményezhetnek, és az észlelési jelek alapján megfelelő egyéni szervizelési műveleteket hajthatnak végre.

Az elemzési szabályoknak az alábbi lekérdezések használatával történő üzembe helyezésére vonatkozó utasításokért lásd : Új fenyegetések észlelése a Microsoft Sentinel és az Azure Web Application Firewall használatával.

Gyakori kártevők kihasználása

A következő kártevők kihasználása gyakori a mai hálózatokon.

Coinminer

A kriptovaluta-bányászat közelmúltbeli megugrása miatt egyre nagyobb szükség van a nagy teljesítményű hálózati feldolgozó egységekre. Az elosztott számítástechnika egyre bővül, és széles körben elérhetővé válik a bányászati szoftverek mind jogi, mind illegális környezetben.

Coinminer olyan kártevőtípust jelöl, amely egy nem akaró áldozat számítógépének hardvererőforrásait használja a kriptovaluta-bányászathoz. A gyanútlan felhasználó pc-jének grafikus feldolgozási egysége (GPU) különböző szkriptek futtatására szolgál a kriptovaluták bányászatára és a tranzakcióblokk-kivonatok kiszámítására.

A fenyegetések kockázatának csökkentése érdekében proaktív intézkedéseket kell végrehajtani a tipikus belépési pontokon. Ez magában foglalja a Jupyter-szoftverek megfelelő hitelesítéssel, konfigurálásával és frissítésével történő üzembe helyezését a biztonsági rések minimalizálása, a Docker külső hozzáférésének szabályozása és a további Teljes felügyelet elvek követése érdekében.

Az alábbi észlelési lekérdezéssel létrehozhat egy elemzési szabályt a Sentinelben, amely automatikusan észleli és válaszol erre a kártevőre az Azure Firewall-naplók használatával.

// Coinminer Detection Rule
// Detects suspicious traffic patterns associated with coinmining activity in Azure Firewall logs for Sentinel

let coinminerPorts = dynamic(["2375", "2376", "2377", "4243", "4244"]); // List of known coinminer ports  
//Assign the known domains to a variable
let coinminerdomains = dynamic(["teamtnt.red", "kaiserfranz.cc", "45.9.148.123"]); // List of known coinminer domains  

(union isfuzzy=true 

(AzureDiagnostics  
| where ResourceType == "AZUREFIREWALLS"  
| where Category == "AzureFirewallApplicationRule" 
| parse msg_s with Protocol 'request from ' SourceHost ':' SourcePort 'to ' DestinationHost ':' DestinationPort '. Action:' Action 
| extend action_s = column_ifexists("action_s", ""), transactionId_g = column_ifexists("transactionId_g", "")  
| where DestinationPort in (coinminerPorts) // Filter traffic on known coinminer ports  
| summarize CoinminerAttempts = count() by DestinationHost, DestinationPort  
| where CoinminerAttempts > 10 // Adjust threshold as needed  
), 

(AZFWIdpsSignature 
| where DestinationPort in (coinminerPorts) 
| summarize CoinminerAttempts = count() by DestinationIp, DestinationPort 
| where CoinminerAttempts > 10 // Adjust threshold as needed   

), 

(AzureDiagnostics  
| where ResourceType == "AZUREFIREWALLS"  
| where Category == "AzureFirewallDnsProxy"  
| parse msg_s with "DNS Request: " ClientIP ":" ClientPort " - " QueryID " " Request_Type " " Request_Class " " Request_Name ". " Request_Protocol " " Request_Size " " EDNSO_DO " " EDNS0_Buffersize " " Response_Code " " Response_Flags " " Response_Size " " Response_Duration  
| where Request_Name has_any(coinminerdomains)  
| extend DNSName = Request_Name  
| extend IPCustomEntity = ClientIP  

),  

(AzureDiagnostics  
| where ResourceType == "AZUREFIREWALLS"  
| where Category == "AzureFirewallApplicationRule"  
| parse msg_s with Protocol ' request from ' SourceHost ':' SourcePort 'to' DestinationHost ':' DestinationPort '. Action:' Action  
| where isnotempty(DestinationHost)  
| where DestinationHost has_any(coinminerdomains)  
| extend DNSName = DestinationHost  
| extend IPCustomEntity = SourceHost), 

(AZFWApplicationRule 
| where isnotempty(Fqdn) 
| where Fqdn has_any (coinminerdomains)   
| extend DNSName = Fqdn  
| extend IPCustomEntity = SourceIp), 

(AZFWDnsQuery 
| where isnotempty(QueryName) 
| where QueryName has_any (coinminerdomains) 
| extend DNSName = QueryName 
| extend IPCustomEntity = SourceIp 

), 

(AZFWIdpsSignature 
| where DestinationIp has_any (coinminerdomains) 
| extend DNSName = DestinationIp 
| extend IPCustomEntity = SourceIp 

), 

(AZFWIdpsSignature 
| where Description contains "coinminer" 
| extend DNSName = DestinationIp 
| extend IPCustomEntity = SourceIp 
) 

)

Cl0p

Cl0p egy ransomware, amely úgy működik, hogy megkülönböztető titkosítási kulcsokat alkalmaz az áldozat fájljaira, majd váltságdíjat kér a fájlok visszafejtéséhez. Biztonsági rést használ az adatátviteli szoftver MOVEit-ben, és célzott adathalász e-maileket küld számos alkalmazottnak abban a reményben, hogy kézbesítse cl0p. Ezután olyan eszközöket használ, mint truebot a hálózat oldalirányú mozgatása és dewmode az adatok kiszűrése. A ransomware az AES-256 titkosítási algoritmussal titkosítja a fájlokat.

Cl0p biztonsági rések közé tartozik a CVE-2023-35036, a CVE-2023-34362 és a CVE-2023-35708. 2023 júniusában az FBI és a CISA sajtóközleményt tett közzé a kizsákmányolásról. A zsarolóvírusok cl0p hatásait az USA midwest és kormányzati szervezetei számos egyetemén regisztrálják. A ransomware banda legújabb áldozatai cl0p a légitársaságok, a tv-hálózatok és az egyesült királyságbeli kiskereskedelmi üzletek.

Az alábbi észlelési lekérdezéssel létrehozhat egy elemzési szabályt a Sentinelben, amely automatikusan észleli és válaszol erre a kártevőre az Azure Firewall-naplók használatával.

Észlelési lekérdezés a következőhöz Cl0p: Tűzfal kártevőészlelései a Sentinelhez/Detektáláshoz – Elemzési szabály lekérdezése Cl0p.json

Sunburst

Ez a kártevő a tartománygenerálási algoritmusok (DGA) sztringjeinek használatával célozza meg az áldozatokat, hogy elkerülje az észlelést, és parancs- és vezérlési backdoor-támadást hozzon létre. A DGA-sztringek gyakran nehézkesek a biztonsági eszközök számára a kártevők által használt tartományok azonosításához a szintaxisban használt minta és a tartományadatok állandó módosítása miatt.

Az alábbi észlelési lekérdezéssel létrehozhat egy elemzési szabályt a Sentinelben, amely automatikusan észleli és válaszol erre a kártevőre az Azure Firewall-naplók használatával.

Kártevőészlelési lekérdezés Sunburst : Tűzfal kártevőészlelései sentinelhez/észleléshez – Elemzési szabály lekérdezése Sunburst.json