SecurityTracker.com
Keep Track of the Latest Vulnerabilities
with SecurityTracker!
    Home    |    View Topics    |    Search    |    Contact Us    |   

SecurityTracker
Archives


 
Sign Up
Sign Up for Your FREE Weekly SecurityTracker E-mail Alert Summary
Instant Alerts
Buy our Premium Vulnerability Notification Service to receive customized, instant alerts
Affiliates
Put SecurityTracker Vulnerability Alerts on Your Web Site -- It's Free!
Partners
Become a Partner and License Our Database or Notification Service
Report a Bug
Report a vulnerability that you have found to SecurityTracker
bugs
@
securitytracker.com






Category:   Application (Forum/Board/Portal)  >   Metadot Portal Server Vendors:   Metadot Corporation
Metadot Portal Server Input Validation Holes Permit SQL Injection and Cross-Site Scripting Attacks
SecurityTracker Alert ID:  1008747
SecurityTracker URL:  http://securitytracker.com/id/1008747
CVE Reference:   GENERIC-MAP-NOMATCH   (Links to External Site)
Date:  Jan 16 2004
Impact:   Disclosure of authentication information, Disclosure of user information, Execution of arbitrary code via network, Modification of user information, User access via network
Fix Available:  Yes  Vendor Confirmed:  Yes  Exploit Included:  Yes  
Version(s): 5.6.5.4b5 and prior versions
Description:   Several vulnerabilities were reported in the Metadot Portal Server. A remote user can inject SQL commands. A remote user can conduct cross-site scripting attacks.

JeiAr of the GulfTech Security Research Team reported that the software does not filter several user-supplied input variables, allowing for SQL injection and cross-site scripting attacks.

It is reported that the software does not properly filter the 'id' and 'key' variables. A remote user may be able to execute SQL commands on gain information about the system.

Some demonstration exploit URLs are provided:

/index.pl?isa=Session&op=auto_login&new_user=&key='[Problem]
/index.pl?id=[Evil_Query]
/index.pl?iid=[Evil_Query]
/index.pl?isa=Session&op=auto_login&new_user=&key=[Evil_Query]
/index.pl?iid=[ValidID]&isa=Discussion&op=
/index.pl?isa=blah

It is also reported that a remote user can create a specially crafted URL that, when loaded by a target user, will cause arbitrary scripting code to be executed by the target user's browser. The code will originate from the site running the vulnerable software and will run in the security context of that site. As a result, the code will be able to access the target user's cookies (including authentication cookies), if any, associated with the site, access data recently submitted by the target user via web form to the site, or take actions on the site acting as the target user.

Some demonstratoin exploit URLs are provided:

/index.pl?isa=XSS<iframe%20src=http://www.gulftech.org>
/userchannel.pl?id=435&isa=NewsChannel&redirect=1&op="><iframe%20src=http://www.gulftech.org>
/index.pl?iid='"><iframe%20src=http://www.gulftech.org>

Impact:   A remote user can inject SQL commands to be executed by the underlying database.

A remote user can access the target user's cookies (including authentication cookies), if any, associated with the site running the Metadot Portal Server software, access data recently submitted by the target user via web form to the site, or take actions on the site acting as the target user.

Solution:   The vendor has released a fixed version (5.6.5.4), available at:

http://www.metadot.com/metadot/index.pl?iid=2504&isa=Category

[Editor's note: A more recent version (5.6.6) has since been released and reportedly contains an additional security fix related to input validation.]

Vendor URL:  www.metadot.com/metadot/index.pl?id=2037 (Links to External Site)
Cause:   Input validation error
Underlying OS:   Linux (Any), UNIX (Any), Windows (Any)

Message History:   None.


 Source Message Contents

Date:  16 Jan 2004 01:10:47 -0000
Subject:  Multiple MetaDot Vulnerabilities [ All Versions ]




Vendor  : Metadot Corporation
URL     : http://www.metadot.com
Version : MetaDot Portal 5.6.5.4b5 && Earlier [ All Versions ]
Risk    : Multiple Vulnerabilities



Description:
Metadot is a popular open source portal software (GPL) recognized for its revolutionary 
ease-of-use. It provides content management like file, page and link management, collaboration 
features like discussion forums and polls and personalization like My Yahoo. It is powered by 
Perl && MySQL. Users range from home users to government, banks, universities and even NASA ;)



SQL Injection Vulnerability:
It may be possible for an attacker to influence SQL queries by passing unexpected data to
certain variables including the "id" and "key" variable. Even if an attacker is not successful
with influencing an SQL query he can cause the outputted error message to execute script into
an unsuspecting users browser thus causing a Cross Site Scripting attack. Also, the SQL error
messages reveal a great deal of data about the server. Below is an example error message. The
URI used to create this error was index.pl?isa=Session&op=auto_login&new_user=&key='[Problem]

--[ Begin Error Message ]--------------------------------------------------------------------

sqlSelect: SQL statement:<BR><BR>SELECT userid, lastonline, sessioninfo FROM sessions WHERE 
sessionid=''[Problem]'
Error: You have an error in your SQL syntax near '[Problem]' ' at line 1<BR><BR>
at /home/sharem/metadot/metadot/index.pl

DBAccess::DBIObj::sqlSelect('DBAccess::MySQL=HASH(0x85de6a8)', 'userid, lastonline, sessioninfo', 
'sessions', 'sessionid=\'\'[Problem]\'') called at /home/sharem/metadot/metadot/DBAccess.pm line 129 
DBAccess::sqlSelect('DBAccess', 'userid, lastonline, sessioninfo', 'sessions', 'sessionid=\'\'[Problem]\'') 
called at /home/sharem/metadot/metadot/Session.pm line 508 Session::_initialize('Session=HASH(0xb1be85c)', 
'\'[Problem]') called at /home/sharem/metadot/metadot/Session.pm line 161 Session::restore('Session', 
'\'[Problem]') called at /home/sharem/metadot/metadot/Metadot/SessionHandler/CookieSessionHandler.pm line 
97 Metadot::SessionHandler::CookieSessionHandler::restore_session('Metadot::SessionHandler::
CookieSessionHandler=HASH(0x8c443f8)', '\'[Problem]')called at /home/sharem/metadot/metadot/Metadot/
Authenticator.pm line 63 Metadot::Authenticator::authenticate('Metadot::Authenticator::UserPassAuthenticator
=HASH(0x9d34338)') called at /home/sharem/metadot/metadot/Portal.pm line 3863 Portal::_web_init('Portal
=HASH(0xb4c271c)') called at /home/sharem/metadot/metadot/Metadot/Implementations/Portal/Default.pm line 52 
Metadot::Implementations::Portal::Default::initialize('Metadot::Implementations::Portal::Default', 'Portal
=HASH(0xb4c271c)') called at /home/sharem/metadot/metadot/Portal.pm line 2830 Portal::_initialize('Portal
=HASH(0xb4c271c)') called at /home/sharem/metadot/metadot/Portal.pm line 160 Portal::new('Portal', 1) called
at /home/sharem/metadot/metadot/index.pl line 43 Apache::ROOT::metadot::index_2epl::handler('Apache=SCALAR
(0xb421470)') called at /usr/local/lib/perl5/site_perl/5.6.1/i686-linux/Apache/Registry.pm line 149 eval 
{...} called at /usr/local/lib/perl5/site_perl/5.6.1/i686-linux/Apache/Registry.pm line 149 Apache::Registry
::handler('Apache=SCALAR(0xb421470)') called at /dev/null line 0 eval {...} called at /dev/null line 0

---------------------------------------------------------------------------------------------

Below are some examples URI's that will allow an attacker to influence queries, gather info or XSS. 

/index.pl?id=[Evil_Query]
/index.pl?iid=[Evil_Query]
/index.pl?isa=Session&op=auto_login&new_user=&key=[Evil_Query]



Information Disclosure && Path Disclosure:
There is a great deal of information given up by interrupting the SQL query, but can also be caused
in other ways than the previously mentioned. Lets look at /index.pl?iid=[ValidID]&isa=Discussion&op=
Where [ValidID] is should be a valid id number such as 1000 or whatever it may be.

--[ Begin Error Message ]--------------------------------------------------------------------

Software error:
must provide operation name at /home/sharem/metadot/metadot/Auditable.pm line 196
Auditable::is_allowed_to_do('Discussion=HASH(0xae19218)', '', 'Metadot::User::FlexUser=HASH(0xb414f70)', 1) 
called at /home/sharem/metadot/metadot/index.pl line 232 Apache::ROOT::metadot::index_2epl::handler
('Apache=SCALAR(0xacf893c)') called at /usr/local/lib/perl5/site_perl/5.6.1/i686-linux/Apache/Registry.pm 
line 149 eval {...} called at /usr/local/lib/perl5/site_perl/5.6.1/i686-linux/Apache/Registry.pm line 149
Apache::Registry::handler('Apache=SCALAR(0xacf893c)') called at /dev/null line 0
eval {...} called at /dev/null line 0

---------------------------------------------------------------------------------------------

As you can see that will give you the server path, perl version and several other interesting bits of
information. Path can also be disclosed by a bogus value in the "isa" variable. /index.pl?isa=blah



Cross Site Scripting:
There are a number of potential cross site scripting issues in MetaDot. Below are some examples

/index.pl?isa=XSS<iframe%20src=http://www.gulftech.org>
/userchannel.pl?id=435&isa=NewsChannel&redirect=1&op="><iframe%20src=http://www.gulftech.org>
/index.pl?iid='"><iframe%20src=http://www.gulftech.org>



Solution:
The MetaDot team have addressed this issue and an update was supposed to be released on Thursday the
8th of January. Users of the MetaDot portal system are encouraged to upgrade immediately. Users can
get the necessary security fixes provided by MetaDot Corporation at the link below.

http://www.metadot.com/metadot/index.pl?iid=2632&isa=Category



Credits:
Credits go to JeiAr of the GulfTech Security Research Team.
http://www.gulftech.org

 
 


Go to the Top of This SecurityTracker Archive Page





Home   |    View Topics   |    Search   |    Contact Us

Copyright 2013, SecurityGlobal.net LLC