Table Of Contents
Understanding Attack Reports
Understanding the Report Layout
General Details
Attack Statistics
Dropped/Replied Packets
Detected Anomalies
Mitigated Attacks
Spoofed Attacks
Zombie Attacks
Client Attacks
User-Defined Attacks
Malformed Packets
Zombies
Understanding the Report Parameters
Displaying Attack Reports
Exporting Attack Reports
Exporting Attack Reports Automatically
Exporting Attack Reports of All Zones
Exporting Zone Reports
Understanding Attack Reports
This chapter describes the attack reports that the Cisco Anomaly Guard Module (Guard module) produces and contains the following sections:
•
Understanding the Report Layout
•
Understanding the Report Parameters
•
Displaying Attack Reports
•
Exporting Attack Reports
Understanding the Report Layout
The Guard module provides an attack report for each zone to help form a comprehensive view of the attack. An attack begins when the Guard module produces the first dynamic filter and ends when no dynamic filter is in use and no new dynamic filters are added. Reports include details of the attacks that are organized into sections. Each section describes different aspects of the traffic flow during an attack. You can display reports of past attacks and ongoing attacks, and you can export reports to an FTP or a Secure FTP (SFTP) server.
Reports include the following information and are described in these sections:
•
General Details
•
Attack Statistics
•
Dropped/Replied Packets
•
Detected Anomalies
•
Mitigated Attacks
•
Zombies—This section is available only when you enter the show reports details and show zombies commands
General Details
The general details section of the attack report includes general information about an attack.
Table 10-1 describes the fields in this section of the report.
Table 10-1 Field Descriptions in General Details Section of Attack Report
Field
|
Description
|
Report ID
|
The identification number of the report.
|
Attack Start
|
Displays the date and time that the attack started.
|
Attack End
|
Displays the date and time that the attack ended. A value of "Attack in progress" indicates that there is an ongoing attack.
|
Attack Duration
|
Displays the duration of the attack.
|
Attack Statistics
The attack statistics section provides a general analysis of the zone traffic flow for various packets. Table 10-2 describes for the packet types.
Table 10-2 Packet Types
Type
|
Description
|
Received
|
Specifies the total amount of the diverted traffic.
|
Forwarded
|
Specifies the legitimate traffic that the Guard module forwarded on to the zone.
|
Replied
|
Specifies the traffic that the Guard module anti-spoofing and anti-zombie mechanisms sent back to the source in a verification attempt.
|
Dropped
|
Specifies the traffic that the Guard module dropped.
|
Dropped/Replied Packets
The dropped/replied packets section of the attack report analyzes the packets that the Guard module dropped and sent back to the source in a verification attempt (replied). The report classifies the packets by their type (spoofed or malformed) and by the Guard module function that handled them (filter types or the Rate Limiter function).
Table 10-3 describes the different types of dropped and replied packets.
Table 10-3 Types of Dropped/Replied Packets
Type
|
Description
|
Rate Limiter
|
Specifies packets that were dropped because they exceeded the rate of traffic that is defined by user filters rate limit parameter and the zone rate-limit command as allowed to be injected to the zone.
|
Flex-Content Filters
|
Specifies packets that were dropped by the Flex-Content filters.
|
User Filters
|
Specifies packets that were dropped by the user filters.
|
Dynamic Filters
|
Specifies packets that were dropped by the dynamic filters.
|
Spoofed
|
Specifies packets that were that were identified by the Guard module as spoofed packets or packets originated by zombies and, therefore, not injected to the zone. Spoofed packets are replied (bounced) packets to which no replies were received.
|
Malformed
|
Specifies packets that were analyzed as malformed because of their malformed structure or due to the Guard module anti-spoofing functions.
|
Detected Anomalies
The detected anomalies section of the attack report provides details of the traffic anomalies that the Guard module detected in the zone traffic. A flow is classified as being an anomaly when it requires the production of a Dynamic filter. These anomalies can occur infrequently or can turn into systematic DDoS attacks. The Guard clusters anomalies with the same type and flow parameters (such as source IP address and destination port) under one anomaly type.
Table 10-4 describes the different types of detected anomalies.
Table 10-4 Types of Detected Anomalies
Type
|
Description
|
dns (tcp)
|
An attacking DNS-TCP protocol flow.
|
dns (udp)
|
An attacking DNS-UDP protocol flow.
|
fragments
|
A detected flow with an unusual amount of fragmented traffic.
|
http
|
An unusual HTTP traffic flow.
|
ip_scan
|
A detected flow initiated from a source IP address that tried to access many zone destination IP addresses.
|
other_protocols
|
A non-TCP/UDP attacking protocol flow.
|
port_scan
|
A detected flow initiated from a source IP address that tried to access many zone ports.
|
tcp_connections
|
A detected flow with an unusual number of TCP concurrent connections, with or without data.
|
tcp_incoming
|
A detected flow attacking a TCP service when the zone is a server.
|
tcp_outgoing
|
A detected flow consisting of SYN-ACK flood or other packet attacks on connections initiated by the zone when the zone is the client.
|
tcp_ratio
|
A detected flow with an unusual ratio between different types of TCP packets, for example, SYN packets as opposed to FIN/RST packets.
|
udp
|
An attacking UDP protocol flow.
|
unauthenticated_tcp
|
A detected flow that the Guard anti-spoofing functions have not succeeded in authenticating, for example, ACK flood, FIN flood, or any other flood of unauthenticated packets.
|
user
|
An anomaly flow that was detected by user definitions.
|
Mitigated Attacks
The mitigated attacks section of the attack report details the steps the Guard module took to protect the zone (mitigated attacks). The report provides details of the timing of the mitigation and the type of mitigated attack. The Guard module defines the mitigation type according to the functions that the Guard module used to mitigate the attack. These functions indicate the attack type and sub-type.
For example, if the Guard module uses a basic anti-spoofing function to mitigate an attacking flow of syn packets, the mitigated attack appears as spoofed/tcp_syn_basic. Spoofed indicates the attack type, and tcp_syn_basic indicates the attack sub-type.
There are five types of mitigated attacks:
•
Spoofed Attacks
•
Zombie Attacks
•
Client Attacks
•
User-Defined Attacks
•
Malformed Packets
Spoofed Attacks
Spoofed attacks include all traffic anomalies identified as a DDoS attack coming from a spoofed source. Table 10-5 describes the different types of spoofed attacks.
Table 10-5 Types of Spoofed Attacks
Attack Type
|
Description
|
spoofed/tcp_syn (basic)
|
A flood of SYN packets that the basic anti-spoofing functions have not succeeded in authenticating.
|
spoofed/tcp_syn (strong)
|
A flood of SYN packets that the strong anti-spoofing functions have not succeeded in authenticating.
|
spoofed/tcp_syn_ack (basic)
|
A flood of syn_ack packets that the basic anti-spoofing functions have not succeeded in authenticating.
|
spoofed/tcp_syn_ack (strong)
|
A flood of syn_ack packets that the strong anti-spoofing functions have not succeeded in authenticating.
|
spoofed/tcp_incoming (basic)
|
A flood of traffic that the basic anti-spoofing functions have not succeeded in authenticating.
|
spoofed/ tcp_incoming (strong)
|
A flood of traffic that the strong anti-spoofing functions have not succeeded in authenticating.
|
spoofed/tcp_outgoing (strong)
|
A flood of traffic coming in response to zone initiated connections that the strong anti-spoofing functions have not succeeded in authenticating.
|
spoofed/udp (basic)
|
A flood of UDP traffic that the basic anti-spoofing functions have not succeeded in authenticating.
|
spoofed/udp (strong)
|
A flood of UDP traffic that the strong anti-spoofing functions have not succeeded in authenticating.
|
spoofed/other_protocols
|
A flood of other than TCP and UDP traffic that the Guard module anti-spoofing functions have not succeeded in authenticating.
|
spoofed/tcp_fragments
|
A flood of TCP fragmented packets that the Guard module anti-spoofing functions have not succeeded in authenticating.
|
spoofed/udp_fragments
|
A flood of UDP fragmented, packets that the Guard module anti-spoofing mechanisms have not succeeded in authenticating.
|
spoofed /other_protocols_fragments
|
A flood of other than TCP and UDP fragmented packets that the Guard module anti-spoofing mechanisms have not succeeded in authenticating.
|
spoofed/dns_queries (strong)
|
A flood of DNS queries packets that the strong anti-spoofing functions have not succeeded in authenticating.
|
spoofed/dns_replies (basic)
|
A flood of DNS packets coming in response to zone initiated connections that the basic anti-spoofing functions have not succeeded in authenticating.
|
spoofed/dns_replies (strong)
|
A flood of DNS packets coming in response to zone initiated connections that the strong anti-spoofing functions have not succeeded in authenticating.
|
Zombie Attacks
Zombie attacks include traffic anomalies identified as a DDoS attack originated by zombies. Table 10-6 describes the different types of zombie attacks.
Table 10-6 Types of Zombie Attacks
Attack Type
|
Description
|
zombie/http
|
A flood of HTTP traffic from many sources that were identified as non-spoofed, but the Guard module anti-zombie functions have not succeeded in authenticating.
|
Client Attacks
Client attacks include all non-spoofed traffic anomalies. Table 10-7 describes the different types of client attacks.
Table 10-7 Types of Client Attacks
Attack Type
|
Description
|
client_attack/tcp_connections
|
A flow with unusual number of TCP concurrent connections with or without data.
|
client_attack/http
|
A flood of HTTP traffic flow.
|
client_attack/tcp_ incoming
|
A flood attacking a TCP service when the zone is a server.
|
client_attack/tcp_outgoing
|
An attacking flood coming from authenticated IP connections that the zone initiated.
|
client_attack /unauthenticated_tcp
|
A flood of ACKs, or FINs, or any other packets without a TCP handshake, or TCP connections that the Guard module anti-spoofing functions have not succeeded in authenticating.
|
client_attack/dns (udp)
|
A flood of attacking DNS-UDP protocol flow.
|
client_attack/dns (tcp)
|
A flood of attacking DNS-TCP protocol flow.
|
client_attack/udp
|
A flood of attacking UDP protocol flow.
|
client_attack/other_protocols
|
A flood of non TCP/UDP attacking protocol flow.
|
client_attack/fragments
|
A flood of fragmented traffic.
|
client_attack/user
|
A user defined attack flood. The attack is defined by a dynamic filter that was added by a user.
|
User-Defined Attacks
User-defined attacks include all anomalies handled by the user filters. The use filters can either function by default or you can configure them manually. See "Configuring Policy Templates and Policies" for further details. Table 10-8 describes the different types of user-defined attacks.
Table 10-8 Types of User-Defined Attacks
Attack Type
|
Description
|
user_defined/ user_filter_rate_limit
|
A flood that was dropped because it exceeded the rate limit defined for a user filter.
|
user_defined/ user_drop_filters
|
A flood that was dropped by user filters.
|
user_defined/rate_limit
|
A flood that was dropped due to one of the following:
• It exceeded the rate limit defined for a user filter.
• It exceeded the rate limit defined by the zone rate-limit command.
• It exceeded the internal rate limit that is defined for unauthenticated TCP RST packets or unauthenticated DNS zone transfer packets.
|
user_defined/ flex_content_filter
|
A flood that was dropped by the flex-content filters.
|
Malformed Packets
Malformed packets include all traffic anomalies identified as consisting of maliciously malformed packets. Table 10-9 describes the different types of malformed packets.
Table 10-9 Types of Malformed Packets
Attack Type
|
Description
|
malformed_packets /packets_to_proxy_ip
|
A flood attacking a Guard module proxy IP address.
|
malformed_packets /dns_anti_spoofing_algo
|
A flood of malformed packets due to the operation of the Guard module DNS anti-spoofing functions.
|
malformed_packets /dns (queries)
|
A flood of malformed DNS packets.
|
malformed_packets /dns (short_queries)
|
A flood of short DNS queries.
|
malformed_packets /dns (replies)
|
A flood of malformed DNS replies.
|
malformed_packets /src ip = dst ip
|
A flood of packets with the zone IP address as their source and destination.
|
malformed_packets /zero_header_field
|
A flood of packets in which the port, protocol and IP fields in the header illegally equal zero.
|
Zombies
Zombie attacks include traffic anomalies identified as a DDoS attack originated by zombies. The Guard module attack report displays a table listing zombies that are current attacking the zone. Use the show reports details and show zombies commands to display the list of currently attacking zombies.
See Table 10-15 for information about the fields in the show zombies command output.
Understanding the Report Parameters
Different sections of the report describe different aspects of the traffic flow.
Table 10-10 describes the fields for Attack Statistics and Dropped/Replied Packets.
Table 10-10 Field Descriptions for Attack Statistics
Field
|
Description
|
Total Packets
|
Specifies the total number of attack packets.
|
Average pps
|
Specifies the average traffic rate in pps units.
|
Average bps
|
Specifies the average traffic rate in bps units.
|
Max. pps
|
Specifies the maximum traffic rate measured in pps units.
|
Max. bps
|
Specifies the maximum traffic rate measured in bps units.
|
Percentage
|
Specifies the number of forwarded, replied, and dropped packets as a percentage of the total received packets.
|
Table 10-11 describes the flow statistics for Detected Anomalies and Mitigated Attacks.
Table 10-11 Field Descriptions for Flow Statistics
Field
|
Description
|
ID
|
Specifies the identification number (ID) of the detected anomaly.
|
Start time
|
Specifies the date and time that the anomaly was detected.
|
Duration
|
Specifies the duration of the anomaly in hours, minutes, and seconds.
|
Type
|
Specifies the type of anomaly or mitigated attack.
|
Triggering rate
|
Specifies the anomaly traffic rate that exceeded the policy threshold.
|
% Threshold
|
Indicates the percentage by which the triggering rate is above the policy threshold.
|
Flow
|
Specifies the anomaly flow and mitigated attack flow. The characteristics include the protocol number, source IP address, source port, destination IP address, and destination port. It indicates whether or not the traffic is fragmented. Any indicates that there is both fragmented and non-fragmented traffic.
|
A value of * for any of the parameters indicates one of the following:
•
The value is undetermined.
•
More than one value was measured for the anomaly parameter.
A value of #, followed by a number, for any of the parameters indicates the number of values measured for that parameter.
The Guard module may display a value of notify on the right side of the flow description. A value of notify for any of the report rows indicates that the Guard module produces a notification only for the type of traffic the row describes, and it does not take action.
Displaying Attack Reports
To display a list of attack reports for any specific zone or a more detailed report for a specific attack, enter the following command in zone configuration mode:
show reports [sub-zone-name] [current | report-id] [details]
Table 10-12 provides the arguments and keywords for the show reports command.
Table 10-12 Arguments and Keywords for the show reports Command
Parameter
|
Description
|
sub-zone-name
|
(Optional) The name of a sub zone that was created from the zone. See the "Understanding Subzones" section for more information.
|
current
|
An attack that is in progress.
The number of bits and packets is not displayed for an ongoing attack. In reports of an attack in progress, the packets and bits fields have a value of zero (0).
|
report-id
|
The identification number of the report.
|
details
|
(Optional) Displays details of the flows and attacking zombies.
|
The following example shows how to view a list of all attacks on the zone:
user@GUARD-conf-zone-scannet# show reports
Table 10-14 describes the fields in the show reports command output.
Table 10-13 Field Descriptions for the show reports
Command Output
Field
|
Description
|
Report ID
|
The report identification number.
|
Attack Start
|
The date and time the attack started.
|
Attack End
|
The date and time the attack ended. A value of "Attack in progress" indicates that there an ongoing attack.
|
Attack Duration
|
The duration of the attack.
|
Attack Type
|
Type of mitigated attack. Possible values are as follows:
• client_attack—All non-spoofed traffic anomalies.
• malformed_packets—All traffic anomalies identified as consisting of maliciously malformed packets.
• spoofed—Traffic anomalies identified as a DDoS attack coming from a spoofed source.
• user_defined—All anomalies handled by the user filters. These can either function by default or be user configured.
• zombie—Traffic anomalies identified as having been originated by zombies.
• hybrid—An attack made up of several attacks with different characteristics.
• traffic_anomaly—An anomaly that was only detected for a short period of time and therefore did not require mitigation.
|
Malicious Traffic
|
The sum of the number of packets the Guard module identified as part of an attack and therefore dropped, and the number of packets to which the Guard module sent replies to the initiating client in order to verify whether they are part of authentic traffic or part of an attack.
|
The following example shows how to display the report of the current attack on the zone:
user@GUARD-conf-zone-scannet# show reports current
The attack report displays the following output. For more information about the different sections, see the "Understanding the Report Layout" section.
To display a more detailed report about the detected anomalies flow and the mitigated attacks flow, and to view a list of zombies attacks, use the details option.
Table 10-14 describes the flow fields in the detailed report.
Table 10-14 Field Descriptions of Flows in Detailed Report
Field
|
Description
|
Detected Flow
|
Specifies the flow that caused the production of the Dynamic filter. The flow characteristics include the protocol number, source IP address, source port, destination IP address, and destination port, and an indication of whether the traffic is fragmented or not. Any indicates that there is both fragmented and non-fragmented traffic.
|
Action Flow
|
Specifies the flow that was addressed by the Dynamic filter. The action flow can have a wider range than the detected flow. For example, the detected flow could indicate a specific source port for a specific source IP address, whereas the action flow could indicate all source ports for the specified source IP address.
The flow characteristics include the protocol number, source IP address, source port, destination IP address, and destination port, and an indication of whether the traffic is fragmented or not. Any indicates that there is both fragmented and non-fragmented traffic.
|
Table 10-15 describes the fields in the detailed report about zombie attacks.
Table 10-15 Field Descriptions for Zombie Attacks Table
Field
|
Description
|
IP
|
The zombie IP address.
|
Start Time
|
The date and time that the zombie connection was initially identified.
|
Duration
|
The duration of the zombie attack.
|
#Requests
|
The number of HTTP get requests sent by the zombie.
|
Note
If there are no zombie attacks, Report doesn't exist appears under the Zombies heading in the report.
Exporting Attack Reports
You can export attack reports to an FTP or an SFTP server for monitoring and diagnostics capabilities. You can export attack reports in text format or in Extensible Markup Language (XML) format.
This section includes the following topics:
•
Exporting Attack Reports Automatically
•
Exporting Attack Reports of All Zones
•
Exporting Zone Reports
Exporting Attack Reports Automatically
You can configure the Guard module to export attack reports automatically, in XML format, at the end of an attack. The Guard module exports the reports of any one of the zones when an attack on the zone ends. The XML schema is described in the ExportedReports.xsd file that accompanies the version. You can download the .xsd files that accompany the version from the Software Center at:
http://www.cisco.com/public/sw-center/.
To configure the Guard module to export attack reports automatically, enter one of the following commands in configuration mode:
•
export reports ftp server remote-path [login] [password]
•
export reports sftp server remote-path login
Note
You must configure the SSH key that the Guard module uses for SFTP communication before you enter the copy reports command. See the "Configuring the Key for SFTP Connections" section for more information.
Table 10-16 describes the arguments for the export reports command.
Table 10-16 Arguments for the export reports Command
Parameter
|
Description
|
ftp
|
Exports the attack reports to an FTP server.
|
sftp
|
Exports the attack reports to an SFTP server.
|
server
|
The IP address of the server.
|
remote-path
|
The complete path of the directory where the files are saved.
|
login
|
The server login name.
The login argument is optional when you define an FTP server. When you do not insert a login name, the FTP server assumes an anonymous login and does not prompt you for a password.
|
password
|
(Optional) The password for the remote FTP server.
|
The following example shows how to automatically export reports (in XML format) at the end of an attack to an FTP server at IP address 10.0.0.191 by using login name user1 and password password1:
user@GUARD-conf# export reports ftp 10.0.0.191 /root/reports user1
password1
Exporting Attack Reports of All Zones
You can export the attack reports of all zones in text or XML format by entering the following command in global mode:
copy reports [details] [xml] ftp server full-file-name [login] [password]
Table 10-17 provides the arguments and keywords for the copy reports command.
Table 10-17 Arguments and Keywords for the copy reports Command
Parameter
|
Description
|
xml
|
(Optional) Export the report in XML format. The XML schema is described in the ExportedReports.xsd file that accompanies the version. You can download the .xsd files that accompany the version from the Software Center at: http://www.cisco.com/public/sw-center/.
By default, reports are exported in text format.
Reports in XML format include all details. If you include the xml option, it is not necessary to include the details option.
|
details
|
(Optional) Export details of flow and attacking source IP addresses.
|
ftp
|
Exports the attack reports to an FTP server.
|
server
|
The IP address of the server.
|
full-file-name
|
The full name of the file. If you do not specify a path, the server saves the file in your home directory.
|
login
|
The server login name.
The login argument is optional when you define an FTP server. When you do not insert a login name, the FTP server assumes an anonymous login and does not prompt you for a password.
|
password
|
(Optional) The password for the remote FTP server.
|
The following example shows how to copy a list of all attacks handled by the Guard module (in text format) to an FTP server at IP address 10.0.0.191 by using login name user1 and password password1:
user@GUARD# copy reports ftp 10.0.0.191 AGMreports.txt user1 password1
Exporting Zone Reports
To copy the attack reports of a specific zone to an FTP server, enter the following command in global mode:
copy zone zone-name reports [current | report-id] [xml] [details] ftp server
full-file-name [login] [password]
Table 10-18 describes the arguments and keywords for the copy zone reports command.
Table 10-18 Arguments and Keywords for the copy zone reports
Command
Parameter
|
Description
|
zone-name
|
The name of an existing zone.
|
current
|
(Optional) Export an ongoing attack report (if applicable).
The default is to export all zone reports.
|
report-id
|
(Optional) The ID of an existing report. The Guard module exports the report with the specified ID number. To view the details of the zone attack reports, use the show zone reports command.
The default is to export all zone reports.
|
xml
|
(Optional) Export the report in XML format. The XML schema is described in the ExportedReports.xsd file that accompanies the version. You can download the .xsd files that accompany the version from the Software Center at: http://www.cisco.com/public/sw-center/.
The default is to export reports in text format.
Reports in XML format include all details. If you include the xml option, it is not necessary to include the details option.
|
details
|
(Optional) Export details of flow and attacking source IP addresses.
|
ftp
|
Exports the attack reports to an FTP server.
|
server
|
The IP address of the server.
|
remote-path
|
The complete path of the directory where the files are saved.
|
login
|
The server login name.
The login argument is optional when you define an FTP server. When you do not insert a login name, the FTP server assumes an anonymous login and does not prompt you for a password.
|
password
|
(Optional) The password for the remote FTP server.
|
The following example shows how to copy all attack reports on the zone to an FTP server at IP address 10.0.0.191 by using login name user1 and password password1:
user@GUARD# copy zone scannet reports ftp 10.0.0.191
ScannetCurrentReport.txt user1 password1