Página 2 de 2

Re: Hackeado

Publicado: 17 Nov 2005, 10:08
por hackeado
Vamos a ver thole, tengo 37 aí?Â?í?Â?í?Â?í?Â?í?Â?í?Â?í?Â?í?±os y dos hijos, te ruego no me hables como si fuera un adolescente que evita hacer sus tareas para irse a jugar a la play.

En mi primer post ya digo que no se nada de php, por extension te digo que no se nada de programacion de ningun tipo asi que me vas a permitir que sea yo el que valore el esfuerzo que estoy haciendo, ya que solo yo se las horas que llevo invertidas en intentar solucionar el problema.

Una vez dicho esto, te digo:

Cuando veo el codigo fuente a traves del navegador si veo el script, sin ninguna dificultad. Pero cuando busco lo mismo, o parecido en el archivo bajado del ftp, bien el index.php o el memberlist.php no encuentro nada que se le parezca.

Mi pregunta es bien sencilla: í?Â?í?Â?í?Â?í?Â?í?Â?í?Â?í?Â?í?¿porque veo el script en la red (codigo fuente) y no en los archivos?

LLego a este foro buscando un soporte de ayuda, no para molestar a ningun moderador ni para que nadie me solucione el problema. Pero lo que tengo claro es que casi nunca hay malos alumnos sino malos profesores.

Aqui dejo el index.php y no para que nadie me arregle nada. Me conformaria con que alguno me dijera que esta viendo en ese archivo lo que yo no veo.

Código: Seleccionar todo

assign_vars(array(
  		"META" => '')
  	);
  
  	$message = $lang['Forums_marked_read'] . '

' . sprintf($lang['Click_return_index'], '', ' ');
  
  	message_die(GENERAL_MESSAGE, $message);
  }
  //
  // End handle marking posts
  //
  
  $tracking_topics = ( isset($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_t']) ) ? unserialize($HTTP_COOKIE_VARS[$board_config['cookie_name'] . "_t"]) : array();
  $tracking_forums = ( isset($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_f']) ) ? unserialize($HTTP_COOKIE_VARS[$board_config['cookie_name'] . "_f"]) : array();
  
  //
  // If you don't use these stats on your index you may want to consider
  // removing them
  //
  $total_posts = get_db_stat('postcount');
  $total_users = get_db_stat('usercount');
  $newest_userdata = get_db_stat('newestuser');
  $newest_user = $newest_userdata['username'];
  $newest_uid = $newest_userdata['user_id'];
  
  if( $total_posts == 0 )
  {
  	$l_total_post_s = $lang['Posted_articles_zero_total'];
  }
  else if( $total_posts == 1 )
  {
  	$l_total_post_s = $lang['Posted_article_total'];
  }
  else
  {
  	$l_total_post_s = $lang['Posted_articles_total'];
  }
  
  if( $total_users == 0 )
  {
  	$l_total_user_s = $lang['Registered_users_zero_total'];
  }
  else if( $total_users == 1 )
  {
  	$l_total_user_s = $lang['Registered_user_total'];
  }
  else
  {
  	$l_total_user_s = $lang['Registered_users_total'];
  }
  
  
  //
  // Start page proper
  //
  $sql = "SELECT c.cat_id, c.cat_title, c.cat_order
  	FROM " . CATEGORIES_TABLE . " c 
  	ORDER BY c.cat_order";
  if( !($result = $db->sql_query($sql)) )
  {
  	message_die(GENERAL_ERROR, 'Could not query categories list', '', __LINE__, __FILE__, $sql);
  }
  
  while( $category_rows[] = $db->sql_fetchrow($result) );
  $db->sql_freeresult($result);
  
  if( ( $total_categories = count($category_rows) ) )
  {
  	//
  	// Define appropriate SQL
  	//
  	switch(SQL_LAYER)
  	{
  		case 'postgresql':
  			$sql = "SELECT f.*, p.post_time, p.post_username, u.username, u.user_id 
  				FROM " . FORUMS_TABLE . " f, " . POSTS_TABLE . " p, " . USERS_TABLE . " u
  				WHERE p.post_id = f.forum_last_post_id 
  					AND u.user_id = p.poster_id  
  					UNION (
  						SELECT f.*, NULL, NULL, NULL, NULL
  						FROM " . FORUMS_TABLE . " f
  						WHERE NOT EXISTS (
  							SELECT p.post_time
  							FROM " . POSTS_TABLE . " p
  							WHERE p.post_id = f.forum_last_post_id  
  						)
  					)
  					ORDER BY cat_id, forum_order";
  			break;
  
  		case 'oracle':
  			$sql = "SELECT f.*, p.post_time, p.post_username, u.username, u.user_id 
  				FROM " . FORUMS_TABLE . " f, " . POSTS_TABLE . " p, " . USERS_TABLE . " u
  				WHERE p.post_id = f.forum_last_post_id(+)
  					AND u.user_id = p.poster_id(+)
  				ORDER BY f.cat_id, f.forum_order";
  			break;
  
  		default:
  			$sql = "SELECT f.*, p.post_time, p.post_username, u.username, u.user_id
  				FROM (( " . FORUMS_TABLE . " f
  				LEFT JOIN " . POSTS_TABLE . " p ON p.post_id = f.forum_last_post_id )
  				LEFT JOIN " . USERS_TABLE . " u ON u.user_id = p.poster_id )
  				ORDER BY f.cat_id, f.forum_order";
  			break;
  	}
  	if ( !($result = $db->sql_query($sql)) )
  	{
  		message_die(GENERAL_ERROR, 'Could not query forums information', '', __LINE__, __FILE__, $sql);
  	}
  
  	$forum_data = array();
  	while( $row = $db->sql_fetchrow($result) )
  	{
  		$forum_data[] = $row;
  	}
  	$db->sql_freeresult($result);
  
  	if ( !($total_forums = count($forum_data)) )
  	{
  		message_die(GENERAL_MESSAGE, $lang['No_forums']);
  	}
  
  	//
  	// Obtain a list of topic ids which contain
  	// posts made since user last visited
  	//
  	if ( $userdata['session_logged_in'] )
  	{
  		$sql = "SELECT t.forum_id, t.topic_id, p.post_time 
  			FROM " . TOPICS_TABLE . " t, " . POSTS_TABLE . " p 
  			WHERE p.post_id = t.topic_last_post_id 
  				AND p.post_time > " . $userdata['user_lastvisit'] . " 
  				AND t.topic_moved_id = 0"; 
  		if ( !($result = $db->sql_query($sql)) )
  		{
  			message_die(GENERAL_ERROR, 'Could not query new topic information', '', __LINE__, __FILE__, $sql);
  		}
  
  		$new_topic_data = array();
  		while( $topic_data = $db->sql_fetchrow($result) )
  		{
  			$new_topic_data[$topic_data['forum_id']][$topic_data['topic_id']] = $topic_data['post_time'];
  		}
  		$db->sql_freeresult($result);
  	}
  
  	//
  	// Obtain list of moderators of each forum
  	// First users, then groups ... broken into two queries
  	//
  	$sql = "SELECT aa.forum_id, u.user_id, u.username 
  		FROM " . AUTH_ACCESS_TABLE . " aa, " . USER_GROUP_TABLE . " ug, " . GROUPS_TABLE . " g, " . USERS_TABLE . " u
  		WHERE aa.auth_mod = " . TRUE . " 
  			AND g.group_single_user = 1 
  			AND ug.group_id = aa.group_id 
  			AND g.group_id = aa.group_id 
  			AND u.user_id = ug.user_id 
  		GROUP BY u.user_id, u.username, aa.forum_id
  		ORDER BY aa.forum_id, u.user_id";
  	if ( !($result = $db->sql_query($sql)) )
  	{
  		message_die(GENERAL_ERROR, 'Could not query forum moderator information', '', __LINE__, __FILE__, $sql);
  	}
  
  	$forum_moderators = array();
  	while( $row = $db->sql_fetchrow($result) )
  	{
  		$forum_moderators[$row['forum_id']][] = '' . $row['username'] . '';
  	}
  	$db->sql_freeresult($result);
  
  	$sql = "SELECT aa.forum_id, g.group_id, g.group_name 
  		FROM " . AUTH_ACCESS_TABLE . " aa, " . USER_GROUP_TABLE . " ug, " . GROUPS_TABLE . " g 
  		WHERE aa.auth_mod = " . TRUE . " 
  			AND g.group_single_user = 0 
  			AND g.group_type  " . GROUP_HIDDEN . "
  			AND ug.group_id = aa.group_id 
  			AND g.group_id = aa.group_id 
  		GROUP BY g.group_id, g.group_name, aa.forum_id 
  		ORDER BY aa.forum_id, g.group_id";
  	if ( !($result = $db->sql_query($sql)) )
  	{
  		message_die(GENERAL_ERROR, 'Could not query forum moderator information', '', __LINE__, __FILE__, $sql);
  	}
  
  	while( $row = $db->sql_fetchrow($result) )
  	{
  		$forum_moderators[$row['forum_id']][] = '' . $row['group_name'] . '';
  	}
  	$db->sql_freeresult($result);
  
  	//
  	// Find which forums are visible for this user
  	//
  	$is_auth_ary = array();
  	$is_auth_ary = auth(AUTH_VIEW, AUTH_LIST_ALL, $userdata, $forum_data);
  
  	//
  	// Start output of page
  	//
  	define('SHOW_ONLINE', true);
  	$page_title = $lang['Index'];
  	include($phpbb_root_path . 'includes/page_header.'.$phpEx);
  
  	$template->set_filenames(array(
  		'body' => 'index_body.tpl')
  	);
  
  	$template->assign_vars(array(
  		'TOTAL_POSTS' => sprintf($l_total_post_s, $total_posts),
  		'TOTAL_USERS' => sprintf($l_total_user_s, $total_users),
  		'NEWEST_USER' => sprintf($lang['Newest_user'], '', $newest_user, ''), 
  
  		'FORUM_IMG' => $images['forum'],
  		'FORUM_NEW_IMG' => $images['forum_new'],
  		'FORUM_LOCKED_IMG' => $images['forum_locked'],
  
  		'L_FORUM' => $lang['Forum'],
  		'L_TOPICS' => $lang['Topics'],
  		'L_REPLIES' => $lang['Replies'],
  		'L_VIEWS' => $lang['Views'],
  		'L_POSTS' => $lang['Posts'],
  		'L_LASTPOST' => $lang['Last_Post'], 
  		'L_NO_NEW_POSTS' => $lang['No_new_posts'],
  		'L_NEW_POSTS' => $lang['New_posts'],
  		'L_NO_NEW_POSTS_LOCKED' => $lang['No_new_posts_locked'], 
  		'L_NEW_POSTS_LOCKED' => $lang['New_posts_locked'], 
  		'L_ONLINE_EXPLAIN' => $lang['Online_explain'], 
  
  		'L_MODERATOR' => $lang['Moderators'], 
  		'L_FORUM_LOCKED' => $lang['Forum_is_locked'],
  		'L_MARK_FORUMS_READ' => $lang['Mark_all_forums'], 
  
  		'U_MARK_READ' => append_sid("index.$phpEx?mark=forums"))
  	);
  
  	//
  	// Okay, let's build the index
  	//
  	for($i = 0; $i assign_block_vars('catrow', array(
  				'CAT_ID' => $cat_id,
  				'CAT_DESC' => $category_rows[$i]['cat_title'],
  				'U_VIEWCAT' => append_sid("index.$phpEx?" . POST_CAT_URL . "=$cat_id"))
  			);
  
  			if ( $viewcat == $cat_id || $viewcat == -1 )
  			{
  				for($j = 0; $j  $forum_last_post_time )
  											{
  												$unread_topics = false;
  											}
  										}
  
  										if ( isset($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_f_all']) )
  										{
  											if ( $HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_f_all'] > $forum_last_post_time )
  											{
  												$unread_topics = false;
  											}
  										}
  
  									}
  								}
  
  								$folder_image = ( $unread_topics ) ? $images['forum_new'] : $images['forum']; 
  								$folder_alt = ( $unread_topics ) ? $lang['New_posts'] : $lang['No_new_posts']; 
  							}
  
  							$posts = $forum_data[$j]['forum_posts'];
  							$topics = $forum_data[$j]['forum_topics'];
  
  							if ( $forum_data[$j]['forum_last_post_id'] )
  							{
  								$last_post_time = create_date($board_config['default_dateformat'], $forum_data[$j]['post_time'], $board_config['board_timezone']);
  
  								$last_post = $last_post_time . '
';
  
  								$last_post .= ( $forum_data[$j]['user_id'] == ANONYMOUS ) ? ( ($forum_data[$j]['post_username'] != '' ) ? $forum_data[$j]['post_username'] . ' ' : $lang['Guest'] . ' ' ) : '' . $forum_data[$j]['username'] . ' ';
  								
  								$last_post .= '';
  							}
  							else
  							{
  								$last_post = $lang['No_Posts'];
  							}
  
  							if ( count($forum_moderators[$forum_id]) > 0 )
  							{
  								$l_moderators = ( count($forum_moderators[$forum_id]) == 1 ) ? $lang['Moderator'] : $lang['Moderators'];
  								$moderator_list = implode(', ', $forum_moderators[$forum_id]);
  							}
  							else
  							{
  								$l_moderators = ' ';
  								$moderator_list = ' ';
  							}
  
  							$row_color = ( !($i % 2) ) ? $theme['td_color1'] : $theme['td_color2'];
  							$row_class = ( !($i % 2) ) ? $theme['td_class1'] : $theme['td_class2'];
  
  							$template->assign_block_vars('catrow.forumrow',	array(
  								'ROW_COLOR' => '#' . $row_color,
  								'ROW_CLASS' => $row_class,
  								'FORUM_FOLDER_IMG' => $folder_image, 
  								'FORUM_NAME' => $forum_data[$j]['forum_name'],
  								'FORUM_DESC' => $forum_data[$j]['forum_desc'],
  								'POSTS' => $forum_data[$j]['forum_posts'],
  								'TOPICS' => $forum_data[$j]['forum_topics'],
  								'LAST_POST' => $last_post,
  								'MODERATORS' => $moderator_list,
  
  								'L_MODERATOR' => $l_moderators, 
  								'L_FORUM_FOLDER_ALT' => $folder_alt, 
  
  								'U_VIEWFORUM' => append_sid("viewforum.$phpEx?" . POST_FORUM_URL . "=$forum_id"))
  							);
  						}
  					}
  				}
  			}
  		}
  	} // for ... categories
  
  }// if ... total_categories
  else
  {
  	message_die(GENERAL_MESSAGE, $lang['No_forums']);
  }
  
  //
  // Generate the page
  //
  $template->pparse('body');
  
  include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
  
  ?>
Supongo que estare equivocado, pero yo no veo nada parecido a "http://secretlyx.sitemynet.com/hacked.htm.

Publicado: 19 Nov 2005, 13:46
por tole
Yo me baso en mis respuestas en lo que buenamente veo, me fui a tu sitio, me bají?Â?í?Â?í?Â?í?Â?í?Â?í?Â?í?Â?í?© ese archivo y alguno mí?Â?í?Â?í?Â?í?Â?í?Â?í?Â?í?Â?í?¡s y en esos archivos si veí?Â?í?Â?í?Â?í?Â?í?Â?í?Â?í?Â?í?­a lo que te comentaba, yo tampoco tengo idea de php, pero si busco algo y lo encuentro es porque a mí?Â?í?Â?í?Â?í?Â?í?Â?í?Â?í?Â?í?­ me aparece, eso me da a entender que algo estoy haciendo mal y que ahí?Â?í?Â?í?Â?í?Â?í?Â?í?Â?í?Â?í?­ no estí?Â?í?Â?í?Â?í?Â?í?Â?í?Â?í?Â?í?¡ el fallo, yo ya me tirarí?Â?í?Â?í?Â?í?Â?í?Â?í?Â?í?Â?í?­a a lo bestia, revisando a fondo la db buscando parte del texto y bajando todos los archivos a local y con el buscador del xp hacer una bí?Â?í?Â?í?Â?í?Â?í?Â?í?Â?í?Â?í?ºsqueda del texto en los archivos, al menos para empezar a ver donde leches estí?Â?í?Â?í?Â?í?Â?í?Â?í?Â?í?Â?í?¡ metido el script.

Por cierto yo tengo 35, me gusta la play pero tengo problemas mí?Â?í?Â?í?Â?í?Â?í?Â?í?Â?í?Â?í?¡s gordos a los que atender.

Salu2.

Re: Hackeado

Publicado: 19 Nov 2005, 21:50
por Nazcar
Bueno parece que por fin lo has solucionado,almenos lo que al <script> se refiere espero que hayas cambiado todos los passwords havidos y por haver de acceso a ese hosting y cuenta de de administracion del foro.

PD si ese es tu index cuando estaba el script aun puesto te tengo que decir que esta "limpio" esa redireccion puede estar en cualquier fichero que sea llamado desde index.php.Sin tener acceso al codigo fuente es muy complicado poder decirte linea y que archivo es el modificado puesto que desde el servidor lo que la gente ve es el procesado que hace el servidor web de los scripts de php,o sea lo que vemos es un texto plano hecho despues del procesado por el servidor.

Re: Hackeado

Publicado: 21 Nov 2005, 13:58
por hackeado
Si, al final he podido recuperarlo aunque por desgracia he tenido que usar un backup de junio. Parece ser que meten el script en un archivo oculto que no se ve por ftp normalmente. Al meter la ruta de ese htacces en el navegador me denegaba la entrada con lo cual me confirmaba la existencia.

Resumiendo, borre y restaure una copia. Me ha valido para aprender varias cosas de seguridad (he actualizado a la 2.18 y he puesto contraseí?Â?í?Â?í?Â?í?Â?í?Â?í?Â?í?Â?í?±as al direct administr).

Ahora estoy pensando en montarme un portal, ya que he visto en otra page de phpbb el mx sistem ese y me ha gustado. Quiero aprovechar tambien para poner el 41images o algo similar para el apartado fotografico.

Pero esa es otra historia, primero tengo que pasar el foro phpbb a un directorio ya que lo tengo en el raiz.

Saludos y gracias, ah tole, cuidate esa ulcera. Ya ves que el script no estaba en los archivos. De todas maneras yo era moderador en un foro del emule y se lo que es hartarse de responder lo mismo. Sin rencor. :wink:

Re: Hackeado

Publicado: 26 Nov 2005, 00:49
por daosorio
hackeado, no se si ya checaste la tabla config y tenga valores no deseados, tales como el script que dices.

Saludos.
hackeado";p="9108 escribió:Vale, como me estaba volviendo loco, me he ido al foro, al indice y he visto el codigo fuente y SIII; efectivamente ahi he visto el script en 3 segundos. Despues he seguido buscando y lo he encontrado sin dificultad en los apartados miembros y Faq. Os lo pongo:

Código: Seleccionar todo

1"><script>location="http://secretlyx.sitemynet.com/hacked.htm"</script></option><option value="-1">----------------</option><option value="1">ALICANTE HOY</option><option value="2">FESTES POPULARS 
Pero cuando busco algo parecido en el indice.php, memberlist.php o cualquier otro archivo de los bajados por ftp del foro no encuentro nada.

Otra cosa, cuando entro por ftp, veo en la carpeta general donde esta instalado el foro que fue modificada el 10-11-05 dia del ataque, pero luego al abrirla no encuentro ningun archivo modificado ni ahi ni en las carpetas siguientes.

No se si para vosotros es sencillo, pero de verdad que necesito orientacion porque no se que pasos seguir.

Gracias!! :(