DO - Droplets

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

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

基本情報

DigitalOcean では、「ドロップレット」はウェブサイトやアプリケーションをホストするために使用できる 仮想プライベートサーバー(VPS) です。 ドロップレットは、DigitalOcean のクラウドインフラストラクチャ上で迅速かつ簡単に展開できる 事前構成済みのコンピューティングリソースのパッケージ であり、一定量の CPU、メモリ、およびストレージを含んでいます。

一般的なOS、すでに実行中の アプリケーション(WordPress、cPanel、Laravel など)、または 独自のイメージ をアップロードして使用することができます。

ドロップレットは ユーザーデータスクリプト をサポートしています。

スナップショットとバックアップの違い

DigitalOcean では、スナップショットはドロップレットのディスクの特定時点のコピーです。 スナップショットは、取得時点でのドロップレットのディスクの状態をキャプチャし、オペレーティングシステム、インストールされたアプリケーション、ディスク上のすべてのファイルとデータを含みます。

スナップショットは、元のドロップレットと同じ構成で新しいドロップレットを作成したり、スナップショットを取得した時点の状態にドロップレットを復元したりするために使用できます。 スナップショットは DigitalOcean のオブジェクトストレージサービスに保存され、前回のスナップショット以降の変更のみが保存されるインクリメンタルな形式です。 これにより、効率的に使用し、費用対効果の高いストレージが可能となります。

一方、バックアップは、オペレーティングシステム、インストールされたアプリケーション、ファイル、データ、およびドロップレットの設定とメタデータを含む、ドロップレットの完全なコピーです。 バックアップは通常定期的に実行され、特定時点でのドロップレットの完全な状態をキャプチャします。

スナップショットとは異なり、バックアップは圧縮された暗号化形式で保存され、DigitalOcean のインフラストラクチャからリモートロケーションに転送されます。 これにより、バックアップは災害復旧に理想的であり、データ損失やその他の災害が発生した場合に復元できるドロップレットの完全なコピーを提供します。

要約すると、スナップショットはドロップレットのディスクの特定時点のコピーであり、バックアップは設定とメタデータを含むドロップレットの完全なコピーです。 スナップショットは DigitalOcean のオブジェクトストレージサービスに保存され、バックアップは DigitalOcean のインフラストラクチャからリモートロケーションに転送されます。 スナップショットとバックアップの両方を使用してドロップレットを復元できますが、スナップショットはより効率的に使用および保存でき、バックアップは災害復旧のための包括的なバックアップソリューションを提供します。

認証

認証には、ユーザー名と パスワード(ドロップレット作成時に定義されたパスワード)を使用して SSH を有効にするか、アップロードされた SSH キーの 1つ以上を選択することができます。

ファイアウォール

デフォルトでは、ドロップレットはファイアウォールなしで作成されます(AWS や GCP などの他のクラウドとは異なり)。 したがって、ドロップレット(VM)のポートを保護するには、作成してアタッチする必要があります

詳細は次を参照:

pageDO - Networking

列挙

# VMs
doctl compute droplet list # IPs will appear here
doctl compute droplet backups <droplet-id>
doctl compute droplet snapshots <droplet-id>
doctl compute droplet neighbors <droplet-id> # Get network neighbors
doctl compute droplet actions <droplet-id> # Get droplet actions

# VM interesting actions
doctl compute droplet-action password-reset <droplet-id> # New password is emailed to the user
doctl compute droplet-action enable-ipv6 <droplet-id>
doctl compute droplet-action power-on <droplet-id>
doctl compute droplet-action disable-backups <droplet-id>

# SSH
doctl compute ssh <droplet-id> # This will just run SSH
doctl compute ssh-key list
doctl compute ssh-key import <key-name> --public-key-file /path/to/key.pub

# Certificates
doctl compute certificate list

# Snapshots
doctl compute snapshot list

ドロップレットにはメタデータエンドポイントがありますが、DOにはIAMやAWSのロール、GCPのサービスアカウントなどはありません

RCE

コンソールへのアクセスがあれば、ドロップレット内でシェルを取得することが可能で、URLにアクセスします: https://cloud.digitalocean.com/droplets/<droplet-id>/terminal/ui/

また、リカバリーコンソールを起動してホスト内でコマンドを実行することも可能で、リカバリーコンソールにアクセスします: https://cloud.digitalocean.com/droplets/<droplet-id>/console(ただし、この場合はrootパスワードを知っている必要があります)。

最終更新