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::Model - the base schema class.

DESCRIPTION

This is the base class for using table records as plain Perl objects. The subclasses are:

Ado::Model::Domains - A class for TABLE domains in schema main
Ado::Model::Groups - A class for TABLE groups in schema main
Ado::Model::Sessions - A class for TABLE sessions in schema main
Ado::Model::SessionsOld - A class for TABLE sessions_old in schema main
Ado::Model::SqliteSequence - A class for TABLE sqlite_sequence in schema main
Ado::Model::UserGroup - A class for TABLE user_group in schema main
Ado::Model::Users - A class for TABLE users in schema main

ATTRIBUTES

METHODS

Ado::Model inherits all methods from and implements the following ones.

table_to_class

Generates classes from tables on the fly and returns the classname.

state $table_class = Ado::Model->table_to_class(
    namespace => 'Foo', # defaults to Ado::Model
    table     => 'pages',
    type      => 'TABLE'
);

select_range

Returns an array of records.

my @users = Ado::Model::Users->select_range(2);
#users 1, and 2
my @users = Ado::Model::Users->select_range(2,4);
#users 3, and 4

GENERATOR

DBIx::Simple::Class::Schema

SEE ALSO

DBIx::Simple::Class::Schema, DBIx::Simple::Class, DBIx::Simple, Mojolicious::Plugin::DSC

AUTHOR

Красимир Беров (Krasimir Berov)

COPYRIGHT AND LICENSE

Copyright 2014 Красимир Беров (Krasimir Berov).

This program is free software, you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License v3 (LGPL-3.0). You may copy, distribute and modify the software provided that modifications are open source. However, software that includes the license may release under a different license.

See http://opensource.org/licenses/lgpl-3.0.html for more information.