sábado, 29 de septiembre de 2018

Resúmen, apuntes y práctica de la asignatura "Sistemas de Bases de Datos". Grado en Ingeniería Informática

La definición que el E.D. da de la asignatura es:

En la actualidad las bases de datos son parte esencial en el quehacer humano, es por ello que el conocimiento sobre los sistemas de bases de datos es indispensable en los grados en que se imparte. En este sentido, el objetivo de la asignatura es introducir al alumno a los sistemas gestores de bases de datos.
La asignatura es parte de la materia Sistemas de Información, de carácter obligatorio para la titulación de Grado en Ingeniería Informática. Se imparte en el primer cuatrimestre del tercer curso de dicho grado y supone una carga de 6 créditos ECTS.
La asignatura Sistemas de Bases de Datos pertenece a la materia de Sistemas de Información y dentro de esta materia es la segunda de las asignaturas que se cursa en el grado: Grado en Ingeniería Informática. A esta materia pertenecen las asignaturas: Bases de Datos (obligatoria), Sistemas de Bases de Datos (obligatoria) y Gestión y Recuperación de la Información (optativa)

 A título personal me parece una asignatura compleja, con bastante carga lectiva y que por desgracia aporta poco al mundo real o profesional, salvo si vas a construir un motor de base de datos.

Respecto a la práctica, más de lo mismo. Muy interesante y actual, ya que se hace usando el Framework Hadoop, pero que poco o nada tiene que ver con el contenido de la asignatura.

Por todo ello, dejo subido el resumen y la práctica de la asignatura por si a alguien le puede ayudar:


¡Hasta la próxima!


domingo, 4 de octubre de 2015

Bandit Level 20 → Level 21



Los datos de conexión para este nivel son:

- Host: bandit.labs.overthewire.org
- User: bandit20
- Pass: GbKksEFF4yrVs6il55v6gwY5aVje5f0j



La descripción es la siguiente:


Básicamente, nos está indicando que disponemos de un binario, con bit suid habilitado para el user bandit21



Al ejecutarlo sin ningún parámetro actual, nos indica que hará una conexión TCP a un puerto dado sobre localhost y que si éste recibe el password del level 20 de la otra conexión, el password del level 21 será mostrado.

El siguiente diagrama clarifica un poco todo esto:


Por tanto, hay que:
  1. Iniciar una nueva conexión SSH.
  2. Levantar un daemond que permanezca en modo 'listenign' y que al recibir una conexión, envíe el password del level 20:



Como se puede ver, netcat es la herramienta perfecta para hacer esto.

Levantado el daemon, tan solo queda volver a ejecutar suconnect argumentándole el puerto para poder resolver el level:




Con el fin de clarificar un poco todo, he editado el título de las terminales como:
  • CLIENT: Para el terminal que ejecuta suconnect.
  • SERVER: Para el terminal que ejecuta el daemond.


Esto es todo por ahora. Hasta la próxima entrada!

domingo, 27 de septiembre de 2015

Bandit Level 19 → Level 20



Los datos de conexión para este nivel son:

- Host: bandit.labs.overthewire.org
- User: bandit19
- Pass: IueksS7Ubh8G3DCwVzrTd8rAVOwq3M5x



La descripción es la siguiente:


Como se puede observar, en este caso nos está diciendo que debemos hacer uso de setuid. Esto ya fue comentado de pasada en este otro wargame.

La resolución de este level es muy sencilla y pasa por pasarle al binario bandit20-do como parámetro actual, un comando que nos permita visualizar el contenido del fichero bandit20:



Aunque no es del todo necesario, podemos ver a continuación, el desensamblado del binario:



Hasta el próximo level!

sábado, 19 de septiembre de 2015

Bandit Level 18 → Level 19



Los datos de conexión para este nivel son:

- Host: bandit.labs.overthewire.org
- User: bandit18
- Pass: kfBf3eYk5BPBRzwjqutbbfE887SVc5Yd


Este nuevo level introduce algo distinto a los anteriores. Si retomamos parte del texto del nivel anterior, vemos que nos avisa de algo:

NOTE: if you have solved this level and see ‘Byebye!’ when trying to log into bandit18, this is related to the next level, bandit19

De manera tal que si hacemos la conexión SSH, obtendremos el comentado Byebye!:



Veamos que pistas nos proporciona el enunciado de este level:


Todo parece indicar que el fichero .bashrc (fichero que se carga al iniciar una 'shell de login interactiva) ha sido modificado de tal manera que no nos proporcione un shell. Por tanto, lo que debemos hacer es forzar la conexión SSH argumentando la shell que deseamos usar de la siguiente manera:



El resto, es sencillo. Tan solo debemos leer el contenido del fichero 'readme'.

Esto es todo por el momento!



Resúmenes de "Gestión de Proyectos Informáticos". Grado en Ingeniería Informática de la UNED


El objetivo de esta asignatura es proporcionar los conocimientos y habilidades necesarios para llevar a cabo tareas de dirección y gestión de proyectos informáticos de manera organizada y sistemática, de forma que se obtengan productos con la calidad que demandan los clientes y usuarios.

Una asignatura con muchísimo temario que si no se planifica con mucha antelación, se corre el riesgo de no llegar a cubrirla al completo.

A continuación, anexo los enlaces con los resúmenes que he ido haciendo de cada uno de los temas que se estudian del texto base "INGENIERÍA DEL SOFTWARE, UN ENFOQUE PRÁCTICO (7ª Edicion 2010) "

  1. El software y la ingeniería del software.
  2. Modelos del proceso.
  3. Desarrollo ágil.
  4. Principios que guían la practica.
  5. Tendencias emergente en Ingeniería del software.
  6. Conceptos de Administración de proyectos.
  7. Métricas de producto.
  8. Métricas de proceso y de proyecto.
  9. Estimación para proyectos software.
  10. Calendarización del proyecto.
  11. Administración del riesgo.
  12. Conceptos de calidad.
  13. Técnicas de revisión.
  14. Aseguramiento de la calidad del software.
  15. Estrategias de prueba de software.
  16. Administración de la configuración del software.
  17. Mejoramiento del proceso de software.


Esto es todo por ahora. Hasta la próxima entrada!