{"id":1443,"date":"2026-06-25T11:17:45","date_gmt":"2026-06-25T11:17:45","guid":{"rendered":"https:\/\/thedigitalfortress.us\/?p=1443"},"modified":"2026-06-25T11:17:45","modified_gmt":"2026-06-25T11:17:45","slug":"new-gaslight-macos-malware-uses-prompt-injection-to-disrupt-ai-assisted-analysis","status":"publish","type":"post","link":"https:\/\/thedigitalfortress.us\/?p=1443","title":{"rendered":"New Gaslight macOS Malware Uses Prompt Injection to Disrupt AI-Assisted Analysis"},"content":{"rendered":"<div>\n<p><span class=\"p-author\"><i class=\"icon-font icon-user\">\ue804<\/i><span class=\"author\">Ravie Lakshmanan<\/span><i class=\"icon-font icon-calendar\">\ue802<\/i><span class=\"author\">Jun 25, 2026<\/span><\/span><span class=\"p-tags\">AI Security \/ Malware<\/span><\/p>\n<\/div>\n<div id=\"articlebody\">\n<div class=\"separator\" style=\"clear: both;\"><a href=\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEgbTrOy7FP80AfVcwyuiLtJx1T9YECQ6fxHaelQKUn3MNwSV9P3tiVq4_-pOB-gmU3lF9GpWnc5ebVSAbp0MZMZpHHZkdpTK_HX40hfg3KbusQS5bD0kRYjYVyRzffkUpWBsblvGULiZnnOj6e0NF-dg49It3Wn8p9WqD2TNEz0ruG1XrnqCckAXqsDAOTn\/s1700-e365\/ai-full-disk.jpg\" style=\"display: block;  text-align: center; clear: left; float: left;\"><\/a><\/div>\n<p>A previously undocumented Rust-based macOS implant and information stealer has been found to embed a prompt injection payload designed to trick a malware analyst&#8217;s artificial intelligence (AI) tools and trick it into aborting or refusing an analysis of the artifact.<\/p>\n<p>The malware has been codenamed <b>Gaslight<\/b> owing to this deceptive behavior. It&#8217;s been assessed with high confidence that the tool is the work of North Korea-aligned threat actors.<\/p>\n<p>\u00abIts most notable feature is an embedded cascade of fabricated system-failure messages, designed to make an LLM-assisted triage agent doubt its own session,\u00bb SentinelOne researcher Phil Stokes <a href=\"https:\/\/www.sentinelone.com\/labs\/macos-gaslight-rust-backdoor-turns-prompt-injection-on-the-analyst-not-the-sandbox\/\">said<\/a> in a technical report. \u00abIt attacks the agent&#8217;s perception, rather than the sandbox it runs in.\u00bb<\/p>\n<p>Central to the malware&#8217;s architecture is a Telegram bot API based command-and-control (C2) channel that enters into a polling loop, allowing the operator to issue instructions over an interactive shell and return the results of the execution. In the event two instances of the same bot token poll simultaneously, a \u00abConflict\u00bb response is issued, causing the second copy to terminate.<\/p>\n<div class=\"dog_two clear\">\n<div class=\"cf\"><a href=\"https:\/\/thehackernews.uk\/ai-cant-stop-d\" rel=\"nofollow noopener sponsored\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" class=\"lazyload\" alt=\"Cybersecurity\" src=\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEjPEV6-530TOlxG6PjrmdlY623wpBwduZ7t1HV6flcmO5R4q4AmfixDUzW0CrhlvMVNWbhvOIso-UDNTka4W_W9Chrdj_dglwBZwi7DuePM2IMIl-hfUYVIqBXgfpr_2619K8Gptb4LzwJ6gUbi7lWl2M8AFQJsHEaw63Q7tZ6708YGruiHrr0Y2W9YYxLQ\/s728-e100\/ThreatLocker-d.png\" width=\"729\" height=\"91\"\/><\/a><\/div>\n<\/div>\n<p>The shell supports six main commands, granting a persistent foothold over the infected host &#8211;<\/p>\n<p><a name=\"more\"\/><\/p>\n<ul>\n<li>help, to show command help<\/li>\n<li>id, to identify the implant to the operator<\/li>\n<li>shell, to execute a shell command via <a href=\"https:\/\/www.digitalocean.com\/community\/tutorials\/execvp-function-c-plus-plus\">execvp<\/a><\/li>\n<li>kill, to terminate a target process by PID<\/li>\n<li>upload, to exfiltrate a file via Telegram&#8217;s \u00abattach:\/\/\u00bb mechanism<\/li>\n<li>stop, to halt the execution of the implant<\/li>\n<\/ul>\n<p>SentinelOne said it identified signs suggesting the presence of a seventh command named \u00abfocus,\u00bb although its functionality remains undetermined at this stage. To achieve persistence, Gaslight makes use of a <a href=\"https:\/\/developer.apple.com\/library\/archive\/documentation\/MacOSX\/Conceptual\/BPSystemStartup\/Chapters\/CreatingLaunchdJobs.html\">LaunchAgent<\/a> that uses the label \u00abcom.apple.system.services.activity\u00bb in its .plist file.<\/p>\n<p>Also embedded within the malware is a 6.6 KB Base64-encoded Python script that functions as an information gathering suite responsible for harvesting Terminal command histories, installed application listings, snapshots of running processes, system hardware and software profile, <a href=\"https:\/\/attack.mitre.org\/techniques\/T1555\/001\/\">macOS Keychain database<\/a>, and data from Chrome, Brave, Firefox, and Safari web browsers. The collected data is subsequently compressed into a ZIP archive (\u00abtemp\/collected_data.zip\u00bb) and uploaded via Telegram.<\/p>\n<p>The Python stealer, for its part, is deployed by means of a separate 2 KB Base64-encoded bash installer that drops a cpython-3.10.18 interpreter from the \u00abastral-sh\/python-build-standalone\u00bb project. The presence of emojis and extensive comment headers indicates that it was likely generated using a large language model (LLM).<\/p>\n<div class=\"dog_two clear\">\n<div class=\"cf\"><a href=\"https:\/\/thehackernews.uk\/vpn-threat-report-m\" rel=\"nofollow noopener sponsored\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" class=\"lazyload\" alt=\"Cybersecurity\" src=\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEhFlTC7RrRZGiFAgASS0noWSL0qsQGFVp8-Hvuw9yp3X3VKRuTcb5SsPX09wJzrdIM6pu1_5lS4EeZp7Sx4iYBpNJkrGnpr08yyaS1HQ5_5TxaCsP6O0OtHNuOkesn6CbNjao1GPulCJk-uljYMSfMZfBYNrngpe669t7jlRn1FqiEnXhsFD1WVkpaYIVgh\/s728-e100\/ai-d.jpg\" width=\"729\" height=\"91\"\/><\/a><\/div>\n<\/div>\n<p>What&#8217;s notable about Gaslight is that details related to the bot token, the chat ID (tg_room_id), and the rest of the operator configuration are not hard-coded into the sample, but rather supplied at runtime. \u00abThe implant self-redacts its Telegram bot token in its own runtime output, denying it to anyone who captures logs or crash artifacts,\u00bb Stokes added.<\/p>\n<p>On top of that, the malware attempts to evade an AI-based detection by incorporating a Markdown-fenced block containing 38 fabricated \u00absystem\u00bb messages designed to trick a security agent into aborting, truncating, or refusing analysis.<\/p>\n<p>\u00abThe scaffold contains fake system messages about token expiry, out-of-memory kills, disk exhaustion, and repeated operation failures. It also plants bogus warnings about injection vulnerabilities and static-analysis flags,\u00bb SentinelOne said, calling it an \u00abattempt to weaponize the LLM-assisted triage pipelines that increasingly sit in the reverse-engineering loop.\u00bb<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>\ue804Ravie Lakshmanan\ue802Jun 25, 2026AI Security \/ Malware A previously undocumented Rust-based macOS implant and information stealer has been found to embed a prompt injection payload designed to trick a malware&hellip;<\/p>\n","protected":false},"author":1,"featured_media":1444,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[170,1206,651,2184,525,421,42,684],"class_list":["post-1443","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized","tag-aiassisted","tag-analysis","tag-disrupt","tag-gaslight","tag-injection","tag-macos","tag-malware","tag-prompt"],"_links":{"self":[{"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=\/wp\/v2\/posts\/1443","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1443"}],"version-history":[{"count":0,"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=\/wp\/v2\/posts\/1443\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=\/wp\/v2\/media\/1444"}],"wp:attachment":[{"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1443"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1443"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1443"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}