tempesta-tech / tempesta-test

Test suite for Tempesta FW
10 stars 4 forks source link

blinking tests with -T 1 option #450

Open RomanBelozerov opened 1 year ago

RomanBelozerov commented 1 year ago

tests fails on CI:

DBG for ` t_wrong_body_length.test_response_wrong_length.ResponseDecimalBodyLength` ```python START TEST: t_wrong_body_length.test_response_wrong_length.ResponseDecimalBodyLength.test setUp Run command 'date +%s.%N' on host localhost with environment {} Deproxy: Server: Start on 127.0.0.1:8000. Run command 'netstat --inet -apn' on host localhost with environment {} Listen ['tcp', '0', '0', '127.0.0.1:43311', '0.0.0.0:*', 'LISTEN', '809/containerd'] Listen ['tcp', '0', '0', '127.0.0.1:53', '0.0.0.0:*', 'LISTEN', '853/dnsmasq'] Listen ['tcp', '0', '0', '192.168.50.117:53', '0.0.0.0:*', 'LISTEN', '853/dnsmasq'] Listen ['tcp', '0', '0', '127.0.0.53:53', '0.0.0.0:*', 'LISTEN', '614/systemd-resolve'] Listen ['tcp', '0', '0', '0.0.0.0:22', '0.0.0.0:*', 'LISTEN', '838/sshd:', '/usr/sbin'] Run command 'date +%s.%N' on host localhost with environment {} Run command 'sysctl net.core.message_cost' on host localhost with environment {} Run command 'sysctl -w net.core.message_cost=0' on host localhost with environment {} Starting TempestaFW on localhost Run command '/root/tempesta/scripts/tempesta.sh --start' on host localhost with environment {'TFW_CFG_PATH': '/tmp/tempesta/tempesta.conf', 'TFW_CFG_TMPL': '/tmp/tempesta/tempesta_tmp.conf'} Run command 'journalctl -k -o cat --since=@1683097783.876762' on host localhost with environment {} Run command 'journalctl -k -o cat --since=@1683097783.876762' on host localhost with environment {} Run command 'sysctl -w net.core.message_cost=5 ' on host localhost with environment {} Starting deproxy client Deproxy: Client: Connect to 127.0.0.1:80. Running deproxy Running deproxy server manager Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Request parsing has been disabled. Deproxy: Client: Send request to Tempesta. GET / HTTP/1.1 Host: localhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. ET / HTTP/1.1 Host: localhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. T / HTTP/1.1 Host: localhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. / HTTP/1.1 Host: localhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. / HTTP/1.1 Host: localhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. HTTP/1.1 Host: localhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. HTTP/1.1 Host: localhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. TTP/1.1 Host: localhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. TP/1.1 Host: localhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. P/1.1 Host: localhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. /1.1 Host: localhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. 1.1 Host: localhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. .1 Host: localhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. 1 Host: localhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. Host: localhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. Host: localhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. Host: localhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. ost: localhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. st: localhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. t: localhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. : localhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. localhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. localhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. ocalhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. calhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. alhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. lhost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. host Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. ost Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. st Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. t Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. Connection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. onnection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. nnection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. nection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. ection: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. ction: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. tion: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. ion: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. on: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. n: keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. : keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. keep-alive Accept: */* Deproxy: Client: Send request to Tempesta. eep-alive Accept: */* Deproxy: Client: Send request to Tempesta. ep-alive Accept: */* Deproxy: Client: Send request to Tempesta. p-alive Accept: */* Deproxy: Client: Send request to Tempesta. -alive Accept: */* Deproxy: Client: Send request to Tempesta. alive Accept: */* Deproxy: Client: Send request to Tempesta. live Accept: */* Deproxy: Client: Send request to Tempesta. ive Accept: */* Deproxy: Client: Send request to Tempesta. ve Accept: */* Deproxy: Client: Send request to Tempesta. e Accept: */* Deproxy: Client: Send request to Tempesta. Accept: */* Deproxy: Client: Send request to Tempesta. Accept: */* Deproxy: Client: Send request to Tempesta. Accept: */* Deproxy: Client: Send request to Tempesta. ccept: */* Deproxy: Client: Send request to Tempesta. cept: */* Deproxy: Client: Send request to Tempesta. ept: */* Deproxy: Client: Send request to Tempesta. pt: */* Deproxy: Client: Send request to Tempesta. t: */* Deproxy: Client: Send request to Tempesta. : */* Deproxy: Client: Send request to Tempesta. */* Deproxy: Client: Send request to Tempesta. */* Deproxy: Client: Send request to Tempesta. /* Deproxy: Client: Send request to Tempesta. * Deproxy: Client: Send request to Tempesta. Deproxy: Client: Send request to Tempesta. Deproxy: Client: Send request to Tempesta. Deproxy: Client: Send request to Tempesta. Deproxy: SrvConnection: Receive request. GET / HTTP/1.1 Host: localhost Connection: keep-alive Accept: */* X-Forwarded-For: 127.0.0.1 via: 1.1 tempesta_fw (Tempesta FW pre-0.7.0) Deproxy: SrvConnection: Send response. HTTP/1.1 200 OK Server: Deproxy Server Content-length: 0.5 Content-type: text/html Last-Modified: Mon, 12 Dec 2016 13:59:39 GMT text Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: New server connection. Deproxy: Client: Receive response. HTTP/1.1 502 Bad Gateway date: Wed, 03 May 2023 07:09:44 GMT content-length: 0 server: Tempesta FW/pre-0.7.0 connection: keep-alive Run command 'cat /proc/tempesta/perfstat' on host localhost with environment {} tearDown Stop deproxy client Stopping TempestaFW on localhost Run command '/root/tempesta/scripts/tempesta.sh --stop' on host localhost with environment {} Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: Server: Stop on 127.0.0.1:8000. Stopping deproxy Finished deproxy manager Removing interfaces Run command 'journalctl -k -o cat --since=@1683097783.867648' on host localhost with environment {} ----------------------dmesg--------------------- [tdb] Start Tempesta DB [tempesta fw] Initializing Tempesta FW kernel module... [tempesta fw] Configuration processing is completed. [tdb] Opened table /opt/tempesta/db/filter0.tdb: size=16777216 rec_size=20 base=00000000846e9ec4 [tdb] Opened table /opt/tempesta/db/sessions0.tdb: size=16777216 rec_size=312 base=00000000eef91ed8 [tdb] Opened table /opt/tempesta/db/client0.tdb: size=16777216 rec_size=624 base=0000000030b4fc6f [tempesta fw] Open listen socket on: 0.0.0.0 [tempesta fw] Tempesta FW is ready [tempesta fw] Warning: Parser error: state=Resp_HdrContent_LengthV input(-0)=0x2e('.') data_len=1 off=0 [tempesta fw] Warning: response dropped: processing error: 127.0.0.1 [tempesta fw] Warning: Paired request missing, HTTP Response Splitting attack? [tdb] Close table 'client0.tdb' [tdb] Close table 'sessions0.tdb' [tdb] Close table 'filter0.tdb' [tempesta fw] modules are stopped [tempesta fw] exiting... [tdb] Shutdown Tempesta DB -------------------end dmesg-------------------- END TEST: t_wrong_body_length.test_response_wrong_length.ResponseDecimalBodyLength.test ```
DBG for `t_wrong_body_length.test_h2_request_wrong_length.RequestDuplicateBodyLength.test_post_request` ```python START TEST: t_wrong_body_length.test_h2_request_wrong_length.RequestDuplicateBodyLength.test_post_request setUp Run command 'date +%s.%N' on host localhost with environment {} Deproxy: Server: Start on 127.0.0.1:8000. Run command 'netstat --inet -apn' on host localhost with environment {} Listen ['tcp', '0', '0', '127.0.0.1:43593', '0.0.0.0:*', 'LISTEN', '797/containerd'] Listen ['tcp', '0', '0', '127.0.0.1:53', '0.0.0.0:*', 'LISTEN', '842/dnsmasq'] Listen ['tcp', '0', '0', '192.168.50.117:53', '0.0.0.0:*', 'LISTEN', '842/dnsmasq'] Listen ['tcp', '0', '0', '127.0.0.53:53', '0.0.0.0:*', 'LISTEN', '608/systemd-resolve'] Listen ['tcp', '0', '0', '0.0.0.0:22', '0.0.0.0:*', 'LISTEN', '860/sshd:', '/usr/sbin'] Run command 'date +%s.%N' on host localhost with environment {} Run command 'sysctl net.core.message_cost' on host localhost with environment {} Run command 'sysctl -w net.core.message_cost=0' on host localhost with environment {} Starting TempestaFW on localhost Run command '/root/tempesta/scripts/tempesta.sh --start' on host localhost with environment {'TFW_CFG_PATH': '/tmp/tempesta/tempesta.conf', 'TFW_CFG_TMPL': '/tmp/tempesta/tempesta_tmp.conf'} Run command 'journalctl -k -o cat --since=@1683029309.078477' on host localhost with environment {} Run command 'journalctl -k -o cat --since=@1683029309.078477' on host localhost with environment {} Run command 'sysctl -w net.core.message_cost=5 ' on host localhost with environment {} Starting deproxy client Deproxy: Client: Connect to 127.0.0.1:443. Running deproxy Running deproxy server manager Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: SrvConnection: New server connection. Deproxy: finished TLS handshake Deproxy: Client: Send request to Tempesta. b'PRI * HTTP/2.0\r\n\r\nSM\r\n\r\n\x00\x00*\x04\x00\x00\x00\x00\x00\x00\x01\x00\x00\x10\x00\x00\x02\x00\x00\x00\x01\x00\x04\x00\x00\xff\xff\x00\x05\x00\x00@\x00\x00\x08\x00\x00\x00\x00\x00\x03\x00\x00\x00d\x00\x06\x00\x01\x00\x00\x00\x00\x12\x01\x04\x00\x00\x00\x01A\x86\xa0\xe4\x1d\x13\x9d\t\x84\x87\x83\\\x85e\x9f\xa5\x19g\x00\x00!\x00\x01\x00\x00\x00\x01PUT / HTTP/1.1\r\nHost: localhost\r\n' Deproxy: Client: Received error - [Errno 32] Broken pipe. Deproxy: Client: Receive data. b'\x00\x00\x0c\x04\x00\x00\x00\x00\x00\x00\x01\x00\x00\x10\x00\x00\x04\x7f\xff\xff\xff' Deproxy: Client: Receive 'h2_connection' events. [] Deproxy: Client: Receive data. b'\x00\x00\x04\x08\x00\x00\x00\x00\x00\x7f\xff\x00\x00' Deproxy: Client: Receive 'h2_connection' events. [] Deproxy: Client: Receive data. b'\x00\x00\x00\x04\x01\x00\x00\x00\x00' Deproxy: Client: Receive 'h2_connection' events. [] Deproxy: Client: Receive data. b'\x00\x00\x08\x07\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01' Deproxy: Client: Receive 'h2_connection' events. [] tearDown Stop deproxy client Stopping TempestaFW on localhost Run command '/root/tempesta/scripts/tempesta.sh --stop' on host localhost with environment {} Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: SrvConnection: Close connection. Deproxy: Server: Stop on 127.0.0.1:8000. Stopping deproxy Finished deproxy manager Removing interfaces Run command 'journalctl -k -o cat --since=@1683029309.067664' on host localhost with environment {} ----------------------dmesg--------------------- [tdb] Start Tempesta DB [tempesta fw] Initializing Tempesta FW kernel module... [tempesta fw] Configuration processing is completed. [tdb] Opened table /opt/tempesta/db/filter0.tdb: size=16777216 rec_size=20 base=0000000089ad46a6 [tdb] Opened table /opt/tempesta/db/sessions0.tdb: size=16777216 rec_size=312 base=000000009a858c71 [tdb] Opened table /opt/tempesta/db/client0.tdb: size=16777216 rec_size=624 base=00000000be4f634d [tempesta fw] Open listen socket on: 0.0.0.0:443 [tempesta fw] Tempesta FW is ready [tempesta fw] Warning: HTTP/2 request dropped: state=Req_HdrContent_LengthV input=0x33('33, 33'), len=6, off=0 [tempesta fw] Warning: failed to parse request: 127.0.0.1 [tdb] Close table 'client0.tdb' [tdb] Close table 'sessions0.tdb' [tdb] Close table 'filter0.tdb' [tempesta fw] modules are stopped [tempesta fw] exiting... [tdb] Shutdown Tempesta DB -------------------end dmesg-------------------- END TEST: t_wrong_body_length.test_h2_request_wrong_length.RequestDuplicateBodyLength.test_post_request ```