The Information Systems and Computer Applications examination covers material that is usually taught in an introductory college-level business information systems course.

Posts tagged “linux

Así es la jerarquía del sistema de archivos de Linux mostrada en una sola imagen

Linux File System Hierarchy Linux File Structure Optimized

Para quien no conozca las distribuciones GNU/Linux y se enfrente a ellas por primera vez, quizá resulte un poco confuso el sistema de archivos que utiliza, y le cueste distinguir y localizar dónde están los archivos de sistema, de configuración, o el lugar en el que se alojan los juegos y aplicaciones que instala en su equipo.

Los sistemas Linux, al igual que los Unix, no hacen ninguna diferencia entre archivos y directorios, entendiendo que un directorio es sólo un archivo que contiene los nombres de otros archivos. De la misma manera, otros elementos como imágenes, textos, programas y servicios son vistos por Linux sólo como archivos, igual que cualquier unidad extraíble o dispositivo que le conectemos.

Pero para hacernos la vida más fácil y poner un poco de orden en el asunto, en la webBlackmoreops han creado una imagen que hace las veces de mapa en el que se nos enseña qué es y dónde está cada cosa dentro de la jerarquía del sistema de archivos de Linux, y lo hacen mostrando estos archivos de manera ordenada y con una sencilla estructura en forma de árbol similar a la que tenía en su día MS-DOS.

A continuación os dejamos la versión en tamaño completo de la imagen (click para ampliar):

Linux File System Hierarchy Linux File Structure Optimized
Click para ver en grande

El punto de vista del sistema

Aun así, una cosa es cómo nosotros nos las arreglamos para visualizar el contenido en Linux y otra muy diferente la manera en la que lo hace el propio sistema. En Linux, cada uno de los archivos es representado por un inode, una especie de código de serie único que contiene toda la información sobre los datos que se pueden encontrar en dicho archivo.

De esta manera, cada vez que se hace una partición de disco, el sistema establece un número determinado de inodes, que es la cantidad de archivos de todo tipo que podremos tener al mismo tiempo. Además, cada vez que se crea un archivo, este recibe un inode que recoge información sobre su propietario, el tipo de archivo que es, los permisos que tiene y su fecha de creación o edición, así como su tamaño, su localización en el disco duro y la cantidad de enlaces que apuntan hacia él.

Vía | Blackmoreops


La noticia Así es la jerarquía del sistema de archivos de Linux mostrada en una sola imagenfue publicada originalmente en Genbeta por Yúbal FM .


ASUS integrará control por gestos al estilo Kinect en sus computadoras by Juan Pablo Oyanedel

Unos ocho meses atrás les presentamos el proyecto Leap Motion, consistente en un pequeño dispositivo que sirve para detectar gestos y movimientos corporales, a modo de poder controlar acciones en una computadora al estilo Microsoft Kinect. En esa época, sus desarrolladores independientes prometían soporte para sistemas operativos Windows, OS X y Linux, comenzando la preventa del dispositivo por USD$70, a despacharse a comienzos del 2013.

Hoy, ya estamos en esa fecha límite y antes de hacer la entrega de los Leap Motion a los consumidores que los hayan reservado, la empresa anunció la firma de un acuerdo con el fabricante ASUS para llevar esta tecnología de manera integrada a equipos de escritorio All-in-One y notebooks de rango alto.

El sistema se complementa con el desarrollo de aplicaciones y herramientas pensadas por programadores de todo el mundo, quienes durante meses han recibido cerca de 12.000 muestras del Leap Motion para idear nuevas utilidades destinadas al dispositivo. El aparato pretende hacer su lanzamiento en gloria y majestad este año 2013 primero de la mano de ASUS y luego, estrenando el ecosistema de aplicaciones que dará la posibilidad a los clientes de controlar con las manos en el aire la pantalla de su computadora.

Link: New Asus PCs will ship with Leap Motion gesture control technology (The Verge)

 

Enhanced by Zemanta

Richard Stallman contra Canonical: “Ubuntu es spyware” by Raul Estrada

Hace un buen rato que a Richard Stallman no le parece bien nada de lo que se hace con Ubuntu. Y ahora, el motivo de sus quejas es algo que a buena parte de los usuarios de Ubuntu los ha hecho levantar la voz, como ser la integración de Amazon en el gestor de archivos principal del sistema operativo.

Y para Stallman esto no tiene otro nombre: Ubuntu es spyware. Lo que se hace en sociedad con Amazon no es para nada correcto, y tanto así que llama a la comunidad a dejar de recomendar Ubuntu.

“Ubuntu utiliza la información de las búsquedas para mostrarle publicidad al usuario y que compren cosas por Amazon. Amazon hace varias cosas mal, y Canonical contribuye a ello al promocionarlo. Sin embargo, los anuncios no son el problema principal, sino que la vigilancia al usuario. En Canonical claman que Amazon nunca sabe quien buscó algo en específico. Sin embargo, es malo lo que hace Canonical al guardar información personal de los usuarios, tan malo como si lo hiciera Amazon.

Muchos otros desarrolladores dejarían de lado esta práctica [n. de la r: refiriéndose a la integración con Amazon] al saber que si alguien corrige este problema, la gente se cambiaría en masa a la nueva versión corregida del sistema operativo. Pero Canonical no ha eliminado el spyware de Ubuntu, quizás porque saben que el nombre de Ubuntu en estos momentos es importante e influyente, tanto como para evitar las consecuencias de estar vigilando a sus usuarios”.

Desde Canonical, sin embargo, se defienden diciendo que las palabras de Stallman son simplemente FUD (abreviatura anglosajona de la estrategia de desinformación basada en miedo, incertidumbre, y dudas), y que la compañía no se va a preocupar de desmentirlas, sino al contrario: todos pueden opinar sin problema, pero la gente tiene que darse cuenta de cuando estas opiniones se hacen con una base fundamentada y cuando no. Según elcommunity manager de Ubuntu, Jono Bacon, la integración con Amazon es solo el principio:

“La meta de la interfaz de Ubuntu siempre ha sido proveer una central desde donde buscar y encontrar cosas que sean interesantes y relevantes para el usuario. Está diseñada para ser el centro de la experiencia de uso. Esto es un gran objetivo, y estamos solo a mitad de camino.”

Con la siguiente entrega de Ubuntu (13.04) los resultados de búsquedas irán aún más allá de lo mostrado hasta ahora, algo que seguramente va a sacar ronchas entre los más puristas del espíritu del software libre. Como siempre, el debate queda abierto, ¿qué les parece esta nueva controversia entre Stallman y Canonical?

Link: Richard Stallman slams Ubuntu as spyware, prompting Canonical’s Jono Bacon to call FUD (The Next Web)

 

Enhanced by Zemanta

Conectar Igualdad y su [in]seguridad from Security By Default by Contribuciones

El plan Conectar Igualdad  tiene como fin la entrega de netbooks a las escuelas secundarias públicas en Argentina, y ya cuenta con dos millones de equipos entregados. Yo fuí uno de los alumnos que la recibieron, y ya hablé de ésta anteriormente en mi blog, primero conuna crítica  y luego con un post informativo para quitarle la publicidad .
En el día de hoy vengo a hablar acerca de las medidas de seguridad que se implementan tanto en las computadoras de los alumnos como en las de los profesores, o en los mismos servidores de la escuela que también se entregan junto a las netbooks.
Antes de empezar, me gustaría aclarar que el material publicado a continuación tiene fines educativos, y si alguien quiere darle un uso menos ético se puede sentir libre de hacerlo, pero bajo su propia responsabilidad.

Servidores

Dentro del colegio hay Access-Points en cada aula. Estos se encuentran conectados a un sistema central, para poder conectar a los alumnos y profesores a los servidores de la escuela. Estos servidores son máquinas virtuales que corren en un servidor bastante potente. La primera es más sencilla y corre un servidor Web que nos provee algunas aplicaciones y actividades, y la otra funciona como servidor de Theft Deterrent, el programa que gestiona los certificados de arranque que evitan el bloqueo de las computadoras.

Encontrando servidores de Theft Deterrent por Google

Un servidor de Theft Deterrent debería estar disponible solamente en la red local, ya que la gracia del sistema de bloqueo es que el dueño del equipo se conecte regularmente a un AP de su escuela para que se le renueven los arranques. Sin embargo, si buscamos en Google con un dork personalizado podemos encontrar servidores abiertos al público. Si una computadora de esa escuela es robada, el atacante podría renovar sus arranques conectándose a Internet y no necesariamente teniendo que ir regularmente a la escuela.
El dork a continuación es bastante sencillo y podría ser mejorado para obtener mayor cantidad de resultados o menos falsos positivos, aunque para mí fue más que suficiente: title:”Learning Series” inurl:tdserver

Vulnerabilidad XSS en los servidores de Theft Deterrent

La interfaz de administración web del servidor es vulnerable a un ataque de Cross Site Scripting en la página de login de alumno, ubicada en el path /tdserver/student/student_login.php, donde en el argumento GET hwid podemos inyectar código HTML o Javascript, y con esto podríamos robar una sesión legítima de un administrador con un poco de ingeniería social.

Routers con configuraciones por defecto

El enrutador usado no está debidamente configurado: el usuario y contraseña para acceder al panel de administración son los mismos que vienen por defecto (admin/1234). Algo bastante curioso es que ni siquiera es necesario buscar las contraseñas por internet en alguna página tipo Routerpasswords , sino que el mismo router la dice cuando intentamos acceder:

Una vez que accedemos al router con estas passwords por defecto, podemos administrarlo remotamente, pudiendo realizar una algunos cambios no deseados por los administradores:

Software

La netbook es entregada con una distribución bastante floja de Linux basada en Ubuntu y con una partición de Windows 7. Ambas tienen una gran cantidad de programas instalados por defecto relacionados con el estudio.

Linux: SSH activado por defecto

Como dije anteriormente, la distibución de Linux que viene integrada es sinceramente desastrosa, y no estoy hablando solamente de la baja calidad del diseño, sino también de las pésimas configuraciones incluidas.
Un ejemplo de esto es que vienen con el servidor de SSH activado por defecto, algo que no vi que pase en ninguna otra distribución de Linux. Estando en la misma red que una netbook corriendo ese Linux podríamos controlar el equipo remotamente. El usuario que viene por defecto es alumno, y la contraseña que tiene es la misma que el usuario. Este usuario tiene privilegios de sudo, con lo cual también se pueden ejecutar comandos como root, el usuario más privilegiado del sistema:


Identificación remota del propietario de la netbook

Para que la red funcione correctamente, cada equipo tiene que tener un nombre (hostname) diferente. En la guía oficial de Topschool nos recomiendan que sean del estilo Exomate001, Exomate002, etc. El problema es que en algunos colegios el patrón para los hostnames no es un número cualquiera, sino información más sensible.
Uno de estos casos se da en la Escuela Técnica Raggio , en la cual el nombre del equipo es el DNI de la persona seguido del año en el que ingresó, como se indica en su web. Haciendo un escaneo sobre la red de la escuela podemos saber todos los DNIs de alumnos y profesores del colegio, y hacerles un ataque dirigido o APT  de una manera sencilla.


E-Learning Class

Siempre que se usan las netbooks en clase, los profesores obligan a los alumnos a usar el E-Learning Class. Este programa privativo y solamente disponible para Windows le permite al profesor gestionar la clase mediante el control de los equipos de los alumnos.
El protocolo que usa el programa, como muchos de los protocolos privativos, tiene bastantes brechas de seguridad de las cuales voy a hablar a continuación.
Cuando el programa del alumno nos da la opción de “conectarnos” al profesor, lo que realmente hace es informarle que se quiere conectar, y escuchar en el puerto UDP/4805 para recibir los paquetes supuestamente provenientes del maestro. Digo supuestamente porque no se hace una verificación de la IP o de algún access token del paquete, por lo que cualquier atacante puede generar un paquete malintencionado para el alumno. A continuación muestro la manera de hacer esto.

Cambiando el proxy remoto de la víctima

El programa le da al profesor la opción de cambiar remotamente la configuración de la computadora del alumno. Viendo un poco lo que nos permitía, me resultó bastante interesante la idea de cambiar el proxy por defecto de Windows, lo que nos permitiría capturar una gran parte del tráfico en Internet de la víctima, aun estando ésta desconectada de la escuela, debido a que la cofiguración persiste.
Para simplificar el ataque, hice un script que envíe un paquete personalizado a nuestra víctima, indicándole que cambie la configuración de su proxy. Su uso es bastante sencillo: cuando el alumno se encuentra conectado a un profesor, corremos el script pasándole como primer argumento su IP, seguido de la IP y el puerto de nuestro proxy. Veamos un ejemplo:
El ícono que remarqué en la bandeja del sistema indica que estamos conectados al profesor. Como se ve en la configuración, no se está usando ningún servidor proxy. Ejecutemos el script a ver qué pasa:
Siendo 192.168.2.6 la IP de la víctima y 123.123.123.123 la del servidor con el proxy. Una vez que se envía el paquete, veamos la configuración remota del alumno:

Como vemos, la configuración se cambió efectivamente. La mayoría de las aplicaciones usarán esta dirección como intermediario para internet, lo que nos podría permitir el monitoreo del tráfico de la víctima.

Código fuente del script que envía paquetes que cambian el proxy:


Ejecución remota de comandos en la víctima

Si lo anterior no fue suficiente, también podemos ejecutar comandos y aplicaciones remotamente, ya que el programa de profesor puede hacer esto y no hay una autenticación, como dije anteriormente.

Este proceso es un poco más difícil que el anterior, ya que el programa usa un sistema de checksum (verificación de la integridad) del paquete cuyo funcionamiento no pude entender todavía. Por lo tanto, debemos generar el paquete con una computadora con el E-Learning del profesor y enviarlo a nuestro propio equipo que use Windows y esté conectado al profesor. Mientras tanto, con otro script que hice sniffamos los paquetes buscando el indicado que ejecuta comandos en el alumno. Más tarde, enviaremos el mismo paquete a nuestra víctima.

Veamos más detallado el proceso para ejecutar el símbolo del sistema en la víctima:

Como primer paso corremos el script sniff_cmd.py para que capture el paquete cuando nos lo envíen. Antes que todo se debe instalar scapy para Windows .

El sniffer está corriendo, procedemos a ejecutar el comando desde el profesor:
Hecho esto el sniffer debería haber capturado el paquete:

El paquete es guardado en un archivo de nombre packet, y puede ser fácilmente reenviado a nuestra víctima connetcat . Usemos el siguiente comando: nc -u -w 1 xxx.xxx.xxx.xxx 4805 < packet

Con esto le indicamos que se comunique vía UDP, con un timeout de 1 segundo (enviamos el paquete y cierra la conexión, no nos importa recibir datos) a la IP de la víctima en el puerto 4805 que es en el que la aplicación escucha. Con un “<” le indicamos que le envíe el contenido del archivo packet, el paquete capturado. Hecho esto ya se debería estar ejecutando el cmd en nuestra víctima:

Códiigo fuente del sniffer:

 

Descarga del E-Learning para el alumno: http://dl.dropbox.com/u/45126758/student_2.0.38.154.exe

Sistema de bloqueo

Las netbooks tienen integradas un sistema anti-robos bastante avanzado. Para evitar el bloqueo el alumno se debe conectar regularmente a los servidores del colegio, donde automáticamente se le entrega un certificado para cuando arranque, el cual tiene una cantidad máxima de arranques y una fecha límite. Si se supera la fecha o la cantidad de arranques, la próxima vez que se encienda el ordenador este se bloquerá, y teóricamente la única manera de desbloquearlo será introduciendo un código de 10 digitos u obteniendo un certificado desde un pendrive generado por el administrador.

El bloqueo se realiza por hardware, un TPM no dejará encender correctamente cuando el certificado o los arranques hayan expirado.

Postergando el bloqueo cambiando la fecha

Un método bastante sencillo para evitar el bloqueo de la computadora es mediante el cambio de la fecha en el BIOS. Aunque ésta tarde o temprano se vaya a bloquear porque no le queden encendidos, en algunos casos podremos usarla un largo tiempo (en mi escuela me llegaron a dar 2000 arranques en un solo certificado)

Desbloqueo permanente por hardware

Si lo que queremos es anular el sistema de bloqueo para siempre, tengo amigos que lo que hicieron fue desarmar la computadora para hacer falso contacto con el chip TPM, provocando que el BIOS no lo tome en cuenta. Esto se puede ver más en detalle en este  post o en el siguiente video:

Popout

 

Me gustaría aclarar que esto anula la garantía y hacerlo podría hacer que nos quiten el equipo los de Conectar Igualdad si este se encuentra en comodato.

Conclusión

Por más que el plan Conectar Igualdad en sí y los fines de este me parezcan una excelente idea, me parece que deben plantearse un poco mejor el tema de la seguridad. Hay más de una vulnerabilidad bastante grave expuesta en este artículo, por lo que espero que puedan ser resueltas.

Una medida que están tomando los aministadores es instalar Huayra , otra distribución mucho mejor de Linux que la que incluyen ahora. Quieren que sea el sistema operativo que bootee por defecto, por lo que los usuarios lo probarían y quizás se quedarían con este, en vez de usar solamente Windows y dejar a GNU/Linux de adorno en la computadora.
Saludos!

Contribución por cortesía de

 

Enhanced by Zemanta

Ya está disponible el nuevo Kernel de Linux 2.6.36, incluye AppArmor y soporte para Intel Intelligent Power

Ya está disponible el nuevo Kernel de Linux 2.6.36, incluye AppArmor y soporte para Intel Intelligent Power: “

Después de 80 días de desarrollo, Linus Torvalds ha lanzado la versión de Linux 2.6.36 con el nombreFlesh-Eating Bats with Fangs” (Murciélagos come-carne con colmillos).

Es una versión que no ha crecido en tamaño – ya que los desarrolladores recortaron considerablemente los archivos de configuración por defecto – pero tiene cientos de avances importantes como el soporte para una nueva interfaz de notificación para el sistema de ficheros llamada “fanotify” y la arquitectura Tilera, optimizaciones de colas de trabajo (workqueue) para la concurrencia, soporte para la funcionalidad Intel Intelligent Power Sharing en sistemas Intel Core i3/i5, cacheo local de CIFS, la integración de KMS con el KDB (kernel debugger), un OOM (Out of Memory Killer) reescrito, una mejor respuesta de escritorio relacionada con la Máquina Virtual y por último pero no menos importante, el sistema de seguridad AppArmor.

  • La arquitectura Tile tiene un diseño multi-núcleo destinado a escalar cientos de núcleos en un solo chip. El objetivo es proporcionar una CPU de alto rendimiento, con buena eficiencia energética y mayor flexibilidad que los procesadores de propósito específico como los DSP. El chip se compone de una malla de 64 “cuadros” interconectados, donde cada pieza contiene un procesador de propósito general, caché y un switch sin bloqueo.
  • AppArmor es un sistema de seguridad MAC (Mandatory Access Control), fue desarrollado originalmente por Immunix en 1998 y ha sido parte de algunas distribuciones de Linux desde hace mucho tiempo. AppArmor permite al administrador del sistema asociar a cada programa un perfil de seguridad que restrinja las capacidades de ese programa. Complementa el modelo tradicional de control de acceso discrecional de Unix (DAC) proporcionando el control de acceso obligatorio (MAC).
  • Las plataformas Intel Core i3/i5 con gráficos tienen el soporte dinámico para el consumo de energía entre la CPU y la GPU (Intel Intelligent Power), maximizando el rendimiento en un determinado TDP. Un nuevo de controlador junto con la frecuencia de la CPU y los controladores i915 proporcionan esta funcionalidad. Se monitoriza la potencia de la GPU y la temperatura para optimizar el consumo energético.
  • El Out of Memory Killer es la parte de la máquina virtual que mata a un proceso cuando no hay memoria (RAM y swap). El algoritmo que decide cual es mejor proceso para ser “matado” se ha reescrito en esta versión y deberá tomar mejores decisiones.

También hay varios cambios en el núcleo, la seguridad, sistema de archivos, red, mapeo, bloqueo y virtualización que puedes revisar en kernelnewbies.

Link: Linux kernel 2.6.36 released (H-Online)