id: npm-access-token

info:
  name: NPM Access Token (fine-grained)
  author: DhiyaneshDK
  severity: info
  reference:
    - https://github.com/praetorian-inc/noseyparker/blob/main/data/default/rules/npm.yml
    - https://docs.npmjs.com/about-access-tokens
    - https://github.com/github/roadmap/issues/557
    - https://github.blog/changelog/2022-12-06-limit-scope-of-npm-tokens-with-the-new-granular-access-tokens/
  metadata:
    verified: true
    max-request: 1
  tags: npm,token,exposure

http:
  - method: GET
    path:
      - "{{BaseURL}}"

    extractors:
      - type: regex
        part: body
        regex:
          - "(npm_[A-Za-z0-9]{36})"

# digest: 4a0a00473045022100ec76fd6eebcac6830ced6391dfe3dda8bff4e2a83d5c159bd5d3d0dca0d294fb022004b53a075f434b82f7649bedd17bdaaa9ffa7e50dd267794b315ed77570b678f:922c64590222798bb761d5b6d8e72950
