Detection stack
- AIDR
- Alert
- ETL
- Query
概要
Morphisecは、使われていないGitHubアカウントを利用してAI生成リポジトリをホストし、最終的にPyStoreRATと名付けられたJavaScript/HTAバックドアを配信する協調型マルウェア操作を発見しました。このローダーはホストをプロファイルし、Rhadamanthysステーラーを含む複数のペイロードを展開し、特定のAVソリューションが検出された場合に動的にその動作を調整します。このキャンペーンは、IT管理者、セキュリティアナリスト、および世界中のOSINT専門家を対象としています。
調査
研究者は悪意のあるGitHubプロジェクトを調査し、バックドアコンポーネントを隔離し、システムプロファイリング、段階的ペイロード配信、AV回避、リムーバブルドライブ拡散、オンデマンドモジュール読み込みを含む完全な実行チェーンを文書化しました。この報告は、ローダーが円形C2ノードアーキテクチャを使用して回復力を高め、ターゲットのロケールを確認するためのロシア語の文字列使用を説明しています。分析により、ローダーがRhadamanthysステーラーに関連していることが示され、その起動パスを変更する能力が強調されています。
緩和策
Morphisecは、ローダーのランタイム環境を不安定にし、不安定な実行ルートをブロックし、ペイロード配信を停止するために、Automated Moving Target Defenseの使用を推奨します。伝統的な署名ベースのコントロールが効果的でないため、防御者は行動駆動および仮想化ベースの保護を頼りにするべきです。信頼できない起源からのスクリプトの実行制限と、リムーバブルドライブの活動を注意深く監視することも推奨されます。
対応
PyStoreRAT活動が確認された場合、直ちに影響を受けたエンドポイントを隔離し、バックドアプロセスを終了し、永続モジュールを削除してください。C2ドメイン、ファイルハッシュ、スケジュールされたタスクを含むIOCを収集するためのフォレンジック分析を行います。脆弱なソフトウェアをパッチし、厳格な最小特権実行ポリシーを施行し、悪意または疑わしいリポジトリ活動をGitHubで継続的に監視してください。
“graph TB %% Class Definitions classDef technique fill:#99ccff %% Node definitions technique_supply_chain[“<b>技術</b> – <b>T1195.002 サプライチェーンの妥協</b><br/><b>説明</b>: 公開GitHubリポジトリを妥協し、クローンを作成するプロジェクトに悪意のあるコードを注入します。<br/><b>サブ技術</b>: 悪意のあるGitHubリポジトリ”] class technique_supply_chain technique technique_user_exec[“<b>技術</b> – <b>T1204 ユーザーエグゼキューション</b><br/><b>説明</b>: 被害者が悪意のあるペイロードを含むAI生成プロジェクトを実行します”] class technique_user_exec technique technique_obfuscation[“<b>技術</b> – <b>T1027 改ざんされたファイルまたは情報</b><br/><b>サブ技術</b>: T1027.009 埋め込まれたペイロード<br/><b>説明</b>: ペイロードが合法的なファイル内に隠されて検出を回避します”] class technique_obfuscation technique technique_system_info[“<b>技術</b> – <b>T1082 システム情報の発見</b><br/><b>説明</b>: オペレーティングシステムバージョン、ハードウェアの詳細、その他のホスト情報を収集します”] class technique_system_info technique technique_software_disc[“<b>技術</b> – <b>T1518 ソフトウェア発見</b><br/><b>説明</b>: インストールされているアプリケーションとソフトウェアバージョンを列挙します”] class technique_software_disc technique technique_c2_https[“<b>技術</b> – <b>T1071.001 ウェブプロトコル</b><br/><b>説明</b>: HTTPS経由でコマンドアンドコントロール通信を確立します”] class technique_c2_https technique technique_removable_media[“<b>技術</b> – <b>T1092 リムーバブルメディアを通じた通信</b><br/><b>説明</b>: USBドライブを介して悪意のあるペイロードを追加システムに伝播します”] class technique_removable_media technique %% Connections technique_supply_chain u002du002d>|先導する| technique_user_exec technique_user_exec u002du002d>|先導する| technique_obfuscation technique_obfuscation u002du002d>|先導する| technique_system_info technique_system_info u002du002d>|先導する| technique_software_disc technique_software_disc u002du002d>|先導する| technique_c2_https technique_c2_https u002du002d>|先導する| technique_removable_media “
攻撃の流れ
検出
関連するコマンドの検出(プロセス作成経由)による疑わしいLOLBAS MSHTA回避行動
表示
監査経由の疑わしいスケジュール済みタスク
表示
DNSリクエスト経由の異常なトップレベルドメイン(TLD)による疑わしいコマンド&コントロール
表示
コマンドライン経由の疑わしいフォルダからのPython実行
表示
コマンドライン経由でHTAファイルなしでの疑わしいMshta実行
表示
円形回転C2インフラと動的モジュールダウンロードを用いたPyStoreRATの検出[Windows ネットワーク接続]
表示
悪意のあるプロジェクト用の休眠GitHubアカウントの再活性化検出 [GitHub – Webサーバー]
表示
シミュレーション実行
前提条件:Telemetry & Baseline プレフライトチェックが合格している必要があります。
-
攻撃の物語とコマンド:
- 休眠アカウントを再活性化する – 攻撃者はGitHub UIまたはAPIを使用してアカウントステータスを「休眠」から「アクティブ」に変更します。
- AI生成の悪意のあるリポジトリを公開する – 再活性化直後に、新しいリポジトリが作成され、
ai‑osint‑toolkitが作成され、「AI生成プロジェクト」を広告するREADMEを含みます。 - 「メンテナンス」コミットを追加する PyStoreRATバックドアを埋め込みます。コミットメッセージには、検出ルールを満たすために「メンテナンス」という言葉が意図的に含まれています。
- 悪意のあるコードをプッシュする – プッシュが生成され、
プッシュ監査イベントが発生しますが、私たちがテストしているルールは、アカウントの再活性化監査エントリだけを監視しているので、主要なトリガーはフラグ付き説明で再活性化ログエントリです。
-
リグレッションテストスクリプト: (GitHub CLIを使用したBash
gh– アタッカー俳優が個人アクセス トークンを持っていると想定していますadmin:orgスコープ)# simulate_attack.sh # 前提条件:gh CLIがインストールされ、アタッカーとして認証されている # 1. 休眠アカウントの再活性化(ユーザーフィールドを更新することでシミュレート) gh api -X PATCH /admin/users/attacker_user -f state=active -f note="reactivation: AI-generated projects; maintenance commits scheduled" # 2. 悪意のあるリポジトリを作成 gh repo create attacker_user/ai-osint-toolkit --public --description "AI‑generated OSINT tools" # 3. 悪意のあるファイル(PyStoreRAT)を追加し、コミット cd ai-osint-toolkit echo "# PyStoreRAT backdoor" > pystorerat.py git add pystorerat.py git commit -m "Initial commit - maintenance commits: embed backdoor" git push origin main # 4. オプション:実世界の活動を模倣するためにセカンドメンテナンスコミットを作成 echo "# Update README" >> README.md git add README.md git commit -m "maintenance commit: update documentation" git push origin main -
クリーンアップコマンド:
# cleanup_attack.sh # 悪意のあるリポジトリを削除 gh repo delete attacker_user/ai-osint-toolkit -y # オプションで、攻撃者アカウントを再び休眠に設定する(APIが許可する場合) gh api -X PATCH /admin/users/attacker_user -f state=dormant
SOCプライムのDetection as Codeプラットフォームに参加してください ビジネスに最も関連する脅威の可視性を向上させるために。開始をお手伝いし、即時の価値を提供するために、今すぐSOCプライムの専門家とミーティングを予約してください。
Cookie Settings
You can set your browser to block or alert you about these cookies, but some parts of the site will not then work. These cookies do not store any personally identifiable information.
| Name | Descripiton |
|---|---|
| PHPSESSID | Preserves user session state across page requests. Cookie generated by applications based on the PHP language. This is a general purpose identifier used to maintain user session variables. It is normally a random generated number, how it is used can be specific to the site, but a good example is maintaining a logged-in status for a user between pages. |
| sp_i | Used to store information about authenticated User. |
| sp_r | Used to store information about authenticated User. |
| sp_a | Used to store information about authenticated User. |
All information these cookies collect is aggregated and therefore anonymous. If you do not allow these cookies we will not know when you have visited our site, and will not be able to monitor its performance.
| Name | Descripiton |
|---|---|
| tuuid | Collects anonymous data related to the user's visits to the website, such as the number of visits, average time spent on the website and what pages have been loaded. |
| tuuid_last_update | Collects anonymous data related to the user's visits to the website, such as the number of visits, average time spent on the website and what pages have been loaded. |
| um | Collects anonymous data related to the user's visits to the website, such as the number of visits, average time spent on the website and what pages have been loaded. |
| umeh | Collects anonymous data related to the user's visits to the website, such as the number of visits, average time spent on the website and what pages have been loaded. |
| na_sc_x | Used by the social sharing platform AddThis to keep a record of parts of the site that has been visited in order to recommend other parts of the site. |
| APID | Collects anonymous data related to the user's visits to the website. |
| IDSYNC | Collects anonymous data related to the user's visits to the website. |
| _cc_aud | Collects anonymous statistical data related to the user's website visits, such as the number of visits, average time spent on the website and what pages have been loaded. The purpose is to segment the website's users according to factors such as demographics and geographical location, in order to enable media and marketing agencies to structure and understand their target groups to enable customised online advertising. |
| _cc_cc | Collects anonymous statistical data related to the user's website visits, such as the number of visits, average time spent on the website and what pages have been loaded. The purpose is to segment the website's users according to factors such as demographics and geographical location, in order to enable media and marketing agencies to structure and understand their target groups to enable customised online advertising. |
| _cc_dc | Collects anonymous statistical data related to the user's website visits, such as the number of visits, average time spent on the website and what pages have been loaded. The purpose is to segment the website's users according to factors such as demographics and geographical location, in order to enable media and marketing agencies to structure and understand their target groups to enable customised online advertising. |
| _cc_id | Collects anonymous statistical data related to the user's website visits, such as the number of visits, average time spent on the website and what pages have been loaded. The purpose is to segment the website's users according to factors such as demographics and geographical location, in order to enable media and marketing agencies to structure and understand their target groups to enable customised online advertising. |
| dpm | Via a unique ID that is used for semantic content analysis, the user's navigation on the website is registered and linked to offline data from surveys and similar registrations to display targeted ads. |
| acs | Collects anonymous data related to the user's visits to the website, such as the number of visits, average time spent on the website and what pages have been loaded, with the purpose of displaying targeted ads. |
| clid | Collects anonymous data related to the user's visits to the website, such as the number of visits, average time spent on the website and what pages have been loaded, with the purpose of displaying targeted ads. |
| KRTBCOOKIE_# | Registers a unique ID that identifies the user's device during return visits across websites that use the same ad network. The ID is used to allow targeted ads. |
| PUBMDCID | Registers a unique ID that identifies the user's device during return visits across websites that use the same ad network. The ID is used to allow targeted ads. |
| PugT | Registers a unique ID that identifies the user's device during return visits across websites that use the same ad network. The ID is used to allow targeted ads. |
| ssi | Registers a unique ID that identifies a returning user's device. The ID is used for targeted ads. |
| _tmid | Registers a unique ID that identifies the user's device upon return visits. The ID is used to target ads in video clips. |
| wam-sync | Used by the advertising platform Weborama to determine the visitor's interests based on pages visits, content clicked and other actions on the website. |
| wui | Used by the advertising platform Weborama to determine the visitor's interests based on pages visits, content clicked and other actions on the website. |
| AFFICHE_W | Used by the advertising platform Weborama to determine the visitor's interests based on pages visits, content clicked and other actions on the website. |
| B | Collects anonymous data related to the user's website visits, such as the number of visits, average time spent on the website and what pages have been loaded. The registered data is used to categorise the users' interest and demographical profiles with the purpose of customising the website content depending on the visitor. |
| 1P_JAR | These cookies are used to gather website statistics, and track conversion rates. |
| APISID | Google set a number of cookies on any page that includes a Google reCAPTCHA. While we have no control over the cookies set by Google, they appear to include a mixture of pieces of information to measure the number and behaviour of Google reCAPTCHA users. |
| HSID | Google set a number of cookies on any page that includes a Google reCAPTCHA. While we have no control over the cookies set by Google, they appear to include a mixture of pieces of information to measure the number and behaviour of Google reCAPTCHA users. |
| NID | Google set a number of cookies on any page that includes a Google reCAPTCHA. While we have no control over the cookies set by Google, they appear to include a mixture of pieces of information to measure the number and behaviour of Google reCAPTCHA users. |
| SAPISID | Google set a number of cookies on any page that includes a Google reCAPTCHA. While we have no control over the cookies set by Google, they appear to include a mixture of pieces of information to measure the number and behaviour of Google reCAPTCHA users. |
| SID | Google set a number of cookies on any page that includes a Google reCAPTCHA. While we have no control over the cookies set by Google, they appear to include a mixture of pieces of information to measure the number and behaviour of Google reCAPTCHA users. |
| SIDCC | Security cookie to protect users data from unauthorised access. |
| SSID | Google set a number of cookies on any page that includes a Google reCAPTCHA. While we have no control over the cookies set by Google, they appear to include a mixture of pieces of information to measure the number and behaviour of Google reCAPTCHA users. |
| __utmx | This cookie is associated with Google Website Optimizer, a tool designed to help site owners improve their wbesites. It is used to distinguish between two varaitions a webpage that might be shown to a visitor as part of an A/B split test. This helps site owners to detemine which version of a page performs better, and therefore helps to improve the website. |
| __utmxx | This cookie is associated with Google Website Optimizer, a tool designed to help site owners improve their wbesites. It is used to distinguish between two varaitions a webpage that might be shown to a visitor as part of an A/B split test. This helps site owners to detemine which version of a page performs better, and therefore helps to improve the website. |
If you do not allow these cookies then some or all of these services may not function properly.
| Name | Descripiton |
|---|---|
| _hjid | Hotjar cookie. This cookie is set when the customer first lands on a page with the Hotjar script. It is used to persist the random user ID, unique to that site on the browser. This ensures that behavior in subsequent visits to the same site will be attributed to the same user ID. |
| _hjIncludedInSample | This cookie is associated with web analytics functionality and services from Hot Jar, a Malta based company. It uniquely identifies a visitor during a single browser session and indicates they are included in an audience sample. |
| intercom-id-[xxx] | This cookie is used by Intercom as a session so that users can continue a chat as they move through the site. |
| intercom-session-[xxx] | Used to keeping track of sessions and remember logins and conversations. |
| demdex | Via a unique ID that is used for semantic content analysis, the user's navigation on the website is registered and linked to offline data from surveys and similar registrations to display targeted ads. |
| CookieConsent | Stores the user's cookie consent state for the current domain. |
| __cfduid | Used by the content network, Cloudflare, to identify trusted web traffic. |
| ss | These cookies enable the website to provide enhanced functionality and
personalisation . They may be set by us or by third party providers whose
services we have added to our pages. These services may include the Live Chat facility, Contact Us form(s), the Product Quotation forms and submission process, and the Email Newsletter sign up functionality . |
They do not store directly personal information, but are based on uniquely identifying your browser and internet device. If you do not allow these cookies, you will experience less targeted advertising.
| Name | Descripiton |
|---|---|
| _ga | This cookie name is asssociated with Google Universal Analytics - which is a significant update to Google's more commonly used analytics service. This cookie is used to distinguish unique users by assigning a randomly generated number as a client identifier. It is included in each page. Registers a unique ID that is used to generate statistical data on how the visitor uses the website. request in a site and used to calculate visitor, session and campaign data for the sites analytics reports. By default it is set to expire after 2 years, although this is customisable by website owners. |
| _gat | Used by Google Analytics to throttle request rate. This cookie name is associated with Google Universal Analytics, according to documentation it is used to throttle the request rate - limiting the collection of data on high traffic sites. It expires after 10 minutes. |
| _gid | This cookie name is asssociated with Google Universal Analytics. This appears to be a new cookie and as of Spring 2017 no information is available from Google. It appears to store and update a unique value for each page visited. Registers a unique ID that is used to generate statistical data on how the visitor uses the website. |
| IDE | Used by Google DoubleClick to register and report the website user's actions after viewing or clicking one of the advertiser's ads with the purpose of measuring the efficacy of an ad and to present targeted ads to the user. |
| r/collect | Used by Google DoubleClick to register and report the website user's actions after viewing or clicking one of the advertiser's ads with the purpose of measuring the efficacy of an ad and to present targeted ads to the user. |
| test_cookie | Used to check if the user's browser supports cookies. |
| collect | Used to send data to Google Analytics about the visitor's device and behaviour. Tracks the visitor across devices and marketing channels. |
| ads/user-lists/# | These cookies may be set through our site by our advertising partners. They may be used by those companies to build a profile of your interests and show you relevant adverts on other sites. |
| c | Registers anonymised user data, such as IP address, geographical location, visited websites, and what ads the user has clicked, with the purpose of optimising ad display based on the user's movement on websites that use the same ad network. |
| khaos | Registers anonymised user data, such as IP address, geographical location, visited websites, and what ads the user has clicked, with the purpose of optimising ad display based on the user's movement on websites that use the same ad network. |
| put_# | Registers anonymised user data, such as IP address, geographical location, visited websites, and what ads the user has clicked, with the purpose of optimising ad display based on the user's movement on websites that use the same ad network. |
| rpb | Registers anonymised user data, such as IP address, geographical location, visited websites, and what ads the user has clicked, with the purpose of optimising ad display based on the user's movement on websites that use the same ad network. |
| rpx | Registers anonymised user data, such as IP address, geographical location, visited websites, and what ads the user has clicked, with the purpose of optimising ad display based on the user's movement on websites that use the same ad network. |
| tap.php | Registers anonymised user data, such as IP address, geographical location, visited websites, and what ads the user has clicked, with the purpose of optimising ad display based on the user's movement on websites that use the same ad network. |