{"id":7406,"date":"2024-02-24T10:10:00","date_gmt":"2024-02-24T10:10:00","guid":{"rendered":"https:\/\/www.withsecure.com\/?post_type=lab_item&#038;p=7406"},"modified":"2026-05-22T12:51:53","modified_gmt":"2026-05-22T11:51:53","slug":"krustyloader-windows-variant-dropped-via-screenconnect-exploit","status":"publish","type":"lab_item","link":"https:\/\/www.withsecure.com\/en\/resources-hub\/w-labs\/krustyloader-windows-variant-dropped-via-screenconnect-exploit\/","title":{"rendered":"KrustyLoader Windows variant dropped via ScreenConnect exploit"},"content":{"rendered":"<section\n    class=\"wp-block-one-column-block edwp-block js-wp-block-one-column-block wp-block-one-column-block--content-1 wp-block-one-column-block--meta-sharing layout--spacing-xxxxl-top layout--spacing-xl-bottom\"\n    >\n    <div class=\"wp-block-one-column-block__container\">\n                                                                                                                            <div class='wp-block-one-column-block__meta-sharing-grid'><div class=\"wp-component-content wp-component-content--default wp-block-one-column-block__content fade-in\">\n            <h1 class=\"wp-component-heading text--h2 wp-component-content__title\">\n    KrustyLoader Windows variant dropped via  <span class=\"blue-text\">ScreenConnect exploit<\/span><\/h1>                    <div class=\"wp-component-content__inner\">\n                                                    <div class=\"wp-component-content__meta\">\n                                                                            <span class=\"wp-component-content__meta-categories\">\n                                                                    <span class=\"wp-component-content__meta-category\">\n                                        Software Protection                                    <\/span>\n                                                                    <span class=\"wp-component-content__meta-category\">\n                                        Threat intelligence                                    <\/span>\n                                                            <\/span>\n                                                                                                    <span class=\"wp-component-content__meta-date\">\n                                24 February, 2024                            <\/span>\n                                                                    <\/div>\n                                            <\/div>\n                <\/div><section\n    class=\"wp-block-sharing-icons edwp-block wp-block-sharing-icons--disable-border wp-block-sharing-icons--content-1 wp-block-sharing-icons--disable-container wp-block-one-column-block__sharing fade-in wp-block-one-column-block__sharing fade-in\"\n    >\n    <div class=\"wp-block-sharing-icons__container\">\n        <div class=\"wp-block-sharing-icons__inner\">\n                            <p class=\"wp-block-sharing-icons__title fade-in\">\n                    Share this                <\/p>\n                        <div class=\"wp-component-socials wp-component-socials--dark-mode\">\n    \n            <a href=\"https:\/\/www.linkedin.com\/shareArticle?mini=true&#038;url=https:\/\/www.withsecure.com\/en\/resources-hub\/w-labs\/krustyloader-windows-variant-dropped-via-screenconnect-exploit\/&#038;title=KrustyLoader%20Windows%20variant%20dropped%20via%20ScreenConnect%20exploit\" target=\"_blank\" rel=\"noreferer noopener\" class=\"wp-component-socials__link\" title=\"Share on Linkedin\">\n            <svg class='edwp-icon edwp-icon--xlg js-icon ' aria-hidden='true'>\n                <use xlink:href='#linkedin'><\/use>\n            <\/svg>        <\/a>\n    \n            <a href=\"http:\/\/x.com\/share?text=KrustyLoader Windows variant dropped via ScreenConnect exploit&#038;url=https:\/\/www.withsecure.com\/en\/resources-hub\/w-labs\/krustyloader-windows-variant-dropped-via-screenconnect-exploit\/\" target=\"_blank\" rel=\"noreferer noopener\" class=\"wp-component-socials__link wp-component-socials__link--twitter\" title=\"Share on Twitter\">\n            <svg class='edwp-icon edwp-icon--xlg js-icon ' aria-hidden='true'>\n                <use xlink:href='#x'><\/use>\n            <\/svg>        <\/a>\n    \n    \n    <\/div>\n        <\/div>\n    <\/div>\n<\/section>\n<\/div>                                                                                <\/div>\n<\/section>\n\n\n<section\n    class=\"wp-block-one-column-block edwp-block js-wp-block-one-column-block wp-block-one-column-block--content-1 layout--spacing-xxxl-bottom\"\n    >\n    <div class=\"wp-block-one-column-block__container\">\n                                                                                                                                    <div class=\"wp-component-image__wrapper wp-block-one-column-block__image fade-in\">\n                    <figure class=\"wp-component-image__figure\">\n                                            <img loading=\"lazy\" decoding=\"async\" width=\"1200\" height=\"800\" src=\"https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/ws_labs_research2.jpg.webp\" class=\"wp-component-image\n                            wp-component-image--desktop\n                            wp-component-image--mobile\n                            wp-component-image--ratio-content-25-1 wp-component-image--fit-cover\" alt=\"\" srcset=\"https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/ws_labs_research2.jpg.webp 1200w, https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/ws_labs_research2-300x200.jpg.webp 300w, https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/ws_labs_research2-1024x683.jpg.webp 1024w, https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/ws_labs_research2-768x512.jpg.webp 768w, https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/ws_labs_research2-447x298.jpg.webp 447w, https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/ws_labs_research2-219x146.jpg.webp 219w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/>                                                    <\/figure>\n                    <\/div>\n                                                                                <\/div>\n<\/section>\n\n\n<section\n    class=\"wp-block-two-column-block edwp-block js-wp-block-two-column-block wp-block-two-column-block--content-1 wp-block-two-column-block__left--align-y-top wp-block-two-column-block__right--align-y-top wp-block-two-column-block--split-sidebar layout--none-top layout--spacing-xxxl-bottom\"\n    data-block-id=\"block_1ad1056af5676fc4fbbf50231ae8cff3\"\n    >\n    <div class=\"wp-block-two-column-block__container row-load\">\n                                                        <div class=\"wp-block-two-column-block__left\">\n                                    <div class=\"wp-component-authors-list wp-block-two-column-block__authors\">\n                    <p class=\"wp-component-authors-list__title\">\n                Authors            <\/p>\n        \n        <div class=\"wp-component-authors-list__items\">\n                                                <div class=\"wp-component-author-card \">\n    <div class=\"wp-component-author-card__media\">\n                    <img loading=\"lazy\" decoding=\"async\" width=\"1080\" height=\"1080\" src=\"https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/Mohammad-Kazem-Hassan-Nejad_WithSecure_2.jpg.webp\" class=\"wp-component-author-card__photo\" alt=\"\" srcset=\"https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/Mohammad-Kazem-Hassan-Nejad_WithSecure_2.jpg.webp 1080w, https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/Mohammad-Kazem-Hassan-Nejad_WithSecure_2-300x300.jpg.webp 300w, https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/Mohammad-Kazem-Hassan-Nejad_WithSecure_2-1024x1024.jpg.webp 1024w, https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/Mohammad-Kazem-Hassan-Nejad_WithSecure_2-150x150.jpg.webp 150w, https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/Mohammad-Kazem-Hassan-Nejad_WithSecure_2-768x768.jpg.webp 768w, https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/Mohammad-Kazem-Hassan-Nejad_WithSecure_2-447x447.jpg.webp 447w, https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/Mohammad-Kazem-Hassan-Nejad_WithSecure_2-700x700.jpg.webp 700w, https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/Mohammad-Kazem-Hassan-Nejad_WithSecure_2-146x146.jpg.webp 146w\" sizes=\"auto, (max-width: 1080px) 100vw, 1080px\" \/>            <\/div>\n    <div class=\"wp-component-author-card__content\">\n                    <h3 class=\"wp-component-author-card__name\">Mohammad Kazem Hassan Nejad<\/h3>\n        \n                    <p class=\"wp-component-author-card__meta\">\n                Senior Threat Intelligence Researcher, WithSecure            <\/p>\n                \n            <\/div>\n\n<\/div>\n\n                                    <\/div>\n\n            <\/div>\n<section\n    class=\"wp-block-sharing-icons edwp-block wp-block-sharing-icons--disable-border wp-block-sharing-icons--disable-container wp-block-two-column-block__share wp-block-two-column-block__hide-mobile wp-block-two-column-block__share wp-block-two-column-block__hide-mobile\"\n    >\n    <div class=\"wp-block-sharing-icons__container\">\n        <div class=\"wp-block-sharing-icons__inner\">\n                            <p class=\"wp-block-sharing-icons__title fade-in\">\n                    Share this story                <\/p>\n                        <div class=\"wp-component-socials wp-component-socials--dark-mode\">\n    \n            <a href=\"https:\/\/www.linkedin.com\/shareArticle?mini=true&#038;url=https:\/\/www.withsecure.com\/en\/resources-hub\/w-labs\/krustyloader-windows-variant-dropped-via-screenconnect-exploit\/&#038;title=KrustyLoader%20Windows%20variant%20dropped%20via%20ScreenConnect%20exploit\" target=\"_blank\" rel=\"noreferer noopener\" class=\"wp-component-socials__link\" title=\"Share on Linkedin\">\n            <svg class='edwp-icon edwp-icon--xlg js-icon ' aria-hidden='true'>\n                <use xlink:href='#linkedin'><\/use>\n            <\/svg>        <\/a>\n    \n            <a href=\"http:\/\/x.com\/share?text=KrustyLoader Windows variant dropped via ScreenConnect exploit&#038;url=https:\/\/www.withsecure.com\/en\/resources-hub\/w-labs\/krustyloader-windows-variant-dropped-via-screenconnect-exploit\/\" target=\"_blank\" rel=\"noreferer noopener\" class=\"wp-component-socials__link wp-component-socials__link--twitter\" title=\"Share on Twitter\">\n            <svg class='edwp-icon edwp-icon--xlg js-icon ' aria-hidden='true'>\n                <use xlink:href='#x'><\/use>\n            <\/svg>        <\/a>\n    \n    \n    <\/div>\n        <\/div>\n    <\/div>\n<\/section>\n                <\/div>\n                                                <div class=\"wp-block-two-column-block__right\">\n                                <div class=\"wp-component-paragraph wp-block-two-column-block__paragraph \">\n    <h2 class=\"text--h2\"><span class=\"f26-ArchivoM\">Latest in a 6-month mass exploitation campaign<\/span><\/h2>\n<div class=\"title parbase aem-GridColumn aem-GridColumn--default--12\">\n<h2 class=\"cmp-title__text grey-text\">Executive Summary<\/h2>\n<\/div>\n<div class=\"businessRichtext parbase aem-GridColumn aem-GridColumn--default--12\">\n<p>Since proof-of-concept code was released for two vulnerabilities in ConnectWise ScreenConnect, en-mass exploitation has started from multiple threat actors. Researchers in the security industry have reported on attack chains they have observed which include using ScreenConnect to deploy password stealers, other remote management software, and commercial post-exploitation frameworks. Some intrusions have even ended up with Ransomware deployments.<\/p>\n<p>Internet scanners, such as the\u00a0<a href=\"https:\/\/dashboard.shadowserver.org\/statistics\/combined\/time-series\/?date_range=7&amp;source=http_vulnerable&amp;source=http_vulnerable6&amp;tag=screenconnect%2B&amp;group_by=tag&amp;style=stacked\" target=\"_blank\" rel=\"noopener noreferrer\">ShadowServer foundation<\/a>\u00a0report that as of 21<sup>st<\/sup>\u00a0February, 2024 over 8,000 vulnerable instances of ScreenConnect were exposed to the internet. While this seems relatively low when comparing to recent vulnerabilities in VPN services, it is worth noting that ScreenConnect is a remote administration tool, used by managed services providers and IT service providers to manage multiple client organizations, and each ScreenConnect server can manage up to 150,000 clients. Considering this, the threat surface posed by this vulnerability is almost certainly significantly higher than the number of ScreenConnect server instances exposed to the internet.<\/p>\n<p>In such attacks, WithSecure\u2122 detected a threat actor exploiting ScreenConnect and deploying a new Windows variant of the malware dubbed KrustyLoader. KrustyLoader was first named by\u00a0<a href=\"https:\/\/www.synacktiv.com\/en\/publications\/krustyloader-rust-malware-linked-to-ivanti-connectsecure-compromises\" target=\"_blank\" rel=\"noopener noreferrer\">Synacktiv<\/a>\u00a0in January 2024 when analysing implants dropped as part of a widespread campaign targeting the critical vulnerabilities in Ivanti ConnectSecure.\u00a0<b><i>NB<\/i><\/b><i>: everybody who has the words \u2018connect\u2019 or \u2018secure\u2019 (\u2026we know) in your product name, PLEASE do a secure code review.<\/i><\/p>\n<p>The new version of KrustyLoader operates in a very similar way to that described by Synacktiv, however the variant observed by WithSecure is a Windows executable.<\/p>\n<p>As well as the Ivanti campaigns, WithSecure are also aware of implants showcasing similar behaviour in documented campaigns exploiting critical vulnerabilities in JetBrains TeamCity and ApacheMQ services. For this reason, we assess that the intrusion set behind this activity has been continually exploiting edge vulnerabilities for some time, possibly acting as an initial access broker, although we do not have insight into actions on objectives after a Sliver post-exploitation framework is deployed at the time of writing \u2013 an attack step common across the campaigns noted.<\/p>\n<\/div>\n<div class=\"title parbase aem-GridColumn aem-GridColumn--default--12\">\n<h2 class=\"cmp-title__text grey-text\">Windows KrustyLoader Analysis<\/h2>\n<\/div>\n<div class=\"title parbase aem-GridColumn aem-GridColumn--default--12\">\n<h3 class=\"cmp-title__text grey-text\">Initial infection chain<\/h3>\n<\/div>\n<div class=\"businessRichtext parbase aem-GridColumn aem-GridColumn--default--12\">\n<p>The threat actor drops a batch file called \u201cr.bat\u201d into the victim\u2019s system under two separate directories varying by victim, including:<\/p>\n<ul>\n<li>C:\\Windows\\TEMP\\ScreenConnect\\23.8.5.8707\\r.bat<\/li>\n<li>\u00a0&lt;REDACTEDPATH&gt;\\ConnectWiseControl\\Temp\\r.bat<\/li>\n<\/ul>\n<p>The threat actor then proceeds to launch the batch script, which performs the following:<\/p>\n<ul>\n<li>Removes previous copies of dropped artifacts by deleting the following files:\n<ul>\n<li>C:\\Windows\\temp\\0<\/li>\n<li>C:\\temp\\1<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><b>NOTE:<\/b>\u00a0the path doesn\u2019t match the path KrustyLoader is downloaded into by the batch script.<\/p>\n<ul>\n<li>Randomly selects one of four pre-defined Amazon AWS S3 URLs hosting KrustyLoader payloads.<\/li>\n<li>Creates a file \u201cC:\\Windows\\temp\\0\u201d by echoing a hardcoded variable called \u2018flag\u2019 into it. The existence of this file is later checked by KrustyLoader.<\/li>\n<li>Attempts to download the payload as \u201cC:\\Windows\\Temp\\1.exe\u201d via three separate commands using bitsadmin and PowerShell, before ultimately launching the downloaded payload, KrustyLoader.<\/li>\n<\/ul>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-7408 size-full\" src=\"https:\/\/www.withsecure.com\/wp-content\/uploads\/2026\/05\/picture1.webp\" alt=\"\" width=\"755\" height=\"333\" srcset=\"https:\/\/www.withsecure.com\/wp-content\/uploads\/2026\/05\/picture1.webp 755w, https:\/\/www.withsecure.com\/wp-content\/uploads\/2026\/05\/picture1-300x132.webp 300w, https:\/\/www.withsecure.com\/wp-content\/uploads\/2026\/05\/picture1-447x197.webp 447w, https:\/\/www.withsecure.com\/wp-content\/uploads\/2026\/05\/picture1-331x146.webp 331w\" sizes=\"auto, (max-width: 755px) 100vw, 755px\" \/><\/p>\n<div class=\"image aem-GridColumn aem-GridColumn--default--12\">\n<div id=\"image-a0026cc314\" class=\"cmp-image\" data-cmp-is=\"image\" data-cmp-widths=\"480,768,992,1280,1920\" data-cmp-src=\"\/adobe\/dynamicmedia\/deliver\/dm-aid--d784fae8-9718-4d99-b859-b0c71de1a321\/picture1.jpg?quality=82&amp;width={width}&amp;preferwebp=true\" data-asset-id=\"d784fae8-9718-4d99-b859-b0c71de1a321\" data-cmp-filereference=\"\/content\/dam\/labs\/images\/picture1.jpg\" data-cmp-hook-image=\"imageV3\"><span class=\"cmp-image__title\">Figure 1. File content of \u201cr.bat\u201d batch script<\/span><\/div>\n<\/div>\n<div class=\"businessRichtext parbase aem-GridColumn aem-GridColumn--default--12\">\n<p>KrustyLoader is an initial-stage malware written in Rust. The primary purpose of the malware is to download and launch a second-stage payload. Our preliminary analysis indicates that the high-level behavior of the Windows variant is comparable to its Linux build, which has been outlined in a report\u00a0<a href=\"https:\/\/www.synacktiv.com\/en\/publications\/krustyloader-rust-malware-linked-to-ivanti-connectsecure-compromises\" target=\"_blank\" rel=\"noopener\">here<\/a>.<\/p>\n<p>In a nutshell, the malware does the following:<\/p>\n<ul>\n<li>Performs a series of anti-sandbox and anti-analysis checks throughout, including:\n<ul>\n<li>Checking whether the initial malware is executed from \u201cC:\\Windows\\Temp\\\u201d directory.<\/li>\n<li>Checking for the existence of a file \u201cC:\\Windows\\Temp\\0\u201d, which is dropped at an earlier stage of the attack chain.<\/li>\n<li>Checking if the process is being debugged via IsDebuggerPresent()<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<ul>\n<li>\u00a0The malware moves itself to %TEMP%\\.&lt;processImageName&gt;.&lt;32randomCharacters1&gt;.__relocated__.exe\n<ul>\n<li><small>It then makes a copy of itself called %TEMP%\\.&lt;processImageName&gt;.&lt;32randomCharacters2&gt;.__selfdelete__.exe with flag \u201cFILE_FLAG_DELETE_ON_CLOSE\u201d which removes itself automatically when all file handles to it are closed (essentially self-deleting itself at the end).<\/small><\/li>\n<li>It launches the \u201c__selfdelete__\u201d copy with a numeric value and the \u201c__relocated__\u201d binary as its arguments.\n<ul>\n<li><small>This process eventually deletes the \u201c__relocated__\u201d binary and launches \u201ccmd.exe \/c exit\u201d command.<\/small><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<ul>\n<li>The malware decrypts the second stage URL, which is XOR-encoded and encrypted via AES-128 CFB mode using key\/IV from its hardcoded configuration.\n<ul>\n<li>The configuration contains a 16-byte key followed by a 16-byte IV, a temporary path where the binary is meant to be located (\u201cC:\\Windows\\Temp\\\u201d in Windows and \u201c\\tmp\\\u201d in Linux), and finally the encoded and encrypted second stage URL.<\/li>\n<li>The configuration is appended by repeated \u201c|||\u201d<\/li>\n<\/ul>\n<div><\/div>\n<\/li>\n<li>The malware downloads the second-stage payload via the decrypted URL.\n<ul>\n<li>The payload, which is also encrypted, is decrypted via AES-128 CFB mode using the same AES key\/IV found in the hardcoded configuration.<\/li>\n<\/ul>\n<\/li>\n<li>The malware ultimately injects the decrypted payload into explorer.exe.<\/li>\n<\/ul>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-7409 size-full\" src=\"https:\/\/www.withsecure.com\/wp-content\/uploads\/2026\/05\/picture2.webp\" alt=\"\" width=\"755\" height=\"588\" srcset=\"https:\/\/www.withsecure.com\/wp-content\/uploads\/2026\/05\/picture2.webp 755w, https:\/\/www.withsecure.com\/wp-content\/uploads\/2026\/05\/picture2-300x234.webp 300w, https:\/\/www.withsecure.com\/wp-content\/uploads\/2026\/05\/picture2-447x348.webp 447w, https:\/\/www.withsecure.com\/wp-content\/uploads\/2026\/05\/picture2-187x146.webp 187w\" sizes=\"auto, (max-width: 755px) 100vw, 755px\" \/><\/p>\n<div class=\"image aem-GridColumn aem-GridColumn--default--12\">\n<div id=\"image-2bd0ddfe1c\" class=\"cmp-image\" data-cmp-is=\"image\" data-cmp-widths=\"480,768,992,1280,1920\" data-cmp-src=\"\/adobe\/dynamicmedia\/deliver\/dm-aid--84f08bdf-5879-4f54-9995-1e004e00b32d\/picture2.jpg?quality=82&amp;width={width}&amp;preferwebp=true\" data-asset-id=\"84f08bdf-5879-4f54-9995-1e004e00b32d\" data-cmp-filereference=\"\/content\/dam\/labs\/images\/picture2.jpg\" data-cmp-hook-image=\"imageV3\"><span class=\"cmp-image__title\">Figure 2. KrustyLoader Windows vs Linux configuration comparison<\/span><\/div>\n<\/div>\n<div class=\"businessRichtext parbase aem-GridColumn aem-GridColumn--default--12\">\n<p>KrustyLoader has been known to deliver Sliver C2, an open-source post-exploitation toolkit, as its second-stage payload. Similarly, all samples analyzed by WithSecure in the latest campaign led to Sliver payloads as well. Moreover, the Sliver C2 domains (farstream[.]org and sysupdates[.]org) used in the latest campaign match those\u00a0<a href=\"https:\/\/www.synacktiv.com\/en\/publications\/krustyloader-rust-malware-linked-to-ivanti-connectsecure-compromises\" target=\"_blank\" rel=\"noopener noreferrer\">reportedly<\/a>\u00a0seen through KrustyLoader staged via Ivanti ConnectSecure exploitation in January 2024.<\/p>\n<p>Researchers that found and\u00a0<a href=\"https:\/\/www.synacktiv.com\/en\/publications\/krustyloader-rust-malware-linked-to-ivanti-connectsecure-compromises\" target=\"_blank\" rel=\"noopener noreferrer\">reported<\/a>\u00a0on the Linux variant of KrustyLoader have written a configuration extractor which can parse and extract the XOR key, AES key\/IV, and decrypted second-stage URL from KrustyLoader samples. To assist researchers, we have updated the configuration extractor to work with the Windows variants of KrustyLoader seen in the latest campaign as well. We will shortly make a pull request to the original extractor found\u00a0<a href=\"https:\/\/github.com\/synacktiv\/krustyloader-analysis\" target=\"_blank\" rel=\"noopener noreferrer\">here<\/a>.<\/p>\n<p>A screenshot of the updated configuration being executed on all the latest Windows samples is shown below.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-7410 size-full\" src=\"https:\/\/www.withsecure.com\/wp-content\/uploads\/2026\/05\/picture3.webp\" alt=\"\" width=\"755\" height=\"385\" srcset=\"https:\/\/www.withsecure.com\/wp-content\/uploads\/2026\/05\/picture3.webp 755w, https:\/\/www.withsecure.com\/wp-content\/uploads\/2026\/05\/picture3-300x153.webp 300w, https:\/\/www.withsecure.com\/wp-content\/uploads\/2026\/05\/picture3-447x228.webp 447w, https:\/\/www.withsecure.com\/wp-content\/uploads\/2026\/05\/picture3-286x146.webp 286w\" sizes=\"auto, (max-width: 755px) 100vw, 755px\" \/><\/p>\n<div class=\"container\">\n<div class=\"root responsivegrid\">\n<div class=\"aem-Grid aem-Grid--12 aem-Grid--default--12 \">\n<div class=\"responsivegrid aem-GridColumn aem-GridColumn--default--12\">\n<div class=\"aem-Grid aem-Grid--12 aem-Grid--default--12 \">\n<div class=\"responsivegrid main-content aem-GridColumn aem-GridColumn--default--12\">\n<div class=\"aem-Grid aem-Grid--12 aem-Grid--default--12 \">\n<div class=\"responsivegrid main-content aem-GridColumn aem-GridColumn--default--12\">\n<div class=\"aem-Grid aem-Grid--12 aem-Grid--default--12 \">\n<div class=\"customContainer parbase aem-GridColumn aem-GridColumn--default--12\">\n<div id=\"container-2131373143\" class=\"wsbg-spot container-2131373143 image-div\">\n<div class=\"custom-container container\">\n<div class=\"aem-Grid aem-Grid--12 aem-Grid--default--12 aem-Grid--sm--12 aem-Grid--xs--12 \">\n<div class=\"customContainer parbase aem-GridColumn--sm--7 aem-GridColumn--sm--none aem-GridColumn--default--none aem-GridColumn--offset--xs--0 aem-GridColumn--offset--sm--0 aem-GridColumn aem-GridColumn--xs--none aem-GridColumn--default--12 aem-GridColumn--offset--default--0 aem-GridColumn--xs--12\">\n<div id=\"container-2819272984\" class=\"wsbg-spot container-2819272984 image-div\">\n<div class=\"custom-container container\">\n<div class=\"aem-Grid aem-Grid--12 aem-Grid--default--12 \">\n<div class=\"image aem-GridColumn aem-GridColumn--default--12\">\n<div id=\"image-c6b8bebc42\" class=\"cmp-image\" data-cmp-is=\"image\" data-cmp-widths=\"480,768,992,1280,1920\" data-cmp-src=\"\/adobe\/dynamicmedia\/deliver\/dm-aid--397320ee-14a9-4322-abdc-61595a5d8464\/picture3.jpg?quality=82&amp;width={width}&amp;preferwebp=true\" data-asset-id=\"397320ee-14a9-4322-abdc-61595a5d8464\" data-cmp-filereference=\"\/content\/dam\/labs\/images\/picture3.jpg\" data-cmp-hook-image=\"imageV3\"><span class=\"cmp-image__title\">Figure 3. Latest Windows samples configuration via updated extractor<\/span><\/div>\n<\/div>\n<div class=\"anchor aem-GridColumn aem-GridColumn--default--12\">\n<div id=\"part3\" class=\"cmp-anchor cmp-anchor--offset\"><\/div>\n<\/div>\n<div class=\"title parbase aem-GridColumn aem-GridColumn--default--12\">\n<h2 class=\"cmp-title__text grey-text\">Part of a continuing campaign<\/h2>\n<\/div>\n<div class=\"businessRichtext parbase aem-GridColumn aem-GridColumn--default--12\">\n<p>WithSecure identified 14 versions of the Windows KrustyLoader variant in VirusTotal, all observed samples have multiple detections and use Amazon S3 bucket URLs for second-stage payloads. The first file was submitted on 2023.10.06, with newer versions being submitted relatively regularly from then up until 2024.02.22, when multiple files with different hashes are seen in a short time frame.<\/p>\n<p>Files uploaded after 2024.02.20 are highly likely all associated with ScreenConnect exploitation campaigns, the older files however appear to be associated with mass exploitation campaigns targeting other critical vulnerabilities.<\/p>\n<\/div>\n<div class=\"space aem-GridColumn aem-GridColumn--default--12\">\n<div class=\"cmp-space \"><\/div>\n<\/div>\n<div class=\"title parbase aem-GridColumn aem-GridColumn--default--12\">\n<h2 class=\"cmp-title__text grey-text\">TeamCity CVE-2023-42793<\/h2>\n<\/div>\n<div class=\"businessRichtext parbase aem-GridColumn aem-GridColumn--default--12\">\n<p>In a\u00a0<a href=\"https:\/\/www.fortinet.com\/blog\/threat-research\/teamcity-intrusion-saga-apt29-suspected-exploiting-cve-2023-42793\" target=\"_blank\" rel=\"noopener noreferrer\">blogpost<\/a> by Fortinet researchers which focused on APT29 exploitation of TeamCity vulnerability CVE-2023-42793 in September 2023 they included a section on exploitation activity by actors other than APT29 which they observed during their research. One such thread is very similar to the KrustyLoader\/ScreenConnect activity we have observed, first touching\/writing to C:\/Windows\/Temp\/0, then using Powershell to download a payload from an Amazon AWS S3 bucket and write it to C:\/Windows\/Temp\/1.exe.<\/p>\n<\/div>\n<div class=\"space aem-GridColumn aem-GridColumn--default--12\">\n<div class=\"cmp-space \"><\/div>\n<\/div>\n<div class=\"title parbase aem-GridColumn aem-GridColumn--default--12\">\n<h2 class=\"cmp-title__text grey-text\">ApacheMQ CVE-2023-46604<\/h2>\n<\/div>\n<div class=\"businessRichtext parbase aem-GridColumn aem-GridColumn--default--12\">\n<p>We have also observed similar remote exploitation activity being performed in November 2023,\u00a0targeting the ApacheMQ vulnerability CVE-2023-46604. An XML file downloaded from atlas-external.s3.amazonaws[.]com exploits that vulnerability to download KrustyLoader from beansdeals-static.s3.amazonaws[.]com and save it to C:\/Windows\/Temp\/1.exe, before then executing it.<\/p>\n<\/div>\n<div class=\"anchor aem-GridColumn aem-GridColumn--default--12\">\n<div id=\"part6\" class=\"cmp-anchor cmp-anchor--offset\"><\/div>\n<\/div>\n<div class=\"title parbase aem-GridColumn aem-GridColumn--default--12\">\n<h2 class=\"cmp-title__text grey-text\">Ivanti ConnectSecure CVE-2023-46805 &amp; CVE-2024-21887<\/h2>\n<\/div>\n<div class=\"businessRichtext parbase aem-GridColumn aem-GridColumn--default--12\">\n<p>In January 2024 of course, Ivanti ConnectSecure exploitation was all the rage, and the threat actor behind this activity was also observed exploiting Ivanti ConnectSecure appliances. Indeed, this is when the Linux variant of KrustyLoader was\u00a0<a href=\"https:\/\/www.synacktiv.com\/en\/publications\/krustyloader-rust-malware-linked-to-ivanti-connectsecure-compromises\" target=\"_blank\" rel=\"noopener noreferrer\">named<\/a>\u00a0by Synacktiv. While they detail a Linux malware, the actions taken by the Windows variant are very similar, simply performed in a different way. Most telling of course are the S3 bucket URLs used for hosting.<\/p>\n<p>At around the same time, Darktrace also\u00a0<a href=\"https:\/\/darktrace.com\/blog\/the-unknown-unknowns-post-exploitation-activities-of-ivanti-cs-ps-appliances\" target=\"_blank\" rel=\"noopener noreferrer\">reported<\/a>\u00a0on network activity observed from compromised Ivanti ConnectSecure devices which once again used S3 buckets to host what they describe as probable Rust based ELF payloads, which it is reasonable to assume at this point were also Linux KrustyLoader variants.<\/p>\n<\/div>\n<div class=\"anchor aem-GridColumn aem-GridColumn--default--12\">\n<div><\/div>\n<h2 id=\"part7\" class=\"cmp-anchor cmp-anchor--offset\"><span style=\"font-family: 'Titling Gothic FB', serif; font-size: 24px;\">Conclusions<\/span><\/h2>\n<\/div>\n<div class=\"businessRichtext parbase aem-GridColumn aem-GridColumn--default--12\">\n<p>Combining these samples, the infrastructure overlap, and reporting from other researchers, we can identify that a threat actor has been exploiting vulnerable Internet facing devices as part of an ongoing campaign beginning in at least September 2023, deploying both Windows and Linux variants of KrustyLoader, while regularly changing their methods to exploit whatever is the latest critical, mass-exploitation friendly vulnerability of the day. We still do not know what the actions on\u00a0objectives of the actor are at the time of writing \u2013 possibly operating as an initial access broker, however it is probably prudent to assume that access persists they will almost certainly develop into more impactful incidents.<\/p>\n<\/div>\n<div class=\"anchor aem-GridColumn aem-GridColumn--default--12\">\n<div id=\"part8\" class=\"cmp-anchor cmp-anchor--offset\"><\/div>\n<\/div>\n<div class=\"space aem-GridColumn aem-GridColumn--default--12\">\n<div class=\"cmp-space \"><\/div>\n<\/div>\n<div class=\"title parbase aem-GridColumn aem-GridColumn--default--12\">\n<h2 class=\"cmp-title__text grey-text\">IOCs<\/h2>\n<\/div>\n<div class=\"businessRichtext parbase aem-GridColumn aem-GridColumn--default--12\">\n<table border=\"0\" width=\"624\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td valign=\"top\" width=\"387\"><b>SHA1s<\/b><\/td>\n<td valign=\"top\" width=\"237\"><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>7245063d336358d149d68827ef7a0f4362b9636d<\/b><\/td>\n<td valign=\"top\" width=\"237\"><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>5e4ce7ed14b7f9f2adc96a757c998c4cbf044b4f<\/b><\/td>\n<td valign=\"top\" width=\"237\"><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>59e2fd0f9ce79b3c9c09fadebb6339eb35ec8dc9<\/b><\/td>\n<td valign=\"top\" width=\"237\"><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>904934e4963afdc3c4898988ec0e68ef5a4c6892<\/b><\/td>\n<td valign=\"top\" width=\"237\"><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>9d8bbaa4be5bee3d8b099669918bf2e449dcaf3b<\/b><\/td>\n<td valign=\"top\" width=\"237\"><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>2d96c3fd78dfcd3eb2b38914bc4f03d48685739d<\/b><\/td>\n<td valign=\"top\" width=\"237\"><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>e732b6e17296731dc3e87eacfcabc1806a12dc7e<\/b><\/td>\n<td valign=\"top\" width=\"237\"><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>55c6f1b5a930834ac97e7038f8454f1057767087<\/b><\/td>\n<td valign=\"top\" width=\"237\"><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>54fe7f1c71139b3d6d41bcad47798a3f7eb8cd0e<\/b><\/td>\n<td valign=\"top\" width=\"237\"><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>cc504e720745db5061e41528a2d36976b20bc0e7<\/b><\/td>\n<td valign=\"top\" width=\"237\"><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>438c839b28b047c50fc876b2a8646c138e4a0afa<\/b><\/td>\n<td valign=\"top\" width=\"237\"><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>351bfe0b2abb56de350e2d2c3c29916f658860b3<\/b><\/td>\n<td valign=\"top\" width=\"237\"><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>a66d76d86448965e57d7be96a57529c497e4b99d<\/b><\/td>\n<td valign=\"top\" width=\"237\"><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>7b6eb60a09c1185cd599c11ae44943398e0af61e<\/b><\/td>\n<td valign=\"top\" width=\"237\"><\/td>\n<\/tr>\n<tr>\n<td><\/td>\n<td><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>URLs<\/b><\/td>\n<td valign=\"top\" width=\"237\"><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>blog-app-system2.s3.amazonaws[.]com<\/b><\/td>\n<td valign=\"top\" width=\"237\"><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>banglarchokhprotidin.s3-ap-southeast-1[.]amazonaws.com<\/b><\/td>\n<td valign=\"top\" width=\"237\"><i>First stage URLs &#8211; leading to Windows version of KrustyLoader<\/i><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>atlas-external.s3.amazonaws[.]com<\/b><\/td>\n<td valign=\"top\" width=\"237\"><i>This hosts apacheMQ exploit file<\/i><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>beansdeals-static.s3.amazonaws[.]com<\/b><\/td>\n<td valign=\"top\" width=\"237\"><i>apacheMQ exploit payload URL<\/i><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>mapimages.fews.net.s3.amazonaws[.]com<\/b><\/td>\n<td valign=\"top\" width=\"237\"><i>First stage URLs &#8211; leading to Windows version of KrustyLoader<\/i><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>shapefiles.fews.net.s3.amazonaws[.]com<\/b><\/td>\n<td valign=\"top\" width=\"237\"><i>First stage URLs &#8211; leading to Windows version of KrustyLoader<\/i><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>brandnav-cms-storage.s3.amazonaws[.]com<\/b><\/td>\n<td valign=\"top\" width=\"237\"><i>First stage URLs &#8211; leading to Windows version of KrustyLoader<\/i><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>download.memsql.com.s3.amazonaws[.]com<\/b><\/td>\n<td valign=\"top\" width=\"237\"><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>ampdfiles.s3.amazonaws[.]com\/xUh1knpb9crPo<\/b><\/td>\n<td valign=\"top\" width=\"237\"><i>Second Stage &#8211; Leading to Sliver<\/i><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>bbr-promo.s3.amazonaws[.]com\/eLB70GIv4Cs83<\/b><\/td>\n<td valign=\"top\" width=\"237\"><i>Second Stage &#8211; Leading to Sliver<\/i><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>be-at-home.s3.ap-northeast-2.amazonaws[.]com:80\/XOfVba0UXwdFT<\/b><\/td>\n<td valign=\"top\" width=\"237\"><i>Second Stage &#8211; Leading to Sliver<\/i><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>bigai-lei.s3.amazonaws[.]com\/mpXwO9dmwyEqE<\/b><\/td>\n<td valign=\"top\" width=\"237\"><i>Second Stage &#8211; Leading to Sliver<\/i><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>uk.farstream[.]org<\/b><\/td>\n<td valign=\"top\" width=\"237\"><i>SliverC2<b><\/b><\/i><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>us.farstream[.]org<\/b><\/td>\n<td valign=\"top\" width=\"237\"><i>SliverC2<b><\/b><\/i><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>jp.sysupdates[.]org<\/b><\/td>\n<td valign=\"top\" width=\"237\"><i>SliverC2<b><\/b><\/i><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>ca.sysupdates[.]org<\/b><\/td>\n<td valign=\"top\" width=\"237\"><i>SliverC2<b><\/b><\/i><\/td>\n<\/tr>\n<tr>\n<td><\/td>\n<td><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>Darktrace IOCs<\/b><\/td>\n<td valign=\"top\" width=\"237\"><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>be-at-home.s3.ap-northeast-2.amazonaws[.]com<\/b><\/td>\n<td valign=\"top\" width=\"237\"><i>Overlap with ScreenConnect<\/i><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>abode-dashboard-media.s3.ap-south-1.amazonaws[.]com<\/b><\/td>\n<td valign=\"top\" width=\"237\"><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>archivevalley-media.s3.amazonaws[.]com<\/b><\/td>\n<td valign=\"top\" width=\"237\"><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>blooming.s3.amazonaws[.]com<\/b><\/td>\n<td valign=\"top\" width=\"237\"><i>Reported beaconing to music.farstream[.]org<\/i><\/td>\n<\/tr>\n<tr>\n<td><\/td>\n<td><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>Synaktiv IOCs<\/b><\/td>\n<td valign=\"top\" width=\"237\"><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>bbr-promo.s3.amazonaws[.]com<\/b><\/td>\n<td valign=\"top\" width=\"237\"><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"387\"><b>bringthenoiseappnew.s3.amazonaws[.]com<\/b><\/td>\n<td valign=\"top\" width=\"237\"><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<div class=\"space aem-GridColumn aem-GridColumn--default--12\">\n<div class=\"cmp-space \"><\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<footer class=\"cmp_footer width-full\">\n<div class=\"cmp_footer__wrapper\">\n<div class=\"cmp_footer__top\">\n<div class=\"cmp_footer__logo\"><\/div>\n<\/div>\n<\/div>\n<\/footer>\n<\/div>\n<p>&nbsp;<\/p>\n<\/div>\n<p>&nbsp;<\/p>\n<\/div>\n<\/div>\n<section\n    class=\"wp-block-sharing-icons edwp-block wp-block-sharing-icons--disable-border wp-block-sharing-icons--disable-container wp-block-two-column-block__share wp-block-two-column-block__mobile-after-right wp-block-two-column-block__share wp-block-two-column-block__mobile-after-right\"\n    >\n    <div class=\"wp-block-sharing-icons__container\">\n        <div class=\"wp-block-sharing-icons__inner\">\n                            <p class=\"wp-block-sharing-icons__title fade-in\">\n                    Share this story                <\/p>\n                        <div class=\"wp-component-socials wp-component-socials--dark-mode\">\n    \n            <a href=\"https:\/\/www.linkedin.com\/shareArticle?mini=true&#038;url=https:\/\/www.withsecure.com\/en\/resources-hub\/w-labs\/krustyloader-windows-variant-dropped-via-screenconnect-exploit\/&#038;title=KrustyLoader%20Windows%20variant%20dropped%20via%20ScreenConnect%20exploit\" target=\"_blank\" rel=\"noreferer noopener\" class=\"wp-component-socials__link\" title=\"Share on Linkedin\">\n            <svg class='edwp-icon edwp-icon--xlg js-icon ' aria-hidden='true'>\n                <use xlink:href='#linkedin'><\/use>\n            <\/svg>        <\/a>\n    \n            <a href=\"http:\/\/x.com\/share?text=KrustyLoader Windows variant dropped via ScreenConnect exploit&#038;url=https:\/\/www.withsecure.com\/en\/resources-hub\/w-labs\/krustyloader-windows-variant-dropped-via-screenconnect-exploit\/\" target=\"_blank\" rel=\"noreferer noopener\" class=\"wp-component-socials__link wp-component-socials__link--twitter\" title=\"Share on Twitter\">\n            <svg class='edwp-icon edwp-icon--xlg js-icon ' aria-hidden='true'>\n                <use xlink:href='#x'><\/use>\n            <\/svg>        <\/a>\n    \n    \n    <\/div>\n        <\/div>\n    <\/div>\n<\/section>\n                <\/div>\n                        <\/div>\n<\/section>\n\n\n<section\n    class=\"wp-block-cta-banner edwp-block js-wp-block-cta-banner wp-block-cta-banner--style-icon wp-block-cta-banner--no-image layout--spacing-xxxl-top layout--spacing-xxxl-bottom\"\n    >\n    <div class=\"wp-block-cta-banner__container\">\n        <div class=\"wp-block-cta-banner__box row-load\">\n            <div class=\"wp-component-content wp-component-content--help-text wp-component-content--dark wp-block-cta-banner__content\">\n                        <div class=\"wp-component-content__inner\">\n                <h2 class=\"wp-component-heading text--h2 wp-component-heading--dark wp-component-content__title\">\n    What <span class=\"blue-text\">next?<\/span><\/h2>                                    <div class=\"wp-component-content__content wysiwyg wysiwyg--dark\">\n                        <div class=\"wp-component-paragraph wp-component-paragraph--dark\">\n    <p class=\"text--p-medium\">Discover WithSecure\u2122 Elements Exposure Management.<br \/>\n&#8211; No credit card required. No obligations.No complexity.<\/p>\n<\/div>\n                    <\/div>\n                            <\/div>\n                            <div class=\"wp-component-content__buttons\">\n                <a class=\"wp-component-button btn btn--primary btn--dark\" href=\"https:\/\/www.withsecure.com\/en\/contact-us\/\">Contact us<\/a>            <\/div>\n                <\/div>                    <\/div>\n    <\/div>\n<\/section>\n\n\n\n\n<section\n    class=\"wp-block-cards edwp-block wp-block-cards--col-3 js-wp-block-cards wp-block-cards--show-overflow wp-block-cards--auto-slides-per-view layout--spacing-xxxl-top layout--spacing-xxxl-bottom\"\n    >\n    <div class=\"wp-block-cards__container\">\n        <div class=\"wp-component-content wp-component-content--default wp-block-cards__content\">\n            <h2 class=\"wp-component-heading text--h2 wp-component-content__title\">\n    Related <span class=\"blue-text\">Labs content<\/span><\/h2>                    <div class=\"wp-component-content__inner\">\n                                    <div class=\"wp-component-content__content wysiwyg\">\n                        <div class=\"wp-component-paragraph \">\n    <p class=\"text--p-medium\"><span data-teams=\"true\">Find related content relating to this topic.<\/span><\/p>\n<\/div>\n                    <\/div>\n                                                            <\/div>\n                <\/div>                            <div\n                class=\"swiper wp-block-cards__swiper js-wp-block-cards-swiper\"\n                data-slides-per-view-desktop=\"auto\"\n                data-slides-per-view-tablet=\"auto\"\n                data-slides-per-view-mobile=\"auto\"\n            >\n                <div class=\"swiper-wrapper wp-block-cards__swiper-wrapper row-load\">\n                                            <div class=\"swiper-slide wp-block-cards__slide\">\n                            <div class=\"wp-component-card-insight wp-block-cards__card wp-component-card-insight--highlighted\">\n    <div class=\"wp-component-card-insight__image-wrapper\">\n        <img loading=\"lazy\" decoding=\"async\" width=\"618\" height=\"440\" src=\"https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/placeholder.jpg.webp\" class=\"wp-component-card-insight__image\" alt=\"\" srcset=\"https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/placeholder.jpg.webp 618w, https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/placeholder-300x214.jpg.webp 300w, https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/placeholder-447x318.jpg.webp 447w, https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/placeholder-205x146.jpg.webp 205w\" sizes=\"auto, (max-width: 618px) 100vw, 618px\" \/>                    <p class=\"wp-component-card-insight__content-type\">W\/Labs<\/p>\n            <\/div>\n    <div class=\"wp-component-card-insight__content\">\n                    <div class=\"wp-component-card-insight__meta\">\n                <div class=\"wp-component-card-insight__categories\">\n                                            <span class=\"wp-component-card-insight__category\">AI security<\/span>\n                                            <span class=\"wp-component-card-insight__category\">Software Protection<\/span>\n                                            <span class=\"wp-component-card-insight__category\">Threat intelligence<\/span>\n                                    <\/div>\n            <\/div>\n                            <h3 class=\"wp-component-card-insight__title\">GREYVIBE: A Russia-nexus group leveraging AI across state-aligned operations<\/h3>\n                                    <p class=\"wp-component-card-insight__read-time\">15<\/p>\n                                    <div class=\"wp-component-card-insight__button-wrapper\">\n                <a class=\"wp-component-button btn btn--primary btn--dark wp-component-card-insight__button btn--small\" href=\"https:\/\/www.withsecure.com\/en\/resources-hub\/w-labs\/greyvibe\/\">Read more<\/a>            <\/div>\n            <\/div>\n<\/div>                        <\/div>\n                                            <div class=\"swiper-slide wp-block-cards__slide\">\n                            <div class=\"wp-component-card-insight wp-block-cards__card\">\n    <div class=\"wp-component-card-insight__image-wrapper\">\n        <img loading=\"lazy\" decoding=\"async\" width=\"618\" height=\"440\" src=\"https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/placeholder.jpg.webp\" class=\"wp-component-card-insight__image\" alt=\"\" srcset=\"https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/placeholder.jpg.webp 618w, https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/placeholder-300x214.jpg.webp 300w, https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/placeholder-447x318.jpg.webp 447w, https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/placeholder-205x146.jpg.webp 205w\" sizes=\"auto, (max-width: 618px) 100vw, 618px\" \/>                    <p class=\"wp-component-card-insight__content-type\">W\/Labs<\/p>\n            <\/div>\n    <div class=\"wp-component-card-insight__content\">\n                            <h3 class=\"wp-component-card-insight__title\">WithSecure uncovers Russia-nexus threat group using AI to target Ukraine and European organisations<\/h3>\n                                                    <div class=\"wp-component-card-insight__button-wrapper\">\n                <a class=\"wp-component-button btn btn--primary wp-component-card-insight__button btn--small\" href=\"https:\/\/www.withsecure.com\/en\/resources-hub\/w-labs\/10919\/\">Read more<\/a>            <\/div>\n            <\/div>\n<\/div>                        <\/div>\n                                            <div class=\"swiper-slide wp-block-cards__slide\">\n                            <div class=\"wp-component-card-insight wp-block-cards__card\">\n    <div class=\"wp-component-card-insight__image-wrapper\">\n        <img loading=\"lazy\" decoding=\"async\" width=\"1200\" height=\"800\" src=\"https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/ws_labs_research.jpg.webp\" class=\"wp-component-card-insight__image\" alt=\"\" srcset=\"https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/ws_labs_research.jpg.webp 1200w, https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/ws_labs_research-300x200.jpg.webp 300w, https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/ws_labs_research-1024x683.jpg.webp 1024w, https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/ws_labs_research-768x512.jpg.webp 768w, https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/ws_labs_research-447x298.jpg.webp 447w, https:\/\/www.withsecure.com\/wp-content\/smush-webp\/2026\/05\/ws_labs_research-219x146.jpg.webp 219w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/>                    <p class=\"wp-component-card-insight__content-type\">W\/Labs<\/p>\n            <\/div>\n    <div class=\"wp-component-card-insight__content\">\n                    <div class=\"wp-component-card-insight__meta\">\n                <div class=\"wp-component-card-insight__categories\">\n                                            <span class=\"wp-component-card-insight__category\">Attack Detection<\/span>\n                                            <span class=\"wp-component-card-insight__category\">Software Protection<\/span>\n                                            <span class=\"wp-component-card-insight__category\">Threat intelligence<\/span>\n                                    <\/div>\n            <\/div>\n                            <h3 class=\"wp-component-card-insight__title\">DarkGate Rises: New version of DarkGate malware hunts like a Duck but bites like a RAT<\/h3>\n                                            <p class=\"wp-component-card-insight__desc\">Source: https:\/\/labs.withsecure.com\/publications\/darkgate-rises<\/p>\n                            <div class=\"wp-component-card-insight__button-wrapper\">\n                <a class=\"wp-component-button btn btn--primary wp-component-card-insight__button btn--small\" href=\"https:\/\/www.withsecure.com\/en\/resources-hub\/w-labs\/darkgate-rises\/\">Read more<\/a>            <\/div>\n            <\/div>\n<\/div>                        <\/div>\n                                    <\/div>\n                <div class=\"wp-block-cards__nav fade-in\">\n                    <div class=\"wp-block-cards__pagination js-wp-block-cards-pagination\">\n                    <\/div>\n                    <div class=\"wp-block-cards__nav-arrow js-wp-block-cards-nav-prev\">\n                        <svg class='edwp-icon edwp-icon--reg js-icon ' aria-hidden='true'>\n                <use xlink:href='#chevron'><\/use>\n            <\/svg>                    <\/div>\n                    <div class=\"wp-block-cards__nav-arrow js-wp-block-cards-nav-next\">\n                        <svg class='edwp-icon edwp-icon--reg js-icon ' aria-hidden='true'>\n                <use xlink:href='#chevron'><\/use>\n            <\/svg>                    <\/div>\n                <\/div>\n            <\/div>\n                                    <\/div>\n<\/section>\n","protected":false},"excerpt":{"rendered":"<p>Since proof-of-concept code was released for two vulnerabilities in ConnectWise ScreenConnect, en-mass exploitation has started from multiple threat actors<\/p>\n","protected":false},"author":3,"featured_media":8859,"template":"","categories":[231,269],"labs_content_type":[],"class_list":["post-7406","lab_item","type-lab_item","status-publish","has-post-thumbnail","hentry","category-software-protection","category-threat-intelligence"],"acf":[],"card":"<div class=\"wp-component-card-insight js-card-link wp-component-card-insight--highlighted\">\n    <div class=\"wp-component-card-insight__image-wrapper\">\n        <img width=\"1200\" height=\"800\" src=\"https:\/\/www.withsecure.com\/wp-content\/uploads\/2026\/05\/ws_labs_research2.jpg\" class=\"wp-component-card-insight__image\" alt=\"\" decoding=\"async\" loading=\"lazy\" srcset=\"https:\/\/www.withsecure.com\/wp-content\/uploads\/2026\/05\/ws_labs_research2.jpg 1200w, https:\/\/www.withsecure.com\/wp-content\/uploads\/2026\/05\/ws_labs_research2-300x200.jpg 300w, https:\/\/www.withsecure.com\/wp-content\/uploads\/2026\/05\/ws_labs_research2-1024x683.jpg 1024w, https:\/\/www.withsecure.com\/wp-content\/uploads\/2026\/05\/ws_labs_research2-768x512.jpg 768w, https:\/\/www.withsecure.com\/wp-content\/uploads\/2026\/05\/ws_labs_research2-447x298.jpg 447w, https:\/\/www.withsecure.com\/wp-content\/uploads\/2026\/05\/ws_labs_research2-219x146.jpg 219w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/>                    <p class=\"wp-component-card-insight__content-type\">W\/Labs<\/p>\n            <\/div>\n    <div class=\"wp-component-card-insight__content\">\n                    <div class=\"wp-component-card-insight__meta\">\n                <div class=\"wp-component-card-insight__categories\">\n                                            <span class=\"wp-component-card-insight__category\">Software Protection<\/span>\n                                            <span class=\"wp-component-card-insight__category\">Threat intelligence<\/span>\n                                    <\/div>\n            <\/div>\n                            <h3 class=\"wp-component-card-insight__title\">KrustyLoader Windows variant dropped via ScreenConnect exploit<\/h3>\n                                            <p class=\"wp-component-card-insight__desc\">Since proof-of-concept code was released for two vulnerabilities in ConnectWise ScreenConnect, en-mass exploitation has started from multiple threat actors<\/p>\n                            <div class=\"wp-component-card-insight__button-wrapper\">\n                <a class=\"wp-component-button btn btn--primary btn--dark wp-component-card-insight__button btn--small\" href=\"https:\/\/www.withsecure.com\/en\/resources-hub\/w-labs\/krustyloader-windows-variant-dropped-via-screenconnect-exploit\/\">Read more<\/a>            <\/div>\n            <\/div>\n<\/div>","_links":{"self":[{"href":"https:\/\/www.withsecure.com\/en\/wp-json\/wp\/v2\/lab_item\/7406","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.withsecure.com\/en\/wp-json\/wp\/v2\/lab_item"}],"about":[{"href":"https:\/\/www.withsecure.com\/en\/wp-json\/wp\/v2\/types\/lab_item"}],"author":[{"embeddable":true,"href":"https:\/\/www.withsecure.com\/en\/wp-json\/wp\/v2\/users\/3"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.withsecure.com\/en\/wp-json\/wp\/v2\/media\/8859"}],"wp:attachment":[{"href":"https:\/\/www.withsecure.com\/en\/wp-json\/wp\/v2\/media?parent=7406"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.withsecure.com\/en\/wp-json\/wp\/v2\/categories?post=7406"},{"taxonomy":"labs_content_type","embeddable":true,"href":"https:\/\/www.withsecure.com\/en\/wp-json\/wp\/v2\/labs_content_type?post=7406"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}