Commit 3f0fe30
committed
fix(security): URL-encode CLI query parameters to prevent CWE-74 injection
cli_audit.py and cli_leaderboard.py built query strings by
string-interpolating user-supplied CLI args directly into URLs
(e.g. f'agent={args.agent}'). A value like 'foo&admin=true' would
inject extra query parameters into the HTTP request.
Replace manual string concatenation with urllib.parse.urlencode()
which properly percent-encodes all parameter values.1 parent cbe0f38 commit 3f0fe30
2 files changed
Lines changed: 22 additions & 16 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
166 | 166 | | |
167 | 167 | | |
168 | 168 | | |
| 169 | + | |
169 | 170 | | |
170 | 171 | | |
171 | 172 | | |
| |||
178 | 179 | | |
179 | 180 | | |
180 | 181 | | |
181 | | - | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
182 | 185 | | |
183 | | - | |
| 186 | + | |
184 | 187 | | |
185 | | - | |
| 188 | + | |
186 | 189 | | |
187 | | - | |
| 190 | + | |
188 | 191 | | |
189 | | - | |
| 192 | + | |
190 | 193 | | |
191 | | - | |
| 194 | + | |
192 | 195 | | |
193 | | - | |
| 196 | + | |
194 | 197 | | |
195 | | - | |
| 198 | + | |
196 | 199 | | |
197 | | - | |
| 200 | + | |
198 | 201 | | |
199 | 202 | | |
200 | 203 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
39 | 39 | | |
40 | 40 | | |
41 | 41 | | |
| 42 | + | |
42 | 43 | | |
43 | 44 | | |
44 | | - | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
45 | 48 | | |
46 | | - | |
| 49 | + | |
47 | 50 | | |
48 | | - | |
| 51 | + | |
49 | 52 | | |
50 | | - | |
| 53 | + | |
51 | 54 | | |
52 | | - | |
| 55 | + | |
53 | 56 | | |
54 | | - | |
| 57 | + | |
55 | 58 | | |
56 | | - | |
| 59 | + | |
57 | 60 | | |
58 | 61 | | |
59 | 62 | | |
| |||
0 commit comments