なぜmathmainには暗号化ローダーが必要なのか?その闇に迫る
Why does mathmain need an encrypted loader?
Why does mathmain need an encrypted loader?
mathmainがなぜ暗号化されたローダーを使用しているのか、その技術的な背景や必要性について議論されています。一般的なクリーンな実装とは異なり、あえてコードを隠蔽する理由や、それがもたらす潜在的なリスク、セキュリティ上のメリットについて、開発者コミュニティの間で疑問の声が上がっています。
一体なぜその特定の3x3行列が攻撃のトリガーになるんだ?何か特定の数値解析を行っている人間をあぶり出そうとしているのか?
FBIや他の法執行機関は、こうしたバックドアを追跡しているんだろうか?これは犯罪、あるいは犯罪の共謀と見なされるのか、それとも実際にバックドアを使用したことだけが罪になるのか?
NPMを見ると、警告もなしにまだそのまま残っているのが確認できる:
でも、このパッケージのGitHubリポジトリと著者のページは削除されているな:
ターゲットの選別方法が実に凝っていて興味深いな。
人気ライブラリのmathjsを模倣したnpmパッケージであるmathmain@1.0.0の中に、リモートアクセス用インプラントが隠されているのを発見しました。
クリックベイト気味な記事タイトルに載っていないNPMパッケージ名は「mathmain@1.0.0」だ。同じ壁にぶつかった人のために書いておくと、後に挙げられているパッケージは「mathsbase」と「math-universe」になる。(追記:投稿タイトルが修正されたのを確認した。不満は解消されたよ、モデレーターに感謝!)
Safedepの人、もしこれを見ているなら、投稿にそのサイトの機能を適用するのは考え直した方がいいかもしれない。もしCloudflareなどで有効にしているなら、メール保護機能がパッケージのバージョン文字列を隠してしまっていることをサポートに伝えたほうがいいよ。
実際にこれを解析した(あるいはClaudeか中国のツールを使って解析した)人を見つけたよ。
なんと第二段階が完全に壊れていたんだ。ますます不可解だな…
https://research.veryserious.systems/lusolve-and-you-shall-r... (https://research.veryserious.systems/lusolve-and-you-shall-receive/)
依存関係を一切使わないという僕の戦略は、日を追うごとに強固になっている気がする。
LLM生成物も使わないし、この流行り廃りとは無縁でいく。自分で責任を持てる手書きのコードだけ。コードを売って金をもらう、これがプロの仕事ってもんだろ、ボス。
ちなみに、雇い主募集中だよ。Pre Market FitやMVP前のスタートアップなら大歓迎。プロフィールにメールアドレスを載せてある。
もし自分が見つけていたら、誇らしくてみんなに教えただろうし、詳細なレポートを書くのを楽しんだはずだ。でも、これはどうもAIが書いたように見えるな…
この件の多くは、CommonJSモジュール形式をもう終わらせるべきだというリマインダーのように思える。ESMのawait import()でも似たようなことは可能だけど、動的なrequire()をgrepで依存関係全体から探すのは、動的インポートをgrep import\s*\(で探すほど簡単じゃない。それに、静的なimportキーワード用なら解析ツールは簡単に使えるし作れるけど、CommonJSにはそれがないからね。
僕が最近はNPMより先にJSRをチェックすると言ったら、冗談だと思われたけど、CommonJSよりESMを圧倒的に信頼しているからなんだ。