VScode

Microsoftは、Visual Studio Marketplaceの「Material Theme – Free」と「Material Theme Icons – Free」エクステンションを復活させた。

900万インストールを数えるこの2つのVSCode拡張機能は、セキュリティ上のリスクを理由に2月下旬にVSCode Marketplaceから引き揚げられ、発行者のMattia Astorino(別名「equinusocio」)はプラットフォームから追放された。

「コミュニティのメンバーがこの拡張機能を深くセキュリティ分析したところ、悪意のある意図を示す複数のレッドフラグを発見し、私たちに報告しました

「マイクロソフトのセキュリティ研究者はこの主張を確認し、さらに不審なコードを発見した。

研究者のAmit AssarafとItay Krukは、VSCode上の不審な投稿を求めるAIを搭載したスキャナを導入しており、最初に悪意のある可能性があるとしてフラグを立てた。

研究者たちは、Material Themeに対する高リスクの評価は、テーマの “release-notes.js “ファイルにコード実行機能が存在することが検出されたことに起因しており、そのファイルはまた高度に難読化されていたと語った。

The obfuscated code that sparked concerns
懸念を呼び起こした難読化されたコード
Source

Astorinoはすぐに疑惑とVSCodeマーケットプレイスからの彼の拡張機能の削除に異議を唱え、問題はsanityヘッドレスCMSからのリリースノートを表示するために2016年以来使用されている時代遅れのsanity.io依存に由来すると主張した。

このパブリッシャーは、マイクロソフトから連絡があれば数秒でテーマからこの依存関係を削除できたが、その代わりに警告なしに自分たちがBANされるのを見てしまったと述べた。

「悪意はありませんでした。難読化処理を除けば、新しいバージョンに集中していたので、拡張機能は何年も更新していませんでした」と、アストリーノは電子メールで今日語った。

「唯一の問題は、配布されたindex.js(Material Theme Iconsのこと)にあるビルドスクリプトでした。このスクリプトは、クローズドソースのリポジトリからSVGアイコンを取り出した後、JSONファイルを生成するために使われていました。

“Material Themeに関しては、難読化処理に意図せずsanity.io SDKクライアントが含まれており、パスワードやユーザー名を参照する文字列(authクライアント)が含まれていました。しかし、これらは有害なものではありません。ただ、かなり前に行われたビルドプロセスの欠陥の結果です。”

VSMarketplaceでの拡張機能の復活

MicrosoftのScott Hanselman氏は昨日、Astorino氏のアカウントとテーマの復活を求める開発者が開設したGitHub issueでAstorino氏に謝罪した。

「Material ThemeとMaterial Theme Icons(Equinusocio)のパブリッシャーアカウントは誤ってフラグを立てられましたが、現在は元に戻されています

「安全のために、私たちは素早く行動し、そして失敗しました。これらのテーマがマイクロソフト社内で複数のマルウェア検出インジケータを発火させたため、私たちはこれらのテーマを削除しました。

Both extensions available are again in the VSMarketplace
利用可能な両方の拡張機能は、再びVSMarketplace
Sourceに あります

“繰り返しになりますが、作者が爆発半径に巻き込まれたことをお詫びします。私たちは彼と連絡を取り合い、彼の忍耐に感謝しています」とハンセルマンは続けた。

さらにハンセルマン氏は、Visual Studio Code Marketplaceは難読化されたコードに関するポリシーを更新し、それに応じてスキャナーを更新することで、今後プロジェクトが迅速に対処されないようにすると述べた。

サイバーセキュリティ研究者のアミット・アサラフ氏は、この進展について質問された際、拡張機能には悪意のあるコードが含まれていると主張し続けた。しかし、パブリッシャーに悪意はなく、”この場合、マイクロソフト社の動きは早すぎた “とコメントしている。

アスタリノ氏によると、VSCodeマーケットプレイスのMaterial Theme拡張機能は完全に書き換えられており、安全に使用できるという。

.ia_ad { background-color:#width: 95%; max-width: 800px; margin: 15px auto; border-radius: 8px; border:1px solid #d6ddee; display: flex; align-items: stretch; padding: 0; overflow: hidden; }:0; overflow: hidden; } .ia_lef { flex: 1; max-width: 200px; height: auto; display: flex; align-items: stretch; } .ia_lef a { display: flex; width: 100%; height: 100%; } .ia_lef a img { width: 100%; height: 100%; object-fit: cover; border-radius: 8px 0 0 8px; margin: 0; display: block; } .ia_rig { flex: 2; padding:display: flex; flex-direction: column; justify-content: center; } .ia_rig h2 { font-size: 17px !important; font-weight: 700; color:#line-height: 1.4; font-family:margin: 0 0 14px 0; } .ia_rig p { font-weight: bold; font-size: 14px; margin: 0 0 clamp(6px, 2vw, 14px) 0; } .ia_button { background-color:#border:1px solid #3b59aa; color: black; text-align: center; text-decoration: none; border-radius: 8px; display: inline-block; font-size: 16px; font-weight: bold; cursor: pointer; padding:10px 20px; width: fit-content; } .ia_button a { text-decoration: none; color: inherit; display: block; } @media (max-width: 600px) { .ia_ad { flex-direction: column; align-items: center; text-align: center; } .ia_lef { max-width: 100%; } .ia_lef a img { border-radius: 8px 8px 0 0; } .ia_rig { padding:15px; width: 100%; } .ia_button { width: 100%; } .

攻撃の93%を支えるMITRE ATT&CK©テクニック・トップ10

1,400万件の悪意のあるアクションの分析に基づき、攻撃の93%を支えるMITRE ATT&CKテクニックのトップ10とその防御方法をご覧ください。