Security Advisories (1)
CVE-2026-5083 (2026-04-08)

Ado::Sessions versions through 0.935 for Perl generates insecure session ids. The session id is generated from a SHA-1 hash seeded with the built-in rand function, the epoch time, and the PID. The PID will come from a small set of numbers, and the epoch time may be guessed, if it is not leaked from the HTTP Date header. The built-in rand function is unsuitable for cryptographic usage. Predicable session ids could allow an attacker to gain access to systems. Note that Ado is no longer maintained, and has been removed from the CPAN index. It is still available on BackPAN.

NAME

Ado::Command::generate::apache2vhost - Generates minimal Apache2 Virtual Host configuration file

SYNOPSIS

On the command-line:

$ bin/ado generate apache2vhost --ServerName example.com -s \
 > etc/001-example.com.vhost.conf

Review your newly generated 001-example.com.vhost.conf!!! Create link to your generated configuration.

# ln -siv /home/you/dev/Ado/etc/001-example.com.vhost.conf \
/etc/apache2/sites-enabled/001-example.com.vhost.conf

# service apache2 reload

Generate your .htaccess file. Since you own the machine, you can put its content into the 001-example.com.vhost.conf file.

$ bin/ado generate apache2htaccess --module fcgi \
 > $MOJO_HOME/.htaccess

Programmatically:

use Ado::Command::generate::apache2vhost;
my $vhost = Ado::Command::generate::apache2vhost->new;
$vhost->run('--ServerName' => 'example.com', '-p' => 8080);

DESCRIPTION

Ado::Command::generate::apache2vhost generates a minimal Apache2 Virtual Host configuration file for your Ado application.

This is a core command, that means it is always enabled and its code a good example for learning to build new commands, you're welcome to fork it.

OPTIONS

Below are the options this command accepts described in Getopt::Long notation.

n|ServerName=s

Fully Qualified Domain Name for the virtual host. Required! See also documentation for Apache2 directive ServerName.

p|port=i

Port on which this host will be served. Defaults to 80.

A|ServerAlias=s

Alias for ServerName. Defaults to 'www.'.$ServerName. See also documentation for Apache2 directive ServerAlias.

a|ServerAdmin=s

Email of the administrator for this host - you. Defaults to webmaster@$ServerName. See also documentation for Apache2 directive ServerAdmin.

D|DocumentRoot=s

DocumentRoot for the virtual host. Defaults to $ENV{MOJO_HOME}. See also documentation for Apache2 directive DocumentRoot.

c|config_file=s

Full path to the file in which the configuration will be written. If not provided the configuration is printed to the screen.

s|with_suexec

Adds SuexecUserGroup directive which is effective only if mod_suexec is loaded. The user and the group are guessed from the user running the command.

u|user=s

User to be used with suexec.

g|group=s

Group to be used with suexec.

v|verbose

Verbose output.

ATTRIBUTES

Ado::Command::generate::apache2vhostn inherits all attributes from Ado::Command::generate and implements the following new ones.

args

Used for storing arguments from the commandline and then passing them to the template

my $args = $self->args;

description

my $description = $vhost->description;
$v              = $vhost->description('Foo!');

Short description of this command, used for the command list.

env

Reference to %ENV.

usage

my $usage = $vhost->usage;
$v        = $vhost->usage('Foo!');

Usage information for this command, used for the help screen.

METHODS

Ado::Command::generate::apache2vhost inherits all methods from Ado::Command::generate and implements the following new ones.

run

$vhost->run(@ARGV);

Run this command. Returns $self.

SEE ALSO

Apache deployment, Apache - Upgrading to 2.4 from 2.2, Mojolicious::Guides::Cookbook, Ado::Command::generate::apache2htaccess, Mojolicious::Command::generate, Getopt::Long, Ado::Command Ado::Manual, Mojolicious, "DEPLOYMENT" in Mojolicious::Guides::Cookbook