Skip to content

Conversation

@sampion2001
Copy link

I have added 2 semgrep rules for detecting weak encryption, specifically DES encryption algorithm and RSA algorithm with a short key (less than 2048 bits). Each rule is in a separate file.

Copy link
Collaborator

@mobbjon mobbjon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, looks good, a few comments inside and in general we also add test files to the rules with examples of the vulnerable code and examples of how to do the same thing in a non-vulnerable way. Can you please add them?

- https://docs.microsoft.com/en-us/security/sdl/cryptographic-recommendations
patterns:
- pattern: |
$K = $C.getInstance("$RE");
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we change this to something like:

  • pattern-inside: |
    $K = $C.getInstance("$RE");
    ...
  • pattern: $K.initialize($BITS);
  • fix: $K.initialize(2048);

and this way we can have an auto-fix as well?

@@ -0,0 +1,25 @@
- id: java-use-of-des-encryption-algorithm
message: |
DES is a weak algorithm that has known attacks and can be broken. Consider using a secure algorithm such as AES.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it possible to add an auto-fix for this rule? Not sure how the fix should look like so it is hard to say..

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants