重みが跳ね上がる:Fooocusのバグ解析

最近、Fooocusでもa1111と同じバグがあることに気づきました。この問題は、patch_clip.py内のpatched_encode_token_weightsの実装に起因しています。

z = z * (original_mean / new_mean)

上記のコードで、時折 new_mean が非常に小さい値を取るため、重みが跳ね上がり、正常な描画ができなくなっています。

実際に確認された値は以下の通りです:

original mean0.0004
new mean3.7944e-05

この場合、z は約10.54倍されることになり、結果として描画が大きく乱れる可能性があります。

以下の画像は、実際に乱れた描画結果の一例です:

GitHubのissueにもこの不具合を報告しましたが、Fooocus の issues は現在あまり動いていないようです。open な issue が積み上がる一方なので、自分でフォークした mashb1t 版のベースで対応を進める予定です。ただし、z の計算ロジックの適切な修正方法についてはまだ結論が出ていません。

元々のコードの出所はこちらです:Stable Diffusion XLで生成画像の破綻が起きる問題の解析と対策

OpenSSHのCVE-2024-6409: 任意コード実行の脆弱性を確認しよう

OpenSSHに脆弱性、CVE-2024-6409が発覚しています。

シグナル関連が鬼門となっている印象。脆弱性としては、CVE-2024-6387よりはマシな印象。LoginGraceTime 0による緩和策は有効。-eによる緩和策は本件には無効。UbuntuにおいてはUpstreamには影響。

Rustの脆弱性 CVE-2024-24576

Windowsのこの辺の仕組みは、CP/Mに由来するところが大きいですからね。CP/M→CP/M-86→MS-DOSって流れですね。さすがに、この仕組み自体はベーシックすぎて直すのが困難でしょう。この辺をいじると全ての互換性が損なわれかねないので。参考にあげたように、0ページの後半にCP/Mでは格納される構造です。ここは文字の羅列で引数の配列ではない。