# HackTheBox-Laboratory ## Rustscan ``` rustscan -a 10.10.10.216 -- -A -sC -sV .----. .-. .-. .----..---. .----. .---. .--. .-. .-. | {} }| { } |{ {__ {_ _}{ {__ / ___} / {} \ | `| | | .-. \| {_} |.-._} } | | .-._} }\ }/ /\ \| |\ | `-' `-'`-----'`----' `-' `----' `---' `-' `-'`-' `-' The Modern Day Port Scanner. ________________________________________ : https://discord.gg/GFrQsGy : : https://github.com/RustScan/RustScan : -------------------------------------- Please contribute more quotes to our GitHub https://github.com/rustscan/rustscan [~] The config file is expected to be at "/root/.rustscan.toml" [!] File limit is lower than default batch size. Consider upping with --ulimit. May cause harm to sensitive servers [!] Your file limit is very small, which negatively impacts RustScan's speed. Use the Docker image, or up the Ulimit with '--ulimit 5000'. Open 10.10.10.216:22 Open 10.10.10.216:80 Open 10.10.10.216:443 PORT STATE SERVICE REASON VERSION 22/tcp open ssh syn-ack ttl 63 OpenSSH 8.2p1 Ubuntu 4ubuntu0.1 (Ubuntu Linux; protocol 2.0) 80/tcp open http syn-ack ttl 63 Apache httpd 2.4.41 | http-methods: |_ Supported Methods: GET HEAD POST OPTIONS |_http-server-header: Apache/2.4.41 (Ubuntu) |_http-title: Did not follow redirect to https://laboratory.htb/ 443/tcp open ssl/http syn-ack ttl 63 Apache httpd 2.4.41 ((Ubuntu)) | http-methods: |_ Supported Methods: OPTIONS HEAD GET POST |_http-server-header: Apache/2.4.41 (Ubuntu) |_http-title: The Laboratory | ssl-cert: Subject: commonName=laboratory.htb | Subject Alternative Name: DNS:git.laboratory.htb | Issuer: commonName=laboratory.htb | Public Key type: rsa | Public Key bits: 4096 | Signature Algorithm: sha256WithRSAEncryption ``` ## PORT 80/443 (HTTP/HTTPS) On visting port 80 I was redirected to https with a domain `laboratory.htb` So let's add this to `/etc/hosts` file Running dirsearch was pointless because couldn't find anything But I did saw a subdomain from the nmap scan `git.laboratory.htb` on adding to `/etc/hosts` We could not sign in since we have not found any users so I registered an account On logging in we can't see anything useful But going to help page we see the version number of gitlab which is 12.8.1 Searching an exploit for this version I found one RCE https://github.com/dotPY-hax/gitlab_RCE Edited the email for the payload But it was not stable I grabbed the `secrets.yml` through unstablized shell also realized that this was a docker container It was unstable so I decide to go for metasploit https://www.rapid7.com/db/modules/exploit/multi/http/gitlab_file_read_rce/ These are the options you would have to set And we get a bash prompt To get a more stablized shell I searched for `pentesting gitlab` and found a website that had some juicy information about what to look for I saw a user `dexter` that had a a repository But there wasn't anything intersting there looking back at that directory I saw two files having `secret` in them Didn't found anything then I came across a report that was submitted on hackerone regarding gitlab https://hackerone.com/reports/493324 But this didn't worked so I searched for `gitlab shell change user password ` and found documentation After going through this I came to know that we can reset a user's password on gitlab And we logged in as `dexter` We see a ssh key so we can login as `dexter` There was a cron job running But I couldn't run docker Because we don't have permissions to execute. So here I spend a lot of time running `linpeas` , manual going through folders but found nothing then I looked for SUID We see that it's using `chmod` so we can exploit PATH variable ``` #!/bin/bash bash ```