DO - Temel Bilgiler

Tip

AWS Hacking’i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking’i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
Az Hacking’i öğrenin ve pratik yapın: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks'i Destekleyin

Temel Bilgiler

DigitalOcean, kullanıcılara sanal özel sunucular (VPS) ve uygulama oluşturma, dağıtma ve yönetme için diğer kaynaklar da dahil olmak üzere çeşitli hizmetler sunan bir bulut bilişim platformudur. DigitalOcean’un hizmetleri basit ve kullanımı kolay olacak şekilde tasarlanmıştır, bu da onları geliştiriciler ve küçük işletmeler arasında popüler hale getirmektedir.

DigitalOcean’un bazı ana özellikleri şunlardır:

  • Sanal özel sunucular (VPS): DigitalOcean, web sitelerini ve uygulamaları barındırmak için kullanılabilecek VPS’ler sunar. Bu VPS’ler, basitlikleri ve kullanım kolaylıkları ile bilinir ve çeşitli önceden oluşturulmuş “damlalar” veya özel yapılandırmalar kullanılarak hızlı ve kolay bir şekilde dağıtılabilir.
  • Depolama: DigitalOcean, web siteleri ve uygulamalar için veri depolamak ve yönetmek amacıyla kullanılabilecek nesne depolama, blok depolama ve yönetilen veritabanları gibi çeşitli depolama seçenekleri sunar.
  • Geliştirme ve dağıtım araçları: DigitalOcean, uygulamaları oluşturmak, dağıtmak ve yönetmek için kullanılabilecek API’ler ve önceden oluşturulmuş damlalar dahil olmak üzere çeşitli araçlar sunar.
  • Güvenlik: DigitalOcean, güvenliğe büyük önem verir ve kullanıcıların verilerini ve uygulamalarını güvende tutmalarına yardımcı olmak için çeşitli araçlar ve özellikler sunar. Bu, şifreleme, yedeklemeler ve diğer güvenlik önlemlerini içerir.

Genel olarak, DigitalOcean, kullanıcılara bulutta uygulama oluşturma, dağıtma ve yönetme için ihtiyaç duydukları araçları ve kaynakları sağlayan bir bulut bilişim platformudur. Hizmetleri basit ve kullanımı kolay olacak şekilde tasarlanmıştır, bu da onları geliştiriciler ve küçük işletmeler arasında popüler hale getirmektedir.

AWS ile Ana Farklar

DigitalOcean ile AWS arasındaki ana farklardan biri, sundukları hizmetlerin çeşitliliğidir. DigitalOcean, basit ve kullanımı kolay sanal özel sunucular (VPS), depolama ve geliştirme ve dağıtım araçları sağlamaya odaklanır. AWS ise, VPS, depolama, veritabanları, makine öğrenimi, analiz ve birçok diğer hizmet dahil olmak üzere çok daha geniş bir hizmet yelpazesi sunar. Bu, AWS’nin karmaşık, kurumsal düzeyde uygulamalar için daha uygun olduğu, DigitalOcean’un ise küçük işletmeler ve geliştiriciler için daha uygun olduğu anlamına gelir.

İki platform arasındaki bir diğer önemli fark ise fiyatlandırma yapısıdır. DigitalOcean’un fiyatlandırması genellikle daha basit ve anlaşılması daha kolaydır; damla sayısına ve kullanılan diğer kaynaklara dayanan çeşitli fiyatlandırma planları vardır. Öte yandan, AWS, kullanılan kaynakların türü ve miktarı gibi çeşitli faktörlere dayanan daha karmaşık bir fiyatlandırma yapısına sahiptir. Bu, AWS kullanırken maliyetleri tahmin etmeyi daha zor hale getirebilir.

Hiyerarşi

Kullanıcı

Bir kullanıcı, beklediğiniz gibi bir kullanıcıdır. Takımlar oluşturabilir ve farklı takımlarda üye olabilir.

Takım

Bir takım, kullanıcılardan oluşan bir gruptur. Bir kullanıcı bir takım oluşturduğunda, o takımda sahip rolüne sahiptir ve başlangıçta faturalama bilgilerini ayarlar. Diğer kullanıcılar daha sonra takıma davet edilebilir.

Takım içinde birkaç proje olabilir. Bir proje, sadece birlikte çalışan hizmetler setidir. Farklı altyapı aşamalarını ayırmak için kullanılabilir, örneğin prod, staging, dev…

Proje

Açıklandığı gibi, bir proje, içindeki tüm hizmetler (damlalar, alanlar, veritabanları, kubernetes…) için bir konteynerdir.
Bir Digital Ocean projesi, IAM olmadan bir GCP projesine çok benzer.

İzinler

Takım

Temelde, bir takımın tüm üyeleri, takım içinde oluşturulan tüm projelerde DO kaynaklarına erişime sahiptir (daha az veya daha fazla ayrıcalıkla).

Roller

Bir takım içindeki her kullanıcı, aşağıdaki üç rolden birine sahip olabilir:

RolPaylaşılan KaynaklarFaturalama BilgileriTakım Ayarları
SahipTam erişimTam erişimTam erişim
FaturalandırıcıErişim yokTam erişimErişim yok
ÜyeTam erişimErişim yokErişim yok

Sahip ve üye, kullanıcıları listeleyebilir ve rollerini kontrol edebilir (faturalandırıcı bunu yapamaz).

Erişim

Kullanıcı adı + şifre (MFA)

Çoğu platformda olduğu gibi, GUI’ye erişmek için geçerli bir kullanıcı adı ve şifre seti kullanabilirsiniz. Giriş yaptıktan sonra, https://cloud.digitalocean.com/account/profile adresinde ait olduğunuz tüm takımları görebilirsiniz.
Ve tüm etkinliklerinizi https://cloud.digitalocean.com/account/activity adresinde görebilirsiniz.

MFA, bir kullanıcıda etkinleştirilebilir ve takımın tüm kullanıcıları için zorunlu hale getirilebilir.

API anahtarları

API’yi kullanmak için, kullanıcılar API anahtarları oluşturabilir. Bu anahtarlar her zaman Okuma izinleri ile gelir, ancak Yazma izinleri isteğe bağlıdır.
API anahtarları şu şekilde görünür:

dop_v1_1946a92309d6240274519275875bb3cb03c1695f60d47eaa1532916502361836

CLI aracı doctl. Bunu başlatın (bir token’a ihtiyacınız var):

doctl auth init # Asks for the token
doctl auth init --context my-context # Login with a different token
doctl auth list # List accounts

Varsayılan olarak bu token, Mac’te /Users/<username>/Library/Application Support/doctl/config.yaml dosyasına düz metin olarak yazılacaktır.

Spaces erişim anahtarları

Bunlar Spaces’a erişim sağlayan anahtarlardır (AWS’deki S3 veya GCP’deki Storage gibi).

Bir isim, bir keyid ve bir secret’ten oluşurlar. Bir örnek şöyle olabilir:

Name: key-example
Keyid: DO00ZW4FABSGZHAABGFX
Secret: 2JJ0CcQZ56qeFzAJ5GFUeeR4Dckarsh6EQSLm87MKlM

OAuth Uygulaması

OAuth uygulamalarına Digital Ocean üzerinde erişim verilebilir.

https://cloud.digitalocean.com/account/api/applications adresinde OAuth uygulamaları oluşturmak mümkündür ve https://cloud.digitalocean.com/account/api/access adresinde tüm izin verilen OAuth uygulamalarını kontrol edebilirsiniz.

SSH Anahtarları

https://cloud.digitalocean.com/account/security adresindeki konsoldan bir Digital Ocean Takımına SSH anahtarları eklemek mümkündür.

Bu şekilde, eğer yeni bir droplet oluşturursanız, SSH anahtarı ona ayarlanacak ve şifresiz SSH ile giriş yapabileceksiniz (güvenlik nedenleriyle yeni yüklenen SSH anahtarlarının mevcut droplet’lerde ayarlanmadığını unutmayın).

Fonksiyon Kimlik Doğrulama Token’ı

REST API aracılığıyla bir fonksiyonu tetikleme yöntemi (her zaman etkin, cli’nin kullandığı yöntem) bir kimlik doğrulama token’ı ile bir istek tetiklemektir:

curl -X POST "https://faas-lon1-129376a7.doserverless.co/api/v1/namespaces/fn-c100c012-65bf-4040-1230-2183764b7c23/actions/functionname?blocking=true&result=true" \
-H "Content-Type: application/json" \
-H "Authorization: Basic MGU0NTczZGQtNjNiYS00MjZlLWI2YjctODk0N2MyYTA2NGQ4OkhwVEllQ2t4djNZN2x6YjJiRmFGc1FERXBySVlWa1lEbUxtRE1aRTludXA1UUNlU2VpV0ZGNjNqWnVhYVdrTFg="

Loglar

Kullanıcı logları

Bir kullanıcının logları https://cloud.digitalocean.com/account/activity adresinde bulunabilir.

Takım logları

Bir takımın logları https://cloud.digitalocean.com/account/security adresinde bulunabilir.

Referanslar

Tip

AWS Hacking’i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking’i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
Az Hacking’i öğrenin ve pratik yapın: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks'i Destekleyin