Archive

Archive for the ‘security’ Category

La seguridad de los LMS

September 28, 2014 1 comment

La seguridad de los sistemas de gestión del aprendizaje (LMS) o de cursos virtuales, especialmente en el ámbito corporativo, es un tema crítico. De la misma manera que los documentos relativos a proyectos internos que representan una ventaja competitiva frente a sus competidores, el contenido de los cursos de capacitación de las empresas no pueden caer “en manos del enemigo”, y esto requiere de una protección adecuada de su plataforma e-learning.

Aspectos de la seguridad informática

Para entender los riesgos, es importante estructurarlos. La seguridad informática se puede dividir en 6 aspectos, que ilustramos y explicamos a continuación, en el contexto de una plataforma corporativa de aprendizaje.

Integridad / Validez

Imagínese que un curso esencial para todos los nuevos empleados esté sutilmente modificado. Por ejemplo que, en un curso de inducción que enseña los teléfonos de contacto de la mesa de ayuda técnica, estos números estén cambiados por números externos a la empresa. Imaginen el resultado al primer problema de credenciales para ingresar al sistema. Los nuevos empleados, en toda confianza, llamarán a los números indicados, posiblemente divulgando sus códigos de acceso a personas ajenas a la empresa.

La información contenida en sus cursos debe ser cuidada de tal manera que solo las personas autorizadas puedan modificar el contenido principal, de tal manera que la información no pueda ser alterada a fines destructivos.

Integridad / Persistencia

Que pasará si el servidor se quema, o si un pirata llega a borrar información de los cursos o de los alumnos?

La información tiene que resistir un posible ataque con objetivos de destrucción. Por eso, es imprescindible contar con una buena estrategia de backup, que permita recuperar información completa o parcial de días anteriores.

Visibilidad / Autorización

Que pasará si una persona inscrita en un curso de marketing se ve inscrita por error en un curso de seguridad informática, en el cual tendrá acceso a información de caracter confidencial, o a un curso de gestión en el cual tendrá acceso a información reservada a la gerencia? Que pasará si la difunde a los empleados de otros rubros de la empresa?

La información de los cursos tiene que ser visible solo para las personas que tengan una razón profesional por acceder a ella. El control de dichos permisos es esencial para evitar la difusión de secretos comerciales u otros problemas relacionados con estrategias confidenciales.

Accesos / Autenticación

Que pasará si una persona ajena a la empresa tiene acceso a la plataforma a través de la cuenta de un empleado, y navega entre los proyectos de investigación, y se hace pasar por un miembro del grupo?

Es imprescindible que uno pueda asegurar que las personas que acceden a la plataforma son quienes pretenden ser.

Disponibilidad / Resistencia

Que pasará si todo el sistema se cae como consecuencia de un ataque de piratas? Y si por alguna razón las protecciones simples se ven deshabilitadas por un momento?

Uno de los aspectos de seguridad poco considerados es la disponibilidad, o la resistencia a ataques del sistema LMS. Si bien es cierto que la indisponibilidad del sistema LMS raramente provoca problemas de seguridad en sí, es importante entender que, durante un ataque de fuerza bruta (cientos de computadoras generando consultas indebidas al sistema LMS), un sistema indisponible es más vulnerable a ataques de otros tipos (robo o destrucción de información). Es por ello que es importante asegurar que su sistema esté preparado, con las adecuadas medidas de prevención a nivel de red, de configuración del servidor y del aplicativo mismo, para que los posibles ataques sean prevenidos o mitigados.

Mantenimiento

Que pasará si una nueva falla se descubre en el sistema usado, y no existe el equipo especializado dentro de la organización para cubrir la brecha?

Cualquier sistema informático requiere de actualizaciones ocasionales para cubrir nuevas técnicas de hackeo. Si el personal interno de la empresa no tiene las competencias requeridas, será imprescindible contar con un servicio externo confiable para mantener el sistema en su mejor estado en términos de seguridad.

Chamilo

Chamilo LMS cuenta con mecanismos avanzados para mejorar la seguridad de su plataforma.

Información a los usuarios (autenticación)

Para una seguridad de alto nivel, es importante que todos los involucrados estén al tanto de los aspectos de la seguridad en los cuales tienen un rol activo. Las distintas herramientas de comunicación hacia los usuarios (anuncios globales y a nivel de curso, términos y condiciones a nivel global y de curso así como otros mecanismos) permiten una comunicación fluida que aumenta la participación de los usuarios en el asunto de la seguridad y transforma agentes peligrosos en agentes de seguridad que aumentarán el nivel general de confianza de la solución.

Isolación de permisos (validez)

En Chamilo, los usuarios tienen acceso a contenidos dentro de cursos, según su rol en el curso. Tutores de cursos pueden visualizar y modificar la visibilidad de los contenidos, pero no pueden editarlos. Finalmente, los alumnos pueden visualizar pero no editar el material. Una división clara por roles (sin posibilidad de definición granular) reduce los errores de configuración y de privilegios.

Nivel de complejidad de contraseñas (accesos)

En Chamilo LMS 1.9.8, encontrará un mecanismo para dar una evaluación al usuario del nivel de complejidad de su contraseña, de tal manera que piensa 2 veces antes de usar una de las 20 contraseñas más frecuentes en internet (empezando por 1234567).

CAPTCHA (accesos)

En Chamilo LMS 1.9.8, puede activar la opción de CAPTCHA, que evitará que piratas lleguen a usurpar la identidad de otros usuarios por ataques de tipo diccionario.

Actualizaciones de seguridad (mantenimiento)

Chamilo cuenta con un record de correcciones rápidas y eficientes. En varios años de historia del proyecto, no ha pasado más de 72h entre el descubrimiento de un error de seguridad y su corrección.

Mecanismos de autenticación (accesos)

Chamilo cuenta con mecanismos de autenticación seguros como OpenID, Facebook login y mecanismos extensibles (y otros no tan seguros) como LDAP, Shibboleth y CAS. Además, contando con un certificado SSL, se puede vincular de manera segura con Drupal y PrestaShop.

Cifrado de contraseñas (autenticación)

Chamilo LMS ofrece 3 tipos de cifrado de contraseñas, de los cuales SHA1 es el valor por defecto. De esta manera, un pirata robando la base de datos de usuarios no podrá (de una manera fácil) decifrar las contraseñas para usurpar la identidad de los usuarios.

Borrado de datos (persistencia)

Chamilo LMS no borra de inmediato los archivos eliminados. En su vez, los guarda (opción activada por defecto) con un nombre distinto en el disco, hasta que un proceso automatizado los borre unos días más tarde.

Acceso por curso (autorización)

El sistema ofrece funcionalidades de asignación de alumnos por cursos y de definición de clases (grupos de alumnos), de tal manera que los errores a nivel de administración se reduzcan notablemente. La limitación del acceso por periodos gracias a la noción de “sesiones” (ciclos) permite limitar los accesos en el tiempo, evitando que ex-empleados sigan teniendo acceso a contenidos confidenciales.

Alta disponibilidad (disponibilidad)

Aunque el sistema Chamilo mismo no cubra este requerimiento, los proveedores oficiales de Chamilo (como BeezNest) brindan servicios profesionales de configuración en clusters de alta disponibilidad y redimensionables, protegidos por firewalls y mecanismos de protección anti-DOS y DDOS.

Comunicación protegida (autenticación)

BeezNest ofrece, como parte de su servicio, la compra y configuración de certificados SSL para una comunicación segura (cifrada) entre los usuarios y el servidor. Así, no será posible para un posible espía capturar comunicaciones (y por ende nombres de usuarios, contraseñas, y otras informaciones confidenciales).

Además, mecanismos avanzados permiten el envío de mensajes como los credenciales de acceso por SMS o por correo cifrado por GPG o PGP.

Actualizaciones de seguridad (mantenimiento)

BeezNest se encarga de clientes en todo el mundo, y mantiene sus portales actualizados de tal manera que no tengan que lidiar con problemas de seguridad después de que ocurran (lo cual resultaría mucho más costoso). Además, BeezNest se asegura que los parches de seguridad sean publicados en las 72h luego de su registro oficial para así mantener la web siempre segura.

Conclusión

Esperamos este artículo le haya ayudado en entender los aspectos que merecen un cuidado especial en términos de seguridad para su plataforma e-learning.

BeezNest también cubre requerimientos especiales (conexión a nuevos sistemas, auditorías de seguridad de sistemas existentes, reconfiguración de servidores, etc).

En resumen, BeezNest se hace cargo de todas estas preguntas de seguridad para sus clientes, para que puedan tener tranquilidad y preocuparse exclusivamente de los aspectos de gestión del aprendizaje.

Si desea mayor información sobre los servicios de BeezNest, vea nuestra información de contacto en https://www.beeznest.com/

Si desea probar Chamilo, inicie una prueba de 15 días gratis de su propio portal Chamilo.

Nota

Este artículo se inspiró inicialmente de un artículo en inglés sobre la seguridad de LMSes, pero lo extiende mucho y aplica estos conceptos a Chamilo LMS (desarrollado mayormente por BeezNest), la solución de e-learning de software libre más segura en existencia en este momento.

SSL certificates for multiple virtual hosts: problem on IE for Windows XP

September 14, 2013 3 comments

Using a single server for multiple virtual hosts is something that comes naturally nowadays for any web server sysadmin.

Using SSL certificates is also common (particularly so since the infamous Blacksheep extension for Firefox as published a few years back).

However, the mixing of SSL and virtual hosts might not be as easy as you might think. At least for some of your users…

Some browsers in some old (but better than more recent, some might say) proprietary operating systems are resisting the trend.

Erick, on our team, investigated a strange side effect of enabling a second SSL certificate on one of our multiple-virtual-hosts servers recently. It so happens that, when enabling the second certificate, Internet Explorer on Windows XP starts shouting that the site is not safe, with a huge warning similar to the one you get with self-signed certificates (the screenshot is in Spanish here, sorry, but you get the idea).

SSL warning in IE under XP

SSL warning in IE under XP

You can read more about the problem with having several SSL certificates on a single server, and the solution thereof on the Apache Foundation’s wiki, but to be short, a fix has been developed under the name of SNI, as an extension to SSL. Most browsers support that extension but, quite unsurprisingly, Internet Explorer on Windows XP doesn’t.

Browsers support for SNI

Browsers support for SNI

So, if you have any Internet Explorer user under XP, well, let’s say that you will probably have to deploy a lot of efforts to give them security on your website.

From the top of my mind, you could use a special redirect just for this case (based on the User Agent, I suppose) so that these users can use your site without SSL, or to give them a first page of warning before you send them to the site, that will alert them that it is supposedly not secure, and where you could tell them how to accept the certificate (because honestly, without reading the page in detail, they will just freak out).

Of course, yet another solution is to make sure that all sites that use SSL are on different servers, but that’s probably just not an option.

But seriously… Internet Explorer, SERIOUSLY ???

Categories: English, security, Techie Tags: , , , ,

BeezNest fixes new Chamilo security flaws in 48h

March 8, 2013 3 comments

Secunia gave the Chamilo Security team full details of three security flaws detected in version 1.9.4 on Monday the 4th of March 2013. These flaws were detected by Fernando Muñoz, a regular contact for Chamilo in terms of security. We are very grateful for his and Secunia’s work.

Within less than 48 hours, the Chamilo Security team, part of BeezNest‘s development team, has reviewed, patched, published and communicated a fix to its community through the Chamilo wiki and Chamilo Security team’s Twitter account, doing its best effort to inform everyone in time.
In fact, a patch was available within 12h, but it took us some time to go through the right communication channels and make the patch accessible to the greatest number.

Our fast turn around time on this security issue is a reflection of the priority and focus we place on security. Security is more than a side item for us, it’s part of our core principles.

At Chamilo, we embrace security research and show our appreciation to all involved. Thank you for helping us make Chamilo better!

BeezNest offers hosting, development and maintenance services for any Chamilo LMS portal. Feel free to contact us for a quote if you need help. Chamilo is free software and you are absolutely not forced to use our services. We can help you out if you need it, that’s all!

Nginx Anti-DOS filter for Fail2Ban

We are currently trying out this Fail2Ban rule on one of our server, to block simple (but very upsetting) DOS attacks on Nginx automatically (after 30 seconds).

New filter in /etc/fail2ban/filter.d/nginx-dos.conf:

# Fail2Ban configuration file
#
# Generated on Fri Jun 08 12:09:15 EST 2012 by BeezNest
#
# Author: Yannick Warnier
#
# $Revision: 1 $
#

[Definition]
# Option:  failregex
# Notes.:  Regexp to catch a generic call from an IP address.
# Values:  TEXT
#
failregex = ^<HOST> -.*"(GET|POST).*HTTP.*"$

# Option:  ignoreregex
# Notes.:  regex to ignore. If this regex matches, the line is ignored.
# Values:  TEXT
#
ignoreregex =

In our jail.local, we have (at the end of the file):

[nginx-dos]
# Based on apache-badbots but a simple IP check (any IP requesting more than
# 240 pages in 60 seconds, or 4p/s average, is suspicious)
# Block for two full days.
# @author Yannick Warnier
enabled = true
port    = http,8090
filter  = nginx-dos
logpath = /var/log/nginx/*-access.log
findtime = 60
bantime  = 172800
maxretry = 240

Of course, in case you would be logging all resources of your site (images, css, js, etc), it would be really easy to get to those numbers as a normal user. To avoid this, use the access_log off directive of Nginx, like so:

 # Serve static files directly
        location ~* \.(png|jpe?g|gif|ico)$ {
                expires 1y;
                access_log off;
                try_files $uri $uri/ @rewrite;
                gzip off;
        }
        location ~* \.(mp3)$ {
                expires 1y;
                access_log off;
                gzip off;
        }
        location ~* \.(css)$ {
                expires 1d;
                access_log off;
        }
        location ~* \.(js)$ {
                expires 1h;
                access_log off;
        }

We’ll see how that works for us… (and report here)

20 most common passwords

December 31, 2011 1 comment

I wouldn’t want this post to disappear, so just to make sure that the information is better spread on what passwords *not to use*, here is the list:

1. 123456

2. 12345

3. 123456789

4. Password

5. iloveyou

6. princess

7. rockyou

8. 1234567

9. 12345678

10. abc123

11. Nicole

12. Daniel

13. babygirl

14. monkey

15. Jessica

16. Lovely

17. michael

18. Ashley

19. 654321

20. Qwerty

Come on, people, get some imagination! This would seriously make the web a better place…

Related post about web security (I’ll find a better place to put it soon): http://www.softwarequalityconnection.com/2011/12/how-to-check-your-web-app-for-security-vulnerabilities/

How to best generate a DDoS without even noticing

Yesterday w had a funny (I say that now that I’ve been able to relax a little) situation on one of our hosted servers. The server’s RAM usage went bang to the ceiling in a matter of minutes, and it was then practically impossible to get it back (had to hard-kill Apache and the monit process that was restarting it).

What happened? Basically, a DDoS on a single server which is, as most knowledgeable people will tell you, practically impossible to manage.

Just a few definitions:

DoS = Denial of Service = a high load generated on a server which gets the server into a resources starvation (either no RAM left, or disk over-used or CPU overloaded or anything really essential to your system).

A simple DoS attack is originating from one single source and is pretty easy to stop: locate the origin IP and block it. Done.

A more advanced version of a DoS is a DDOS.

DDoS = Distributed Denial of Service = a high load generated on a server … originating from a large number of sources at the same time

The detail is in this last part. Whereas it was easy in DoS to detect where the attack came from, in DDoS, it is made impossible to distinguish one attacker from a normal user, because no single attacker is making “a lot” of requests. They just sum up to a massive number of requests, which eventually make your server get into resource starvation.

So now the concept is clear, how can you do to make it work? Well, that might require a very high skills set if you want to do that on purpose, but surprisingly if you don’t even know what DDoS means and you’re a simple Flash banners designers, it’s apparently dead easy: just make sure you put a flash banner on the homepage of a moderately visited website (let’s say 6000 visits per hour) which has a mechanism to recommend pages when a user tries to find a page that doesn’t exist (technical translation: a custom 404 page which generates a SQL query), on which users stay for a while (put some full-size breaking news or something like that). Then try to load, from your Flash, an URL that doesn’t exist. Oh and wait, while you don’t get the expected answer, just repeat that call, over and over, once every second.

That’s it, you’ve built yourself a nice 1000-users DDoS in less than 10 minutes. Prepare to see your RAM usage soar if you have a CMS with that custom 404 recommendation page, then (if you use swap memory), your disk fill up with swapping pages, and then finally your processor burn its “waiting” states.

The beauty of it is, once you find the cause of the mess, you can’t really stop it straight away, because your users will still be on that page with the banner, so as long as they don’t change page, it will continue querying your website. To make it even more perfect, the Flash might use a lot of the clients’ CPU, which will possibly end up in freezing their browser, which means they won’t be able to get out of the page for a while…

If you’re lucky enough to have a Varnish reverse proxy installation (or any other reverse proxy), one (emergency) solution is to just tell the proxy to *not* pass the request to the webserver, and just answer directly (from cache) a default error page. This will effectively (but it might take a few minutes) highly reduce the server load.

My previous post explains how to do that, just in case.

Categories: English, security, Tech Crunch Tags: , , ,

El Gobierno Peruano y su estrategia de Gobierno Digital

October 14, 2010 6 comments

Actualización el 3 de Enero del 2011:

Hoy día el sistema del SEACE no está mostrando ningun resultado del 2010. Al parecer, una consulta a la base de datos ahí está fallando (tomando en cuenta únicamente los elementos del año actual). Me pregunto que empresa habrá implementado este sistema y como el Gobierno ha podido confiar en ella…

Actualización el 5 de Enero del 2011:

Llegué a hablar por teléfono con el equipo del SEACE. Me dijieron que tenía que ir a la página de búsquedas y marcar 2010. Es decir que no se considera un bug que sobre las 200 y tantas oportunidades de negocio con el estado todavía vigentes, solo aparezcan 3 de manera predefinida, que son las que fueron publicadas después del 31 de diciembre del 2010…

Hoy me encuentro con ya una más de estas trampas del Gobierno Peruano, quien orgullosamente llama esto “parte de un esfuerzo de digitalización del Gobierno”: el SE@CE (Sistema Electrónico de Contrataciones del Estado). Me parece fundamental, como consultor experimentado en aplicaciones web, reportar unas faltas impresionantes de usabilidad y de accesibilidad de los sitios del Gobierno Peruano.

Si bien es cierto hay buenas iniciativas, y seguramente todo parte de una buena intención, también es necesario resaltar que algo debe estar mal en el proceso de selección de los proveedores de aplicaciones para el Gobierno, para que lleguemos a una situación tan horrible sin que, al parecer, no le preocupe a nadie mejorarlo.

Las recomendaciones siguientes surgen de un intento en participar en una licitación pública a través del SE@CE. Una simple visita les dará una idea ya de que tan mal organizado puede ser este sitio. En el siguiente análisis, estudiare por partes este grandioso ejemplo de lo que podría ser uno de los peores sitios del año.

Sección Inicio

El barco

Llegar a esta página ya da una sensación visual de mareo. Un texto se mueve de derecha a izquierda, un pequeño banner microscópico muestra que poco esfuerzo se ha puesto en la parte diseño para lograr un aspecto amigable.

Un elemento de navegación en Inglés “Home Page” indica más o menos claramente que estoy en la página principal. Si tengo una pantalla más larga que 1440 píxeles de ancho, el header se corta pero la fecha sigue alineada a la derecha.

En fin, un asombroso ejemplo de hasta que punto se puede negar la necesidad de detalle en la elaboración de un sitio, probablemente debido a que (una clásica en contrataciones del Estado) los responsables no tenían idea de lo que querían antes de tener los bocetos frente a ellos, más tarde que la fecha planeada de entrega porque generaron retraso pidiendo cosas absurdas a medio camino amenazando a medio-palabras de no aprobar el proyecto si es que no se les agregaba una mención del equipo que se encargó del proyecto de una forma “bonita” pero “bien visible” que, por supuesto, no podía estar en una sub-página pero tampoco tenía que impedir la navegación, aunque tenía que ser visible en cualquier página en cualquier resolución.

Vínculos

Los vínculos tienen un icono de decoración un poco feo. Raramente, el icono no hace parte del vínculo, por lo que no se puede clicar. En otras partes, es lo contrario: el icono es el vínculo y el texto no se puede clicar.

Manuales

Los manuales no explican mucho, los video tutoriales se tienen que descargar (en archivos comprimidos) para poder visualizarse en su computadora (si el objetivo fue disminuir la necesidad de descarga para provincia, con 31MB para 8 minutos de buena video donde nos muestra cada uno de los enlaces que se puede seguir, no es realmente el mejor mecanismo de distribución ni la mejor posibilidad de enfoque que se puede dar a un sitio web).

Vintage

Y para terminar, esta primera página nos ofrece (estamos en el año 2010, es decir cerca de 10 años de la parución de IE6) la directiva siguiente como pié de página (después de los 6 logos correspondientes centrados cuando el contenido principal de la página está alineado a la izquierda): Es decir que el Gobierno Peruano obliga el ciudadano honesto a usar un navegador con horribles fallas de seguridad, que obliga al uso de Windows XP o inferior, sistemas operativos con horribles fallas de seguridad, con (para IE) un no-respecto increible de estándares de la web, para poder participar a una licitación pública.

Esto, estimado lector, se llama una gran falta de usabilidad. No digo que no se debe soportar a Internet Explorer 6, pero exigirlo y no permitir el uso de otros (como veremos a continuación) es nada menos que un escándalo y una barrera al libre acceso a los servicios del Estado, que pagamos a través de impuestos para simplificarnos la vida.

Sección Consultas

La sección de consultas el probablemente la más usada ya que permite enterarse de todas las últimas llamadas.

Siempre que cambien de página, tendrán la suerte inmensa de ver un GIF animado de estilo Geocities de los 90’s aparecer y decirles “Espere un momento…”. En realidad, para alguien con una conexión de provincia, probablemente pasa más tiempo esperando que usando la herramienta.

La página de entrada de consultas tiene una apariencia bastante desorganizada (botones y vínculos que permiten llegar a resultados por año u otros criterios) pero presenta, en prácticamente una sola página, todos los vínculos de clasificación de oportunidades de negocio.

Si se toma la pena de agrandar esta captura, se dará cuenta que una gran cantidad de caracteres con tildes simplemente no aparecen, resultando en un vínculo que dice “Click aqu” en lugar de “Click aquí”.

Pero esta primera página no es muy interesante a parte de estos detalles, por lo que avanzamos, dando clic a “Click aqu” de la sección “Oportunidades de negocio”.

Celeridad

Si tiene la suerte de tener una conexión Internet suficientemente lenta, podrá aprovechar del tiempo de carga increible que toma la lista de vínculos por debajo de la página. Veremos más tarde que en realidad el sistema usa una base de datos Oracle, y que probablemente se debe a esto.

RSS

Un segundo detalle, quedándonos en la parte de los vínculos, es que permiten (supuestamente) agregar un feed RSS, pero lamentablemente los desarrolladores pensaron mucho en usuarios de Google y Yahoo, y no mucho en los demás, por lo que solo se puede extraer estos flujos RSS a través de vínculos que lanzan a Google y Yahoo.

La usabilidad de la lista desplegable que aparece por debajo de mi cursos y no me permite seleccionar el vínculo siguiente sin hacer un movimiento de baile con mi cursos es discutable también.

Calendario

Llegamos al calendario. Uno de mis favoritos en  las aplicaciones web, y verá que este no tiene nada que envidiar a los demás.

Si es que no uso Internet Explorer (bueno, es mi culpa, me advertieron), puedo aprovechar de un calendario popup de este tipo. El problema con esto es que no puedo seleccionar una fecha. Tengo que entrarla a mano. Ahí me doy cuenta que en realidad el campo no me indica ningún detalle sobre como llenarlo. Se tiene que “suponer” y probar un tímido “13/10/2010” para ver que sí, se puede!

Búsqueda cuantica

Al seleccionar un criterio más y presionar el botón de búsqueda, uno se da rápidamente cuenta que la búsqueda no es muy eficiente. Pero lo más divertido es probar la misma búsqueda varias veces. Ahí se darán cuenta que es más horrible todavía: la cantidad de resultados para una fecha y un criterio determinados varía de una búsqueda a la siguiente.

He tenido la suerte de tener 14 y 19 resultados según el momento… Esto seguramente no permite tratar todos los ciudadanos igual. Algunos verán la oportunidad de negocio que les interesa, pero otros no la verán!

Sección de registro

Si, a este punto, Ud tuvo la suerte de encontrar una oportunidad de negocio que le interesa, seguramente deseará ir adelante, ver detalles de la licitación y darle clic al botón “Inscribirme en proceso electronico” (parece que las tildes aquí son demasiado peligrosas). Ahí tendrá la sorpresa de obtener un popup de color distinto al resto del sitio (sí, estamos ahora en HTTPS y es un paso muy impresionante para mi ver que, a pesar de toda la maldad que vi hasta ahora, supieron que era necesario ponerle un mínimo de seguridad a este punto).

El problema es que, con este popup, también viene un popup del navegador indicando que uno pasa de un modo no seguro a un modo seguro, que seguramente, combinado con el cambio de estilo, pondrá el usuario en plena confusión, pero bueno… para que diablos podrían querer dar confianza al usuario, a este punto ya no queda nada por rescatar…. Pero no descansé, amigo lector, vienen más sorpresas.

Registro selectivo

A este punto, tendrá que sacar los datos de su código RNP (del Registro Nacional de Proveedores del Estado). Su login es el RUC de su empresa, y la clave es su clave RNP. Pues fijese que, si bien funciona perfectamente su clave en el sitio web del RNP, aquí no es igual (parece que nada es realmente igual).

En realidad, intenté bajo 4 navegadores distintos (incluyendo Internet Explorer 6 y 7), en más de 20 oportunidades antes de tener suerte con un Internet Explorer 7 y ser aceptado. Lo bueno es que no hay ningún mensaje de error para explicar al usuario porque no funciona. Pero si hay un número de teléfono que se puede llamar.

Soporte telefónico invasivo

Antes de llamar al soporte telefónico, es bueno de leer los “Términos y condiciones de uso” ofrecidos al usuario, donde se le recuerda, entre otros, que los usuarios no deberán comunicar su contraseña a nadie, bajo ningún pretexto.

Es bueno recordarselo, porque justamente al indicar al soporte telefónico (accesible después de un promedio de 6 llamadas) que Ud no puede entrar al sistema, ellos les pedirán gustosamente darles el RUC y la contraseña para “probarlo desde ahí”. Vaya, que estupenda contradicción! Bueno, pero por si a caso, no sirve darle el acceso, de toda forma solo es un problema temporal del sistema. No pierda paciencia (y tome el tiempo necesario para subir los documentos de propuesta a tiempo!). Pero bueno, el soporte telefónico es amable y entenderá su queja, por lo que le dará la única solución faltante: escribir un correo electrónico al OSCE.

Botón exclusivo

Finalmente, si no está usando Internet Explorer, su camino se para definitivamente aquí, porque al tener cualquier otro navegador, el botón de “Iniciar Sesion” (sin tilde) genera un error JavaScript que no permitirá a su navegador entender que página cargar a continuación.

Inscripción

Una vez iniciada su sesión (imaginando que tenía Internet Explorer al paso anterior), tendrá acceso a una ventana de búsqueda.

Si es aventurero, no dude… Entre en “Número de proceso” algo así: “AMC – 234- 2010 – Lima”. Ahí tendrá el honor de observar que tan bien ha sido filtrado el código de este formulario, para generar un error Oracle visible al usuario común!

Disponibilidad

Otro punto interesante es el hecho comunmente conocido de que es prácticamente imposible usar el sistema entre las 10am y las 12m, principalmente porque las propuestas se tienen que entregar en general a medio día para todas las oportunidades de negocio, por lo que muchos no pueden mandar su propuesta a tiempo. El sistema simplemente no permite a todos conectarse, favoreciendo los con mayor potencia en su conexión internet, y así dejando de lado lo peor equipados: provincias y proveedores más humildes.

Más allá de la web

Más allá del aspecto puramente técnico de proveer acceso a través de la web, la estrategia de puesta a disposición de licitaciones de este modo, en muchos casos, impide la ejecución realmente neutra del proceso de selección. Por ejemplo, muchas de las licitaciones tienen validéz muy corta (2 días) para entregar una propuesta. Quien tiene la posibilidad de darse cuenta de una oportunidad de negocio, reunir todos los papeles en el medio de su actividad laboral normal, para participar? Es prácticamente imposible, a menos de haber sido advertido antes. Por lo tanto, no es equitable y no permite reflejar un libre mercado.

SUNAT

Si me refiero a “una trampa más” al inicio de este artículo, es porque la aplicación de la SUNAT tiene un estilo muy parecido a este (seguramente el mismo equipo estará detrás de este insulto a la profesión del desarrollo web), por lo que uno tiene que usar Internet Explorer (de preferencia 6) para poder generar recibos por honorarios electrónicos. El problema, nuevamente, surge de una llamada JavaScript que genera un error en otros navegadores.

Finalmente, el recibo por honorario se genera en XML, con un fichero XSLT que permite generar un recibo más o menos parecido a los recibos papel. El problema es que el XSLT no es válido. Se tiene que usar un XSLT modificado para llegar a visualisar el recibo XML (tengo la modificación, si la quieren…)

Puntaje

Aquí va mi puntaje final para el sitio web del SEACE

  • Usabilidad: 7/20 (poco intuitivo, muchas diferencias entre páginas, JavaScript intrusivo)
  • Accesibilidad: 6/20 (Internet Explorer only, ningún esfuerzo particular para facilitar el trabajo de los descapacitados ni para usuarios de celulares inteligentes, RSS poco usables)
  • Utilidad: 14/20 (pues el acceso a licitaciones es muy útil en sí, es una pena que sea tan complicado aprovechar de este recurso)
  • Velocidad: 8/20 (ciertas páginas o componentes de formularios toman un tiempo exagerado para cargar y las funcionalidades se malogran cuando hay más de 500 usuarios conectados)
  • Respecto de estándares: 3/20 (148 errores y 34 warnings en una sola página HTML, 9 errores CSS, , no permite navegar con otros navegadores)
  • Aspecto visual: 2/20 (que feo, ningún diseñador web podría verla sin enfermarse)
  • Seguridad: 8/20 (bueno que hayan implementado HTTPS, pero los errores Oracle demuestran un serio problema de filtración de datos de formularios)

Conclusiones

Si bien el Gobierno Peruano tiene aparentemente ganas de competir con sus vecinos, proveyendo a sus ciudadanos modernos accesos a los servicios del Gobierno, cabe resaltar que hay un defecto serio en la aplicación de estas ganas en la práctica, donde se deja implementar aplicaciones web a iniciantes o personas poco recomendables al momento de hablar de desarrollo web (es una cosa hacer un carrito de compra en Dreamweaver, pero es otra cosa totalmente distinta hacer una aplicación web para miles de usuarios simultáneos que desean consultar una gran cantidad de datos de forma segura).

Esto surge probablemente del proceso de selección de las empresas proveedoras de estas aplicaciones, donde no se cuida suficientemente la *calidad* del trabajo ejecutado anteriormente por los proveedores, usando criterios de accesibilidad y de usabilidad, que deberían ser la primera preocupación de un Gobierno que tiene tanta dificultad para ser ubíquito.

En comparación con la iniciativa de Open Governmente de Inglaterra, los sitios web del Gobierno Peruano son un intento de copia muy defectuoso.

Pero mi intención no es de criticar sin ofrecer soluciones. En BeezNest desarrollamos soluciones web usadas por cientos de miles de personas, que respectan estándares, son multi-navegadores y seguras. Así que gustosos por conversar con representantes del Estado para mejorar esta situación!

Quiero poder usar las aplicaciones del Gobierno con mi aplicación favorita, que respecta estándares, sin estar forzado, para usarlas, de comprar una licencia de un software propietario hecho en EE.UU.! Me parece un colmo tener esta situación. Sin embargo, así es la triste realidad.

%d bloggers like this: