I enjoyed playing this ctf with my teammate. Here are the writeups of some challenges.
Web
Cryptography
Reverse Search Algorithm
Massive RSA
Really Secure Algorithm
Welcome to Crypto Land
Forensics
Miscellaneous
Locked Up
A Simple Conversation
The Real Reversal
Hidden Flag
Broken REPL
Agent Keith
According to challenge name Agent refer to User agent of browser. The site look likes
It shows the current user agent and flag as access denied. I go through the source code of website and found a removed user agent written their.
So i update the user agent to NCSA_Mosaic/2.0 (Windows 3.1)
and in subsequect request i got the flag.
Reverse Search Algorithm
This challenge is on classic RSA encryption. I used Ganapati RsaCtfTool (Awesome RSA tool must check)to solve this challenge. Simply run this tool using given value of n,e and c where ‘n’ is public key ‘e’ is exponent and ‘c’ is cipher text.
Massive RSA
We have given a file massive.txt which contains valuse of n,e and c. This challenge is again on RSA encryption but with large value of n and c. I used Ganapati RsaCtfTool](https://github.com/Ganapati/RsaCtfTool) (Awesome RSA tool must check)to solve this challenge. Simply run this tool using given value of n,e and c where ‘n’ is public key ‘e’ is exponent and ‘c’ is cipher text. Simply run this tool using given value of n,e and c.
Really Secure Algorithm
We have give a file secure.txt which contains values of n,e and c where ‘n’ is public key ‘e’ is exponent and ‘c’ is cipher text. This challenge is again on RSA encryption. First we have to break value of n in to its prime factor so, i used online site factordb to find value of prime factor. We got only one value which is probably prime. Generally in RSA n break in to two prime factor.
So here we use phi=p*(p-1)
instead of phi=(p-1)*(q-1)
. To decrypt cipher we need to find private key ‘d’. Using value of phi
and e
we calculate modular inverse which is private key ‘d’. After that using private key ‘d’ , cipher text ‘c’ and public key ‘n’ we compute plain(numeric) message ‘m’ m=cd (mod n) by coverting m in to readable string we got the flag. I write a python program to solve this challenge. Python program here solve.py.
Welcome to Crypto Land
In this challenge,a cipher text is given to decrypt.
Given cipher is base58 cipher. I used online tool CyberChef to decrypt it.
Double Trouble
In this challenge two images are given koala.png and koala2.png. I try stings on both the png file but obtain nothing. I also search flag in metadata of png file but flag is not their. After a while i used zsteg to read lsb of png file and from koala.png
i got a firebase link from where i downlaod a file hmmm.txt and lsb of koala2.png
contain a passkey.
After checking file command on hmmm.txt
i found that hmmm.txt
is encrypted GPG symmetrically using AES cipher. I read about encryption and decryption of GPG symmetrically encrypted data. I decrypt hmmm.txt
using gpg tool.
Running the above command it asks for password, by using passkey(16 bit from passkey) we have, it gives flag for this challenge.
Locked Up
A zip file locked.zip is provided in this challenege. I first try to crack the password of zip file but it’s not successful. I see the content of zip file and i analyse that the zip file contains so many empty files, after that i think that the flag may be is in name of file so, i suddenly do strings on file and got flag for this challenge.
A Simple Conversation
A service running at nc in which gives python shell and ask for input. I think that why not read flag directly in python shell so, by giving input as open('flag.txt','r').readlines()
return the flag for this challenge.
The Real Reversal
This challenge contains a file reversed.txt which contains the reversed of a original file means first the content of orinigal file is reversed then the byte of file is reversed. I write a simple python script solve.py which reverse the byte of file and the contents of file results in flag for this challenge.
Hidden Flag
We have given a chall.png image file which is broken. I do strings and got a key as invisible
. I solved this type of challenge in previous ctf so, immediately i write a python script which takes each byte of given file and do xor operation on each bytes, dumping the xor result gives us a png image which contains flag for this challenge.
Broken REPL
A python file repl.py is given which contains the python program of running nc service. After reading the python program carefully, i found that if i raise MemoryError exception in python shell then i may get the flag. I googled a lot to raise exception in python shell, after trying some string to raise exception one string successfully raise the exception and gives flag for this challenge.