SonicOS 7.0 Rules and Policies for Classic Mode
- SonicOS 7.0 Rules and Policies
- Access Rules
- Setting Firewall Access Rules
- About Connection Limiting
- Using Bandwidth Management with Access Rules
- Creating Access Rules
- Configuring Access Rules for IPv6
- Enabling and Disabling Access Rules
- Editing Access Rules
- Deleting Access Rules
- Restoring Access Rules to Default Settings
- Displaying Access Rules
- Displaying Access Rule Traffic Statistics
- Configuring Access Rules for NAT64
- Configuring Access Rules for a Zone
- Access Rules for DNS Proxy
- User Priority for Access Rules
- Access Rule Configuration Examples
- Setting Firewall Access Rules
- NAT Rules
- About NAT in SonicOS
- About NAT Load Balancing
- About NAT64
- About FQDN-based NAT
- About Source MAC Address Override
- Viewing NAT Policy Entries
- Adding or Editing NAT or NAT64 Rule Policies
- Deleting NAT Policies
- Creating NAT Rule Policies: Examples
- Creating a One-to-One NAT Policy for Inbound Traffic
- Creating a One-to-One NAT Policy for Outbound Traffic
- Inbound Port Address Translation via One-to-One NAT Policy
- Inbound Port Address Translation via WAN IP Address
- Creating a Many-to-One NAT Policy
- Creating a Many-to-Many NAT Policy
- Creating a One-to-Many NAT Load Balancing Policy
- Creating a NAT Load Balancing Policy for Two Web Servers
- Creating a WAN-to-WAN Access Rule for a NAT64 Policy
- DNS Doctoring
- Routing
- Content Filter Rules
- App Rules
- About App Rules
- Rules and Policies > App Rules
- Verifying App Rules Configuration
- App Rules Use Cases
- Creating a Regular Expression in a Match Object
- Policy-based Application Rules
- Logging Application Signature-based Policies
- Compliance Enforcement
- Server Protection
- Hosted Email Environments
- Email Control
- Web Browser Control
- HTTP Post Control
- Forbidden File Type Control
- ActiveX Control
- FTP Control
- Bandwidth Management
- Bypass DPI
- Custom Signature
- Reverse Shell Exploit Prevention
- Endpoint Rules
- SonicWall Support
HTTP Post Control
You can enhance the security of public facing read-only HTTP servers by disallowing the HTTP POST method.
To disallow the HTTP POST
-
Use Notepad or another text editor to create a new document called Post.htm that contains this HTML code:
<FORM action="http://www.yahoo.com/" method="post">
<p>Please enter your name: <input type="Text" name="FullName"></p>
<input type="submit" value="Submit"> <INPUT type="reset">
-
Save the file to your desktop or a convenient location.
-
Open the Wireshark network analyzer and start a capture. For information about using Wireshark, see Wireshark.
-
In a browser, open the
Post.htm
file you just created. -
Enter your name.
-
Click Submit. Stop the capture.
-
Use the Wireshark Edit > Find Packet function to search for the string
POST
.Wireshark jumps to the first frame that contains the requested data. You should see something like Wireshark Display. This indicates that the HTTP POST method is transmitted immediately after the TCP header information and comprises the first four bytes (
504f5354
) of the TCP payload (HTTP application layer). You can use that information to create a custom match object that detects the HTTP POST method. -
In SonicOS, navigate to OBJECT | Match Objects > Custom Match.
-
Click +Add.
-
Create a custom match object like this:
In this particular match object you would use the Enable Settings option to create an object that matches a specific part of the payload. The Offset field specifies which byte in the payload to begin matching and helps to minimize false positives by making the match more specific. The Depth field specifies at what byte to stop matching. The Min and Max fields allow you to specify a minimum and maximum payload size.
-
Navigate to POLICY | Rules and Policies > App Rules.
-
Click +Add Rule.
-
Create a policy like this:
-
To test, use a browser to open the
Post.htm
file you created earlier. -
Type in your name.
-
Click Submit. The connection should be dropped this time, and you should see an alert in the log similar to this one:
Was This Article Helpful?
Help us to improve our support portal