DO - Fonctions
Tip
Apprenez & pratiquez AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Apprenez & pratiquez GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Apprenez & pratiquez Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Soutenez HackTricks
- Consultez les subscription plans!
- Rejoignez le đŹ Discord group ou le telegram group ou suivez-nous sur Twitter đŠ @hacktricks_live.
- Partagez des hacking tricks en soumettant des PRs aux HackTricks et HackTricks Cloud github repos.
Informations de base
DigitalOcean Functions, Ă©galement connu sous le nom de âDO Functionsâ, est une plateforme de calcul sans serveur qui vous permet de faire fonctionner du code sans avoir Ă vous soucier de lâinfrastructure sous-jacente. Avec DO Functions, vous pouvez Ă©crire et dĂ©ployer votre code sous forme de âfonctionsâ qui peuvent ĂȘtre dĂ©clenchĂ©es via API, requĂȘtes HTTP (si activĂ©es) ou cron. Ces fonctions sont exĂ©cutĂ©es dans un environnement entiĂšrement gĂ©rĂ©, donc vous nâavez pas Ă vous soucier de la mise Ă lâĂ©chelle, de la sĂ©curitĂ© ou de la maintenance.
Dans DO, pour crĂ©er une fonction, vous devez dâabord crĂ©er un espace de noms qui sera un groupe de fonctions.
Ă lâintĂ©rieur de lâespace de noms, vous pouvez ensuite crĂ©er une fonction.
Déclencheurs
La façon de dĂ©clencher une fonction via REST API (toujours activĂ©e, câest la mĂ©thode utilisĂ©e par le cli) est de dĂ©clencher une requĂȘte avec un jeton dâauthentification comme :
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="
Pour voir comment lâoutil cli doctl obtient ce jeton (afin que vous puissiez le reproduire), la commande suivante montre la trace rĂ©seau complĂšte :
doctl serverless connect --trace
Lorsque le dĂ©clencheur HTTP est activĂ©, une fonction web peut ĂȘtre invoquĂ©e via ces mĂ©thodes HTTP GET, POST, PUT, PATCH, DELETE, HEAD et OPTIONS.
Caution
Dans les fonctions DO, les variables dâenvironnement ne peuvent pas ĂȘtre chiffrĂ©es (au moment de la rĂ©daction de ce document).
Je nâai trouvĂ© aucun moyen de les lire depuis la CLI mais depuis la console, câest simple.
Les URLs des fonctions ressemblent Ă ceci : https://<random>.doserverless.co/api/v1/web/<namespace-id>/default/<function-name>
ĂnumĂ©ration
# Namespace
doctl serverless namespaces list
# Functions (need to connect to a namespace)
doctl serverless connect
doctl serverless functions list
doctl serverless functions invoke <func-name>
doctl serverless functions get <func-name>
# Logs of executions
doctl serverless activations list
doctl serverless activations get <activation-id> # Get all the info about execution
doctl serverless activations logs <activation-id> # get only the logs of execution
doctl serverless activations result <activation-id> # get only the response result of execution
# I couldn't find any way to get the env variables form the CLI
Caution
Il nây a pas de point de terminaison de mĂ©tadonnĂ©es depuis le sandbox des Functions.
Tip
Apprenez & pratiquez AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Apprenez & pratiquez GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Apprenez & pratiquez Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Soutenez HackTricks
- Consultez les subscription plans!
- Rejoignez le đŹ Discord group ou le telegram group ou suivez-nous sur Twitter đŠ @hacktricks_live.
- Partagez des hacking tricks en soumettant des PRs aux HackTricks et HackTricks Cloud github repos.
HackTricks Cloud

