Search/gmail[.]com
● IOC

gmail[.]com

Type
DOMAIN
Source
News extraction
First seen
Sep 2, 2025
Last seen
Aug 26, 2026
Look up on VirusTotal
Related Stories
2
Tracking PavinLoader across ClickFix and fake download campaigns
In our previous analysis of the malicious RenPy campaigns, we identified a multi-stage loader deployed as part of the infection chain. Further threat hunting has since shown that the same loader, which we track as PavinLoader , is being used across several different campaigns, including ClickFix attacks and fake software downloads.  Despite differences in how these campaigns reach victims, we found several common elements. These include multi-stage infection chains involving heavily obfuscated and trojanized .NET DLLs; abuse of MSBuild, .csproj , and .bat files to execute them; and EtherHiding to retrieve the command-and-control (C2) domain.  What an attack looks like The campaigns don’t all start the same way. A victim might encounter a fake CAPTCHA that tells them to run a command, download what appears to be legitimate software, or install a malicious game. What happens next is much more consistent. PavinLoader uses legitimate Windows tools alongside malicious .NET files to run several stages of malware. It also uses EtherHiding, a technique that uses a blockchain to hide information about its infrastructure, to find the server from which it should retrieve additional malware. In the RenPy campaign we analyzed, that process ultimately led to Amatera Stealer , malware designed to steal information from an infected computer. We also observed PavinLoader infections delivering additional malware. PavinLoader appears across multiple campaigns We have identified PavinLoader in several campaign clusters:  Malicious RenPy campaigns, as analyzed in our earlier blog post Several ClickFix campaigns, including recent activity from the operator(s) covered in our previous analysis Fake software campaigns that used Dropbox to download PavinLoader.  The loader’s use across multiple campaigns raises the possibility that PavinLoader is offered as a Loader-as-a-Service. We also found several artifacts that support this possibility, although they are not enough to confirm it. One specific artifact on VirusTotal is shared by more than 200 files associated with PavinLoader, suggesting it may be a compilation artifact of the build process. We also found a PowerShell script uploaded to VirusTotal containing comments such as EDIT HERE and REPLACE with a real direct link to your .bat . The associated BAT file contains the string Automated builder helper . However, we haven’t found a build panel or sales channels that would confirm PavinLoader is being offered commercially. The PowerShell script . Click to enlarge Part of the BAT file . Click to enlarge   Although PavinLoader has changed over time, the campaigns we analyzed share several characteristics: Inno Setup or MSI installers generated with different builders that run the .bat and/or .csproj files Trojanized .NET DLLs, including DotNetZip, Nancy, Renci.SshNet, and OpenXML. In most of the cases analyzed, the inserted malicious methods follow a TwoWords or TwoWordsNumber naming pattern, such as DefaultEvaluator5 , and FallbackFactory5 A common obfuscation technique used across the .NET DLLs A naming convention based on two random words, such as  GollopDevest , UnbrandRunover , and PavinWide , for DLL names, functions, strings, C2 paths, and other artifacts EtherHiding to obtain the C2 domain, followed by HTTP requests using paths such as assets/{two random words}.json to retrieve subsequent stages. C2 domains commonly use the .lat , .icu , .shop , and .cfd top-level domains MSBuild mechanisms for loading and executing code from DLLs, including property functions such as [System.Reflection.Assembly]::Load(...) and UsingTask Recurring filename patterns such as name_4characters.cmd/bat/msi/exe —for example, prefetch_9a59.cmd , telemetry_55db.cmd , and bootstrap_64be.cmd —or random nine-character names such as aegZpQ4C7.bat . We also observed short names including Small.msi , small.bat , and small.cmd PavinLoader consists of several .NET DLLs, and in the cases analyzed we identified the following stages:  Loader DLL : A trojanized DLL—such as the Nancy one analyzed in our previous RenPy article—or a custom DLL. It performs anti-forensics and anti-analysis operations, changes network settings needed for the next operations, and loads the EtherHiding Loader EtherHiding Loader DLL : Obtains the C2 through EtherHiding and downloads the next stages from it  Anti-Analysis DLL : Performs extensive anti-analysis checks to detect virtualized environments.  PE Loader DLL : Loads the final PE payload. Intermediate payloads can vary depending on the campaign configuration. First, we’ll look at some of the methods used to distribute the initial PavinLoader stages. We’ll then return to the RenPy loader campaign we analyzed in our previous article to examine the loader’s later stages.  Technical analysis The rest of this article takes a closer look at how PavinLoader is distributed and how each stage of the loader works. How PavinLoader is delivered We have observed PavinLoader being delivered through several ClickFix campaigns. In particular, we detected that the ClickFix cluster analyzed in a previous article has recently started using PavinLoader. Abuse of MSBuild and the use of .csproj and .bat files remain common across the infection chains we observed. We covered one example in our previous RenPy analysis. Here, we’ll look at several other distribution methods.  The ClickFix Cloudflare page associated with this campaign . Click to enlarge   As we saw in our previous analysis of these ClickFix campaigns, the associated PowerShell scripts change frequently. We found several versions in this activity, including both obfuscated and unobfuscated scripts. The PowerShell script associated with the ClickFix campaign. Click to enlarge In this example, the downloaded MSI from the Cloudflare bucket is called Installer_57be78.msi.  MSI content . Click to enlarge The package contains: prefetch_2f76.exe : The legitimate MSBuild executable prefetch_2f76.csproj : Used to execute the Loader DLL through UsingTask DotNetZip.dll : The Loader DLL The .csproj file is executed with: "C:\Users\{USER}\AppData\Local\Logitech\Device Configuration Helper\prefetch_2f76.exe" /nologo "C:\Users\{USER}\AppData\Local\Logitech\Device Configuration Helper\prefetch_2f76.csproj" /nr:false The Loader DLL is a trojanized version of DotNetZip and is executed using the UsingTask element. “UsingTask” used to execute the DLL . Click to enlarge The malicious method inserted in the trojanized DLL. Click to enlarge.  Unlike the RenPy example discussed in our previous article, the EtherHiding Loader is extracted from the DLL itself. An embedded resource is used as an index to extract bytes directly from the DLL, rather than obtaining those indexes from the .csproj file. We detected another campaign that uses BAT files containing fake BUILD VERIFICATION REPORT comments, apparently intended to make analysis and detection more difficult. In this case, the MSI CustomAction executes the BAT script with: cmd.exe /c C:\Users\{USER}\AppData\Local\Conexant\lite_bootstrap_2.1.7\updater_8219.cmd /launched Fake comments inserted in the updater_8219.cmd . Click to enlarge The obfuscated code appears below the fake comments. It concatenates multiple strings and uses indices generated through simple mathematical operations to reconstruct them. We found this type of obfuscation in most of the BAT files we analyzed. The obfuscated part of the .cmd file . Click to enlarge The BAT file locates conhost.exe and relaunches itself with: "C:\WINDOWS\System32\conhost.exe" --headless cmd.exe /c "C:\Users\{USER}\AppData\Local\Conexant\lite_bootstrap_2.1.7\updater_8219.cmd" /launched It then sets the MSBUILDENABLEALLPROPERTYFUNCTIONS=1 environment variable, locates MSBuild.exe , and executes it using the same file as input: "C:\WINDOWS\Microsoft.NET\Framework64\v4.0.30319\MSBuild.exe" "C:\Users\{USER}\AppData\Local\Conexant\lite_bootstrap_2.1.7\updater_8219.cmd" In this case, the Loader DLL is reconstructed by concatenating and decoding four Base64-encoded variables. Part of the CMD file showing the loading process. Click to enlarge The Loader DLL has a random name and appears to be an older version because it does not contain the custom bytecode and encrypted strings in its resources. As in the RenPy campaign analyzed previously, this stage retrieves the EtherHiding Loader stored between a Build-... marker in the CMD file through the _vezr environment variable, then decodes it using XOR with a 32-byte key. The extracted Loader DLL. Click to enlarge Having looked at several methods used to distribute PavinLoader’s first two stages, we will now return to the RenPy infection chain from our previous analysis and examine the loader itself in more detail. Analyzing PavinLoader The .NET DLLs associated with PavinLoader are heavily obfuscated using control-flow flattening, custom bytecode, indirect calls through calli / ldftn , string encryption with different algorithms, API hashing and delegates, redundant methods, and junk code and strings. We did not identify a known obfuscator associated with the samples, so to the best of our knowledge, PavinLoader uses a custom obfuscator. Because fully deobfuscating the samples would be complex, we used a hybrid approach combining dynamic analysis with method invocation through reflection. We identified important methods based on their imports and parameters, invoked them, and analyzed the resulting output. This approach does not provide complete coverage of the execution flow, but it allowed us to identify the loader’s core functionality and extract its intermediate stages. Because different functions frequently share the same names, we use metadata tokens to identify methods throughout the analysis. Nancy trojanized DLL: Loader DLL  We covered this stage in detail in our previous blog post, so we’ll provide only an overview here. In most of the cases analyzed, the Loader DLL is a trojanized legitimate DLL. The malicious method typically uses a {RandomWord} or {RandomWord_Number} naming convention. The DLL contains a resource associated with the custom bytecode interpreted by the main method, two resources containing encrypted strings, and, in some cases, additional resources used as an index for extracting the next stage. Other resources appear to be decoys designed to slow analysis. In the samples we analyzed, this DLL typically: Decrypts strings from resources using multi-key XOR Resolves APIs using API hashing and GetDelegateForFunctionPointer() Changes network settings, including disabling TLS certificate validation and setting the default system proxy Performs an anti-analysis timing check using CreateEventW() , GetTickCount() , and WaitForSingleObject() Performs anti-forensics operations Loads the EtherHiding Loader either by extracting it from a marker inside .csproj or BAT files, or by using a resource as an index to retrieve bytes directly from the DLL GollopDevest: EtherHiding Loader  The EtherHiding Loader has two main functions: obtaining the C2 domain through EtherHiding, and downloading and loading subsequent stages from that C2. Class 0x02000762 is responsible for decrypting strings associated with blockchain and network communication. The strings are decrypted by 0x060027BD as follows:  Function 0x060027BB initializes the S-box using the XOR of the master key activeValues and the Base64-decoded optionsCollection string Function 0x060027BE takes childSyncObject as input and returns index bytes using XOR and permutations based on header values encoded in the first two characters of the string Function 0x060027B9 returns the decrypted string using the indexes and the previously generated S-box This was the only class we found with encryption parameters encoded in this format. For the remaining strings, we identified functions that returned decrypted data based on their parameter signatures—for example, methods returning strings or bytes—and invoked them through reflection. This allowed us to recover more than 1,300 strings. Part of the decrypted strings . Click to enlarge   Among them were strings associated with AMSI and ETW patching: AmsiScanString System.Management.Automation.AmsiUtils System.Management.Automation.AmsiUtils+AmsiNativeMethods ntdll EtwEventWrite NtQueryInformationProcess NtSetInformationThread VirtualProtect More than 100 URLs belonging to legitimate services are also decrypted and used to generate HTTP requests and network noise. We did not observe this behavior in every sample, suggesting it may be build-specific. The Server class ( 0x02000052 ) generates the X-Timestamp , X-Nonce , and X-Signature HTTP headers and makes requests used to retrieve subsequent stages. Two HTTP requests are made to synchronize parameters and obtain the payload, with HMAC used to validate the requests. Using reflection, we executed method 0x06000A77 to obtain the header values needed to retrieve the subsequent stages. The C2 domain is obtained by making an ETH RPC (Remote Procedure Call) to bsc-dataseed.binance.org with the following JSON-RPC body: {"jsonrpc":"2.0","method":"eth_call","params":[{"to":" 0x328a1fadff154290f0ce1389a4e633698cdfdaa7 ","data":"0x06fdde03"},"latest"],"id":1783436775}  The next stages are downloaded from the resulting C2 domain. The XOR-encoded payload is stored in the JSON response under cache.content : {"type":"cache-binary","meta":{"version":"2.3.1","timestamp":"…","platform":"win32-x64"},"cache":{"id":"e2b69…"," content ":" 1c.. "}}  In this case, the C2 paths and XOR keys decrypted from this stage and the anti-analysis DLL are: Path   XOR key   Type/Function   /assets/ExponeAboard.json  QBBBfWow4lb  PavinWride .NET DLL, Anti-analysis   /assets/MailersKogasin.json  WjcsVTKmuoBRqe  GollopDevest .NET DLL, PE Loader  /assets/LanoseThrip.json  WwUX66Br  WPA.exe PE executable, Amatera Stealer  The next stage executed is the anti-analysis DLL.  PavinWride: Anti-analysis DLL  This DLL is responsible for performing several anti-analysis checks.  The anti-analysis DLL executes system calls in different ways:  Standard .NET Base Class Library (BCL) calls, including for registry and network operations Win32 P/Invoke calls, including GetCurrentThread , NtQueryInformationThread , NtQueryInformationProcess , and NtCurrentTeb Win32 APIs resolved through API hashing and a Process Environment Block (PEB) export table walk The function MenuItemService . ProcessDirectory ( 0x06000151 ) is the main method responsible for delegate caching and Win32 API resolution:   It checks if the delegate is already resolved using managerMap.TryGetValue()  If not, it calls ProcessDirectory (0x06000150) to obtain the HMODULE handle It calls ProcessDirectory (0x0600003A) that performs the PE export table walk and matches the hash. We detected that the same hashing output is obtained in several other methods (e.g., 0x06000039 , 0x0600003B , 0x0600004E ) It obtains the delegate with GetDelegateForFunctionPointer() and saves it in the dictionary Results of the API hashing script . Click to enlarge   We used the same reflection approach to get the strings.  Many strings are encrypted with the XOR key 4B729A1F5CE387D6 .  Part of decrypted strings. Click to enlarge   The loader obtains the system’s LCID using GetKeyboardLayoutList() and compares it against more than 17 languages, including Russian, Ukrainian, Belarusian, and Armenian. It also performs extensive system reconnaissance, including enumerating registry keys and calling Win32 APIs such as GetSystemFirmwareTable() and EnumSystemFirmwareTables() to identify virtualized environments. Category   Value   PCI vendor / device IDs   VEN_80EE , VEN_15AD , VEN_1AB8 , VEN_5853 , VEN_1AF4 , VEN_1234&DEV_111 , … SMBIOS/ACPI OEM IDs   VMWARE , VBOX , BOCHS , VRTUAL , MSFTVM , MSHYPR , Xen , Parall , BHYVE , AMAZON , Google ACPI table signatures   VBOX , BXPC , VMW , Xen , PRLS , AMZN , MICR BIOS/manufacturer/product strings   vmware , vmw , innotek , virtualbox , vbox , qemu , seabios , bochs , standard pc , kvm virtual machine , xen , hvm domu , parallels Strings associated with anti-analysis checks Part of the registry key enumeration . Click to enlarge We also observed decrypted references to APIs including GetCurrentProcess() , CreateToolhelp32Snapshot() , Process32First() , Process32Next() , and OpenMutex() , although we did not observe these functions being called during our execution flow. An HTTP request is also made to one of these services:  https://ipv4[.]ipleak[.]net/json/ https://get[.]geojs[.]io/v1/ip/geo[.]json https://ipapi[.]co/json/ https://api[.]ipapi[.]is/ https://ipinfo[.]io/json It also checks the returned data against 96 hosting or infrastructure providers and tests whether the region code is one of: RU , UA , BY , AM , KZ , KG , TJ , UZ , GE , AZ , or MD . Decrypted strings associated with providers . Click to enlarge If the anti-analysis checks pass, the next two stages are downloaded and decrypted using XOR keys. We patched SelectionScope.ProcessDirectory ( 0x06000014 ) to recover the C2 paths and XOR keys for those stages: /assets/MailersKogasin.json|WjcsVTKmuoBRqe|/assets/LanoseThrip.json|WwUX66Br GollopDevest: PE Loader DLL and Amatera Stealer The third DLL has the same name as the second, GollopDevest , but performs PE loading. Among its decrypted strings are: 'GollopMailers LDR DllBase VeneryCondole EdiyaFoully=0x{0:X} EdiyaStelae=0x{1:X}' 'GollopMailers LDR Flags missing IMAGE_DLL 0x{0:X8}' 'GollopMailers LDR SaranPisco invalid 0x{0:X}' 'GollopMailers LDR TlsIndex invalid {0}' 'GollopMailers LDR sanity exception: ' 'HIGHLOW relocation' 'Import DLL name' 'Import FunctusAurata' 'Import INT' 'Import descriptor' 'Import hint/name' 'Import thunk' 'LdrpHandleTlsData outside ntdll .text' 'LdrpReleaseTlsEntry outside ntdll .text' 'LoadConfig32' 'OK' 'PE headers' 'Required API resolve failed: type={0}, FreshBubals={1}, module=0x{2:X}' 'TLS32' 'TLS64' 'x86 disabled until ABI proof' ntdll.dll kernel32.dll LdrpInitializeTls "STATUS_SUCCESS" UNKNOWN(0x00000001) UNKNOWN(0x00000002) UNKNOWN(0x00000003) The ServerEditor.SortMemory method ( 0x06000014 ) checks the PE structure and flags before loading the payload. To confirm this behavior, we invoked the method through reflection using the downloaded WPA.exe file as input. The PE loaded successfully. The C++-compiled PE disguises itself as WPA.exe (Windows Performance Analyzer). We identified the payload as an obfuscated version of Amatera Stealer 4.2.3-alpha1 . It uses control-flow flattening, API hashing, anti-debugging checks, and opaque predicates to complicate analysis. We also detected use of the Heaven’s Gate technique, DNS-over-HTTPS (DoH) resolution through Google DNS, and raw sockets using \Device\Afd\Endpoint for network communication.  Part of the decrypted strings associated with Amatera . Click to enlarge After this stage executes, we also observed additional payloads being downloaded and run from C2 IP addresses. In some cases, WiX Burn bundles downloaded another payload associated with PavinLoader. In others, we detected HijackLoader. This gives the campaign operators the ability to deploy multiple payloads on a compromised machine. IOCs  SHA-256 hashes bdf313a019e025ebf58ccef4619444ee70e661bd444e0644ebeabd8f5caad14c  e3830f5747e3f46537d217124d80c9f3bb4d89f8d4f5138dce69ee54ea4fb6b9  a4f03272cf96732dc9f58bb466d16f358e7f50d46dba30526a9fbebfec11717b  bf04160dd1ce3571e0eb6d6dda1713c788797b5599399d4a93665a757eec376e  54fa8083c05334aa360256fbbb0ca901ce7e244a0359dd664cae78977371ec91  c1ea6d169565c70ac5d812e73483814929e9b3548ead6633595937e71a334adb  001337488c32d8610c2aef6f9330acca825f0afacd071bf6ebfc06b5a1a69f09  2837099af431e9afee76ce5e6ab5cb86bedce06e31c22be46250cb453cfdb978  252c5a3d150275013f52b4820097d7163ced4aa2f1be0fca032f8a5017673816  0c9c64b7383ec249bcf6271a4b73206d94de130ca401d16ab77fe01e5193a312  6700f62e1a3b33340cd678c388ecc8bac2e5943c0627df5d1b99b879c3ca42c9  IP addresses   93.152.224[.]75 : downloads PavinLoader  65.21.80[.]170 : downloads PavinLoader  195.63.142[.]49 : downloads PavinLoader  Domains   perfectverified[.]com : ClickFix  PavinLoader C2   catalyst-pro[.]lat  twigoamwu[.]cfd  trusaifi[.]cfd  stellar-minds[.]cfd  pinnacle-labs[.]lat  nexahub[.]lat  fimwoglea[.]shop  velodium[.]lat  rpcsecnoweb[.]pro  more-arpc[.]icu  echo-systems[.]cfd  kelemet[.]shop  zarwieciv[.]cfd  URLs   telegra[.]ph/Project-PySynth-06-28 : Amatera dead drop  Acknowledgements   Previous analysis of the loader: https://www.derp.ca/research/hellsuchecker-clickfix-etherhiding/#26-anti-sandbox-checks-and-a-nintendo-bypass (possible AI-generated content)  Possible related activity: https://cyberowi.pl/lumma-stealer-renpy-fitgirl-osmiowarstwowy-loader/   Possible related activity: https://medium.com/@djordje.brankovic/from-fake-captcha-to-in-memory-execution-unraveling-a-multi-stage-malware-chain-part-1-496c603f3641   Analysis of a forum user: https://forums.malwarebytes.com/topic/338102-solution-of-gollopdevestdll-renpy-loader-malware-from-malwarebytes-blog/   From reporting threats to removing them. Cybersecurity risks should never spread beyond a headline. Keep threats off your devices by  downloading Malwarebytes today .
1 shared
Aug 26, 2026
Crooks push Mac malware through fake OpenAI Codex ads
Cybersecurity researchers have disclosed details of a phishing-as-a-service (PhaaS) platform built to strip Apple's Activation Lock from stolen devices, using rented AI voice agents that call theft victims posing as Apple Support and ask for their device passcode. SOCRadar Threat Research Unit (STRU) said the platform, which it tracks as AnonyMousKIT, is credit-metered and drives lures across five channels from a single victim record, comprising email at 1.50 credits, SMS priced per sender ID, WhatsApp, a recorded voice call at 1 credit, and an AI voice agent at 2 credits. The targets are owners of Apple devices that were recently lost or stolen, and the pages and calls ask each of them for the 4- or 6-digit device passcode, then the Apple ID credentials, and finally a live two-factor authentication (2FA) code. Apple's own guidance states that the company never asks for a password, device passcode, or 2FA code to provide support. "AnonyMousKIT is best understood not as a phishing kit but a small software business with a criminal customer base. It features credit bundles, published pricing, tiered subscriptions, customer support, status tracking, and infrastructure replacement protocols," SOCRadar said in a Monday report. Activation Lock, introduced in iOS 7, ties the hardware to a specific Apple ID and renders a stolen handset unusable until the owner's account is removed. Lures cite the handset's internal Apple model identifier and its live Find My status, both pulled from the stolen device itself. Victims who follow the link reach an Apple-branded capture page that renders an animated map of the handset's reported location. The AI voice channel is the best-documented vector after email, with 200 call records, 55 transcripts, and five configured personas recovered from the operator's account with the commercial voice platform Vapi. The researchers' report does not say whether the account was reported to Vapi, and neither company has said publicly whether it is still active. All five personas carry the same translated identity, Alice from Apple Support, across English, Spanish, and Portuguese. The calls ran between August 31, 2025 and May 30, 2026, and 179 of the 200 went to numbers in Brazil. In the recovered transcript, the agent asks the victim to confirm ownership, then requests the four- or six-digit passcode and reads the digits back for confirmation. It then explains that someone visited an Apple Store to remove the Activation Lock and asks whether a recovery link has arrived via text. The researchers put the total cost of the 200 calls at $19.24, or about 9.6 cents each. The outcome table in the report assigns all 200 calls to one of four results, comprising 100 victims who hung up, 48 silence timeouts, 24 no-answers, and 28 platform errors or busy signals. No count of captured passcodes, Apple IDs, or 2FA codes appears in the report for any of the five channels. The logs reached SOCRadar via two bare relative file paths in the shared codebase that resolve to the web root and allow unauthenticated HTTP access. Every deployment of that codebase inherits the flaw. A scan of 506 kit-family domains identified 30 distinct installations reachable on 42 domains, with 188 of the 506 live. The AnonyMousKIT installation logged 691 send attempts between March and July 2026, compared with 6,092 across the 30 backends. Three storefronts, i-Blocker, Key Unlock, and KG-KING, launched in the same second on April 10, 2026, sharing the same Gmail relay accounts. SOCRadar assessed that pattern as one buyer running three brands rather than three separate customers. The researchers recorded the following characteristics of the email lures - The top two subject lines were "Your device has been found" (308 of 691) and "Alert" (157) Display names spoofed Apple, Find My, Apple Support, and Apple Assistance 627 of the logged sends relayed through a single free Gmail account, noreplyapple00000[@]gmail[.]com, against 20 and 2 for the two other relay accounts 678 of the 691 lures carried a location token naming a city, including Johannesburg, Abuja, Buenos Aires, Maputo, and Mumbai Victim-facing capture pages were served from tokenized /help?TOKEN URLs South Africa accounts for 1,735 of the 6,092 family-wide sends, and 64 of AnonyMousKIT's own 691 sends reached non-consumer domains, including 27 to South African government addresses. SOCRadar said those recipients were selected because their devices were stolen, not because of their roles. The report said the four unlock tools offered on the panel serve as bait, because 5,649 of the 6,092 targeted devices, or 92.7%, run A12 silicon or newer. The checkm8 bootrom exploit reaches only A5 through A11 chips. It also states that technical bypasses are obsolete now that Apple has moved past the checkm8 generation. A public bootrom exploit for A12 and A13 was released on June 18, 2026, two months before the report, and its proof of concept remains live. Its authors describe it as a tethered bootrom exploit requiring physical possession and device firmware update (DFU) mode, and the research does not show a Secure Enclave compromise. Its control tool demotes the device to production mode or boots a raw iBoot image, and neither action recovers a device passcode or removes Activation Lock. SOCRadar described the automated, LLM-driven voice vector as the platform's primary innovation. In March, Mirage Security analyzed a subscription vishing service with commercial text-to-speech embedded as a core feature, and The Hacker News reported in May on an earlier AI vishing kit. Infoblox Threat Intel documented the same unlock-kit ecosystem in May using DNS telemetry, publishing a list of 4,244 malicious domains detected between March 2022 and May 2026. "By combining technical tooling and social engineering, thieves now have a way to unlock devices at scale and make phone theft profitable," Infoblox Threat Intel researchers Maël Le Touz and Elena Puga said. Identical second-level labels across different top-level domains are a pattern match rather than an attribution to a single operator. "Apple will never ask you to log in to any website, or to tap Accept in the two-factor authentication dialog, or to provide your password, device passcode, or two-factor authentication code or to enter it into any website," Apple said in support documentation published on June 15, 2026. Apple directs users to forward Apple-branded phishing email and text messages to [email protected]. The researchers recommended moving high-value Apple IDs to physical hardware security keys, which it said completely mitigates the real-time 2FA interception that is the funnel's ultimate objective. The Hacker News contacted Apple for comment on the research; the company had not responded by the time of publication. The development comes as German and U.S. law enforcement dismantled Kratos in July, pulling more than 200 servers offline, and Indonesian authorities arrested the man they say developed and ran it. "The platform was still running on the last day of our analysis. SOCRadar continues to track it, its sibling storefronts, and the wider shared-codebase family, and will report material changes," the company said.
1 shared
Aug 26, 2026
Connections
6 relationships
Fake Apple Support AI Calls Target Stolen-Device Owners for Passcodes and 2FA Codes
Cybersecurity researchers have disclosed details of a phishing-as-a-service (PhaaS) platform built to strip Apple's Activation Lock from stolen devices, using rented AI voice agents that call theft victims posing as Apple Support and ask for their device passcode. SOCRadar Threat Research Unit (STRU) said the platform, which it tracks as AnonyMousKIT, is credit-metered and drives lures across five channels from a single victim record, comprising email at 1.50 credits, SMS priced per sender ID, WhatsApp, a recorded voice call at 1 credit, and an AI voice agent at 2 credits. The targets are owners of Apple devices that were recently lost or stolen, and the pages and calls ask each of them for the 4- or 6-digit device passcode, then the Apple ID credentials, and finally a live two-factor authentication (2FA) code. Apple's own guidance states that the company never asks for a password, device passcode, or 2FA code to provide support. "AnonyMousKIT is best understood not as a phishing kit but a small software business with a criminal customer base. It features credit bundles, published pricing, tiered subscriptions, customer support, status tracking, and infrastructure replacement protocols," SOCRadar said in a Monday report. Activation Lock, introduced in iOS 7, ties the hardware to a specific Apple ID and renders a stolen handset unusable until the owner's account is removed. Lures cite the handset's internal Apple model identifier and its live Find My status, both pulled from the stolen device itself. Victims who follow the link reach an Apple-branded capture page that renders an animated map of the handset's reported location. The AI voice channel is the best-documented vector after email, with 200 call records, 55 transcripts, and five configured personas recovered from the operator's account with the commercial voice platform Vapi. The researchers' report does not say whether the account was reported to Vapi, and neither company has said publicly whether it is still active. All five personas carry the same translated identity, Alice from Apple Support, across English, Spanish, and Portuguese. The calls ran between August 31, 2025 and May 30, 2026, and 179 of the 200 went to numbers in Brazil. In the recovered transcript, the agent asks the victim to confirm ownership, then requests the four- or six-digit passcode and reads the digits back for confirmation. It then explains that someone visited an Apple Store to remove the Activation Lock and asks whether a recovery link has arrived via text. The researchers put the total cost of the 200 calls at $19.24, or about 9.6 cents each. The outcome table in the report assigns all 200 calls to one of four results, comprising 100 victims who hung up, 48 silence timeouts, 24 no-answers, and 28 platform errors or busy signals. No count of captured passcodes, Apple IDs, or 2FA codes appears in the report for any of the five channels. The logs reached SOCRadar via two bare relative file paths in the shared codebase that resolve to the web root and allow unauthenticated HTTP access. Every deployment of that codebase inherits the flaw. A scan of 506 kit-family domains identified 30 distinct installations reachable on 42 domains, with 188 of the 506 live. The AnonyMousKIT installation logged 691 send attempts between March and July 2026, compared with 6,092 across the 30 backends. Three storefronts, i-Blocker, Key Unlock, and KG-KING, launched in the same second on April 10, 2026, sharing the same Gmail relay accounts. SOCRadar assessed that pattern as one buyer running three brands rather than three separate customers. The researchers recorded the following characteristics of the email lures - The top two subject lines were "Your device has been found" (308 of 691) and "Alert" (157) Display names spoofed Apple, Find My, Apple Support, and Apple Assistance 627 of the logged sends relayed through a single free Gmail account, noreplyapple00000[@]gmail[.]com, against 20 and 2 for the two other relay accounts 678 of the 691 lures carried a location token naming a city, including Johannesburg, Abuja, Buenos Aires, Maputo, and Mumbai Victim-facing capture pages were served from tokenized /help?TOKEN URLs South Africa accounts for 1,735 of the 6,092 family-wide sends, and 64 of AnonyMousKIT's own 691 sends reached non-consumer domains, including 27 to South African government addresses. SOCRadar said those recipients were selected because their devices were stolen, not because of their roles. The report said the four unlock tools offered on the panel serve as bait, because 5,649 of the 6,092 targeted devices, or 92.7%, run A12 silicon or newer. The checkm8 bootrom exploit reaches only A5 through A11 chips. It also states that technical bypasses are obsolete now that Apple has moved past the checkm8 generation. A public bootrom exploit for A12 and A13 was released on June 18, 2026, two months before the report, and its proof of concept remains live. Its authors describe it as a tethered bootrom exploit requiring physical possession and device firmware update (DFU) mode, and the research does not show a Secure Enclave compromise. Its control tool demotes the device to production mode or boots a raw iBoot image, and neither action recovers a device passcode or removes Activation Lock. SOCRadar described the automated, LLM-driven voice vector as the platform's primary innovation. In March, Mirage Security analyzed a subscription vishing service with commercial text-to-speech embedded as a core feature, and The Hacker News reported in May on an earlier AI vishing kit. Infoblox Threat Intel documented the same unlock-kit ecosystem in May using DNS telemetry, publishing a list of 4,244 malicious domains detected between March 2022 and May 2026. "By combining technical tooling and social engineering, thieves now have a way to unlock devices at scale and make phone theft profitable," Infoblox Threat Intel researchers Maël Le Touz and Elena Puga said. Identical second-level labels across different top-level domains are a pattern match rather than an attribution to a single operator. "Apple will never ask you to log in to any website, or to tap Accept in the two-factor authentication dialog, or to provide your password, device passcode, or two-factor authentication code or to enter it into any website," Apple said in support documentation published on June 15, 2026. Apple directs users to forward Apple-branded phishing email and text messages to [email protected]. The researchers recommended moving high-value Apple IDs to physical hardware security keys, which it said completely mitigates the real-time 2FA interception that is the funnel's ultimate objective. The Hacker News contacted Apple for comment on the research; the company had not responded by the time of publication. The development comes as German and U.S. law enforcement dismantled Kratos in July, pulling more than 200 servers offline, and Indonesian authorities arrested the man they say developed and ran it. "The platform was still running on the last day of our analysis. SOCRadar continues to track it, its sibling storefronts, and the wider shared-codebase family, and will report material changes," the company said.
thehackernews.comAug 26, 2026extracted
Rust Supply Chain Attack Puts Build-Time Malware in Crates with 245 Million Downloads
The Rust Project has deleted malicious versions of three widely used Rust crates from crates.io after a compromised maintainer account published releases that added a typosquatted dependency whose build script downloaded and executed a remote payload during compilation. The affected releases are arrayref 0.3.10, internment 0.8.7, and append-only-vec 0.1.9, all published from the same owner account on August 20, 2026, and all removed within 86 to 107 minutes. Because the malicious code sat in the build script of the injected dependency, building a project that resolved it was sufficient to run the payload, and nothing from the crates themselves had to be called. Developers are advised to search ~/.cargo/registry/cache for the deleted crate files and to pin arrayref at 0.3.9 or earlier, after the Rust Security Response Team unyanked the maliciously-yanked versions during the response. There is no patched version, no CVE identifier has been assigned, and the RustSec advisories for all three crates record no evidence that any malicious version was used. "A new version of the arrayref crate was published with a direct dependency on proc-macro1, which would execute a malicious build script. This compromised version was published on 2026-08-20 and removed approximately 86 minutes later, with no evidence of actual usage," RUSTSEC-2026-0260 said. The Hacker News has reached out to the Rust Security Response Team for the basis of that finding and for the download count of the deleted versions, but had not received a response at the time of writing. The Rust Security Response Team said it received the report that the proc-macro1 crate was malicious at 07:15 UTC on August 20 and verified that the crate carried a build script downloading a malicious payload, in an advisory post crediting the Research Team at Nextron Systems GmbH with initially discovering and reporting it. "We do not believe the author of arrayref to be acting maliciously, but their computer or credentials are likely compromised, and we are attempting to contact them," the Rust Security Response Team said. The Hacker News confirmed via the crates.io API on August 21 that the sole listed owner of arrayref is user 2402, David Roundy, registered in October 2009. How the account was compromised has not been disclosed. The Rust Security Response Team listed the malicious versions it deleted, with the time each was online - [email protected] : published at 2026-08-20T07:15:00Z, deleted at 08:41:40Z. Online for 86 minutes. [email protected] : published at 07:34:07Z, deleted at 09:04:11Z. Online for 90 minutes. [email protected] : published at 07:37:49Z, deleted at 09:25:24Z. Online for 107 minutes. proc-macro1 ,proc-macro-en ,aovine ,arone ,aronenao , andtinymember , any versions. Each compromised release carried a single added line in its manifest, a dependency on proc-macro1, a typosquat of the ubiquitous proc-macro2 crate. The library source of proc-macro1 is a genuine copy of proc-macro2, so builds completed normally. The build script reassembles its payload host and command-and-control (C2) address from base64 fragments at build time. It then installs a custom certificate verifier whose three verification methods return success unconditionally, disabling TLS validation. It selects one of four payloads by operating system and CPU architecture. On Unix and macOS it writes the bytes to /tmp/rust-setup, marks the file executable, and spawns it detached with the C2 address as its first argument. On Windows it writes a PowerShell script to %TEMP% and launches it hidden through a VBScript launcher under wscript.exe, then abandons the child process, a step commented in the source as escaping Cargo's job object so the build does not wait on it. Delivery relied on the owner account yanking arrayref 0.3.5 through 0.3.9 within the same minute as the malicious publish, leaving the compromised release as the only version Cargo would not warn about, according to the report filed to the RustSec advisory database by the researcher who hit it. "Delivery: 0.3.5–0.3.9 are all yanked under the owner account, so cargo's consider updating to a version that is not yanked warning is the lure. That is how I hit it," the reporter, GitHub user jhobern, said. The Hacker News found via the crates.io API on August 21 that arrayref has 245,385,500 downloads all time and 53,905,601 in the 90 days ending August 20, and that 403 distinct crates on crates.io depend on it. We also verified each hop of the dependency chain named in the report against the crates.io index on August 21: winit requires sctk-adwaita ^0.10.1, which requires tiny-skia ^0.11, which requires arrayref ^0.3.6. Every requirement in that chain is a caret range on 0.3.x, and a caret range on 0.3.x accepts 0.3.10. The same check found that blake3 declared arrayref as a dependency through version 1.8.6 and does not in 1.8.7, published at 09:09 UTC on August 20, and that blake2b_simd and blake2s_simd dropped the same dependency in releases published at 09:25 and 09:26 UTC that morning. The stage-2 implant beacons over HTTPS POST to the path /49890878, persists through a Registry Run key on Windows, a LaunchAgent on macOS, and a systemd user service on Linux, and supports four commands covering termination, C2 reconfiguration, persistence installation, and downloading and running further scripts, according to Wiz, which said it steals browser credentials from Chrome, Brave, and Edge by querying SQLite login databases. The Nextron researcher analysis says the analysed Windows stage queries only the origin_url and username_value columns and does not directly extract password_value, but that analysis covered the Windows payload alone, with the Linux and macOS payloads hashed and not analysed. The same analysis notes the crate may be triggered by cargo build, cargo check, and cargo test. StepSecurity shared the following indicators of compromise (IoCs) - Network: 23.254.165.112:9089 (payload host),23.254.165.112:443 (C2),hwsrv-798836.hostwindsdns.com Files: /tmp/rust-setup ,%TEMP%\rust-setup.ps1 ,%TEMP%\rust-setup-launch.vbs Binaries: rust-crate_0.1.0 ,_0.2.0 ,_0.3.0 ,_0.4.0 Accounts: dtolney (crates.io id 438608), impersonator;droundy , legitimate owner, presumed compromised Email: [email protected] , forged author metadata Wiz said the infrastructure substantially overlaps with recent North Korean supply chain attacks, naming the Mastra npm compromise and the axios compromise. Microsoft assesses with high confidence that the Mastra activity is attributable to Sapphire Sleet, and Google Threat Intelligence Group (GTIG) attributed the axios compromise to an actor it now tracks as MIDNIGHT NEPTUNE, formerly known as UNC1069. No vendor has attributed the crates.io incident to a named actor. "While the malicious versions of axios were removed from the npm registry within three hours of their release, the scope of the compromise is estimated to be broad, as the package has over 100 million weekly downloads," GTIG and Mandiant said in a July 30 report recommending cooling windows on newly published third-party assets. Cargo has no shipped equivalent. A pull request stabilizing a global-min-publish-age setting, which would hold back dependencies younger than a configured age, entered its final comment period on August 18, two days before the attack, and remained open and unmerged as of August 21. GitHub shipped a similar cooldown default for Dependabot in July. In a September 2025 case, two malicious crates impersonating a logging library executed only at runtime, a distinction crates.io drew at the time.
thehackernews.comAug 20, 2026extracted
PCPJack Hijacks 230 AWS, Google Cloud, and Azure Servers for Covert SMTP Relay Network
The threat actor known as PCPJack has hijacked cloud servers associated with Amazon Web Services (AWS), Google Cloud, and Microsoft Azure to create a covert SMTP email relay network. "Compromised business servers across the U.S., Europe, and Asia were quietly converted into SMTP proxies, verified for mail relay capability, and synced to a downstream consumer every five minutes," Hunt.io said in a statement. "The infrastructure was still running when we found it." The threat intelligence company said it found source code, compiled binaries, deployment state logs, internet scanners, exploitation tooling, and a live Sliver configuration after the threat actor behind the operation left two open directories on a command-and-control (C2) server ("213.136.80[.]73") without any authentication. PCPJack was first discovered by SentinelOne in April 2026 after it identified a credential theft framework that specifically targets cloud services, while taking steps to terminate and remove processes or artifacts associated with TeamPCP, another notorious hacking group that has attracted attention in recent months for its software supply chain attacks. Staged in one of the open directories Sliver-integrated SMTP proxy deployment toolkit, along with Chisel tunneling and proxy binaries for most Linux CPU architectures, such as AMD64, ARM64, and x86. On the victim side, the binary is dropped as a hidden dot-prefixed file and persisted at "/var/tmp/.xs." Also found in the directories are deployer scripts designed to load the Sliver C2 client configuration and filter for Linux beacons that have checked in within the last ten minutes. Beacons are implants that periodically phone home to the C2 server at regular intervals to check in and retrieve commands. "The deployer scripts are the automation layer that turns compromised Linux servers into SOCKS5 proxies," Hunt.io told The Hacker News. "They connect to the local Sliver C2, pull a list of active Linux beacons, push a Chisel binary to each one, and install it as a persistent service." "Each beacon receives a SOCKS5 proxy port derived deterministically from an MD5 hash of its Sliver UUID, mapped into the range 10000-14999," Hunt.io noted. "The same beacon always maps to the same port across runs, eliminating the need for a shared port registry." The script is also capable of running an SMTP quality gate that probes for outbound access to smtp.gmail[.]com:587. Hosts that fail this check are skipped with an exit code of zero. "This gate defines the operation's purpose: hosts that cannot relay email have no value to this pipeline," the cybersecurity company added. "Beacons are processed in batches of 50, with a 25-minute wait after uploads and 15 minutes after execution commands, to accommodate slow-interval beacon check-ins." Subsequent iterations of the deployer scripts have been found to remove the SMTP gate and the batching logic. Also present is a diagnostic script that selects five active beacons and tasks them each a shell command that checks for the following - Presence of Chisel binaries at known drop paths A Chisel process is running Disk space Reachability of port 9000 on the C2, and Presence of persistence artifacts, such as the cron entry or systemd service In addition, the C2 server runs a Python script named "chisel_verifier.py" as a persistent background daemon, which enumerates active Chisel tunnel ports via ss -tlnp every 60 seconds, tests each new port for SMTP capability, and removes failed or dropped tunnels from the active pool. Verified proxies are enriched with exit IP address, country, and ASN via services like api.ipify[.]org and ip-api[.]com. The proxy lists are then synced every five minutes via the Secure Copy Protocol (SCP) to a separate downstream server at 38.242.204[.]245. The server is currently not accessible. The end goal of the operation remains unclear at this stage. "The 230-node outcome is the observable result. Whether this progression reflects a single operator iterating or multiple actors sharing the same infrastructure cannot be determined from the recovered files," Hunt.io said, describing it as an opportunistic campaign. "The verified proxy list is being synced every five minutes to that server, and someone is consuming it. Whether for spam, phishing, or something else, the infrastructure to deliver at scale was clearly running."
thehackernews.comJun 5, 2026extracted
Android Malware Operations Merge Droppers, SMS Theft, and RAT Capabilities at Scale
Threat actors have been observed leveraging malicious dropper apps masquerading as legitimate applications to deliver an Android SMS stealer dubbed Wonderland in mobile attacks targeting users in Uzbekistan. "Previously, users received 'pure' Trojan APKs that acted as malware immediately upon installation," Group-IB said in an analysis published last week. "Now, adversaries increasingly deploy droppers disguised as legitimate applications. The dropper looks harmless on the surface but contains a built-in malicious payload, which is deployed locally after installation – even without an active internet connection." Wonderland (formerly WretchedCat), according to the Singapore-headquartered cybersecurity company, facilitates bidirectional command-and-control (C2) communication to execute commands in real-time, allowing for arbitrary USSD requests and SMS theft. It masquerades as Google Play, or files of other formats, such as videos, photos, and wedding invitations. The financially motivated threat actor behind the malware, TrickyWonders, leverages Telegram as the primary platform to coordinate various aspects of the operation. First discovered in November 2023, it's also attributed to two dropper malware families that are designed to conceal the primary encrypted payload - MidnightDat (First seen on August 27, 2025) RoundRift (First seen on October 15, 2025) Wonderland is mainly propagated using fake Google Play Store web pages, ad campaigns on Facebook, bogus accounts on dating apps, and messaging apps like Telegram, with the attackers abusing stolen Telegram sessions of Uzbek users sold on dark web markets to distribute APK files to victims' contacts and chats. Once the malware is installed, it gains access to SMS messages and intercepts one-time passwords (OTPs), which the group uses to siphon funds from victims' bank cards. Other capabilities include retrieving phone numbers, exfiltrating contact lists, hiding push notifications to suppress security or one-time password (OTP) alerts, and even sending SMS messages from infected devices for lateral movement. However, it's worth pointing out that sideloading the app first requires users to enable a setting that allows installation from unknown sources. This is accomplished by displaying an update screen that instructs them to "install the update to use the app." "When a victim installs the APK and provides the permissions, the attackers hijack the phone number and attempt to log into the Telegram account registered with that phone number," Group-IB said. "If the login succeeds, the distribution process is repeated, creating a cyclical infection chain." Wonderland represents the latest evolution of mobile malware in Uzbekistan, which has shifted from rudimentary malware such as Ajina.Banker that relied on large-scale spam campaigns to more obfuscated strains like Qwizzserial that were found disguised as seemingly benign media files. The use of dropper applications is strategic as it causes them to appear harmless and evade security checks. In addition, both the dropper and SMS stealer components are heavily obfuscated and incorporate anti-analysis tricks to make them a lot more challenging and time-consuming to reverse engineer. What's more, the use of bidirectional C2 communication transforms the malware from a passive SMS stealer to an active remote-controlled agent that can execute arbitrary USSD requests issued by the server. "The supporting infrastructure has also become more dynamic and resilient," the researchers said. "Operators rely on rapidly changing domains, each of which is used only for a limited set of builds before being replaced. This approach complicates monitoring, disrupts blacklist-based defenses, and increases the longevity of command and control channels." The malicious APK builds are generated using a dedicated Telegram bot, which is then distributed by a category of threat actors called workers in exchange for a share of the stolen funds. As part of this effort, each build is associated with its own C2 domains so that any takedown attempt does not bring down the entire attack infrastructure. The criminal enterprise also includes group owners, developers, and vbivers, who validate stolen card information. This hierarchical structure reflects a new maturation of the financial fraud operation. "The new wave of malware development in the region clearly demonstrates that methods of compromising Android devices are not just becoming more sophisticated – they are evolving at a rapid pace," Group-IB said. Attackers are actively adapting their tools, implementing new approaches to distribution, concealment of activity, and maintaining control over infected devices." The disclosure coincides with the emergence of new Android malware, such as Cellik, Frogblight, and NexusRoute, that are capable of harvesting sensitive information from compromised devices. Cellik, which is advertised on the dark web for a starting price of $150 for one month or for $900 for a lifetime licence, is equipped with real-time screen streaming, keylogging, remote camera/microphone access, data wiping, hidden web browsing, notification interception, and app overlays to steal credentials. Perhaps the Trojan's most troubling feature is a one-click APK builder that allows customers to bundle the malicious payload within legitimate Google Play apps for distribution. "Through its control interface, an attacker can browse the entire Google Play Store catalogue and select legitimate apps to bundle with the Cellik payload," iVerify's Daniel Kelley said. "With one click, Cellik will generate a new malicious APK that wraps the RAT inside the chosen legitimate app." Frogblight, on the other hand, has been found to target users in Turkey via SMS phishing messages that trick recipients into installing the malware under the pretext of viewing court documents related to a court case they are purported to be involved in, Kaspersky said. Besides stealing banking credentials using WebViews, the malware can collect SMS messages, call logs, a list of installed apps on the device, and device file system information. It can also manage contacts and send arbitrary SMS messages. Frogblight is believed to be under active development, with the threat actor behind the tool laying the groundwork for it to be distributed under a malware-as-a-service (MaaS) model. This assessment is based on the discovery of a web panel hosted on the C2 server and the fact that only samples using the same key as the web panel login can be remotely controlled through it. Malware families like Cellik and Frogblight are part of a growing trend of Android malware, wherein even attackers with little to no technical expertise can now run mobile campaigns at scale with minimal effort. In recent weeks, Android users in India have also been targeted by a malware dubbed NexusRoute that employs phishing portals impersonating the Indian government services to redirect visitors to malicious APKs hosted on GitHub repositories and GitHub Pages, while simultaneously collecting their personal and financial information. The bogus sites are designed to infect Android devices with a fully obfuscated remote access trojan (RAT) that can steal mobile numbers, vehicle data, UPI PINs, OTPs, and card details, as well as harvest extensive data by abusing accessibility services and prompting users to set it as the default home screen launcher. "Threat actors increasingly weaponize government branding, payment workflows, and citizen service portals to deploy financially driven malware and phishing attacks under the guise of legitimacy," CYFIRMA said. "The malware performs SMS interception, SIM profiling, contact theft, call-log harvesting, file access, screenshot capture, microphone activation, and GPS tracking." Further analysis of an embedded email address "gymkhana.studio@gmail[.]com" has linked NexusRoute to a broader underground development ecosystem, raising the possibility that it's part of a professionally maintained, large-scale fraud and surveillance infrastructure. "The NexusRoute campaign represents a highly mature, professionally engineered mobile cybercrime operation that combines phishing, malware, financial fraud, and surveillance into a unified attack framework," the company said. "The use of native-level obfuscation, dynamic loaders, automated infrastructure, and centralized surveillance control places this campaign well beyond the capabilities of common scam actors."
thehackernews.comDec 22, 2025extracted
GitHub Mandates 2FA and Short-Lived Tokens to Strengthen npm Supply Chain Security
GitHub on Monday announced that it will be changing its authentication and publishing options "in the near future" in response to a recent wave of supply chain attacks targeting the npm ecosystem, including the Shai-Hulud attack. This includes steps to address threats posed by token abuse and self-replicating malware by allowing local publishing with required two-factor authentication (2FA), granular tokens that will have a limited lifetime of seven days, and trusted publishing, which enables the ability to securely publish npm packages directly from CI/CD workflows using OpenID Connect (OIDC). Trusted publishing, besides eliminating the need for npm tokens, establishes cryptographic trust by authenticating each publish using short-lived, workflow-specific credentials that cannot be exfiltrated or reused. Even more significantly, the npm CLI automatically generates and publishes provenance attestations for the package. "Every package published via trusted publishing includes cryptographic proof of its source and build environment," GitHub noted back in late July 2025. "Your users can verify where and how your package was built, increasing trust in your supply chain." To support these changes, the Microsoft-owned company said it will be enacting the following steps - Deprecate legacy classic tokens. Deprecate time-based one-time password (TOTP) 2FA, migrating users to FIDO-based 2FA. Limit granular tokens with publishing permissions to a shorter expiration. Set publishing access to disallow tokens by default, encouraging usage of trusted publishers or 2FA-enforced local publishing. Remove the option to bypass 2FA for local package publishing. Expand eligible providers for trusted publishing. The development comes a week after a supply chain attack codenamed Shai-Hulud injected a self-replicating worm into hundreds of npm packages that scanned developer machines for sensitive secrets and transmitted them to an attacker-controlled server. "By combining self-replication with the capability to steal multiple types of secrets (and not just npm tokens), this worm could have enabled an endless stream of attacks had it not been for timely action from GitHub and open source maintainers," GitHub's Xavier René-Corail said. The changes to GitHub arrive days after the NuGet .NET package repository added support for trusted publishing and Ruby Central announced new measures to bolster supply chain security across RubyGems and RubyGems. "Moving forward, only engineers employed or contracted by Ruby Central will hold administrative permissions to the RubyGems.org service," Ruby Central said. "This includes both our production systems and GitHub repositories. In the near term we will temporarily hold administrative access to these projects while we finalize new policies that limit commit and organization access rights." Npm Package Includes QR Code-Based Technique The disclosure comes as software supply chain security company Socket said it identified a malicious npm package named fezbox that's capable of harvesting browser passwords using a novel steganographic technique. The package is no longer available for download from npm. It attracted a total of 476 downloads since it was first published on August 21, 2025. "In this package, the threat actor (npm alias janedu; registration email janedu0216@gmail[.]com) executes a payload within a QR code to steal username and password credentials from web cookies, within the browser," security researcher Olivia Brown said. Fezbox claims to be a JavaScript utility consisting of common helper functions. But, in reality, it harbors stealthy code to fetch a QR code from a remote URL, parse the QR code, and execute the obfuscated JavaScript payload embedded within it. The payload, for its part, attempts to read document.cookie, extracts username and password information from the cookie, and transmits the information to an external server ("my-nest-app-production>.up.railway[.]app") via an HTTPS POST request. "Most applications no longer store literal passwords in cookies, so it’s difficult to say how successful this malware would be at its goal," Brown noted. "However, the use of a QR code for further obfuscation is a creative twist by the threat actor. This technique demonstrates how threat actors continue to improve their obfuscation techniques and why having a dedicated tool to check your dependencies is more important than ever."
thehackernews.comSep 23, 2025extracted
Malicious npm Package Masquerades as Popular Email Library
A new malicious npm package impersonating the widely used nodemailer library has been uncovered by cybersecurity researchers. The package, named “nodejs-smtp,” not only functioned as an email sender but also injected code into desktop cryptocurrency wallets, silently redirecting transactions to wallets controlled by the attacker. When imported, nodejs-smtp used Electron tooling to tamper with Atomic Wallet on Windows. The package unpacked the app archive, replaced a vendor file with malicious code, repackaged the application, and then deleted traces of the process. Once active inside the wallet, the payload overwrote the recipient address during transactions with pre-set addresses tied to the attacker. This allowed for the theft of Bitcoin (BTC), Ethereum (ETH), Tether (USDT), TRX (USDT), XRP and Solana (SOL). Socket’s Threat Research Team, which discovered the threat, said that although the package remained capable of sending emails, its functional cover concealed the malicious operations. Developers testing applications typically saw expected results, making it less likely that they questioned the dependency. The package was published under the alias nikotimon, with a registration email tied to darkhorse.tech322@gmail[.]com. Socket researchers noted that the attacker had not accumulated significant funds, likely because the campaign is recent. However, they warn that the tooling was “deliberate, reusable, and scalable.” Socket petitioned the npm security team for both the removal of the package and the suspension of the associated account, which have now been completed. Why Developers Are at Risk The malicious package had only 342 downloads at the time of Socket’s publication, compared to nodemailer’s 3.9 million weekly downloads. Its convincing name, copied styling and nearly identical README, however, made it easy for developers under pressure to mistake it for the real library. That risk was compounded by AI coding assistants, which can suggest plausible but incorrect package names. Common reasons developers may inadvertently choose nodejs-smtp included: Searching for “nodejs smtp example” or similar queries Grabbing the first matching snippet or package name Trusting recommendations from AI code assistants Socket researchers emphasized that this campaign demonstrates how a single import can modify unrelated applications on a developer’s workstation. By combining import-time execution with Electron manipulation, a harmless-looking mailer became a wallet drainer. The team expects more attacks of this type to emerge, affecting not just Ethereum and Solana but also TRON, TON and other chains. Socket advised developers to rely on security tools that scan pull requests, block suspicious dependencies at install time and flag impersonated packages.
infosecurity-magazine.comSep 2, 2025extracted