Repository navigation
Commit 3e888e4
committed
Check every reasoning claim before filing it, and write it up for the developer
The finding page never showed a finding's description, only its title, so
a reasoning finding read as a title and nothing else. It now shows what was
found. Code reasoning writes each finding up for the developer: what it is,
who can reach it, how it would be exploited, the impact, how to fix it and
what to confirm. The write-up is cached with the answer, so forks, branches
and later scans reuse it.
Every claim, not only high ones, must now survive a second look that tries to
prove it wrong. It sees the helpers the handler calls, where the permissions
and roles it checks are granted elsewhere in the repository, and the names of
access checks it was not shown. Only a claim it confirms is filed. None of
that extra context is part of the cache key, so unchanged code is not asked
about again. Check them again on the AI page gives findings filed before this
the same look: confirmed ones get the write-up, guarded and unconfirmed ones
are set aside with the reason, never closed, and nothing is checked twice.
Curated web checks gain an anonymous flag, and the 149 that say something is
exposed now send no session, so a signed in scan no longer reports a page open
only to its own account as open to anybody. A policy test keeps new exposure
checks the same. Two checks are added: a SCIM user directory that answers
without credentials, and an OpenAPI or Swagger description served to anyone.1 parent 1644789 commit 3e888e4
160 files changed
Lines changed: 657 additions & 17 deletions
File tree
- app
- core
- dast_checks
- curated
- web
- static
- templates
- documentation
- schema
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Large diffs are not rendered by default.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| 6 | + | |
6 | 7 | | |
7 | 8 | | |
8 | 9 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| 6 | + | |
6 | 7 | | |
7 | 8 | | |
8 | 9 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| 6 | + | |
6 | 7 | | |
7 | 8 | | |
8 | 9 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| 6 | + | |
6 | 7 | | |
7 | 8 | | |
8 | 9 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| 6 | + | |
6 | 7 | | |
7 | 8 | | |
8 | 9 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| 6 | + | |
6 | 7 | | |
7 | 8 | | |
8 | 9 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| 6 | + | |
6 | 7 | | |
7 | 8 | | |
8 | 9 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| 6 | + | |
6 | 7 | | |
7 | 8 | | |
8 | 9 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| 6 | + | |
6 | 7 | | |
7 | 8 | | |
8 | 9 | | |
| |||
0 commit comments