UTCTF 2023
https://ctftime.org/event/1919
Challs
Category | Challenge |
---|---|
Forensics | “Easy” Volatility |
Networking | A Network Problem - Part 1 |
Networking | A Network Problem - Part 2 |
Reversing | Reading List |
“Easy” Volatility
Description
I’ve included the flag in as shell command. Can you retrieve it?
I recommend using the volatility3 software for this challenge.
Here is the memory dump: debian11.core.zst
This problem also comes with a free profile! debian11_5.10.0-21.json.zst
Both of these files are compressed using zstd.
This challenge’s flag looks like a UUID.
Note: the volatility challenges do not have a flag format to discourage grepping. They all should be possible without guessing. If you have trouble, remember that you can ask for help.
By Daniel Parks (@danielp on discord)
We need the symbol table for the corresponding kernel.
As the symbol table in the form of a JSON file is already provided in this challenge, we can simply move it to the directory /volatility3/symbols
.
Then, we can continue recover the bash command history from memory.
Flag
08ffea76-b232-4768-a815-3cc1c467e813
A Network Problem - Part 1
Description
There are some interesting ports open on betta.utctf.live, particularly port 8080.
By Robert Hill (@Rob H on discord)betta.utctf.live:8080
We can establish a network connection by using netcat then sending data through that connection. In this context, the command will establish a connection to the host betta.utctf.live
on port 8080
, which is a server or service that can receive connections to perform certain network interactions.
After the connection is successfully established, we will receive response data from the host in the form of text and also a flag.
Flag
utflag{meh-netcats-cooler}
A Network Problem - Part 2
Description
betta.utctf.live has other interesting ports. Lets look at 445 this time.
By Robert Hill (@Rob H on discord)betta.utctf.live:445
We can use the command enum4linux -a betta.utctf.live
to run the enum4linux program in the terminal and perform enumeration on the host betta.utctf.live.
enum4linux
is a tool used to examine Windows and Samba systems in order to search for information about users, user lists, group information, security policy information, and information about running services. In this context, the command will attempt to perform enumeration on the betta.utctf.live
host with the -a
option that allows searching for more detailed information, such as searching for Samba shares, user information, and other information.
In general, the enum4linux program is used to scan and gather information on systems connected to a network in order to evaluate the security of those systems, including searching for potential vulnerabilities and security holes that attackers can exploit.
We have discovered SMB share WorkShares
. It will useful for us to find more files we can work with.
Let’s enumerate SMB using smbclient
tool. Upon password prompt hit Enter and we will be logged in WorkShares
smb share.
Flag
utflag{out-of-c0ntrol-access}
Reading List
Description
I created this binary to keep track of some strings that I want to read. I thought I put a CTF flag in it so I’ll remember to make a problem for UTCTF, but I can’t seem to find it…
By Caleb (@eden.caleb.a#6541 on Discord)
The command strings readingList | grep "utflag"
is used to extract strings from the binary elf file readingList, then search for strings that contain the keyword "utflag"
in the resulting string output.
strings
is a command used to extract and print sequences of characters that are readable as strings from a given file input. In this case, readingList
is the file from which the strings will be extracted.
Flag
utflag{string_theory_is_a_cosmological_theory_based_on_the_existence_of_cosmic_strings}