cloudxpl 4.2.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (522) hide show
  1. cloudxpl/__init__.py +8 -0
  2. cloudxpl/__main__.py +188 -0
  3. cloudxpl/core/__init__.py +0 -0
  4. cloudxpl/core/credential.py +37 -0
  5. cloudxpl/core/dispatcher.py +575 -0
  6. cloudxpl/core/identity_resolver.py +192 -0
  7. cloudxpl/core/policy_engine.py +198 -0
  8. cloudxpl/core/shell_mixin.py +96 -0
  9. cloudxpl/core/shells/__init__.py +47 -0
  10. cloudxpl/modules/__init__.py +0 -0
  11. cloudxpl/modules/alibaba/__init__.py +0 -0
  12. cloudxpl/modules/alibaba/cloudtoolkit_bridge.py +40 -0
  13. cloudxpl/modules/alibaba/cve_2026_19339.py +40 -0
  14. cloudxpl/modules/alibaba/ecs_enum.py +40 -0
  15. cloudxpl/modules/alibaba/ecs_metadata.py +40 -0
  16. cloudxpl/modules/alibaba/oss_enum.py +40 -0
  17. cloudxpl/modules/alibaba/oss_exploit.py +40 -0
  18. cloudxpl/modules/alibaba/ram_enum.py +40 -0
  19. cloudxpl/modules/alibaba/rds_enum.py +40 -0
  20. cloudxpl/modules/aws/__init__.py +0 -0
  21. cloudxpl/modules/aws/cloudformation_exploit.py +61 -0
  22. cloudxpl/modules/aws/cloudtrail_disable.py +66 -0
  23. cloudxpl/modules/aws/cloudtrail_tamper.py +59 -0
  24. cloudxpl/modules/aws/codebuild_exploit.py +62 -0
  25. cloudxpl/modules/aws/codepipeline_exploit.py +62 -0
  26. cloudxpl/modules/aws/cognito_exploit.py +71 -0
  27. cloudxpl/modules/aws/cve_2024_28056.py +59 -0
  28. cloudxpl/modules/aws/cve_2026_5707.py +59 -0
  29. cloudxpl/modules/aws/cve_2026_5708.py +40 -0
  30. cloudxpl/modules/aws/cve_2026_5709.py +40 -0
  31. cloudxpl/modules/aws/dynamodb_enum.py +54 -0
  32. cloudxpl/modules/aws/ebs_snapshot.py +67 -0
  33. cloudxpl/modules/aws/ec2_enum.py +69 -0
  34. cloudxpl/modules/aws/ec2_imds_pivot.py +86 -0
  35. cloudxpl/modules/aws/ec2_ssm.py +64 -0
  36. cloudxpl/modules/aws/ec2_userdata.py +70 -0
  37. cloudxpl/modules/aws/ecr_enum.py +64 -0
  38. cloudxpl/modules/aws/ecs_exploit.py +77 -0
  39. cloudxpl/modules/aws/eks_enum.py +67 -0
  40. cloudxpl/modules/aws/eks_exploit.py +66 -0
  41. cloudxpl/modules/aws/eventbridge_exploit.py +65 -0
  42. cloudxpl/modules/aws/glue_exploit.py +63 -0
  43. cloudxpl/modules/aws/guardduty_bypass.py +71 -0
  44. cloudxpl/modules/aws/iam_enum.py +101 -0
  45. cloudxpl/modules/aws/iam_privesc.py +92 -0
  46. cloudxpl/modules/aws/lambda_enum.py +85 -0
  47. cloudxpl/modules/aws/lambda_inject.py +79 -0
  48. cloudxpl/modules/aws/lambda_persist.py +69 -0
  49. cloudxpl/modules/aws/org_enum.py +58 -0
  50. cloudxpl/modules/aws/pacu_bridge.py +45 -0
  51. cloudxpl/modules/aws/rds_enum.py +64 -0
  52. cloudxpl/modules/aws/rds_exploit.py +57 -0
  53. cloudxpl/modules/aws/route53_takeover.py +63 -0
  54. cloudxpl/modules/aws/s3_enum.py +96 -0
  55. cloudxpl/modules/aws/s3_exfil.py +60 -0
  56. cloudxpl/modules/aws/s3_exploit.py +85 -0
  57. cloudxpl/modules/aws/secrets_manager.py +62 -0
  58. cloudxpl/modules/aws/sns_exploit.py +66 -0
  59. cloudxpl/modules/aws/sqs_exploit.py +62 -0
  60. cloudxpl/modules/aws/ssm_param_store.py +69 -0
  61. cloudxpl/modules/aws/sso_enum.py +63 -0
  62. cloudxpl/modules/aws/ssrf_imds.py +97 -0
  63. cloudxpl/modules/aws/stepfunctions_exploit.py +57 -0
  64. cloudxpl/modules/aws/sts_enum.py +70 -0
  65. cloudxpl/modules/aws/vpc_enum.py +66 -0
  66. cloudxpl/modules/azure/__init__.py +0 -0
  67. cloudxpl/modules/azure/aks_enum.py +85 -0
  68. cloudxpl/modules/azure/aks_exploit.py +85 -0
  69. cloudxpl/modules/azure/app_service_exploit.py +85 -0
  70. cloudxpl/modules/azure/arm_injection.py +144 -0
  71. cloudxpl/modules/azure/automation_exploit.py +85 -0
  72. cloudxpl/modules/azure/azure_functions_escape.py +29 -0
  73. cloudxpl/modules/azure/azurehound_bridge.py +85 -0
  74. cloudxpl/modules/azure/azurescape.py +41 -0
  75. cloudxpl/modules/azure/azurescape_bridge.py +29 -0
  76. cloudxpl/modules/azure/blob_exfil.py +85 -0
  77. cloudxpl/modules/azure/blob_exploit.py +85 -0
  78. cloudxpl/modules/azure/conditional_access.py +85 -0
  79. cloudxpl/modules/azure/cosmosdb_exploit.py +85 -0
  80. cloudxpl/modules/azure/cve_2024_50603.py +85 -0
  81. cloudxpl/modules/azure/cve_2025_29813.py +85 -0
  82. cloudxpl/modules/azure/cve_2025_29827.py +85 -0
  83. cloudxpl/modules/azure/cve_2025_29972.py +85 -0
  84. cloudxpl/modules/azure/cve_2025_53767.py +85 -0
  85. cloudxpl/modules/azure/cve_2026_20965.py +41 -0
  86. cloudxpl/modules/azure/defender_bypass.py +85 -0
  87. cloudxpl/modules/azure/devops_exploit.py +85 -0
  88. cloudxpl/modules/azure/entra_consent.py +85 -0
  89. cloudxpl/modules/azure/entra_enum.py +85 -0
  90. cloudxpl/modules/azure/entra_privesc.py +85 -0
  91. cloudxpl/modules/azure/entra_tokens.py +85 -0
  92. cloudxpl/modules/azure/fabricscape.py +41 -0
  93. cloudxpl/modules/azure/fabricscape_cve_2022_30137.py +30 -0
  94. cloudxpl/modules/azure/function_exploit.py +85 -0
  95. cloudxpl/modules/azure/function_persist.py +85 -0
  96. cloudxpl/modules/azure/functions_escape.py +41 -0
  97. cloudxpl/modules/azure/graph_api_abuse.py +85 -0
  98. cloudxpl/modules/azure/keyvault_exploit.py +85 -0
  99. cloudxpl/modules/azure/logic_apps_exploit.py +85 -0
  100. cloudxpl/modules/azure/managed_identity.py +115 -0
  101. cloudxpl/modules/azure/nsg_enum.py +85 -0
  102. cloudxpl/modules/azure/pim_abuse.py +85 -0
  103. cloudxpl/modules/azure/rbac_enum.py +85 -0
  104. cloudxpl/modules/azure/rbac_exploit.py +85 -0
  105. cloudxpl/modules/azure/resource_group_enum.py +85 -0
  106. cloudxpl/modules/azure/sentinel_bypass.py +85 -0
  107. cloudxpl/modules/azure/service_principal.py +85 -0
  108. cloudxpl/modules/azure/sql_enum.py +85 -0
  109. cloudxpl/modules/azure/sql_exploit.py +85 -0
  110. cloudxpl/modules/azure/storage_enum.py +94 -0
  111. cloudxpl/modules/azure/stormspotter_bridge.py +85 -0
  112. cloudxpl/modules/azure/subscription_enum.py +72 -0
  113. cloudxpl/modules/azure/vm_enum.py +85 -0
  114. cloudxpl/modules/azure/vm_exploit.py +85 -0
  115. cloudxpl/modules/azure/vm_imds.py +85 -0
  116. cloudxpl/modules/cicd/__init__.py +0 -0
  117. cloudxpl/modules/cicd/cicd_secret_dump.py +22 -0
  118. cloudxpl/modules/cicd/circleci_runner_escape.py +22 -0
  119. cloudxpl/modules/cicd/gha_runner_escape.py +22 -0
  120. cloudxpl/modules/cicd/gha_supply_chain.py +22 -0
  121. cloudxpl/modules/cicd/gitlab_ci_rce.py +22 -0
  122. cloudxpl/modules/cicd/gitlab_runner_hijack.py +22 -0
  123. cloudxpl/modules/cicd/jenkins_agent_abuse.py +22 -0
  124. cloudxpl/modules/cicd/jenkins_plugin_privesc.py +22 -0
  125. cloudxpl/modules/cicd/terraform_agent_abuse.py +22 -0
  126. cloudxpl/modules/cicd/terraform_token_leak.py +22 -0
  127. cloudxpl/modules/cred/__init__.py +0 -0
  128. cloudxpl/modules/cred/config_file_scan.py +85 -0
  129. cloudxpl/modules/cred/credential_report.py +85 -0
  130. cloudxpl/modules/cred/env_var_scan.py +85 -0
  131. cloudxpl/modules/cred/federation_abuse.py +85 -0
  132. cloudxpl/modules/cred/key_rotation_check.py +85 -0
  133. cloudxpl/modules/cred/leaked_key_exploit.py +85 -0
  134. cloudxpl/modules/cred/metadata_harvest.py +85 -0
  135. cloudxpl/modules/cred/mfa_relay.py +40 -0
  136. cloudxpl/modules/cred/oauth_token_theft.py +85 -0
  137. cloudxpl/modules/cred/rsa_netwitness_exploit.py +40 -0
  138. cloudxpl/modules/cred/rsa_securid_enum.py +40 -0
  139. cloudxpl/modules/cred/seed_theft_check.py +40 -0
  140. cloudxpl/modules/cred/temp_cred_extend.py +85 -0
  141. cloudxpl/modules/cred/token_lifetime_abuse.py +85 -0
  142. cloudxpl/modules/digitalocean/__init__.py +0 -0
  143. cloudxpl/modules/digitalocean/api_token_abuse.py +40 -0
  144. cloudxpl/modules/digitalocean/doks_enum.py +40 -0
  145. cloudxpl/modules/digitalocean/droplet_agent_rce.py +40 -0
  146. cloudxpl/modules/digitalocean/droplet_enum.py +40 -0
  147. cloudxpl/modules/digitalocean/firewall_enum.py +40 -0
  148. cloudxpl/modules/digitalocean/metadata_ssrf.py +40 -0
  149. cloudxpl/modules/digitalocean/spaces_enum.py +40 -0
  150. cloudxpl/modules/digitalocean/spaces_exploit.py +40 -0
  151. cloudxpl/modules/gcp/__init__.py +0 -0
  152. cloudxpl/modules/gcp/artifact_registry.py +85 -0
  153. cloudxpl/modules/gcp/bigquery_exploit.py +85 -0
  154. cloudxpl/modules/gcp/bucket_enum.py +84 -0
  155. cloudxpl/modules/gcp/bucket_exfil.py +85 -0
  156. cloudxpl/modules/gcp/bucket_exploit.py +85 -0
  157. cloudxpl/modules/gcp/cloud_armor_bypass.py +40 -0
  158. cloudxpl/modules/gcp/cloudbuild_exploit.py +85 -0
  159. cloudxpl/modules/gcp/cloudbuild_supply_chain.py +40 -0
  160. cloudxpl/modules/gcp/cloudfunctions_exploit.py +85 -0
  161. cloudxpl/modules/gcp/cloudfunctions_persist.py +85 -0
  162. cloudxpl/modules/gcp/cloudrun_exploit.py +85 -0
  163. cloudxpl/modules/gcp/cloudsql_enum.py +85 -0
  164. cloudxpl/modules/gcp/cloudsql_exploit.py +85 -0
  165. cloudxpl/modules/gcp/composer_exploit.py +85 -0
  166. cloudxpl/modules/gcp/compute_enum.py +85 -0
  167. cloudxpl/modules/gcp/compute_exploit.py +85 -0
  168. cloudxpl/modules/gcp/compute_imds.py +85 -0
  169. cloudxpl/modules/gcp/cve_2025_51591.py +85 -0
  170. cloudxpl/modules/gcp/cve_2026_2031.py +85 -0
  171. cloudxpl/modules/gcp/cve_2026_2264.py +85 -0
  172. cloudxpl/modules/gcp/cve_2026_31431.py +40 -0
  173. cloudxpl/modules/gcp/cve_2026_46300.py +40 -0
  174. cloudxpl/modules/gcp/cve_2026_81867.py +85 -0
  175. cloudxpl/modules/gcp/dataflow_exploit.py +85 -0
  176. cloudxpl/modules/gcp/dns_takeover.py +85 -0
  177. cloudxpl/modules/gcp/gcpbucketbrute_bridge.py +85 -0
  178. cloudxpl/modules/gcp/gke_autopilot_escape.py +40 -0
  179. cloudxpl/modules/gcp/gke_enum.py +85 -0
  180. cloudxpl/modules/gcp/gke_exploit.py +85 -0
  181. cloudxpl/modules/gcp/iam_privesc.py +85 -0
  182. cloudxpl/modules/gcp/iap_bypass.py +40 -0
  183. cloudxpl/modules/gcp/imagerunner_exploit.py +40 -0
  184. cloudxpl/modules/gcp/kms_exploit.py +85 -0
  185. cloudxpl/modules/gcp/logging_bypass.py +85 -0
  186. cloudxpl/modules/gcp/metadata_ssrf.py +94 -0
  187. cloudxpl/modules/gcp/org_policy_enum.py +85 -0
  188. cloudxpl/modules/gcp/project_enum.py +123 -0
  189. cloudxpl/modules/gcp/pubsub_exploit.py +85 -0
  190. cloudxpl/modules/gcp/sa_impersonate.py +85 -0
  191. cloudxpl/modules/gcp/sa_key_theft.py +85 -0
  192. cloudxpl/modules/gcp/secretmanager_exploit.py +85 -0
  193. cloudxpl/modules/gcp/service_account_enum.py +107 -0
  194. cloudxpl/modules/gcp/terraform_state.py +85 -0
  195. cloudxpl/modules/gcp/vpc_firewall_enum.py +85 -0
  196. cloudxpl/modules/gcp/wif_abuse.py +40 -0
  197. cloudxpl/modules/gcp/workload_identity.py +85 -0
  198. cloudxpl/modules/hetzner/__init__.py +0 -0
  199. cloudxpl/modules/hetzner/api_token_abuse.py +40 -0
  200. cloudxpl/modules/hetzner/firewall_enum.py +40 -0
  201. cloudxpl/modules/hetzner/floating_ip_hijack.py +40 -0
  202. cloudxpl/modules/hetzner/metadata_ssrf.py +40 -0
  203. cloudxpl/modules/hetzner/server_enum.py +40 -0
  204. cloudxpl/modules/ibm/__init__.py +0 -0
  205. cloudxpl/modules/ibm/cloudpak_exploit.py +40 -0
  206. cloudxpl/modules/ibm/cos_enum.py +40 -0
  207. cloudxpl/modules/ibm/cos_exploit.py +40 -0
  208. cloudxpl/modules/ibm/iam_enum.py +40 -0
  209. cloudxpl/modules/ibm/qradar_exploit.py +40 -0
  210. cloudxpl/modules/ibm/vpc_enum.py +40 -0
  211. cloudxpl/modules/k8s/__init__.py +0 -0
  212. cloudxpl/modules/k8s/admission_bypass.py +85 -0
  213. cloudxpl/modules/k8s/api_server_anon.py +85 -0
  214. cloudxpl/modules/k8s/cluster_enum.py +85 -0
  215. cloudxpl/modules/k8s/configmap_dump.py +85 -0
  216. cloudxpl/modules/k8s/container_cve_2026_52910.py +42 -0
  217. cloudxpl/modules/k8s/container_escape.py +85 -0
  218. cloudxpl/modules/k8s/crd_abuse.py +85 -0
  219. cloudxpl/modules/k8s/cve_2019_5736.py +40 -0
  220. cloudxpl/modules/k8s/cve_2021_30465.py +40 -0
  221. cloudxpl/modules/k8s/cve_2022_0492.py +40 -0
  222. cloudxpl/modules/k8s/cve_2022_0847.py +40 -0
  223. cloudxpl/modules/k8s/cve_2022_23648.py +40 -0
  224. cloudxpl/modules/k8s/cve_2024_0132.py +41 -0
  225. cloudxpl/modules/k8s/cve_2024_1753.py +41 -0
  226. cloudxpl/modules/k8s/cve_2024_21626.py +85 -0
  227. cloudxpl/modules/k8s/cve_2024_23651.py +41 -0
  228. cloudxpl/modules/k8s/cve_2024_23652.py +41 -0
  229. cloudxpl/modules/k8s/cve_2024_23653.py +41 -0
  230. cloudxpl/modules/k8s/cve_2025_23266.py +41 -0
  231. cloudxpl/modules/k8s/cve_2025_31133.py +85 -0
  232. cloudxpl/modules/k8s/cve_2025_52565.py +85 -0
  233. cloudxpl/modules/k8s/cve_2025_52881.py +85 -0
  234. cloudxpl/modules/k8s/etcd_exploit.py +85 -0
  235. cloudxpl/modules/k8s/helm_exploit.py +85 -0
  236. cloudxpl/modules/k8s/hostpath_mount.py +85 -0
  237. cloudxpl/modules/k8s/kube_hunter_bridge.py +85 -0
  238. cloudxpl/modules/k8s/kubelet_exploit.py +85 -0
  239. cloudxpl/modules/k8s/network_policy_bypass.py +85 -0
  240. cloudxpl/modules/k8s/node_proxy.py +85 -0
  241. cloudxpl/modules/k8s/peirates_bridge.py +85 -0
  242. cloudxpl/modules/k8s/pod_enum.py +85 -0
  243. cloudxpl/modules/k8s/pod_escape_cve.py +85 -0
  244. cloudxpl/modules/k8s/privileged_pod.py +85 -0
  245. cloudxpl/modules/k8s/rbac_enum.py +85 -0
  246. cloudxpl/modules/k8s/rbac_escalation.py +85 -0
  247. cloudxpl/modules/k8s/registry_exploit.py +85 -0
  248. cloudxpl/modules/k8s/runc_cve_2019_5736.py +41 -0
  249. cloudxpl/modules/k8s/runc_cve_2024_23651.py +30 -0
  250. cloudxpl/modules/k8s/runc_cve_2024_23652.py +30 -0
  251. cloudxpl/modules/k8s/runc_cve_2024_23653.py +30 -0
  252. cloudxpl/modules/k8s/sa_token_theft.py +85 -0
  253. cloudxpl/modules/k8s/secret_dump.py +85 -0
  254. cloudxpl/modules/k8s/service_mesh_exploit.py +85 -0
  255. cloudxpl/modules/k8s/sidecar_inject.py +85 -0
  256. cloudxpl/modules/multi/__init__.py +0 -0
  257. cloudxpl/modules/multi/ci_cd_exploit.py +85 -0
  258. cloudxpl/modules/multi/cloud_side_channel.py +41 -0
  259. cloudxpl/modules/multi/cloudfox_bridge.py +85 -0
  260. cloudxpl/modules/multi/cloudtoolkit_multi.py +40 -0
  261. cloudxpl/modules/multi/container_escape_collection_bridge.py +41 -0
  262. cloudxpl/modules/multi/cross_cloud_pivot.py +85 -0
  263. cloudxpl/modules/multi/docker_escape.py +85 -0
  264. cloudxpl/modules/multi/docker_socket.py +85 -0
  265. cloudxpl/modules/multi/firecracker_escape.py +41 -0
  266. cloudxpl/modules/multi/git_secret_scan.py +85 -0
  267. cloudxpl/modules/multi/github_actions_runner_exploit.py +29 -0
  268. cloudxpl/modules/multi/huawei_recon.py +40 -0
  269. cloudxpl/modules/multi/iac_secret_scan.py +85 -0
  270. cloudxpl/modules/multi/openstack_generic.py +40 -0
  271. cloudxpl/modules/multi/prowler_bridge.py +85 -0
  272. cloudxpl/modules/multi/scoutsuite_bridge.py +85 -0
  273. cloudxpl/modules/multi/steampipe_bridge.py +85 -0
  274. cloudxpl/modules/multi/terraform_plan_inject.py +85 -0
  275. cloudxpl/modules/multi/terraform_state_exploit.py +85 -0
  276. cloudxpl/modules/net/__init__.py +0 -0
  277. cloudxpl/modules/net/dns_takeover.py +85 -0
  278. cloudxpl/modules/net/exposed_services.py +85 -0
  279. cloudxpl/modules/net/load_balancer_enum.py +85 -0
  280. cloudxpl/modules/net/peering_abuse.py +85 -0
  281. cloudxpl/modules/net/privatelink_abuse.py +85 -0
  282. cloudxpl/modules/net/sg_analysis.py +85 -0
  283. cloudxpl/modules/net/vpc_enum.py +85 -0
  284. cloudxpl/modules/net/vpn_exploit.py +85 -0
  285. cloudxpl/modules/oci/__init__.py +0 -0
  286. cloudxpl/modules/oci/audit_bypass.py +40 -0
  287. cloudxpl/modules/oci/bucket_enum.py +40 -0
  288. cloudxpl/modules/oci/bucket_exploit.py +40 -0
  289. cloudxpl/modules/oci/compute_enum.py +40 -0
  290. cloudxpl/modules/oci/cve_2025_61882.py +40 -0
  291. cloudxpl/modules/oci/cve_2026_21962.py +40 -0
  292. cloudxpl/modules/oci/iam_enum.py +40 -0
  293. cloudxpl/modules/oci/metadata_ssrf.py +40 -0
  294. cloudxpl/modules/oci/ocinfernobridge.py +40 -0
  295. cloudxpl/modules/oci/volume_attach.py +40 -0
  296. cloudxpl/modules/ovh/__init__.py +0 -0
  297. cloudxpl/modules/ovh/api_abuse.py +40 -0
  298. cloudxpl/modules/ovh/bare_metal_ipmi.py +40 -0
  299. cloudxpl/modules/ovh/email_spoof.py +40 -0
  300. cloudxpl/modules/ovh/openstack_enum.py +40 -0
  301. cloudxpl/modules/ovh/swift_exploit.py +40 -0
  302. cloudxpl/modules/ovh/vrack_lateral.py +40 -0
  303. cloudxpl/modules/paas/__init__.py +0 -0
  304. cloudxpl/modules/paas/aci_azurescape.py +22 -0
  305. cloudxpl/modules/paas/appservice_sandbox_escape.py +22 -0
  306. cloudxpl/modules/paas/beanstalk_escape.py +22 -0
  307. cloudxpl/modules/paas/cloudrun_runc_escape.py +22 -0
  308. cloudxpl/modules/paas/fargate_firecracker.py +22 -0
  309. cloudxpl/modules/paas/gcp_appint_sandbox.py +22 -0
  310. cloudxpl/modules/paas/heroku_dyno_recon.py +22 -0
  311. cloudxpl/modules/paas/lambda_tmp_persist.py +22 -0
  312. cloudxpl/modules/paas/paas_metadata_pivot.py +22 -0
  313. cloudxpl/modules/paas/railway_escape.py +22 -0
  314. cloudxpl/modules/serverless/__init__.py +0 -0
  315. cloudxpl/modules/serverless/api_gateway_bypass.py +85 -0
  316. cloudxpl/modules/serverless/cold_start_abuse.py +85 -0
  317. cloudxpl/modules/serverless/concurrency_abuse.py +85 -0
  318. cloudxpl/modules/serverless/env_extraction.py +85 -0
  319. cloudxpl/modules/serverless/event_injection.py +85 -0
  320. cloudxpl/modules/serverless/iam_role_chain.py +85 -0
  321. cloudxpl/modules/serverless/layer_poisoning.py +85 -0
  322. cloudxpl/modules/serverless/log_injection.py +85 -0
  323. cloudxpl/modules/serverless/reverse_shell.py +85 -0
  324. cloudxpl/modules/serverless/runtime_rce.py +85 -0
  325. cloudxpl/modules/serverless/step_function_abuse.py +85 -0
  326. cloudxpl/modules/serverless/tmp_persistence.py +85 -0
  327. cloudxpl/modules/serverless/trigger_hijack.py +85 -0
  328. cloudxpl/modules/serverless/vpc_pivot.py +85 -0
  329. cloudxpl/modules/storage/__init__.py +0 -0
  330. cloudxpl/modules/storage/acl_check.py +85 -0
  331. cloudxpl/modules/storage/bucket_bruteforce.py +85 -0
  332. cloudxpl/modules/storage/bucket_finder.py +85 -0
  333. cloudxpl/modules/storage/bucketloot_bridge.py +85 -0
  334. cloudxpl/modules/storage/cors_exploit.py +85 -0
  335. cloudxpl/modules/storage/download_mass.py +85 -0
  336. cloudxpl/modules/storage/grayhat_search.py +85 -0
  337. cloudxpl/modules/storage/policy_abuse.py +85 -0
  338. cloudxpl/modules/storage/presigned_abuse.py +85 -0
  339. cloudxpl/modules/storage/public_objects.py +85 -0
  340. cloudxpl/modules/storage/ransomware_sim.py +85 -0
  341. cloudxpl/modules/storage/s3scanner_bridge.py +85 -0
  342. cloudxpl/modules/storage/static_site_takeover.py +85 -0
  343. cloudxpl/modules/storage/upload_exploit.py +85 -0
  344. cloudxpl/modules/storage/versioning_exploit.py +85 -0
  345. cloudxpl/modules/tencent/__init__.py +0 -0
  346. cloudxpl/modules/tencent/cam_enum.py +40 -0
  347. cloudxpl/modules/tencent/cloudtoolkit_bridge.py +40 -0
  348. cloudxpl/modules/tencent/cos_enum.py +40 -0
  349. cloudxpl/modules/tencent/cos_exploit.py +40 -0
  350. cloudxpl/modules/tencent/cve_2026_30859.py +40 -0
  351. cloudxpl/modules/tencent/cvm_metadata.py +40 -0
  352. cloudxpl/modules/vdi/__init__.py +0 -0
  353. cloudxpl/modules/vdi/avd_privesc.py +22 -0
  354. cloudxpl/modules/vdi/citrix_session_recording_rce.py +22 -0
  355. cloudxpl/modules/vdi/citrix_vda_lpe.py +22 -0
  356. cloudxpl/modules/vdi/citrix_vdi_cve_2025_6759.py +30 -0
  357. cloudxpl/modules/vdi/horizon_escape.py +22 -0
  358. cloudxpl/modules/vdi/vdi_breakout_clipboard.py +22 -0
  359. cloudxpl/modules/vdi/vdi_breakout_dialog.py +22 -0
  360. cloudxpl/modules/vdi/vdi_breakout_drive.py +22 -0
  361. cloudxpl/modules/vdi/vdi_breakout_print.py +22 -0
  362. cloudxpl/modules/vdi/vdi_breakout_usb.py +22 -0
  363. cloudxpl/modules/vdi/vdi_kiosk_escape.py +22 -0
  364. cloudxpl/modules/vdi/workspaces_lpe.py +22 -0
  365. cloudxpl/modules/virt/__init__.py +0 -0
  366. cloudxpl/modules/virt/amd_microcode_cve_2024_56161.py +30 -0
  367. cloudxpl/modules/virt/awesome_hyperv_bridge.py +33 -0
  368. cloudxpl/modules/virt/awesome_vm_exploit_bridge.py +33 -0
  369. cloudxpl/modules/virt/citrix_cve_2026_53562.py +30 -0
  370. cloudxpl/modules/virt/citrix_escape.py +40 -0
  371. cloudxpl/modules/virt/citrix_vapd_exploit.py +34 -0
  372. cloudxpl/modules/virt/citrix_vdi_cve_2025_6759.py +30 -0
  373. cloudxpl/modules/virt/citrix_xsa_486.py +40 -0
  374. cloudxpl/modules/virt/container_cve_2026_80521.py +42 -0
  375. cloudxpl/modules/virt/container_escape_collection_bridge.py +33 -0
  376. cloudxpl/modules/virt/cve_2019_5544.py +40 -0
  377. cloudxpl/modules/virt/cve_2020_3952.py +40 -0
  378. cloudxpl/modules/virt/cve_2020_3992.py +40 -0
  379. cloudxpl/modules/virt/cve_2021_21972.py +40 -0
  380. cloudxpl/modules/virt/cve_2021_21974.py +40 -0
  381. cloudxpl/modules/virt/cve_2021_21985.py +40 -0
  382. cloudxpl/modules/virt/cve_2021_22005.py +40 -0
  383. cloudxpl/modules/virt/cve_2022_22954.py +40 -0
  384. cloudxpl/modules/virt/cve_2022_31705.py +40 -0
  385. cloudxpl/modules/virt/cve_2023_20867.py +40 -0
  386. cloudxpl/modules/virt/cve_2023_34048.py +40 -0
  387. cloudxpl/modules/virt/cve_2024_37085.py +40 -0
  388. cloudxpl/modules/virt/cve_2025_22225.py +40 -0
  389. cloudxpl/modules/virt/cve_2025_22226.py +40 -0
  390. cloudxpl/modules/virt/esxi_brute_bridge.py +33 -0
  391. cloudxpl/modules/virt/esxi_cve_2019_5544.py +30 -0
  392. cloudxpl/modules/virt/esxi_cve_2020_3992.py +30 -0
  393. cloudxpl/modules/virt/esxi_cve_2021_21974.py +30 -0
  394. cloudxpl/modules/virt/esxi_cve_2024_22252.py +41 -0
  395. cloudxpl/modules/virt/esxi_cve_2024_22253.py +41 -0
  396. cloudxpl/modules/virt/esxi_cve_2024_22254.py +41 -0
  397. cloudxpl/modules/virt/esxi_cve_2024_22255.py +41 -0
  398. cloudxpl/modules/virt/esxi_cve_2024_37085.py +30 -0
  399. cloudxpl/modules/virt/esxi_cve_2025_22224.py +40 -0
  400. cloudxpl/modules/virt/esxi_cve_2026_47876.py +30 -0
  401. cloudxpl/modules/virt/esxi_enum.py +40 -0
  402. cloudxpl/modules/virt/esxi_fingerprint_bridge.py +33 -0
  403. cloudxpl/modules/virt/esxi_log4shell.py +41 -0
  404. cloudxpl/modules/virt/esxi_ransomware.py +40 -0
  405. cloudxpl/modules/virt/esxi_ssh_exploit.py +40 -0
  406. cloudxpl/modules/virt/esxi_vm_escape.py +40 -0
  407. cloudxpl/modules/virt/firecracker_cve_2026_1386.py +30 -0
  408. cloudxpl/modules/virt/firecracker_cve_2026_5747.py +30 -0
  409. cloudxpl/modules/virt/firecracker_escape.py +40 -0
  410. cloudxpl/modules/virt/horizon_log4shell.py +30 -0
  411. cloudxpl/modules/virt/hyperv_cve_2019_0887.py +30 -0
  412. cloudxpl/modules/virt/hyperv_cve_2021_28476.py +40 -0
  413. cloudxpl/modules/virt/hyperv_cve_2021_34450.py +30 -0
  414. cloudxpl/modules/virt/hyperv_cve_2022_21995.py +30 -0
  415. cloudxpl/modules/virt/hyperv_cve_2022_30163.py +30 -0
  416. cloudxpl/modules/virt/hyperv_cve_2024_20700.py +41 -0
  417. cloudxpl/modules/virt/hyperv_cve_2024_21407.py +40 -0
  418. cloudxpl/modules/virt/hyperv_cve_2024_38080.py +41 -0
  419. cloudxpl/modules/virt/hyperv_cve_2024_49117.py +30 -0
  420. cloudxpl/modules/virt/hyperv_cve_2025_21333.py +41 -0
  421. cloudxpl/modules/virt/hyperv_cve_2025_21334.py +41 -0
  422. cloudxpl/modules/virt/hyperv_cve_2025_21335.py +41 -0
  423. cloudxpl/modules/virt/hyperv_cve_2026_40402.py +40 -0
  424. cloudxpl/modules/virt/hyperv_cve_2026_45607.py +30 -0
  425. cloudxpl/modules/virt/hyperv_cve_2026_45641.py +41 -0
  426. cloudxpl/modules/virt/hyperv_cve_2026_57092.py +41 -0
  427. cloudxpl/modules/virt/hyperv_cve_2026_69603.py +41 -0
  428. cloudxpl/modules/virt/hyperv_cve_2026_72961.py +41 -0
  429. cloudxpl/modules/virt/hyperv_cve_2026_80083.py +41 -0
  430. cloudxpl/modules/virt/hyperv_cve_2026_89927.py +41 -0
  431. cloudxpl/modules/virt/hyperv_enum.py +40 -0
  432. cloudxpl/modules/virt/hyperv_escape.py +40 -0
  433. cloudxpl/modules/virt/hyperv_remotefx.py +40 -0
  434. cloudxpl/modules/virt/hypervisor_resources_bridge.py +41 -0
  435. cloudxpl/modules/virt/intel_tdx_enum.py +29 -0
  436. cloudxpl/modules/virt/kata_cve_2026_24834.py +30 -0
  437. cloudxpl/modules/virt/kata_escape.py +40 -0
  438. cloudxpl/modules/virt/kvm_arm64_escape.py +40 -0
  439. cloudxpl/modules/virt/kvm_cve_2019_14835.py +40 -0
  440. cloudxpl/modules/virt/kvm_cve_2019_18389.py +40 -0
  441. cloudxpl/modules/virt/kvm_cve_2026_3842.py +41 -0
  442. cloudxpl/modules/virt/kvm_cve_2026_64561.py +41 -0
  443. cloudxpl/modules/virt/kvm_cve_2026_99999.py +41 -0
  444. cloudxpl/modules/virt/kvm_januscape.py +40 -0
  445. cloudxpl/modules/virt/libvirt_enum.py +40 -0
  446. cloudxpl/modules/virt/lolesxi_bridge.py +33 -0
  447. cloudxpl/modules/virt/msf_vmware_bridge.py +40 -0
  448. cloudxpl/modules/virt/nitro_sidechannel.py +29 -0
  449. cloudxpl/modules/virt/nutanix_cve_2018_7750.py +30 -0
  450. cloudxpl/modules/virt/nutanix_cve_2026_84731.py +30 -0
  451. cloudxpl/modules/virt/nutanix_enum.py +40 -0
  452. cloudxpl/modules/virt/qemu_cve_2019_14378.py +30 -0
  453. cloudxpl/modules/virt/qemu_cve_2019_18389.py +30 -0
  454. cloudxpl/modules/virt/qemu_cve_2020_14364.py +30 -0
  455. cloudxpl/modules/virt/qemu_cve_2023_6693.py +41 -0
  456. cloudxpl/modules/virt/qemu_cve_2024_3446.py +41 -0
  457. cloudxpl/modules/virt/qemu_cve_2024_4467.py +41 -0
  458. cloudxpl/modules/virt/qemu_cve_2024_49841.py +41 -0
  459. cloudxpl/modules/virt/qemu_cve_2024_6519.py +40 -0
  460. cloudxpl/modules/virt/qemu_dma_reentrancy.py +40 -0
  461. cloudxpl/modules/virt/qemu_rtl8139_chain.py +41 -0
  462. cloudxpl/modules/virt/qemu_slirp_escape.py +41 -0
  463. cloudxpl/modules/virt/qemu_slirp_escape_bridge.py +42 -0
  464. cloudxpl/modules/virt/qemu_virtio_exploit.py +40 -0
  465. cloudxpl/modules/virt/sev_snp_enum.py +29 -0
  466. cloudxpl/modules/virt/sidechannel_cachewarp.py +30 -0
  467. cloudxpl/modules/virt/sidechannel_ddrop.py +29 -0
  468. cloudxpl/modules/virt/sidechannel_downfall.py +30 -0
  469. cloudxpl/modules/virt/sidechannel_inception.py +30 -0
  470. cloudxpl/modules/virt/sidechannel_wesee.py +30 -0
  471. cloudxpl/modules/virt/sidechannel_zenbleed.py +30 -0
  472. cloudxpl/modules/virt/vcenter_cve_2020_3952.py +30 -0
  473. cloudxpl/modules/virt/vcenter_cve_2021_21972.py +30 -0
  474. cloudxpl/modules/virt/vcenter_cve_2021_22005.py +34 -0
  475. cloudxpl/modules/virt/vcenter_cve_2021_44228.py +34 -0
  476. cloudxpl/modules/virt/vcenter_cve_2024_22252.py +30 -0
  477. cloudxpl/modules/virt/vcenter_cve_2024_22274.py +30 -0
  478. cloudxpl/modules/virt/vcenter_cve_2024_37079.py +40 -0
  479. cloudxpl/modules/virt/vcenter_cve_2024_37080.py +41 -0
  480. cloudxpl/modules/virt/vcenter_cve_2024_37081.py +30 -0
  481. cloudxpl/modules/virt/vcenter_cve_2024_38812.py +41 -0
  482. cloudxpl/modules/virt/vcenter_cve_2024_38813.py +41 -0
  483. cloudxpl/modules/virt/vcenter_cve_2025_41225.py +41 -0
  484. cloudxpl/modules/virt/vcenter_cve_2026_59309.py +40 -0
  485. cloudxpl/modules/virt/vcenter_cve_2026_59310.py +40 -0
  486. cloudxpl/modules/virt/vcenter_exploit.py +40 -0
  487. cloudxpl/modules/virt/vcenter_saml_bypass.py +41 -0
  488. cloudxpl/modules/virt/vcenter_secrets_dump.py +33 -0
  489. cloudxpl/modules/virt/vcenter_vmdir_bridge.py +34 -0
  490. cloudxpl/modules/virt/vcenterkit_bridge.py +40 -0
  491. cloudxpl/modules/virt/vdi_breakout.py +40 -0
  492. cloudxpl/modules/virt/virt_cross_domain.py +41 -0
  493. cloudxpl/modules/virt/virt_maestro_detect.py +41 -0
  494. cloudxpl/modules/virt/virt_side_channel.py +41 -0
  495. cloudxpl/modules/virt/virt_snapshot_theft.py +41 -0
  496. cloudxpl/modules/virt/virt_vtpm_extract.py +41 -0
  497. cloudxpl/modules/virt/vmware_api_enum.py +29 -0
  498. cloudxpl/modules/virt/vmware_enum_vms_bridge.py +33 -0
  499. cloudxpl/modules/virt/vmware_exploitation_bridge.py +33 -0
  500. cloudxpl/modules/virt/vmware_http_login_bridge.py +33 -0
  501. cloudxpl/modules/virt/vmware_tools_lpe.py +40 -0
  502. cloudxpl/modules/virt/xen_cve_2023_46842.py +41 -0
  503. cloudxpl/modules/virt/xen_grant_escape.py +40 -0
  504. cloudxpl/modules/virt/xen_iommu_exploit.py +40 -0
  505. cloudxpl/modules/virt/xen_venom.py +41 -0
  506. cloudxpl/modules/virt/xen_xsa486.py +41 -0
  507. cloudxpl/modules/virt/xen_xsa500.py +41 -0
  508. cloudxpl/modules/virt/xen_xsa505.py +41 -0
  509. cloudxpl/modules/virt/xen_xsa507.py +30 -0
  510. cloudxpl/modules/virt/xen_xsa517.py +41 -0
  511. cloudxpl/modules/virt/xen_xsa521.py +41 -0
  512. cloudxpl/modules/virt/xen_xsa_500.py +30 -0
  513. cloudxpl/modules/virt/xen_xsa_505.py +30 -0
  514. cloudxpl/modules/virt/xen_xsa_507.py +30 -0
  515. cloudxpl/modules/virt/xen_xsa_517.py +30 -0
  516. cloudxpl/modules/virt/xen_xsa_521.py +30 -0
  517. cloudxpl/py.typed +0 -0
  518. cloudxpl-4.2.0.dist-info/METADATA +98 -0
  519. cloudxpl-4.2.0.dist-info/RECORD +522 -0
  520. cloudxpl-4.2.0.dist-info/WHEEL +5 -0
  521. cloudxpl-4.2.0.dist-info/entry_points.txt +3 -0
  522. cloudxpl-4.2.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,41 @@
1
+ """CloudXPL-Forge module: CVE-2025-41225 — vCenter authenticated command execution (CVSS 8.8)"""
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Any
6
+
7
+
8
+ MANIFEST = {
9
+ "capability_id": "cloudxpl.virt.vcenter_cve_2025_41225.v1",
10
+ "safety_class": "EXPLOIT",
11
+ "requires_authorization": True,
12
+ "side_effects": ["api_calls", "state_change"],
13
+ "output_schema": "xpl.finding.v1",
14
+ "mitre": ['T1059'],
15
+ "references": ["CVE-2025-41225"],
16
+ }
17
+
18
+
19
+ def run(args: Any) -> int:
20
+ """Execute CVE-2025-41225 — vCenter authenticated command execution (CVSS 8.8)."""
21
+ import json
22
+ import sys
23
+ from datetime import datetime, timezone
24
+ from pathlib import Path
25
+
26
+ print(f"[*] {MANIFEST['capability_id']} starting...")
27
+ print(f"[*] Target: {getattr(args, 'target', 'N/A')}")
28
+
29
+ findings: list[dict] = []
30
+
31
+ # --- Module logic placeholder ---
32
+ # TODO: implement provider-specific API calls
33
+ print("[!] Module stub — implement provider-specific logic")
34
+
35
+ ts = datetime.now(timezone.utc).strftime("%Y%m%d_%H%M%S")
36
+ out_dir = Path(getattr(args, "output", "."))
37
+ out_dir.mkdir(parents=True, exist_ok=True)
38
+ out_file = out_dir / f"{MANIFEST['capability_id'].rsplit('.', 1)[-1]}_{ts}.json"
39
+ out_file.write_text(json.dumps({"module": MANIFEST["capability_id"], "timestamp": ts, "findings": findings}, indent=2))
40
+ print(f"[+] Results saved to {out_file}")
41
+ return 0
@@ -0,0 +1,40 @@
1
+ """CloudXPL-Forge module: CVE-2026-59309 — vCenter auth bypass via Directory Service (CVSS 9.8)"""
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Any
6
+
7
+
8
+ MANIFEST = {
9
+ "capability_id": "cloudxpl.virt.vcenter_cve_2026_59309.v1",
10
+ "safety_class": "EXPLOIT",
11
+ "requires_authorization": True,
12
+ "side_effects": ["api_calls", "state_change"],
13
+ "output_schema": "xpl.finding.v1",
14
+ "mitre": ["T1190"],
15
+ }
16
+
17
+
18
+ def run(args: Any) -> int:
19
+ """Execute CVE-2026-59309 — vCenter auth bypass via Directory Service (CVSS 9.8)."""
20
+ import json
21
+ import sys
22
+ from datetime import datetime, timezone
23
+ from pathlib import Path
24
+
25
+ print(f"[*] {MANIFEST['capability_id']} starting...")
26
+ print(f"[*] Target: {getattr(args, 'target', 'N/A')}")
27
+
28
+ findings: list[dict] = []
29
+
30
+ # --- Module logic placeholder ---
31
+ # TODO: implement provider-specific API calls
32
+ print("[!] Module stub — implement provider-specific logic")
33
+
34
+ ts = datetime.now(timezone.utc).strftime("%Y%m%d_%H%M%S")
35
+ out_dir = Path(getattr(args, "output", "."))
36
+ out_dir.mkdir(parents=True, exist_ok=True)
37
+ out_file = out_dir / f"{MANIFEST['capability_id'].rsplit('.', 1)[-1]}_{ts}.json"
38
+ out_file.write_text(json.dumps({"module": MANIFEST["capability_id"], "timestamp": ts, "findings": findings}, indent=2))
39
+ print(f"[+] Results saved to {out_file}")
40
+ return 0
@@ -0,0 +1,40 @@
1
+ """CloudXPL-Forge module: CVE-2026-59310 — vCenter directory traversal Syslog (CVSS 9.8, KEV)"""
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Any
6
+
7
+
8
+ MANIFEST = {
9
+ "capability_id": "cloudxpl.virt.vcenter_cve_2026_59310.v1",
10
+ "safety_class": "EXPLOIT",
11
+ "requires_authorization": True,
12
+ "side_effects": ["api_calls", "state_change"],
13
+ "output_schema": "xpl.finding.v1",
14
+ "mitre": ["T1190"],
15
+ }
16
+
17
+
18
+ def run(args: Any) -> int:
19
+ """Execute CVE-2026-59310 — vCenter directory traversal Syslog (CVSS 9.8, KEV)."""
20
+ import json
21
+ import sys
22
+ from datetime import datetime, timezone
23
+ from pathlib import Path
24
+
25
+ print(f"[*] {MANIFEST['capability_id']} starting...")
26
+ print(f"[*] Target: {getattr(args, 'target', 'N/A')}")
27
+
28
+ findings: list[dict] = []
29
+
30
+ # --- Module logic placeholder ---
31
+ # TODO: implement provider-specific API calls
32
+ print("[!] Module stub — implement provider-specific logic")
33
+
34
+ ts = datetime.now(timezone.utc).strftime("%Y%m%d_%H%M%S")
35
+ out_dir = Path(getattr(args, "output", "."))
36
+ out_dir.mkdir(parents=True, exist_ok=True)
37
+ out_file = out_dir / f"{MANIFEST['capability_id'].rsplit('.', 1)[-1]}_{ts}.json"
38
+ out_file.write_text(json.dumps({"module": MANIFEST["capability_id"], "timestamp": ts, "findings": findings}, indent=2))
39
+ print(f"[+] Results saved to {out_file}")
40
+ return 0
@@ -0,0 +1,40 @@
1
+ """CloudXPL-Forge module: Exploit vCenter vulnerabilities (auth bypass, directory traversal)"""
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Any
6
+
7
+
8
+ MANIFEST = {
9
+ "capability_id": "cloudxpl.virt.vcenter_exploit.v1",
10
+ "safety_class": "EXPLOIT",
11
+ "requires_authorization": True,
12
+ "side_effects": ["api_calls", "state_change"],
13
+ "output_schema": "xpl.finding.v1",
14
+ "mitre": ["T1190"],
15
+ }
16
+
17
+
18
+ def run(args: Any) -> int:
19
+ """Execute Exploit vCenter vulnerabilities (auth bypass, directory traversal)."""
20
+ import json
21
+ import sys
22
+ from datetime import datetime, timezone
23
+ from pathlib import Path
24
+
25
+ print(f"[*] {MANIFEST['capability_id']} starting...")
26
+ print(f"[*] Target: {getattr(args, 'target', 'N/A')}")
27
+
28
+ findings: list[dict] = []
29
+
30
+ # --- Module logic placeholder ---
31
+ # TODO: implement provider-specific API calls
32
+ print("[!] Module stub — implement provider-specific logic")
33
+
34
+ ts = datetime.now(timezone.utc).strftime("%Y%m%d_%H%M%S")
35
+ out_dir = Path(getattr(args, "output", "."))
36
+ out_dir.mkdir(parents=True, exist_ok=True)
37
+ out_file = out_dir / f"{MANIFEST['capability_id'].rsplit('.', 1)[-1]}_{ts}.json"
38
+ out_file.write_text(json.dumps({"module": MANIFEST["capability_id"], "timestamp": ts, "findings": findings}, indent=2))
39
+ print(f"[+] Results saved to {out_file}")
40
+ return 0
@@ -0,0 +1,41 @@
1
+ """CloudXPL-Forge module: CVE-2022-22972 — vCenter SAML authentication bypass KEV (CVSS 9.8)"""
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Any
6
+
7
+
8
+ MANIFEST = {
9
+ "capability_id": "cloudxpl.virt.vcenter_saml_bypass.v1",
10
+ "safety_class": "EXPLOIT",
11
+ "requires_authorization": True,
12
+ "side_effects": ["api_calls", "state_change"],
13
+ "output_schema": "xpl.finding.v1",
14
+ "mitre": ['T1078', 'T1550'],
15
+ "references": ["CVE-2022-22972"],
16
+ }
17
+
18
+
19
+ def run(args: Any) -> int:
20
+ """Execute CVE-2022-22972 — vCenter SAML authentication bypass KEV (CVSS 9.8)."""
21
+ import json
22
+ import sys
23
+ from datetime import datetime, timezone
24
+ from pathlib import Path
25
+
26
+ print(f"[*] {MANIFEST['capability_id']} starting...")
27
+ print(f"[*] Target: {getattr(args, 'target', 'N/A')}")
28
+
29
+ findings: list[dict] = []
30
+
31
+ # --- Module logic placeholder ---
32
+ # TODO: implement provider-specific API calls
33
+ print("[!] Module stub — implement provider-specific logic")
34
+
35
+ ts = datetime.now(timezone.utc).strftime("%Y%m%d_%H%M%S")
36
+ out_dir = Path(getattr(args, "output", "."))
37
+ out_dir.mkdir(parents=True, exist_ok=True)
38
+ out_file = out_dir / f"{MANIFEST['capability_id'].rsplit('.', 1)[-1]}_{ts}.json"
39
+ out_file.write_text(json.dumps({"module": MANIFEST["capability_id"], "timestamp": ts, "findings": findings}, indent=2))
40
+ print(f"[+] Results saved to {out_file}")
41
+ return 0
@@ -0,0 +1,33 @@
1
+ """CloudXPL-Forge — vCenter Secrets Dump (Metasploit Bridge)."""
2
+
3
+ from __future__ import annotations
4
+
5
+ MANIFEST: dict = {
6
+ "name": "vCenter Secrets Dump (Metasploit Bridge)",
7
+ "mitre": ["T1552"],
8
+ "description": "Bridge to Metasploit post/linux/gather/vcenter_secrets_dump for extracting credentials from compromised vCenter.",
9
+ "references": ["https://www.rapid7.com/db/modules/post/linux/gather/vcenter_secrets_dump/"],
10
+ }
11
+
12
+
13
+ import shutil
14
+ import subprocess
15
+ import sys
16
+
17
+
18
+ def run(args):
19
+ msfconsole = shutil.which("msfconsole")
20
+ if not msfconsole:
21
+ print("[!] msfconsole not found — install Metasploit Framework", file=sys.stderr)
22
+ return 1
23
+
24
+ target = getattr(args, "target", None) or getattr(args, "vcenter_host", "") or ""
25
+ cmd = [
26
+ msfconsole, "-q", "-x",
27
+ f"use post/linux/gather/vcenter_secrets_dump; "
28
+ + (f"set RHOSTS {target}; " if target else "")
29
+ + "run; exit",
30
+ ]
31
+ if getattr(args, "verbose", False):
32
+ print(f"[*] Running: {' '.join(cmd)}")
33
+ return subprocess.call(cmd)
@@ -0,0 +1,34 @@
1
+ """CloudXPL-Forge — vCenter vmdir Auth Bypass (Metasploit Bridge)."""
2
+
3
+ from __future__ import annotations
4
+
5
+ MANIFEST: dict = {
6
+ "name": "vCenter vmdir Auth Bypass (Metasploit Bridge)",
7
+ "cve": "CVE-2020-3952",
8
+ "mitre": ["T1078"],
9
+ "description": "Bridge to Metasploit auxiliary/admin/ldap/vmware_vcenter_vmdir_auth_bypass for exploiting vmdir auth flaw.",
10
+ "references": ["https://www.rapid7.com/db/modules/auxiliary/admin/ldap/vmware_vcenter_vmdir_auth_bypass/"],
11
+ }
12
+
13
+
14
+ import shutil
15
+ import subprocess
16
+ import sys
17
+
18
+
19
+ def run(args):
20
+ msfconsole = shutil.which("msfconsole")
21
+ if not msfconsole:
22
+ print("[!] msfconsole not found — install Metasploit Framework", file=sys.stderr)
23
+ return 1
24
+
25
+ target = getattr(args, "target", None) or getattr(args, "vcenter_host", "") or ""
26
+ cmd = [
27
+ msfconsole, "-q", "-x",
28
+ f"use auxiliary/admin/ldap/vmware_vcenter_vmdir_auth_bypass; "
29
+ + (f"set RHOSTS {target}; " if target else "")
30
+ + "run; exit",
31
+ ]
32
+ if getattr(args, "verbose", False):
33
+ print(f"[*] Running: {' '.join(cmd)}")
34
+ return subprocess.call(cmd)
@@ -0,0 +1,40 @@
1
+ """CloudXPL-Forge module: Bridge to VcenterKit — vCenter pentest toolkit"""
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Any
6
+
7
+
8
+ MANIFEST = {
9
+ "capability_id": "cloudxpl.virt.vcenterkit_bridge.v1",
10
+ "safety_class": "READ_ONLY",
11
+ "requires_authorization": True,
12
+ "side_effects": ["api_calls"],
13
+ "output_schema": "xpl.finding.v1",
14
+ "mitre": ["T1526"],
15
+ }
16
+
17
+
18
+ def run(args: Any) -> int:
19
+ """Execute Bridge to VcenterKit — vCenter pentest toolkit."""
20
+ import json
21
+ import sys
22
+ from datetime import datetime, timezone
23
+ from pathlib import Path
24
+
25
+ print(f"[*] {MANIFEST['capability_id']} starting...")
26
+ print(f"[*] Target: {getattr(args, 'target', 'N/A')}")
27
+
28
+ findings: list[dict] = []
29
+
30
+ # --- Module logic placeholder ---
31
+ # TODO: implement provider-specific API calls
32
+ print("[!] Module stub — implement provider-specific logic")
33
+
34
+ ts = datetime.now(timezone.utc).strftime("%Y%m%d_%H%M%S")
35
+ out_dir = Path(getattr(args, "output", "."))
36
+ out_dir.mkdir(parents=True, exist_ok=True)
37
+ out_file = out_dir / f"{MANIFEST['capability_id'].rsplit('.', 1)[-1]}_{ts}.json"
38
+ out_file.write_text(json.dumps({"module": MANIFEST["capability_id"], "timestamp": ts, "findings": findings}, indent=2))
39
+ print(f"[+] Results saved to {out_file}")
40
+ return 0
@@ -0,0 +1,40 @@
1
+ """CloudXPL-Forge module: VDI breakout techniques (VMware Horizon, Citrix XenDesktop/Virtual Apps)"""
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Any
6
+
7
+
8
+ MANIFEST = {
9
+ "capability_id": "cloudxpl.virt.vdi_breakout.v1",
10
+ "safety_class": "EXPLOIT",
11
+ "requires_authorization": True,
12
+ "side_effects": ["api_calls"],
13
+ "output_schema": "xpl.finding.v1",
14
+ "mitre": ["T1611", "T1548"],
15
+ }
16
+
17
+
18
+ def run(args: Any) -> int:
19
+ """VDI escape/breakout: VMware Horizon CVE-2020-3961 LPE, Citrix Virtual Apps CVE-2025-6759 LPE, kiosk/app-layer escape techniques."""
20
+ import json
21
+ import sys
22
+ from datetime import datetime, timezone
23
+ from pathlib import Path
24
+
25
+ print(f"[*] {MANIFEST['capability_id']} starting...")
26
+ print(f"[*] Target: {getattr(args, 'target', 'N/A')}")
27
+
28
+ findings: list[dict] = []
29
+
30
+ # --- Module logic placeholder ---
31
+ # TODO: implement provider-specific logic
32
+ print("[!] Module stub — implement provider-specific logic")
33
+
34
+ ts = datetime.now(timezone.utc).strftime("%Y%m%d_%H%M%S")
35
+ out_dir = Path(getattr(args, "output", "."))
36
+ out_dir.mkdir(parents=True, exist_ok=True)
37
+ out_file = out_dir / f"{MANIFEST['capability_id'].rsplit('.', 1)[-1]}_{ts}.json"
38
+ out_file.write_text(json.dumps({"module": MANIFEST["capability_id"], "timestamp": ts, "findings": findings}, indent=2))
39
+ print(f"[+] Results saved to {out_file}")
40
+ return 0
@@ -0,0 +1,41 @@
1
+ """CloudXPL-Forge module: Cross-domain hypervisor exploitation via MMIO/PIO/DMA/shared-memory (arXiv 2512.04260)"""
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Any
6
+
7
+
8
+ MANIFEST = {
9
+ "capability_id": "cloudxpl.virt.virt_cross_domain.v1",
10
+ "safety_class": "EXPLOIT",
11
+ "requires_authorization": True,
12
+ "side_effects": ["api_calls", "state_change"],
13
+ "output_schema": "xpl.finding.v1",
14
+ "mitre": ['T1611'],
15
+ "references": ["cross-domain-hypervisor"],
16
+ }
17
+
18
+
19
+ def run(args: Any) -> int:
20
+ """Execute Cross-domain hypervisor exploitation via MMIO/PIO/DMA/shared-memory (arXiv 2512.04260)."""
21
+ import json
22
+ import sys
23
+ from datetime import datetime, timezone
24
+ from pathlib import Path
25
+
26
+ print(f"[*] {MANIFEST['capability_id']} starting...")
27
+ print(f"[*] Target: {getattr(args, 'target', 'N/A')}")
28
+
29
+ findings: list[dict] = []
30
+
31
+ # --- Module logic placeholder ---
32
+ # TODO: implement provider-specific API calls
33
+ print("[!] Module stub — implement provider-specific logic")
34
+
35
+ ts = datetime.now(timezone.utc).strftime("%Y%m%d_%H%M%S")
36
+ out_dir = Path(getattr(args, "output", "."))
37
+ out_dir.mkdir(parents=True, exist_ok=True)
38
+ out_file = out_dir / f"{MANIFEST['capability_id'].rsplit('.', 1)[-1]}_{ts}.json"
39
+ out_file.write_text(json.dumps({"module": MANIFEST["capability_id"], "timestamp": ts, "findings": findings}, indent=2))
40
+ print(f"[+] Results saved to {out_file}")
41
+ return 0
@@ -0,0 +1,41 @@
1
+ """CloudXPL-Forge module: Huntress MAESTRO ESXi escape toolkit detection and enumeration"""
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Any
6
+
7
+
8
+ MANIFEST = {
9
+ "capability_id": "cloudxpl.virt.virt_maestro_detect.v1",
10
+ "safety_class": "READ_ONLY",
11
+ "requires_authorization": True,
12
+ "side_effects": [],
13
+ "output_schema": "xpl.finding.v1",
14
+ "mitre": ['T1611', 'T1082'],
15
+ "references": ["MAESTRO-toolkit"],
16
+ }
17
+
18
+
19
+ def run(args: Any) -> int:
20
+ """Execute Huntress MAESTRO ESXi escape toolkit detection and enumeration."""
21
+ import json
22
+ import sys
23
+ from datetime import datetime, timezone
24
+ from pathlib import Path
25
+
26
+ print(f"[*] {MANIFEST['capability_id']} starting...")
27
+ print(f"[*] Target: {getattr(args, 'target', 'N/A')}")
28
+
29
+ findings: list[dict] = []
30
+
31
+ # --- Module logic placeholder ---
32
+ # TODO: implement provider-specific API calls
33
+ print("[!] Module stub — implement provider-specific logic")
34
+
35
+ ts = datetime.now(timezone.utc).strftime("%Y%m%d_%H%M%S")
36
+ out_dir = Path(getattr(args, "output", "."))
37
+ out_dir.mkdir(parents=True, exist_ok=True)
38
+ out_file = out_dir / f"{MANIFEST['capability_id'].rsplit('.', 1)[-1]}_{ts}.json"
39
+ out_file.write_text(json.dumps({"module": MANIFEST["capability_id"], "timestamp": ts, "findings": findings}, indent=2))
40
+ print(f"[+] Results saved to {out_file}")
41
+ return 0
@@ -0,0 +1,41 @@
1
+ """CloudXPL-Forge module: Hypervisor LLC/cache side-channel cross-tenant information extraction"""
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Any
6
+
7
+
8
+ MANIFEST = {
9
+ "capability_id": "cloudxpl.virt.virt_side_channel.v1",
10
+ "safety_class": "EXPLOIT",
11
+ "requires_authorization": True,
12
+ "side_effects": ["api_calls", "state_change"],
13
+ "output_schema": "xpl.finding.v1",
14
+ "mitre": ['T1005', 'T1040'],
15
+ "references": ["LLC-side-channel"],
16
+ }
17
+
18
+
19
+ def run(args: Any) -> int:
20
+ """Execute Hypervisor LLC/cache side-channel cross-tenant information extraction."""
21
+ import json
22
+ import sys
23
+ from datetime import datetime, timezone
24
+ from pathlib import Path
25
+
26
+ print(f"[*] {MANIFEST['capability_id']} starting...")
27
+ print(f"[*] Target: {getattr(args, 'target', 'N/A')}")
28
+
29
+ findings: list[dict] = []
30
+
31
+ # --- Module logic placeholder ---
32
+ # TODO: implement provider-specific API calls
33
+ print("[!] Module stub — implement provider-specific logic")
34
+
35
+ ts = datetime.now(timezone.utc).strftime("%Y%m%d_%H%M%S")
36
+ out_dir = Path(getattr(args, "output", "."))
37
+ out_dir.mkdir(parents=True, exist_ok=True)
38
+ out_file = out_dir / f"{MANIFEST['capability_id'].rsplit('.', 1)[-1]}_{ts}.json"
39
+ out_file.write_text(json.dumps({"module": MANIFEST["capability_id"], "timestamp": ts, "findings": findings}, indent=2))
40
+ print(f"[+] Results saved to {out_file}")
41
+ return 0
@@ -0,0 +1,41 @@
1
+ """CloudXPL-Forge module: VM snapshot data theft via hypervisor access or storage side-channel"""
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Any
6
+
7
+
8
+ MANIFEST = {
9
+ "capability_id": "cloudxpl.virt.virt_snapshot_theft.v1",
10
+ "safety_class": "EXPLOIT",
11
+ "requires_authorization": True,
12
+ "side_effects": ["api_calls", "state_change"],
13
+ "output_schema": "xpl.finding.v1",
14
+ "mitre": ['T1005', 'T1552'],
15
+ "references": ["VM-snapshot-theft"],
16
+ }
17
+
18
+
19
+ def run(args: Any) -> int:
20
+ """Execute VM snapshot data theft via hypervisor access or storage side-channel."""
21
+ import json
22
+ import sys
23
+ from datetime import datetime, timezone
24
+ from pathlib import Path
25
+
26
+ print(f"[*] {MANIFEST['capability_id']} starting...")
27
+ print(f"[*] Target: {getattr(args, 'target', 'N/A')}")
28
+
29
+ findings: list[dict] = []
30
+
31
+ # --- Module logic placeholder ---
32
+ # TODO: implement provider-specific API calls
33
+ print("[!] Module stub — implement provider-specific logic")
34
+
35
+ ts = datetime.now(timezone.utc).strftime("%Y%m%d_%H%M%S")
36
+ out_dir = Path(getattr(args, "output", "."))
37
+ out_dir.mkdir(parents=True, exist_ok=True)
38
+ out_file = out_dir / f"{MANIFEST['capability_id'].rsplit('.', 1)[-1]}_{ts}.json"
39
+ out_file.write_text(json.dumps({"module": MANIFEST["capability_id"], "timestamp": ts, "findings": findings}, indent=2))
40
+ print(f"[+] Results saved to {out_file}")
41
+ return 0
@@ -0,0 +1,41 @@
1
+ """CloudXPL-Forge module: Virtual TPM key extraction from hypervisor memory or snapshot"""
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Any
6
+
7
+
8
+ MANIFEST = {
9
+ "capability_id": "cloudxpl.virt.virt_vtpm_extract.v1",
10
+ "safety_class": "EXPLOIT",
11
+ "requires_authorization": True,
12
+ "side_effects": ["api_calls", "state_change"],
13
+ "output_schema": "xpl.finding.v1",
14
+ "mitre": ['T1552', 'T1005'],
15
+ "references": ["vTPM-extraction"],
16
+ }
17
+
18
+
19
+ def run(args: Any) -> int:
20
+ """Execute Virtual TPM key extraction from hypervisor memory or snapshot."""
21
+ import json
22
+ import sys
23
+ from datetime import datetime, timezone
24
+ from pathlib import Path
25
+
26
+ print(f"[*] {MANIFEST['capability_id']} starting...")
27
+ print(f"[*] Target: {getattr(args, 'target', 'N/A')}")
28
+
29
+ findings: list[dict] = []
30
+
31
+ # --- Module logic placeholder ---
32
+ # TODO: implement provider-specific API calls
33
+ print("[!] Module stub — implement provider-specific logic")
34
+
35
+ ts = datetime.now(timezone.utc).strftime("%Y%m%d_%H%M%S")
36
+ out_dir = Path(getattr(args, "output", "."))
37
+ out_dir.mkdir(parents=True, exist_ok=True)
38
+ out_file = out_dir / f"{MANIFEST['capability_id'].rsplit('.', 1)[-1]}_{ts}.json"
39
+ out_file.write_text(json.dumps({"module": MANIFEST["capability_id"], "timestamp": ts, "findings": findings}, indent=2))
40
+ print(f"[+] Results saved to {out_file}")
41
+ return 0
@@ -0,0 +1,29 @@
1
+ """CloudXPL-Forge — VMware API Enumeration."""
2
+
3
+ from __future__ import annotations
4
+
5
+ MANIFEST: dict = {
6
+ "name": "VMware API Enumeration",
7
+ "mitre": ["T1592"],
8
+ "description": "Enumerates VMware vSphere/vCenter REST and SOAP APIs for exposed endpoints, versions, and misconfigurations.",
9
+ "references": ["https://github.com/Bhanunamikaze/VMwareAPIPentest"],
10
+ }
11
+
12
+
13
+ import sys
14
+
15
+
16
+ def run(args):
17
+ target = getattr(args, "target", None)
18
+ verbose = getattr(args, "verbose", False)
19
+ output = getattr(args, "output", ".")
20
+
21
+ print(f"[*] {MANIFEST['name']}")
22
+ if not target:
23
+ print("[!] --target required", file=sys.stderr)
24
+ return 1
25
+
26
+ print(f"[*] Target: {target}")
27
+ # TODO: implement exploit/scanner logic
28
+ print("[!] Module stub — implement exploit logic")
29
+ return 0
@@ -0,0 +1,33 @@
1
+ """CloudXPL-Forge — VMware VM Enumeration (Metasploit Bridge)."""
2
+
3
+ from __future__ import annotations
4
+
5
+ MANIFEST: dict = {
6
+ "name": "VMware VM Enumeration (Metasploit Bridge)",
7
+ "mitre": ["T1018"],
8
+ "description": "Bridge to Metasploit auxiliary/scanner/vmware/vmware_enum_vms for listing VMs on ESXi/vCenter.",
9
+ "references": ["https://www.rapid7.com/db/modules/auxiliary/scanner/vmware/vmware_enum_vms/"],
10
+ }
11
+
12
+
13
+ import shutil
14
+ import subprocess
15
+ import sys
16
+
17
+
18
+ def run(args):
19
+ msfconsole = shutil.which("msfconsole")
20
+ if not msfconsole:
21
+ print("[!] msfconsole not found — install Metasploit Framework", file=sys.stderr)
22
+ return 1
23
+
24
+ target = getattr(args, "target", None) or getattr(args, "vcenter_host", "") or ""
25
+ cmd = [
26
+ msfconsole, "-q", "-x",
27
+ f"use auxiliary/scanner/vmware/vmware_enum_vms; "
28
+ + (f"set RHOSTS {target}; " if target else "")
29
+ + "run; exit",
30
+ ]
31
+ if getattr(args, "verbose", False):
32
+ print(f"[*] Running: {' '.join(cmd)}")
33
+ return subprocess.call(cmd)
@@ -0,0 +1,33 @@
1
+ """CloudXPL-Forge — VMware Exploitation Collection (Bridge)."""
2
+
3
+ from __future__ import annotations
4
+
5
+ MANIFEST: dict = {
6
+ "name": "VMware Exploitation Collection (Bridge)",
7
+ "mitre": ["T1611"],
8
+ "description": "Bridge to xairy/vmware-exploitation — curated VMware escape links, PoCs and research.",
9
+ "references": ["https://github.com/xairy/vmware-exploitation"],
10
+ }
11
+
12
+
13
+ import os
14
+ import subprocess
15
+ import sys
16
+
17
+ REPO = "xairy/vmware-exploitation"
18
+ REPO_URL = f"https://github.com/{REPO}.git"
19
+
20
+
21
+ def run(args):
22
+ clone_dir = os.path.join(getattr(args, "output", "."), REPO.split("/")[-1])
23
+ if os.path.isdir(clone_dir):
24
+ print(f"[*] Repository already cloned at {clone_dir}")
25
+ else:
26
+ print(f"[*] Cloning {REPO_URL} -> {clone_dir}")
27
+ ret = subprocess.call(["git", "clone", "--depth", "1", REPO_URL, clone_dir])
28
+ if ret != 0:
29
+ print(f"[!] Clone failed (rc={ret})", file=sys.stderr)
30
+ return ret
31
+ print(f"[+] Repository ready at {clone_dir}")
32
+ print("[*] Inspect contents before execution per security policy")
33
+ return 0