lunes, 2 de julio de 2007

Cacharreando Visual Studio .NET (I)

Krlo [blackhat4all@gmail.com]

Muchas veces existen opciones en algún programa con el que trabajamos que nunca llegamos a utilizar, en parte porque las desconocemos. El Visual Studio es un Entorno Integrado de Desarrollo (IDE por sus siglas en inglés), que posee una gran cantidad de secretos que deberíamos descubrir para sacarle mayor provecho. En dos artículos me propongo acercarlos a algunas facilidades del VS que posiblemente ya algunos conozcan -me disculpan en tal caso. Por otra parte supongo que han tenido un acercamiento a esta herramienta y son algo más que usuarios novatos. Ya para empezar, cuando me refiera a un documento dentro de la Ayuda del Visual Studio, lo hago específicamente sobre la que viene con la versión del 2005 (no estoy seguro si funcione en la del 2003).

Métodos Abreviados del Teclado::

Es casi increíble pero existen más 450 métodos abreviados de teclado predeterminados en Visual Studio. Para conocerlos, estas son las coordenadas: Tools » Options… » Environment » KeyBoard. Podemos modificarlos para asignar una nueva combinación, aunque se recomienda mantener la compatibilidad e impedir futuros dolores de cabeza cuando trabajemos en otra máquina.

Familiarizarse con los métodos abreviados toma su tiempo y al principio nos puede parecer tedioso, pero brinda buenos resultados al final, cuando nos ahorra tiempo y nos evita tener que levantar las manos del teclado. La siguiente tabla tiene algunos importantes:

Método abreviado de teclado Comando
Ctrl+K+C / Ctrl+K+U Activar/Desactivar comentarios en las líneas seleccionadas.
Ctrl+M+O / Ctrl+M+L Colapsar/Expandir todo el texto.
F12 Ir a la definición de una variable, objeto o función seleccionado.
Ctrl+Mayús+7 / Ctrl+Mayús+8 Se desplaza rápidamente hacia delante y hacia atrás en la pila para ir a la definición.
Mayús+F12 Encuentra todas las referencias de una función o una variable.
Mayús+Alt+Intro Alterna entre Pantalla Completa y Pantalla Normal.
Alt+S Muestra el diálogo de Find and Replace.
Mayús+Alt+Intro Alterna entre el modo de pantalla completa y el modo normal.
Ctrl+F Una búsqueda rápida.

Puede ser que alguno de los anteriores no funcione; en tal caso deberás editarlos por ti mismo.
Para un listado más completo, si tienes el MSDN, ver: Brief Specific Shortcut Keys.
Para ver como trabajar con shortcuts ver: How to: Work with Shortcut Key Combinations.

Splitter Bar: ver en dos partes el código::

Es muy útil poder ver en la pantalla dos partes del mismo documento, pues podemos compararlos de una manera muy práctica. Piensa en dos métodos que se relacionen como write y read, pues vas a leer en el mismo formato en que escribistes. En tales casos es útil dividir el área de trabajo en dos.

Exactamente encima del scroll de la derecha hay un splitter escondido; si lo movemos hacia abajo nos mostrará el mismo archivo de código doble, una copia encima de la otra. En la siguiente figura nos llevaremos mejor la idea:

Vista en dos.

Vale mencionar que el splitter introducido sólo es válido para el archivo donde se utilizó; los demás se seguirán viendo en el método estándar.

Esta opción aparece también en el menú Window como Split. El mismo menú tiene otras utilidades interesantes, por ejemplo podemos crear una nueva pestaña, al estilo Firefox, donde ver el archivo de código actual (es la primera opción New Window). Esto no parece muy práctico, pues al final de cuentas es lo mismo repetido, pero al combinarlo con la opción New Vertical Tab Group (un nuevo grupo de pestañas), tendremos el mismo código, uno al lado del otro. De esta forma podemos tener varios archivos en diferentes grupos. En la próxima figura lo veremos mejor:

Vista en dos.

Ver sólo el código::

Con la combinación de teclas Shift+Alt+Enter podemos tener el código en pantalla completa. Inclusive desaparece la barra de tareas, la de título, las barras de herramientas y los laterales. Sin duda es una idea práctica que nos deja tener mayor espacio de trabajo. Es muy útil cuando sabemos que sólo vamos a tirar líneas de código y no trabajar con cuestiones de diseño.

Ajuste de Línea::

En el Notepad tenemos una opción de autoajustar el texto para que quepa en la pantalla, pues muchas veces se nos pierden las líneas. En VS tenemos el mismo problema cuando escribimos una instrucción muy larga. En el menú Edit » Advanced » Word Wrap podemos resolver este problema de forma idéntica a la del Notepad. Para algunos es una opción poco estética; en mi opinión es sólo acostumbrarse.

Recortes de Código (Code Snippets)::

Existen patrones de código que usamos frecuentemente, por ejemplo:

for (int k = 0; k<10; k++){
// ...
}

Necesitamos escribir este código una y otra vez. Deberíamos tenerlo en algún lugar donde lo podamos usar sin recurrir al suplicio repetitivo anterior. Qué creen si lo ponemos en el Cuadro de Herramientas (Toolbox), simplemente seleccionándolo y arrastrándolo hasta el mismo. Si realizamos un nuevo grupo dentro del cuadro (click derecho Add Tab) llamado Recortes, estarán más organizados. Sería como trabajar con labels o botones, pero en este caso serían líneas de código. Cada vez que lo necesitemos ponemos el caret (|) en la posición del código donde iría y doble click con el Snippet (o recorte). Para darte algunas ideas de patrones, puedes incluir las siguientes:

string tmp ="";
Console.Write("");
Console.WriteLine("") ;
Console.Write();

Podemos dejar el ToolBox fijo para tenerlo más a mano. También es buena idea tener varios grupos de snippets para usarlo en dependencia del tipo de proyecto en que estemos trabajando, pues Console.Read no tiene mucho sentido en aplicaciones Windows.

Toolbox con Snippets

Otra forma más profesional (de hecho es mejor que la anterior, por eso la dejé para el final), es usar los snippets que vienen con VS. En cualquier lugar del documento, al dar click derecho tenemos las opciones Insert Snippet... y Surround With...

La primera nos inserta un snippet que podremos completar con la tecla Tab para movernos por todos sus valores que necesitan ser especificados. Si insertamos un snippet for tendremos que actualizar solamente el nombre del valor a iterar, generalmente i y además el límite de la iteración como un cadena.Length.

La segunda opción -me refiero a Surround With...- permite, dado un tramo de código seleccionado, convertirlo en el cuerpo de un snippet. Si escogemos una línea como Console.WriteLine("H3llo World"); y usamos el snippet if aparecerá algo como lo siguiente:

if(true){
  Console.WriteLine("Hello World");
}

Para crea nuestros propios snippet y usarlos de la manera anterior les aconsejo ver: Cómo crear Snippets. Se torna un poco complicado, pues hay que declararlas en XML.

Modificador / resetuserdata::

Esta opción permite restablecer Visual Studio a su estado de fábrica, en caso de que alguna vez se haya ejecutado en un estado dañado del que no pueda recuperarse. Desventaja: perderá toda la configuración y personalizaciones del entorno si usa este modificador. Sólo debemos usar este modificador como última alternativa en caso de experimentar un problema con el entorno grave y debe asegurarse de realizar copias de seguridad de la configuración del entorno, que exportará antes de usar este modificador.

Para usar este modificador, procedemos:

  1. Cierre todas las instancias de Visual Studio 2005.
  2. Haga clic en Inicio y seleccione Ejecutar...
  3. Escriba devenv.exe /resetuserdata.

Este comando tardará un par de minutos en ejecutarse a medida que Visual Studio se borra y restablece su estado original. Puede abrir el Administrador de tareas en este punto para comprobar si el proceso devenv.exe está aún en ejecución. Una vez que haya finalizado, podrá reiniciar Visual Studio. A continuación, volverá a recibir el saludo de inicio, como si estuviera ejecutando Visual Studio por primera vez en el equipo. Nunca he realizado este proceso, pero en caso de ver al IDE dando bateos, creo que es mejor opción que reinstalarlo.

Antes de terminar esta primera entrega, vamos a salirnos un poco del VS para tratar algo sobre buenas prácticas de programación.

Optimizar el trabajo con cadenas de texto::

La clase System.Text.StringBuilder proporciona métodos más eficientes para concatenar objetos string, porque crea un buffer de tamaño suficiente para contener la cadena original y poder crecer en el futuro. Si tenemos idea en un principio de cuanto sería el tamaño final, podemos instanciar la clase con ese valor. Se recomienda usar StringBuilder cuando vamos a concatenar más de 5 cadenas. Imagínense el caso de algún método recursivo que va agregando información a la cadena resultado de todo el proceso; sería muy conveniente usar StringBuilder. Ejemplo:

En Visual Basic:
Dim sResultado as String = "Nombre del usuario: " & sUserName & "."

En C#:
string sResultado = " Nombre del usuario: " + sUserName + ".";

Si usamos StringBuilder:

En Visual Basic:
Imports System.Text
Dim sbResultado As StringBuilder
sbResultado = New StringBuilder("Nombre del usuario: ")
sbResultado.Append(sUserName)
sbResultado.Append(".")
Dim sResultado As String = sbResultado.ToString


En C#:
using System.Text;
StringBuilder sbResultado = new StringBuilder("This is a message");
sbResultado.Append(sUserName);
sbResultado.Append(".");
string sResultado = sbResultado.ToString();

Conclusiones::

Para muchos, Visual Studio es la herramienta líder del mercado para desarrolladores; familiarizarse con él y sacarle el mayor provecho es lo que nos hará estar seguros de ello. De más está decir que si conoces alguna otra sugerencia o truco para trabajar con él, me escribas para compartirla con el resto de la comunidad.

Dejénos sus comentarios sobre cualquier cuestión del artículo que le motive. Para la próxima entrega estaremos hablando un poco de Visual Studio 2008 u Orcas; sobre sus principales características y potencialidades. Además, tocaremos el IntelliSense del VS 2005 y cómo configurarlo.

Para saber más...

Continuar leyendo

Notas sobre los códigos de ética

ZorphDark [blackhat4all@gmail.com]

Es bastante común encontrarse en cualquier laboratorio de computación, por más pequeño que sea, una larga lista de reglamentos que habla más acerca de las restricciones que de lo que nos es permitido hacer. Por tal razón, muchos conocen qué es un código de ética, pero casi nadie dedica su tiempo a leer más de tres líneas del texto. Entonces, ¿cuál será la razón objetiva por la cual siempre ocurre esto?

Desafortunadamente, es común de que la "falta de popularidad" de los códigos de ética se deba a varios factores, muchos de los cuales son copiados de un lugar a otro sin realizar un análisis previo de las condiciones del local y de la poca influencia de su contenido. A veces no se considera la magnitud de la importancia que tienen tales normas, no sólo en cuanto a la organización de un centro computacional, sino en la formación de cada una de las personas que visitan tales instituciones y el óptimo aprovechamiento de los recursos disponibles.

A continuación se expone una lista de los factores que perjudican a los códigos de ética en nuestro país -y quizás en el mundo (nunca he entrado a un CiberCafé ni caminado por los pasillos del Googleplex). Hay que aclarar que el listado se considera incompleto, por lo que las opiniones de cada uno de los lectores juegan un papel muy importante.

Aspectos generalizados::

Los usuarios de computadoras no tienen por qué saber cuál es el sistema operativo que los administradores tienen que instalar, ni la frecuencia de actualización de la base de datos de la aplicación antivirus. Es más, a la mayoría de ellos ni siquiera le interesan estas directrices, por lo que es recomendable que permanezcan aisladas de los apectos orientados a usuarios.

Ausencia de recomendaciones::

Como referíamos al principio, la mayor parte de las reglamentaciones de los laboratorios de cómputo están subordinadas a regulaciones que intentan por todos los medios controlar la entrada y salida de datos críticos o ilegales, mantener el orden del local y la protección física de los medios. Todo ello, en cierta medida, es necesario. Sin esas medidas de seguro el centro quedaría transformado en cualquier cosa menos en un laboratorio de computación. El problema es que con tantas limitaciones se han olvidado de plantear los derechos de los usuarios y lo que es recomendable hacer frente a las PC.

Sería innovador presentar, junto a las reglamentaciones tradicionales, varios consejos que permitieran a los usuarios principiantes conocer las posibilidades que brindan las aplicaciones instaladas en el sistema operativo en uso. A los usuarios de nivel medio seguramente les interesaría conocer los últimos detalles que se han implementado en el centro respecto al software y el hardware de los equipos. No es seguro que a los programadores y expertos en informática les anime este tipo de cuestiones, por lo que se deben adoptar soluciones dinámicas para los diferentes tipos de público.

Restricciones fútiles o excesivas::

Estamos acostumbrados a lidiar con decisiones de carácter restrictivo y/o absurdo, tanto en un laboratorio de computación como en una red de equipos. Las causas son muy variadas, pero lo cierto es que el desconocimiento, el desinterés y la mentalidad de quienes regulan las condiciones de un centro o el tráfico de datos generalmente nos afecta a todos. Es fácil tomar decisiones deficientes, porque no hay que dedicarles mucho tiempo; es muy simple restringir las conexiones de los usuarios para que los administradores tengan más ancho de banda o decir "no se puede" para quitarse unos cuantos dolores de cabeza de encima. Lo que pocos conocen -o no les interesa saber- es que mientras más opciones les sean brindadas a los usuarios, más conocimientos serán adquiridos, con el correspondiente crecimiento del número de especialistas en el país con el paso del tiempo. Esto no significa que dejemos en manos de las demás personas el control de nuestro sistema, sino, que les enseñemos cómo utilizar adecuadamente aquellos recursos que podrían tener a su disposición.

Es válido recordar que muchos anhelan tener lo mismo que soñaban aquellos que han podido hoy, de una forma u otra, dar una paso adelante. La información es tan vital como el agua que nos rodea y, como mismo ocurre cuando se niega un vaso de dicho líquido, es un crimen censurar el acceso a las investigaciones, libros, bitácoras, sistemas de correo, mensajería instantánea, códigos fuente, programas y otros servicios disponibles para todos en la World Wide Web.

Falta de atractivo visual::

Por último -y no por falta de importancia- es necesario referirse a la presentación de la información, factor de gran importancia en la transmisión del mensaje que se quiera ofrecer mediante la publicación impresa o en línea de un reglamento. La carencia de información visual o de una correcta distribución de los elementos presentes juega un papel primordial en la captación de la atención de los usuarios. No se trata de atiborrar de imágenes, colores o efectos WordArt un papel o una página web; todo lo contrario. Es necesario hacer un estudio del medio en que se presentará esta información, conocer al público general al que está orientado y luego equilibrar toda la estructura y elementos multimedia disponibles. Un mal diseño alejará a una gran parte de los usuarios que deseen leer el contenido publicado.

Continuar leyendo

2 Fast 2 Furious

Alien [blackhat4all@gmail.com]

Muchos a veces quieren tener la mejor PC de su barrio, de su escuela o de su provincia, y se pasan el día instalando programas que no utilizan y software que "alguien" les dijo que era lo mejor, porque era del 2007.

Dos días antes de escribir esto, una persona muy allegada a mí me decía: -Mira lo que tengo aquí...-, mientras alzaba en su mano derecha un CD que después supe que estaba lleno de fuentes (tipografías) y que quería instalar en un Celeron del que se estaba quejando por su lentitud.

No tengo nada en contra de los que quieren tener todos los tipos de letras; eso es quizás hasta bueno para el que sólo se dedique a hacer montajes o PowerPoints de: "Te amo", pero ¿es necesario copiar en el sistema un disco compacto de fuentes? Cuando nuestro ordenador enciende, una de las tantas tareas que realiza es la de ordenar toda su caligrafía, buscar que tenga las imprescindibles, que no le falte la Times New Roman, la Courier New, entre otras. Eso es sin contar programas como el Office 2007, que de por sí se toman su tiempo, ¿se imaginan tener que leer y ordenar alfabéticamente 3 o 4 veces más la cantidad de fuentes? Para mí eso es un abuso.

Están los otros que instalan Windows y su respectivo Media Player y, porque alguien le dijo (con toda razón) que el MusicMatch graba y quema más rápido, lo instalan, y luego quieren el Jet Audio, porque es más bonito o el BPM Studio porque hace transiciones; y cuando ven la máquina lenta, sin desinstalar los anteriores, instalan uno que consume menos recursos, y al ver que no hay mejorías, buscan un técnico, y con aires de inteligencia le dicen: "Yo no sé porque está lenta, si el único que uso es el Winamp".

Windows tiene incluido en su paquete dos herramientas que para mí son de gran utilidad. Una es el ScanDisk, que se encarga de revisar el disco duro en busca de errores y, aunque no tiene que ver directamente con la velocidad, nadie puede negar que no funcionará igual un HDD que no contenga fallas a uno que haya sido formateado varias veces y no esté bien cuidado. La otra utilidad a la que me refería es el Desfragmentador, sobre el cual se escribió un artículo en BlackHat #18. Esta tarea sí mejora notablemente el desarrollo de la PC, puesto que se encarga de todo lo que es la organización de los archivos dentro del disco duro. Un archivo fragmentado y dividido por varias zonas del disco no se ejecutará con la misma rapidez que uno que se encuentre organizado en un sentido lógico. Estas herramientas no están escondidas en lugares secretos ni nada por el estilo; están ahí, justo en las propiedades del disco y, aún así, estoy seguro que menos del 30% de los usuarios alguna vez las han utilizado.

Sin irnos muy lejos aún de los HDD, hablaremos sobre su espacio. Aunque un disco tenga un espacio libre de 100 Gb, a la hora de encenderla y empezar a trabajar con la misma siempre será menor, puesto que los programas que ejecutamos descargan gran parte de su contenido al abrirse. Muchos de ellos te advierten de esto, como es el caso del MusicMatch, que para poder reproducir música requiere que el disco duro tenga un espacio de al menos 20 Mb; el mismo desfragmentador que citábamos antes requiere de un 15% de espacio libre en el disco; pero otros ni siquiera te advierten, se limitan a ejecutarse con el espacio que se tenga libre a costa de una considerable demora en todas sus ejecuciones y, por consiguiente, afectando a otros programas. Hasta ahora no me he encontrado con ningún manual que diga qué espacio libre deben tener los HDD, pero por prueba y error, yo recomendaría mantener al menos un 25% libre en el disco de sistema, que es el que por defecto está configurado para almacenar los datos de los softwares que se ejecutan. Una forma de mantener parte del disco duro limpio es borrando frecuentemente los archivos temporales.

Un antivirus efectivo ayuda también a disminuir la carga de trabajo que pueda tener el microprocesador en un momento determinado. El antivirus se encarga, entre otras cosas, de ir revisando constantemente los procesos del sistema y las carpetas a las que se accede, así que lo más recomendable es que se pueda configurar para que utilice solo un porciento determinado de recursos.

Al registro de Windows es a donde van a parar todas nuestras barbaridades, y es además una de las primeras cosas que revisa nuestro sistema operativo cuando arranca. Un registro bien organizado y que no tenga errores ni apunte a lugares que no existen ayuda también a que nuestro sistema cargue más rápido. También por el registro se ordena la carga de programas que a veces ni usamos, o que simplemente no nos hacen falta en ese momento, pero que igual se ejecutarán. Quitándolos nos podríamos ahorar unos cuantos segundos.

He dejado para casi el final algo que es un poco más arriesgado: la limpieza física. Una máquina a lo largo del tiempo va adquiriendo polvo y suciedad que, entre otras cosas, pueden tupir algunos espacios por donde normalmente debería entrar algo de ventilación, y cuando digo esto me refiero principalmente al fan del microprocesador, el cual ya sabemos -por artículos anteriores- que al sobrecalentarse disminuye su rendimiento.

Y por último -pero no menos importante- se debe saber qué programas estamos usando. Normalmente un buen programador se encargaría de hacer que sus aplicaciones tomen sólo la memoria que va necesitando el programa a lo largo de su tiempo de vida y cuando finalice descargue todos los recursos utilizados, pero sabemos que hay quien no los hace así, y sobrecarga la máquina creando un arreglo de 1000 elementos para guardar los nombres de sus compañeros de aula. Es imposible saber cómo está programado cada uno de los softwares que utilizamos, pero por una simple cuestión de lógica, deberemos confiar más en un programa de audio profesional que ha cumplido durante un tiempo determinado con los estándares establecidos, que en un reproductor que hizo nuestro vecino y nos lo quiere "meter por los ojos".

Para saber más...

Continuar leyendo

Alternativa a las Cookies

charlie_mtp [neyquesada@infomed.sld.cu]

La publicación de las cookies de la semana anterior trajo consigo un debate entre varias amistades mías; unos asegurando que las cookies eran inseguras y poco efectivas y otros defendiéndolas. Por esta razón, creo que vendría bien analizar las alternativas a las mismas para que ustedes se creen un criterio y decidan el lado que van a apoyar ahora que saben un poco más.

Creo que prima empezar aclarando que algunas de las operaciones que se pueden realizar mediante cookies también se pueden hacer mediante otros mecanismos. Pero como es de suponer, estos tienen sus propios inconvenientes (de lo contrario habrían dejado obsoletas a las cookies). Por esta razón la privacidad sigue siendo hasta nuestros días un problema, utilicemos o no las cookies, las defina o no el servidor.

La primera y que seguro se les ha ocurrido a muchos (otros es probable que la hayan leído) es utilizando la dirección IP, que no es más que almacenar esta dirección del ordenador que solicita las páginas. El reconocimiento de IP está disponible desde los inicios de World Wide Web, debido a que es necesario al descargar páginas que el servidor reconozca la dirección IP del ordenador donde corre el navegador. Está opción puede ser guardada en el servidor, esté o no usando cookies. Pero como ustedes sabrán, en algunas redes las direcciones IP son dinámicas (como en Infomed), es decir, se le asignan al ordenador en el momento de conectarse (un mismo ordenador puede tener diferentes direcciones IP en diferentes sesiones). Esto provoca que sea menos fiable que las cookies en la identificación de un usuario. Sin embargo, esta técnica la podemos hacer más confiable si usamos otra característica del protocolo HTTP: en el momento que un usuario solicita una página porque ha seguido un link, la petición que se envía al servidor contiene la URL de la página donde el vínculo estaba localizado. Si el servidor almacena esas URL, se puede rastrear el camino de páginas visitadas por el usuario de forma más precisa. Pero he aquí otro inconveniente: varios usuarios en un mismo ordenador pueden acceder a la misma página y después seguir links diferentes, lo que hace este "rastreo" menos fiable; y digo rastreo porque está técnica sólo permite eso y no puede reemplazar a las cookies en sus otros usos.

Pese a esto, puede que algunos todavía piensen que se puede usar la dirección IP. Pues bien, les diré que es imposible en algunos sistemas que se utilizan precisamente para mantener el anonimato en Internet, tales como Tor (una implementación libre de un sistema de encaminamiento llamado onion routing, que permite a sus usuarios comunicarse en Internet de manera anónima). Con sistemas como este, el navegador utiliza varias direcciones IP a lo largo de una sesión.

Otra técnica más precisa es la URL query string, que consiste en incrustar información en la URL. El mecanismo de sesión de PHP utiliza este método si las cookies no están habilitadas. Consiste en que el servidor web añade query strings a los enlaces de la página web que contiene, a la hora de servirla al navegador. Cuando el usuario sigue un enlace, el navegador devuelve al servidor la query string añadida a los enlaces. Usándolas de esta forma, si nos damos cuenta son muy parecidas a las cookies, siendo ambas porciones de información definidos por el servidor y devueltas por el navegador posteriormente. Pero ahora veamos las diferencias y desventajas de las query strings. Si un usuario accede a una página dos veces, no hay seguridad que utilice la misma query string; tal es el ejemplo siguiente: se accede a una página a través de otra que se encuentre en el mismo servidor y a través de un buscador --> las query string serán normalmente diferentes, mientras las cookies serian iguales. Recordando lo hablado referente a la fijación de sesión (en el artículo cookies de la semana pasada), se puede decir que una query string simplifica dichos ataques, por lo que en esta parte de seguridad las cookies son más seguras (disculpen la redundancia pero la creo necesaria).

Veamos ahora la Autenticación HTTP. Para esta autenticación, el protocolo HTTP incluye mecanismos tales como el Digest Access Authentication, que permite acceder a una página web sólo cuando el usuario ha facilitado un nombre de usuario y contraseña correctos. Después de este acceso el navegador guarda esta información y la utiliza para acceder a las páginas siguientes sin intervención de usuario, para nosotros es lo mismo que las cookies, pero en cada acceso a una página el navegador se encarga de enviar nuevamente estos datos, por lo que si alguien estuviese escuchando este tráfico podría leer esta información y almacenarla para su uso posterior, además de que normalmente tras un tiempo de inactividad estas sesiones expiran.

Ahora pasemos a una alternativa que pocos conocen, y tal es el caso de Objetos Macromedia Flash almacenados localmente. Si un navegador incluye el plug-in de Macromedia Flash Player, se puede utilizar la función Local Shared Objects del mismo, de una forma muy similar a las cookies. El tamaño máximo por defecto de los objetos es de 100 Kb y casi todos los usuarios de Windows tienen Flash Player instalado, de forma que los Local Shared Objects pueden estar habilitados cuando las cookies no lo están. Aquí una alternativa que a mi parecer es de las mejores, aunque existen usuarios novatos en la actualidad que no tienen este plug-in en el navegador.

Otra alternativa -y la última que conozco- es Persistencia en el cliente, que no es más que un mecanismo de persistencia que algunos navegadores web soportan, basado en script que permite que la página almacene información localmente para su uso posterior. Internet Explorer, por ejemplo, soporta información persistente en el historial del navegador, en los favoritos, en un almacenamiento XML, o directamente en una página web guardada en disco.

Para saber más...

Continuar leyendo

¿Qué es RSS?

Alien [blackhat4all@gmail.com]

Dice Wikipedia que: “RSS es parte de la familia de los formatos XML, desarrollado específicamente para todo tipo de sitios que se actualicen con frecuencia y por medio del cual se puede compartir la información y usarla en otros sitios web o programas. A esto se le conoce como redifusión.”

El acrónimo RSS ha tenido varios significados: Rich Site Summary, RDF Site Summary y por último, Really Simple Syndication. Es una tecnología que permite de una forma muy sencilla recibir un archivo en formato XML. Este fichero trae los titulares y enlaces a artículos sobre cualquier tema de su interés, que por lo general es actualizado regularmente, lo que se presta para que su mayor uso sea en la distribución de noticias y alertas.

El RSS, al ser formato del tipo XML, carece de forma. Sólo es posible incorporar contenido y puede ser interpretado por infinidad de softwares y dispositivos. A diferencia del e-mail, es una tecnología en la que se obtiene sólo la información que se solicita y no la que deciden enviarle por haber hecho pública su dirección electrónica, representando esto un gran avance en la lucha anti-spam.

Realmente el campo de los RSS es bastante amplio, y más aún si nos introducimos en los formatos XML; pero el objetivo de este artículo no es dar toda una conferencia acerca de los mismos, sino aprender como hacer uso de ellos para obtener una ventaja a la hora de saber qué información necesitamos y en qué lugares buscar.

La Web es inmensa (para los que tienen Internet), y por suerte está disponible las 24 horas (para los que tienen una cuenta full); pero los que tenemos ciertas limitaciones, muchas veces queremos un tipo de información determinada, y no sabemos exactamente dónde buscar. Para esas personas es este artículo.

¿A quién no le gustaría recibir la información que desea junto con los correos?
Muchas páginas en la red cuentan ya con servicios de RSS. Con sólo suscribirse a los mismos, pueden enviarnos la información que deseamos. Pongamos un ejemplo:

Existe determinada página accesible desde la navegación nacional en la cual se ofertan permutas y cosas similares. Una persona normal pudiera conectarse a dicha página y leer entre todas las ofertas cuál es la que quiere; pero mientras hace esto, el tiempo de conexión irá en aumento. Quizás cuando termine de leer, se dé cuenta que no hay nada que le interese, pero aún así, habrá consumido varios minutos que no le serán repuestos y podría llegar a afectarle al final del mes.

¿Qué hacer?
Brevemente trataré de explicar cómo suscribirse a una página utilizando como gestor de correos el Mozilla Thunderbird. Aunque la forma de configurar sea distinta al Outlook (por citar un ejemplo), no pienso que difiera tanto como para no lograr una correcta configuración en otros gestores.

Lo primero que se debe hacer es buscar la página de la cual queremos descargar información y ver si la misma tiene habilidado el servicio de RSS. Busquemos, por ejemplo, dentro de los grupos de Google la palabra pccuba. Cuando aparezca, haremos clic sobre el vínculo para dirigirnos a ella.

Con Internet Explorer no he probado, pero los que usan Mozilla Firefox verán al final de la barra de direcciones las letras "RSS", eso quiere decir que esa página tiene dicho servicio. Desplacémonos hasta el final de la página y veremos un pequeño botón anaranjado que dirá "XML". Pinchando sobre el botón naranja, aparecerá una página donde nos pide la cantidad de noticias que queremos recibir cada vez que nos conectemos. En este caso nos dan a escoger entre 15 y 50, pero pudiera ser que nos envíen una cantidad fija y no nos aparecería la página que estamos viendo.

Cuando se haga clic sobre la cantidad de noticias a recibir, nos saldrá la página que contiene las noticias y con la cantidad que hemos pedido. Hasta aquí no hemos hecho nada realmente, los próximos pasos son los que le dirán al Thunderbird qué es lo que queremos descargar cuando pidamos los correos. Para esto debemos copiar la dirección de la página, tal y como está, abrir el Thunderbird y crearnos una cuenta asegurándonos de haber marcado Hilos de RSS y blogs, luego se escribe el nombre de la cuenta y se finaliza.

Para configurarla, debemos hacer clic derecho sobre ella e ir a la opción Administrar Suscripciones. Cuando se haga clic sobre el botón Añadir, aparecerá una ventana en la que se deberá poner en URL del canal la dirección que previamente habíamos copiado de la página y, para tener un resumen más ampliado, deberemos marcar el checkbox de abajo.

Ya la cuenta está configurada como tal. Ahora, un pequeño detalle: para los usuarios de Infomed que utilizan el Thunderbird como gestor de correos, vale aclarar que para recibir lo correos normalmente se debe tener marcada la opción de estar conectado directo a Internet; pues bien, para recibir los RSS que acabamos de configurar, deberán ir a Herramientas » Opciones y en la pestaña General hacer clic en el botón Configuración de la conexión. Allí cerciorarse de que la opción Configuración manual del proxy esté marcada y como corresponde según las indicaciones de Infomed.

Para saber más...

Continuar leyendo

Cómo escribir un bootloader

Reinier Nápoles Martínez [rnapoles@ipihlg.rimed.cu]

Estaba leyendo un articulo que publicaron en BlackHat #16 sobre quitar el password al BIOS desde Windows, pero esto sólo funciona si arrancamos desde un disco inicio de MS-DOS. Creo que desde las versiones 95, 98 y Me también funciona, pero los sistemas basados en NT como XP ya no permiten el acceso directo al hardware, ni permite el direccionamiento directo de la memoria.

¿Cómo escribir un bootloader?

char *videomem = (char *) 0xb8000; // 0xb8000 es la dirección de la RAM de video
void putc(char carattere){
  videomem++ = carattere;
// caracter a imprimir
  videomem++ = 0x7;
// atributo del char
}

Códigos como éste sólo son permitidos en Sistema Operativo (SO) como MS-DOS, que permiten el acceso a toda la memoria, puertos, etc., por lo que pueden hacer caer o dañar al sistema fácilmente. Pues Windows usa un modelo de memoria llamado Flat (o plano), donde cada proceso cree que tiene asignado 4 Gb de memoria para él solo. Un proceso no conoce la dirección de memoria de otro proceso, por lo que no puede modificarla. El único que conoce las direcciones es el kernel del SO; de este modo un programa puede caer, pero no comprometer el sistema completamente (existen casos en que un programa o una biblioteca contiene un bug y su explotación permite la elevación de privilegios al atacante, ej: buffer overflow, heap overflow).

El microprocesador posee un modo de funcionamiento llamado "protegido", existente desde el 286. Éste cuenta con cuatro niveles de privilegios enumerados desde el 0 al 3, donde el mayor privilegio lo tiene el llamado anillo 0 y el menor es el 3:

0- Núcleo del SO (Modo Supervisor)
1- Servicios del sistema
2- Aplicaciones del sistema
3- Aplicaciones del usuario (Modo Usuario)

Instrucciones en ASM, como sti, cli y hlt sólo le son permitidas al modo Núcleo o Supervisor.

Windows y Linux sólo usan los anillos 0 y 3 (en Linux el usuario root tiene más privilegios que el administrador de Windows). Ahora, ¿cómo aceden al hardware las aplicaciones del usuario? Si estas no tienen suficientes privilegios, se accede mediante las llamadas a las APIs del sistema operativo (en Linux, Syscalls o Llamadas al sistema). Éstas proporcionan un gran nivel de abstracción al programador, ya que éste sabe lo que hacen éstas, no cómo funcionan internamente.

Ahora compilemos el siguiente código en XP:

// hay que usar Dev-C++ o llamar directamente al compilador de la siguiente forma
// gcc -o quitarpass quitarpass.c
#include <stdio.h>
main()
{
  asm (".intel_syntax noprefix");
  __asm ("cli");
// desactivamos las interrupciones
  __asm ("mov al,0x2e");
// movemos el valor 0x2e a registro AL
  __asm ("out 0x70,al");
// escribimos el valor de AL en el puerto 70
  __asm ("out 0x71,al");
// escribimos el valor de AL en el puerto 71
  __asm ("sti");
// habilitamos las interrupciones
  asm (".att_syntax noprefix");

 return 0;
}

Explicación del código:
Las Directivas asm (".intel_syntax noprefix"); y asm (".att_syntax noprefix"); son para que acepte la sintaxis de Intel, ya que el gcc usa por defecto la de AT&T. Por ejemplo:

intel syntax At&t syntax Mov ax,5 mov $5,%ax

Si lo compilamos veremos que no da ningún error, pero si lo ejecutamos nos dará el típico error "El programa quitarpass.exe ha efectuado una operación no válida y debe cerrarse".

¿Que sucedió entonces, que ni como administrador podemos ejecutarlo?

Sólo sé que el sistema no lo permite. Quizás lo haga si lo lanzamos con la cuenta system, ya que ésta tiene más privilegios que el Administrador. Pero no lo he probado, así que si alguien lo prueba que me lo comunique. Existen programas como el asusupdate, que como administrador te permiten flashear, actualizar, e incluso cambiarle el logo de inicio al BIOS. Estos programas usan generalmente una función que se llama DeviceIOcontrol,que también es usada en la creación de controladores de dispositivos, ya que estos necesitan acceder directamente al hardware. Dicha función no he podido probarla, ya que no he encontrado suficiente documentación sobre cómo usarla.

En el caso del debug no da ningún error, pero si reiniciamos la PC veremos que no ha eliminado el pass del BIOS.

Ahora probemos el siguiente código en Linux:

#include <sys/io.h> // contiene el prototipo de la función iopl

main()
{
  iopl(3);
// elevamos los privilegios de E/S, que normalmente es 0
  asm(".intel_syntax noprefix");
  asm("cli");
  asm("mov al,0x2e");
  asm("out 0x70,al");
  asm("out 0x71,al");
  asm("sti");
  asm(".att_syntax noprefix");
  return 0;
}

Lo compilamos:

rnapoles rodas:~/prog/asm/cm$ gcc -o clearcmos clearcmos.c

Lo ejecutamos:

rnapoles rodas:~/prog/asm/cm$ ./clearcmos
Violación de segmento
rnapoles rodas:~/prog/asm/cm$

Esto sucede porque no tenemos suficientes privilegios. Ejecutémoslo como root a ver que pasa:

rnapoles rodas:~/prog/asm/cm$ su
Password:
root rodas /home/rnapoles/prog/asm/cm :./clearcmos

Y todo sale ok. Reiniciemos la PC y entremos al BIOS. ¡Hecho está: sin password!, por lo que sólo debemos usar la cuenta de root para tareas administrativas. Ya que no soy un especialista en la materia, el texto anterior puede que quizás contenga algunos errores.

Para saber más...

Continuar leyendo

Los servicios de Windows (I)

HCuba [electronico0406023@mtz.jovenclub.cu]

En la edición número 19 de esta revista publicaron un código explicando cómo detener la ejecución de servicios innecesarios del sistema, que realmente en la mayoría de los casos, lejos de resolvernos un problema, lo que hacen es acabarnos con la paciencia cuando tenemos un ordenador que no cumple con todas nuestras expectativas y aún así queremos estar en la última con los softwares.

Con respecto al código publicado todo está muy bien, el problema comienza cuando llegamos a la consola Servicios y nos enfrentamos a esa variedad de servicios existentes en nuestros sistemas operativos que, aunque en la mayoría de ellos nos brindan una descripción del mismo -en el peor de los casos en inglés, no siempre logramos entenderla y después de observarlos durante unos minutos, al final terminamos deteniendo cuando más tres servicios y, por lo tanto, la mejoría es poco notable. Por ende, creemos que el truco no sirvió.

Así que para aliviar lo descrito anteriormente, decidí buscar sobre el tema y les traigo más abajo una lista de algunos de los servicios que poseemos en nuestros sistemas. Digo algunos porque existen programas que también instalan servicios y estos no los describo aquí, ya que no deben de cambiar sus atributos porque dejaría de funcionar correctamente el programa que lo creó.

A pesar de que los cambios son reversibles, les recomiendo que tengan mucho cuidado antes de cambiar la configuración de algún servicio, ya que podemos causar efectos no deseados sobre nuestro sistema operativo. Por lo tanto hay que estar seguros antes de realizar alguna modificación.

Como recomendación, resta decir que es preferible ir modificándolos de a uno y una vez que vemos que nuestra computadora sigue funcionando de manera adecuada, procedemos con los restantes.

A continuación, suponiendo de que ya conocen la manera de ver los servicios, descrita en el código "Servicios Innecesarios" de BlackHat #19, pasaré directamente a mencionar cada unos de ellos con una descripción de los mismos y una recomendación de si pueden prescindir o no de él.

Servicio de alerta::

Notifica a los usuarios y/o computadoras las alertas administrativas. Si detenemos este servicio, las aplicaciones que utilicen las APIs NetAlertRaise or NetAlertRaiseEx no podrán notificar a un usuario o computadora (mediante un cuadro de mensaje del servicio Mensajero) que ocurrió una alerta administrativa. Si tu computadora no está en red, lo puedes Deshabilitar o poner Manual. De lo contrario, te conviene consultar con tu administrador de red para ver si es usado o no.

Servicio de puerta de enlace de capa de aplicación::

Provee soporte a plug-ins de terceros para la Conexión compartida a Internet (Internet Connection Sharing) y el Firewall (Internet Connection Firewall). Se recomienda modo Manual, a no ser que utilicemos el servicio ICS/ICF.

Administración de aplicaciones::

Es utilizado para el manejo del software instalado (Agregar/Quitar programas). Si no estás continuamente instalando programas, te conviene pasarlo a Manual. Y en todo caso habilitarlo antes de instalar o desinstalar algo.

Actualizaciones automáticas::

Se utiliza para chequear automáticamente si salió algún nuevo parche o actualización. Si deshabilitamos este servicio, podremos actualizar el sistema Manualmente a través de la página de Microsoft Windows Update.

Nota: La actualización automática requiere que este ejecutándose Servicios de cifrado (Cryptographic Services).

Se recomienda deshabilitarlo, y hacer las actualizaciones manualmente.

Servicio de transferencia inteligente en segundo plano::

Utiliza los espacios disponibles en la conexión para la transferencia de datos. No conozco ninguna aplicación que lo use. Se recomienda Deshabilitarlo.

Portafolios::

Por defecto, la información que copiamos o cortamos es trasladada al portapapeles (Clipboard) y permanece ahí, hasta que copiemos o cortemos nuevamente. Si habilitamos este servicio, podremos compartir esta información con otras personas que tengan el Visor del Portafolios (ClipBook Viewer) instalado en su computadora y viceversa. El Visor del Portafolios no aparece en la lista de Accesorios del Menú de Inicio, por lo tanto, deberíamos crear un acceso directo apuntando a: %SystemRoot%\System32\clipbrd.exe. Se recomienda deshabilitarlo, a no ser que le demos utilidad.

Sistema de sucesos COM+::

La intención de COM es facilitar a los desarrolladores el uso y creación de componentes de software en cualquier lenguaje y con cualquier herramienta. COM+ es una extensión del COM original. Se recomienda dejarlo en modo Automático.

Aplicación del sistema COM+::

Maneja el seguimiento y configuración de los componentes basados en COM. Si detenemos este servicio, la mayoría de los componentes basados en esta tecnología no funcionarán de manera adecuada. Se requiere para Notificación de sucesos del sistema (System Event Notification). Se recomienda dejarlo en Automático.

Examinador de equipos::

Mantiene actualizada la lista de computadoras de la red y la informa a los programas que la requieran. No es necesario en computadoras que no forman parte de una red; tampoco en las que se conectan a Internet a través de un Módem. Se recomienda modo Manual y el Automático si estamos en red y no usamos WINS.

Servicios de cifrado::

Proporciona tres servicios de administración:

  • Servicio de catálogo de base de datos, que confirma las firmas de archivos de Windows
  • Servicio de raíz protegida, que agrega y quita certificados de entidades emisoras de raíz de confianza de este equipo
  • Servicio de claves, que ayuda a inscribir este equipo certificados.

Si deshabilitamos este servicio, siempre recibiremos el mensaje de que los drivers no son certificados por Windows. Se requiere para cuando actualizamos Windows de manera manual. Se recomienda dejar en modo Automático. O iniciarlo cada vez que hagamos una actualización.

Cliente DHCP::

Cada máquina conectada a una red del tipo TCP/IP necesita una dirección IP única para poder identificarse dentro de la misma. El protocolo DHCP permite la asignación dinámica y automática de estas direcciones. Se recomienda Manual si nuestra máquina no forma parte de ninguna red o si tenemos un IP estático o fijo. De lo contrario, o si nos conectamos a Internet a través de un módem necesitamos que este servicio esté en Automático.

Cliente de seguimiento de vínculos distribuidos::

Mantiene vínculos entre archivos NTFS dentro de un equipo o entre equipos en un dominio de red. Si tu computadora es parte de un Dominio NT y tu Controlador de Dominio se encuentra corriendo el Servidor de seguimiento de vínculos distribuidos (Distributed Link Tracking Server), seleccionar Automático. De lo contrario Manual.

Coordinador de transacciones distribuidas de Microsoft::

Es el servicio encargado de coordinar transacciones que están distribuidas en múltiples administradores de recursos, como bases de datos, colas de mensajes y sistemas de archivos. Si detenemos este servicio, estas transacciones no ocurrirán. ¿Bases de datos de red presentes? pues Automático. De lo contrario Manual.

Cliente DNS::

Resuelve y almacena los nombres DNS para este equipo. Si detenemos este servicio, nuestra computadora no será capaz de resolver nombres DNS ni localizar controladores de dominio Active Directory. Si tu máquina esta en red, Automático. De lo contrario Manual. Requerido si usas IPSEC.

Servicio de informe de errores::

Se utiliza para reportar a Microsoft cuando ocurre algún error en una aplicación o servicio que se ejecuta en un modo no estándar. Deshabilitarlo.

Registro de sucesos::

Se encarga de registrar eventos producidos por componentes y aplicaciones de Windows para que luego puedan ser vistos desde el Visor de Eventos (Event Viewer). Es muy útil para ver que problemas estamos teniendo. Ya que muchos de estos no son mostrados al "usuario común". Se recomienda dejar en modo Automático. El Instrumental de administración de Windows (Windows Management Instrumentation) requiere de este servicio para funcionar.

Compatibilidad de cambio rápido de usuario::

Windows XP permite a sus usuarios cambiar de cuenta, sin desloguearse del sistema, preservando los datos personales y conexiones presentes. Permitiendo el uso simultáneo de una computadora. Automático o Manual, dependiendo de si lo utilizamos o no respectivamente.

Ayuda y soporte técnico::

Habilita el centro de Ayuda y Soporte técnico (Help and Support Center) en este equipo. Se recomienda poner de manera Manual y Habilitar sólo cuando se necesite.

Acceso a dispositivos de interfaz humana::

Habilita el acceso a dispositivos HID. Si no usamos este tipo de dispositivos, o tienen drivers propios, lo podemos poner en Manual.

Servicio COM de grabación de CD de IMAPI::

Se encarga de las grabaciones de CD que utilicen IMAPI. Es el encargado de soportar las grabaciones de arrastrar y soltar (drag & drop) en Windows XP. Nos conviene ponerlo en modo Manual, ya que se iniciará y detendrá automáticamente cuando sea requerido.

Servicio de Index Server::

Indexa el contenido y propiedades de los archivos en nuestra máquina y las de la red para que sea más rápida la búsqueda de archivos. El único motivo por el cual podría mantenerse funcionando es si realmente buscamos archivos muy seguido. De lo contrario sería un gasto inútil de memoria y CPU.

Conexión de seguridad a Internet (ICF) / Conexión compartida a Internet (ICS)::

Se utiliza para compartir la conexión a Internet. Es decir, para permitir que varias máquinas se conecten a Internet utilizando una única conexión por módem. Este servicio se debe instalar en la máquina que tiene el módem. También es utilizado como Firewall. Automático si compartimos la conexión o requerimos del Firewall de Windows XP. De lo contrario deshabilitarlo.

Servicios IPSEC::

IPSEC es un conjunto de extensiones de la familia del protocolo IP. Provee autentificación y verificación de paquetes y la encriptación de los mismos. Es muy usado en Redes Privadas Virtuales, VPNs. Por lo general, un usuario "normal" no utiliza estos servicios. O sea, que lo vamos a Deshabilitar.

Administrador de discos lógicos::

Detecta y monitorea los nuevos discos rígidos y envía la información al Servicio del administrador de discos lógicos (Logical Disk Manager Administrative Service) para su configuración. Si detenemos este servicio, la configuración de los discos se puede volver obsoleta. Se recomienda poner en modo Automático en caso de que estemos acostumbrados a cambiar los discos y/o tengamos discos removibles. De no ser así, Manual.

Servicio del administrador de discos lógicos::

Este servicio es iniciado sólo cuando configuramos una partición o unidad de disco. Por defecto no se ejecuta; lo hace sólo para procesos de configuración y a continuación se detiene, por lo tanto lo dejamos en modo Manual.

Para saber más...

Continuar leyendo

FTPMail

Alien [blackhat4all@gmail.com]

En la semana pasada hacía yo todo un recorrido por las distintas etapas por la cuales han pasado muchos de los usuarios de los distintos servidores cubanos, y nada, es que resulta a veces regocijante poder terminar la dirección de una página con .com en vez de continuar usando el acostumbrado .cu.

No quiero menospreciar las páginas cubanas, pero no es menos cierto que en casi todas se habla de lo mismo, y en ocasiones uno quiere leer, aunque sea en inglés, una página que tenga un diseño distinto y una manera diferente de enfocar las cosas, o simplemente quiere ver la última ropa que se puso fulanita en el concierto que dio hace tres días en un determinado país, o bajarse una guía completa sobre la tecla Enter y, por desgracia, en Cuba no existe toda la información a la que nos gustaría acceder.

Desde hace varios años existe en Internet un servicio que se llama FTPMail, el cual permite obtener ficheros de un sitio FTP por correo electrónico. Si no se tiene un acceso directo a Internet, pero se es capaz de enviar correo electrónico a Internet, FTPMail es una buena forma de obtener ficheros de sitios FTP. Desafortunadamente, FTPMail puede ser lento, especialmente cuando se trata de tareas grandes. Antes de intentar descargar grandes cantidades de software usando este servicio, asegúrese de que su cola de correo es capaz de manejar el tráfico de entrada. Muchos sistemas mantienen cuotas al correo electrónico entrante, y quizás borren su cuenta si su correo sobrepasa su cuota.

El equipo de dirección de BlackHat ha hecho contacto con una persona perteneciente a RiskyEnterprises para que los usuarios de la revista puedan tener acceso a las páginas de Internet usando este servicio.

¿de qué se trata?

Antes que nada, aclarar que éste es un servicio que se comenzará a prestar de forma totalmente gratuita; no habría que pagar absolutamente nada por usarlo. Es bueno decir esto para evitar malos entendidos en un futuro. El servicio está creado en un inicio para las personas de la comunidad de BlackHat, aunque luego, según como vayan ocurriendo las cosas, se pueda expandir un poco más allá.

¿Cómo acceder al servicio?

Se ha habilitado una dirección de correo a la cual serán enviadas todas las peticiones. Por el momento, lo que se puede descargar son páginas web -incluidas sus imágenes. Se cuenta con un sólo servidor pero, próximamente, si el servicio es respetado por los usuarios, se añadirán más servidores, lo que hará que disminuya el tiempo de respuesta y la carga de trabajo de los mismos. Las peticiones se recibirán en forma de archivo compactado con el algoritmo ZIP y el tiempo de respuesta es de 2 a 5 min (en dependencia de la cantidad de trabajo que tenga el servidor en ese momento y del tamaño de la página a descargar).

Hasta aquí se ha explicado básicamente como funciona. No se dan más detalles por razones obvias. Pero es recomendable que nuestros lectores se lean bien los siguientes párrafos:

Como explicábamos anteriormente, el servicio es completamente gratis , y repito esto para que luego no se dejen burlar por personas que esperan la primera oportunidad para echarse algo de dinero en el bolsillo. Es bueno que recuerden que es una prestación que le está dando RiskyEnterprises a la comunidad de BlackHat. El servidor utilizado no pertenece a la comunidad; con esto les digo que descarguen sólo las páginas que realmente necesitan. Si cada uno de los más de 400 lectores hace 5 peticiones al día, el servidor, aparte de realizar las tareas que normalmente le están asignadas, tiene que procesar 2000 correos, y cuando se vea sobrecargado, se suspenderá el servicio. El servicio es para todos, pero a los que por cuestiones le hayan sido asignadas cuentas con conexión directa a Internet, les pedimos de favor que continúen usando sus conexiones como hasta el momento y que donen ancho de banda a los que realmente la necesitan.

Otro aspecto delicado es la descarga de imágenes obscenas. No queríamos que por culpa de unos pocos se suspenda el servicio, así que se implementó de tal forma que al primer intento de descarga de una página que contenga este tipo de contenido, el usuario en cuestión será bloqueado y, desde ese momento, no podrá descargar ninguna otra página, es decir, quedaría fuera del servicio permanentemente. Esto no es algo que el Equipo BlackHat ni RiskyEnterprises controlaría, ya que el servicio está automatizado; una vez que un usuario sale, todo está definido para que no haya forma de que vuelva a acceder.

En una de las primeras ediciones de la revista, dábamos una explicación de cómo trabajaba el Proxomitron, pero desde que se suspendió el mismo, varios son los correos que nos han llegado pidiendo la nueva configuración. Al no ser nosotros los creadores de dicho programa, ni los que dábamos acceso a la red a través del mismo, no podíamos brindar una solución, ni recomendarles nada hasta este momento. Ahora, que un miembro de RiskyEnterprises (llamado WhiteHat) nos está brindando esta posibilidad, sólo le pedimos a los que se suelen portan un poquito mal en la red que cuiden el servicio, ya que si por cualquier razón se llegara a suspender para toda la comunidad, los que más saldríamos afectados seríamos nosotros mismo y, lo peor, por un tiempo indefinido.

Dicho todo esto, procedemos a explicar cómo utilizarlo:

Es muy simple, sólo habría que enviar un correo a la dirección wwwoversmtp1@gmail.com y en el asunto escribir la dirección de la página que se solicita. Por ejemplo:

De: usuario_de_blackhat@servidor.cu
A: wwwoversmtp1@gmail.com
Asunto: http://www.fayerwayer.com
Mensaje:

No hay que poner nada en el cuerpo del mensaje. Con este ejemplo se recibiría en pocos minutos una respuesta con este formato:

De: wwwoversmtp1@gmail.com
A: usuario_de_blackhat@servidor.cu
Asunto: WoS - Servicio de BlackHat y RiskyEnterprises
Mensaje:

Espero que sepan valorar los esfuerzos que se hacen para tener este tipo de servicio, así que no lo degraden hasta el punto que nos tengamos que ver obligados a eliminarlo, o lo que es peor, que nos lo eliminen.

Para saber más...

Continuar leyendo