Archivo de la categoría ‘Programación’

PostHeaderIcon Requiem por Windows

Hace tiempo que no escribo… pero es por falta de tiempo… y ganas.

Lo que quiero contar hoy es como he cambiado un Windows 7 por un Ubuntu 10.04 LTS.

Hace tiempo comencé a darme cuenta de las amplias posibilidades que obtienes usando GNU/Linux por múltiples factores. Ya lo usaba antes en el entorno laboral como servidor (no administrador por mi), pero seguía teniendo reticencias como escritorio. Pues así hice mi migración; de un dia para otro, si como suena, un día apagué Windows 7 y a la mañana siguiente encendí Ubuntu. Creo que la migración es una barrera mental, que se combate con decisión. La elección de Ubuntu 10.04 LTS es obvia; por el interface, por soporte, por los programas. No tardé en darme cuenta de que estaba subido en una MotoGP y hasta entonces habia ido en ciclomotor.

Lo bueno de Ubuntu es el soporte de la comunidad, en ubuntuforums.org siempre están dispuesto a ayudarte, pero si buscas bien te darás cuenta que siempre hay alguien que ya ha preguntado lo mismo que tú.

He encontrado múltiples herramientas, tanto gráficas como de linea de comandos. Se puede pensar que la linea de comandos es algo pasado de moda o difícil de usar, pero nada más lejos de la realidad. Ahí es donde radica la mayor potencia de GNU/Linux. Cosa divertida y potente como pocas, Bash… Ahora mi ordenador hace tareas en las que siempre intervenía en Windows.

Mi migración a GNU/Linux es más complicada de lo que parece, pues yo soy ó era programador en .net y Visual Studio no es portable mediante Wine todavía. Así que he dejado una tecnología entera que me ha dado el sustento durante muchos años, y bien, y estoy aprendiendo otras nuevas. Ahora uso más PHP, Bash y C++. Sin embargo me he perdido dos de mis tecnologías favoritas en Microsoft, ASP.net MVC3 del que he probado versiones anteriores pero no ésta que incluye el nuevo motor Razor y MS Sql Server 2010, del que soy un MsSqlHolic. Esto no quiere decir que no haya encontrado soluciones iguales en GNU/Linux, simplemente digo, que utilizo el tiempo para aprender software libre y no en esto.

Seguramente he cometido alguna imprecisión al hablar de GNU/Linux pues sigo aprendiendo. Si es así, por favor, sírvanse de los comentarios para corregirlo.

Os dejo con una entrevista del creador de GNU, Richard Stallman, en TV3. Dividida en tres píldoras de diez minutos aproximadamente, en las cuales deja claro el caldo de cocción (filosofía) del software libre.

Primera parte:

Segunda parte:

Tercera parte:

P.D: Tenia otros títulos para este post pero me he decantado por este.

PostHeaderIcon La realidad ha cubierto las expectativas

Desde hace un tiempo para aquí (quizá los últimos quinientos años), nuestros políticos han gobernado por y para los intereses económicos de unos cuantos privilegiados, que a su vez han cubierto de oro a los políticos, un quid pro cuo se podria decir.

Ley y orden.
Quien siempre ha salido con el culo “petao” ha sido la plebe.

Desde que wikileaks nos ameniza las madrugadas de insomnio, puedes pasar leyendo cables que hacen sonrojar a cualquiera, sabes como son nuestros políticos. Especial mención merece el ministro de justicia, Francisco Caamaño, que ha parido cagado el nuevo código penal. Creo que por esto me voy a meter en un buen lío.

Voy a particularizar mi argumento (de que son tontos) en el artículo 264 de dicho código penal que dice así:

  1. El que por cualquier medio, sin autorización y de manera grave borrase, dañase, deteriorase, alterase, suprimiese, o hiciese inaccesibles datos, programas informáticos o documentos electrónicos ajenos, cuando el resultado producido fuera grave, será castigado con la pena de prisión de seis meses a dos años.
  2. El que por cualquier medio, sin estar autorizado y de manera grave obstaculizara o interrumpiera el funcionamiento de un sistema informático ajeno, introduciendo, transmitiendo, dañando, borrando, deteriorando, alterando, suprimiendo o haciendo inaccesibles datos informáticos, cuando el resultado producido fuera grave, será castigado, con la pena de prisión de seis meses a tres años.

Leido ésto, voy a confesar una cosa que hice en el pasado y que hoy me llevaria a la carcel, hice Inyección SQL. Esta tecnica, de las primeras en el “hackeo” de web es bastante sencilla, pues simplemente se modifica la URL o enlace de la pagina que consultas, por ejemplo (omito la codificacion de URL para ser más claro):

El caso de uso normal;
URL: http://www.tiendademascotas.es/articulo/123000
Interprete: SELECT * FROM dbo.Pets WHERE Id = 123000;
Es una peticion normal, tu pides la URL y el servidor web (interprete) ejecuta esta consulta.

Primera alteración (con un poco de imaginacion o I+D);
URL: http://www.tiendademascotas.es/articulo/123000 OR Id = 321000
Interprete: SELECT * FROM dbo.Pets WHERE Id = 123000 OR Id = 321000;
Comienza la manipulación en el comportamiento del servidor.

Segunda alteración con un poquito de mala leche;
URL: http://www.tiendademascotas.es/articulo/123000; UPDATE dbo.Pets SET Price = 0
Interprete: SELECT * FROM dbo.Pets WHERE Id = 123000; UPDATE dbo.Pets SET Price = 0;
Madremia madremia !!! Todos los pececitos de colores que quiera a cero euros !!!

Alteración definitiva;
URL: http://www.tiendademascotas.es/articulo/123000; DROP TABLE dbo.Pets
Interprete: SELECT * FROM dbo.Pets WHERE Id = 123000; DROP TABLE dbo.Pets;
A tomar por culo la tabla de mascotas.

Y como hasta el dia de hoy pasar una URL a un amigo es lo más normal del mundo, se la enviaria a un “amigo” que no me cayera bien. Pues al clickar en la URL, estaria infringiendo la ley y por tanto tendria sancion penal, incluso no sabiendo lo que hace. O más grave, podria yo hacerlo yo, el click, y decir que ha sido mi “amigo” el que me ha enviado el email con él. Esto dependeria de la jurisprudencia (creo).

Estarás pensando que el primer responsable es el programador de la pagina ¿no? pues si, pero es mi “amigo” el que irá al trullo.

Muy en el fondo (el mensaje) es premiar a los mediocres que no hacen bien su trabajo, por encima de los que invierten dinero en salarios de buenos programadores y horas de pruebas.

También hay otras formas de “tirar abajo” un sistema informático, bien o mal intencionadas.

Hoy han cerrado un medio de comunicación, CNN+, y como muestra de solidaridad propongo visitar la página web del medio, que como consecuencia de las visitas (de mis diez mil millones de lectores) o la no optimización del sitio, éste “cae”.

Ahora el lado opuesto, como los de la sgae me caen muy mal, hacemos lo mismo que el ejemplo anterior, lo mismito, y tiene las mismas consecuencias.

Ambos casos son verídicos, pues la primera acción de visita solidaria se hizo cuando ETA atento contra el diario El Correo.

En la vida analógica, sin embargo, otras conductas hostiles tienen mejor percepción. Imagínese que tiene un acosador en la puerta de su casa y llama a la policía por que quiere salir a la calle y representa una amenaza para su integridad, pues en la misma llamada le responderán que tiene todo el derecho del mundo a estar en la vía publica. Aquí me dejo muchos matices, pero creo que el símil es bastante claro.

Incluso este mismo articulo, persé, podria ser constitutivo de delito al incluir instrucciones de como hacer inyección SQL.

Via Kriptopolis.

P.D: Siento las faltas de ortografía pues son las cinco de la mañana y no tengo tiempo para más. Si no te gustan, visita otra web.