-
-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Update Cryptographic Language (e.g. "weak") #3199
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from 74 commits
Commits
Show all changes
127 commits
Select commit
Hold shift + click to select a range
0a77745
Specify the uniquness requirement as defined by NIST
sydseter b3d1875
Update with chapter number
sydseter 5cbf042
Add recommendations for symmetric encryption and methods for signatur…
sydseter 1819fb9
Update recommendation in regards to where to look for future advice o…
sydseter a0679c1
Update advice regarding post-quantum
sydseter c01ad28
Add
sydseter 370316f
Update recommendation according to what is recommended for key genera…
sydseter 0fde774
Add the possibility of CCM Mode
sydseter 3cd8157
Correct spelling error
sydseter 35f2bdc
correct grammer
sydseter 21b5548
Move recommendation onto a separate line.
sydseter 8c8ee08
Correct spelling error
sydseter e142294
Update reference
sydseter 92cdb6c
Update references
sydseter 4ac0e65
Correct spelling
sydseter edae473
correct spelling error
sydseter 6995427
correct spelling error
sydseter b8cd799
Update references
sydseter 0f7ec63
Remove whitespace
sydseter 7f0adb1
correct spelling errors
sydseter eaef51f
Correct spelling
sydseter aa6bcaf
Correct grammar
sydseter 6251ea2
Improve language
sydseter fc3765a
shorten title
sydseter 0711429
Cleanup headlines
sydseter 99d63de
Adding text to MASWE 0010, 0021, 0024, 0025 and replacing the word we…
sydseter e4c1996
Correct spelling and formating
sydseter 740c1c1
grammer correction
sydseter f2f5aef
Correct link
sydseter b49b30d
Replace links with identical sources hosted from other locations
sydseter fa059a3
Use improper, short, insufficient and predictable instead of weak
sydseter 5164513
Update tests-beta/android/MASVS-CRYPTO/MASTG-TEST-0208.md
sydseter 2b3ce85
Update tests-beta/android/MASVS-CRYPTO/MASTG-TEST-0221.md
sydseter 34d98ea
Exchange predictable with risky or broken
sydseter 5ace337
Change to upper case
sydseter 5492f30
Use risky or broken.
sydseter 91d839a
Update weaknesses/MASVS-CRYPTO/MASWE-0019.md
sydseter 05590a9
Update weaknesses/MASVS-CRYPTO/MASWE-0020.md
sydseter 59e271b
replace weak with deprecated
sydseter 8c7a5b7
Update weaknesses/MASVS-CRYPTO/MASWE-0024.md
sydseter 31dae7f
Minor corrections to improve language.
sydseter 910b0e1
Update MASWE-0024.md
sydseter 83db34d
Update MASWE-0024.md
sydseter bc6b470
Update MASWE-0024.md
sydseter 6a29aae
Apply suggestions from code review
sydseter 749c3a9
Update weaknesses/MASVS-CRYPTO/MASWE-0025.md
sydseter 5a523e6
Apply suggestions from code review
sydseter e87add9
Update MASWE-0025.md
sydseter 4985c62
correct spelling
sydseter 589aef4
Update Document/0x04g-Testing-Cryptography.md
sydseter 6a3d02b
Update Document/0x04g-Testing-Cryptography.md
sydseter 92c7f3b
Update Document/0x04g-Testing-Cryptography.md
sydseter 07c2f6c
Update Document/0x04g-Testing-Cryptography.md
sydseter ce405a5
Align the DEMOs with the wording used elsewhere.
sydseter 83b5bbf
Align the tests with the wording used elsewhere.
sydseter f2c0c6e
Add glossary.
sydseter 0bff504
clarify term
sydseter 53ba03b
Create subsections for Glossary.
sydseter b7f8fc6
Correct spelling erros
sydseter 5aa2699
Correct link
sydseter 3761c04
Change link
sydseter e636afd
Resolve conflict
sydseter 73de8c2
Fixed issues from the linter.
sydseter 94a0032
Merge branch 'master' into cryptography
sydseter 622f12b
Fix linting
sydseter 8d6a317
Update risk and risky definition.
sydseter 4e7caae
correct grammer
sydseter 6994a09
correct spelling error
sydseter e02f9f5
correct spelling
sydseter 6d5d7d8
tone change in the definition of risky
sydseter b8e5225
spelling corrections
sydseter d09e1c8
Merge branch 'master' into cryptography
sydseter ddf7c65
Merge branch 'master' into cryptography
sydseter c43af0e
Merge branch 'cryptography' of https://github.com/sydseter/owasp-mast…
sydseter e03a286
Merge branch 'master' into cryptography
sydseter cccdb72
Add two urls to the ignore config because the server suspect the url …
sydseter bbb7183
Apply suggestions from code review
cpholguera 6698e09
Apply suggestions from code review
cpholguera dab97da
Apply suggestions from code review
cpholguera e3d9d83
Merge branch 'master' of https://github.com/OWASP/owasp-mastg into pr…
cpholguera 65b8dfa
Fix typos and improve clarity in cryptography chapter
cpholguera 35c2aec
Update Document/0x05d-Testing-Data-Storage.md
cpholguera 10012ae
Update Document/0x08c-Glossary.md
sydseter 0bd1418
Update demos/android/MASVS-CRYPTO/MASTG-DEMO-0022/MastgTest.kt
sydseter 53d9b2d
Removed quotes.
sydseter e9c5362
Add KDF to the glossary
sydseter 94da712
Simplify example
sydseter e675b9c
Simplify language
sydseter cad8981
Update weaknesses/MASVS-CRYPTO/MASWE-0010.md
sydseter f3497a8
Lint corrections
sydseter 6f322e9
Merge branch 'cryptography' of https://github.com/sydseter/owasp-mast…
sydseter 7e2f57f
Add more terms to the glossary
sydseter 384f6af
Fix build
sydseter ee8f342
Update 0x08c-Glossary.md
sydseter a6efdb7
Update MASWE-0010.md
sydseter 3638bf6
Update MASWE-0010.md
sydseter 0898910
rm new content that should go into new PRs
cpholguera 9e569ee
Revert status in MASWE-0021 from draft to placeholder and rm cwe link…
cpholguera 27283b0
Revert status in MASWE-0024 from draft to placeholder
cpholguera 010fa9f
Revert status in MASWE-0025 from draft to placeholder
cpholguera 230d5a6
rm glossary which will be added separately
cpholguera 4d8cde4
fix run.sh output redirection for semgrep command
cpholguera ddee2d8
Update weaknesses/MASVS-CRYPTO/MASWE-0009.md
sydseter d00d9f2
Update weaknesses/MASVS-CRYPTO/MASWE-0009.md
sydseter 43e13dd
Update weaknesses/MASVS-CRYPTO/MASWE-0009.md
sydseter 4c8ff30
Update weaknesses/MASVS-CRYPTO/MASWE-0009.md
sydseter 0718d36
Update weaknesses/MASVS-CRYPTO/MASWE-0009.md
sydseter 1d55c28
Update Document/0x04g-Testing-Cryptography.md
sydseter 8e2bbab
Update Document/0x04g-Testing-Cryptography.md
sydseter 203e04d
Update Document/0x04g-Testing-Cryptography.md
sydseter 446a76d
Update Document/0x04g-Testing-Cryptography.md
sydseter 28e48dd
Create .lycheeignore
sydseter dcf36f9
Delete .lycheeignore
sydseter e245e66
Ignore false positive
sydseter 9815f0b
Update .markdownlinkcheck.json
sydseter b21f2e8
Apply suggestions from code review
cpholguera ab4cee0
Apply suggestions from code review
cpholguera f357e7c
Clarify language in MASWE-0027.md regarding PRNG predictability and u…
cpholguera 7a80269
Apply suggestions from code review
cpholguera 7438ff5
Merge branch 'cryptography' of https://github.com/sydseter/owasp-mast…
cpholguera 0cef212
fix rules names
cpholguera 1a622cd
restore section Improper Key Derivation Functions
cpholguera c8318a4
Enhance guidance on random number generation in mobile apps, emphasiz…
cpholguera 1311ed8
fix lint issue
cpholguera 1c3819b
Merge branch 'master' of https://github.com/OWASP/owasp-mastg into pr…
cpholguera f00ec84
update semgrep outputs
cpholguera 4c00213
Fix term in MASWE-0052
cpholguera File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
cpholguera marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,38 @@ | ||
| --- | ||
| hide: toc | ||
| title: Glossary | ||
| --- | ||
|
|
||
| ## Cryptographic Terms | ||
|
|
||
| ### Broken | ||
|
|
||
| The meaning depends on the context. | ||
|
|
||
| A "broken" cryptographic hash algorithm is a function that is denounced as "broken" because a collision attack exist that is faster to execute then a birthday attack ([Wikipedia, "2025.02.19"](https://en.wikipedia.org/wiki/Collision_attack "Collision attack")). | ||
|
|
||
| An encryption mode of operation is "broken" if it, when implemented correctly, still faces the risk from known attacks that can "break" the confidentiality of the encrypted data. | ||
sydseter marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
||
| ### Deprecated | ||
|
|
||
| When mentioned as a cryptographic term it means a mode of operation, algorithm or cryptographic function that no longer is recommended to be used for certain cryptographic operations. The function may still be recommended for certain cryptographic operations even when deprecated. | ||
cpholguera marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
||
| ### Improper | ||
|
|
||
| Used as a catch-all term to cover security behaviors that are either "Missing" or "Insufficient/Incorrect." | ||
cpholguera marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
||
| ### Insufficient | ||
|
|
||
| According to MITRE. A general term used to describe when a security property or behavior can vary in strength on a continuous or sliding scale, instead of a discrete scale. The continuous scale may vary depending on the context and risk tolerance. For example, the requirements for randomness may vary between a random selection for a greeting message versus the generation of a military-strength key. On the other hand, a weakness that allows a buffer overflow is always incorrect - there is not a sliding scale that varies across contexts ([MITRE, "2024.07.07"](https://cwe.mitre.org/documents/glossary/index.html#Insufficient "Glossary")). | ||
cpholguera marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
||
| ### Risk | ||
|
|
||
| Reference to risk uses the ISO 3000 definition: Risk = "effect of uncertainty on objectives." | ||
cpholguera marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
||
| ### Risky | ||
|
|
||
| A "risky" cryptographic hash algorithm carries with it an effect of uncertainty on the objectives that the specific algorithm must satisfy. The algorithm is therefore said to be "risky" when used under certain circumstances, and because of that, carries with it the risk of being compromised in an attack when used improperly. The same can be considered when referring to a "risky" encryption mode of operation. | ||
sydseter marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
||
| ### Strength | ||
|
|
||
| According to NIST. A number associated with the amount of work (that is, the number of operations) that is required to break a cryptographic algorithm or system. If 2N execution operations of the algorithm (or system) are required to break the cryptographic algorithm, then the security strength is N bits ([NIST, security strength](https://csrc.nist.gov/glossary/term/security_strength "security strength")). | ||
sydseter marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1 +1 @@ | ||
| NO_COLOR=true semgrep -c ../../../../rules/mastg-android-weak-key-generation.yml ./MastgTest_reversed.java --text -o output.txt | ||
| NO_COLOR=true semgrep -c ../../../../rules/mastg-android-key-generation-with-insufficient-key-length.yml ./MastgTest_reversed.java --text -o output.txt |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
cpholguera marked this conversation as resolved.
Show resolved
Hide resolved
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1 +1 @@ | ||
| NO_COLOR=true semgrep -c ../../../../rules/mastg-android-weak-encryption-algorithms.yaml ./MastgTest_reversed.java --text > output.txt | ||
| NO_COLOR=true semgrep -c ../../../../rules/mastg-android-risky-encryption-algorithms.yaml ./MastgTest_reversed.java --text > output.txt | ||
cpholguera marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
8 changes: 4 additions & 4 deletions
8
demos/android/MASVS-CRYPTO/MASTG-DEMO-0023/MASTG-DEMO-0023.md
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
cpholguera marked this conversation as resolved.
Show resolved
Hide resolved
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1 +1 @@ | ||
| NO_COLOR=true semgrep -c ../../../../rules/mastg-android-weak-encryption-modes.yaml ./MastgTest_reversed.java --text > output.txt | ||
| NO_COLOR=true semgrep -c ../../../../rules/mastg-android-risky-encryption-modes.yaml ./MastgTest_reversed.java --text > output.txt | ||
cpholguera marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.