Skip to content
This repository was archived by the owner on Feb 26, 2021. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
312 commits
Select commit Hold shift + click to select a range
1fa9892
Merge pull request #39 from secureCodeBox/feature/zap-replacer-for-ht…
J12934 Oct 24, 2018
a8d03be
Update scb-sdk/src/main/java/io/securecodebox/model/rest/SecurityTest…
Trosky Oct 25, 2018
52a0739
Fixed missing naming changes
J12934 Oct 29, 2018
f74d3f7
Fixed spelling of resource
J12934 Oct 29, 2018
d9cc313
Added basic test for security-test endpoint
J12934 Oct 29, 2018
41993e7
modified application properties file to enable https in prod profile …
MartinLang1 Oct 29, 2018
c0651d6
Added init.sh script to create certificate on container start
MartinLang1 Oct 30, 2018
c675f07
Fixed docker file to create a self signed certificate on container start
MartinLang1 Oct 30, 2018
89422df
Fixed typos
J12934 Oct 30, 2018
8bdbd68
Added api param description for security-test endpoint
J12934 Oct 30, 2018
7e9dda2
Added api endpoint for security-test results
J12934 Oct 30, 2018
b608ed2
Merged develop
J12934 Oct 30, 2018
0ecfda1
Fixed result type
J12934 Oct 30, 2018
8aac787
Update README.md
J12934 Oct 30, 2018
5588514
implements tests
ruedih Oct 30, 2018
4d425cc
Fixed typos
J12934 Nov 1, 2018
107b5b3
Removed dependency to execution in the report and changed results end…
J12934 Nov 1, 2018
769f237
Improved https configuration; added documentation
MartinLang1 Nov 1, 2018
67c208c
Added attribute examples for the swagger docs
J12934 Nov 1, 2018
522f0d1
Adopted new report structure in report test
J12934 Nov 1, 2018
4405660
Use entrypoint instead of cmd
MartinLang1 Nov 1, 2018
076482d
Added 401 status code as possible api return values
J12934 Nov 1, 2018
83f2968
Added more descriptive description for the scanJob Resource
J12934 Nov 1, 2018
1de96f5
Adjusted wording of description
J12934 Nov 1, 2018
6095f5d
Refactored all Camunda api calls into service
J12934 Nov 1, 2018
f448837
Changed test framework to run test to be better able to mock out depe…
J12934 Nov 1, 2018
314b9e0
Added test cases for start security-test endpoint
J12934 Nov 1, 2018
c47c9c1
Added deprecation notes
J12934 Nov 5, 2018
880c666
Replaced * import
J12934 Nov 5, 2018
7822070
Contained security-test to proses-def-key mapping inside security tes…
J12934 Nov 5, 2018
c2277a6
Refactored resource to uses a service and added tests for resource
J12934 Nov 5, 2018
6469090
Added missing unauthenticated responses for scan job endpoint
J12934 Nov 5, 2018
08e2690
Merge pull request #44 from secureCodeBox/philipbarwikowski4242-featu…
MartinLang1 Nov 5, 2018
47b794c
Trying to fix broken build
MartinLang1 Nov 5, 2018
42156a0
Added missing default port (no SSL case)
rfelber Nov 6, 2018
67f7ab8
Some minor refactorings regarding the OU naming
rfelber Nov 6, 2018
123c828
Merge pull request #43 from secureCodeBox/feature/provide-https-support
MartinLang1 Nov 6, 2018
99d1787
Added amass-nmap scanprocess to engine dependencies
MartinLang1 Nov 6, 2018
9e29215
Added ip address to nmap and amass-nmap result view
MartinLang1 Nov 6, 2018
831162f
Added class for the new securityTest model
J12934 Nov 7, 2018
bb54ec4
Renamed process service to securityTest service
J12934 Nov 7, 2018
baf049b
Added stub for the GET /securityTest endpoint
J12934 Nov 7, 2018
518e428
Add dependency to spring boot actators
MartinLang1 Nov 8, 2018
4cb3c2f
Disable all actuator endpoints except '/health' endpoint
MartinLang1 Nov 8, 2018
8f3d8f8
Adopted api and persistence logic to new data model
J12934 Nov 9, 2018
3894c7f
Removed redundant report endpoint.
J12934 Nov 9, 2018
261c4a2
Removed old securityTest Model
J12934 Nov 9, 2018
a0725eb
Removed “type” query as it was replacing the id query.
J12934 Nov 9, 2018
65423b2
Added warning log if a id already exists in elasticsearch
J12934 Nov 9, 2018
8ef31b4
Merge branch 'develop' into feature/new-api-structure
J12934 Nov 9, 2018
d8dcbc4
Removed duplicate declaration of default report constructor
J12934 Nov 9, 2018
f28264f
Migrated s3 persistence provider to new PersistenceProvider interface
J12934 Nov 9, 2018
0457448
Added check if the securityTest has any targets before accessing the …
J12934 Nov 9, 2018
44cfe2a
Removed unused method from execution
J12934 Nov 9, 2018
90a7ed3
Readded object mapper
J12934 Nov 10, 2018
830b9fc
Added docker health check using status endpoint
MartinLang1 Nov 12, 2018
5fcd227
add s3 persistence provider
melvinkoitzsch0007 Nov 13, 2018
65c3604
typo
bitofant Nov 13, 2018
f24d5e8
Merge pull request #45 from secureCodeBox/feature/health-check
bitofant Nov 13, 2018
d0a197b
try to initiate without credentialprovider
melvinkoitzsch0007 Nov 14, 2018
1e585c1
Using id.keyword field to check for preexisting uuids
J12934 Nov 14, 2018
9dee8df
use s3clientbuilder
melvinkoitzsch0007 Nov 14, 2018
5bd1a11
use EC2ContainerCredentialsProviderWrapper
melvinkoitzsch0007 Nov 14, 2018
80bd8f6
log credentials uri
melvinkoitzsch0007 Nov 14, 2018
4c6eb9b
more debug
melvinkoitzsch0007 Nov 14, 2018
5b4273e
Elasticsearch Persistence provider will now create incidents when non…
J12934 Nov 14, 2018
3d4c023
added arachni rate limit configuration
Nov 14, 2018
5b981fd
Create incident when kibana index creation fails.
J12934 Nov 14, 2018
1bbfcd4
Merge pull request #32 from secureCodeBox/feature/new-api-structure
MartinLang1 Nov 14, 2018
4a827eb
back to default since the problem lays in the execution on the contai…
melvinkoitzsch0007 Nov 15, 2018
df9f83b
export AWS_CONTAINER_CREDENTIALS_RELATIVE_URI
melvinkoitzsch0007 Nov 15, 2018
d9d664f
Treat empty string contexts as non existent
J12934 Nov 15, 2018
9b39646
debug test
melvinkoitzsch0007 Nov 16, 2018
b622370
more debug
melvinkoitzsch0007 Nov 16, 2018
2b6947b
moa debug
melvinkoitzsch0007 Nov 16, 2018
6f938ee
new init script order
melvinkoitzsch0007 Nov 16, 2018
3c97550
remove debugging and refactor
melvinkoitzsch0007 Nov 16, 2018
ec74a18
refactor imports
melvinkoitzsch0007 Nov 16, 2018
ce4e597
changed web icon
Nov 19, 2018
6034678
Merge branch 'develop' into feature/s3-persistence-provider
J12934 Nov 19, 2018
2d7cf29
Merge pull request #46 from secureCodeBox/feature/s3-persistence-prov…
J12934 Nov 19, 2018
00d7d30
Added metadata map to securityTest
MartinLang1 Nov 19, 2018
b5960a3
Adds limited permissions to the default scanner group
J12934 Nov 19, 2018
8d45c0f
Added a new default group for technical users of CI systems
J12934 Nov 19, 2018
b21b912
Refactored variable names to match their actual use
J12934 Nov 19, 2018
d0c2ca1
removed default parameters, instead added placeholders
Nov 19, 2018
b7728ad
Add poc of auth mechanism
J12934 Nov 19, 2018
1fa2838
removed unnecessary attributes listing at the beginning; added placeh…
Nov 19, 2018
c7c3bf8
Removed unused report service
J12934 Nov 19, 2018
5911e29
Renamed AuthorizationService to Auth Service
J12934 Nov 19, 2018
e4b7cd6
Fixed recursive method call
J12934 Nov 19, 2018
c8f5b72
Set current Camunda user in spring security filter
J12934 Nov 19, 2018
a758a31
Added debug log statements for auth service
J12934 Nov 19, 2018
e14d1ed
Fixed tests by adding metadata to securitytest constructor
MartinLang1 Nov 19, 2018
aedccb1
Changed auth service to throw exceptions instead of returning a bool
J12934 Nov 19, 2018
b2c4c0c
Mocked out auth service during testing
J12934 Nov 19, 2018
2c68755
Replaced star imports
J12934 Nov 19, 2018
a4357a5
Fixed elasticsearch version when run locally using dev profile
MartinLang1 Nov 20, 2018
0081d74
Add metadata to security test when created from process execution
MartinLang1 Nov 20, 2018
4cbbe70
Removed identifiers that are redundant in interfaces
MartinLang1 Nov 20, 2018
4cf65c1
Removed extra camunda authentication context
J12934 Nov 21, 2018
f1f5954
Added tests checking if the permissions are properly checked
J12934 Nov 21, 2018
49fe9ba
Added authentication check for accessing security tests
J12934 Nov 21, 2018
d917e91
Added authorisation check for process definition endpoint
J12934 Nov 21, 2018
519e03f
Reformatted annotations
J12934 Nov 21, 2018
1158a49
Fixed copy and paste error confusing topic and scanner id
J12934 Nov 21, 2018
c0a2685
Added authorisation check for scan job endpoint
J12934 Nov 21, 2018
836a579
Merge pull request #47 from secureCodeBox/feature/rate-limit
MartinLang1 Nov 22, 2018
67b644c
Skip authentication check if authorisation is disabled
J12934 Nov 26, 2018
a9c2cdf
Disable authentication only on selected tests, but keep it enabled by…
J12934 Nov 26, 2018
536cc46
Delete deprecated (and unprotected) endpoint
J12934 Nov 26, 2018
ab1a5b1
Added log of root cause exception for elasticsearch exceptions
J12934 Nov 26, 2018
9af74c0
Added ability to pass in root exception into Persistence and Elastics…
J12934 Nov 26, 2018
159da63
Merge pull request #50 from secureCodeBox/feature/add-metadata
MartinLang1 Nov 28, 2018
d9a22d6
Renamed check method
J12934 Nov 28, 2018
87e047f
Changed status code for unauthenticated requests to 403
J12934 Nov 28, 2018
8d6b185
Replaced star import
J12934 Nov 28, 2018
ba7b532
Introduced custom exception for Insufficient Authorization cases
J12934 Nov 28, 2018
2f9229f
Merge branch 'develop' into feature/api-authorization
J12934 Nov 28, 2018
f32c749
Merge branch 'develop' into feature/api-authorization
J12934 Nov 28, 2018
0633eaf
Merge pull request #48 from secureCodeBox/feature/api-authorization
J12934 Nov 28, 2018
859889c
Correct usage of the replacer rule
rfelber Dec 3, 2018
f8dde0c
Initial commit for defectdojo integration
J12934 Dec 5, 2018
7ebcc19
Defect Dojo now also exports findings via raw defectdojo import
J12934 Dec 5, 2018
5ccf936
Added option to specify product
J12934 Dec 5, 2018
ca0242f
Added parameters to configure defectdojo url and api-key and various …
J12934 Dec 10, 2018
ad326f5
Fixed docker setup for DefectDojo persistence provider
J12934 Dec 12, 2018
00c0e29
Added custom exceptions
J12934 Dec 12, 2018
90f318c
moved nmap profile inside target.attributes to enable api to configur…
MartinLang1 Dec 12, 2018
94b5614
added Engagement details and check for a defectdojo connection
Dec 12, 2018
62bf7a6
Merge remote-tracking branch 'origin/feature/defect-dojo-integration'…
Dec 12, 2018
b7835ec
Merge pull request #51 from secureCodeBox/feature/set-amass-nmap-prof…
MartinLang1 Dec 12, 2018
b40c183
Amass-nmap process: Fixed NPE if nmap profile is not set
MartinLang1 Dec 13, 2018
b2554cc
Merge pull request #52 from secureCodeBox/feature/set-amass-nmap-prof…
MartinLang1 Dec 13, 2018
c8c7643
Refactoring
J12934 Dec 13, 2018
33f2cfc
added FindingWriter and ReportWriter to S3PersistenceProvider
MartinLang1 Dec 18, 2018
c53cd1b
removed test to persist null report
MartinLang1 Dec 18, 2018
5ddef42
Add context to finding
MartinLang1 Dec 18, 2018
a9b644a
Add securityTest information to s3 findings
MartinLang1 Dec 18, 2018
fe0484a
Removed s3 reportWriter. Infos are now added to findingEntry
MartinLang1 Dec 18, 2018
ab2eba9
Added s3 persistenceProvider test
MartinLang1 Dec 18, 2018
e20b368
Minor code cleanup
MartinLang1 Dec 18, 2018
3b63d04
Enabling support for multiple parallel persistence providers
J12934 Dec 19, 2018
1957187
fixed merge conflicts
Dec 19, 2018
4784c76
Reverted accidental replacment
J12934 Dec 19, 2018
c291d97
Might Cause Errors: Added 3 fixed Tool Types and Tool Configuration
Dec 19, 2018
68b16af
Add PROCESS_NAME variable when process is started via camunda ui
MartinLang1 Dec 20, 2018
3a396a1
Merge remote-tracking branch 'origin/feature/defect-dojo-integration'…
Dec 20, 2018
6469dc9
DefectDojo now will contain three fix ToolTypes
Dec 20, 2018
47c13ad
Tool Configurations can be specified
Jan 2, 2019
9cdae2a
Removed sql timestamp libary
J12934 Jan 7, 2019
5df9ad0
Added test to ensure tool types can get created
J12934 Jan 7, 2019
f181830
Refactored the creation of the engagement to the service class and ad…
J12934 Jan 7, 2019
af0e9be
added MetaField enums
Jan 7, 2019
81f9c84
changed charset to enum
Jan 7, 2019
a2b0074
added ProductNotFound Test case
Jan 7, 2019
05ae693
moved createFindings from provider to service
Jan 7, 2019
792b38c
Test fix
Jan 7, 2019
af78c6c
not working test case for create findings
Jan 7, 2019
6031019
Fixed username fetching
J12934 Jan 7, 2019
a45674a
Fixed time of tests to 7.1.2019
J12934 Jan 7, 2019
d1c8f03
Merge branch 'develop' into upgrade-to-camunda-7.9
MartinLang1 Jan 8, 2019
254a477
Removed unneccessary test stubbing (was resulting in test errors)
MartinLang1 Jan 8, 2019
c105894
Fixed matcher in tests
MartinLang1 Jan 8, 2019
7d30536
Merge pull request #54 from secureCodeBox/bugfix/set-process-name
J12934 Jan 8, 2019
1c66de0
added DescriptionGeneratorTest
Jan 9, 2019
3492d26
Added missing import
J12934 Jan 9, 2019
6668957
Remove tempFile after writing to s3 bucket
MartinLang1 Jan 9, 2019
a97e067
Use java 8 for builder image
MartinLang1 Jan 9, 2019
901a007
Merge pull request #53 from secureCodeBox/feature/persist-findings-in…
MartinLang1 Jan 9, 2019
5c9d961
changed connection check for defectdojo
Jan 9, 2019
b1c1629
Use java 8 for builder image
MartinLang1 Jan 9, 2019
0694049
try to fix publishing of docker images
MartinLang1 Jan 9, 2019
f8d5214
Revert "try to fix publishing of docker images"
MartinLang1 Jan 9, 2019
bbaad4c
Added output to docker deploy script
MartinLang1 Jan 9, 2019
ec2fae7
Merge branch 'feature/defect-dojo-integration' of https://github.com/…
Jan 9, 2019
d34de8f
removed accidental code
Jan 9, 2019
e912cb2
Corrected test libraries for combined scan
J12934 Jan 12, 2019
a2b0bde
Upgrade to Camunda 10 and Spring Boot 2.1.1
J12934 Jan 12, 2019
fc02aa2
Updated default user and group ids
J12934 Jan 12, 2019
4a12c9a
DefectDojo import non supported scan Results as Generic Findings
Jan 14, 2019
55e497f
added Test for generic import
Jan 14, 2019
5268f52
minor changes
Jan 14, 2019
7ca8f7b
minor changes
Jan 16, 2019
912e844
productId now provided by product name from 'context'; requestUrls no…
Jan 16, 2019
a8ac279
adjusted Tests
Jan 16, 2019
7b81625
Merge remote-tracking branch 'origin/develop' into bugfix/defect-dojo…
Jan 16, 2019
f4e8683
added optional Metafield for engagementtitle
Jan 16, 2019
f4e2bd4
work in progress
bitofant Jan 18, 2019
bc5c126
fixed connection check issue in test class
Jan 21, 2019
59c4981
fixed descriptiongeneratortest
Jan 21, 2019
8919789
Merge remote-tracking branch 'origin/feature/defect-dojo-integration'…
Jan 21, 2019
73f5d96
Merge remote-tracking branch 'origin/feature/defect-dojo-integration'…
Jan 21, 2019
504ec34
fixed descriptiongeneratortest
Jan 21, 2019
20fe9e8
Extended amass-nmap process to restore original target at end of process
MartinLang1 Jan 21, 2019
60bc316
Fixed deserialization of orignal target. Show original target domain …
MartinLang1 Jan 22, 2019
39da076
wip: visualization of new findings changed
bitofant Jan 22, 2019
6424d61
Use dependency injection instead of assigning variable
MartinLang1 Jan 22, 2019
9513960
Merge pull request #58 from secureCodeBox/feature/restore-original-pr…
MartinLang1 Jan 22, 2019
fe924e3
wip: add configuration for combined process
bitofant Jan 22, 2019
3e28e40
Merge branch 'develop' into feature/nmap-security-headers
bitofant Jan 22, 2019
bc9b241
moved classes to combined nmap/amass scan
bitofant Jan 22, 2019
dd9dfd4
Merge pull request #55 from secureCodeBox/feature/defect-dojo-integra…
J12934 Jan 23, 2019
22e5ed3
Merge remote-tracking branch 'origin/bugfix/defect-dojo-metafields' i…
J12934 Jan 23, 2019
af7205d
Changed naming of config variables to match documentation
J12934 Jan 23, 2019
2b331a2
Removed default config in dev profile for defect-dojo
J12934 Jan 23, 2019
5d039fa
Merge remote-tracking branch 'origin/feature/defect-dojo-generic-impo…
J12934 Jan 23, 2019
170434a
Fixed merge issues
J12934 Jan 23, 2019
36aa383
Removed elk dependenc from defect dojo provider
J12934 Jan 23, 2019
be215f9
Break Tests to see if build stops
MartinLang1 Jan 23, 2019
5fee11e
Batch all generic findings into one single csv to import it into one …
J12934 Jan 23, 2019
ef2139e
Make travis build fail fast on error
MartinLang1 Jan 23, 2019
8dce763
Merge pull request #60 from secureCodeBox/merge/defect-dojo
J12934 Jan 23, 2019
7097f66
Revert "Break Tests to see if build stops"
MartinLang1 Jan 23, 2019
604a62a
Merge pull request #61 from secureCodeBox/feature/immediately-fail-bu…
J12934 Jan 23, 2019
6f6cd13
Fixed custom styling
J12934 Jan 23, 2019
85ccddd
Pinned elastic version
J12934 Jan 23, 2019
446b143
Disabled Process Tests
J12934 Jan 23, 2019
cb0b177
Removed test-process
MartinLang1 Jan 23, 2019
f6892a6
Merge remote-tracking branch 'origin/develop' into upgrade-to-camunda…
J12934 Jan 23, 2019
b499c7e
Merge pull request #62 from secureCodeBox/feature/remove-test-process
J12934 Jan 23, 2019
59e0f58
Updated powermock
J12934 Jan 23, 2019
cbca900
Merge remote-tracking branch 'origin/develop' into upgrade-to-camunda…
J12934 Jan 23, 2019
a7e18a3
Ensured that the DefectDojoService doesn’t get initialised when it is…
J12934 Jan 23, 2019
7704a88
Replaced uuids with strings, as elasticsearch doesn’t support uuids d…
J12934 Jan 23, 2019
b1898be
Replaced another uuid with its string representation
J12934 Jan 23, 2019
88f8498
Ensured that the DefectDojoService doesn’t get initialised when it is…
J12934 Jan 23, 2019
2772ff3
Deleted test-process pom.xml
MartinLang1 Jan 24, 2019
60144f9
Fixed Typo in defectdojo persistence provider
J12934 Jan 24, 2019
7c65c00
fixed bug where findings without script output would be removed
bitofant Jan 25, 2019
aa3654e
Merge branch 'develop' into feature/nmap-security-headers
bitofant Jan 25, 2019
ed9a988
refactoring and bugfix
bitofant Jan 25, 2019
23d79da
Merge pull request #59 from secureCodeBox/feature/nmap-security-headers
bitofant Jan 25, 2019
9ff7ad4
changed defect dojo tool configuration from url to id
MartinLang1 Jan 28, 2019
6005322
added gui option to start nmap with http-headers script
bitofant Jan 28, 2019
61022ab
Merge pull request #63 from secureCodeBox/feature/nmap-http-header-scan
bitofant Jan 28, 2019
e792d12
Changed urls to ids in defectdojo service calls
MartinLang1 Jan 28, 2019
21ab5a4
changed parameter for defect dojo endpoint
MartinLang1 Jan 29, 2019
397d41f
converted long to string before sending it as payload
MartinLang1 Jan 29, 2019
6cfb578
Merge branch 'develop' into upgrade-to-camunda-7.9
J12934 Jan 30, 2019
646a73a
Merge branch 'upgrade-to-camunda-7.9' of github.com:secureCodeBox/eng…
J12934 Jan 30, 2019
378161e
Merge pull request #64 from secureCodeBox/bugfix/fixed-defect-dojo-ge…
MartinLang1 Jan 30, 2019
7387cfa
Add optional property to defect dojo persistence provider
MartinLang1 Jan 30, 2019
24f8c5f
Merge pull request #65 from secureCodeBox/feature/set-defectdojo-as-o…
MartinLang1 Jan 30, 2019
4bdf7c9
Marked combined nmap-amass scan results as nmap.
J12934 Jan 30, 2019
81dd14f
Merge pull request #66 from secureCodeBox/fix/combined-scan-defect-dojo
MartinLang1 Jan 31, 2019
09c351c
Replaced old spring properties
MartinLang1 Jan 31, 2019
ca1e852
Fixed health check
MartinLang1 Jan 31, 2019
6eb2665
Merge remote-tracking branch 'origin/develop' into upgrade-to-camunda…
MartinLang1 Jan 31, 2019
c64d9be
Merge pull request #41 from secureCodeBox/upgrade-to-camunda-7.9
MartinLang1 Jan 31, 2019
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 7 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ cache:
- "$HOME/.m2"
install: true
script:
- set -e
- echo -en "travis_fold:start:Test\r"
- mvn install -Pdependency-check
- echo -en "travis_fold:end:Test\r"
Expand All @@ -17,14 +18,18 @@ script:
- docker build -t $REPO:$TAG --build-arg="BUILD_DATE=$(date --rfc-3339=seconds)" --build-arg=VERSION=$TRAVIS_TAG --build-arg=COMMIT_ID=$TRAVIS_COMMIT --build-arg=BRANCH=$TRAVIS_BRANCH --build-arg=REPOSITORY_URL="https://github.com/secureCodeBox/engine" .
- echo -en "travis_fold:end:Docker_Build\r"
- docker images
- set +e

deploy:
- provider: script
skip_cleanup: true
script: bash .travis/deployDockerHub.sh
on:
all_branches: true
condition: $TRAVIS_PULL_REQUEST = false

before_install:
- openssl aes-256-cbc -K $encrypted_e1e85fb8c151_key -iv $encrypted_e1e85fb8c151_iv
-in .travis/security_at_iteratec-signing.key.enc -out .travis/security_at_iteratec-signing.key -d
- if [ "$TRAVIS_PULL_REQUEST" = "false" ];
then bash -c "openssl aes-256-cbc -K $encrypted_e1e85fb8c151_key -iv $encrypted_e1e85fb8c151_iv
-in .travis/security_at_iteratec-signing.key.enc -out .travis/security_at_iteratec-signing.key -d";
fi
7 changes: 3 additions & 4 deletions .travis/deployDockerHub.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,10 @@ echo "Pushing to Dockerhub"

if [[ $TRAVIS_BRANCH =~ ^develop$ ]]
then
echo "Develop Build: Pushing develop tag"

echo "Develop Build: Tagging develop image"
echo $(docker tag $REPO:$TAG $REPO:develop)
echo $(docker tag $REPO:$TAG $REPO:develop-$TRAVIS_BUILD_NUMBER)

echo "Develop Build: Pushing develop image"
echo $(docker push $REPO:develop)
echo $(docker push $REPO:develop-$TRAVIS_BUILD_NUMBER)
elif [ "$TRAVIS_BRANCH" = "$TRAVIS_TAG" ]
Expand All @@ -23,4 +22,4 @@ then
else
echo "Feature Branch: Pushing only branch Tag"
echo $(docker push $REPO:$TAG)
fi
fi
15 changes: 12 additions & 3 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM maven as builder
FROM maven:3-jdk-8 as builder
COPY . .
RUN mvn clean install -T6 -DskipTests=true -B -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn

Expand All @@ -14,18 +14,27 @@ ARG VERSION
COPY --from=builder ./scb-engine/target/engine-0.0.1-SNAPSHOT.jar /scb-engine/app.jar
COPY --from=builder ./scb-scanprocesses/nikto-process/target/nikto-process-0.0.1-SNAPSHOT.jar /scb-engine/lib/
COPY --from=builder ./scb-scanprocesses/nmap-process/target/nmap-process-0.0.1-SNAPSHOT.jar /scb-engine/lib/
COPY --from=builder ./scb-scanprocesses/test-process/target/test-process-0.0.1-SNAPSHOT.jar /scb-engine/lib/
COPY --from=builder ./scb-scanprocesses/zap-process/target/zap-process-0.0.1-SNAPSHOT.jar /scb-engine/lib/
COPY --from=builder ./scb-scanprocesses/combined-amass-nmap-process/target/combined-amass-nmap-process-0.0.1-SNAPSHOT.jar /scb-engine/lib/
COPY --from=builder ./scb-scanprocesses/combined-nmap-nikto-scanprocess/target/combined-nmap-nikto-scanprocess-0.0.1-SNAPSHOT.jar /scb-engine/lib/
COPY --from=builder ./scb-scanprocesses/sslyze-process/target/sslyze-process-0.0.1-SNAPSHOT.jar /scb-engine/lib/
COPY --from=builder ./scb-scanprocesses/arachni-process/target/arachni-process-1.0-SNAPSHOT.jar /scb-engine/lib/
COPY --from=builder ./scb-scanprocesses/subdomain-scanner-process/target/subdomain-scanner-process-1.0-SNAPSHOT.jar /scb-engine/lib/

COPY --from=builder ./scb-persistenceproviders/elasticsearch-persistenceprovider/target/elasticsearch-persistenceprovider-0.0.1-SNAPSHOT-jar-with-dependencies.jar /scb-engine/lib/
COPY --from=builder ./scb-persistenceproviders/s3-persistenceprovider/target/s3-persistenceprovider-0.0.1-SNAPSHOT-jar-with-dependencies.jar /scb-engine/lib/
COPY --from=builder ./scb-persistenceproviders/defectdojo-persistenceprovider/target/defectdojo-persistenceprovider-0.0.1-SNAPSHOT-jar-with-dependencies.jar /scb-engine/lib/

WORKDIR /scb-engine

COPY dockerfiles/init.sh .
RUN chmod +x ./init.sh

EXPOSE 8080
EXPOSE 8443

RUN apk add --update curl
HEALTHCHECK --interval=30s --timeout=5s --start-period=120s --retries=3 CMD curl --fail http://localhost:8080/status || exit 1

LABEL org.opencontainers.image.title="secureCodeBox Engine" \
org.opencontainers.image.description="Orchestrating various security scans." \
Expand All @@ -39,4 +48,4 @@ LABEL org.opencontainers.image.title="secureCodeBox Engine" \
org.opencontainers.image.revision=$COMMIT_ID \
org.opencontainers.image.created=$BUILD_DATE

ENTRYPOINT ["java", "-Dloader.path=./lib/,./plugins/", "-jar", "app.jar"]
ENTRYPOINT ["./init.sh"]
36 changes: 24 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
![Build Status](https://travis-ci.com/secureCodeBox/engine.svg?token=N5PJUt4SAUxNTYFZNtLj&branch=develop)
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
[![Known Vulnerabilities](https://snyk.io/test/github/secureCodeBox/engine/badge.svg)](https://snyk.io/test/github/secureCodeBox/engine)
[![GitHub release](https://img.shields.io/github/release/secureCodeBox/engine.svg)](https://github.com/secureCodeBox/engine/releases/latest)
[![Build Status](https://travis-ci.com/secureCodeBox/engine.svg?branch=develop)](https://travis-ci.com/secureCodeBox/engine)
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
[![Known Vulnerabilities](https://snyk.io/test/github/secureCodeBox/engine/badge.svg)](https://snyk.io/test/github/secureCodeBox/engine)
[![GitHub release](https://img.shields.io/github/release/secureCodeBox/engine.svg)](https://github.com/secureCodeBox/engine/releases/latest)

# SecureCodeBox Engine – the Core

Expand All @@ -17,12 +17,24 @@ This is the main component of the _secureCodeBox_ it's a [Camunda][camunda] [BPM
# Configuration Options
To configure the SCB engine specify the following environment variables:

| Environment Variable | Description | Example Value |
| ------------------------------------- | ---------------------------------- | --------------------------- |
| SECURECODEBOX_DEFAULT_TARGET_NAME | Default target identifier | BodgeIT Public Host |
| SECURECODEBOX_DEFAULT_TARGET_LOCATION | Default target hostname/ip address | bodgeit |
| SECURECODEBOX_DEFAULT_TARGET_URI | Default target URI/URL | http://bodgeit:8080/bodgeit |
| SECURECODEBOX_DEFAULT_CONTEXT | Default business context | BodgeIT |
| Environment Variable | Description | Example Value |
| ------------------------------------- | ------------------------------------- | --------------------------- |
| SECURECODEBOX_DEFAULT_TARGET_NAME | Default target identifier | BodgeIT Public Host |
| SECURECODEBOX_DEFAULT_TARGET_LOCATION | Default target hostname/ip address | bodgeit |
| SECURECODEBOX_DEFAULT_TARGET_URI | Default target URI/URL | http://bodgeit:8080/bodgeit |
| SECURECODEBOX_DEFAULT_CONTEXT | Default business context | BodgeIT |
| SECURECODEBOX_USER_SCANNER | Default user for scanner services | default-scanner |
| SECURECODEBOX_USER_SCANNER_PW | Default password for scanner services | AStrongPassword-NotThisOne! |

## Server Configuration
Additionally all properties defined in scb-engine/src/main/resources/application.yaml can be overwritten via environment variables.
This allows you to e.g. enable https using:

| Environment Variable | Description | Example Value |
| ------------------------------------- | ------------------------------------- | --------------------------- |
| SERVER_PORT | Defines the server port | 8443 |
| SERVER_SSL_ENABLED | Enables http over ssl | true |
| SERVER_SSL_KEY_STORE_PASSWORD | Password to the java keystore | AStrongPassword-NotThisOne! |

# Development

Expand All @@ -40,9 +52,9 @@ To run the testsuite run:

## Build

To build the docker container run:
To build the docker image run:

`docker build -t CONTAINER_NAME .`
`docker build -t IMAGE_NAME .`

# Guidelines & Standards
Well boring yes - but please read our [guidelines and naming standards][scb-developer-guidelines].
Expand Down
38 changes: 38 additions & 0 deletions dockerfiles/init.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
#!/bin/sh

cd /scb-engine

create_self_signed_certificate()
{
echo "Creating self signed certificate..."
keytool -genkey -alias scb-engine -storetype PKCS12 -keyalg RSA -keysize 2048 -keystore keystore.p12 -validity 3650 \
-dname "CN=secureCodeBoxEngine, OU=secureCodeBox.io, O=secureCodeBox.io, C=DE, ST=HH, L=Hamburg" \
-storepass "${SERVER_SSL_KEY_STORE_PASSWORD}"
}

create_certificate_if_not_available()
{
echo "Check if keystore already exists"
if [ ! -f ./keystore.p12 ]
then
echo "Keystore not found."
create_self_signed_certificate
else
echo "Keystore already exists"
fi
}

echo "Check if HTTPS is enabled..."
if [ "${SERVER_SSL_ENABLED}" == "true" ]
then
echo "Https enabled"
create_certificate_if_not_available
else
echo "No HTTPS enabled. You can use environment variables to enable HTTPS."
fi

# required for using taskrole in aws fargate service, because default its only available for pid 1
export AWS_CONTAINER_CREDENTIALS_RELATIVE_URI

echo "Starting secureCodeBox engine..."
java -Dloader.path="./lib/,./plugins/" -jar ./app.jar
38 changes: 30 additions & 8 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@
</developer>

<developer>
<id>rseedorf</id>
<name>Robert Seedorf</name>
<id>rseedorff</id>
<name>Robert Seedorff</name>
<organization>iteratec GmbH</organization>
<organizationUrl>https://www.iteratec.com</organizationUrl>
</developer>
Expand Down Expand Up @@ -56,12 +56,13 @@
IMPORTANT: camunda.version and camunda.spring.boot.starter.version must be compatible
please see org.camunda.bpm.springboot.project:camunda-bpm-spring-boot-starter-root
-->
<camunda.version>7.8.0</camunda.version>
<camunda.spring.boot.starter.version>2.3.0</camunda.spring.boot.starter.version>
<camunda.version>7.10.0</camunda.version>
<camunda.spring.boot.starter.version>3.2.0</camunda.spring.boot.starter.version>
<!-- END IMPORTANT -->

<spring-boot.version>1.5.13.RELEASE</spring-boot.version>
<spring-boot.version>2.1.1.RELEASE</spring-boot.version>
<swagger-version>2.9.0</swagger-version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>

<modules>
Expand Down Expand Up @@ -97,7 +98,13 @@
<type>pom</type>
</dependency>

<!-- Add camunda spring boot stater classes -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-properties-migrator</artifactId>
<scope>runtime</scope>
</dependency>

<!-- Add camunda spring boot starter classes -->
<dependency>
<groupId>org.camunda.bpm.springboot</groupId>
<artifactId>camunda-bpm-spring-boot-starter</artifactId>
Expand All @@ -117,7 +124,16 @@
<artifactId>camunda-bpm-spring-boot-starter-rest</artifactId>
<version>${camunda.spring.boot.starter.version}</version>
</dependency>

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
<version>${spring-boot.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
<version>${spring-boot.version}</version>
</dependency>
<dependency>
<groupId>org.camunda.bpm.springboot</groupId>
<artifactId>camunda-bpm-spring-boot-starter-test</artifactId>
Expand All @@ -128,7 +144,13 @@
<groupId>org.camunda.bpm.extension.mockito</groupId>
<artifactId>camunda-bpm-mockito</artifactId>
<scope>test</scope>
<version>3.1.0</version>
<version>3.2.1</version>
</dependency>
<dependency>
<groupId>org.camunda.bpm.extension</groupId>
<artifactId>camunda-bpm-assert</artifactId>
<version>1.2</version> <!-- Use 2.0-alpha2 for the CMMN assertions preview! -->
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.camunda.bpm.extension</groupId>
Expand Down
63 changes: 57 additions & 6 deletions scb-engine/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -28,12 +28,13 @@
<groupId>org.camunda.bpm.springboot</groupId>
<artifactId>camunda-bpm-spring-boot-starter-webapp</artifactId>
</dependency>

<!-- Enable the camunda rest API -->
<dependency>
<groupId>org.camunda.bpm.springboot</groupId>
<artifactId>camunda-bpm-spring-boot-starter-rest</artifactId>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-properties-migrator</artifactId>
<scope>runtime</scope>
<version>2.0.2.RELEASE</version>
</dependency>

<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
Expand All @@ -42,6 +43,14 @@
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

<!-- Camunda Spin lib -->
<dependency>
Expand Down Expand Up @@ -69,6 +78,11 @@
<scope>runtime</scope>
</dependency>

<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jdbc</artifactId>
</dependency>

<dependency>
<groupId>io.securecodebox.persistenceproviders</groupId>
<artifactId>empty-persistenceprovider</artifactId>
Expand Down Expand Up @@ -159,13 +173,19 @@
</dependency>
<dependency>
<groupId>io.securecodebox.scanprocesses</groupId>
<artifactId>combined-nmap-nikto-scanprocess</artifactId>
<artifactId>combined-amass-nmap-process</artifactId>
<version>0.0.1-SNAPSHOT</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>io.securecodebox.scanprocesses</groupId>
<artifactId>test-process</artifactId>
<artifactId>subdomain-scanner-process</artifactId>
<version>1.0-SNAPSHOT</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>io.securecodebox.scanprocesses</groupId>
<artifactId>combined-nmap-nikto-scanprocess</artifactId>
<version>0.0.1-SNAPSHOT</version>
<scope>runtime</scope>
</dependency>
Expand All @@ -175,7 +195,38 @@
<version>0.0.1-SNAPSHOT</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>io.securecodebox.persistenceproviders</groupId>
<artifactId>s3-persistenceprovider</artifactId>
<version>0.0.1-SNAPSHOT</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>io.securecodebox.persistenceproviders</groupId>
<artifactId>defectdojo-persistenceprovider</artifactId>
<version>0.0.1-SNAPSHOT</version>
<scope>runtime</scope>
</dependency>
</dependencies>
<dependencyManagement>
<!-- This will overwrite spring boot dependency management version for elastic search-->
<dependencies>
<dependency>
<groupId>org.elasticsearch</groupId>
<artifactId>elasticsearch</artifactId>
<version>6.4.3</version>
</dependency>
</dependencies>
</dependencyManagement>
</profile>
<profile>
<id>test</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<properties>
<activatedProfiles>test</activatedProfiles>
</properties>
</profile>
<profile>
<id>docs</id>
Expand Down
Loading