Skip to content

Commit

Permalink
Migrates from Gatsby to Hugo
Browse files Browse the repository at this point in the history
  • Loading branch information
ander94lakx committed Aug 14, 2022
1 parent 1817ae3 commit dbbd940
Show file tree
Hide file tree
Showing 74 changed files with 237 additions and 24,617 deletions.
32 changes: 32 additions & 0 deletions .github/workflows/gh-pages.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: github pages

on:
push:
branches:
- main # Set a branch to deploy
pull_request:

jobs:
deploy:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v2
with:
submodules: true # Fetch Hugo themes (true OR recursive)
fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod

- name: Setup Hugo
uses: peaceiris/actions-hugo@v2
with:
hugo-version: 'latest'
# extended: true

- name: Build
run: hugo --minify

- name: Deploy
uses: peaceiris/actions-gh-pages@v3
if: github.ref == 'refs/heads/main'
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule "themes/terminal"]
path = themes/terminal
url = https://github.com/panr/hugo-theme-terminal.git
Empty file added .hugo_build.lock
Empty file.
21 changes: 0 additions & 21 deletions LICENSE

This file was deleted.

2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# ander94lakx.github.io

My personal blog project created with ~~Jekyll~~ Gatsby and [this template](https://github.com/abhaynikam/gatsby-nice-blog).
My personal blog project created with ~~Jekyll~~ ~~Gatsby~~ Hugo and [this template](https://github.com/panr/hugo-theme-terminal).
6 changes: 6 additions & 0 deletions archetypes/default.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
title: "{{ replace .Name "-" " " | title }}"
date: {{ .Date }}
draft: true
---

24 changes: 0 additions & 24 deletions config.js

This file was deleted.

155 changes: 155 additions & 0 deletions config.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,155 @@
baseURL = 'https://ander94lakx.github.io'
languageCode = 'es-es'
title = 'My New Hugo Site'
theme = "terminal"

copyright = "Copyleft 🄯 2022, Ander Granado"

googleAnalytics = "G-EPK628CMMZ"

[author]
name = "Ander Granado"
email = "[email protected]"

[permalinks]
posts = "blog/:title"

[params]
# dir name of your main content (default is `content/posts`).
# the list of set content will show up on your index page (baseurl).
contentTypeName = "blog"

# ["orange", "blue", "red", "green", "pink"]
themeColor = "green"

# if you set this to 0, only submenu trigger will be visible
showMenuItems = 5

# show selector to switch language
showLanguageSelector = false

# set theme to full screen width
fullWidthTheme = false

# center theme with default width
centerTheme = true

# if your resource directory contains an image called `cover.(jpg|png|webp)`,
# then the file will be used as a cover automatically.
# With this option you don't have to put the `cover` param in a front-matter.
autoCover = true

# set post to show the last updated
# If you use git, you can set `enableGitInfo` to `true` and then post will automatically get the last updated
showLastUpdated = false

# set a custom favicon (default is a `themeColor` square)
favicon = "favicon.ico"

# Provide a string as a prefix for the last update date. By default, it looks like this: 2020-xx-xx [Updated: 2020-xx-xx] :: Author
# updatedDatePrefix = "Updated"

# set all headings to their default size (depending on browser settings)
# oneHeadingSize = true # default

# whether to show a page's estimated reading time
readingTime = true # default

# whether to show a table of contents
# can be overridden in a page's front-matter
# Toc = false # default

# set title for the table of contents
# can be overridden in a page's front-matter
# TocTitle = "Table of Contents" # default


[params.twitter]
# set Twitter handles for Twitter cards
# see https://developer.twitter.com/en/docs/tweets/optimize-with-cards/guides/getting-started#card-and-content-attribution
# do not include @
creator = "andergrma"
site = ""

[languages]
[languages.es]
languageName = "Español"
title = "Walk on the Byte Side"
subtitle = ""
owner = "Ander Granado"
keywords = ""
copyright = ""
menuMore = "Mostrar más"
readMore = "Leer más"
readOtherPosts = "Leer otros posts"
newerPosts = "Más nuevos"
olderPosts = "Más antiguos"
missingContentMessage = "Page not found..."
missingBackButtonLabel = "Volver a la página de inicio"

[languages.es.params.logo]
logoText = "Walk on the Byte side"
logoHomeLink = "/"

[languages.es.menu]
[[languages.es.menu.main]]
identifier = "about"
name = "Sobre mí"
url = "/about"
[[languages.en.menu.main]]
identifier = "twitter"
name = "Twitter"
url = "https://twitter.com/andergrma"
[[languages.en.menu.main]]
identifier = "instagram"
name = "Instagram"
url = "https://www.instagram.com/andergrma/"
[[languages.en.menu.main]]
identifier = "github"
name = "GitHub"
url = "https://github.com/ander94lakx/"
[[languages.es.menu.main]]
identifier = "pgp"
name = "PGP"
url = "/pgp"

[languages.en]
languageName = "English"
title = "Walk on the Byte Side"
subtitle = ""
owner = "Ander Granado"
keywords = ""
copyright = ""
menuMore = "Show more"
readMore = "Read more"
readOtherPosts = "Read other posts"
newerPosts = "Newer posts"
olderPosts = "Older posts"
missingContentMessage = "Page not found..."
missingBackButtonLabel = "Back to home page"

[languages.en.params.logo]
logoText = "Walk on the Byte Side"
logoHomeLink = "/"

[languages.en.menu]
[[languages.en.menu.main]]
identifier = "about"
name = "About"
url = "/about"
[[languages.en.menu.main]]
identifier = "twitter"
name = "Twitter"
url = "https://twitter.com/andergrma"
[[languages.en.menu.main]]
identifier = "instagram"
name = "Instagram"
url = "https://www.instagram.com/andergrma/"
[[languages.en.menu.main]]
identifier = "github"
name = "GitHub"
url = "https://github.com/ander94lakx/"
[[languages.en.menu.main]]
identifier = "pgp"
name = "PGP"
url = "/pgp"
1 change: 1 addition & 0 deletions content/pages/about.md → content/about/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
title: "Sobre mí"
date: 2020-04-04
template: "page"
index: false
---

Como habrás podido comprobar, me llamo Ander Granado. Soy ingeniero informático, desarrollador de software y hacker.
Expand Down
Binary file removed content/assets/icon.png
Binary file not shown.
Binary file removed content/assets/profile-pic.jpg
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
template: post
title: "Initial commit"
date: 2020-04-04
tags: presentacion ander
tags: ["presentacion", "ander"]
author: Ander Granado
---

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
template: post
title: "No tenemos ni idea de cómo hacer teletrabajo y cómo podemos solucionarlo"
date: 2020-04-11
tags: coronavirus programacion trabajo remoto
tags: ["coronavirus", "programacion", "trabajo", "remoto"]
author: Ander Granado
---

![Trabajar desde casa](laptop-beer2.jpg)
![Trabajar desde casa](/static/images/laptop-beer2.jpg)

Últimamente he estado leyendo varios artículos con respecto al teletrabajo. Parece que, ahora que la situación lo demanda, el teletrabajo es una forma de trabajo fundamental y necesaria.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
template: post
title: "Cómo descargarse las imágenes de un perfil de Instagram con Python y web scrapping"
date: 2020-04-25
tags: bot python instagram web-scrapping
tags: ["bot", "python", "instagram", "web-scrapping"]
author: Ander Granado
---

Expand All @@ -20,7 +20,7 @@ Al ver como lo hacia vi que utilizaba una librería llamada [Selenium][selenium]

# Loguearse en Instagram

![Web de login de instagram](ig-login.png)
![Web de login de instagram](/static/images/ig-login.png)

Lo primero que hay que hacer es hacer _log in_ en la página. Para ello, lo que hay que hacer es lo siguiente

Expand Down Expand Up @@ -55,11 +55,11 @@ Si se ejecuta eso, se ve que en realidad es el mismo proceso que realizaría cua

# Obtener todos los posts

![Posts de Instagram](ig-posts.png)
![Posts de Instagram](/static/images/ig-posts.png)

Una vez hecho eso, mi idea era ir a la página del perfil, coger cada enlace a cada post y de cada uno coger la URL donde se encuentra la imagen. Este es un proceso que ya he hecho a mano, por lo tanto se que las imágenes de Instagram se pueden coger si vas inspeccionando el HTML en búsqueda de la URL de la imagen, la URL de un post suele ser algo así, que esta en la etiqueta `<img>` anidada por varios `<div>`:

![URL de la imagen de un post de Instagram](ig-image-post-url.png)
![URL de la imagen de un post de Instagram](/static/images/g-image-post-url.png)

Pero antes de llegar a eso, es necesario coger los enlaces a todos los post, para poder buscar el enlace de la imagen para cada uno de ellos. Los enlaces de un post de Instagram tienen el formato `https://www.instagram.com/p/B--N-oBKdPL/`. Para cogerlos, una vez llegados la página del perfil, hay que ir bajando abajo e ir buscando estos enlaces.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
template: post
title: "Análisis de malware (I): cómo empezar a analizar malware"
date: 2022-01-26
tags: malware analysis ransomware vm
tags: ["malware", "analysis", "ransomware", "vm"]
author: Ander Granado
---

Expand All @@ -12,7 +12,7 @@ Personalmente, el malware me parece fascinante. Lo que me fascina es la eficacia

Cada vez que veo una noticia de un nuevo ransomware, troyano o malware de algún tipo, siento curiosidad por saber como funciona. Suelo ojear los informes técnicos que salen de los ataques más sonados en búsqueda de más información y me quedo alucinado por los informes de los analistas. En parte, por las características de los casos que analizan y las formas en las que funcionan los malware, pero, por otra parte, por como son capaces de obtener toda esa información.

![Wannacry](wannacry.png "Wannacry en acción")
![Wannacry](/static/images/wannacry.png "Wannacry en acción")

Este tipo de informes son realizados por analistas de malware. A veces están dentro de los equipos de DFIR de una empresa, otras son organizaciones gubernamentales o militares y otras veces es un hacker cualquiera posteando en su blog sobre una muestra con la que está jugando. Lo que está claro es que cogen una muestra de un malware y la analizan. Es un campo fascinante que me llama mucho la atención porque mezcla disciplinas que me parecen muy interesantes. Mezcla informática forense con ingeniería inversa y conocimientos a bajo nivel de los sistemas. Es como el plato combinado perfecto.

Expand All @@ -36,15 +36,15 @@ Las técnicas que se utilizan para sacar esa información son diversas, pero tod

- **Análisis estático**: consiste en analizar información sobre el malware sin analizar su código ni ejecutarlo: metadatos, firmas, formato y secciones del binario, etc.

![PE-bear](pe-bear.png "Análisis estático con PE-bear")
![PE-bear](/static/images/pe-bear.png "Análisis estático con PE-bear")

- **Análisis dinámico**: también llamado análisis de comportamiento, consiste en analizar la muestra mientras se ejecuta: ficheros con los que interactúa, llamadas al sistema, trafico de red, cambios en el registro, etc.

![Wireshark](wireshark.png "Captura de tráfico de red con Wireshark")
![Wireshark](/static/images/wireshark.png "Captura de tráfico de red con Wireshark")

- *Análisis de código*: como su nombre indica, consiste en observar el código y se distingue en dos tipos:

![Ghidra](ghidra.png "Ghidra para análisis de código")
![Ghidra](/static/images/ghidra.png "Ghidra para análisis de código")

- **Análisis estático de código**: analizar el código sin ejecutarlo.
- **Análisis dinámico de código**: analizar el código mientras se ejecuta, es decir, depurarlo.
Expand All @@ -65,13 +65,13 @@ Es cierto que uno mismo puede buscar la ISO, crear la máquina e instalar Window

Con una máquina virtual ya lista solo hace falta prepararla con las herramientas necesarias para analizar malware. Hay una gran cantidad de herramientas para analizar malware. Algunas como IDA o Ghidra sonarán a muchos. Al principio es normal no tener ni idea de cuales instalar. Lo mejor para estos casos es hacer uso de [FLARE-VM](https://github.com/mandiant/flare-vm), una herramienta para instalar y mantener actualizados todo un conjunto de herramientas para analizar malware.

![Flare install](flare-install.png "Proceso de instalación de FLARE-VM")
![Flare install](/static/images/flare-install.png "Proceso de instalación de FLARE-VM")

Con usar esta herramienta sobre nuestra máquina y dejarle un rato para que instale todo, tendremos una maquina con todas las herramientas que se necesitan. Es la mejor opción, sobre todo, para probar todo tipo de herramientas y ya, en un futuro, poder crearte tu propio laboratorio solo con las herramientas que te gusten. La única desventaja que tiene usar algo como FLARE-VM es que nos va a engordar nuestra VM considerablemente (unos 60GB de VM ya te deja). A parte de eso, es tan sencillo como seguir los [pasos de instalación](https://github.com/mandiant/flare-vm#windows-10-installation) indicados en su repositorio.

También existen otro tipo de herramientas o directamente distribuciones que vienen ya con todo listo para usar. Una de mis favoritas es [Remnux](https://remnux.org/), una distribución linux que viene prácticamente con todo. Tiene herramientas hasta para analizar malware para Windows. El único problema que tiene para analizar malware para Windows es que no vamos a poder ejecutarlo sobre esa máquina. Aun asi, es muy recomendable también.

![Remnux](remnux.png "Distribucion Remnux")
![Remnux](/static/images/remnux.png "Distribucion Remnux")

Si, aun así quieres instalar las herramientas a mano, te dejo algunas de las herramientas que me gustan a mí. Hay muchas mas, y esto depende de gustos y necesidades, pero a mí, algunas de las que me gustan son:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
template: post
title: "Pwnkit: Vulnerabilidad en Polkit (CVE-2021-4034) en 5 minutos"
date: 2022-01-29
tags: polkit exploit linux
tags: ["polkit", "exploit", "linux"]
author: Ander Granado
---

Expand Down Expand Up @@ -32,7 +32,7 @@ make

Y _voilà_! ahí tenéis la consola con root.

![Polkit exploit](polkit-exploit.png "Polkit exploit")
![Polkit exploit](/static/images/polkit-exploit.png "Polkit exploit")

## ¿Qué sistemas son vulnerables?

Expand Down

0 comments on commit dbbd940

Please sign in to comment.