Servidor HTTP con Python2, Python3, Ruby y PHP

2 comments
Cuando uno se encuentra en un proceso de pentesting muchas veces necesita tirar de un servidor WEB para mover scripts, programas, o en su defecto descargar desde el objetivo atacado, el uso que uno le llega a dar a un servidor puede estar orientado en ambos lados, e incluso en un ataque para bajar el bichito malicioso y que se ejecute en el objetivo. Estos tres posibles usos son los que llego a ver en este momento.


Por lo tanto y con esa pequeña instrucción ahora procederemos, a explicar las diferentes formas de crear un servicio, servidor HTTP ya que nos puede servir en el momento y lugar indicado.

Servidor HTTP con Python 2

El primero es de Python2, estoy seguro que si siguien el blog hace un tiempo como 2 o 3 años atras comparti como crear un servidor  HTTP o simple Server que si la memoria no me falla lo llame así, además es el que regularmente uso en los CTF de Vulnhub.

snifer@root:#python2 -m SimpleHTTPServer

Como ven esta por defecto el puerto 8000,el cual se tiene acceso al mismo  y nos da el listado de directorios al mismo donde lo ejecutemos vale, aclarar que para levantar debemos de ir a donde deseamos que se descargue y una vez termine proceder a darlo de baja no vaya a ser que seamos atacados.


Servidor HTTP con Python 3


Por otra parte tenemos tambien el de Python3 y como ven el comando es igual de corto y simple que con python 2.

snifer@root:#python3 -m http.server



El resultado de ejecutar los scripts llega a ser el mismo como se muestra a cotninuación, llegamos a limitar a la carpeta creada por ello mucho cuidado con darle acceso a otros directorios.



Servidor HTTP con Ruby

Este lo desconocia totalmente, pero en el reto que tuve la anterior semana tuve la necesidad de buscar alguna anternativa para descargar ficheros, y como tenia por ahí ruby permitido vaya grata sorpresa me lleva, pero como se nota es algo largo el codigo para levantar el servidor pero sirve para lo que necesitamos.

snifer@root:#ruby -rwebrick -e "WEBrick::HTTPServer.new(:Port => 8889, :DocumentRoot => Dir.pwd).start"


La visualización al igual que los anteriores es el mismo



Y el no menos importante, tenemos PHP el comando como veran es igual de simple y fácil de recordar.

snifer@root:# php -S 0.0.0.0:8888



Conocen la manera de levantar un servidor HTTP con otros lenguajes? o simplemente con un par de líneas de código porfavor comparte en los comentarios, que nos vendria bien para todos conocer otras manera de hacerlo, o bien uniendote al grupo en Telegram del Blog. 


La ilusión vale cuando la realidad la toma de la mano. - Anónimo.

Regards,
Snifer

2 comentarios

  1. Pégale un vistazo a este repo https://gist.github.com/willurd/5720255

    ResponderEliminar