- SERVICE
Webサイト・CMSの保守管理・運用
- WORKS
- ABOUT US
- NEWS & COLUMN
- RECRUIT
皆さんこんにちは。taneCREATIVEの「ちほうタイガー」です。
この記事は2024年11月28日に執筆しています。
今回はLazySizesのバージョンと脆弱性への対応状況についてまとめてみたいと思います。
LazySizesは、Webサイト上の画像やiframe、スクリプトなどのリソースを遅延読み込み(Lazy Load)するための軽量なJavaScriptライブラリであり、Alexander Farkas氏によって開発・サポートされています。
LazySizesのアクティブインストール数などの情報は見つかっていませんが、slickと並び非常に利用されているプラグインであるという印象です。
一方で、人気が高いほど攻撃対象になるリスクもあるため、脆弱性への適切な対応が重要になります。
この記事では、企業のWeb担当の皆様に向けて、LazySizesの概要並びに、脆弱性及びその対応状況をご紹介することで、LazySizes自体については安心して使用していただけるようにしたいと思います。
少しでも皆様のお役に立てる記事にできればと思います。
どうぞよろしくお願い致します。
前述の通り、Webサイト上の画像やiframe、スクリプトなどのリソースを遅延読み込み(Lazy Load)するための軽量なJavaScriptベースのライブラリであり、軽量性とカスタマイズ性、汎用性を兼ね備えていることから、近年多くのWebサイトで利用されています。
しかしながら、実際のところ、当社のようなセキュリティ対策を強みとしているWeb制作会社の場合、LazySizesを利用することはあまりありません。
理由としては、LazySizesの公式リリースが3年半以上停止していること、あくまでAlexander Farkas氏個人による開発・サポートであることから、迅速なセキュリティパッチの配布などが期待しにくいことなどが挙げられます。
しかしながら、当社がこれまでに保守を引き受けたWebサイトには、LazySizesが使用されていたことは数多くあります。
ユーザー体験(UX)向上やSEO対策面からパフォーマンス最適化の必要性が高まっており、この軽量性とカスタマイズ性を兼ね備えたLazySizesは、日本国内でも、一般的に使用されているライブラリの一つという印象です。
公式サイトに直接的な記載はありませんが、LazySizesは、通常のセマンティックバージョニングに準拠し、左からメジャーバージョン、マイナーバージョン、パッチバージョンの3つの数字で構成されています。
2024年11月28日現在、LazySizesの最新バージョンは5.3.2です。
通常のオープンソースソフトウェアでは、公式のサポート(新機能の追加、不具合の改修、セキュリティパッチの提供)は最新パッチバージョンのみを対象としており、LazySizesでも同様の対応が行われていると考えられます。
バージョン5.2.0以下には既知の脆弱性が存在する可能性がありますので、最新のパッチバージョンへのアップデートを実施してください。
2024年11月28日現在での、LazySizesのバージョン情報は次の通りです。
バージョン | リリース日 | サポート期限 | 修正された脆弱性 |
5.3.2 | 2021年3月31日 | サポート中 | - |
5.3.1 | 2021年3月27日 | 2021年3月31日 | - |
5.3.0 | 2021年1月3日 | 2021年3月27日 | - |
5.2.2 | 2020年5月27日 | 2021年1月3日 | - |
5.2.1 | 2020年5月25日 | 2020年5月27日 | - |
5.2.1-rc2 | 2020年5月19日 | 2020年5月25日 | - |
5.2.1-rc1 | 2020年5月17日 | 2020年5月19日 | CVE-2020-7642 |
5.2.0 | 2019年12月18日 | 2020年5月17日 | - |
※上記の内容は、GitHubの情報を正として、バージョン5.2.0までを掲載しています。
※GitHubにてバージョン5.3.2がCommitされていますが、一方でGitHubのリリース情報では、最新バージョンは5.3.1となっています。
そのため、もしかしたら正式バージョンの最新版は5.3.1である可能性があります。
※バージョン5.2.0以下には既知の脆弱性が存在するため、グレーにしています。
LazySizesの最新バージョンは5.3.2であり、当社が把握している全ての脆弱性に修正対応済みとなっています。
また、バージョン5.2.0以下をご使用の場合には、既知の脆弱性が存在する可能性がありますので、最新のパッチバージョンへのアップデートを推奨いたします。
なお、LazySizes自体に関する脆弱性情報で、当社が把握しているものは次の通りです。
脆弱性情報 | 深刻度 | 影響を受けるバージョン | 修正されたバージョン |
CVE-2020-7642 JVNDB-2020-004961 |
CVSS v3 5.4(警告) |
LazySizes 5.2.0までのバージョン | LazySizes 5.2.1-rc1 |
※脆弱性情報については、情報セキュリティにおける脆弱性情報に付けられている番号であるCommon Vulnerabilities and Exposures(本記事では「CVE」とします)の順序に従って掲載しています。
※深刻度については、共通脆弱性評価システムCVSS v3に基づいていますが、CVSS v3が採用される以前の脆弱性情報についてはCVSS v2に基づいています。
※本記事では、CVSS v3ないしCVSS v2にて緊急(9.0~10.0)、重要(7.0~8.9)、警告(4.0~6.9)に区分されるもののみを掲載しています。
※深刻度の数値はJapan Vulnerability Notes(本記事では「JVN」とします)及び、JVNが評価を合わせている米国国立標準技術研究所(NIST)が運営する脆弱性データベースであるNational Vulnerability Database(以下「NVD」)に準拠しています。
※本記事における脆弱性情報は、当社が把握しているものだけであり、全ての脆弱性情報を網羅できているかはわかりません。
※本記事における脆弱性情報をご利用になる場合には、必ずJVN、NVDなどの情報を確認されたうえで、自己責任でご利用ください。
前述のように、LazySizesは人気のあるプラグインであり、Web制作の現場では、よくお世話になるプラグインです。
しかしながら、LazySizes自体のバージョンアップをしようと思っても、JavaScriptの知識が必要であったり、作業が複雑であるなどの問題に直面することもあるかと思います。
taneCREATIVE社は、「リモートによるWebアプリケーションのセキュリティ対策をパッケージ化、首都圏大手企業に提供」している点が評価され、2021年にJ-Startup NIIGATAに選定されているWeb制作会社で、LazySizesとJavaScriptについてもノウハウを有しています。
※「J-Startup NIIGATA」とは、経済産業省が2018年に開始したJ-Startupプログラムの地域版として、新潟発のロールモデルとなるスタートアップ企業群を明らかにし、官民連携により集中的に支援する仕組みを構築することで、新潟県におけるスタートアップ・エコシステムを強化する取組です。
LazySizesを使用したWebサイト制作やアップデートを含む保守管理に関しては、こちらのお問合せよりお気軽にご相談ください。
taneCREATIVEに所属する謎のトラ。