Drupal

ゼロからヒーローまでAWSハッキングを学ぶ htARTE(HackTricks AWS Red Team Expert)

HackTricksをサポートする他の方法:

Discovery

  • metaをチェック

curl https://www.drupal.org/ | grep 'content="Drupal'
  • Node: Drupalはノードを使用してコンテンツをインデックス化します。ノードにはブログ投稿、投票、記事など何でも保持できます。ページのURIは通常、/node/<nodeid>の形式です。

curl drupal-site.com/node/1

列挙

Drupalはデフォルトで3種類のユーザーをサポートしています:

  1. 管理者: このユーザーはDrupalウェブサイト全体を完全に制御できます。

  2. 認証ユーザー: これらのユーザーはウェブサイトにログインし、権限に基づいて記事の追加や編集などの操作を行うことができます。

  3. 匿名: すべてのウェブサイト訪問者は匿名として指定されます。デフォルトでは、これらのユーザーは投稿を読むことしか許可されていません。

バージョン

  • /CHANGELOG.txtをチェック

curl -s http://drupal-site.local/CHANGELOG.txt | grep -m2 ""

Drupal 7.57, 2018-02-21

Drupalの新しいインストールでは、デフォルトでCHANGELOG.txtREADME.txtファイルへのアクセスがブロックされています。

ユーザー名の列挙

登録

_ /user/register_ でユーザー名を作成しようとすると、すでに使用されている名前の場合に通知されます:

新しいパスワードのリクエスト

既存のユーザー名に新しいパスワードをリクエストする場合:

存在しないユーザー名に新しいパスワードをリクエストする場合:

ユーザー数の取得

_ /user/<number>_ にアクセスすると、既存のユーザー数を確認できます。この場合、_ /users/3_ は見つかりませんエラーを返します:

非表示ページ

/node/$ と入力し、$ には数字が入ります(たとえば1から500まで)。 検索エンジンによって参照されていない非表示ページ(テスト、開発)を見つけることができます。

インストールされたモジュール情報

#From https://twitter.com/intigriti/status/1439192489093644292/photo/1
#Get info on installed modules
curl https://example.com/config/sync/core.extension.yml
curl https://example.com/core/core.services.yml

# Download content from files exposed in the previous step
curl https://example.com/config/sync/swiftmailer.transport.yml

自動

droopescan scan drupal -u http://drupal-site.local

RCE

DrupalのWebコンソールにアクセスできる場合は、RCEを取得するためにこれらのオプションをチェックしてください:

pageDrupal RCE

ポストエクスプロイテーション

settings.phpを読む

find / -name settings.php -exec grep "drupal_hash_salt\|'database'\|'username'\|'password'\|'host'\|'port'\|'driver'\|'prefix'" {} \; 2>/dev/null

DBからユーザーをダンプする

mysql -u drupaluser --password='2r9u8hu23t532erew' -e 'use drupal; select * from users'

参考文献

ゼロからヒーローまでのAWSハッキングを学ぶ htARTE(HackTricks AWS Red Team Expert)

HackTricksをサポートする他の方法:

Last updated