Check Point: Nejnebezpečnějším malwarem světa je Trickbot, napadl přes 140 000 počítačů

11. 1. 2022
Doba čtení: 2 minuty

Sdílet

Autor: © freshidea - Fotolia.com
Mezi hlavní cíle Trickbotu patří vládní a vojenské organizace, finanční společnosti a banky. Trickbot se podle analytiků při distribuci spoléhá na malý počet IP adres.

Check Point Research, výzkumný tým společnosti Check Point Software, varuje před nárůstem ransomwarových útoků, které jsou spojené s návratem Emotetu. Europol dokonce nazval Emotet „nejnebezpečnějším malwarem na světě“.

Bezpečnostní společnost vysvětluje, že hlavní nebezpečí tohoto malwaru tkví v tom, že kyberzločincům poskytuje přístup do napadených počítačů a umožňuje jejich pronájem ransomwarovým gangům.

Emotet byl odstaven na začátku roku 2021 v důsledku mezinárodní policejní operace, ale nyní sílí s pomocí malwaru Trickbot, který byl sice v roce 2020 také zčásti odstaven, ale za 11 měsíců v roce 2021 má na svědomí více než 140 000 obětí ve 149 zemích.

Mezinárodní operace byla úspěšná jen částečně 

Check Point připomíná, že na začátku loňského roku proběhla mezinárodní operace řízená Europolem a Eurojustem, byla převzata kontrola nad infrastrukturou Emotetu, přičemž byly zatčeny dvě osoby.

Ovšem 15. 11. 2021 začaly počítače infikované Trickbotem znovu šířit Emotet. Hackeři se podle expertů snaží uživatele přimět ke stažení zaheslovaných souborů ve formátu zip, které obsahují škodlivé dokumenty obnovující síť botnetu Emotet. Emotet je nyní navíc vylepšený a přináší řadu nových triků.

Trickbot řádí zejména v Portugalsku

Výzkumný tým Check Point Research zaznamenal za 11 měsíců více než 140 000 obětí zasažených Trickbotem. Trickbot infikoval počítače ve 149 zemích, což je více než 75 % všech zemí světa. Nejvíce obětí je z Portugalska a USA.

Trickbot se podle analytiků zaměřuje zejména na vládní a vojenské organizace, ale i na další lukrativní cíle, jako jsou banky, výrobní podniky či zdravotnické organizace.

Emotet byl nejvýkonnějším botnetem v historii a prodával svou širokou síť infikovaných strojů dalším hackerským skupinám. Většinou se jednalo o ransomwarové gangy. Návrat Emotetu je předzvěstí nárůstu ransomwarových útoků v roce 2022,“ říká Peter Kovalčík, regional director, security engineer EE v Check Pointu.

Trickbot, který s Emotetem vždy spolupracoval, usnadňuje Emotetu jeho návrat, takže začíná z velmi výhodné pozice, a nikoliv od nuly. Za pouhé dva týdny se Emotet stal sedmým nejrozšířenějším malwarem,“ uzavírá.

Zdroj: Check Point Software Technologies

Čtěte dále

Čechům na dark web nejčastěji unikají hesla jako „123456“, „heslo“ nebo „tomasek“
Čechům na dark web nejčastěji unikají hesla jako „123456“, „heslo“ nebo „tomasek“
Karel Diviš: Firmy potřebují jednoho stabilního dodavatele IT
Karel Diviš: Firmy potřebují jednoho stabilního dodavatele IT
Tomáš Břečka je novým country managerem iStyle
Tomáš Břečka je novým country managerem iStyle
Firmy chtějí to nejlepší z obou světů: ukládat data lokálně, ale s globálním zabezpečením
Firmy chtějí to nejlepší z obou světů: ukládat data lokálně, ale s globálním zabezpečením
Na NIS2 si vyhraďte minimálně 6 měsíců, radí Jan Sedlák z MasterDC
Na NIS2 si vyhraďte minimálně 6 měsíců, radí Jan Sedlák z MasterDC
Nejširší nabídka ProAV technologií? Najdete ji u EET Group
Nejširší nabídka ProAV technologií? Najdete ji u EET Group
'; document.getElementById('preroll-iframe').onload = function () { setupIframe(); } prerollContainer = document.getElementsByClassName('preroll-container-iframe')[0]; } function setupIframe() { prerollDocument = document.getElementById('preroll-iframe').contentWindow.document; let el = prerollDocument.createElement('style'); prerollDocument.head.appendChild(el); el.innerText = "#adContainer>div:nth-of-type(1),#adContainer>div:nth-of-type(1) > iframe { width: 99% !important;height: 99% !important;max-width: 100%;}#videoContent,body{ width:100vw;height:100vh}body{ font-family:'Helvetica Neue',Arial,sans-serif}#videoContent{ overflow:hidden;background:#000}#adMuteBtn{ width:35px;height:35px;border:0;background:0 0;display:none;position:absolute;fill:rgba(230,230,230,1);bottom:20px;right:25px}"; videoContent = prerollDocument.getElementById('contentElement'); videoContent.style.display = 'none'; videoContent.volume = 1; videoContent.muted = false; const playPromise = videoContent.play(); if (playPromise !== undefined) { playPromise.then(function () { console.log('PREROLL sound allowed'); // setUpIMA(true); videoContent.volume = 1; videoContent.muted = false; setUpIMA(); }).catch(function () { console.log('PREROLL sound forbidden'); videoContent.volume = 0; videoContent.muted = true; setUpIMA(); }); } } function setupDimensions() { prerollWidth = Math.min(iinfoPrerollPosition.offsetWidth, 480); prerollHeight = Math.min(iinfoPrerollPosition.offsetHeight, 320); } function setUpIMA() { google.ima.settings.setDisableCustomPlaybackForIOS10Plus(true); google.ima.settings.setLocale('cs'); google.ima.settings.setNumRedirects(10); // Create the ad display container. createAdDisplayContainer(); // Create ads loader. adsLoader = new google.ima.AdsLoader(adDisplayContainer); // Listen and respond to ads loaded and error events. adsLoader.addEventListener( google.ima.AdsManagerLoadedEvent.Type.ADS_MANAGER_LOADED, onAdsManagerLoaded, false); adsLoader.addEventListener( google.ima.AdErrorEvent.Type.AD_ERROR, onAdError, false); // An event listener to tell the SDK that our content video // is completed so the SDK can play any post-roll ads. const contentEndedListener = function () { adsLoader.contentComplete(); }; videoContent.onended = contentEndedListener; // Request video ads. const adsRequest = new google.ima.AdsRequest(); adsRequest.adTagUrl = iinfoVastUrls[iinfoVastUrlIndex]; console.log('Preroll advert: ' + iinfoVastUrls[iinfoVastUrlIndex]); videoContent.muted = false; videoContent.volume = 1; // Specify the linear and nonlinear slot sizes. This helps the SDK to // select the correct creative if multiple are returned. // adsRequest.linearAdSlotWidth = prerollWidth; // adsRequest.linearAdSlotHeight = prerollHeight; adsRequest.nonLinearAdSlotWidth = 0; adsRequest.nonLinearAdSlotHeight = 0; adsLoader.requestAds(adsRequest); } function createAdDisplayContainer() { // We assume the adContainer is the DOM id of the element that will house // the ads. prerollDocument.getElementById('videoContent').style.display = 'none'; adDisplayContainer = new google.ima.AdDisplayContainer( prerollDocument.getElementById('adContainer'), videoContent); } function unmutePrerollAdvert() { adVolume = !adVolume; if (adVolume) { adsManager.setVolume(0.3); prerollDocument.getElementById('adMuteBtn').innerHTML = ''; } else { adsManager.setVolume(0); prerollDocument.getElementById('adMuteBtn').innerHTML = ''; } } function onAdsManagerLoaded(adsManagerLoadedEvent) { // Get the ads manager. const adsRenderingSettings = new google.ima.AdsRenderingSettings(); adsRenderingSettings.restoreCustomPlaybackStateOnAdBreakComplete = true; adsRenderingSettings.loadVideoTimeout = 12000; // videoContent should be set to the content video element. adsManager = adsManagerLoadedEvent.getAdsManager(videoContent, adsRenderingSettings); // Add listeners to the required events. adsManager.addEventListener(google.ima.AdErrorEvent.Type.AD_ERROR, onAdError); adsManager.addEventListener( google.ima.AdEvent.Type.CONTENT_PAUSE_REQUESTED, onContentPauseRequested); adsManager.addEventListener( google.ima.AdEvent.Type.CONTENT_RESUME_REQUESTED, onContentResumeRequested); adsManager.addEventListener( google.ima.AdEvent.Type.ALL_ADS_COMPLETED, onAdEvent); // Listen to any additional events, if necessary. adsManager.addEventListener(google.ima.AdEvent.Type.LOADED, onAdEvent); adsManager.addEventListener(google.ima.AdEvent.Type.STARTED, onAdEvent); adsManager.addEventListener(google.ima.AdEvent.Type.COMPLETE, onAdEvent); playAds(); } function playAds() { // Initialize the container. Must be done through a user action on mobile // devices. videoContent.load(); adDisplayContainer.initialize(); // setupDimensions(); try { // Initialize the ads manager. Ad rules playlist will start at this time. adsManager.init(1920, 1080, google.ima.ViewMode.NORMAL); // Call play to start showing the ad. Single video and overlay ads will // start at this time; the call will be ignored for ad rules. adsManager.start(); // window.addEventListener('resize', function (event) { // if (adsManager) { // setupDimensions(); // adsManager.resize(prerollWidth, prerollHeight, google.ima.ViewMode.NORMAL); // } // }); } catch (adError) { // An error may be thrown if there was a problem with the VAST response. // videoContent.play(); } } function onAdEvent(adEvent) { const ad = adEvent.getAd(); console.log('Preroll event: ' + adEvent.type); switch (adEvent.type) { case google.ima.AdEvent.Type.LOADED: if (!ad.isLinear()) { videoContent.play(); } prerollDocument.getElementById('adContainer').style.width = '100%'; prerollDocument.getElementById('adContainer').style.maxWidth = '640px'; prerollDocument.getElementById('adContainer').style.height = '360px'; break; case google.ima.AdEvent.Type.STARTED: window.addEventListener('scroll', onActiveView); if (ad.isLinear()) { intervalTimer = setInterval( function () { // Example: const remainingTime = adsManager.getRemainingTime(); // adsManager.pause(); }, 300); // every 300ms } prerollDocument.getElementById('adMuteBtn').style.display = 'block'; break; case google.ima.AdEvent.Type.ALL_ADS_COMPLETED: if (ad.isLinear()) { clearInterval(intervalTimer); } if (prerollLastError === 303) { playYtVideo(); } break; case google.ima.AdEvent.Type.COMPLETE: if (ad.isLinear()) { clearInterval(intervalTimer); } playYtVideo(); break; } } function onAdError(adErrorEvent) { console.log(adErrorEvent.getError()); prerollLastError = adErrorEvent.getError().getErrorCode(); if (!loadNext()) { playYtVideo(); } } function loadNext() { iinfoVastUrlIndex++; if (iinfoVastUrlIndex < iinfoVastUrls.length) { iinfoPrerollPosition.remove(); playPrerollAd(); } else { return false; } adVolume = 1; return true; } function onContentPauseRequested() { videoContent.pause(); } function onContentResumeRequested() { videoContent.play(); } function onActiveView() { if (prerollContainer) { const containerOffset = prerollContainer.getBoundingClientRect(); const windowHeight = window.innerHeight; if (containerOffset.top < windowHeight/1 && containerOffset.bottom > 0.0) { if (prerollPaused) { adsManager.resume(); prerollPaused = false; } return true; } else { if (!prerollPaused) { adsManager.pause(); prerollPaused = true; } } } return false; } function playYtVideo() { iinfoPrerollPosition.remove(); youtubeIframe.style.display = 'block'; youtubeIframe.src += '&autoplay=1&mute=1'; } }
OSZAR »