En este artículo vamos a ver como utilizando el comando Curl
vamos a poder ver el código fuente de una página web en nuestra terminal y como utilizarlo
junto a las herramientas htmlq
y grep
.
Esto es muy útil cuando queremos trabajar con el código, cuando necesitamos parte de él para otra tarea o simplemente para visualizarlo de forma más cómoda (por ejemplo, en caso de mostrarse todo el código en una línea, en nuestra terminal lo podremos separar y estructurar para que sea más visual).
curl -s -X GET "[Dirección Web]"
curl -s -X GET "http://ejemplo.com"
-s
: Mostrar código de estado de respuesta.Ejemplo:
Para estos ejemplos emplearemos la máquina Horizontall de Hack the Box y vamos a tratar de visualizar el código fuente de la página http://horizontall.htb.
Realizamos la petición mediante Curl
:
curl -s -X GET "http://horizontall.com"
Como podéis ver nos muestra el código en una sola línea. Para que podamos verlo de forma más cómoda vamos a usar la herramienta htmlq
.
Para instalar la herramienta htmlq
simplemente ejecutamos estos dos comandos, primero instalamos cargo
:
sudo apt install cargo
Y ahora procedemos a la instalación de htmlq
:
cargo install htmlq
Finalmente, parta poder visualizar el código, lo ejecutamos de la siguiente manera:
curl -s -X GET "http://ejemplo/" | htmlq -p
Actualmente, htmlq
está dando muchos problemas con sus librerías, en caso de no funcionar, otra alternativa para visualizarlo de manera más práctica (ya que distingue las sentencias por colores)
es empleando la herramienta bat
que básicamente es una mejora que sustituye al cat
que viene predeterminado en Linux.
Otra forma de evitarnos visualizar todo el código en una sola línea es filtrando los <>
con grep
, ya que en html, cada sentencia viene entre corchetes.
Para filtrar con la herramienta grep
añadimos el siguiente comando grep -oP '<.*?>'
concatenado con Curl
:
curl -s -X GET "http://ejemplo.com/" | grep -oP '<.*?>'