Excessive 404 Middleware
- class smarter.lib.django.middleware.excessive_404.SmarterBlockExcessive404Middleware(get_response, *args, **kwargs)[source]
Bases:
SmarterMiddlewareMixinMiddleware that throttles unauthenticated clients producing excessive 404s.
This mitigates: - automated scanners - brute-force URL probing - broken crawlers - vulnerability enumeration attempts
- async async_process_response(request, response)[source]
Async entry point for ASGI deployments.
- Return type:
- property formatted_class_name: str
str(object=’’) -> str str(bytes_or_buffer[, encoding[, errors]]) -> str
Create a new string object from the given object. If encoding or errors is specified, then the object must expose a data buffer that will be decoded using the given encoding and error handler. Otherwise, returns the result of object.__str__() (if defined) or repr(object). encoding defaults to ‘utf-8’. errors defaults to ‘strict’.
- is_ignored_path(path)[source]
Determine whether 404s on this path should never count toward the throttle.
- log_404_event(request, client_ip, blocked_count)[source]
Sample logs to reduce spam during bot scans.
- Return type: