{"id":142129,"date":"2025-04-14T13:40:53","date_gmt":"2025-04-14T20:40:53","guid":{"rendered":"https:\/\/unit42.paloaltonetworks.com\/?p=142129"},"modified":"2025-06-19T11:04:10","modified_gmt":"2025-06-19T18:04:10","slug":"slow-pisces-new-custom-malware","status":"publish","type":"post","link":"https:\/\/origin-unit42.paloaltonetworks.com\/de\/slow-pisces-new-custom-malware\/","title":{"rendered":"Slow Pisces zielt auf Entwickler mit Coding-Herausforderungen ab und stellt eine neue angepasste Python-Malware vor"},"content":{"rendered":"<h2><a id=\"post-142129-_heading=h.vh4gn2he4rmo\"><\/a>Zusammenfassung<\/h2>\n<p>Slow Pisces (auch bekannt als Jade Sleet, TraderTraitor, PUKCHONG) ist eine nordkoreanische, staatlich gef\u00f6rderte Bedrohungsgruppe, die sich in erster Linie darauf konzentriert, Einnahmen f\u00fcr das nordkoreanische Regime zu generieren, typischerweise durch Angriffe auf gro\u00dfe Organisationen im Kryptow\u00e4hrungssektor. Dieser Artikel analysiert ihre Kampagne, von der wir glauben, dass sie mit den j\u00fcngsten Kryptow\u00e4hrungsdieben in Verbindung steht.<\/p>\n<p>In dieser Kampagne kontaktierte <a href=\"https:\/\/unit42.paloaltonetworks.com\/threat-actor-groups-tracked-by-palo-alto-networks-unit-42\/#:~:text=Slow%20Pisces%20is%20North%20Korea%27s%20nation%20state%20threat%20group%20under%20Reconnaissance%20General%20Bureau%20(RGB)%20of%20DPRK.%20It%27s%20believed%20to%20be%20a%20spin%2Doff%20from%20the%20Lazarus%20group%20with%20focus%20on%20financial%20gathering%20and%20crypto%20industry%20targeting%20goals\" target=\"_blank\" rel=\"noopener\">Slow Pisces<\/a> Kryptow\u00e4hrungsentwickler auf LinkedIn. Sie gaben sich als potenzielle Arbeitgeber aus und schickten Malware, die als Coding-Herausforderung getarnt war. Diese Herausforderungen verlangen von den Entwicklern, dass sie ein kompromittiertes Projekt ausf\u00fchren und ihre Systeme mit Malware infizieren, die wir RN Loader und RN Stealer genannt haben.<\/p>\n<p>Die Gruppe soll im Jahr 2023 \u00fcber <a href=\"https:\/\/www.microsoft.com\/en-us\/security\/security-insider\/microsoft-digital-defense-report-2023\" target=\"_blank\" rel=\"noopener\">1 Milliarde USD aus dem Kryptow\u00e4hrungssektor gestohlen haben<\/a>. Sie haben dies mit verschiedenen Methoden erreicht, darunter <a href=\"https:\/\/www.cisa.gov\/news-events\/cybersecurity-advisories\/aa22-108a\" target=\"_blank\" rel=\"noopener\">gef\u00e4lschte Trading-Anwendungen<\/a>, Malware, die \u00fcber den <a href=\"https:\/\/github.blog\/security\/vulnerability-research\/security-alert-social-engineering-campaign-targets-technology-industry-employees\/\" target=\"_blank\" rel=\"noopener\">Node Package Manager (NPM)<\/a> verteilt wird, und <a href=\"https:\/\/cloud.google.com\/blog\/topics\/threat-intelligence\/north-korea-supply-chain\" target=\"_blank\" rel=\"noopener\">Lieferkettenkompromittierungen<\/a>.<\/p>\n<p>Im Dezember 2024 schrieb <a href=\"https:\/\/www.fbi.gov\/news\/press-releases\/fbi-dc3-and-npa-identification-of-north-korean-cyber-actors-tracked-as-tradertraitor-responsible-for-theft-of-308-million-from-bitcoindmmcom\" target=\"_blank\" rel=\"noopener\">das FBI<\/a> den Diebstahl von 308 Millionen Dollar von einem in Japan ans\u00e4ssigen Kryptow\u00e4hrungsunternehmen Slow Pisces zu. In j\u00fcngster Zeit machte die Gruppe Schlagzeilen wegen ihrer angeblichen Beteiligung an dem <a href=\"https:\/\/www.ic3.gov\/PSA\/2025\/PSA250226\" target=\"_blank\" rel=\"noopener\">Diebstahl von 1,5 Milliarden Dollar<\/a> aus einer Kryptow\u00e4hrungsb\u00f6rse in Dubai.<\/p>\n<p>Wir haben unsere Threat Intelligence mit Analysten von GitHub und LinkedIn geteilt, um die entsprechenden Konten und Repositories zu entfernen.<\/p>\n<p>Sie haben daraufhin die folgende Erkl\u00e4rung abgegeben:<\/p>\n<p style=\"padding-left: 40px;\"><em>GitHub und LinkedIn haben diese b\u00f6sartigen Konten entfernt, weil sie gegen unsere jeweiligen Nutzungsbedingungen versto\u00dfen haben. Bei allen unseren Produkten setzen wir automatisierte Technologien ein, kombiniert mit Teams von Ermittlungsexperten und Mitgliederberichten, um b\u00f6sartige Akteure zu bek\u00e4mpfen und die Nutzungsbedingungen durchzusetzen. Wir entwickeln und verbessern unsere Prozesse kontinuierlich weiter und ermutigen unsere Kunden und Mitglieder, verd\u00e4chtige Aktivit\u00e4ten zu melden.<\/em><\/p>\n<p style=\"padding-left: 40px;\"><strong><em>Zus\u00e4tzliche Informationen<\/em><\/strong><\/p>\n<ul>\n<li><em>GitHub-Benutzer k\u00f6nnen weitere Informationen auf unseren Seiten <a href=\"https:\/\/urldefense.proofpoint.com\/v2\/url?u=https-3A__docs.github.com_en_site-2Dpolicy_acceptable-2Duse-2Dpolicies_github-2Dacceptable-2Duse-2Dpolicies&amp;d=DwMGaQ&amp;c=V9IgWpI5PvzTw83UyHGVSoW3Uc1MFWe5J8PTfkrzVSo&amp;r=_lIJbiuLEsecGC88yMz56rH6l-Y5OB28uwt-Y9Xz4rE&amp;m=UGRFdaU0cIscSEQoBgGwJQdMeZgVigbcDnGPmHQpONBJ7WMaQJJPO7CyDeS05g6u&amp;s=Q3c625ggV3WuLxlSWstf7yxNVIxr6RXfLqXEs4YQhfI&amp;e=\" target=\"_blank\" rel=\"noopener\">Richtlinien zur akzeptablen Nutzung<\/a> und <a href=\"https:\/\/urldefense.proofpoint.com\/v2\/url?u=https-3A__docs.github.com_en_communities_maintaining-2Dyour-2Dsafety-2Don-2Dgithub_reporting-2Dabuse-2Dor-2Dspam&amp;d=DwMGaQ&amp;c=V9IgWpI5PvzTw83UyHGVSoW3Uc1MFWe5J8PTfkrzVSo&amp;r=_lIJbiuLEsecGC88yMz56rH6l-Y5OB28uwt-Y9Xz4rE&amp;m=UGRFdaU0cIscSEQoBgGwJQdMeZgVigbcDnGPmHQpONBJ7WMaQJJPO7CyDeS05g6u&amp;s=w_rzmUGqBolbje6bXMIl06IDbCkfN_csSaR7Aw6f9hA&amp;e=\" target=\"_blank\" rel=\"noopener\">Missbrauch und Spam melden<\/a> finden.<\/em><\/li>\n<li><em>LinkedIn-Nutzer k\u00f6nnen hier mehr dar\u00fcber erfahren, wie sie Missbrauch erkennen und melden k\u00f6nnen: <\/em><a href=\"https:\/\/urldefense.proofpoint.com\/v2\/url?u=https-3A__www.linkedin.com_help_linkedin_answer_a1344213&amp;d=DwMGaQ&amp;c=V9IgWpI5PvzTw83UyHGVSoW3Uc1MFWe5J8PTfkrzVSo&amp;r=_lIJbiuLEsecGC88yMz56rH6l-Y5OB28uwt-Y9Xz4rE&amp;m=UGRFdaU0cIscSEQoBgGwJQdMeZgVigbcDnGPmHQpONBJ7WMaQJJPO7CyDeS05g6u&amp;s=MWowAjuRradajHCOP9WGk5AkD3krn1yWpFfUQ4gm1EA&amp;e=\" target=\"_blank\" rel=\"noopener\"><em>Spam, unangemessene und beleidigende Inhalte erkennen und melden | LinkedIn Hilfe<\/em><\/a><\/li>\n<\/ul>\n<p>In diesem Bericht wird detailliert beschrieben, wie Slow Pisces Malware in seinen Coding-Herausforderungen verbirgt und wie die Gruppe ihre Werkzeuge einsetzt, um der Branche ein besseres Verst\u00e4ndnis f\u00fcr diese Bedrohung zu vermitteln.<\/p>\n<p>Palo Alto Networks Kunden sind durch unsere <a href=\"https:\/\/docs.paloaltonetworks.com\/ngfw\" target=\"_blank\" rel=\"noopener\">Next-Generation Firewall<\/a> mit <a href=\"https:\/\/docs.paloaltonetworks.com\/advanced-url-filtering\/administration\" target=\"_blank\" rel=\"noopener\">Advanced URL Filtering<\/a>- und <a href=\"https:\/\/docs.paloaltonetworks.com\/dns-security\" target=\"_blank\" rel=\"noopener\">Advanced DNS Security<\/a>-Abonnements besser vor den in diesem Artikel beschriebenen Bedrohungen gesch\u00fctzt.<\/p>\n<p>Wenn Sie glauben, dass Sie kompromittiert worden sein k\u00f6nnten oder eine dringende Angelegenheit haben, kontaktieren Sie das <a href=\"https:\/\/start.paloaltonetworks.com\/contact-unit42.html\" target=\"_blank\" rel=\"noopener\">Unit 42 Incident Response Team<\/a>.<\/p>\n<table style=\"width: 70.5057%;\">\n<thead>\n<tr>\n<td style=\"width: 42.0385%;\"><b>Verwandte Themen der Unit 42<\/b><\/td>\n<td style=\"width: 92.9615%;\"><a href=\"https:\/\/unit42.paloaltonetworks.com\/de\/tag\/cryptocurrency-de\/\" target=\"_blank\" rel=\"noopener\"><b>Cryptocurrency<\/b><\/a>, <strong><a href=\"https:\/\/unit42.paloaltonetworks.com\/de\/tag\/dprk-de\/\" target=\"_blank\" rel=\"noopener\">DPRK<\/a><\/strong><\/td>\n<\/tr>\n<\/thead>\n<\/table>\n<h2><a id=\"post-142129-_heading=h.uczqsxetxxb2\"><\/a>Technische Analyse<\/h2>\n<p>Unsere Sichtbarkeit dieser Kampagne folgt im Gro\u00dfen und Ganzen drei Schritten, die unten in Abbildung 1 dargestellt sind.<\/p>\n<figure id=\"attachment_143124\" aria-describedby=\"caption-attachment-143124\" style=\"width: 800px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-143124 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/06\/2476_Diagrams-4-697x440.png\" alt=\"Diagramm zur Veranschaulichung von Cybersicherheitsbedrohungen mit PDF-K\u00f6dern, GitHub-Repositories und einem C2-Server. Es zeigt: 1) PDF-Dateien wie Stellenbeschreibungen und Frageb\u00f6gen, die als K\u00f6der dienen, 2) GitHub JavaScript- und Python-Repositories mit mehreren externen APIs, die potenziell b\u00f6sartige Daten abrufen, und 3) einen C2-Server, der so konfiguriert ist, dass er unter bestimmten Bedingungen gutartige Daten oder eine b\u00f6sartige Nutzlast sendet. Die Logos von Palo Alto Networks und UNIT 42 sind enthalten.\" width=\"800\" height=\"505\" srcset=\"https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/06\/2476_Diagrams-4-697x440.png 697w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/06\/2476_Diagrams-4-1109x700.png 1109w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/06\/2476_Diagrams-4-768x485.png 768w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/06\/2476_Diagrams-4.png 1331w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption id=\"caption-attachment-143124\" class=\"wp-caption-text\">Abbildung 1. \u00dcberblick \u00fcber die Slow Pisces \"Coding Challenges\"-Kampagne<\/figcaption><\/figure>\n<h3><a id=\"post-142129-_heading=h.rtzzpwwkgwy9\"><\/a>Stufe 1 - PDF-K\u00f6der<\/h3>\n<p>Slow Pisces begann damit, sich auf LinkedIn als Personalvermittler auszugeben und mit potenziellen Zielpersonen in Kontakt zu treten, indem sie diesen ein harmloses PDF mit einer Stellenbeschreibung schickte, wie in Abbildung 2 dargestellt. Wenn sich die potenziellen Ziele meldeten, stellten die Angreifer sie vor eine Coding-Herausforderung, die aus mehreren Aufgaben bestand, die in einem Fragebogen beschrieben waren.<\/p>\n<figure id=\"attachment_138803\" aria-describedby=\"caption-attachment-138803\" style=\"width: 1000px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-138803 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-581400-138780-2.png\" alt=\"Bild, das zwei Dokumente nebeneinander zeigt. Auf der linken Seite ist eine \u201eStellenbeschreibung\u201c f\u00fcr einen UX-Design-Team-Koordinator zu sehen. Auf der rechten Seite ist ein \u201eFragebogen\u201c mit technischen und allgemeinen Fragen zum User Experience (UX) Design.\" width=\"1000\" height=\"715\" srcset=\"https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-581400-138780-2.png 1580w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-581400-138780-2-615x440.png 615w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-581400-138780-2-979x700.png 979w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-581400-138780-2-768x549.png 768w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-581400-138780-2-1536x1099.png 1536w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><figcaption id=\"caption-attachment-138803\" class=\"wp-caption-text\">Abbildung 2. Unauff\u00e4llige PDF-K\u00f6der.<\/figcaption><\/figure>\n<p>Wir haben beobachtet, dass Slow Pisces sich mit diesen K\u00f6dern als verschiedene Organisationen ausgibt, vor allem im Bereich der Kryptow\u00e4hrungen. Die Frageb\u00f6gen enthalten allgemeine Softwareentwicklungsaufgaben und eine Programmieraufgabe f\u00fcr ein \"echtes Projekt\", die mit einem GitHub-Repository verlinkt ist, das in Abbildung 3 unten dargestellt ist.<\/p>\n<figure id=\"attachment_138814\" aria-describedby=\"caption-attachment-138814\" style=\"width: 800px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-138814 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-585781-138780-3.png\" alt=\"Screenshot eines Dokuments mit dem Titel \u201eCoding and Problem-Solving Skills With Real Project\u201c. Es enth\u00e4lt einen Link zu einem GitHub-Repository und skizziert eine Codierungsaufgabe, die Bitcoin- und Ethereum-Wechselkurse aus API-Quellen beinhaltet. Der Text fordert Erweiterungen des Projekts durch Hinzuf\u00fcgen weiterer Markt-APIs und Verbesserung der Netzwerkkommunikation im Code.\" width=\"800\" height=\"408\" srcset=\"https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-585781-138780-3.png 1942w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-585781-138780-3-786x401.png 786w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-585781-138780-3-1373x700.png 1373w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-585781-138780-3-768x392.png 768w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-585781-138780-3-1536x783.png 1536w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption id=\"caption-attachment-138814\" class=\"wp-caption-text\">Abbildung 3. \"Echtes Projekt\u201c als Teil der Coding-Herausforderung im PDF-K\u00f6der enthalten<\/figcaption><\/figure>\n<h3><a id=\"post-142129-_heading=h.fntxrkkrvybk\"><\/a>Stufe 2 - GitHub Repositories<\/h3>\n<p>Slow Pisces pr\u00e4sentierte den Zielen sogenannte Coding-Herausforderungen als Projekte aus GitHub-Repositories. Die Repositories enthielten Code, der von Open-Source-Projekten \u00fcbernommen wurde, einschlie\u00dflich Anwendungen zum Betrachten und Analysieren:<\/p>\n<ul>\n<li>Daten zum Aktienmarkt<\/li>\n<li>Statistiken aus europ\u00e4ischen Fu\u00dfballligen<\/li>\n<li>Wetterdaten<\/li>\n<li>Preise f\u00fcr Kryptow\u00e4hrungen<\/li>\n<\/ul>\n<p>Die Gruppe verwendete in erster Linie Projekte in Python oder JavaScript, wahrscheinlich abh\u00e4ngig davon, ob sich die Zielperson f\u00fcr eine Front-End- oder Back-End-Entwicklungsposition bewarb. Wir haben in dieser Kampagne auch Java-basierte Repositories gesehen, allerdings waren sie weitaus weniger verbreitet, mit nur zwei F\u00e4llen, die sich als eine Kryptow\u00e4hrungsanwendung namens jCoin ausgaben.<\/p>\n<p>Diese geringe Anzahl deutet darauf hin, dass die Angreifer Repositories nach Bedarf erstellt haben k\u00f6nnten, basierend auf der bevorzugten Programmiersprache der Zielperson. Folglich verwendete die Gruppe h\u00e4ufiger Sprachen, die im Kryptow\u00e4hrungssektor beliebter sind, wie JavaScript und Python. Ebenso k\u00f6nnten unentdeckte Repositories auch f\u00fcr andere Programmiersprachen existieren.<\/p>\n<h3><a id=\"post-142129-_heading=h.xvnxmkmmnpgu\"><\/a>Stufe 3a - Python-Repository<\/h3>\n<p>Ende 2024 verwendete die Gruppe ein Projekt mit dem Titel \"Stocks Pattern Analyzer\", das von einem <a href=\"https:\/\/github.com\/gaborvecsei\/Stocks-Pattern-Analyzer\" target=\"_blank\" rel=\"noopener\">legitimen Repository<\/a> \u00fcbernommen wurde (siehe Abbildung 4).<\/p>\n<figure id=\"attachment_138825\" aria-describedby=\"caption-attachment-138825\" style=\"width: 700px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-138825 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-590203-138780-4.png\" alt=\"Screenshot eines GitHub-Repositorys mit dem Namen \u201eStocks Pattern Analyzer\u201c mit der Dateistruktur auf der linken Seite und der README-Datei auf der rechten Seite, in der erkl\u00e4rt wird, wie die Anwendung direkt und mit Docker ausgef\u00fchrt werden kann.\" width=\"700\" height=\"363\" srcset=\"https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-590203-138780-4.png 1992w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-590203-138780-4-786x408.png 786w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-590203-138780-4-1349x700.png 1349w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-590203-138780-4-768x399.png 768w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-590203-138780-4-1536x797.png 1536w\" sizes=\"(max-width: 700px) 100vw, 700px\" \/><figcaption id=\"caption-attachment-138825\" class=\"wp-caption-text\">Abbildung 4. \"Stocks Pattern Analyzer\" Python-Repository.<\/figcaption><\/figure>\n<p>Der gr\u00f6\u00dfte Teil des Codes in diesem Repository ist harmlos. Wenn die Zielpersonen versuchen, das Projekt gem\u00e4\u00df dem Fragebogen auszuf\u00fchren, werden die Daten von drei entfernten Standorten abgerufen:<\/p>\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">hxxps:\/\/de.wikipedia[.]org\/wiki\/Liste_der_S%26P_500_Unternehmen<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">hxxps:\/\/de.wikipedia[.]org\/wiki\/Currency_pair<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">hxxps:\/\/de.stockslab[.]org\/symbols\/sp500<\/span><\/li>\n<\/ul>\n<p>Zwei der URLs beziehen Daten aus Wikipedia. Die dritte URL verwendet eine Domain, die von Slow Pisces kontrolliert wird. Das Muster, der Verwendung mehrerer Datenquellen, von denen die meisten legitim, aber eine b\u00f6sartig ist, ist in den Python-Repositories der Gruppe weit verbreitet.<\/p>\n<p>Der b\u00f6sartige Command-and-Control-Server (C2) ist so konfiguriert, dass er das Format der legitimen Quellen nachahmt. In diesem Fall wird die Subdomain <span style=\"font-family: 'courier new', courier, monospace;\">.en<\/span> und die Top-Level-Domain (TLD) <span style=\"font-family: 'courier new', courier, monospace;\">org<\/span> verwendet, wie wir es oben bei der legitimen Wikipedia-Domain sehen.<\/p>\n<h4><a id=\"post-142129-_heading=h.aruiyfr4uxo7\"><\/a>YAML-Deserialisierung<\/h4>\n<p>Slow Pisces konnte Malware einfach direkt im Repository platzieren oder Code vom C2-Server mit den in Python eingebauten Funktionen <span style=\"font-family: 'courier new', courier, monospace;\"><a href=\"https:\/\/docs.python.org\/3\/library\/functions.html#eval\" target=\"_blank\" rel=\"noopener\">eval<\/a> <\/span>oder <a href=\"https:\/\/docs.python.org\/3\/library\/functions.html#exec\" target=\"_blank\" rel=\"noopener\"><span style=\"font-family: 'courier new', courier, monospace;\">exec<\/span><\/a> ausf\u00fchren. Diese Techniken sind jedoch leicht zu erkennen, sowohl durch manuelle Pr\u00fcfung als auch durch Antivirus-L\u00f6sungen.<\/p>\n<p>Stattdessen stellt Slow Pisces zun\u00e4chst sicher, dass der C2-Server mit g\u00fcltigen Anwendungsdaten antwortet. Das oben erw\u00e4hnte Repository erwartet zum Beispiel eine Liste der Symbole der S&amp;P 500-Unternehmen. Die C2 URL antwortet zun\u00e4chst mit diesen Daten in einer JSON-formatierten Liste.<\/p>\n<p>Die Bedrohungsakteure senden eine b\u00f6sartige Payload nur an \u00fcberpr\u00fcfte Ziele, wahrscheinlich auf der Grundlage von IP-Adresse, Geolocation, Zeit und HTTP-Anfrage-Headern. Die Konzentration auf Einzelpersonen, die \u00fcber LinkedIn kontaktiert werden, im Gegensatz zu breit angelegten Phishing-Kampagnen, erm\u00f6glicht es der Gruppe, die sp\u00e4teren Phasen der Kampagne genau zu kontrollieren und die payload nur an die erwarteten Opfer zu liefern.<\/p>\n<p>Um die verd\u00e4chtigen <span style=\"font-family: 'courier new', courier, monospace;\">eval<\/span>- und <span style=\"font-family: 'courier new', courier, monospace;\">exec<\/span>-Funktionen zu vermeiden, verwendet Slow Pisces <a href=\"https:\/\/net-square.com\/yaml-deserialization-attack-in-python.html\" target=\"_blank\" rel=\"noopener\">YAML-Deserialisierung<\/a> , um seine Payload auszuf\u00fchren, wie in Abbildung 5 gezeigt.<\/p>\n<figure id=\"attachment_138836\" aria-describedby=\"caption-attachment-138836\" style=\"width: 800px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-138836 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-594232-138780-5.png\" alt=\"Screenshot des Python-Codes, der eine Funktion \u201efetch_symbols\u201c definiert, die mithilfe eines API-Aufrufs Aktiensymbole aus dem S&amp;P 500 abruft, verschiedene Inhaltstypen verarbeitet und Antworten auf der Grundlage ihres Inhaltstyps verarbeitet. In der letzten Zeile ist ein Abschnitt in einem roten Kasten hervorgehoben.\" width=\"800\" height=\"403\" srcset=\"https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-594232-138780-5.png 1508w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-594232-138780-5-786x396.png 786w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-594232-138780-5-1389x700.png 1389w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-594232-138780-5-768x387.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption id=\"caption-attachment-138836\" class=\"wp-caption-text\">Abbildung 5. Python-Code, der den Einstiegspunkt der Slow Pisces-Malware mithilfe der YAML-Deserialisierung zeigt.<\/figcaption><\/figure>\n<p>Dieser Code holt Daten vom C2-Server \u00fcber HTTPS ab und \u00fcberpr\u00fcft den <span style=\"font-family: 'courier new', courier, monospace;\">Content-Type<\/span> Antwort-Header. Wenn die Kopfzeile JSON-Daten angibt <span style=\"font-family: 'courier new', courier, monospace;\">(application\/json)<\/span>, parst der Code die JSON-Daten und gibt sie an die Anwendung zur\u00fcck.<\/p>\n<p>Wenn die Antwort YAML-Daten<span style=\"font-family: 'courier new', courier, monospace;\">(application\/yaml)<\/span> enth\u00e4lt, verwendet der Code die Funktion <span style=\"font-family: 'courier new', courier, monospace;\">yaml.load()<\/span> aus der <a href=\"https:\/\/github.com\/yaml\/pyyaml\" target=\"_blank\" rel=\"noopener\">PyYAML<\/a> -Bibliothek, um die Daten zu analysieren. Diese Funktion ist von Natur aus unsicher und die PyYAML-Dokumentation empfiehlt <a href=\"https:\/\/github.com\/yaml\/pyyaml\" target=\"_blank\" rel=\"noopener\">ausdr\u00fccklich<\/a> <span style=\"font-family: 'courier new', courier, monospace;\">yaml.safe_load()<\/span> f\u00fcr nicht vertrauensw\u00fcrdige Eingaben.<\/p>\n<p>YAML wird in der Regel f\u00fcr Konfigurationsdateien verwendet, wie das unten gezeigte Beispiel:<\/p>\n<pre class=\"lang:default decode:true\">username: slow\r\n\r\npassword: pisces\r\n\r\napi:\r\n\r\nkey: supersecret\r\n\r\nurl: example.com<\/pre>\n<p>Allerdings kann <span style=\"font-family: 'courier new', courier, monospace;\">yaml.load()<\/span> beliebige Python-Objekte serialisieren und deserialisieren, nicht nur g\u00fcltige YAML-Daten. Der folgende Python-Code gibt zum Beispiel die Zahlen 0-4 aus:<\/p>\n<pre class=\"lang:default decode:true\">range(0, 5)<\/pre>\n<p>Wenn dieser Code mit <span style=\"font-family: 'courier new', courier, monospace;\">yaml.dump()<\/span> serialisiert wird, sieht er folgenderma\u00dfen aus:<\/p>\n<pre class=\"lang:default decode:true\">!!python\/object\/apply:builtins.range\r\n\r\n- 0\r\n\r\n- 5\r\n\r\n- 1<\/pre>\n<p>Wenn diese Daten schlie\u00dflich an <span style=\"font-family: 'courier new', courier, monospace;\">yaml.load()<\/span> \u00fcbergeben werden, wird der urspr\u00fcngliche Code ausgef\u00fchrt: <span style=\"font-family: 'courier new', courier, monospace;\">range(0, 5)<\/span>.<\/p>\n<p>Dies weist auf einen potenziellen Erkennungspunkt hin, da die payload f\u00fcr das Python-Repository und Malware, die YAML-Deserialisierung im Allgemeinen verwendet, !<span style=\"font-family: 'courier new', courier, monospace;\">!python\/object\/apply:builtins<\/span> enth\u00e4lt, wenn die Payload eine <a href=\"https:\/\/docs.python.org\/3\/library\/functions.html\" target=\"_blank\" rel=\"noopener\">integrierte Python-Funktion<\/a> verwendet.<\/p>\n<p>Die folgenden Stufen in Tabelle 1 befinden sich haupts\u00e4chlich im Speicher und haben im Allgemeinen keinen Fu\u00dfabdruck auf der Festplatte. Um die Community bei der Erkennung und Sensibilisierung zu unterst\u00fctzen, haben wir diese Payloads bei VirusTotal hochgeladen. Die YAML-Deserialisierungs-Payload f\u00fchrt Malware aus, die wir aufgrund des C2-Token-Formats, das wir bei RN Stealer beobachtet haben und das wir in den folgenden Abschnitten er\u00f6rtern, RN Loader und RN Stealer nennen.<\/p>\n<table style=\"width: 100%;\">\n<tbody>\n<tr>\n<td style=\"text-align: center;\"><b>B\u00fchne<\/b><\/td>\n<td style=\"text-align: center;\"><b>SHA256 Hash<\/b><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">YAML Deserialisierungs Payload<\/span><\/td>\n<td><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">47e997b85ed3f51d2b1d37a6a61ae72185d9ceaf519e2fdb53bf7e761b7bc08f<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">RN Loader<\/span><\/td>\n<td><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">937c533bddb8bbcd908b62f2bf48e5bc11160505df20fea91d9600d999eafa79<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">RN Stealer<\/span><\/td>\n<td><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">e89bf606fbed8f68127934758726bbb5e68e751427f3bcad3ddf883cb2b50fc7<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span style=\"font-size: 11pt;\">Tabelle 1. Python-Repository-Payload. <\/span><\/p>\n<p>Die YAML-Deserialisierungs-Payload von Slow Pisces beginnt mit der Erstellung des Ordners Public im Home-Verzeichnis des Opfers und der Erstellung einer neuen Datei in diesem Verzeichnis namens <span style=\"font-family: 'courier new', courier, monospace;\">__init__.py.<\/span> Die eingebetteten Base64-Daten werden dekodiert und in diese Datei geschrieben, die die n\u00e4chste Infektionsstufe (RN Loader) enth\u00e4lt, die dann ausgef\u00fchrt wird.<\/p>\n<h4><a id=\"post-142129-_heading=h.gej3gfu1wqrr\"><\/a>RN Loader<\/h4>\n<p>Diese neu erstellte Datei f\u00fcr RN Loader unter <span style=\"font-family: 'courier new', courier, monospace;\">~\/Public\/__init__.py<\/span> l\u00f6scht sich nach der Ausf\u00fchrung selbst, um sicherzustellen, dass sie nur im Speicher existiert. Es sendet grundlegende Informationen \u00fcber den Computer des Opfers und des Betriebssystems \u00fcber HTTPS an denselben C2 unter <span style=\"font-family: 'courier new', courier, monospace;\">de.stockslab[.]org<\/span>, gefolgt von einer Befehlsschleife mit den folgenden Optionen in Tabelle 2.<\/p>\n<table style=\"width: 98.0787%;\">\n<tbody>\n<tr>\n<td style=\"text-align: center; width: 6.22141%;\"><b>Code<\/b><\/td>\n<td style=\"text-align: center; width: 91.1254%;\"><b>Beschreibung<\/b><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center; width: 6.22141%;\"><span style=\"font-weight: 400;\">0<\/span><\/td>\n<td style=\"text-align: left; width: 91.1254%;\"><span style=\"font-weight: 400;\">Pause f\u00fcr 20\u00a0Sekunden<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center; width: 6.22141%;\"><span style=\"font-weight: 400;\">1<\/span><\/td>\n<td style=\"text-align: left; width: 91.1254%;\"><span style=\"font-weight: 400;\">Base64-dekodiert gesendete Inhalte und speichert sie in der Datei <\/span><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">init.dll<\/span><span style=\"font-weight: 400;\"> f\u00fcr Windows oder <\/span><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">init<\/span><span style=\"font-weight: 400;\"> f\u00fcr alle anderen Betriebssysteme.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Setzt eine Umgebungsvariable <\/span><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">X_DATABASE_NAME<\/span><span style=\"font-weight: 400;\"> auf eine leere Zeichenkette.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">L\u00e4dt und f\u00fchrt die heruntergeladene DLL mit <\/span><a href=\"https:\/\/docs.python.org\/3\/library\/ctypes.html#ctypes.CDLL\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">ctypes.cdll.LoadLibrary<\/span><\/a><span style=\"font-weight: 400;\"> aus.<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center; width: 6.22141%;\"><span style=\"font-weight: 400;\">2<\/span><\/td>\n<td style=\"text-align: left; width: 91.1254%;\"><span style=\"font-weight: 400;\">Base64-dekodiert gesendete Inhalte und f\u00fchrt sie mit dem in Python integrierten <\/span><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">exec <\/span><span style=\"font-weight: 400;\">aus.<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center; width: 6.22141%;\"><span style=\"font-weight: 400;\">3<\/span><\/td>\n<td style=\"text-align: left; width: 91.1254%;\"><span style=\"font-weight: 400;\">Base64-dekodiert gesendete Inhalte und einen Parameter. Der Inhalt wird in der Datei <\/span><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">dockerd<\/span><span style=\"font-weight: 400;\"> gespeichert, w\u00e4hrend der Parameter als <\/span><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">docker-init <\/span><span style=\"font-weight: 400;\">gespeichert wird.<\/span><\/p>\n<p><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">dockerd<\/span><span style=\"font-weight: 400;\"> wird dann in einem neuen Prozess ausgef\u00fchrt, wobei <\/span><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">docker-init<\/span><span style=\"font-weight: 400;\"> als Befehlszeilenargument \u00fcbergeben wird.<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center; width: 6.22141%;\"><span style=\"font-weight: 400;\">9<\/span><\/td>\n<td style=\"text-align: left; width: 91.1254%;\"><span style=\"font-weight: 400;\">Beendet die Ausf\u00fchrung.<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span style=\"font-size: 11pt;\">Tabelle 2. RN Loader-Befehlstabelle. <\/span><\/p>\n<p>Die Payload der Befehlsschleife aus Tabelle 2 mit den Optionen <strong>1<\/strong> und <strong>3<\/strong> sind derzeit unbekannt und werden wahrscheinlich durch bestimmte Bedingungen ausgel\u00f6st. Wir haben jedoch einen Python-basierten Infostealer gefunden, der \u00fcber die Option <strong>2<\/strong> ausgeliefert wurde, und wir verfolgen diese Malware als RN Stealer.<\/p>\n<h4><a id=\"post-142129-_heading=h.r3a59kjueja2\"><\/a>RN Stealer<\/h4>\n<p>Der RN Stealer generiert zun\u00e4chst eine zuf\u00e4llige Opfer-ID, die anschlie\u00dfend als Cookie f\u00fcr die gesamte Kommunikation mit dem C2-Server verwendet wird. Er fordert dann einen XOR-Schl\u00fcssel vom Server an, um die exfiltrierten Daten zu verschl\u00fcsseln.<\/p>\n<p>Die Kommunikation mit dem C2-Server erfolgt \u00fcber HTTPS, wobei Base64-kodierte Token verwendet werden, um Anfrage- und Antworttypen zu identifizieren. Die analysierte payload umfasst vier Token-Typen:<\/p>\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">R0<\/span> - Abfrage des XOR-Schl\u00fcssels<\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">R64<\/span> - Exfiltrieren von Daten<\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">R128<\/span> - Komprimierte Daten exfiltrieren<\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">R256<\/span> - Infostealer komplett<\/li>\n<\/ul>\n<p>Das Format dieser Token-Typen - der Buchstabe <span style=\"font-family: 'courier new', courier, monospace;\">R<\/span> gefolgt von einer Ganzzahl <span style=\"font-family: 'courier new', courier, monospace;\">N<\/span> - f\u00fchrte zu unseren Namen f\u00fcr dieser Payload. Wir nennen die Payload RN Stealer und die vorangehende Stufe RN Loader.<\/p>\n<p>Wir haben das Skript f\u00fcr dieses RN-Stealer-Beispiel von einem macOS-System wiederhergestellt. Die Autoren der Bedrohung haben dieses Beispiel so angepasst, dass sie Informationen stehlen, die speziell f\u00fcr macOS-Ger\u00e4te bestimmt sind, darunter:<\/p>\n<ul>\n<li>Grundlegende Informationen zum Opfer: Benutzername, Rechnername und Architektur<\/li>\n<li>Installierte Anwendungen<\/li>\n<li>Eine Verzeichnisauflistung und der Inhalt der obersten Ebene des Home-Verzeichnisses des Opfers<\/li>\n<li>Die Datei <span style=\"font-family: 'courier new', courier, monospace;\">login.keychain-db<\/span>, die gespeicherte Zugangsdaten in macOS-Systemen speichert<\/li>\n<li>Gespeicherte SSH-Schl\u00fcssel<\/li>\n<li>Konfigurationsdateien f\u00fcr AWS, Kubernetes und Google Cloud<\/li>\n<\/ul>\n<p>Die von RN Stealer gesammelten Daten bestimmen wahrscheinlich, ob ein dauerhafter Zugriff erforderlich ist. Wenn ja, k\u00f6nnen wir die folgenden Schritte f\u00fcr diese Python-Infektionskette ableiten:<\/p>\n<ol>\n<li>Der C2-Server pr\u00fcft Beaconing-Opfer anhand unbekannter Kriterien. G\u00fcltige Opfer erhalten eine YAML-Payload zur Deserialisierung. Ung\u00fcltige Opfer erhalten unauff\u00e4llige JSON-Daten.<\/li>\n<li>Die Deserialisierungs-Payload baut eine Befehlsschleife mit dem C2-Server auf, wobei sie grundlegende Informationen \u00fcber das Opfer aussp\u00e4ht und \u00fcber den Optionscode <strong>2<\/strong> in Tabelle 2 einen benutzerdefinierten Python-Infostealer ausliefert.<\/li>\n<li>Der Infostealer sammelt detailliertere Informationen \u00fcber das Opfer, die die Angreifer wahrscheinlich nutzten, um festzustellen, ob sie weiterhin Zugang ben\u00f6tigen.\n<ol>\n<li>Wenn ein kontinuierlicher Zugriff erforderlich ist, liefert der C2-Server eine payload \u00fcber die Optionscodes <strong>1 <\/strong>oder <strong>3<\/strong>.<\/li>\n<li>Wenn der Zugriff nicht mehr ben\u00f6tigt wird, beendet der Optionscode <strong>9<\/strong> die Ausf\u00fchrung der Malware und entfernt alle Zugriffe, da sich die payload ausschlie\u00dflich im Speicher befindet.<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<h3><a id=\"post-142129-_heading=h.jl5z05kkpodz\"><\/a>Stufe 3b - JavaScript Repository<\/h3>\n<p>Wenn die anvisierten Opfer sich f\u00fcr eine JavaScript-Rolle beworben haben, k\u00f6nnten sie stattdessen auf ein \"Cryptocurrency Dashboard\"-Projekt sto\u00dfen, \u00e4hnlich dem Beispiel in Abbildung 6 unten.<\/p>\n<figure id=\"attachment_138847\" aria-describedby=\"caption-attachment-138847\" style=\"width: 800px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-138847 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-598004-138780-6.png\" alt=\"Screenshot eines GitHub-Repositorys mit dem Namen \u201eCryptocurrency Dashboard\u201c, in dem eine README.md-Datei angezeigt wird. Diese README enth\u00e4lt Abschnitte: Funktionen, Installation, Verwendung, Projektstruktur, Konfiguration, Abh\u00e4ngigkeiten und Lizenz. Sie beschreibt das Projekt als eine mit Node.js, Express und EJS erstellte Anwendung, die Echtzeit- und historische Daten f\u00fcr verschiedene Kryptow\u00e4hrungen anzeigt.\" width=\"800\" height=\"462\" srcset=\"https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-598004-138780-6.png 1764w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-598004-138780-6-762x440.png 762w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-598004-138780-6-1213x700.png 1213w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-598004-138780-6-768x443.png 768w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-598004-138780-6-1536x886.png 1536w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption id=\"caption-attachment-138847\" class=\"wp-caption-text\">Abbildung 6. JavaScript Repository.<\/figcaption><\/figure>\n<p>Diese Anwendung enth\u00e4lt eine .env-Datei mit C2 und der legitimen Datenquelle:<\/p>\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">PORT=3000<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">COINGECKO_API_URL=hxxps:\/\/api.coingecko[.]com\/api\/v3<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">JQUERY_API_URL=hxxps:\/\/update.jquerycloud[.]io\/api\/v1<\/span><\/li>\n<\/ul>\n<p>Der Wert <span style=\"font-family: 'courier new', courier, monospace;\">COINGECKO_API_URL<\/span> wird verwendet, um Daten f\u00fcr das Cryptocurrency Dashboard abzurufen, w\u00e4hrend der Wert <span style=\"font-family: 'courier new', courier, monospace;\">JQUERY_API_URL<\/span> einen von Slow Pisces kontrollierten C2-Server darstellt. \u00c4hnlich wie das Python-Repository liefert der JavaScript-C2-Server Payload nur an \u00fcberpr\u00fcfte Ziele, ansonsten antwortet er mit einer Versionsnummer.<\/p>\n<p>Das Repository verwendet das <a href=\"https:\/\/ejs.co\/\" target=\"_blank\" rel=\"noopener\">Embedded JavaScript (EJS) Template-Tool<\/a> und \u00fcbergibt Antworten vom C2-Server an die <span style=\"font-family: 'courier new', courier, monospace;\">ejs.render()<\/span>-Funktion, die unten in Abbildung 7 zu sehen ist.<\/p>\n<figure id=\"attachment_138858\" aria-describedby=\"caption-attachment-138858\" style=\"width: 700px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-138858 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-602043-138780-7.png\" alt=\"Der Screenshot zeigt einen Codeschnipsel in JavaScript. Er enth\u00e4lt einen Kommentar und einen Funktionsaufruf zum Rendern einer Homepage mit Einstellungen und Elementen pro Seite. res.render ist in einem roten Kasten hervorgehoben.\" width=\"700\" height=\"294\" srcset=\"https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-602043-138780-7.png 1116w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-602043-138780-7-786x330.png 786w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-602043-138780-7-768x322.png 768w\" sizes=\"(max-width: 700px) 100vw, 700px\" \/><figcaption id=\"caption-attachment-138858\" class=\"wp-caption-text\">Abbildung 7. JavaScript-Code, der den Einstiegspunkt der Slow Pisces-Malware mithilfe der EJS-Render-Funktion zeigt.<\/figcaption><\/figure>\n<p>Wie die Verwendung von <span style=\"font-family: 'courier new', courier, monospace;\">yaml.load()<\/span>ist dies eine weitere Technik, die Slow Pisces einsetzt, um die Ausf\u00fchrung von beliebigem Code von seinen C2-Servern zu verbergen, und diese Methode ist vielleicht nur offensichtlich, wenn man eine g\u00fcltige Payload betrachtet.<\/p>\n<p>Die EJS-Renderfunktion akzeptiert verschiedene Parameter, von denen einer <span style=\"font-family: 'courier new', courier, monospace;\">view options<\/span> hei\u00dft. Darin kann beliebiger JavaScript-Code bereitgestellt und \u00fcber den Wert <span style=\"font-family: 'courier new', courier, monospace;\">escapeFunction<\/span> ausgef\u00fchrt werden.<\/p>\n<p>Ein taiwanesischer Forscher, der unter dem Namen Huli bekannt ist, hat in einem <a href=\"https:\/\/blog.huli.tw\/2023\/06\/22\/en\/ejs-render-vulnerability-ctf\/\" target=\"_blank\" rel=\"noopener\">CTF-Beitrag<\/a> die technischen Details er\u00f6rtert, wie dies zur Ausf\u00fchrung von willk\u00fcrlichem Code f\u00fchrt. Wir k\u00f6nnen jedoch hinreichend verstehen, dass eine wie in Abbildung\u00a08 strukturierte Payload dazu f\u00fchrt, dass der in <span style=\"font-family: 'courier new', courier, monospace;\">escapeFunction<\/span> enthaltene Code ausgef\u00fchrt wird, wenn er an <span style=\"font-family: 'courier new', courier, monospace;\">ejs.render()<\/span> \u00fcbergeben wird.<\/p>\n<figure id=\"attachment_138869\" aria-describedby=\"caption-attachment-138869\" style=\"width: 700px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-138869 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-605478-138780-8.png\" alt=\"Screenshot eines JavaScript-Codefragments mit Funktionen, wobei ,,escapeFunction&quot; in einem roten Kasten hervorgehoben ist.\" width=\"700\" height=\"593\" srcset=\"https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-605478-138780-8.png 1234w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-605478-138780-8-519x440.png 519w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-605478-138780-8-826x700.png 826w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-605478-138780-8-768x651.png 768w\" sizes=\"(max-width: 700px) 100vw, 700px\" \/><figcaption id=\"caption-attachment-138869\" class=\"wp-caption-text\">Abbildung 8. Teilweise EJS-Render-Payload.<\/figcaption><\/figure>\n<p>Leider waren wir nicht in der Lage, den gesamten Teil dieser Payload wiederherzustellen . Wir k\u00f6nnen daher nur vermuten, dass ein neues Verzeichnis <span style=\"font-family: 'courier new', courier, monospace;\">.jql<\/span> unter dem Home-Verzeichnis des Benutzers erstellt wird, in dem eine Datei namens <span style=\"font-family: 'courier new', courier, monospace;\">helper.js<\/span> abgelegt wird, die Base64-kodierte Daten enth\u00e4lt.<\/p>\n<h3><a id=\"post-142129-_heading=h.8me9wca4frrg\"><\/a>Infrastruktur<\/h3>\n<p>Die Zeitleiste unten in Abbildung 9 zeigt die C2-Infrastruktur, die in dieser Kampagne von Februar 2024 bis Februar 2025 verwendet wurde, gruppiert nach dem Typ des verwendeten Repositorys (JavaScript oder Python).<\/p>\n<figure id=\"attachment_138880\" aria-describedby=\"caption-attachment-138880\" style=\"width: 1000px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-138880 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-609427-138780-9.png\" alt=\"Zeitleiste der Infrastruktur zur Verfolgung der JavaScript-Befehle und -Steuerungen (oben, gelbe Markierung) und der Python-Befehle und -Steuerungen (unten, orange Markierung). Die Zeitleiste beginnt am Ende des ersten Quartals 2024 und reicht bis zum zweiten Quartal 2025.\" width=\"1000\" height=\"906\" srcset=\"https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-609427-138780-9.png 1338w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-609427-138780-9-486x440.png 486w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-609427-138780-9-773x700.png 773w, https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/word-image-609427-138780-9-768x696.png 768w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><figcaption id=\"caption-attachment-138880\" class=\"wp-caption-text\">Abbildung 9. Zeitplan f\u00fcr die C2-Infrastruktur<\/figcaption><\/figure>\n<p>Wie bereits erw\u00e4hnt, k\u00f6nnen die Domains in der Infrastruktur dieser Kampagne das Format der daneben verwendeten legitimen Quellen imitieren und verwenden h\u00e4ufig Subdomains wie <span style=\"font-family: 'courier new', courier, monospace;\">api<\/span> oder <span style=\"font-family: 'courier new', courier, monospace;\">cdn.<\/span> Bis zum Zeitpunkt der Ver\u00f6ffentlichung dieses Artikels haben wir die mit dieser Kampagne verbundene Infrastruktur entdeckt.<\/p>\n<h2><a id=\"post-142129-_heading=h.mqznw078m8ge\"><\/a>Fazit<\/h2>\n<p>In diesem Bericht haben wir \u00fcber die j\u00fcngste Kampagne von Slow Pisces berichtet, bei der sich Slow Pisces \u00fcber LinkedIn als Personalvermittler ausgab, um Entwickler im Kryptow\u00e4hrungssektor mit b\u00f6sartigen Coding-Herausforderungen anzusprechen. Wir waren zwar nicht in der Lage, die vollst\u00e4ndige Angriffskette f\u00fcr JavaScript-Repositories wiederherzustellen, aber die Python-Version der Kampagne lieferte zwei neue Payloads, die wir RN Loader und RN Stealer genannt haben.<\/p>\n<p>Die Nutzung von LinkedIn und GitHub auf diese Weise ist nicht einzigartig. Mehrere der DVRK nahestehende Gruppen haben \u00e4hnliche Taktiken angewandt, wie <a href=\"https:\/\/www.reversinglabs.com\/blog\/fake-recruiter-coding-tests-target-devs-with-malicious-python-packages\" target=\"_blank\" rel=\"noopener\">Alluring Pisces<\/a> und <a href=\"https:\/\/unit42.paloaltonetworks.com\/two-campaigns-by-north-korea-bad-actors-target-job-hunters\/\" target=\"_blank\" rel=\"noopener\">Contagious Interview<\/a>.<\/p>\n<p>Diese Gruppen weisen keine operativen \u00dcberschneidungen auf. Es ist jedoch bemerkenswert, dass diese Kampagnen \u00e4hnliche Vektoren f\u00fcr die Erstinfektion verwenden.<\/p>\n<p>Slow Pisces hebt sich von den Kampagnen seiner Mitstreiter im Bereich der operativen Sicherheit ab. Die Verteilung von Payload auf jeder Stufe ist streng bewacht und existiert nur im Speicher. Und die sp\u00e4teren Werkzeuge der Gruppe werden nur bei Bedarf bereitgestellt.<\/p>\n<p>Die Gruppe nutzte insbesondere zwei Techniken, um die Funktionalit\u00e4t zu verbergen:<\/p>\n<ul>\n<li>YAML Deserialisierung<\/li>\n<li>EJS <span style=\"font-family: 'courier new', courier, monospace;\">escapeFunction<\/span><\/li>\n<\/ul>\n<p>Beide Techniken behindern die Analyse, Entdeckung und Jagd erheblich. Auch relativ neue oder unerfahrene Entwickler im Bereich der Kryptow\u00e4hrungen h\u00e4tten Schwierigkeiten, diese Repositories als b\u00f6sartig zu identifizieren.<\/p>\n<p>Ausgehend von \u00f6ffentlichen Berichten \u00fcber Kryptow\u00e4hrungs\u00fcberf\u00e4lle scheint diese Kampagne sehr erfolgreich zu sein und wird wahrscheinlich auch im Jahr 2025 fortgesetzt. In diesem Artikel wurden zwar zwei potenzielle Entdeckungsm\u00f6glichkeiten f\u00fcr YAML-Deserialisierung und EJS <span style=\"font-family: 'courier new', courier, monospace;\">escapeFunction<\/span>-Payloads hervorgehoben, doch die wirksamste Abhilfema\u00dfnahme bleibt die strikte Trennung von Firmen- und Privatger\u00e4ten. Dies hilft, die Kompromittierung von Unternehmenssystemen durch gezielte Social-Engineering-Kampagnen zu verhindern.<\/p>\n<h3><a id=\"post-142129-_heading=h.aef60ro4xq7i\"><\/a>Palo Alto Networks Schutz und Schadensbegrenzung<\/h3>\n<p>Kunden von Palo Alto Networks sind durch die folgenden Produkte besser vor den oben genannten Bedrohungen gesch\u00fctzt:<\/p>\n<ul>\n<li><a href=\"https:\/\/docs.paloaltonetworks.com\/advanced-url-filtering\/administration\" target=\"_blank\" rel=\"noopener\">Erweitertes URL Filtering<\/a> und <a href=\"https:\/\/docs.paloaltonetworks.com\/dns-security\" target=\"_blank\" rel=\"noopener\">Erweiterte DNS-Sicherheit<\/a><\/li>\n<\/ul>\n<p>Wenn Sie glauben, dass Sie kompromittiert wurden oder ein dringendes Anliegen haben, wenden Sie sich an das<a href=\"https:\/\/start.paloaltonetworks.com\/contact-unit42.html\" target=\"_blank\" rel=\"noopener\"> Unit 42 Incident Response Team<\/a> oder rufen Sie an:<\/p>\n<ul>\n<li>Nord-Amerika: Geb\u00fchrenfrei: +1 (866) 486-4842 (866.4.UNIT42)<\/li>\n<li>UK: +44.20.3743.3660<\/li>\n<li>Europa und Naher Osten: +31.20.299.3130<\/li>\n<li>Asien: +65.6983.8730<\/li>\n<li>Japan: +81.50.1790.0200<\/li>\n<li>Australien: +61.2.4062.7950<\/li>\n<li>Indien: 00080005045107<\/li>\n<\/ul>\n<p>Palo Alto Networks hat diese Erkenntnisse mit den anderen Mitgliedern der Cyber Threat Alliance (CTA) geteilt. CTA-Mitglieder nutzen diese Informationen, um ihren Kunden schnell Schutzma\u00dfnahmen bereitzustellen und b\u00f6swillige Cyber-Akteure systematisch zu st\u00f6ren. Erfahren Sie mehr \u00fcber die <a href=\"https:\/\/www.cyberthreatalliance.org\" target=\"_blank\" rel=\"noopener\">Cyber Threat Alliance<\/a>.<\/p>\n<h2><a id=\"post-142129-_heading=h.v0bil5grxeqp\"><\/a>Kompromissindikatoren<\/h2>\n<table style=\"width: 93.551%;\">\n<tbody>\n<tr>\n<td style=\"text-align: center; width: 29.9401%;\"><b>Domain<\/b><\/td>\n<td style=\"text-align: center; width: 20.4368%;\"><b>IP Address<\/b><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><b>Erstmals gesehen<\/b><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><b>Zuletzt gesehen<\/b><\/td>\n<td style=\"text-align: center; width: 51.2787%;\"><b>Repository<\/b><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">getstockprice[.]com<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">70.34.245[.]118<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2025-02-03<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2025-02-20<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">Python<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">cdn[.]clubinfo[.]io<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">5.206.227[.]51<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2025-01-21<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2025-02-19<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">Python<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">getstockprice[.]info<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">131.226.2[.]120<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2025-01-21<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2025-01-23<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">Python<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">api[.]stockinfo[.]io<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">136.244.93[.]248<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2024-10-30<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2024-11-11<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">Python<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">cdn[.]logoeye[.]net<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">54.39.83[.]151<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2024-10-29<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2024-11-03<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">Python<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">en[.]wfinance[.]org<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">195.133.26[.]32<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2024-10-12<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2024-11-01<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">Python<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">en[.]stocksindex[.]org<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">185.236.231[.]224<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2024-09-11<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2024-10-04<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">Python<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">cdn[.]jqueryversion[.]net<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">194.11.226[.]16<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2024-08-23<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2024-09-23<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">JavaScript<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">en[.]stockslab[.]org<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">91.103.140[.]191<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2024-08-19<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2024-09-12<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">Python<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">update[.]jquerycloud[.]io<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">192.236.199[.]57<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2024-07-03<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2024-08-22<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">JavaScript<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">cdn[.]soccerlab[.]io<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">146.70.124[.]70<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2024-08-07<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2024-08-21<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">Python<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">api[.]coinpricehub[.]io<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">45.141.58[.]40<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2024-05-06<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2024-08-06<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">Java<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">cdn[.]leaguehub[.]net<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">5.133.9[.]252<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2024-07-15<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2024-07-21<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">Python<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">cdn[.]clublogos[.]io<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">146.19.173[.]29<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2024-06-24<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2024-07-12<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">Python<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">api[.]jquery-release[.]com<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">146.70.125[.]120<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2024-06-10<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2024-06-28<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">JavaScript<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">cdn[.]logosports[.]net<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">185.62.58[.]74<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2024-05-08<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2024-06-23<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">Python<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">skypredict[.]org<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">80.82.77[.]80<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2024-05-06<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2024-06-16<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">JavaScript<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">api[.]bitzone[.]io<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">192.248.145[.]210<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2024-04-25<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2024-05-13<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">Python<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">weatherdatahub[.]org<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">194.15.112[.]200<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2024-04-05<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2024-05-03<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">JavaScript<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">api[.]ethzone[.]io<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">91.234.199[.]90<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2024-04-16<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2024-04-24<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">Python<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">api[.]fivebit[.]io<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">185.216.144[.]41<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2024-04-08<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2024-04-14<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">Python<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">blockprices[.]io<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">91.193.18[.]201<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2024-03-15<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2024-04-09<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">JavaScript<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">api[.]coinhar[.]io<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">185.62.58[.]122<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2024-03-26<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2024-04-09<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">Python<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">mavenradar[.]com<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">23.254.230[.]253<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2024-02-21<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2024-03-26<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">JavaScript<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">indobit[.]io<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">146.70.88[.]126<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2024-03-19<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2024-03-20<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">Python<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">api[.]thaibit[.]io<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">79.137.248[.]193<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2024-03-07<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2024-03-09<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">Python<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 29.9401%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">chainanalyser[.]com<\/span><\/td>\n<td style=\"width: 20.4368%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">38.180.62[.]135<\/span><\/td>\n<td style=\"text-align: center; width: 17.6648%;\"><span style=\"font-weight: 400;\">2024-02-23<\/span><\/td>\n<td style=\"text-align: center; width: 16.7684%;\"><span style=\"font-weight: 400;\">2024-03-06<\/span><\/td>\n<td style=\"width: 51.2787%;\"><span style=\"font-weight: 400;\">JavaScript<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2><a id=\"post-142129-_heading=h.duv0v75wxy7g\"><\/a>Zus\u00e4tzliche Ressourcen<\/h2>\n<ul>\n<li><a href=\"https:\/\/www.ic3.gov\/PSA\/2025\/PSA250226\" target=\"_blank\" rel=\"noopener\">Nordkorea verantwortlich f\u00fcr 1,5 Milliarden Dollar Bybit-Hack<\/a> - Internet Crime Complaint Center (IC3)<\/li>\n<li><a href=\"https:\/\/www.fbi.gov\/news\/press-releases\/fbi-dc3-and-npa-identification-of-north-korean-cyber-actors-tracked-as-tradertraitor-responsible-for-theft-of-308-million-from-bitcoindmmcom\" target=\"_blank\" rel=\"noopener\">FBI, DC3 und NPA identifizieren nordkoreanische Cyber-Akteure, die als TraderTraitor verfolgt werden und f\u00fcr den Diebstahl von 308 Millionen USD von Bitcoin.DMM.com verantwortlich sind<\/a> - FBI<\/li>\n<li><a href=\"https:\/\/github.blog\/security\/vulnerability-research\/security-alert-social-engineering-campaign-targets-technology-industry-employees\/\" target=\"_blank\" rel=\"noopener\">Sicherheitswarnung: Social-Engineering-Kampagne zielt auf Mitarbeiter der Technologiebranche<\/a> - GitHub Blog<\/li>\n<li><a href=\"https:\/\/cloud.google.com\/blog\/topics\/threat-intelligence\/north-korea-supply-chain\" target=\"_blank\" rel=\"noopener\">Nordkorea nutzt SaaS-Anbieter f\u00fcr einen gezielten Angriff auf die Lieferkette<\/a> - Mandiant, Google Cloud<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Die vom nordkoreanischen Staat gesponserte Gruppe Slow Pisces (Jade Sleet) hat Krypto-Entwickler mit einer Social-Engineering-Kampagne ins Visier genommen, die auch b\u00f6sartige Coding-Herausforderungen beinhaltete.<\/p>\n","protected":false},"author":366,"featured_media":138785,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[8824,8734,8788],"tags":[8907,8904,8908,8909,8910,8911,8905],"product_categories":[],"coauthors":[8711],"class_list":["post-142129","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-threat-actor-groups-de","category-cybercrime-de","category-malware-de","tag-cryptocurrency-de","tag-dprk-de","tag-github-de","tag-infostealer-de","tag-javascript-malware-de","tag-slow-pisces-de","tag-social-engineering-de"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.0 (Yoast SEO v27.0) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Slow Pisces zielt auf Entwickler mit Coding-Herausforderungen ab und stellt eine neue angepasste Python-Malware vor<\/title>\n<meta name=\"description\" content=\"Die vom nordkoreanischen Staat gesponserte Gruppe Slow Pisces (Jade Sleet) hat Krypto-Entwickler mit einer Social-Engineering-Kampagne ins Visier genommen, die auch b\u00f6sartige Coding-Herausforderungen beinhaltete. Die vom nordkoreanischen Staat gesponserte Gruppe Slow Pisces (Jade Sleet) hat Krypto-Entwickler mit einer Social-Engineering-Kampagne ins Visier genommen, die auch b\u00f6sartige Coding-Herausforderungen beinhaltete.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/unit42.paloaltonetworks.com\/de\/slow-pisces-new-custom-malware\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Slow Pisces zielt auf Entwickler mit Coding-Herausforderungen ab und stellt eine neue angepasste Python-Malware vor\" \/>\n<meta property=\"og:description\" content=\"Die vom nordkoreanischen Staat gesponserte Gruppe Slow Pisces (Jade Sleet) hat Krypto-Entwickler mit einer Social-Engineering-Kampagne ins Visier genommen, die auch b\u00f6sartige Coding-Herausforderungen beinhaltete. Die vom nordkoreanischen Staat gesponserte Gruppe Slow Pisces (Jade Sleet) hat Krypto-Entwickler mit einer Social-Engineering-Kampagne ins Visier genommen, die auch b\u00f6sartige Coding-Herausforderungen beinhaltete.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/unit42.paloaltonetworks.com\/de\/slow-pisces-new-custom-malware\/\" \/>\n<meta property=\"og:site_name\" content=\"Unit 42\" \/>\n<meta property=\"article:published_time\" content=\"2025-04-14T20:40:53+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-19T18:04:10+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/Pisces-NK-A-1920x900-1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1920\" \/>\n\t<meta property=\"og:image:height\" content=\"900\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Prashil Pattni\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Slow Pisces zielt auf Entwickler mit Coding-Herausforderungen ab und stellt eine neue angepasste Python-Malware vor","description":"Die vom nordkoreanischen Staat gesponserte Gruppe Slow Pisces (Jade Sleet) hat Krypto-Entwickler mit einer Social-Engineering-Kampagne ins Visier genommen, die auch b\u00f6sartige Coding-Herausforderungen beinhaltete. Die vom nordkoreanischen Staat gesponserte Gruppe Slow Pisces (Jade Sleet) hat Krypto-Entwickler mit einer Social-Engineering-Kampagne ins Visier genommen, die auch b\u00f6sartige Coding-Herausforderungen beinhaltete.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/unit42.paloaltonetworks.com\/de\/slow-pisces-new-custom-malware\/","og_locale":"de_DE","og_type":"article","og_title":"Slow Pisces zielt auf Entwickler mit Coding-Herausforderungen ab und stellt eine neue angepasste Python-Malware vor","og_description":"Die vom nordkoreanischen Staat gesponserte Gruppe Slow Pisces (Jade Sleet) hat Krypto-Entwickler mit einer Social-Engineering-Kampagne ins Visier genommen, die auch b\u00f6sartige Coding-Herausforderungen beinhaltete. Die vom nordkoreanischen Staat gesponserte Gruppe Slow Pisces (Jade Sleet) hat Krypto-Entwickler mit einer Social-Engineering-Kampagne ins Visier genommen, die auch b\u00f6sartige Coding-Herausforderungen beinhaltete.","og_url":"https:\/\/unit42.paloaltonetworks.com\/de\/slow-pisces-new-custom-malware\/","og_site_name":"Unit 42","article_published_time":"2025-04-14T20:40:53+00:00","article_modified_time":"2025-06-19T18:04:10+00:00","og_image":[{"width":1920,"height":900,"url":"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/Pisces-NK-A-1920x900-1.png","type":"image\/png"}],"author":"Prashil Pattni","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/unit42.paloaltonetworks.com\/de\/slow-pisces-new-custom-malware\/#article","isPartOf":{"@id":"https:\/\/unit42.paloaltonetworks.com\/de\/slow-pisces-new-custom-malware\/"},"author":{"name":"Sheida Azimi","@id":"https:\/\/unit42.paloaltonetworks.com\/#\/schema\/person\/7ee97ec6f224446d57c0383eb5fd3639"},"headline":"Slow Pisces zielt auf Entwickler mit Coding-Herausforderungen ab und stellt eine neue angepasste Python-Malware vor","datePublished":"2025-04-14T20:40:53+00:00","dateModified":"2025-06-19T18:04:10+00:00","mainEntityOfPage":{"@id":"https:\/\/unit42.paloaltonetworks.com\/de\/slow-pisces-new-custom-malware\/"},"wordCount":3174,"commentCount":0,"image":{"@id":"https:\/\/unit42.paloaltonetworks.com\/de\/slow-pisces-new-custom-malware\/#primaryimage"},"thumbnailUrl":"https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/Pisces-NK-A-1920x900-1.png","keywords":["Cryptocurrency","DPRK","GitHub","Infostealer","JavaScript Malware","Slow Pisces","social engineering"],"articleSection":["Angreifergruppen","Cyberangriffe","Malware"],"inLanguage":"de","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/unit42.paloaltonetworks.com\/de\/slow-pisces-new-custom-malware\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/unit42.paloaltonetworks.com\/de\/slow-pisces-new-custom-malware\/","url":"https:\/\/unit42.paloaltonetworks.com\/de\/slow-pisces-new-custom-malware\/","name":"Slow Pisces zielt auf Entwickler mit Coding-Herausforderungen ab und stellt eine neue angepasste Python-Malware vor","isPartOf":{"@id":"https:\/\/unit42.paloaltonetworks.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/unit42.paloaltonetworks.com\/de\/slow-pisces-new-custom-malware\/#primaryimage"},"image":{"@id":"https:\/\/unit42.paloaltonetworks.com\/de\/slow-pisces-new-custom-malware\/#primaryimage"},"thumbnailUrl":"https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/Pisces-NK-A-1920x900-1.png","datePublished":"2025-04-14T20:40:53+00:00","dateModified":"2025-06-19T18:04:10+00:00","author":{"@id":"https:\/\/unit42.paloaltonetworks.com\/#\/schema\/person\/7ee97ec6f224446d57c0383eb5fd3639"},"description":"Die vom nordkoreanischen Staat gesponserte Gruppe Slow Pisces (Jade Sleet) hat Krypto-Entwickler mit einer Social-Engineering-Kampagne ins Visier genommen, die auch b\u00f6sartige Coding-Herausforderungen beinhaltete. Die vom nordkoreanischen Staat gesponserte Gruppe Slow Pisces (Jade Sleet) hat Krypto-Entwickler mit einer Social-Engineering-Kampagne ins Visier genommen, die auch b\u00f6sartige Coding-Herausforderungen beinhaltete.","breadcrumb":{"@id":"https:\/\/unit42.paloaltonetworks.com\/de\/slow-pisces-new-custom-malware\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/unit42.paloaltonetworks.com\/de\/slow-pisces-new-custom-malware\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/unit42.paloaltonetworks.com\/de\/slow-pisces-new-custom-malware\/#primaryimage","url":"https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/Pisces-NK-A-1920x900-1.png","contentUrl":"https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/03\/Pisces-NK-A-1920x900-1.png","width":1920,"height":900,"caption":"Pictorial representation of APT Slow Pisces. The silhouette of two fish and the Pisces constellation inside an orange abstract planet. Background of stars and swirling purple and blue colors."},{"@type":"BreadcrumbList","@id":"https:\/\/unit42.paloaltonetworks.com\/de\/slow-pisces-new-custom-malware\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/unit42.paloaltonetworks.com\/"},{"@type":"ListItem","position":2,"name":"Slow Pisces zielt auf Entwickler mit Coding-Herausforderungen ab und stellt eine neue angepasste Python-Malware vor"}]},{"@type":"WebSite","@id":"https:\/\/unit42.paloaltonetworks.com\/#website","url":"https:\/\/unit42.paloaltonetworks.com\/","name":"Unit 42","description":"Palo Alto Networks","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/unit42.paloaltonetworks.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":"Person","@id":"https:\/\/unit42.paloaltonetworks.com\/#\/schema\/person\/7ee97ec6f224446d57c0383eb5fd3639","name":"Sheida Azimi","image":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/unit42.paloaltonetworks.com\/#\/schema\/person\/image\/9213e49ea48b7676660bac40d05c9e3e","url":"https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2018\/11\/unit-news-meta.svg","contentUrl":"https:\/\/origin-unit42.paloaltonetworks.com\/wp-content\/uploads\/2018\/11\/unit-news-meta.svg","caption":"Sheida Azimi"},"url":"https:\/\/origin-unit42.paloaltonetworks.com\/de\/author\/sheida-azimi\/"}]}},"_links":{"self":[{"href":"https:\/\/origin-unit42.paloaltonetworks.com\/de\/wp-json\/wp\/v2\/posts\/142129","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/origin-unit42.paloaltonetworks.com\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/origin-unit42.paloaltonetworks.com\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/origin-unit42.paloaltonetworks.com\/de\/wp-json\/wp\/v2\/users\/366"}],"replies":[{"embeddable":true,"href":"https:\/\/origin-unit42.paloaltonetworks.com\/de\/wp-json\/wp\/v2\/comments?post=142129"}],"version-history":[{"count":8,"href":"https:\/\/origin-unit42.paloaltonetworks.com\/de\/wp-json\/wp\/v2\/posts\/142129\/revisions"}],"predecessor-version":[{"id":143893,"href":"https:\/\/origin-unit42.paloaltonetworks.com\/de\/wp-json\/wp\/v2\/posts\/142129\/revisions\/143893"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/origin-unit42.paloaltonetworks.com\/de\/wp-json\/wp\/v2\/media\/138785"}],"wp:attachment":[{"href":"https:\/\/origin-unit42.paloaltonetworks.com\/de\/wp-json\/wp\/v2\/media?parent=142129"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/origin-unit42.paloaltonetworks.com\/de\/wp-json\/wp\/v2\/categories?post=142129"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/origin-unit42.paloaltonetworks.com\/de\/wp-json\/wp\/v2\/tags?post=142129"},{"taxonomy":"product_categories","embeddable":true,"href":"https:\/\/origin-unit42.paloaltonetworks.com\/de\/wp-json\/wp\/v2\/product_categories?post=142129"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/origin-unit42.paloaltonetworks.com\/de\/wp-json\/wp\/v2\/coauthors?post=142129"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}