Shikata Ga Nai

Private? There is no such things.

How I was able to find multiple vulnerabilities of a Symfony Web Framework web applicationを訳してみた

Hello there, ('ω')ノ

 

Symfony WebFrameworkWebアプリケーションの複数の脆弱性を見つけた方法を。

 

脆弱性:

 デバッグモードが有効

 情報開示

 

記事:

 https://infosecwriteups.com/how-i-was-able-to-find-multiple-vulnerabilities-of-a-symfony-web-framework-web-application-2b82cd5de144

 

今回は、SymfonyWebFrameworkを使用するWebアプリケーションで。

複数の脆弱性を見つけた方法を説明することに。

 

Symfony Webフレームワークには、SymfonyProfilerと呼ばれる機能があって。

このプロファイラコンポーネントは。

デバッグモードが有効になっている場合にのみ使用できて。

Symfony Webフレームワークははるかに安全ですが、デバッグモードを有効にすると。

このフレームワークは非常に脆弱になって。

symfony Webプロファイラーコンポーネントは。

攻撃者が悪用できるWebアプリケーションの機密情報を公開するので。

 

なぜ開発者はデバッグコンポーネントを有効にするのかというと。

デバッグコンポーネントは、PHPコードのデバッグを容易にするツールを提供して。

PHPコードのデバッグに役立ついくつかのツールを提供して。

このコンポーネントは、開発段階で開発者を大いに助け。

Symfonyはデフォルトでdev、test、prod(本番)と呼ばれる3つの環境を提供して。

Symfonyは、実稼働環境でプロファイラツールを無効にすることをお勧めして。

しかし、開発者はそれを忘れてWebアプリケーションを脆弱にすることがあって。


脆弱性を見つけた方法(ステップバイステップ):

ターゲットサイトが、https://redacted.comであると仮定すると。

ターゲットのサブドメイン(https://sub.redacted.com)でこの脆弱性を発見して。

最初に、サブドメインを参照して、使用されているWebテクノロジーを確認して。

Wappalyzerアドオンを使用して、https://sub.redacted.comが。

「Symfony」Webフレームワークを使用していることを発見して。

 

 

次に、資産発見フェーズに進むことに。

最初は、FFUFを使用してディレクトリをファズしようとして。

「app_dev.php」という興味深いファイルを見つけて。

Symfonyのデバッグモードが有効になっている可能性があることを示していて。

 

 

 

ブラウザで 「https://sub.redacted.com/app_dev.php」を閲覧するたびに。

デバッグモードが有効になっていて。

Symfonyプロファイラにアクセスするためのプロファイラトークンを取得して。

また、phpinfoファイルの場所を取得して。

 

 

 

今までのところ、重大度は中程度で。

Symfonyのデバッグツールバーでは、機密情報を公開する可能性のある。

ファイルを読み取ることができることを知っていたので。

もっと掘り下げてみることに。

 

いくつかの記事を調べて、SymfonyWebフレームワークのドキュメントを読んで。

Symfonyバージョン3.4データベースのデフォルトの設定ファイルの場所が見つかって。

それは、app/config/parameters.ymlで。


下記は、Symfonyバージョン3.4設定ドキュメントで。

 https://symfony.com/doc/3.4/best_practices/configuration.html

 

そこで、設定ファイルとブームを開こうとして。

データベースとメールサーバのクレデンシャルが見つかって。

 



影響:

公開された資格情報の影響は、データ侵害、システムの侵害、ブランドの評判の低下。

および経済的損失に使用される可能性があるため、さまざまな結果をもたらして。


緩和:

APP_DEBUGをfalseに設定して、デバッグモードを無効にして。

実稼働環境では、デバッグモードを無効にする必要があって。


ffuf.sh


おまけ:

Symfony Webフレームワークを使用するWebアプリケーションを見つけた場合は。

デバッグモードとプロファイラを確認することを忘れないで。

開発者が無効にするのを忘れている可能性があって。

 

 https://example.com/_profiler

 https://example.com/app_dev.php/_profiler

 https://example.com/app_dev.php

 

Best regards, (^^ゞ