macOS
Analysis Report
payload_1_stealer.scpt
Overview
General Information
Detection
Digit Stealer
| Score: | 88 |
| Range: | 0 - 100 |
Signatures
Exfiltrates password data via HTTP using curl
Kills crypto wallet applications indicative for crypto stealers
Yara detected Digit Stealer
Clears all privacy permission grants using tccutil
Executes the "dscl" command with authonly argument (probably to verify the login password)
Mutes the volume using AppleScript likely to hide suspicious activity from the user
Terminates several processes with shell command 'killall'
Uploads files by emulating a filled-in form
Writes files containing the user's password
Creates hidden files, links and/or directories
Executes AppleScripts and/or other OSA language scripts with shell command "osascript"
Executes commands using a shell command-line interpreter
Executes cryptographic hash commands used for computing and checking message digests
Executes the "curl" command used to transfer data via the network (typically using HTTP/S)
Executes the "mkdir" command used to create folders
Executes the "nohup" (no hangup) command used to avoid background terminal process from being killed
Executes the "rm" command used to delete files or directories
Executes the "system_profiler" command used to collect detailed system hardware and software information
Executes the "tccutil" command used to manage privacy permissions controlled by TCC (Transparency, Consent, and Control)
Executes the "uuidgen" command used to generate UUIDs
Many shell processes execute programs via execve syscall (might be indicative of malicious behavior)
Uses AppleScript framework/components containing AppleScript related functionalities
Uses AppleScript scripting additions containing additional functionalities for AppleScripts
Writes ZIP files to disk
Classification
| Joe Sandbox version: | |
| Analysis ID: | 5177034 |
| Start date and time: | 2026-01-14 15:17:02 +01:00 |
| Joe Sandbox product: | Cloud |
| Overall analysis duration: | 0h 11m 15s |
| Hypervisor based Inspection enabled: | false |
| Report type: | full |
| Cookbook file name: | defaultmacinteractivecookbook.jbs |
| Analysis system description: | Mac Mini, Apple Silicon ARM64, Sequoia (Office 2021, Java 8 Update 471, Adobe Acrobat Reader 25, Chrome 142, Firefox 145, Node.js 24.11.1, NPM 11.6.2) |
| macOS major version: | 15 |
| CPU architecture: | arm64 |
| Analysis Mode: | default |
| Sample name: | payload_1_stealer.scpt |
| Detection: | MAL |
| Classification: | mal88.troj.spyw.evad.macSCPT@0/28@5/0 |
- Excluded IPs from analysis (whitelisted): 17.253.3.137, 17.253.3.141, 17.253.15.132, 17.253.57.202, 17.253.15.136, 17.253.57.200, 173.222.168.250, 17.253.15.150, 17.253.37.210, 17.253.53.205, 17.253.37.201, 17.253.53.208, 17.253.15.162, 17.253.29.204, 17.253.29.210, 64.78.200.1, 17.132.88.112, 17.132.88.120, 17.253.96.119, 64.78.201.1, 17.132.88.117, 17.253.144.10, 17.253.57.195, 17.253.57.199, 23.44.201.178, 23.44.201.187, 17.171.47.23, 17.253.3.140, 17.253.3.134, 23.59.144.237, 23.59.144.201, 17.253.57.198, 17.253.57.196, 17.253.15.140, 23.50.131.77
- Excluded domains from analysis (whitelisted): www-apple-com.v.aaplimg.com, pancake.apple.com, pancake.g.aaplimg.com, gdmf.apple.com, app-site-association.cdn-apple.com, app-site-association.cdn-apple.com.akadns.net, e5977.dsce9.akamaiedge.net, configuration-lb.ls-apple.com.akadns.net, www.apple.com, configuration-row-lb.apple.com.akadns.net, configuration.ls.apple.com, gdmf.v.aaplimg.com, doh.dns.apple.com, e3925.dscg.akamaiedge.net, a1091.dscapi7.akamai.net, app-site-association.g.aaplimg.com, stocks-data-service.lb-apple.com.akadns.net, experiments.apple.com, ab.apple.com.akadns.net, e6858.dsce9.akamaiedge.net, configuration.ls.v.aaplimg.com, experiments.apple.com.edgekey.net, doh-dns-apple-com.v.aaplimg.com, stocks-data-service-row.lb-apple.com.akadns.net, mesu-cdn.origin-apple.com.akadns.net, apple.com, apps-mzstatic-lb.itunes-apple.com.akadns.net, mesu.g.aaplimg.com, www.apple.com.edgekey.net, weatherkit.apple.com, apps-mzstatic-cdn.itunes-apple.com.akadns.net, configuration.v.aaplimg.com, stocks-data-se
- Report size exceeded maximum capacity and may have missing behavior information.
- Report size getting too big, too many JMT_LOOKUP calls found.
- Some HTTPS proxied raw data packets have been limited to 10 per session. Please view the PCAPs for the complete data.
⊘Runtime messages are not available for Live Interaction sessions
- System is mac-arm-sequoia
- launchd New Fork (PID: 1659, Parent: 1)
- Terminal New Fork (PID: 1661, Parent: 437)
- login New Fork (PID: 1662, Parent: 1661)
- bash New Fork (PID: 1665, Parent: 1662)
- bash New Fork (PID: 1676, Parent: 1662)
- osascript New Fork (PID: 1677, Parent: 1676)
- bash New Fork (PID: 1678, Parent: 1677)
- system_profiler New Fork (PID: 1681, Parent: 1678)
- bash New Fork (PID: 1679, Parent: 1677)
- bash New Fork (PID: 1680, Parent: 1677)
- osascript New Fork (PID: 1683, Parent: 1676)
- osascript New Fork (PID: 1684, Parent: 1676)
- bash New Fork (PID: 1685, Parent: 1684)
- bash New Fork (PID: 1686, Parent: 1684)
- bash New Fork (PID: 1687, Parent: 1684)
- osascript New Fork (PID: 1688, Parent: 1676)
- osascript New Fork (PID: 1699, Parent: 1676)
- osascript New Fork (PID: 1700, Parent: 1676)
- bash New Fork (PID: 1701, Parent: 1700)
- osascript New Fork (PID: 1702, Parent: 1676)
- osascript New Fork (PID: 1703, Parent: 1676)
- osascript New Fork (PID: 1705, Parent: 1676)
- osascript New Fork (PID: 1736, Parent: 1676)
- osascript New Fork (PID: 1740, Parent: 1676)
- osascript New Fork (PID: 1741, Parent: 1676)
- osascript New Fork (PID: 1742, Parent: 1676)
- osascript New Fork (PID: 1743, Parent: 1676)
- bash New Fork (PID: 1744, Parent: 1743)
- osascript New Fork (PID: 1745, Parent: 1676)
- osascript New Fork (PID: 1814, Parent: 1676)
- osascript New Fork (PID: 1815, Parent: 1676)
- osascript New Fork (PID: 1816, Parent: 1676)
- bash New Fork (PID: 1817, Parent: 1816)
- bash New Fork (PID: 1818, Parent: 1816)
- osascript New Fork (PID: 1820, Parent: 1818)
- osascript New Fork (PID: 1821, Parent: 1818)
- osascript New Fork (PID: 1823, Parent: 1818)
- osascript New Fork (PID: 1824, Parent: 1818)
- osascript New Fork (PID: 1825, Parent: 1818)
- bash New Fork (PID: 1826, Parent: 1825)
- osascript New Fork (PID: 1827, Parent: 1818)
- osascript New Fork (PID: 1831, Parent: 1818)
- bash New Fork (PID: 1832, Parent: 1831)
- osascript New Fork (PID: 1833, Parent: 1818)
- osascript New Fork (PID: 1835, Parent: 1818)
- bash New Fork (PID: 1836, Parent: 1835)
- osascript New Fork (PID: 1837, Parent: 1818)
- bash New Fork (PID: 1838, Parent: 1837)
- osascript New Fork (PID: 1839, Parent: 1818)
- bash New Fork (PID: 1840, Parent: 1839)
- launchd New Fork (PID: 1724, Parent: 1)
- launchd New Fork (PID: 1753, Parent: 1)
- cleanup
| Source | Rule | Description | Author | Strings |
|---|---|---|---|---|
| JoeSecurity_DigitStealer | Yara detected Digit Stealer | Joe Security |
⊘No Suricata rule has matched
Click to jump to signature section
Show All Signature Results
| Source: | Hash command executable: | Jump to behavior | ||
| Source: | Hash command executable: | Jump to behavior | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | TCP traffic detected without corresponding DNS query: | ||
| Source: | UDP traffic detected without corresponding DNS query: | ||
| Source: | UDP traffic detected without corresponding DNS query: | ||
| Source: | UDP traffic detected without corresponding DNS query: | ||
| Source: | UDP traffic detected without corresponding DNS query: | ||
| Source: | UDP traffic detected without corresponding DNS query: | ||
| Source: | UDP traffic detected without corresponding DNS query: | ||
| Source: | UDP traffic detected without corresponding DNS query: | ||
| Source: | UDP traffic detected without corresponding DNS query: | ||
| Source: | UDP traffic detected without corresponding DNS query: | ||
| Source: | UDP traffic detected without corresponding DNS query: | ||
| Source: | UDP traffic detected without corresponding DNS query: | ||
| Source: | HTTP traffic detected: | ||
| Source: | HTTP traffic detected: | ||
| Source: | HTTP traffic detected: | ||
| Source: | HTTP traffic detected: | ||
| Source: | DNS traffic detected: | ||
| Source: | DNS traffic detected: | ||
| Source: | DNS traffic detected: | ||
| Source: | DNS traffic detected: | ||
| Source: | String found in binary or memory: | ||
| Source: | String found in binary or memory: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
| Source: | Network traffic detected: | ||
Key, Mouse, Clipboard, Microphone and Screen Capturing |
|---|
| Source: | Mutes volume: | Jump to behavior | ||
| Source: | Classification label: | ||
Persistence and Installation Behavior |
|---|
| Source: | Killall command executed: | Jump to behavior | ||
| Source: | Curl file upload using -F: | Jump to behavior | ||
| Source: | Hidden File created: | Jump to behavior | ||
| Source: | Osascript command executed: | Jump to behavior | ||
| Source: | Osascript command executed: | Jump to behavior | ||
| Source: | Osascript command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Shell command executed: | Jump to behavior | ||
| Source: | Curl executable: | Jump to behavior | ||
| Source: | Curl executable: | Jump to behavior | ||
| Source: | Curl executable: | Jump to behavior | ||
| Source: | Curl executable: | Jump to behavior | ||
| Source: | Curl executable: | Jump to behavior | ||
| Source: | Curl executable: | Jump to behavior | ||
| Source: | Mkdir executable: | Jump to behavior | ||
| Source: | Mkdir executable: | Jump to behavior | ||
| Source: | Mkdir executable: | Jump to behavior | ||
| Source: | Mkdir executable: | Jump to behavior | ||
| Source: | Mkdir executable: | Jump to behavior | ||
| Source: | Nohup executable: | Jump to behavior | ||
| Source: | Nohup executable: | Jump to behavior | ||
| Source: | Rm executable: | Jump to behavior | ||
| Source: | Rm executable: | Jump to behavior | ||
| Source: | Rm executable: | Jump to behavior | ||
| Source: | Uuidgen executable: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | Shell process: | Jump to behavior | ||
| Source: | AppleScript framework/component info plist opened: | Jump to behavior | ||
| Source: | AppleScript framework/component info plist opened: | Jump to behavior | ||
| Source: | AppleScript framework/component info plist opened: | Jump to behavior | ||
| Source: | AppleScript scripting addition info plist opened: | Jump to behavior | ||
| Source: | AppleScript scripting addition info plist opened: | Jump to behavior | ||
| Source: | AppleScript scripting addition info plist opened: | Jump to behavior | ||
| Source: | AppleScript scripting addition info plist opened: | Jump to behavior | ||
| Source: | AppleScript scripting addition info plist opened: | Jump to behavior | ||
| Source: | AppleScript scripting addition info plist opened: | Jump to behavior | ||
| Source: | ZIP file created: | Jump to dropped file | ||
| Source: | ZIP file created: | Jump to dropped file | ||
| Source: | ZIP file created: | Jump to dropped file | ||
| Source: | ZIP file created: | Jump to dropped file | ||
| Source: | Awk executable: | Jump to behavior | ||
| Source: | AppleKeyboardLayouts info plist opened: | Jump to behavior | ||
| Source: | AppleKeyboardLayouts info plist opened: | Jump to behavior | ||
| Source: | AppleKeyboardLayouts info plist opened: | Jump to behavior | ||
| Source: | AppleKeyboardLayouts info plist opened: | Jump to behavior | ||
| Source: | AppleKeyboardLayouts info plist opened: | Jump to behavior | ||
| Source: | AppleKeyboardLayouts info plist opened: | Jump to behavior | ||
| Source: | XML plist file created: | Jump to dropped file | ||
| Source: | XML plist file created: | Jump to dropped file | ||
| Source: | XML plist file created: | Jump to dropped file | ||
| Source: | XML plist file created: | Jump to dropped file | ||
| Source: | XML plist file created: | Jump to dropped file | ||
| Source: | XML plist file created: | Jump to dropped file | ||
| Source: | XML plist file created: | Jump to dropped file | ||
| Source: | XML plist file created: | Jump to dropped file | ||
| Source: | XML plist file created: | Jump to dropped file | ||
| Source: | XML plist file created: | Jump to dropped file | ||
| Source: | XML plist file created: | Jump to dropped file | ||
Lowering of HIPS / PFW / Operating System Security Settings |
|---|
| Source: | Tccutil reset: | Jump to behavior | ||
| Source: | Tccutil executable: | Jump to behavior | ||
Stealing of Sensitive Information |
|---|
| Source: | Curl exfiltrating password: | Jump to behavior | ||
| Source: | Kills crypto wallet processes: | Jump to behavior | ||
| Source: | File source: | ||
| Source: | Security executable: | Jump to behavior | ||
| Source: | Default password detected: | Jump to dropped file | ||
| Source: | System_profiler executable: | Jump to behavior | ||
| Source: | System_profiler executable: | Jump to behavior | ||
Remote Access Functionality |
|---|
| Source: | File source: | ||
| Reconnaissance | Resource Development | Initial Access | Execution | Persistence | Privilege Escalation | Defense Evasion | Credential Access | Discovery | Lateral Movement | Collection | Command and Control | Exfiltration | Impact |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Gather Victim Identity Information | 1 Scripting | Valid Accounts | 1 Command and Scripting Interpreter | 1 Scripting | Path Interception | 11 Impair Defenses | 1 Unsecured Credentials | 1 Account Discovery | Remote Services | Data from Local System | 1 Encrypted Channel | 1 Exfiltration Over Alternative Protocol | 1 Service Stop |
| Credentials | Domains | Default Accounts | 3 AppleScript | Boot or Logon Initialization Scripts | Boot or Logon Initialization Scripts | 1 Indicator Blocking | LSASS Memory | 1 System Information Discovery | Remote Desktop Protocol | Data from Removable Media | 1 Ingress Tool Transfer | 1 Exfiltration Over Web Service | Network Denial of Service |
| Email Addresses | DNS Server | Domain Accounts | At | Logon Script (Windows) | Logon Script (Windows) | 1 Hidden Files and Directories | Security Account Manager | Query Registry | SMB/Windows Admin Shares | Data from Network Shared Drive | 2 Non-Application Layer Protocol | Automated Exfiltration | Data Encrypted for Impact |
| Employee Names | Virtual Private Server | Local Accounts | Cron | Login Hook | Login Hook | 1 File Deletion | NTDS | System Network Configuration Discovery | Distributed Component Object Model | Input Capture | 13 Application Layer Protocol | Traffic Duplication | Data Destruction |
This section contains all screenshots as thumbnails, including those not shown in the slideshow.