Explzh v5.63

  • Arcext.dll を利用した LZH のコメント付き拡張ヘッダ(Lv1〜Lv3)の処理において、バッファオーバーフロー脆弱性が存在していたものについて修正を行いました。
    1. 原因:コメントバッファ合計の計算間違いによるバグによるもの。
    2. 症状:動的に確保した 32KB のメモリを超えるコメント(書庫全体の合計コメント)がある場合、確保メモリをオーバーしてメモリに書きこんでしまう、ヒープバッファオーバーフローが発生。
    3. 想定される影響:細工された LHA 書庫ファイルを処理した場合、任意のコードを実行される可能性があります。
    4. アプリ側の対処:コメントの総バッファが 32KB を超える場合にはそれ以降のコメントを取得してもメモリに書き込まれないようにした。
    5. 疑わしい書庫について:細工された疑いのある書庫については、「脆弱性を利用した疑いのある不正書庫」として警告を表示するようにした。
    6. 本件と別件の JVNVU#545953 への対策も強化:4KB を超えるヘッダや、ファイル名が異常に長いヘッダを確認できた LZH 書庫についても同様に、「脆弱性を利用した疑いのある不正書庫」として警告を表示するようにした。
Explzh for Windows 修正履歴

本体の修正はなし(バージョン番号のみ)で、内蔵のアーカイブ処理 Arcext.dll の LZH形式でのバッファオーバーフローの修正。UNLHA32.DLL を使用する様にしている場合は影響なし。