dgryski.semgrep-go.hmac-hash.hmac-needs-new

profile photo of dgryskidgryski
Author
581
Download Count*
License

calling hmac.New with unchanging hash.New

Run Locally

Run in CI

Defintion

rules:
  - id: hmac-needs-new
    patterns:
      - pattern-either:
          - pattern: |
              $H := $HASH.New()
              ...
              $FUNC := func() hash.Hash { return $H }
              ...
              hmac.New($FUNC, ...)
          - pattern: |
              $H := $HASH.New()
              ...
              hmac.New(func() hash.Hash { return $H }, ...)
          - pattern: |
              hmac.New(func() hash.Hash { return ( $H : hash.Hash) }, ...)
    message: calling hmac.New with unchanging hash.New
    languages:
      - go
    severity: ERROR
    metadata:
      license: MIT