Az - CosmosDB Post Exploitation
Reading time: 6 minutes
tip
Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Jifunze na fanya mazoezi ya Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Support HackTricks
- Angalia mpango wa usajili!
- Jiunge na 💬 kikundi cha Discord au kikundi cha telegram au tufuatilie kwenye Twitter 🐦 @hacktricks_live.
- Shiriki mbinu za hacking kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud repos za github.
CosmosDB Post Exploitation
Kwa maelezo zaidi kuhusu SQL Database angalia:
Microsoft.DocumentDB/databaseAccounts/read
&& Microsoft.DocumentDB/databaseAccounts/write
Kwa ruhusa hii, unaweza kuunda au kuboresha akaunti za Azure Cosmos DB. Hii inajumuisha kubadilisha mipangilio ya akaunti, kuwezesha au kuzima uhamaji wa kiotomatiki, kusimamia udhibiti wa ufikiaji wa mtandao, kuweka sera za akiba, na kurekebisha viwango vya usawa. Washambuliaji wenye ruhusa hii wanaweza kubadilisha mipangilio ili kudhoofisha udhibiti wa usalama, kuharibu upatikanaji, au kuhamasisha data kwa kubadilisha sheria za mtandao.
az cosmosdb update \
--name <account_name> \
--resource-group <resource_group_name> \
--public-network-access ENABLED
az cosmosdb update \
--account-name <account_name> \
--resource-group <resource_group_name> \
--capabilities EnableMongoRoleBasedAccessControl
Zaidi ya hayo, unaweza kuwezesha utambulisho unaosimamiwa katika akaunti:
az cosmosdb identity assign \
--name <cosmosdb_account_name> \
--resource-group <resource_group_name>
Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/read
&& Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/write
Kwa ruhusa hii, unaweza kuunda au kubadilisha kontena (makusanyo) ndani ya hifadhidata ya SQL ya akaunti ya Azure Cosmos DB. Kontena zinatumika kuhifadhi data, na mabadiliko kwao yanaweza kuathiri muundo wa hifadhidata na mifumo ya ufikiaji.
# Create
az cosmosdb sql container create \
--account-name <account_name> \
--resource-group <resource_group_name> \
--database-name <database_name> \
--name <container_name> \
--partition-key-path <partition_key_path>
#Update
az cosmosdb sql container update \
--account-name <account_name> \
--resource-group <resource_group_name> \
--database-name <database_name> \
--name <container_name> \
--ttl 3600
Microsoft.DocumentDB/databaseAccounts/sqlDatabases/write
&& Microsoft.DocumentDB/databaseAccounts/sqlDatabases/read
Kwa ruhusa hii, unaweza kuunda au kubadilisha hifadhidata za SQL ndani ya akaunti ya Azure Cosmos DB. Hii inaruhusu usimamizi wa muundo wa hifadhidata na kuongeza hifadhidata mpya kwenye akaunti. Ingawa ruhusa hii inaruhusu uundaji wa hifadhidata, matumizi yasiyo sahihi au yasiyoidhinishwa yanaweza kusababisha matumizi yasiyo ya lazima ya rasilimali, kuongezeka kwa gharama, au ukosefu wa ufanisi wa operesheni.
az cosmosdb sql database create \
--account-name <account_name> \
--resource-group <resource_group_name> \
--name <database_name>
Microsoft.DocumentDB/databaseAccounts/failoverPriorityChange/action
Kwa ruhusa hii, unaweza kubadilisha kipaumbele cha kufeli cha maeneo kwa akaunti ya hifadhidata ya Azure Cosmos DB. Kitendo hiki kinamua mpangilio ambao maeneo yanakuwa ya msingi wakati wa tukio la kufeli. Matumizi yasiyo sahihi ya ruhusa hii yanaweza kuharibu upatikanaji wa juu wa hifadhidata au kusababisha athari zisizokusudiwa za uendeshaji.
az cosmosdb failover-priority-change \
--name <database_account_name> \
--resource-group <resource_group_name> \
--failover-policies <region1=priority1> <region2=priority2>
Microsoft.DocumentDB/databaseAccounts/regenerateKey/action
Kwa ruhusa hii, unaweza kuunda upya funguo za msingi au za sekondari kwa akaunti ya Azure Cosmos DB. Hii kwa kawaida hutumika kuboresha usalama kwa kubadilisha funguo za zamani, lakini inaweza kuathiri upatikanaji wa huduma au programu zinazotegemea funguo za sasa.
az cosmosdb keys regenerate \
--name <account_name> \
--resource-group <resource_group_name> \
--key-kind <primary|secondary>
Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/userDefinedFunctions/write
&& Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/userDefinedFunctions/read
Kwa ruhusa hii, unaweza kuunda au kubadilisha triggers ndani ya kontena la database ya SQL katika akaunti ya Azure Cosmos DB. Triggers zinakuwezesha kutekeleza mantiki ya upande wa seva kama majibu ya operesheni.
az cosmosdb sql trigger create \
--account-name <account_name> \
--resource-group <resource_group_name> \
--database-name <sql_database_name> \
--container-name <container_name> \
--name <trigger_name> \
--body 'function trigger() { var context = getContext(); var request = context.getRequest(); request.setBody("Triggered operation!"); }' \
--type Pre \
--operation All
Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/storedProcedures/write
&& Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/storedProcedures/read
Kwa ruhusa hii, unaweza kuunda au kubadilisha taratibu zilizohifadhiwa ndani ya kontena la database ya SQL katika akaunti ya Azure Cosmos DB. Taratibu zilizohifadhiwa katika Cosmos DB ni kazi za JavaScript za upande wa seva ambazo zinakuwezesha kufunga mantiki ya kushughulikia data au kufanya operesheni moja kwa moja ndani ya database.
az cosmosdb sql stored-procedure create \
--account-name <account_name> \
--resource-group <resource_group_name> \
--database-name <sql_database_name> \
--container-name <container_name> \
--name <stored_procedure_name> \
--body 'function sample() { return "Hello, Cosmos!"; }'
Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/triggers/write
&& Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/triggers/read
Kwa ruhusa hii, unaweza kuunda au kubadilisha vichocheo ndani ya kontena la hifadhidata ya SQL katika akaunti ya Azure Cosmos DB. Vichocheo vinakuruhusu kutekeleza mantiki ya upande wa seva kama jibu kwa operesheni kama vile kuingiza, kusasisha, au kufuta.
az cosmosdb sql trigger create \
--account-name <account_name> \
--resource-group <resource_group_name> \
--database-name <sql_database_name> \
--container-name <container_name> \
--name <trigger_name> \
--body 'function trigger() { var context = getContext(); var request = context.getRequest(); request.setBody("Triggered operation!"); }' \
--type Pre \
--operation All
Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/collections/read
&& Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/collections/write
Kwa ruhusa hii, unaweza kuunda au kubadilisha makusanyo ndani ya hifadhidata za MongoDB katika akaunti ya Azure Cosmos DB. Makusanyo yanatumika kuhifadhi hati na kufafanua muundo na ugawaji wa data.
az cosmosdb mongodb collection create \
--account-name <account_name> \
--resource-group <resource_group_name> \
--database-name <mongodb_database_name> \
--name <collection_name>
Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/write
&& Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/read
Kwa ruhusa hii, unaweza kuunda hifadhidata mpya za MongoDB ndani ya akaunti ya Azure Cosmos DB. Hii inaruhusu kuandaa hifadhidata mpya kuhifadhi na kusimamia makusanyo na hati.
az cosmosdb mongodb database create \
--account-name <account_name> \
--resource-group <resource_group_name> \
--name <database_name>
tip
Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Jifunze na fanya mazoezi ya Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Support HackTricks
- Angalia mpango wa usajili!
- Jiunge na 💬 kikundi cha Discord au kikundi cha telegram au tufuatilie kwenye Twitter 🐦 @hacktricks_live.
- Shiriki mbinu za hacking kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud repos za github.