Article View: chile.comp.programacion
Article #2138Re: validacion o proteccion de includes en PHP
From: RobertoCL
Date: Mon, 27 Mar 2006 17:26
Date: Mon, 27 Mar 2006 17:26
70 lines
3880 bytes
3880 bytes
"DPLWeb" <chls2k5-all@yahoo.com> escribi� en el mensaje
news:e06st7$jk4$1@news.nivel5.cl...
> Hola amigos:
>
> Aqui les tengo una gran duda que me ha causado algunos problemas.
> Empec� con PHP hace un tiempo y decidi hacerme cargo de un sitio web.
> LO arregle bastante dandole mucha funcionalidad con PHP y MySQL.
>
> Hace unas semanas atras el sitio estaba caido. Llamo al hosting (Linux en
> Chilecom.net) y me dicen que esta bloqueado porque ha sido hackeado y
> segun ellos porque los includes o requires no estan validados y hay que
> protegerlos.
>
> ��Que?? �que es eso? No me supo explicar con manzanitas como le pedi. El
> sitio ahora esta activo pero bajo la amenaza de una nueva desactivacion si
> vuelve a ocurrir. De hecho es la segunda vez que pasa.
>
> Lo que me dijeron: El hackeo provoca que se mande spam y que el sitio
> funcione como un foro, el servidor y sus recursos se saturan y como es un
> servidor compartido estoy perjudicando a otros.
>
> Estuve buscando informacion y encontre un documento que habla de la
> edicion del ".htaccess" y verificar los accesos y ver direcciones extra�as
> del tipo "index.php?t=http://......" que obviamente yo no uso
>
> Revise los logs de la cuenta y encontre varios casi siempre direccionando
> a la misma URL.
> Edit� el "htaccess" desde el panel de control de la cuenta y puse las IP
> sospechosas.
>
> Hasta ahora no pasa nada, espero haber echo lo correcto. El mayor temor es
> que se metan a la base de datos o incluso que me cambien todo el sitio web
> y peor que ni me de cuenta.
>
> Un dato quizas util: tengo un index.php que esta lleno de "require()" para
> poder cargar diferentes partes del sitio, incluso las paginas que van
> cambiando en cada seccion y precisamente las carga mediante la variable
> GET llamada "t". Ademas al sitio le gener� un sistema de administracion
> muy basico con validacion y uso de sesiones.
>
> Mis consultas para uds son si hice bien lo que les cuento y que mas
> deberia hacer para evitar todas estas cosas se vuelvan a repetir.
>
> Por cierto, he pensado en ponerle Joomla (o el CMS que uds me sugieran)
> para evitar todas estas cosas y aprovechar sus potencialidades. Pero si
> logro solucionar este tema, no lo voy a hacer. Dependo de uds.
El problema del opensource es que se debe estar constantemente actualizando,
sino crackeo asegurado.
Un par de validaciones:
Si la URL es ver.php?i=login
$inc = "mods/".$_GET['i'].".inc.php";
if (file_exists($inc)) {
include($inc);
}
Validar si existe el include. No usar llamadas al php completas (ej
ver.php?i=mods/login.inc.php)
if (!eregi("ver.php", $PHP_SELF)) {
die ("Error 001..."); EXIT;
}
En el login.inc.php no aceptar pedidos de otra parte que no sea de ver.php
Lectura
http://www.php.net/manual/es/security.php
--
RCL
Technical Details
Message-ID:
<e0971n$aov$1@proxy.ifxnw.cl>Path:
arc1-ca.pugleaf.net!g2news1.google.com!news3.google.com!news4.google.com!news.glorb.com!nntp-server.pubsub.com!news.nivel5.cl!news2.ifxnw.cl!not-for-mailReferences:
<e06st7$jk4$1@news.nivel5.cl>Show Full Headers
Complete Article Headers
X-Google-Thread: 1593cb,69168fc75797102 X-Google-Attributes: gid1593cb,public X-Google-Language: SPANISH,ASCII Path: arc1-ca.pugleaf.net!g2news1.google.com!news3.google.com!news4.google.com!news.glorb.com!nntp-server.pubsub.com!news.nivel5.cl!news2.ifxnw.cl!not-for-mail From: "RobertoCL" <rcl2020NOSPAM@hotmail.com> Newsgroups: chile.comp.programacion Subject: Re: validacion o proteccion de includes en PHP Date: Mon, 27 Mar 2006 13:26:21 -0400 Organization: IFX Networks News Server Lines: 72 Message-ID: <e0971n$aov$1@proxy.ifxnw.cl> References: <e06st7$jk4$1@news.nivel5.cl> NNTP-Posting-Host: 200.73.30.63 X-Trace: proxy.ifxnw.cl 1143480183 11039 200.73.30.63 (27 Mar 2006 17:23:03 GMT) X-Complaints-To: abuse@ifxnetworks.com NNTP-Posting-Date: Mon, 27 Mar 2006 17:23:03 +0000 (UTC) X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.2527 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2527 X-RFC2646: Format=Flowed; Response