SLiMS 9.8.0にSQLインジェクション、修正版は未公表
図書館管理システムSLiMS Bulian 9.8.0のレポート機能に、データベースを不正に操作されるおそれのある弱点(SQLインジェクション)が見つかりました。CVSSは9.8と最も高い水準で、認証なしでネットワーク越しに悪用できる評価です。SLiMSを使っている組織は、版の確認とアクセス制限を先に進め、ベンダーの告知を確認してください。
急ぎ度: 早めに
CVSSは9.8で認証不要とされていますが、実際の攻撃での悪用確認(KEV)は公表されておらず、修正版も確認できていないため、まず影響範囲の確認とアクセス制限を急ぐ状況です。
関係があるか
SLiMS(SENAYAN Library Management System)Bulian 9.8.0を運用している図書館、学校、大学、企業の資料室などが対象です。管理画面や関連ファイルがインターネットや広い社内ネットワークから届く環境ほど、影響を受けやすくなります。
| 製品 | 影響を受ける版 | 直った版 |
|---|---|---|
| SENAYAN Library Management System (SLiMS) Bulian (slims9_bulian) | 9.8.0 | 公表されていません。他の版が影響を受けるかも明らかになっていません。 |
確かめ方
- 1SLiMSの管理画面や設置ファイルで、使用中の版が 9.8.0 かどうかを確認します。
- 2サーバー上に
admin/modules/reporting/customs/dl_detail.phpが存在するかを確認します。 - 3SLiMSの管理画面や設置ディレクトリが、インターネットや利用者向けネットワークから到達できる状態かを、ネットワーク担当者と確認します。
- 4Webサーバーのアクセスログに、
dl_detail.phpへの身に覚えのないアクセスや、fileIDに異常な値が入った要求がないかを調べます。
何が起きたか
図書館の蔵書や貸出を管理するオープンソースのソフトウェア SLiMS の Bulian 9.8.0 に、SQLインジェクションと呼ばれる弱点が見つかりました。Webの入力欄やURLの値を通じて、裏側のデータベースに本来想定していない命令を紛れ込ませられる種類の問題です。悪用されると、データベースに保存された情報の閲覧、書き換え、削除が起こりうると評価されています。
問題があるのは admin/modules/reporting/customs/dl_detail.php というレポート関連のファイルで、fileID というパラメータの値が安全に処理されていないとされています。分類は CWE-89(SQLインジェクション)です。
CVSS v3.1 のベーススコアは9.8(critical)です。ベクターは AV:N/AC:L/PR:N/UI:N で、ネットワーク越しに、特別な条件や利用者の操作なしに悪用でき、認証も不要という評価です。GitHub上の SLiMS のIssue(#393)で報告されており、GitHub Advisory(GHSA-hrr2-vvvx-rm3f)にも登録されています。
攻撃の流れ
-
1
到達できる
SLiMSのWebサーバーに、攻撃者がネットワーク経由でアクセスできる状態です。
-
2
要求を送る
対象ファイルの `fileID` パラメータに、細工した値を含む要求を送ります。
-
3
検査をすり抜ける
入力値が安全に処理されず、データベースへの命令の一部として扱われます。
-
4
DBを操作される
データベース内の情報の閲覧、改ざん、削除が行われるおそれがあります。
どう悪用されるか
CVSSの評価では、攻撃に認証は不要で、利用者の操作も必要ありません。ネットワーク越しに到達できれば、手間をかけずに試せるとされています。ただし、実際の攻撃で悪用されたという情報は、現時点で明らかになっていません。
悪用された場合、CVSS上は機密性、完全性、可用性のすべてに高い影響があるとされています。具体的には、会員情報や貸出履歴など、データベースに入っている情報の漏えい、データの改ざんや削除、サービス停止が考えられます。実際にどこまで影響が及ぶかは、データベースの権限設定や運用環境によって変わります。
今すぐやること
-
1
使用中の版を確認する
SLiMSが 9.8.0 かどうかを確認し、該当する場合は以降の対応に進みます。管理者が把握していない設置がないかも、あわせて確認してください。
-
2
外部公開とアクセス元を絞る
SLiMSの管理画面や関連ファイルへのアクセスを、必要な拠点やIPアドレスに限定します。インターネットに公開している場合は、公開の要否を見直し、VPNの背後に置くことも検討します。
-
3
ベンダーの告知を確認する
SLiMSのGitHubリポジトリのIssue(#393)やリリース情報で、修正版や対処方法が出ていないかを定期的に確認します。修正版が出たら、検証のうえで速やかに適用します。
-
4
ログを点検する
Webサーバーのアクセスログで、
dl_detail.phpへの不審なアクセスがないかを確認します。異常があれば、データベースの内容や管理者アカウントの変更がないかも調べます。 -
5
バックアップを確認する
データベースとアプリケーションの最新のバックアップが取れていて、復元できることを確認しておきます。
すぐ更新できないとき
修正版が公表されていないため、確実な回避策は現時点で明らかになっていません。暫定策として、SLiMSへのアクセスを必要な範囲に限定し、WAFでSQLインジェクションを検知、遮断する設定を有効にしてください。対象ファイル admin/modules/reporting/customs/dl_detail.php へのアクセスをWebサーバー側で制限する方法もありますが、レポート機能が使えなくなる可能性があるため、運用への影響を確認してから実施してください。また、SLiMSが使うデータベースアカウントの権限を必要最小限にしておくと、被害を抑える助けになります。
背景
SLiMSは、図書館の蔵書管理、貸出、会員管理などを担うオープンソースの図書館管理システムです。Webアプリケーションとして動き、会員の個人情報や貸出履歴をデータベースに保存しています。そのため、データベースに触れられる弱点は、利用者情報の漏えいに直結しやすい性質があります。
SQLインジェクションは、Webアプリケーションの弱点として古くから知られている種類です。入力値をそのままデータベースへの命令に組み込む実装が原因で、入力値を命令と分けて扱うプレースホルダ(パラメータ化されたクエリ)を使うことが、基本的な対策とされています。管理画面のURL配下にあるファイルでも、認証の確認が抜けていると外部から直接呼び出せてしまうことがあるため、公開範囲の制限が重要になります。
よくある質問
Q.自社でSLiMSを使っているか分からない場合はどうすればよいですか。
Q.すでに攻撃されているのですか。
Q.9.8.0より前の版は安全ですか。
まだ分かっていないこと
- 修正版のリリースの有無と、直った版の番号は公表されていません。
- 9.8.0以外の版が影響を受けるかどうかは、明らかになっていません。
- 実際の攻撃での悪用が確認されているかどうかは、現時点で明らかになっていません。
この記事は、取得元の公開情報をもとに生成 AI で作成しています。誤りを含むことがあります。対応を決める前に、下の原文と参照先を確認してください。
原文の説明 取得元が公開している説明をそのまま載せています (多くは英語)。
SENAYAN Library Management System (SLiMS) Bulian (slims9_bulian) 9.8.0 is vulnerable to SQL Injection in admin/modules/reporting/customs/dl_detail.php via the parameter fileID.
出典: NIST National Vulnerability Database NVD GitHub Advisory
参照URL
- web github.com
- web github.com
- web nvd.nist.gov
- web github.com