devsecops-engine-tools 1.32.4__tar.gz → 1.33.0__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 (354) hide show
  1. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/PKG-INFO +8 -2
  2. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/applications/runner_engine_core.py +8 -1
  3. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/domain/usecases/handle_scan.py +13 -2
  4. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/defect_dojo/defect_dojo.py +2 -1
  5. devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_dast/src/applications/runner_dast_scan.py +100 -0
  6. devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_dast/src/domain/model/api_config.py +13 -0
  7. devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_dast/src/domain/model/api_operation.py +13 -0
  8. devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_dast/src/domain/model/gateways/authentication_gateway.py +7 -0
  9. devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_dast/src/domain/model/gateways/tool_gateway.py +9 -0
  10. devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_dast/src/domain/model/wa_config.py +10 -0
  11. devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_dast/src/domain/usecases/dast_scan.py +128 -0
  12. devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/nuclei/nuclei_config.py +69 -0
  13. devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/nuclei/nuclei_deserealizer.py +39 -0
  14. devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/nuclei/nuclei_tool.py +145 -0
  15. devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/oauth/generic_oauth.py +70 -0
  16. devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_dast/src/infrastructure/entry_points/entry_point_dast.py +15 -0
  17. devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_dast/src/infrastructure/helpers/file_generator_tool.py +61 -0
  18. devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_dast/src/infrastructure/helpers/json_handler.py +13 -0
  19. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/import_scan.py +1 -1
  20. devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/helpers/__init__.py +0 -0
  21. devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/ssh/__init__.py +0 -0
  22. devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/utils/__init__.py +0 -0
  23. devsecops_engine_tools-1.33.0/devsecops_engine_tools/version.py +1 -0
  24. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools.egg-info/PKG-INFO +8 -2
  25. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools.egg-info/SOURCES.txt +17 -0
  26. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools.egg-info/requires.txt +3 -0
  27. devsecops_engine_tools-1.32.4/devsecops_engine_tools/version.py +0 -1
  28. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/README.md +0 -0
  29. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/__init__.py +0 -0
  30. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/__init__.py +0 -0
  31. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/__init__.py +0 -0
  32. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/applications/__init__.py +0 -0
  33. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/deployment/__init__.py +0 -0
  34. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/deployment/infrastructure/__init__.py +0 -0
  35. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/domain/__init__.py +0 -0
  36. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/domain/model/__init__.py +0 -0
  37. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/domain/model/component.py +0 -0
  38. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/domain/model/customs_exceptions.py +0 -0
  39. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/domain/model/exclusions.py +0 -0
  40. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/domain/model/finding.py +0 -0
  41. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/domain/model/gateway/__init__.py +0 -0
  42. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/domain/model/gateway/devops_platform_gateway.py +0 -0
  43. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/domain/model/gateway/metrics_manager_gateway.py +0 -0
  44. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/domain/model/gateway/printer_table_gateway.py +0 -0
  45. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/domain/model/gateway/sbom_manager.py +0 -0
  46. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/domain/model/gateway/secrets_manager_gateway.py +0 -0
  47. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/domain/model/gateway/vulnerability_management_gateway.py +0 -0
  48. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/domain/model/input_core.py +0 -0
  49. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/domain/model/level_compliance.py +0 -0
  50. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/domain/model/level_vulnerability.py +0 -0
  51. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/domain/model/report.py +0 -0
  52. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/domain/model/threshold.py +0 -0
  53. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/domain/model/vulnerability_management.py +0 -0
  54. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/domain/usecases/__init__.py +0 -0
  55. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/domain/usecases/break_build.py +0 -0
  56. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/domain/usecases/handle_risk.py +0 -0
  57. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/domain/usecases/metrics_manager.py +0 -0
  58. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/infrastructure/__init__.py +0 -0
  59. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/__init__.py +0 -0
  60. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/aws/__init__.py +0 -0
  61. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/aws/s3_manager.py +0 -0
  62. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/aws/secrets_manager.py +0 -0
  63. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/azure/__init__.py +0 -0
  64. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/azure/azure_devops.py +0 -0
  65. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/defect_dojo/__init__.py +0 -0
  66. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/github/__init__.py +0 -0
  67. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/github/github_actions.py +0 -0
  68. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/printer_pretty_table/__init__.py +0 -0
  69. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/printer_pretty_table/printer_pretty_table.py +0 -0
  70. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/printer_rich_table/__init__.py +0 -0
  71. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/printer_rich_table/printer_rich_table.py +0 -0
  72. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/runtime_local/__init__.py +0 -0
  73. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/runtime_local/runtime_local.py +0 -0
  74. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/syft/__init__.py +0 -0
  75. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/syft/syft.py +0 -0
  76. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/infrastructure/entry_points/__init__.py +0 -0
  77. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/infrastructure/entry_points/entry_point_core.py +0 -0
  78. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/infrastructure/helpers/__init__.py +0 -0
  79. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/infrastructure/helpers/aws.py +0 -0
  80. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_core/src/infrastructure/helpers/util.py +0 -0
  81. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_dast/__init__.py +0 -0
  82. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_dast/src/__init__.py +0 -0
  83. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_dast/src/applications/__init__.py +0 -0
  84. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_dast/src/deployment/__init__.py +0 -0
  85. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_dast/src/deployment/infrastructure/__init__.py +0 -0
  86. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_dast/src/domain/__init__.py +0 -0
  87. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_dast/src/domain/model/__init__.py +0 -0
  88. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_dast/src/domain/usecases → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_dast/src/domain/model/gateways}/__init__.py +0 -0
  89. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_dast/src/infrastructure → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_dast/src/domain/usecases}/__init__.py +0 -0
  90. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_dast/src/infrastructure}/__init__.py +0 -0
  91. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_dast/src/infrastructure/entry_points → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters}/__init__.py +0 -0
  92. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_dast/src/infrastructure/helpers → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/nuclei}/__init__.py +0 -0
  93. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_risk → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/oauth}/__init__.py +0 -0
  94. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_risk/src → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_dast/src/infrastructure/entry_points}/__init__.py +0 -0
  95. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_risk/src/applications → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_dast/src/infrastructure/helpers}/__init__.py +0 -0
  96. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_risk/src/deployment → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_risk}/__init__.py +0 -0
  97. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_risk/src/deployment/infrastructure → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_risk/src}/__init__.py +0 -0
  98. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_risk/src/domain → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_risk/src/applications}/__init__.py +0 -0
  99. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_risk/src/applications/runner_engine_risk.py +0 -0
  100. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_risk/src/domain/model → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_risk/src/deployment}/__init__.py +0 -0
  101. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_risk/src/domain/model/gateways → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_risk/src/deployment/infrastructure}/__init__.py +0 -0
  102. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_risk/src/domain/usecases → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_risk/src/domain}/__init__.py +0 -0
  103. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_risk/src/infrastructure → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_risk/src/domain/model}/__init__.py +0 -0
  104. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_risk/src/infrastructure/driven_adapters → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_risk/src/domain/model/gateways}/__init__.py +0 -0
  105. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_risk/src/domain/model/gateways/add_epss_gateway.py +0 -0
  106. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_risk/src/infrastructure/driven_adapters/first_csv → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_risk/src/domain/usecases}/__init__.py +0 -0
  107. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_risk/src/domain/usecases/add_data.py +0 -0
  108. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_risk/src/domain/usecases/break_build.py +0 -0
  109. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_risk/src/domain/usecases/check_threshold.py +0 -0
  110. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_risk/src/domain/usecases/get_exclusions.py +0 -0
  111. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_risk/src/domain/usecases/handle_filters.py +0 -0
  112. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_risk/src/infrastructure/entry_points → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_risk/src/infrastructure}/__init__.py +0 -0
  113. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_risk/src/infrastructure/helpers → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_risk/src/infrastructure/driven_adapters}/__init__.py +0 -0
  114. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_risk/src/infrastructure/driven_adapters/first_csv}/__init__.py +0 -0
  115. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_risk/src/infrastructure/driven_adapters/first_csv/first_epss_csv.py +0 -0
  116. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_code → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_risk/src/infrastructure/entry_points}/__init__.py +0 -0
  117. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_risk/src/infrastructure/entry_points/entry_point_risk.py +0 -0
  118. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_code/src → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_risk/src/infrastructure/helpers}/__init__.py +0 -0
  119. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_code/src/applications → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast}/__init__.py +0 -0
  120. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_code/src/deployment → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_code}/__init__.py +0 -0
  121. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_code/src/deployment/infrastructure → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_code/src}/__init__.py +0 -0
  122. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_code/src/domain → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_code/src/applications}/__init__.py +0 -0
  123. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_code/src/applications/runner_engine_code.py +0 -0
  124. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_code/src/domain/model → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_code/src/deployment}/__init__.py +0 -0
  125. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_code/src/domain/model/gateways → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_code/src/deployment/infrastructure}/__init__.py +0 -0
  126. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_code/src/domain/usecases → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_code/src/domain}/__init__.py +0 -0
  127. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_code/src/domain/model}/__init__.py +0 -0
  128. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_code/src/domain/model/config_tool.py +0 -0
  129. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/driven_adapters → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_code/src/domain/model/gateways}/__init__.py +0 -0
  130. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_code/src/domain/model/gateways/tool_gateway.py +0 -0
  131. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/driven_adapters/bearer → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_code/src/domain/usecases}/__init__.py +0 -0
  132. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_code/src/domain/usecases/code_scan.py +0 -0
  133. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/entry_points → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure}/__init__.py +0 -0
  134. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/helpers → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/driven_adapters}/__init__.py +0 -0
  135. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_iac → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/driven_adapters/bearer}/__init__.py +0 -0
  136. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/driven_adapters/bearer/bearer_deserealizator.py +0 -0
  137. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/driven_adapters/bearer/bearer_tool.py +0 -0
  138. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_iac/src → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/entry_points}/__init__.py +0 -0
  139. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/entry_points/entry_point_tool.py +0 -0
  140. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_iac/src/applications → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/helpers}/__init__.py +0 -0
  141. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_iac/src/deployment → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_iac}/__init__.py +0 -0
  142. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_iac/src/deployment/infrastructure → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_iac/src}/__init__.py +0 -0
  143. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_iac/src/domain → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_iac/src/applications}/__init__.py +0 -0
  144. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_iac/src/applications/runner_iac_scan.py +0 -0
  145. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_iac/src/deployment}/__init__.py +0 -0
  146. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/gateways → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_iac/src/deployment/infrastructure}/__init__.py +0 -0
  147. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_iac/src/domain/usecases → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_iac/src/domain}/__init__.py +0 -0
  148. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model}/__init__.py +0 -0
  149. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/config_tool.py +0 -0
  150. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/gateways}/__init__.py +0 -0
  151. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/gateways/tool_gateway.py +0 -0
  152. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_iac/src/domain/usecases}/__init__.py +0 -0
  153. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_iac/src/domain/usecases/iac_scan.py +0 -0
  154. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kics → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure}/__init__.py +0 -0
  155. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kubescape → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters}/__init__.py +0 -0
  156. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/entry_points → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov}/__init__.py +0 -0
  157. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov/checkov_config.py +0 -0
  158. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov/checkov_deserealizator.py +0 -0
  159. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov/checkov_tool.py +0 -0
  160. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/helpers → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kics}/__init__.py +0 -0
  161. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kics/kics_deserealizator.py +0 -0
  162. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kics/kics_tool.py +0 -0
  163. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_secret → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kubescape}/__init__.py +0 -0
  164. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kubescape/kubescape_deserealizator.py +0 -0
  165. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kubescape/kubescape_tool.py +0 -0
  166. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_secret/src → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/entry_points}/__init__.py +0 -0
  167. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/entry_points/entry_point_tool.py +0 -0
  168. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_secret/src/applications → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/helpers}/__init__.py +0 -0
  169. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/helpers/file_generator_tool.py +0 -0
  170. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_secret/src/deployment → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_secret}/__init__.py +0 -0
  171. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_secret/src/deployment/infrastructure → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_secret/src}/__init__.py +0 -0
  172. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_secret/src/domain → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_secret/src/applications}/__init__.py +0 -0
  173. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_secret/src/applications/runner_secret_scan.py +0 -0
  174. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_secret/src/deployment}/__init__.py +0 -0
  175. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/gateway → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_secret/src/deployment/infrastructure}/__init__.py +0 -0
  176. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_secret/src/domain/usecases → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_secret/src/domain}/__init__.py +0 -0
  177. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model}/__init__.py +0 -0
  178. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/gateway}/__init__.py +0 -0
  179. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/gateway/gateway_deserealizator.py +0 -0
  180. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/gateway/tool_gateway.py +0 -0
  181. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/gitleaks → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_secret/src/domain/usecases}/__init__.py +0 -0
  182. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/usecases/secret_scan.py +0 -0
  183. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/usecases/set_input_core.py +0 -0
  184. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/trufflehog → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure}/__init__.py +0 -0
  185. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/entry_points → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters}/__init__.py +0 -0
  186. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/gitleaks}/__init__.py +0 -0
  187. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/gitleaks/gitleaks_deserealizator.py +0 -0
  188. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/gitleaks/gitleaks_tool.py +0 -0
  189. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_container → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/trufflehog}/__init__.py +0 -0
  190. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/trufflehog/trufflehog_deserealizator.py +0 -0
  191. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/trufflehog/trufflehog_run.py +0 -0
  192. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_container/src → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/entry_points}/__init__.py +0 -0
  193. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/entry_points/entry_point_tool.py +0 -0
  194. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_container/src/applications → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca}/__init__.py +0 -0
  195. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_container/src/deployment → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_container}/__init__.py +0 -0
  196. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_container/src/deployment/infrastructure → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_container/src}/__init__.py +0 -0
  197. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_container/src/domain → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_container/src/applications}/__init__.py +0 -0
  198. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sca/engine_container/src/applications/runner_container_scan.py +0 -0
  199. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_container/src/domain/model → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_container/src/deployment}/__init__.py +0 -0
  200. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_container/src/deployment/infrastructure}/__init__.py +0 -0
  201. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_container/src/domain}/__init__.py +0 -0
  202. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_container/src/domain/model}/__init__.py +0 -0
  203. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways}/__init__.py +0 -0
  204. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways/deserealizator_gateway.py +0 -0
  205. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways/images_gateway.py +0 -0
  206. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways/tool_gateway.py +0 -0
  207. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/docker → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases}/__init__.py +0 -0
  208. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases/container_sca_scan.py +0 -0
  209. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases/handle_remote_config_patterns.py +0 -0
  210. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases/set_input_core.py +0 -0
  211. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/prisma_cloud → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure}/__init__.py +0 -0
  212. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/trivy_tool → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters}/__init__.py +0 -0
  213. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/entry_points → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/docker}/__init__.py +0 -0
  214. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/docker/docker_images.py +0 -0
  215. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/helpers → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/prisma_cloud}/__init__.py +0 -0
  216. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/prisma_cloud/prisma_cloud_manager_scan.py +0 -0
  217. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/prisma_cloud/prisma_deserialize_output.py +0 -0
  218. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_dependencies → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/trivy_tool}/__init__.py +0 -0
  219. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/trivy_tool/trivy_deserialize_output.py +0 -0
  220. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/trivy_tool/trivy_manager_scan.py +0 -0
  221. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_dependencies/src → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/entry_points}/__init__.py +0 -0
  222. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/entry_points/entry_point_tool.py +0 -0
  223. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_dependencies/src/applications → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/helpers}/__init__.py +0 -0
  224. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_dependencies/src/deployment → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_dependencies}/__init__.py +0 -0
  225. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_dependencies/src/deployment/infrastructure → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_dependencies/src}/__init__.py +0 -0
  226. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/applications}/__init__.py +0 -0
  227. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/applications/runner_dependencies_scan.py +0 -0
  228. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/deployment}/__init__.py +0 -0
  229. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/gateways → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/deployment/infrastructure}/__init__.py +0 -0
  230. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain}/__init__.py +0 -0
  231. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model}/__init__.py +0 -0
  232. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/gateways}/__init__.py +0 -0
  233. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/gateways/deserializator_gateway.py +0 -0
  234. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/gateways/tool_gateway.py +0 -0
  235. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/dependency_check → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases}/__init__.py +0 -0
  236. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases/dependencies_sca_scan.py +0 -0
  237. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases/handle_remote_config_patterns.py +0 -0
  238. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases/set_input_core.py +0 -0
  239. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure}/__init__.py +0 -0
  240. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/entry_points → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters}/__init__.py +0 -0
  241. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/helpers → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/dependency_check}/__init__.py +0 -0
  242. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/dependency_check/dependency_check_deserialize.py +0 -0
  243. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/dependency_check/dependency_check_tool.py +0 -0
  244. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool}/__init__.py +0 -0
  245. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool/xray_deserialize_output.py +0 -0
  246. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool/xray_manager_scan.py +0 -0
  247. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/azuredevops → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/entry_points}/__init__.py +0 -0
  248. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/entry_points/entry_point_tool.py +0 -0
  249. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/azuredevops/infrastructure → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/helpers}/__init__.py +0 -0
  250. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/helpers/get_artifacts.py +0 -0
  251. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/azuredevops/models → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities}/__init__.py +0 -0
  252. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/defect_dojo/applications → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/azuredevops}/__init__.py +0 -0
  253. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/defect_dojo/domain → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/azuredevops/infrastructure}/__init__.py +0 -0
  254. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/azuredevops/infrastructure/azure_devops_api.py +0 -0
  255. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/azuredevops/models/AzureMessageLoggingPipeline.py +0 -0
  256. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/azuredevops/models/AzurePredefinedVariables.py +0 -0
  257. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/defect_dojo/domain → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/azuredevops}/models/__init__.py +0 -0
  258. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/__init__.py +0 -0
  259. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/defect_dojo/applications}/__init__.py +0 -0
  260. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/component.py +0 -0
  261. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/connect.py +0 -0
  262. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/defect_dojo.py +0 -0
  263. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/engagement.py +0 -0
  264. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/finding.py +0 -0
  265. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/finding_exclusion.py +0 -0
  266. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/product.py +0 -0
  267. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/defect_dojo/domain}/__init__.py +0 -0
  268. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models}/__init__.py +0 -0
  269. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/cmdb.py +0 -0
  270. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/component.py +0 -0
  271. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/engagement.py +0 -0
  272. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/finding.py +0 -0
  273. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/finding_exclusion.py +0 -0
  274. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/product.py +0 -0
  275. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/product_list.py +0 -0
  276. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/product_type.py +0 -0
  277. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/product_type_list.py +0 -0
  278. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/scan_configuration.py +0 -0
  279. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects}/__init__.py +0 -0
  280. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects/finding.py +0 -0
  281. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects/import_scan.py +0 -0
  282. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers}/__init__.py +0 -0
  283. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers/finding.py +0 -0
  284. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers/import_scan.py +0 -0
  285. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/settings → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case}/__init__.py +0 -0
  286. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/cmdb.py +0 -0
  287. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/component.py +0 -0
  288. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/engagement.py +0 -0
  289. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/finding.py +0 -0
  290. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/finding_exclusion.py +0 -0
  291. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/product.py +0 -0
  292. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/hello_world.py +0 -0
  293. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/repository → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure}/__init__.py +0 -0
  294. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/git_cli → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters}/__init__.py +0 -0
  295. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/cmdb.py +0 -0
  296. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/component.py +0 -0
  297. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/engagement.py +0 -0
  298. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/finding.py +0 -0
  299. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/finding_exclusion.py +0 -0
  300. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/import_scan.py +0 -0
  301. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/product.py +0 -0
  302. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/product_type.py +0 -0
  303. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/scan_configurations.py +0 -0
  304. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/git_cli/infrastructure → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/settings}/__init__.py +0 -0
  305. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/settings/settings.py +0 -0
  306. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/git_cli/model → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/repository}/__init__.py +0 -0
  307. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/git_cli/model/gateway → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/git_cli}/__init__.py +0 -0
  308. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/github → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/git_cli/infrastructure}/__init__.py +0 -0
  309. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/git_cli/infrastructure/git_run.py +0 -0
  310. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/github/infrastructure → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/git_cli/model}/__init__.py +0 -0
  311. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/github/models → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/git_cli/model/gateway}/__init__.py +0 -0
  312. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/git_cli/model/gateway/git_gateway.py +0 -0
  313. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/input_validations → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/github}/__init__.py +0 -0
  314. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/sbom → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/github/infrastructure}/__init__.py +0 -0
  315. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/github/infrastructure/github_api.py +0 -0
  316. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/github/models/GithubPredefinedVariables.py +0 -0
  317. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/sonarqube → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/github/models}/__init__.py +0 -0
  318. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/sonarqube/src → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/input_validations}/__init__.py +0 -0
  319. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/input_validations/env_utils.py +0 -0
  320. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/input_validations/validate_input_with_regex_letters_number_and_only.py +0 -0
  321. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/sonarqube/src/applications → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/sbom}/__init__.py +0 -0
  322. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/sbom/deserealizator.py +0 -0
  323. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/settings.py +0 -0
  324. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/sonarqube/src/domain → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/sonarqube}/__init__.py +0 -0
  325. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/model → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/sonarqube/src}/__init__.py +0 -0
  326. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/model/gateways → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/sonarqube/src/applications}/__init__.py +0 -0
  327. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/sonarqube/src/applications/runner_report_sonar.py +0 -0
  328. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/usecases → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/sonarqube/src/domain}/__init__.py +0 -0
  329. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/model}/__init__.py +0 -0
  330. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/driven_adapters → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/model/gateways}/__init__.py +0 -0
  331. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/model/gateways/sonar_gateway.py +0 -0
  332. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/driven_adapters/sonarqube → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/usecases}/__init__.py +0 -0
  333. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/usecases/report_sonar.py +0 -0
  334. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/entry_points → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure}/__init__.py +0 -0
  335. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/helpers → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/driven_adapters}/__init__.py +0 -0
  336. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/ssh → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/driven_adapters/sonarqube}/__init__.py +0 -0
  337. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/driven_adapters/sonarqube/sonarqube_report.py +0 -0
  338. {devsecops_engine_tools-1.32.4/devsecops_engine_tools/engine_utilities/utils → devsecops_engine_tools-1.33.0/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/entry_points}/__init__.py +0 -0
  339. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/entry_points/entry_point_report_sonar.py +0 -0
  340. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/helpers/utils.py +0 -0
  341. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/ssh/managment_private_key.py +0 -0
  342. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/utils/api_error.py +0 -0
  343. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/utils/dataclass_classmethod.py +0 -0
  344. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/utils/datetime_parsing.py +0 -0
  345. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/utils/logger_info.py +0 -0
  346. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/utils/name_conversion.py +0 -0
  347. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/utils/printers.py +0 -0
  348. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/utils/session_manager.py +0 -0
  349. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools/engine_utilities/utils/utils.py +0 -0
  350. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools.egg-info/dependency_links.txt +0 -0
  351. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools.egg-info/entry_points.txt +0 -0
  352. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/devsecops_engine_tools.egg-info/top_level.txt +0 -0
  353. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/setup.cfg +0 -0
  354. {devsecops_engine_tools-1.32.4 → devsecops_engine_tools-1.33.0}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: devsecops-engine-tools
3
- Version: 1.32.4
3
+ Version: 1.33.0
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,69 @@
1
+ from typing import List
2
+ import os
3
+ from ruamel.yaml import YAML
4
+ from json import dumps as json_dumps
5
+
6
+ class NucleiConfig:
7
+ def __init__(self, target_config):
8
+ self.url: str = target_config.endpoint
9
+ self.target_type: str = target_config.target_type.lower()
10
+ self.custom_templates_dir: str = ""
11
+ self.output_file: str = "result_dast_scan.json"
12
+ self.yaml = YAML()
13
+ if self.target_type == "api":
14
+ self.data: List = target_config.operations
15
+ elif self.target_type == "wa":
16
+ self.data: dict = target_config.data
17
+ else:
18
+ raise ValueError("ERROR: The objective is not an api or web application type")
19
+
20
+ def process_template_file(
21
+ self,
22
+ dest_folder: str,
23
+ template_name: str,
24
+ new_template_data: dict,
25
+ template_counter: int,
26
+ ) -> None:
27
+ new_template_name: str = "nuclei_template_" + str(template_counter) + ".yaml"
28
+ with open(template_name, "r") as template_file: # abrir archivo
29
+ template_data = self.yaml.load(template_file)
30
+ if "http" in template_data:
31
+ template_data["http"][0]["method"] = new_template_data["operation"]["method"]
32
+ template_data["http"][0]["path"] = [
33
+ "{{BaseURL}}" + new_template_data["operation"]["path"]
34
+ ]
35
+ if "headers" in template_data.get("http", [{}])[0]:
36
+ template_data["http"][0]["headers"] = new_template_data["operation"]["headers"]
37
+ if "payload" in new_template_data["operation"]:
38
+ body = json_dumps(new_template_data["operation"]["payload"])
39
+ template_data["http"][0]["body"] = body
40
+
41
+ new_template_path = os.path.join(dest_folder, new_template_name)
42
+
43
+ with open(new_template_path, "w") as nf:
44
+ self.yaml.dump(template_data, nf)
45
+
46
+ def process_templates_folder(self, base_folder: str) -> None:
47
+ if not os.path.exists(self.custom_templates_dir):
48
+ os.makedirs(self.custom_templates_dir)
49
+
50
+ t_counter = 0
51
+ for operation in self.data:
52
+ operation.authenticate() #Api Authentication
53
+ for root, _, files in os.walk(f"{base_folder}{os.sep}rules{os.sep}nuclei"):
54
+ for file in files:
55
+ if file.endswith(".yaml"):
56
+ self.process_template_file(
57
+ dest_folder=self.custom_templates_dir,
58
+ template_name=os.path.join(root, file),
59
+ new_template_data=operation.data,
60
+ template_counter=t_counter,
61
+ )
62
+ t_counter += 1
63
+
64
+ def customize_templates(self, directory: str) -> None:
65
+ if self.target_type == "api":
66
+ self.custom_templates_dir = f"{directory}{os.sep}customized-nuclei-templates"
67
+ self.process_templates_folder(
68
+ base_folder=directory
69
+ )
@@ -0,0 +1,39 @@
1
+ from dataclasses import (
2
+ dataclass,
3
+ )
4
+ from datetime import (
5
+ datetime,
6
+ )
7
+ from devsecops_engine_tools.engine_core.src.domain.model.finding import (
8
+ Category,
9
+ Finding,
10
+ )
11
+
12
+
13
+ @dataclass
14
+ class NucleiDesealizator:
15
+ @classmethod
16
+ def get_list_finding(
17
+ cls,
18
+ results_scan_list: "list[dict]",
19
+ ) -> "list[Finding]":
20
+ list_open_findings = []
21
+ if len(results_scan_list) > 0:
22
+ for scan in results_scan_list:
23
+ finding_open = Finding(
24
+ id=scan.get("template-id"),
25
+ cvss=scan["info"].get("classification", {}).get("cvss-score", ""),
26
+ where=scan.get("matched-at"),
27
+ description=scan["info"].get("description"),
28
+ severity=scan["info"].get("severity").lower() if scan["info"].get("severity").lower() != "info" else "low",
29
+ identification_date=datetime.now().strftime("%d%m%Y"),
30
+ module="engine_dast",
31
+ category=Category("vulnerability"),
32
+ requirements=scan["info"].get("remediation"),
33
+ tool="Nuclei",
34
+ published_date_cve=None
35
+ )
36
+ list_open_findings.append(finding_open)
37
+
38
+ return list_open_findings
39
+
@@ -0,0 +1,145 @@
1
+ import os
2
+ import subprocess
3
+ import json
4
+ import platform
5
+ import requests
6
+ import shutil
7
+ from devsecops_engine_tools.engine_dast.src.domain.model.gateways.tool_gateway import (
8
+ ToolGateway,
9
+ )
10
+ from devsecops_engine_tools.engine_dast.src.infrastructure.driven_adapters.nuclei.nuclei_config import (
11
+ NucleiConfig,
12
+ )
13
+ from devsecops_engine_tools.engine_dast.src.infrastructure.driven_adapters.nuclei.nuclei_deserealizer import (
14
+ NucleiDesealizator,
15
+ )
16
+ from devsecops_engine_tools.engine_utilities.utils.utils import Utils
17
+ from devsecops_engine_tools.engine_utilities.utils.logger_info import MyLogger
18
+ from devsecops_engine_tools.engine_utilities import settings
19
+ from devsecops_engine_tools.engine_utilities.utils.utils import Utils
20
+
21
+ logger = MyLogger.__call__(**settings.SETTING_LOGGER).get_logger()
22
+
23
+
24
+ class NucleiTool(ToolGateway):
25
+
26
+ """A class that wraps the nuclei scanner functionality"""
27
+
28
+ def __init__(self, target_config=None, data_config_cli=None):
29
+ """Initialize the class with the data from the config file and the cli"""
30
+ self.target_config = target_config
31
+ self.data_config_cli = data_config_cli
32
+ self.TOOL: str = "NUCLEI"
33
+
34
+ def download_tool(self, version):
35
+ try:
36
+ base_url = f"https://github.com/projectdiscovery/nuclei/releases/download/v{version}/"
37
+ os_type = platform.system().lower()
38
+
39
+ os_types = {"darwin": "macOS", "linux": "linux", "windows": "windows"}
40
+ if os_type in os_types:
41
+ curr_os = os_types[os_type]
42
+ else:
43
+ raise Exception(f"Error [101]: {os_type} is an unsupported OS type!")
44
+
45
+ file_name = f"nuclei_{version}_{curr_os}_amd64.zip"
46
+ url = f"{base_url}{file_name}"
47
+
48
+ response = requests.get(url, allow_redirects=True)
49
+ if response.status_code != 200:
50
+ raise Exception(f"Error [102]: Failed to download Nuclei version {version}. HTTP status code: {response.status_code}")
51
+
52
+ home_directory = os.path.expanduser("~")
53
+ zip_name = os.path.join(home_directory, file_name)
54
+ with open(zip_name, "wb") as f:
55
+ f.write(response.content)
56
+
57
+ Utils().unzip_file(zip_name, home_directory)
58
+ return 0
59
+ except Exception as e:
60
+ logger.error(f"Error [103]: An exception occurred during download: {e}")
61
+ return e
62
+
63
+ def install_tool(self, version):
64
+ try:
65
+ nuclei_path = shutil.which("nuclei")
66
+
67
+ if not nuclei_path:
68
+ download_result = self.download_tool(version)
69
+ if download_result != 0:
70
+ raise Exception(f"Error [104]: Download failed with error: {download_result}")
71
+
72
+ os_type = platform.system().lower()
73
+ home_directory = os.path.expanduser("~")
74
+
75
+ if nuclei_path:
76
+ executable_path = nuclei_path
77
+ elif os_type == "windows":
78
+ executable_path = os.path.join(home_directory, "nuclei.exe")
79
+ else:
80
+ executable_path = os.path.join(home_directory, "nuclei")
81
+
82
+ if os_type == "darwin" or os_type == "linux":
83
+ subprocess.run(["chmod", "+x", executable_path], check=True)
84
+ return {"status": 201, "path": executable_path} # Installation successful
85
+ elif os_type == "windows":
86
+ return {"status": 202, "path":executable_path}
87
+ else:
88
+ raise Exception(f"Error [105]: {os_type} is an unsupported OS type!")
89
+
90
+ except subprocess.CalledProcessError as e:
91
+ logger.error(f"Error [106]: Command execution failed: {e}")
92
+ return {"status": 106}
93
+ except Exception as e:
94
+ logger.error(f"Error [107]: An exception occurred during installation: {e}")
95
+ return {"status": 107}
96
+
97
+ def execute(self, command_prefix: str, target_config: NucleiConfig) -> dict:
98
+ """Interact with nuclei's core application"""
99
+
100
+ command = (
101
+ command_prefix
102
+ + " -u " # target URLs/hosts to scan
103
+ + target_config.url
104
+ + (f" -ud {target_config.custom_templates_dir}" if target_config.custom_templates_dir else "")
105
+ + " -ni " # disable interactsh server
106
+ + "-dc " # disable clustering of requests
107
+ + "-tags " # Excute only templates with the especified tag
108
+ + target_config.target_type
109
+ + " -je " # file to export results in JSON format
110
+ + str(target_config.output_file)
111
+ + " -sr"
112
+ )
113
+
114
+ if command is not None:
115
+ result = subprocess.run(
116
+ command,
117
+ shell=True,
118
+ capture_output=True,
119
+ )
120
+ error = result.stderr.decode().strip() if result.stderr else ""
121
+ if result.returncode != 0:
122
+ raise Exception(f"Error executing nuclei: {error}")
123
+ with open(target_config.output_file, "r") as f:
124
+ json_response = json.load(f)
125
+ return json_response
126
+
127
+ def run_tool(self,
128
+ target_data,
129
+ config_tool,
130
+ secret_tool,
131
+ secret_external_checks,
132
+ agent_work_folder
133
+ ):
134
+ result_install = self.install_tool(config_tool[self.TOOL]["VERSION"])
135
+ if result_install["status"] < 200:
136
+ return [], None
137
+
138
+ nuclei_config = NucleiConfig(target_data)
139
+ if config_tool[self.TOOL]["ENABLE_CUSTOM_RULES"]:
140
+ Utils().configurate_external_checks(self.TOOL, config_tool, secret_tool, secret_external_checks, agent_work_folder)
141
+ nuclei_config.customize_templates(agent_work_folder)
142
+
143
+ result_scans = self.execute(result_install["path"], nuclei_config)
144
+ findings_list = NucleiDesealizator().get_list_finding(result_scans)
145
+ return findings_list, nuclei_config.output_file