...
Cloak |
---|
The project must implement secure design principles (from 'know secure design'). For example, the project results should have fail-safe defaults (access decisions should deny by default, and projects' installation should be secure by default). They should also have complete mediation (every access that might be limited must be checked for authority and be non-bypassable). Note that in some cases principles will conflict, in which case a choice must be made (e.g., many mechanisms can make things more complex, contravening 'economy of mechanism' / keep it simple). Implement secure design builds on the question above of "know secure design". For ONAP, the committers must all know the secure design principles and reviewing the code must always includes looking at it from the point of review of the security principles. It's crucial to document the secure design practices and software design/coding standards and code review. This NIST SSDF document provides additional details: [implement_secure_design S] |
Your Answer-Please Explain | SECCOM Feedback / Recommendations |
---|---|
Yes - the PF team/PTL/committers review and look for security issues and recommend fixes before merging. | ?
|
Know Common Errors
Do the committers and PTL understand commonly found errors (and how to counter or mitigate them)? Do they apply these principles when reviewing software for merging?
...
Your Answer-Please Describe | SECCOM Feedback / Recommendations |
---|---|
All the resources that can be accessed in PF require authentication | ❌
|
Assurance Case
Does your project actually meet its documented security requirements?
...
...
Your Answer-Please Explain | SECCOM Feedback / Recommendations |
---|---|
We try to keep up to date on fixing vulnerabilities reported on IQ Nexus, except when dependency updates break the current code and a study is necessary to mitigate functionalities not working. | ? And sonar cloud?
policy-pap has a high severity security item reported in sonarcloud for >1 year
|
Non-Cryptographic Software Questions
...
Your Answer-Please Explain | SECCOM Feedback / Recommendations |
---|---|
No UI No encryption, as data processed by PF hasn't been tagged as sensitive. The application uses Swagger for RESTful API, wherein it is set that Authorization headers are required for accessing API documentation. When PF runs with docker, the services use usernames and passwords that are stored as environment variables. For helm deployments PF uses K8s secrets which are generated and stored as the application is deployed. | ?
|
Cryptographic-specific Software Questions
...
Your Answers-Please Explain | SECCOM Feedback / Recommendations |
---|---|
UUID random keys | ? How are UUIDs generated? (There are many bad ways.)
|
Crypto Weaknesses
Does your software depend on any cryptographic algorithms or modes that have known serious weaknesses?
...
Cloak |
---|
The default security mechanisms within the software produced by the project SHOULD NOT depend on cryptographic algorithms or modes with known serious weaknesses (e.g., the SHA-1 cryptographic hash algorithms, or the CBC mode in SSH). [crypto_weaknesses PS] |
Your Answer-Please Explain | SECCOM Feedback / Recommendations |
---|
Depends of user managing crypto their own passwords - passwords are configurable |
in application. |
When PF runs with docker, the services use usernames and passwords that are stored as environment variables.
For helm deployments PF uses K8s secrets which are generated and stored as the application is deployedyaml for Spring applications (api, pap and acm) and .json configuration files for others. The credentials provided in these files are used for authentication (no authorization dealt in any of PF components) to use any of the REST APIs provided by PF. | ? Please expand on the use of configurable usernames+passwords and what they allow. |
Crypto Working
Does your software depend on any cryptographic algorithms that are known to be broken?
...
Your Answer-Please Explain | SECCOM Feedback / Recommendations |
---|---|
Usernames and passwords are configurable by the clients via passing the environment variables for use in application.yml file. When PF runs with docker, the services use username and passwords that are stored as environment variables. For helm deployments, PF uses K8s secrets which are generated and stored as the application is deployedUUID generator is being used, but for IDs, not for security concers. | ❌ Doesn't answer the question |
...
Your Answers-Please Explain | SECCOM Feedback / Recommendations |
---|---|
No keys being generated for use and in OOM, PF is part of service mesh to connect to other services. UUID generated (using java native way) are for identifiers. | ❌ Doesn't answer the question |
...
Your Answers-Please Explain | SECCOM Feedback / Recommendations |
---|---|
K8s secrets that are generated and stored as apps are deployed. ACM-Runtime use java.UUID mechanism for generating unique No crypto is being used, aside from UUID generated (using java native way), which are used for identifiers. | ❌ Doesn't answer the question |
...
Your Answers-Please Explain | SECCOM Feedback / Recommendations |
---|---|
Usernames and passwords are configurable by the clients via passing the environment variables for use in application.yml file. When PF runs with docker, the services use username and passwords that are stored as environment variables. For helm deployments, PF uses K8s secrets which are generated and stored as the application is deployedPasswords are in configuration files, can be replaced without code recompilation, but requires application restart. | ❌ Doesn't answer the question |
...
Your Answers-Please Explain | SECCOM Feedback / Recommendations |
---|---|
PF only communicates with components within ONAP. PF's primary communication is through HTTP. PF uses Kafka or REST api interfaces between PF components and service mesh for other communications. | ? is HTTP protected by mesh and HTTPS?
|
Crypto Verification Private
...
Your Answers-Please Explain | SECCOM Feedback / Recommendations |
---|---|
PF is compliant and compatible with the ongoing service mesh implementation (https://gerrit.onap.org/r/c/oom/+/128543) for ONAP. | ❌ Doesn't answer the question
|