devsecops-engine-tools 1.32.5__tar.gz → 1.33.1__tar.gz

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.

Potentially problematic release.


This version of devsecops-engine-tools might be problematic. Click here for more details.

Files changed (360) hide show
  1. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/PKG-INFO +8 -2
  2. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/applications/runner_engine_core.py +8 -1
  3. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/domain/usecases/handle_scan.py +13 -2
  4. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/defect_dojo/defect_dojo.py +2 -1
  5. devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/applications/runner_dast_scan.py +100 -0
  6. devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/domain/model/api_config.py +13 -0
  7. devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/domain/model/api_operation.py +13 -0
  8. devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/domain/model/gateways/authentication_gateway.py +7 -0
  9. devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/domain/model/gateways/tool_gateway.py +9 -0
  10. devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/domain/model/wa_config.py +10 -0
  11. devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/domain/usecases/dast_scan.py +128 -0
  12. devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/http/client/auth_client.py +12 -0
  13. devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/jwt/jwt_object.py +64 -0
  14. devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/jwt/jwt_tool.py +153 -0
  15. devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/nuclei/nuclei_config.py +69 -0
  16. devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/nuclei/nuclei_deserealizer.py +39 -0
  17. devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/nuclei/nuclei_tool.py +145 -0
  18. devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/oauth/generic_oauth.py +70 -0
  19. devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/infrastructure/entry_points/entry_point_dast.py +15 -0
  20. devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/infrastructure/helpers/file_generator_tool.py +61 -0
  21. devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/infrastructure/helpers/json_handler.py +13 -0
  22. devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/driven_adapters/__init__.py +0 -0
  23. devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/driven_adapters/sonarqube/__init__.py +0 -0
  24. devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/entry_points/__init__.py +0 -0
  25. devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/helpers/__init__.py +0 -0
  26. devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/ssh/__init__.py +0 -0
  27. devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/utils/__init__.py +0 -0
  28. devsecops_engine_tools-1.33.1/devsecops_engine_tools/version.py +1 -0
  29. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools.egg-info/PKG-INFO +8 -2
  30. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools.egg-info/SOURCES.txt +23 -0
  31. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools.egg-info/requires.txt +3 -0
  32. devsecops_engine_tools-1.32.5/devsecops_engine_tools/version.py +0 -1
  33. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/README.md +0 -0
  34. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/__init__.py +0 -0
  35. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/__init__.py +0 -0
  36. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/__init__.py +0 -0
  37. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/applications/__init__.py +0 -0
  38. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/deployment/__init__.py +0 -0
  39. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/deployment/infrastructure/__init__.py +0 -0
  40. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/domain/__init__.py +0 -0
  41. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/domain/model/__init__.py +0 -0
  42. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/domain/model/component.py +0 -0
  43. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/domain/model/customs_exceptions.py +0 -0
  44. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/domain/model/exclusions.py +0 -0
  45. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/domain/model/finding.py +0 -0
  46. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/domain/model/gateway/__init__.py +0 -0
  47. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/domain/model/gateway/devops_platform_gateway.py +0 -0
  48. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/domain/model/gateway/metrics_manager_gateway.py +0 -0
  49. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/domain/model/gateway/printer_table_gateway.py +0 -0
  50. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/domain/model/gateway/sbom_manager.py +0 -0
  51. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/domain/model/gateway/secrets_manager_gateway.py +0 -0
  52. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/domain/model/gateway/vulnerability_management_gateway.py +0 -0
  53. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/domain/model/input_core.py +0 -0
  54. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/domain/model/level_compliance.py +0 -0
  55. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/domain/model/level_vulnerability.py +0 -0
  56. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/domain/model/report.py +0 -0
  57. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/domain/model/threshold.py +0 -0
  58. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/domain/model/vulnerability_management.py +0 -0
  59. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/domain/usecases/__init__.py +0 -0
  60. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/domain/usecases/break_build.py +0 -0
  61. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/domain/usecases/handle_risk.py +0 -0
  62. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/domain/usecases/metrics_manager.py +0 -0
  63. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/infrastructure/__init__.py +0 -0
  64. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/__init__.py +0 -0
  65. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/aws/__init__.py +0 -0
  66. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/aws/s3_manager.py +0 -0
  67. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/aws/secrets_manager.py +0 -0
  68. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/azure/__init__.py +0 -0
  69. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/azure/azure_devops.py +0 -0
  70. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/defect_dojo/__init__.py +0 -0
  71. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/github/__init__.py +0 -0
  72. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/github/github_actions.py +0 -0
  73. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/printer_pretty_table/__init__.py +0 -0
  74. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/printer_pretty_table/printer_pretty_table.py +0 -0
  75. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/printer_rich_table/__init__.py +0 -0
  76. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/printer_rich_table/printer_rich_table.py +0 -0
  77. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/runtime_local/__init__.py +0 -0
  78. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/runtime_local/runtime_local.py +0 -0
  79. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/syft/__init__.py +0 -0
  80. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/syft/syft.py +0 -0
  81. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/infrastructure/entry_points/__init__.py +0 -0
  82. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/infrastructure/entry_points/entry_point_core.py +0 -0
  83. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/infrastructure/helpers/__init__.py +0 -0
  84. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/infrastructure/helpers/aws.py +0 -0
  85. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_core/src/infrastructure/helpers/util.py +0 -0
  86. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_dast/__init__.py +0 -0
  87. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_dast/src/__init__.py +0 -0
  88. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_dast/src/applications/__init__.py +0 -0
  89. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_dast/src/deployment/__init__.py +0 -0
  90. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_dast/src/deployment/infrastructure/__init__.py +0 -0
  91. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_dast/src/domain/__init__.py +0 -0
  92. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_dast/src/domain/model/__init__.py +0 -0
  93. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_dast/src/domain/usecases → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/domain/model/gateways}/__init__.py +0 -0
  94. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_dast/src/infrastructure → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/domain/usecases}/__init__.py +0 -0
  95. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/infrastructure}/__init__.py +0 -0
  96. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_dast/src/infrastructure/entry_points → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters}/__init__.py +0 -0
  97. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_dast/src/infrastructure/helpers → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/http}/__init__.py +0 -0
  98. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_risk → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/http/client}/__init__.py +0 -0
  99. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_risk/src → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/jwt}/__init__.py +0 -0
  100. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_risk/src/applications → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/nuclei}/__init__.py +0 -0
  101. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_risk/src/deployment → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/oauth}/__init__.py +0 -0
  102. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_risk/src/deployment/infrastructure → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/infrastructure/entry_points}/__init__.py +0 -0
  103. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_risk/src/domain → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_dast/src/infrastructure/helpers}/__init__.py +0 -0
  104. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_risk/src/domain/model → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_risk}/__init__.py +0 -0
  105. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_risk/src/domain/model/gateways → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_risk/src}/__init__.py +0 -0
  106. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_risk/src/domain/usecases → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_risk/src/applications}/__init__.py +0 -0
  107. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_risk/src/applications/runner_engine_risk.py +0 -0
  108. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_risk/src/infrastructure → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_risk/src/deployment}/__init__.py +0 -0
  109. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_risk/src/infrastructure/driven_adapters → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_risk/src/deployment/infrastructure}/__init__.py +0 -0
  110. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_risk/src/infrastructure/driven_adapters/first_csv → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_risk/src/domain}/__init__.py +0 -0
  111. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_risk/src/infrastructure/entry_points → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_risk/src/domain/model}/__init__.py +0 -0
  112. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_risk/src/infrastructure/helpers → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_risk/src/domain/model/gateways}/__init__.py +0 -0
  113. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_risk/src/domain/model/gateways/add_epss_gateway.py +0 -0
  114. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_risk/src/domain/usecases}/__init__.py +0 -0
  115. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_risk/src/domain/usecases/add_data.py +0 -0
  116. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_risk/src/domain/usecases/break_build.py +0 -0
  117. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_risk/src/domain/usecases/check_threshold.py +0 -0
  118. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_risk/src/domain/usecases/get_exclusions.py +0 -0
  119. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_risk/src/domain/usecases/handle_filters.py +0 -0
  120. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_code → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_risk/src/infrastructure}/__init__.py +0 -0
  121. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_code/src → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_risk/src/infrastructure/driven_adapters}/__init__.py +0 -0
  122. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_code/src/applications → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_risk/src/infrastructure/driven_adapters/first_csv}/__init__.py +0 -0
  123. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_risk/src/infrastructure/driven_adapters/first_csv/first_epss_csv.py +0 -0
  124. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_code/src/deployment → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_risk/src/infrastructure/entry_points}/__init__.py +0 -0
  125. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_risk/src/infrastructure/entry_points/entry_point_risk.py +0 -0
  126. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_code/src/deployment/infrastructure → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_risk/src/infrastructure/helpers}/__init__.py +0 -0
  127. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_code/src/domain → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast}/__init__.py +0 -0
  128. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_code/src/domain/model → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_code}/__init__.py +0 -0
  129. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_code/src/domain/model/gateways → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_code/src}/__init__.py +0 -0
  130. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_code/src/domain/usecases → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_code/src/applications}/__init__.py +0 -0
  131. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_code/src/applications/runner_engine_code.py +0 -0
  132. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_code/src/deployment}/__init__.py +0 -0
  133. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/driven_adapters → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_code/src/deployment/infrastructure}/__init__.py +0 -0
  134. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/driven_adapters/bearer → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_code/src/domain}/__init__.py +0 -0
  135. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/entry_points → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_code/src/domain/model}/__init__.py +0 -0
  136. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_code/src/domain/model/config_tool.py +0 -0
  137. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/helpers → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_code/src/domain/model/gateways}/__init__.py +0 -0
  138. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_code/src/domain/model/gateways/tool_gateway.py +0 -0
  139. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_iac → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_code/src/domain/usecases}/__init__.py +0 -0
  140. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_code/src/domain/usecases/code_scan.py +0 -0
  141. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_iac/src → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure}/__init__.py +0 -0
  142. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_iac/src/applications → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/driven_adapters}/__init__.py +0 -0
  143. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_iac/src/deployment → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/driven_adapters/bearer}/__init__.py +0 -0
  144. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/driven_adapters/bearer/bearer_deserealizator.py +0 -0
  145. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/driven_adapters/bearer/bearer_tool.py +0 -0
  146. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_iac/src/deployment/infrastructure → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/entry_points}/__init__.py +0 -0
  147. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/entry_points/entry_point_tool.py +0 -0
  148. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_iac/src/domain → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/helpers}/__init__.py +0 -0
  149. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_iac}/__init__.py +0 -0
  150. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/gateways → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_iac/src}/__init__.py +0 -0
  151. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_iac/src/domain/usecases → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_iac/src/applications}/__init__.py +0 -0
  152. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_iac/src/applications/runner_iac_scan.py +0 -0
  153. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_iac/src/deployment}/__init__.py +0 -0
  154. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_iac/src/deployment/infrastructure}/__init__.py +0 -0
  155. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_iac/src/domain}/__init__.py +0 -0
  156. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kics → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model}/__init__.py +0 -0
  157. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/config_tool.py +0 -0
  158. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kubescape → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/gateways}/__init__.py +0 -0
  159. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/gateways/tool_gateway.py +0 -0
  160. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/entry_points → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_iac/src/domain/usecases}/__init__.py +0 -0
  161. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_iac/src/domain/usecases/iac_scan.py +0 -0
  162. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/helpers → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure}/__init__.py +0 -0
  163. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_secret → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters}/__init__.py +0 -0
  164. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_secret/src → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov}/__init__.py +0 -0
  165. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov/checkov_config.py +0 -0
  166. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov/checkov_deserealizator.py +0 -0
  167. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov/checkov_tool.py +0 -0
  168. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_secret/src/applications → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kics}/__init__.py +0 -0
  169. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kics/kics_deserealizator.py +0 -0
  170. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kics/kics_tool.py +0 -0
  171. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_secret/src/deployment → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kubescape}/__init__.py +0 -0
  172. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kubescape/kubescape_deserealizator.py +0 -0
  173. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kubescape/kubescape_tool.py +0 -0
  174. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_secret/src/deployment/infrastructure → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/entry_points}/__init__.py +0 -0
  175. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/entry_points/entry_point_tool.py +0 -0
  176. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_secret/src/domain → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/helpers}/__init__.py +0 -0
  177. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/helpers/file_generator_tool.py +0 -0
  178. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_secret}/__init__.py +0 -0
  179. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/gateway → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_secret/src}/__init__.py +0 -0
  180. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_secret/src/domain/usecases → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_secret/src/applications}/__init__.py +0 -0
  181. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_secret/src/applications/runner_secret_scan.py +0 -0
  182. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_secret/src/deployment}/__init__.py +0 -0
  183. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_secret/src/deployment/infrastructure}/__init__.py +0 -0
  184. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/gitleaks → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_secret/src/domain}/__init__.py +0 -0
  185. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/trufflehog → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model}/__init__.py +0 -0
  186. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/entry_points → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/gateway}/__init__.py +0 -0
  187. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/gateway/gateway_deserealizator.py +0 -0
  188. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/gateway/tool_gateway.py +0 -0
  189. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_secret/src/domain/usecases}/__init__.py +0 -0
  190. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/usecases/secret_scan.py +0 -0
  191. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/usecases/set_input_core.py +0 -0
  192. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_container → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure}/__init__.py +0 -0
  193. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_container/src → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters}/__init__.py +0 -0
  194. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_container/src/applications → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/gitleaks}/__init__.py +0 -0
  195. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/gitleaks/gitleaks_deserealizator.py +0 -0
  196. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/gitleaks/gitleaks_tool.py +0 -0
  197. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_container/src/deployment → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/trufflehog}/__init__.py +0 -0
  198. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/trufflehog/trufflehog_deserealizator.py +0 -0
  199. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/trufflehog/trufflehog_run.py +0 -0
  200. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_container/src/deployment/infrastructure → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/entry_points}/__init__.py +0 -0
  201. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/entry_points/entry_point_tool.py +0 -0
  202. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_container/src/domain → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca}/__init__.py +0 -0
  203. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_container/src/domain/model → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_container}/__init__.py +0 -0
  204. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_container/src}/__init__.py +0 -0
  205. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_container/src/applications}/__init__.py +0 -0
  206. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sca/engine_container/src/applications/runner_container_scan.py +0 -0
  207. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_container/src/deployment}/__init__.py +0 -0
  208. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_container/src/deployment/infrastructure}/__init__.py +0 -0
  209. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/docker → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_container/src/domain}/__init__.py +0 -0
  210. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/prisma_cloud → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_container/src/domain/model}/__init__.py +0 -0
  211. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/trivy_tool → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways}/__init__.py +0 -0
  212. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways/deserealizator_gateway.py +0 -0
  213. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways/images_gateway.py +0 -0
  214. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways/tool_gateway.py +0 -0
  215. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/entry_points → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases}/__init__.py +0 -0
  216. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases/container_sca_scan.py +0 -0
  217. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases/handle_remote_config_patterns.py +0 -0
  218. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases/set_input_core.py +0 -0
  219. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/helpers → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure}/__init__.py +0 -0
  220. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_dependencies → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters}/__init__.py +0 -0
  221. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_dependencies/src → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/docker}/__init__.py +0 -0
  222. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/docker/docker_images.py +0 -0
  223. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_dependencies/src/applications → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/prisma_cloud}/__init__.py +0 -0
  224. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/prisma_cloud/prisma_cloud_manager_scan.py +0 -0
  225. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/prisma_cloud/prisma_deserialize_output.py +0 -0
  226. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_dependencies/src/deployment → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/trivy_tool}/__init__.py +0 -0
  227. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/trivy_tool/trivy_deserialize_output.py +0 -0
  228. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/trivy_tool/trivy_manager_scan.py +0 -0
  229. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_dependencies/src/deployment/infrastructure → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/entry_points}/__init__.py +0 -0
  230. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/entry_points/entry_point_tool.py +0 -0
  231. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/helpers}/__init__.py +0 -0
  232. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_dependencies}/__init__.py +0 -0
  233. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/gateways → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_dependencies/src}/__init__.py +0 -0
  234. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_dependencies/src/applications}/__init__.py +0 -0
  235. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sca/engine_dependencies/src/applications/runner_dependencies_scan.py +0 -0
  236. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_dependencies/src/deployment}/__init__.py +0 -0
  237. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_dependencies/src/deployment/infrastructure}/__init__.py +0 -0
  238. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/dependency_check → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain}/__init__.py +0 -0
  239. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model}/__init__.py +0 -0
  240. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/entry_points → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/gateways}/__init__.py +0 -0
  241. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/gateways/deserializator_gateway.py +0 -0
  242. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/gateways/tool_gateway.py +0 -0
  243. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/helpers → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases}/__init__.py +0 -0
  244. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases/dependencies_sca_scan.py +0 -0
  245. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases/handle_remote_config_patterns.py +0 -0
  246. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases/set_input_core.py +0 -0
  247. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure}/__init__.py +0 -0
  248. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/azuredevops → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters}/__init__.py +0 -0
  249. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/azuredevops/infrastructure → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/dependency_check}/__init__.py +0 -0
  250. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/dependency_check/dependency_check_deserialize.py +0 -0
  251. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/dependency_check/dependency_check_tool.py +0 -0
  252. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/azuredevops/models → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool}/__init__.py +0 -0
  253. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool/xray_deserialize_output.py +0 -0
  254. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool/xray_manager_scan.py +0 -0
  255. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/defect_dojo/applications → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/entry_points}/__init__.py +0 -0
  256. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/entry_points/entry_point_tool.py +0 -0
  257. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/defect_dojo/domain → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/helpers}/__init__.py +0 -0
  258. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/helpers/get_artifacts.py +0 -0
  259. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities}/__init__.py +0 -0
  260. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/azuredevops}/__init__.py +0 -0
  261. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/azuredevops/infrastructure}/__init__.py +0 -0
  262. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/azuredevops/infrastructure/azure_devops_api.py +0 -0
  263. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/azuredevops/models/AzureMessageLoggingPipeline.py +0 -0
  264. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/azuredevops/models/AzurePredefinedVariables.py +0 -0
  265. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/azuredevops/models}/__init__.py +0 -0
  266. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/__init__.py +0 -0
  267. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/defect_dojo/applications}/__init__.py +0 -0
  268. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/component.py +0 -0
  269. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/connect.py +0 -0
  270. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/defect_dojo.py +0 -0
  271. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/engagement.py +0 -0
  272. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/finding.py +0 -0
  273. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/finding_exclusion.py +0 -0
  274. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/product.py +0 -0
  275. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/defect_dojo/domain}/__init__.py +0 -0
  276. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/settings → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models}/__init__.py +0 -0
  277. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/cmdb.py +0 -0
  278. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/component.py +0 -0
  279. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/engagement.py +0 -0
  280. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/finding.py +0 -0
  281. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/finding_exclusion.py +0 -0
  282. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/product.py +0 -0
  283. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/product_list.py +0 -0
  284. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/product_type.py +0 -0
  285. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/product_type_list.py +0 -0
  286. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/scan_configuration.py +0 -0
  287. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/repository → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects}/__init__.py +0 -0
  288. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects/finding.py +0 -0
  289. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects/import_scan.py +0 -0
  290. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/git_cli → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers}/__init__.py +0 -0
  291. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers/finding.py +0 -0
  292. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers/import_scan.py +0 -0
  293. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/git_cli/infrastructure → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case}/__init__.py +0 -0
  294. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/cmdb.py +0 -0
  295. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/component.py +0 -0
  296. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/engagement.py +0 -0
  297. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/finding.py +0 -0
  298. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/finding_exclusion.py +0 -0
  299. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/import_scan.py +0 -0
  300. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/product.py +0 -0
  301. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/hello_world.py +0 -0
  302. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/git_cli/model → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure}/__init__.py +0 -0
  303. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/git_cli/model/gateway → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters}/__init__.py +0 -0
  304. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/cmdb.py +0 -0
  305. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/component.py +0 -0
  306. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/engagement.py +0 -0
  307. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/finding.py +0 -0
  308. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/finding_exclusion.py +0 -0
  309. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/import_scan.py +0 -0
  310. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/product.py +0 -0
  311. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/product_type.py +0 -0
  312. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/scan_configurations.py +0 -0
  313. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/github → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/settings}/__init__.py +0 -0
  314. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/settings/settings.py +0 -0
  315. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/github/infrastructure → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/repository}/__init__.py +0 -0
  316. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/github/models → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/git_cli}/__init__.py +0 -0
  317. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/input_validations → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/git_cli/infrastructure}/__init__.py +0 -0
  318. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/git_cli/infrastructure/git_run.py +0 -0
  319. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/sbom → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/git_cli/model}/__init__.py +0 -0
  320. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/sonarqube → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/git_cli/model/gateway}/__init__.py +0 -0
  321. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/git_cli/model/gateway/git_gateway.py +0 -0
  322. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/sonarqube/src → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/github}/__init__.py +0 -0
  323. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/sonarqube/src/applications → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/github/infrastructure}/__init__.py +0 -0
  324. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/github/infrastructure/github_api.py +0 -0
  325. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/github/models/GithubPredefinedVariables.py +0 -0
  326. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/sonarqube/src/domain → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/github/models}/__init__.py +0 -0
  327. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/model → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/input_validations}/__init__.py +0 -0
  328. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/input_validations/env_utils.py +0 -0
  329. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/input_validations/validate_input_with_regex_letters_number_and_only.py +0 -0
  330. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/model/gateways → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/sbom}/__init__.py +0 -0
  331. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/sbom/deserealizator.py +0 -0
  332. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/settings.py +0 -0
  333. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/usecases → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/sonarqube}/__init__.py +0 -0
  334. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/sonarqube/src}/__init__.py +0 -0
  335. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/driven_adapters → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/sonarqube/src/applications}/__init__.py +0 -0
  336. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/sonarqube/src/applications/runner_report_sonar.py +0 -0
  337. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/driven_adapters/sonarqube → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/sonarqube/src/domain}/__init__.py +0 -0
  338. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/entry_points → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/model}/__init__.py +0 -0
  339. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/helpers → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/model/gateways}/__init__.py +0 -0
  340. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/model/gateways/sonar_gateway.py +0 -0
  341. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/ssh → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/usecases}/__init__.py +0 -0
  342. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/usecases/report_sonar.py +0 -0
  343. {devsecops_engine_tools-1.32.5/devsecops_engine_tools/engine_utilities/utils → devsecops_engine_tools-1.33.1/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure}/__init__.py +0 -0
  344. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/driven_adapters/sonarqube/sonarqube_report.py +0 -0
  345. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/entry_points/entry_point_report_sonar.py +0 -0
  346. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/helpers/utils.py +0 -0
  347. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/ssh/managment_private_key.py +0 -0
  348. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/utils/api_error.py +0 -0
  349. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/utils/dataclass_classmethod.py +0 -0
  350. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/utils/datetime_parsing.py +0 -0
  351. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/utils/logger_info.py +0 -0
  352. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/utils/name_conversion.py +0 -0
  353. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/utils/printers.py +0 -0
  354. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/utils/session_manager.py +0 -0
  355. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools/engine_utilities/utils/utils.py +0 -0
  356. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools.egg-info/dependency_links.txt +0 -0
  357. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools.egg-info/entry_points.txt +0 -0
  358. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/devsecops_engine_tools.egg-info/top_level.txt +0 -0
  359. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/setup.cfg +0 -0
  360. {devsecops_engine_tools-1.32.5 → devsecops_engine_tools-1.33.1}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: devsecops-engine-tools
3
- Version: 1.32.5
3
+ Version: 1.33.1
4
4
  Summary: Tool for DevSecOps strategy
5
5
  Home-page: https://github.com/bancolombia/devsecops-engine-tools
6
6
  Author: Bancolombia DevSecOps Team
@@ -28,6 +28,9 @@ Requires-Dist: setuptools==72.1.0
28
28
  Requires-Dist: rich==13.9.4
29
29
  Requires-Dist: cpe==1.3.1
30
30
  Requires-Dist: packageurl-python==0.15.6
31
+ Requires-Dist: ruamel.yaml==0.18.6
32
+ Requires-Dist: Authlib==1.3.2
33
+ Requires-Dist: PyJWT==2.9.0
31
34
 
32
35
  # DevSecOps Engine Tools
33
36
 
@@ -71,7 +74,7 @@ pip3 install devsecops-engine-tools
71
74
  ### Scan running - flags (CLI)
72
75
 
73
76
  ```bash
74
- devsecops-engine-tools --platform_devops ["local","azure","github"] --remote_config_repo ["remote_config_repo"] --remote_config_branch ["remote_config_branch"] --tool ["engine_iac", "engine_dast", "engine_secret", "engine_dependencies", "engine_container", "engine_risk", "engine_code"] --folder_path ["Folder path scan engine_iac, engine_code, engine_dependencies and engine_secret"] --platform ["k8s","cloudformation","docker", "openapi", "terraform"] --use_secrets_manager ["false", "true"] --use_vulnerability_management ["false", "true"] --send_metrics ["false", "true"] --token_cmdb ["token_cmdb"] --token_vulnerability_management ["token_vulnerability_management"] --token_engine_container ["token_engine_container"] --token_engine_dependencies ["token_engine_dependencies"] --token_external_checks ["token_external_checks"] --xray_mode ["scan", "audit"] --image_to_scan ["image_to_scan"]
77
+ devsecops-engine-tools --platform_devops ["local","azure","github"] --remote_config_repo ["remote_config_repo"] --remote_config_branch ["remote_config_branch"] --tool ["engine_iac", "engine_dast", "engine_secret", "engine_dependencies", "engine_container", "engine_risk", "engine_code"] --folder_path ["Folder path scan engine_iac, engine_code, engine_dependencies and engine_secret"] --platform ["k8s","cloudformation","docker", "openapi", "terraform"] --use_secrets_manager ["false", "true"] --use_vulnerability_management ["false", "true"] --send_metrics ["false", "true"] --token_cmdb ["token_cmdb"] --token_vulnerability_management ["token_vulnerability_management"] --token_engine_container ["token_engine_container"] --token_engine_dependencies ["token_engine_dependencies"] --token_external_checks ["token_external_checks"] --xray_mode ["scan", "audit"] --image_to_scan ["image_to_scan"] --dast_file_path ["dast_file_path"]
75
78
  ```
76
79
 
77
80
  ### Structure Remote Config
@@ -83,6 +86,9 @@ devsecops-engine-tools --platform_devops ["local","azure","github"] --remote_con
83
86
  ┣ 📂engine_risk
84
87
  ┃ ┗ 📜ConfigTool.json
85
88
  ┃ ┗ 📜Exclusions.json
89
+ ┣ 📂engine_dast
90
+ ┃ ┗ 📜ConfigTool.json
91
+ ┃ ┗ 📜Exclusions.json
86
92
  ┣ 📂engine_sast
87
93
  ┃ ┗ 📂engine_iac
88
94
  ┃ ┗ 📜ConfigTool.json
@@ -170,6 +170,12 @@ def get_inputs_from_cli(args):
170
170
  required=False,
171
171
  help="Name of image to scan for engine_container",
172
172
  )
173
+ parser.add_argument(
174
+ "--dast_file_path",
175
+ required=False,
176
+ help="File path containing the configuration, structured according to the documentation, \
177
+ for the API or web application to be scanned by the DAST tool."
178
+ )
173
179
  args = parser.parse_args()
174
180
  return {
175
181
  "platform_devops": args.platform_devops,
@@ -187,7 +193,8 @@ def get_inputs_from_cli(args):
187
193
  "token_engine_dependencies": args.token_engine_dependencies,
188
194
  "token_external_checks": args.token_external_checks,
189
195
  "xray_mode": args.xray_mode,
190
- "image_to_scan": args.image_to_scan
196
+ "image_to_scan": args.image_to_scan,
197
+ "dast_file_path": args.dast_file_path
191
198
  }
192
199
 
193
200
 
@@ -36,10 +36,12 @@ from devsecops_engine_tools.engine_sca.engine_container.src.applications.runner_
36
36
  from devsecops_engine_tools.engine_sca.engine_dependencies.src.applications.runner_dependencies_scan import (
37
37
  runner_engine_dependencies,
38
38
  )
39
+ from devsecops_engine_tools.engine_dast.src.applications.runner_dast_scan import (
40
+ runner_engine_dast
41
+ )
39
42
  from devsecops_engine_tools.engine_core.src.infrastructure.helpers.util import (
40
43
  define_env,
41
44
  )
42
-
43
45
  from devsecops_engine_tools.engine_utilities.utils.logger_info import MyLogger
44
46
  from devsecops_engine_tools.engine_utilities import settings
45
47
 
@@ -98,7 +100,16 @@ class HandleScan:
98
100
  )
99
101
  return findings_list, input_core
100
102
  elif "engine_dast" in dict_args["tool"]:
101
- print(MESSAGE_ENABLED)
103
+ findings_list, input_core = runner_engine_dast(
104
+ dict_args,
105
+ config_tool["ENGINE_DAST"],
106
+ secret_tool,
107
+ self.devops_platform_gateway
108
+ )
109
+ self._use_vulnerability_management(
110
+ config_tool, input_core, dict_args, secret_tool, env
111
+ )
112
+ return findings_list, input_core
102
113
  elif "engine_code" in dict_args["tool"]:
103
114
  findings_list, input_core = runner_engine_code(
104
115
  dict_args,
@@ -82,7 +82,8 @@ class DefectDojoPlatform(VulnerabilityManagementGateway):
82
82
  "BEARER": "Bearer CLI",
83
83
  "DEPENDENCY_CHECK": "Dependency Check Scan",
84
84
  "SONARQUBE": "SonarQube API Import",
85
- "GITLEAKS": "Gitleaks Scan"
85
+ "GITLEAKS": "Gitleaks Scan",
86
+ "NUCLEI": "Nuclei Scan"
86
87
  }
87
88
 
88
89
  if any(
@@ -0,0 +1,100 @@
1
+ from typing import List
2
+ from devsecops_engine_tools.engine_dast.src.infrastructure.entry_points.entry_point_dast import (
3
+ init_engine_dast,
4
+ )
5
+ from devsecops_engine_tools.engine_dast.src.infrastructure.driven_adapters.nuclei.nuclei_tool import (
6
+ NucleiTool,
7
+ )
8
+ from devsecops_engine_tools.engine_dast.src.infrastructure.driven_adapters.jwt.jwt_object import (
9
+ JwtObject,
10
+ )
11
+ from devsecops_engine_tools.engine_dast.src.infrastructure.driven_adapters.jwt.jwt_tool import (
12
+ JwtTool,
13
+ )
14
+ from devsecops_engine_tools.engine_dast.src.infrastructure.driven_adapters.oauth.generic_oauth import (
15
+ GenericOauth,
16
+ )
17
+ from devsecops_engine_tools.engine_dast.src.infrastructure.driven_adapters.http.client.auth_client import (
18
+ AuthClientCredential,
19
+ )
20
+ from devsecops_engine_tools.engine_dast.src.domain.model.api_config import (
21
+ ApiConfig
22
+ )
23
+ from devsecops_engine_tools.engine_dast.src.domain.model.api_operation import (
24
+ ApiOperation
25
+ )
26
+ from devsecops_engine_tools.engine_dast.src.domain.model.wa_config import (
27
+ WaConfig
28
+ )
29
+ from devsecops_engine_tools.engine_dast.src.infrastructure.helpers.json_handler import (
30
+ load_json_file
31
+ )
32
+
33
+ def runner_engine_dast(dict_args, config_tool, secret_tool, devops_platform_gateway):
34
+ if config_tool["TOOL"].lower() == "nuclei": # tool_gateway is the main Tool
35
+ tool_run = NucleiTool()
36
+ extra_tools = []
37
+ target_config = None
38
+
39
+ # Filling operations list with adapters
40
+ data = load_json_file(dict_args["dast_file_path"])
41
+
42
+ try:
43
+ if "operations" in data: # Api
44
+ operations: List = []
45
+ for elem in data["operations"]:
46
+ security_type = elem["operation"]["security_auth"]["type"].lower()
47
+ if security_type == "jwt":
48
+ operations.append(
49
+ ApiOperation(
50
+ elem,
51
+ JwtObject(
52
+ elem["operation"]["security_auth"]
53
+ )
54
+ )
55
+ )
56
+ elif security_type == "oauth":
57
+ operations.append(
58
+ ApiOperation(
59
+ elem,
60
+ GenericOauth(
61
+ elem["operation"]["security_auth"],
62
+ data["endpoint"]
63
+ )
64
+ )
65
+ )
66
+ else:
67
+ operations.append(
68
+ ApiOperation(
69
+ elem,
70
+ AuthClientCredential(
71
+ elem["operation"]["security_auth"]
72
+ )
73
+ )
74
+ )
75
+ data["operations"] = operations
76
+ target_config = ApiConfig(data)
77
+ elif "WA" in data: # Web Application
78
+ if data["data"].get["security_auth"] == "oauth":
79
+ authentication_gateway = GenericOauth(
80
+ data["data"]["security_auth"]
81
+ )
82
+ target_config = WaConfig(data, authentication_gateway)
83
+ else:
84
+ raise ValueError("Can't match if the target type is an api or a web application")
85
+
86
+ if any((k.lower() == "jwt") for k in config_tool["EXTRA_TOOLS"]) and any(isinstance(operation.authentication_gateway, JwtObject) for operation in data["operations"] ):
87
+ extra_tools.append(JwtTool(target_config))
88
+
89
+ return init_engine_dast(
90
+ devops_platform_gateway=devops_platform_gateway,
91
+ tool_gateway=tool_run,
92
+ dict_args=dict_args,
93
+ secret_tool=secret_tool,
94
+ config_tool=config_tool,
95
+ extra_tools=extra_tools,
96
+ target_data=target_config
97
+ )
98
+ except Exception as e:
99
+ raise Exception(f"Error engine_dast: {e}")
100
+
@@ -0,0 +1,13 @@
1
+ from typing import List
2
+ from devsecops_engine_tools.engine_dast.src.domain.model.api_operation import ApiOperation
3
+
4
+
5
+ class ApiConfig():
6
+ def __init__(self, api_data: dict):
7
+ try:
8
+ self.target_type: str = "API"
9
+ self.endpoint: str = api_data["endpoint"]
10
+ self.rate_limit: str = api_data.get("rate_limit")
11
+ self.operations: "List[ApiOperation]" = api_data["operations"]
12
+ except KeyError:
13
+ raise KeyError("Missing configuration, validate the endpoint and every single operation")
@@ -0,0 +1,13 @@
1
+ from devsecops_engine_tools.engine_dast.src.domain.model.gateways.authentication_gateway import (
2
+ AuthenticationGateway
3
+ )
4
+ class ApiOperation():
5
+ def __init__(self, operation, authentication_gateway):
6
+ self.authentication_gateway: AuthenticationGateway = authentication_gateway
7
+ self.data: dict = operation
8
+ self.credentials = ("auth_header", "token")
9
+
10
+ def authenticate(self):
11
+ self.credentials = self.authentication_gateway.get_credentials()
12
+ if self.credentials is not None:
13
+ self.data["operation"]["headers"][f'{self.credentials[0]}'] = f'{self.credentials[1]}'
@@ -0,0 +1,7 @@
1
+ from abc import ABCMeta, abstractmethod
2
+
3
+
4
+ class AuthenticationGateway(metaclass=ABCMeta):
5
+ @abstractmethod
6
+ def get_credentials(self) -> dict:
7
+ "get_credentials"
@@ -0,0 +1,9 @@
1
+ from abc import ABCMeta, abstractmethod
2
+
3
+
4
+ class ToolGateway(metaclass=ABCMeta):
5
+ @abstractmethod
6
+ def run_tool(
7
+ self, target_data, config_tool, secret_tool, secret_external_checks, agent_work_folder
8
+ ) -> str:
9
+ "run_tool"
@@ -0,0 +1,10 @@
1
+ class WaConfig:
2
+ def __init__(self, data: dict, authentication_gateway):
3
+ self.target_type: str = "WA"
4
+ self.url: str = data["endpoint"]
5
+ self.data: dict = data.wa_data
6
+
7
+ def authenticate(self):
8
+ self.credentials = self.authentication_gateway.get_credentials()
9
+ if self.credentials is not None:
10
+ self.data["headers"][self.credentials[0]] = self.credentials[1]
@@ -0,0 +1,128 @@
1
+ from typing import (
2
+ List, Tuple, Any
3
+ )
4
+ from devsecops_engine_tools.engine_dast.src.domain.model.gateways.tool_gateway import (
5
+ ToolGateway,
6
+ )
7
+ from devsecops_engine_tools.engine_core.src.domain.model.gateway.devops_platform_gateway import (
8
+ DevopsPlatformGateway,
9
+ )
10
+ from devsecops_engine_tools.engine_core.src.domain.model.input_core import (
11
+ InputCore,
12
+ )
13
+ from devsecops_engine_tools.engine_core.src.domain.model.exclusions import (
14
+ Exclusions,
15
+ )
16
+ from devsecops_engine_tools.engine_core.src.domain.model.threshold import Threshold
17
+
18
+ class DastScan:
19
+ def __init__(
20
+ self,
21
+ tool_gateway: ToolGateway,
22
+ devops_platform_gateway: DevopsPlatformGateway,
23
+ data_target,
24
+ aditional_tools: "List[ToolGateway]"
25
+ ):
26
+ self.tool_gateway = tool_gateway
27
+ self.devops_platform_gateway = devops_platform_gateway
28
+ self.data_target = data_target
29
+ self.other_tools = aditional_tools
30
+
31
+ def complete_config_tool(
32
+ self, data_file_tool, exclusions, tool
33
+ ) -> "Tuple[Any, Any]":
34
+
35
+ config_tool = data_file_tool
36
+
37
+ config_tool["SCOPE_PIPELINE"] = self.devops_platform_gateway.get_variable(
38
+ "pipeline_name"
39
+ )
40
+
41
+ config_tool["EXCLUSIONS"] = exclusions
42
+
43
+ config_exclusions = config_tool["EXCLUSIONS"]
44
+
45
+ if config_exclusions.get("All") is not None:
46
+ config_tool["EXCLUSIONS_ALL"] = config_exclusions.get("All").get(tool)
47
+ if config_exclusions.get(config_tool["SCOPE_PIPELINE"]) is not None:
48
+ config_tool["EXCLUSIONS_SCOPE"] = config_exclusions.get(
49
+ config_tool["SCOPE_PIPELINE"]
50
+ ).get(tool)
51
+
52
+ data_target_config = self.data_target
53
+ return config_tool, data_target_config
54
+
55
+ def process(
56
+ self, dict_args, secret_tool, config_tool
57
+ ) -> "Tuple[List, InputCore]":
58
+ init_config_tool = self.devops_platform_gateway.get_remote_config(
59
+ dict_args["remote_config_repo"], "engine_dast/ConfigTool.json"
60
+ )
61
+
62
+ exclusions = self.devops_platform_gateway.get_remote_config(
63
+ dict_args["remote_config_repo"],
64
+ "engine_dast/Exclusions.json"
65
+ )
66
+
67
+ agent_work_folder = self.devops_platform_gateway.get_variable("path_directory")
68
+
69
+ config_tool, data_target = self.complete_config_tool(
70
+ data_file_tool=init_config_tool,
71
+ exclusions=exclusions,
72
+ tool=config_tool["TOOL"],
73
+ )
74
+
75
+ finding_list, path_file_results = self.tool_gateway.run_tool(
76
+ target_data=data_target,
77
+ config_tool=config_tool,
78
+ secret_tool=secret_tool,
79
+ secret_external_checks=dict_args["token_external_checks"],
80
+ agent_work_folder=agent_work_folder
81
+ )
82
+
83
+ #Here execute other tools and append to finding list
84
+ if len(self.other_tools) > 0:
85
+ for i in range(len(self.other_tools)):
86
+ extra_config_tool, data_target = self.complete_config_tool(
87
+ data_file_tool=init_config_tool,
88
+ exclusions=exclusions,
89
+ tool=self.other_tools[i].TOOL
90
+ )
91
+ extra_finding_list = self.other_tools[i].run_tool(
92
+ target_data=data_target,
93
+ config_tool=extra_config_tool
94
+ )
95
+ if len(extra_finding_list) > 0:
96
+ finding_list.extend(extra_finding_list)
97
+
98
+ totalized_exclusions = []
99
+ (
100
+ totalized_exclusions.extend(
101
+ map(
102
+ lambda elem: Exclusions(**elem), config_tool.get("EXCLUSIONS_ALL")
103
+ )
104
+ )
105
+ if config_tool.get("EXCLUSIONS_ALL") is not None
106
+ else None
107
+ )
108
+ (
109
+ totalized_exclusions.extend(
110
+ map(
111
+ lambda elem: Exclusions(**elem),
112
+ config_tool.get("EXCLUSIONS_SCOPE"),
113
+ )
114
+ )
115
+ if config_tool.get("EXCLUSIONS_SCOPE") is not None
116
+ else None
117
+ )
118
+
119
+ input_core = InputCore(
120
+ totalized_exclusions=totalized_exclusions,
121
+ threshold_defined=Threshold(config_tool.get("THRESHOLD")),
122
+ path_file_results=path_file_results,
123
+ custom_message_break_build=config_tool.get("MESSAGE_INFO_DAST"),
124
+ scope_pipeline=config_tool.get("SCOPE_PIPELINE"),
125
+ stage_pipeline=self.devops_platform_gateway.get_variable("stage"),
126
+ )
127
+
128
+ return finding_list, input_core
@@ -0,0 +1,12 @@
1
+ from devsecops_engine_tools.engine_dast.src.domain.model.gateways.authentication_gateway import (
2
+ AuthenticationGateway,
3
+ )
4
+
5
+
6
+ class AuthClientCredential(AuthenticationGateway):
7
+ def __init__(self, security_auth: dict):
8
+ self.client_id: str = security_auth.get("client_id")
9
+ self.client_secrets: str = security_auth.get("client_secret")
10
+
11
+ def get_credentials(self):
12
+ return None
@@ -0,0 +1,64 @@
1
+ from time import (
2
+ time
3
+ )
4
+ from secrets import (
5
+ token_hex
6
+ )
7
+ from authlib.jose import (
8
+ jwt
9
+ )
10
+ from devsecops_engine_tools.engine_dast.src.domain.model.gateways.authentication_gateway import (
11
+ AuthenticationGateway,
12
+ )
13
+
14
+
15
+ class JwtObject(AuthenticationGateway):
16
+ def __init__(self, security_auth: dict):
17
+ self.type = "jwt"
18
+ self.private_key: str = security_auth.get("jwt_private_key")
19
+ self.algorithm: str = security_auth.get("jwt_algorithm")
20
+ self.iss: str = security_auth.get("jwt_iss")
21
+ self.sum: str = security_auth.get("jwt_sum")
22
+ self.aud: str = security_auth.get("jwt_aud")
23
+ self.iat: float = time()
24
+ self.exp: float = self.iat + 60 * 60
25
+ self.nonce = token_hex(10)
26
+ self.payload: dict = {}
27
+ self.header: dict = {}
28
+ self.jwt_token: str = ""
29
+ self.header_name: str = security_auth.get("jwt_header_name")
30
+ self.init_header()
31
+ self.init_payload()
32
+
33
+ def init_header(self) -> None:
34
+ self.header: dict = {"alg": self.algorithm}
35
+
36
+ def init_payload(self) -> dict:
37
+ self.payload: dict = {
38
+ "iss": self.iss,
39
+ "sum": self.sum,
40
+ "aud": self.aud,
41
+ "exp": self.exp,
42
+ "iat": self.iat,
43
+ "nonce": self.nonce,
44
+ }
45
+ return self.payload
46
+
47
+ def get_credentials(self) -> tuple:
48
+ """
49
+ Generates JWT using a file with the configuration
50
+
51
+ Returns:
52
+
53
+ tuple: header and jwt
54
+
55
+ """
56
+ self.private_key = (
57
+ self.private_key.replace(" ", "\n")
58
+ .replace("-----BEGIN\nPRIVATE\nKEY-----", "-----BEGIN PRIVATE KEY-----")
59
+ .replace("-----END\nPRIVATE\nKEY-----", "-----END PRIVATE KEY-----")
60
+ )
61
+ self.jwt_token = jwt.encode(self.header, self.payload, self.private_key).decode(
62
+ "utf-8"
63
+ )
64
+ return self.header_name, self.jwt_token
@@ -0,0 +1,153 @@
1
+ from typing import (
2
+ List
3
+ )
4
+ from datetime import (
5
+ datetime,
6
+ )
7
+ import jwt
8
+ from devsecops_engine_tools.engine_core.src.domain.model.finding import (
9
+ Category,
10
+ Finding,
11
+ )
12
+ from devsecops_engine_tools.engine_dast.src.domain.model.gateways.tool_gateway import (
13
+ ToolGateway,
14
+ )
15
+ from devsecops_engine_tools.engine_dast.src.domain.model.api_operation import (
16
+ ApiOperation
17
+ )
18
+ from devsecops_engine_tools.engine_dast.src.infrastructure.helpers.file_generator_tool import (
19
+ generate_file_from_tool,
20
+ )
21
+
22
+ class JwtTool(ToolGateway):
23
+
24
+ def __init__(self, target_config):
25
+ self.TOOL = "JWT"
26
+ self.BAD_JWT_ALG = ["none", "ES256", "ES384", "ES512"]
27
+ self.BAD_JWS_ALG = ["none", "ES256", "ES384", "ES512"]
28
+ self.GOOD_JWE_ALG = ["dir", "RSA-OAEP", "RSA-OAEP-256"]
29
+ self.GOOD_JWE_ENC = ["A256GCM"]
30
+ self.target_config = target_config
31
+
32
+ def verify_jwt_alg(self, token):
33
+ "Evaluate JSON Web token's algorithm"
34
+
35
+ map_id = "JWT_ALGORITHM"
36
+ alg = jwt.get_unverified_header(token)["alg"]
37
+
38
+ if alg in self.BAD_JWT_ALG: #Is vulnerable
39
+ return {
40
+ "map_id": map_id,
41
+ "description": "msg"
42
+ }
43
+
44
+ def verify_jws_alg(self, token):
45
+ """Evaluate JSON Web signature's algorithm"""
46
+
47
+ map_id = "JWS_ALGORITHM"
48
+ alg = jwt.get_unverified_header(token)["alg"]
49
+
50
+ if alg in self.BAD_JWS_ALG:#Is vulnerable
51
+ return {
52
+ "map_id": map_id,
53
+ "description": "msg"
54
+ }
55
+
56
+ def verify_jwe(self, token):
57
+ """Evaluate JSON Web encryption's algorithm"""
58
+
59
+ map_id = "JWE_ALGORITHM"
60
+ msg = ""
61
+ enc = jwt.get_unverified_header(token)["enc"]
62
+ alg = jwt.get_unverified_header(token)["alg"]
63
+
64
+ if enc in self.GOOD_JWE_ENC:
65
+ if alg in self.GOOD_JWE_ALG:# Is not vulnerable
66
+ return
67
+ else:
68
+ msg = "Algorithm: " + alg
69
+ else:
70
+ msg = "Encryption: " + enc
71
+
72
+ return {
73
+ "map_id": map_id,
74
+ "description": msg
75
+ }
76
+
77
+ def check_token(self, token, jwt_details, config_tool):
78
+ "Validates JWT, JWS or JWE"
79
+
80
+ hed = jwt.get_unverified_header(token)
81
+
82
+ if "enc" in hed.keys():
83
+ result = self.verify_jwe(token)
84
+ elif "typ" in hed.keys():
85
+ result = self.verify_jwt_alg(token)
86
+ else:
87
+ result = self.verify_jws_alg(token)
88
+
89
+ if result:
90
+ mapped_result = {
91
+ "check_id": config_tool["RULES"][result["map_id"]]["checkID"],
92
+ "cvss": config_tool["RULES"][result["map_id"]]["cvss"],
93
+ "matched-at": jwt_details["path"],
94
+ "description": result["msg"],
95
+ "severity": config_tool["RULES"][result["map_id"]]["severity"],
96
+ "remediation": result["remediation"]
97
+ }
98
+ return mapped_result
99
+ return None
100
+
101
+ def configure_tool(self, target_data):
102
+ """Method for group all operations that uses JWT"""
103
+ jwt_list: List[ApiOperation] = []
104
+ for operation in target_data.operations:
105
+ if operation.authentication_gateway.type.lower() == "jwt":
106
+ jwt_list.append(operation)
107
+ return jwt_list
108
+
109
+ def execute(self, jwt_config: List[ApiOperation], config_tool):
110
+ result_scans = []
111
+ if len(jwt_config) > 0:
112
+ for jwt_operation in jwt_config:
113
+ jwt_operation.authenticate()
114
+ result = self.check_token(token=jwt_operation.credentials[1],
115
+ jwt_details=jwt_operation.data["operation"],
116
+ config_tool=config_tool)
117
+ if result:
118
+ result_scans.append(result)
119
+ return result_scans
120
+
121
+ def get_list_finding(
122
+ self,
123
+ result_scan_list: "List[dict]"
124
+ ) -> "List[Finding]":
125
+ list_open_findings = []
126
+ if len(result_scan_list) > 0:
127
+ for scan in result_scan_list:
128
+ finding_open = Finding(
129
+ id=scan.get("check-id"),
130
+ cvss=scan.get("cvss"),
131
+ where=scan.get("matched-at"),
132
+ description=scan.get("description"),
133
+ severity=scan.get("severity").lower(),
134
+ identification_date=datetime.now().strftime("%d%m%Y"),
135
+ module="engine_dast",
136
+ category=Category("vulnerability"),
137
+ requirements=scan.get("remediation"),
138
+ tool="jwt",
139
+ published_date_cve=scan.get("published-cve")
140
+ )
141
+ list_open_findings.append(finding_open)
142
+ return list_open_findings
143
+
144
+ def run_tool(self, target_data, config_tool):
145
+ jwt_config = self.configure_tool(target_data)
146
+ result_scans = self.execute(jwt_config, config_tool)
147
+ if result_scans:
148
+ finding_list = self.get_list_finding(result_scans)
149
+ path_file_results = generate_file_from_tool(
150
+ self.TOOL, result_scans, config_tool
151
+ )
152
+ return finding_list, path_file_results
153
+ return []