class documentation

A mixin that runs HTTP method injection tests. Define MethodInjectionTestsMixin.attemptRequestWithMaliciousMethod in a twisted.trial.unittest.SynchronousTestCase subclass to test how HTTP client code behaves when presented with malicious HTTP methods.

See Also
CVE-2019-12387
Method attemptRequestWithMaliciousMethod Attempt to send a request with the given method. This should synchronously raise a ValueError if either is invalid.
Method test_methodWithCLRFRejected Issuing a request with a method that contains a carriage return and line feed fails with a ValueError.
Method test_methodWithNonASCIIRejected Issuing a request with a method that contains non-ASCII characters fails with a ValueError.
Method test_methodWithUnprintableASCIIRejected Issuing a request with a method that contains unprintable ASCII characters fails with a ValueError.
def attemptRequestWithMaliciousMethod(self, method): (source)

Attempt to send a request with the given method. This should synchronously raise a ValueError if either is invalid.

Parameters
method:the method (e.g. GET)
urithe URI
def test_methodWithCLRFRejected(self): (source)

Issuing a request with a method that contains a carriage return and line feed fails with a ValueError.

def test_methodWithNonASCIIRejected(self): (source)

Issuing a request with a method that contains non-ASCII characters fails with a ValueError.

def test_methodWithUnprintableASCIIRejected(self): (source)

Issuing a request with a method that contains unprintable ASCII characters fails with a ValueError.