Repository navigation
Commit 2948788
committed
Keep the web scanner out of a store's endless link spaces
Wapiti's crawler was spending its whole four hour budget on one site because an
online store builds a fresh URL for the same product on every page it appears
on: the add to cart link carries an encoded copy of the page you came from, the
review form has an address per product, and the login link carries a referer
the same way. A populated catalog turns that into thousands of near identical
links the crawler never reaches the end of, so it ran to its hard limit while
the same scan on a site without the catalog loaded finished in minutes.
The engine now tells wapiti to skip those spaces, and the add to cart, review
post, login referer, logout, section load, wishlist and product compare paths,
by passing each as an excluded address rooted at the target. A discovered path
that lands in one of them is also dropped before it is handed back as a place to
start crawling. None of these is real attack surface and every ordinary page is
still crawled, so coverage is unchanged while a big store now finishes in the
same minutes as a small one. A site that is not a store serves none of these
paths, so the exclusions match nothing and are safe to send every time.1 parent ca34633 commit 2948788
1 file changed
Lines changed: 50 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
263 | 263 | | |
264 | 264 | | |
265 | 265 | | |
| 266 | + | |
| 267 | + | |
| 268 | + | |
| 269 | + | |
| 270 | + | |
266 | 271 | | |
267 | | - | |
268 | | - | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
269 | 280 | | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
270 | 284 | | |
271 | 285 | | |
272 | 286 | | |
| |||
310 | 324 | | |
311 | 325 | | |
312 | 326 | | |
| 327 | + | |
| 328 | + | |
| 329 | + | |
| 330 | + | |
| 331 | + | |
| 332 | + | |
| 333 | + | |
| 334 | + | |
| 335 | + | |
| 336 | + | |
| 337 | + | |
| 338 | + | |
| 339 | + | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
| 344 | + | |
| 345 | + | |
| 346 | + | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
| 350 | + | |
| 351 | + | |
| 352 | + | |
| 353 | + | |
| 354 | + | |
| 355 | + | |
| 356 | + | |
| 357 | + | |
| 358 | + | |
| 359 | + | |
| 360 | + | |
313 | 361 | | |
314 | 362 | | |
315 | 363 | | |
| |||
0 commit comments