Flooding or scrolling on an IRC network is a method of disconnecting users from an IRC server, exhausting bandwidth which causes network latency, or just disrupting users. Floods can either be done by scripts or by external programs.
History
The history of InternetRelay Chat flooding started as a method of taking over an IRC channel from the original founders of the channel. The first attacks generally used a modified IRC client or an application to flood a channel or a user. Later they started to be based on bots and scripts. This later moved on to starting IRC-based botnets which were capable of DDoS and IRC floods.
Types of floods
Connect flood
Connecting and disconnecting from a channel as fast as possible, therefore spamming the channel with dis/connect messages also called q/j flooding.
Since CTCP is implemented in almost every client, most users respond to CTCP requests. By sending too many requests, after a couple of answers they get disconnected from the IRC server. The most widely used type is CTCP PING, although some clients also implement other CTCP replies.
This type consists of initiating many DCC requests simultaneously. Theoretically it can also be used to disconnect users, because the target client sends information back about what port is intended to be used during the DCC session.
Typically referred to as a ping flood. This attack overloads the victim's internet connection with an amount of ICMP data exceeding the connection's capacity, potentially causing a disconnection from the IRC network. For the duration of the attack, the user's internet connection remains hindered. Technically speaking, this is not an IRC flood, as the attack itself doesn't traverse the IRC network at all, but operates entirely independent of anything but the raw internet connection and its IP protocol. Even so, the actual IP address to flood is frequently obtained by looking at the victim's user information on the IRC network.
Invite flood
Sending disruptive numbers of invites to a certain channel.
Post flood
This is the simplest type of IRC flooding. It involves posting large numbers of posts or one very long post with repetitive text. This type of flood can be achieved, for example, by copying and pasting one short word repeatedly.
Message flood
Sending massive numbers of private messages to the victim, mainly from different connections called clones. Since some clients separate the private conversations into another window, each new message could open a new window for every new user a message is received from. This is exploitable by sending messages from multiple names, causing the target client to open many new windows and potentially swamping the user with boxes. Sometimes the easiest way to close all the windows is to restart the IRC client, although scripts exist to 'validate' unknown nicknames before receiving messages from them.
Notice flood
Similar to the message, but uses the "notice" command.
Nick flood
Changing the nick as fast as possible, thus disrupting conversation in the channel.