-
Notifications
You must be signed in to change notification settings - Fork 1
Home
Since ItalianCannon 1.0.6, configurations are much complicated.
Most configuration rules could be found at https://github.com/KruinWorks/ItalianCannon#configurations.
There still requires a lot of descriptions for sub-configurations.
{
"Note": "Please change 'AppearsToBeDefault' to False after changing settings. ItalianCannon will ignore this configuration entry. For headers help, see https://github.com/dotnet/corefx/blob/master/src/System.Net.WebHeaderCollection/src/System/Net/HttpRequestHeader.cs",
"TeaCupTargets": [
{
"Url": "https://www.baidu.com",
"Threads": 1
}
],
"IntervalPerThread": 500,
"MaxRequestsPerThread": 1000,
"UserAgent": "Mozilla/5.0 (Linux) AppleWebKit/888.88 (KHTML, like Gecko) Chrome/66.6.2333.66 Safari/233.33",
"AppearsToBeDefault": true,
"DisableSSLValidation": false,
"IgnoreHTTPError": false,
"ExtraHTTPHeaders": [
{
"HType": 10,
"Content": "GET"
}
],
"EnableAnimations": false,
"EnableColors": true,
"VerboseMode": false,
"RandomPOST": false,
"RandomPOSTRate": 1,
"RandomPOSTLength": 0,
"RandomHEAD": false,
"RandomHEADRate": 1
}
Detailed configurations guide:
Name | Type | Description |
---|---|---|
Note |
String |
The description. Doesn't have any use. |
TeaCupTarget |
Array |
Request target. |
URL |
String |
Request URL |
Threads |
Int32 |
Quantity of threads. |
IntervalPerThread |
Int32 / Milliseconds |
Request interval of each thread. |
MaxRequestsPerThread |
Int32 |
Maximum request count of each thread. |
UserAgent |
String |
User agent. |
AppearsToBeDefault |
Boolean |
MUST be edited to false. |
DisableSSLValidation |
Boolean |
Disables the SSL Certificate Validation. |
IgnoreHTTPError |
Boolean |
Ignore HTTP 4xx/5xx errors. |
ExtraHTTPHeaders |
Array |
Extra HTTP Headers sent along with requests. |
HType |
Int32 |
Header type. Details could be found at Microsoft Repo. |
Content |
String |
Content sent along with headers. |
EnableAnimations |
Boolean |
Enable animations to get a direct view of status and statistics. |
EnableColors |
Boolean |
Enables colored outputs. |
VerboseMode |
Boolean |
Disable most info outputs. |
RandomPOST |
Boolean |
Send POST requests randomly. |
RandomPOSTRate |
Byte (0 ~ 100) |
The probability of sending POST requests. |
RandomPOSTLength |
Int32 |
Data length of POST requests. |
RandomHEAD |
Boolean |
Send HEAD requests randomly. |
RandomHEADRate |
Byte (0 ~ 100) |
The probability of sending HEAD requests. |
You want to try http://domain.tld
and https://domain.tld
:
...
"TeaCupTargets": [
{
"Url": "http://domain.tld",
"Threads": 1
},
{
"Url": "https://domain.tld",
"Threads": 1
}
],
...
... This site didn't supply a valid TLS Certificate but you still wanted to continue:
"DisableSSLValidation": true,
... Continue requesting even if the server is responding errors:
"IgnoreHTTPError": true,
... Send 256-bytes' POST requests randomly with 50% probability:
"RandomPOST": true,
"RandomPOSTRate": 50,
"RandomPOSTLength": 256,
... Add some cookies to make it more sweet:
"ExtraHTTPHeaders": [
{
"HType": 25,
"Content": "logged_in=yes"
},
{
"HType": 25,
"Content": "userid=ffffffff-ffff-ffff-ffff-ffffffffffff"
}
],
Looking up DNS could significantly slow ItalianCannon down.
And if you want to resolve a hostname to a special IP address, try this:
Request domain.tld
resolved as 192.168.10.91
...
"TeaCupTargets": [
{
"Url": "http://192.168.10.91",
"Threads": 1
}
],
...
"ExtraHTTPHeaders": [
{
"HType": 28,
"Content": "domain.tld"
}
],
...
... so that ItalianCannon will request 192.168.10.91
directly without resolving DNS names. And send a Host=domain.tld
header with each request.