Security Advisories (1)
CVE-2010-3438 (2019-11-12)

libpoe-component-irc-perl before v6.32 does not remove carriage returns and line feeds. This can be used to execute arbitrary IRC commands by passing an argument such as \"some text\\rQUIT\" to the 'privmsg' handler, which would cause the client to disconnect from the server.

NAME

POE::Component::IRC::Cookbook::MegaHAL - A blabbering IRC bot

DESCRIPTION

This bot uses POE::Component::IRC::Plugin::MegaHAL for most of its magic. As of yet, this recipe just contains a SYNOPSIS that is copied from its documentation.

SYNOPSIS

#!/usr/bin/env perl

use strict;
use warnings;
use POE;
use POE::Component::IRC::Plugin::AutoJoin;
use POE::Component::IRC::Plugin::Connector;
use POE::Component::IRC::Plugin::MegaHAL;
use POE::Component::IRC::State;

my $irc = POE::Component::IRC::State->spawn(
    nick     => 'Brainy',
    server   => 'irc.freenode.net',
);

my @channels = ('#other_chan', '#my_chan');

$irc->plugin_add('MegaHAL', POE::Component::IRC::Plugin::MegaHAL->new(Own_channel => '#my_chan'));
$irc->plugin_add('AutoJoin', POE::Component::IRC::Plugin::AutoJoin->new(Channels => \@channels));
$irc->plugin_add('Connector', POE::Component::IRC::Plugin::Connector->new());
$irc->yield('connect');

$poe_kernel->run();

AUTHOR

Hinrik Örn Sigurðsson, hinrik.sig@gmail.com