Angular

1. Identify Angular Application:

- [ ] Confirm target uses Angular (or similar SPA framework).
    - [ ] Check for `angular.json`, `.component.ts` files in DevTools "Sources".
    - [ ] Look for `ng-app`, `ng-controller` HTML attributes.
    - [ ] Use browser extension (e.g., Angular Augury) for detection.

2. Recon Client-Side Routes & APIs:

- [ ] Explore Angular app views, routes, functionalities.
- [ ] Identify API endpoints in DevTools "Network" tab.

3. JavaScript Code Analysis (DevTools "Sources" Tab):

- [ ] Examine Angular JavaScript code for DOM XSS & client-side flaws.
- ** Search for JavaScript "Sink" Functions (DOM XSS):**
    - [ ] Search for `innerHTML` in JavaScript code.
    - [ ] Search for `outerHTML` in JavaScript code.
    - [ ] Search for `document.write` in JavaScript code.
    - [ ] Search for `document.location` in JavaScript code.
    - [ ] Search for `element.insertAdjacentHTML` in JavaScript code.
    - [ ] Search for `eval` in JavaScript code.
    - [ ] Search for `Function()` in JavaScript code (constructor).
    - [ ] Search for `setTimeout()` with string argument in JavaScript code.
    - [ ] Search for `setInterval()` with string argument in JavaScript code.
- [ ] **For each "sink" found, trace data flow:**
    - [ ] Is user-controlled data (URL params, hash, DOM, etc.) flowing to the sink?
    - [ ] Is the data sanitized before reaching the sink?
- [ ] Analyze Angular Component Logic for client-side security flaws.

4. Test for DOM XSS:

5. Test Client-Side Logic Flaws:

6. Test Backend APIs:

7. Report Angular Vulnerabilities:

Last updated