Página 1 de 1

Problema Con El Cracker Y El MOD De Ultimos Post

Publicado: 05 Sep 2006, 23:50
por goviante
Repito el Post con mas datos y pido perdon por el anterior.

Tengo un foro phpbb 2.0.21 y he instalado el Cracker Tracker 5.0. Ya tenia instalado un MOD que me ponia los ultimos 10 Post publicados en mi web principal pero el Cracker me lo bloquea. En vez de salir el titulo de los ultimos 10 Post publicados me sale:


SECURITY ALERT » » » »
CBACK CrackerTracker stopped your script because the engine detected that the script you want to execute has not initialized the var $phpbb_root_path correctly.

This could be a potential security risk for this board.

If you are not the admin of this Board please contact him and tell him from this warning message and what you have done that he has the possibility to fix that problem.


Mi web es www.betisweb.com


Gracias y espero haber publicado correctamente este Post

Respuesta: Problema Con El Cracker Y El MOD De Ultimos Post

Publicado: 08 Sep 2006, 17:14
por dinoyoco
El error que te comenta es que una variable no se ha iniciado correctamente.

La variable en cuestion "$phpbb_root_path", la usa el phpBB y tendrias que inspeccionar el codigo del MOD para ver como la usa.

Comprueba en la funcion del MOD si al principio de la funcion (en donde tiene definido las variables) comprueba que en la linea del "global" encuentras "$phpbb_root_path" (ya que al ser esta variable ya usada y definida en phpBB, esta funcion lo unico que debe de hacer es hacer uso de esa variable ya definida).

Salu2

Respuesta: Problema Con El Cracker Y El MOD De Ultimos Post

Publicado: 08 Sep 2006, 20:18
por ThE KuKa
Ese fallo de seguridad tambien lo tenia error.php (fue eliminado de XS) y Hack List MOD (fue FIJADO para XS) digamos que muchas veces se a "cagado" por el autor del MOD en dicha ruta, y no se el porque... :?

S@lu2

Respuesta: Problema Con El Cracker Y El MOD De Ultimos Post

Publicado: 08 Sep 2006, 21:05
por goviante
Veo que sabeis de que hablo pero la verdad es que no termino de entender la solucion.

El archivo que es bloqueado por el Cracker es ultimos.php y el codigo en cuestion de dicho archivo es:

Código: Seleccionar todo

// ################################################################################## 
//                      ULTIMOS MENSAJES ENVIADOS A UN FORO 
// ################################################################################## 
define('IN_PHPBB', true); 
$phpbb_root_path = ''; //PATH DEL FORO RESPECTO DEL SCRIPT 
include($phpbb_root_path . 'extension.inc'); 
include($phpbb_root_path . 'common.'.$phpEx); 
$userdata = session_pagestart($user_ip, PAGE_INDEX); 
init_userprefs($userdata); 
$p = $table_prefix; 
$auth_ary = auth(AUTH_READ, AUTH_LIST_ALL, $userdata); 
while ( list($auth_forum_id, $auth_level) = each($auth_ary) )      
   { 
   if (!$auth_level['auth_read'] ) 
      {      
      $auth_view_forums = ($auth_view_forums . " p.forum_id<>" . $auth_forum_id . " and "); 
      $auth_view_forums1 = ($auth_view_forums1 . " forum_id<>" . $auth_forum_id . " and "); 
      } 
   } 
$auth_view_forums="WHERE " . $auth_view_forums; 
$auth_view_forums1="WHERE " . $auth_view_forums1; 
$busqueda= @mysql_query("SELECT c.cat_id,c.cat_title,c.cat_order,p.forum_id,p.forum_name from  " . $p . "forums p,". $p . "categories c ". $auth_view_forums1 . "p.cat_id=c.cat_id order by c.cat_order,p.forum_order asc"); 
if (!$busqueda) 
   { 
   echo ("Error al seleccionar los elementos de la base de datos. Por favor Inténtelo de nuevo más tarde."); 
   exit(); 
   } 
$k=0; 
while ($row = mysql_fetch_array($busqueda)) 
   { 
   $k=$k+1; 
   $foro_id[$k]=$row['forum_id']; 
   $foro_name[$k]=$row['forum_name']; 
   $cat[$k]=$row['cat_title'];
   } 
if (!isset($_GET['id'])  || $_GET['id']==-1)      {$_GET['id']=$foro_id[1];} 
if (!isset($_GET['num']))                     {$_GET['num']=9;} 
$id=$_GET['id'];            
$mensajes=$_GET['num'];          
$reducido=0;               // ACTIVA A 1 SI DESEAS QUE SE MUESTRE LA VERSIÓN REDUCIDA 
$busqueda= @mysql_query("SELECT p.post_id,p.topic_id,p.forum_id,p.poster_id,p.post_time,po.post_id,po.post_subject,t.topic_id,t.topic_title,t.topic_views,t.topic_replies,u.user_id,u.username,f.forum_name FROM " . $p . "posts_text po," . $p . "posts p," . $p . "topics t," . $p . "users u," . $p . "forums f " . $auth_view_forums . " p.forum_id=" . $id ." and p.forum_id=f.forum_id and p.post_id=po.post_id and p.poster_id=u.user_id and p.topic_id=t.topic_id ORDER BY p.post_time desc limit " . $mensajes); 
if (!$busqueda) 
   { 
   echo ("Error al seleccionar los elementos de la base de datos. Por favor Inténtelo de nuevo más tarde."); 
   exit(); 
   } 
$i=0; 
while ($row = mysql_fetch_array($busqueda)) 
   { 
   $i=$i+1; 
   $u_username[$i]=$row['username']; 
   $u_id[$i]=$row['user_id']; 
   $t_title[$i]=$row['topic_title']; 
   $t_id[$i]=$row['topic_id']; 
   $t_views[$i]=$row['topic_views']; 
   $t_replies[$i]=$row['topic_replies']; 
   $p_time[$i]=$row['post_time']; 
   $p_subject[$i]=$row['post_subject']; 
   $f_title[$i]=$row['forum_name']; 
   $p_id[$i]=$row['post_id'];
   }
$col = ($reducido) ? 3 : 6;  
?> 
<!-- <link rel="stylesheet" href="templates/AcidTechGreen/AcidTechGreen.css" type="text/css"> -->
<link rel="stylesheet" href="../estilos/betisweb.css" type="text/css">
<style type="text/css">
<!--
body {
	background-color: #f8f8f8;
}
-->
</style><table width="100%"  height="33" border="0" cellpadding="2" cellspacing="0"> 
<? 
$row=0; 
for($j=1; $j<$i+1; $j=$j+1) 
   { 
   $row++; 
   if ($row==3) 
      { 
      $row=1; 
      } 
   if ($p_subject[$j]=='') 
      { 
      $p_subject[$j]="Re:" . $t_title[$j]; 
      } 
   $dat=getdate($p_time[$j]); 
   ?> 
   <tr bgcolor="#F8F8F8"> 
      <td height="20" class="row<?=$row?>" style="border-bottom: 1px solid #EAE9E9;"> 
         <span class="linkgeneral"> 
            <a href="<?=$phpbb_root_path?>viewtopic.php?p=<?=$p_id[$j]?>&highlight=#<?=$p_id[$j]?>" target="_blank"> 
               <?=$t_title[$j]?> 
            </a> 
         </span> 
      </td> 
      <td height="20" align="center" class="row<?=$row?>" style="border-bottom: 1px solid #EAE9E9;"> 
         <span class="linkgeneral"> 
            <a href="<?=$phpbb_root_path?>profile.php?mode=viewprofile&u=<?=$u_id[$j]?>" target="_blank"> 
               <?=$u_username[$j]?> 
            </a> 
         </span> 
      </td> 
      <? 
      if (!$reducido) 
         {?> 
         <td height="20" align="center" class="row<?=$row?>" style="border-bottom: 1px solid #EAE9E9;"> 
            <span class="textominihome"> 
               <?=$dat["mday"]?>/<?=$dat["mon"]?>/<?=$dat["year"]?> 
            </span> 
         </td> 
         <? 
         } 
         ?> 
  </tr> 
      
   <? 
   } 

?> 
</table> 


Efectivamente comienza con $phpbb_root_path pero que le puedo añadir para que el cracker no lo bloquee?? Ni que decir tiene que de codigo no se practicamente nada y todo lo hago un poco al tuntun, aunque alguna cosilla se me va quedando en el coco...

Muchas gracias.

Respuesta: Problema Con El Cracker Y El MOD De Ultimos Post

Publicado: 09 Sep 2006, 15:32
por dinoyoco
Haz lo siguiente: en esa linea en donde viene el "$phpbb_root_path" reemplaza:

Código: Seleccionar todo

$phpbb_root_path = ''; //PATH DEL FORO RESPECTO DEL SCRIPT
por

Código: Seleccionar todo

$phpbb_root_path = './'; //PATH DEL FORO RESPECTO DEL SCRIPT
Y prueba.

Salu2

P.D: Para cuando sea necesario añadir algun parrafo de codigo, si es muy grande se usa Pastebin. Hay una guía de como usarlo.

Respuesta: Problema Con El Cracker Y El MOD De Ultimos Post

Publicado: 10 Sep 2006, 01:52
por goviante
Problema solucionado :ok:

MUCHAS GRACIAS por vuestra ayuda, eternamente agradecido....