Fix zip slip security flaw 01/97301/4
authorandre.schmid <andre.schmid@est.tech>
Fri, 27 Sep 2019 12:27:11 +0000 (13:27 +0100)
committerOfir Sonsino <ofir.sonsino@intl.att.com>
Wed, 30 Oct 2019 09:47:54 +0000 (09:47 +0000)
commitbf5eeb23a769a2e2b75f432b74f10fdbcfd2f161
treefa27998ee6efef6f7651315cbf71271130fca025
parent19773b769c6762a12876064c70a34cc31d2b12da
Fix zip slip security flaw

Apply zip slip checking in zip operations throughout the system.
Centralizes most of the zip logic in one class. Create tests to zip
functionalities and zip slip problem.

Change-Id: I721f3d44b34fe6d242c9537f5a515ce1bb534c9a
Issue-ID: SDC-1401
Signed-off-by: andre.schmid <andre.schmid@est.tech>
44 files changed:
catalog-be/src/main/java/org/openecomp/sdc/be/servlets/AbstractValidationsServlet.java
catalog-be/src/main/java/org/openecomp/sdc/be/servlets/ResourceUploadServlet.java
catalog-be/src/main/java/org/openecomp/sdc/be/servlets/ResourcesServlet.java
catalog-be/src/main/java/org/openecomp/sdc/be/servlets/TypesUploadEndpoint.java
catalog-be/src/main/java/org/openecomp/sdc/be/tosca/CsarUtils.java
catalog-be/src/test/java/org/openecomp/sdc/ZipUtil.java [deleted file]
catalog-be/src/test/java/org/openecomp/sdc/be/components/csar/CsarBusinessLogicTest.java
catalog-be/src/test/java/org/openecomp/sdc/be/components/csar/CsarInfoTest.java
catalog-be/src/test/java/org/openecomp/sdc/be/components/impl/utils/YamlTemplateParsingHandlerTest.java
catalog-model/src/main/java/org/openecomp/sdc/be/model/operations/impl/CsarOperation.java
catalog-model/src/main/java/org/openecomp/sdc/be/model/operations/impl/OnboardingClient.java
common-app-api/pom.xml
common-app-api/src/main/java/org/openecomp/sdc/common/util/ZipUtil.java [deleted file]
common-app-api/src/main/java/org/openecomp/sdc/common/zip/ZipUtils.java [new file with mode: 0644]
common-app-api/src/main/java/org/openecomp/sdc/common/zip/exception/ZipException.java [new file with mode: 0644]
common-app-api/src/main/java/org/openecomp/sdc/common/zip/exception/ZipSlipException.java [new file with mode: 0644]
common-app-api/src/test/java/org/openecomp/sdc/common/util/ZipUtilTest.java [deleted file]
common-app-api/src/test/java/org/openecomp/sdc/common/zip/ZipUtilsTest.java [new file with mode: 0644]
common-app-api/src/test/resources/zip-slip/zip-slip-linux.zip [new file with mode: 0644]
common-app-api/src/test/resources/zip-slip/zip-slip-windows.zip [new file with mode: 0644]
common-app-api/src/test/resources/zip/extract-test.zip [new file with mode: 0644]
common-be/pom.xml
common/onap-tosca-datatype/src/main/java/org/onap/sdc/tosca/services/CommonUtil.java
openecomp-be/api/openecomp-sdc-rest-webapp/vendor-software-products-rest/vendor-software-products-rest-services/src/main/java/org/openecomp/sdcrests/vsp/rest/data/PackageArchive.java
openecomp-be/backend/openecomp-sdc-validation-manager/src/main/java/org/openecomp/sdc/validation/impl/UploadValidationManagerImpl.java
openecomp-be/backend/openecomp-sdc-vendor-software-product-manager/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/impl/orchestration/OrchestrationTemplateCSARHandler.java
openecomp-be/backend/openecomp-sdc-vendor-software-product-manager/src/test/java/org/openecomp/sdc/vendorsoftwareproduct/upload/csar/UploadCSARFileTest.java
openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/utils/CommonUtil.java
openecomp-be/lib/openecomp-common-lib/src/test/java/org/openecomp/sdc/common/utils/CommonUtilTest.java
openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/pom.xml
openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/file/FileUtils.java
openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/test/java/org/openecomp/core/utilities/file/FileUtilsTest.java
openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/external/artifact/MonitoringMibEnricher.java
openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/main/java/org/openecomp/core/externaltesting/impl/ExternalTestingManagerImpl.java
openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/java/org/openecomp/core/externaltesting/impl/ExternalTestingManagerImplTest.java
openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/impl/filedatastructuremodule/CandidateServiceImpl.java
openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/impl/ToscaAnalyzerServiceImpl.java
openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/exportinfo/ExportDataCommand.java
openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/importinfo/ImportDataCommand.java
openecomp-be/tools/zusammen-tools/src/main/java/org/openecomp/core/tools/util/ZipUtils.java [deleted file]
test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/utils/ToscaParserUtils.java
test-apis-ci/src/main/java/org/openecomp/sdc/ci/tests/utils/general/FileHandling.java
test-apis-ci/src/main/java/org/openecomp/sdc/externalApis/DeploymentValiditaion.java
ui-ci/src/main/java/org/openecomp/sdc/ci/tests/utilities/FileHandling.java