14 noviembre 2014

Se viene el PampaSeg 2014

Evento Libre y Gratuito
image description
PampaSeg nació de una simple idea, como cualquier otra, de la integración de tecnologias libres, del fruto de experiencias y vivencias de personas que día a día utilizan la tecnología, la seguridad y el software libre y quieren compartirnos sus saberes, métodos y descubrimientos con todos nosotros. El evento es libre y gratuito, y se llevara a cabo el 21 y 22 de noviembre de 2014 en la CASA DEL BICENTENARIO -Parque Don Tomás de la ciudad de Santa Rosa, La Pampa. Registrate ahora!

Si estas interesado en presentar tu charla, no dudes en anotarte en CFP. PampaSeg lo hacemos entre todos!

Mas informacion en http://www.pampaseg.org/

13 noviembre 2014

Git y Github, tutorial básico de uso bajo GNU/Linux

Pequeños apuntes del uso básico este software de control de versiones con Git. Cómo clonar un repositorio en nuestra máquina modificarlo y subir nuestros aportes al repositorio principal en Github.

Lo primero aclarar que no soy un experto en Git, ni nada por el estilo. Estos son unos apuntes sencillos que he tomado y con los que trabajo. Simplemente utilizo un repositorio del equipo de diseño de BuenosAiresLibre, con el que colaboro, que tienen alojado con GitLab,y en donde comparto mi trabajo.

¿Que es Git?

Git es un software para el control de versiones desarrollado en un principio por Linus Torvalds (sí, el creador del kernel Linux!) y se ha convertido en una herramienta indispensable para el desarrollo de software, incluido el propio kernel de Linux. Ya había otros programas que más o menos realizaban estas funcionas.

Pero al señor Torvalds no le convencían, así que se aplicó el lema de GNU/Linux. si no existe siempre lo puedes crear. Y se puso manos a la obra y desarrolló este software. Y como es “lema de la casa” del creador del kernel Linux, es software abierto y colaborativo, por lo que el propio software de Git es desarrollado y mantenido por la comunidad en todo el mundo.

¿Cómo lo instalo?

Para instalarlo en GNU/Linux, utiliza tu gestor de paquetes favorito, como estamos en Slackware, abri Gslapt (o slapt-get -i git logueado como root desde la línea de comandos) y busca Git, e instalalo, junto con sus dependencias, así de simple!

¿Qué es GitHub?


Esta web es un lugar donde nos proporcionan espacio para almacenar nuestros repositorios. Así no tienes que preocuparte de gestionar un servidor, etc. Ellos hacen el trabajo lo que resulta muy cómodo. Existen otras opciones como Gitorius, y otras. Pero hablaré de esta que es la que use.

Para trabajar con repositorios de otros en los que colaborar con tu trabajo. Tenes que abrirte una cuenta en la página de GitHub. Rellenar un sencillo formulario y un certificado digital para que cuando subas material el servidor te identifique y autentifique que realmente eres quien dices ser. Esto es muy fácil, así que no lo explico, hasta yo lo conseguí hacer!! ;)

Si vas a trabajar en repositorios de otros, como veremos en este ejemplo, es necesario que el mantenedor o encargado del repositorio te autorice a ti, a tu usuario de GitHub a escribir en el repo, de lo contrario sólo podrás leer, pero no podrías subir tus aportes, así que pídele derechos de lectura/escritura.

¿Cómo trabaja Git?

Con Git puedes crear tu propio repositorio y trabajar en él. O puedes trabajar con el repositorio de otros, que será el caso que veamos. En este ejemplo que traigo al blog no es código de programa lo que veremos, ya que no estoy programando. Si no un repositorio donde se almacenan diseños y creaciones para el artwork de Centrux desarrollado por gente de todo el mundo. Pero eso nos es transparente. Da igual la naturaleza de los archivos que manejemos. En este caso trabajaremos sobre el repositorio principal, no haremos una rama propia, etc. Esto es sólo un primer acercamiento.

A grandes rasgos.

Clonaremos en nuestra máquina el repositorio original. Es decir Git descarga en tu equipo local, en tu PC de casa, todo el contenido del repositorio que se encuentra almacenado en GitHub. Es decir en tu equipo se creará una carpeta con todo el contenido idéntico a la que existe en el repositorio.

Si ya lo tenías clonado de una vez anterior, ese paso no es necesario, así que nos saltaríamos esa parte, lo que haremos será actualizar la copia que tenemos en nuestro equipo local, para que descargue los nuevos aporte que hayan podido hacer otros usurios.

Ahora que ya tienes las herramientas y los archivos que queremos, toca trabajar. Ya podemos realizar las modificaciones que queramos en los archivos que sea necesario, podremos crear nuevos archivos, o carpetas, etc…

Realizado el trabajo le diremos a Git que añada y tenga en cuenta nuestros cambios, a los que etiquetaremos de alguna manera para identificarlos, y después los mandaremos al repositorio principal en GitHub donde quedarán almacenados y disponibles para que otros los puedan utilizar y modificar.

Explicado así no parece muy difícil, verdad? Pues ahora iremos al meollo de la cuestión. Utilizaremos los comandos adecuados y verás que tampoco es algo difícil en la práctica.

Comandos básicos.

La forma de trabajo es desde la línea de comandos. Hay interfaces gráficas para realizar estos trabajos, pero desconozco su uso. Así que se note que eres un usuario de GNU/Linux de “pro”! Abre un terminal y teclea comandos! Hay algo mas bonito?? ;)

Empezaremos clonando en nuestra máquina el repositorio que nos interesa alojado en GitHub, para ello utilizaremos el comando: git clone . Nos situaremos en un directorio donde queramos clonar el repositorio, en este caso crearemos uno llamado Git y dentro de este clonaremos el repo. En este caso tendrías que cambiar el nombre del repo, por aquel con el que quieras trabajar.

vampii
@narsil:[~]$ mkdir Git
vampii
@narsil:[~]$ cd Git
vampii@narsil:[~]$ git clone https://github.com/nombre_de_repo/

Dependiendo del tamaño del repositorio y de la calidad de nuestra conexión a Internet, tardará más o menos en descargarlo. Una vez finalizado el proceso ya tenemos los archivos del repositorio en nuestro PC. Este proceso de clonado sólo es necesario hacerlo la primera vez o si hemos borrado nuestra copia local del repositorio. Una vez clonado en nuestro equipo no es necesario volver a realizar este paso.

Ahora vamos a actualizarlo. Despues de clonado no tiene mucho sentido actualizarlo, porque no debe haber ningún cambio como es lógico. Pero si ya teníamos nuestro repositorio clonado de una vez anterior debemos actualizar nuestra copia local del repositorio con los cambios que hayan hecho otros usuarios.

Veamos como actualizar nuestra copia local del repositorio. Siempre trabajando desde el directorio donde lo tenemos descargado en nuesto equipo escribimos el siguiente comando: git pull

vampii
@narsil:[~]$ git pull https://github.com/nombre_de_repo/

Dependiendo de la cantidad de modificaciones hechas por otros tardará más o menos en actualizar nuestra copia local. Una vez terminado ya podemos hacer los cambios que queramos o sean necesarios. En nuestro ejemplo imaginemos que hemos creado una nueva carpeta llamada Traducciones y dentro un archivo de texto llamado Español.txt (por ejemplo…)

Bien hecho esto veamos cuales son los cambios pendientes con el siguiente comando: git status

vampii
@narsil:[~]$ git status

Y veremos que nos presenta los cambios que hemos hecho. En nuestro ejemplo nos dirá que hemos creado una carpeta y añadido un nuevo archivo.

Para que tenga en cuenta nuestros cambios le diremos que los añada al repo con el siguiente comando git add .  (Sí, el punto también forma parte del comando!!)

vampii
@narsil:[~]$ git add .

Ahora etiquetaremos estos cambios. Esto es útil para saber qué es lo que se ha hecho. Un pequeño comentario para explicar la naturaleza de la modificación, esto se especifíca mediante este comando: git commit -m “comentario” -a  Debemos poner los modificadores -m y -a para que se etiqueten así a todos los cambios.

vampii[~]$ git commit -m "Creada carpeta de traducciones y añadida la española" -a

Hasta ahora hemos dicho a Git  que tenemos cambios, que vamos a añadir, pero estos no han salido de nuestra máquina, así que sólo estan aplicados en local. Ahora debemos lanzarlos y decirle a Git que los añada al repositorio en GitHub y así esten disponibles para todos. Esto se hace mediante el comando git push

vampii
@narsil:[~]$ git push https://github.com/nombre_de_repo/

Se pide autentificación del usuario, metes tu nombre de usuario y contraseña y si tienes derechos de escritura en el repo, git subirá tus cambios, y la copia en el servidor de GitHub tendrá tus cambios disponibles para todos!

Despues de eso si no quieres almacenar la copia del repositorio local en tu PC para no utilizar espacio en el disco duro la puedes borrar. Y la próxima vez que quieras volver a trabajar con el repositorio tendrás que volver a clonarlo. Si no lo borras, antes de trabajar y hacer tus cambios debes actualizar tu copia local para asegurarte que estas trabajando con lo último y más actualizado disponible en el repositorio.


Espero que te sirva como primera guía este tutorial. Git es una herramienta mucho más potente que esto que te he mostrado aqui. Estos son simplemente mis apuntes, que expongo aqui por si sirven a alguien más, si es así me alegro!! Por último te dejo algunas direcciones y un vídeo muy bueno que he encontrado para aclarar más los conceptos.


Enlaces de Interés:

    Página ofial de Git | http://git-scm.com/
    Página oficial de GitHub | https://github.com/
    Git en Wikipedia | http://es.wikipedia.org/wiki/Git


Basado en: http://victorhckinthefreeworld.wordpress.com/2012/09/26/git-y-github-tutorial-basicode-uso-bajo-gnulinux/

12 noviembre 2014

La gaviota, el espino y el murciélago

Se asociaron una gaviota, un murciélago y un espino para dedicarse juntos al comercio.

El murciélago buscó dinero, el espino unas telas, y la gaviota, una cantidad de cobre. Hecho lo cual aparejaron un barco.

Pero surgió una tremenda borrasca hundiéndose la barca y perdiéndose la carga; sólo salvaron sus vidas.

Por eso desde entonces la gaviota revolotea siempre al acecho en las orillas para ver si el mar arroja en alguna playa su cobre; el murciélago, huyendo de sus acreedores, sólo sale de noche para alimentarse; y el espino, en fin, apresa la ropa de los viajeros tratando de reconocer sus telas.

Siempre volvemos a lo que es de nuestro verdadero interés.

10 noviembre 2014

Conoce a Ada Lovelace, la primer programadora de la historia

El 10 de Noviembre de 1815 nació en inglaterra Augusta Ada King, Condesa de Lovelace, quien a los 17 años conoció a Mary Somervlle una conocida autora y científica que a su vez le presentó a Charles Babbage (profesor Lucasiano de matemáticas en la Universidad de Cambridge y reconocido como el padre de las computadoras).

Baggage cuando conoció a Ada Lovelace quedó tan impresionado con la capacidad analítica de la joven que la apodó como “La encantadora de números”.Pero su fama llegaría después que el matemático italiano Louis Menebrea publicará sus memorias en francés sobre la Máquina Analítica de Babbge.

Ya que Ada sería la traductora de las memorias de Menebrea, sin embargo, no solo tradujo el artículo sino que le añadió un conjunto de notas propias y son estas notas la fuente de su fama como la primer programadora de la historia.

Con estas notas la Condesa de Lovelace ha sido la primera persona en el mundo en describir un lenguaje de programación de carácter general al interpretar las ideas de Babbage incluso mejor que él. En 1843 publicó una serie de notas sobre la máquina analítica de Babbage que firmó solo con sus iniciales por miedo a ser censurada por su condición de mujer.

Entre las notas encontramos que describió conceptos como el bucle y la subrutina. Además sentó las bases del algoritmo para calcular los valores de los números de Bernoulli utilizando dos bucles, demostrando las capacidades de bifurcación de la máquina analítica.

Por ello hoy se celebrá el día de Ada Lovelace. Con esta conmemoración lo que se busca es resaltar a las mujeres que han contribuido en las disciplinas académicas de ciencia, tecnología, ingeniería y matemáticas, más conocidas en Estados Unidos bajo el acrónimo STEM.
Tomado de: http://identidadgeek.com/conoce-a-ada-lovelace-la-primer-programadora-de-la-historia/2013/10/

Post relacionados:


Que te diviertas!

09 noviembre 2014

Y asi fue como sucedio...

Caminaba el hombre cabizbajo, pues le habían echado de su octavo trabajo, y ni en éste ni en los siete anteriores había llegado a durar una semana.
Su mujer (que se había casado con él en una noche de borrachera) le había
abandonado dos días despues.
Su único hijo (producto de esa misma noche de borrachera) le odiaba y no quería saber nada de él. Hasta sus amigos le habrían abandonado... si alguna vez los hubiese tenido.
Se podría decir que estaba deprimido y desesperado, y decidió lanzarse al Manzanares. Tomó carrerilla y, al ir a saltar, escuchó una vocecilla: "Nooo, no lo hagas"
Sobresaltado, paró.
Luego pensó que habría sido su subconsciente, y volvió a tomar carrerilla.
De nuevo al ir a saltar, escuchó la vocecilla que le decía: "Nooo, por favor, no lo hagas. ¡Si saltas me aplastarás!"
Se asomó, y allí lo único que vio fue un enorme sapo, que le estaba hablando.
Y le contestó.
- Mira, es que resulta que quiero suicidarme.
- Bueno pues si de todas formas te vas a suicidar, anter podrías hacerme un favor... Resulta que no soy un sapo, sino un humano que sufre un encantamiento. Para romper el encantamiento, lo único que tienes que hacer es darme por culo...
- Dar por culo a un sapooo? ¡Que asco!
- Que más te da, si te vas a suicidar. Así haces una buena obra...
Así que aquel buen hombre cogió al sapo, se escondió con él en un water público, y comenzóo a romper el hechizo dando por culo al animalito.
En esto que, el hechizo se rompió y el sapo se transformó en un chaval de catorce anos que chillaba como un loco...
- Y esta es la versión de mi defendido, señor juez...

07 noviembre 2014

Las mejores herramientas online para pentesting

Según la definición de OWASP, Information Gathering es la primera fase de toda evaluación de seguridad, la cual se enfoca en recolectar la mayor cantidad de información posible acerca de un objetivo (aplicación o víctima). La etapa de "Information Gathering" (recopilación de información, en castellano) es la más crítica en en proceso de verificación de seguridad de una aplicación. Cuanto mayor información tengamos sobre un objetivo, más fácil será encontrar vulnerabilidades.
En este artículo presento diferentes sitios Web y herramientas online que sirven para recopilar información de un objetivo durante la etapa de info gathering de todo pentest (test de penetración).

Netcraft

Netcraft es una empresa de servicios de seguridad la cual permanece explorando Internet desde 1995 recolectando información sobre dominios y servidores.
La mayoría de sus servicios no son gratuitos, excepto uno muy útil que sirve para determinar qué sistema operativo y qué tecnologías utiliza un determinado sitio. Por ejemplo, en la siguiente captura se observa que (aunque no lo crean) el buscador bing.com perteneciente a Microsoft Corporation corre en servidores Linux:
Además de proveer información sobre el sistema operativo en el que corre un sitio Web, Netcraft provee mucha información útil, por ejemplo: desde cuándo existe el sitio, quién es el dueño del bloque IP, compañía de hosting, información sobre el servicio DNS, tecnologías y lenguajes utilizados tanto del lado servidor como cliente, etc.

Online Penetration Testing Tools

El sitio Online Penetration Testing Tools provee una colección de herramientas para pentesters y auditores que necesitan verificar la seguridad de redes, servidores públicos, sitios Web o personas.
Este es uno de mis sitios favoritos ya que entre sus herramientas de "Discovery&Probing" incluye la capacidad de realizar un escaneo de puertos utilizando nmap. La única limitación es que para utilizar cada herramienta se necesitan cierta cantidad de créditos, y sólo se dispone de 40 créditos gratuitos por día. Aunque alcanza por ejemplo para realizar 4 escaneos con nmap por día:

ping.eu

ping.eu proporciona una amplia variedad de herramientas: Online Ping, Traceroute, DNS lookup, WHOIS, Port check, Reverse lookup, Proxy checker, Bandwidth meter, Network calculator, Network mask calculator, Country by IP, Unit converter.
Este sitio es otro de mis favoritos ya que ofrece la posibilidad de verificar si un determinado puerto está abierto, indicando el nombre de host o dirección IP, ¡y sin captcha!

you get signal

you get signal es un sitio similar a ping.eu pero incluye una herramienta muy útil ("Reverse IP Domain Check") que indica qué otros sitios están hospedados en el mismo servidor, a partir de una dirección IP. Excelente para encontrar sitios vulnerables hospedados en el mismo servidor que nuestro objetivo, o para saber con cuantos sitios estamos compartiendo la carga de procesamiento (suponiendo que la dirección IP pertenece a un mismo servidor físico, no aplica en el caso de un cluster).

urlquery.net

urlQuery es un servicio online gratuito para verificar y analizar URLs, con el fin de identificar contenido malicioso en sitios Web. El objetivo principal de urlQuery es buscar y detectar contenido seospechoso y malicioso en páginas, para ayudar a mejorar la seguridad y hacer de Internet un lugar más seguro. Cabe destacar que no existe un servicio o solución de seguridad que provea un 100% de precisión en la detección de contenido malicioso, y los datos provistos por urlQuery no deben darse por hechos.
Por su naturaleza, este servicio se utiliza más bien para realizar análisis forense, aunque debido a que otorga gran cantidad de información útil sobre una URL puede facilitar el test de penetración y descartar ciertos tipos de ataques para ganar tiempo.

Listas de passwords por defecto

La mayoría de los dispositivos de hardware vienen con passwords de acceso por defecto desde fábrica. Estos passwords por defecto muchas veces no son cambiados al instalar un equipo, lo que facilita el acceso a los mismos. A continuación, diferentes listas de password por defecto para todo tipo de dispositivos:

Listas de palabras

Otro recurso que todo pentester debe tener al alcance de su mano son diferentes tipos de listas de palabras para realizar ataques de diccionario:

Cheatsheets

Finalmente, unas cuantas cheatsheets/chuletas sobre seguridad informática:
Eso es todo por ahora, a bookmarkear se ha dicho! Y de paso si conocen algún otro sitio útil por favor comenten.

Tomado de: http://linuxito.com/seguridad/205-las-mejores-herramientas-online-para-pentesting